Readme.md
@@ -4,7 +4,7 @@ ### HCå°åºå端代ç [https://gitee.com/wuxw7/MicroCommunity](https://gitee.com/wuxw7/MicroCommunity) ### HCå°åºå段代ç ### HCå°åºå端代ç [https://gitee.com/java110/MicroCommunityWeb](https://gitee.com/java110/MicroCommunityWeb) ### HCæºæ §å®¶åºï¼ä¸ä¸»çï¼ [https://gitee.com/java110/WechatOwnerService](https://gitee.com/java110/WechatOwnerService) @@ -45,12 +45,12 @@ ### 产å   ### ç³»ç»åè½ï¼functionï¼   主è¦ç³»ç»åè½è¯·æ¥ç @@ -78,20 +78,18 @@ ç¹å»ç»å½ï¼è¿å ¥å¦ä¸å¾ï¼     2.æ°æ®æ¨¡åå¾  ### å å ¥æä»¬ï¼joinï¼ å å ¥å¾®å°åºäº¤æµç¾¤éæ¶äºè§£é¡¹ç®è¿åº¦ï¼åjava110å¼åè é¶è·ç¦»æ²é qqç¾¤å· 827669685(已满)ï¼799748606ï¼ç¾¤äºï¼ï¼é®ç®±ï¼928255095@qq.com   docs/2020ÄêÔÂÂÖÕ¢»ú±¨¼Û±í.xlsBinary files differ
docs/CNAME
File was deleted docs/css/bootstrap.min.css
File was deleted docs/css/font-awesome.min.css
File was deleted docs/css/linearicons.css
File was deleted docs/css/owl.carousel.css
File was deleted docs/css/owl.theme.css
File was deleted docs/css/responsive.css
File was deleted docs/css/style.css
File was deleted docs/document/README.md
File was deleted docs/document/_coverpage.md
File was deleted docs/document/_sidebar.md
File was deleted docs/document/api/Advert/deleteAdvert.md
File was deleted docs/document/api/Advert/listAdvertItems.md
File was deleted docs/document/api/Advert/listAdvertPhotoAndVedios.md
File was deleted docs/document/api/Advert/listAdverts.md
File was deleted docs/document/api/Advert/saveAdvert.md
File was deleted docs/document/api/Advert/updateAdvert.md
File was deleted docs/document/api/Readme.md
File was deleted docs/document/api/activities/listActivitiess.md
File was deleted docs/document/api/apiStart.md
File was deleted docs/document/api/app/deleteApp.md
File was deleted docs/document/api/app/listApps.md
File was deleted docs/document/api/app/saveApp.md
File was deleted docs/document/api/app/updateApp.md
File was deleted docs/document/api/applicationKey/applyApplicationKey.md
File was deleted docs/document/api/applicationKey/applyVisitorApplicationKey.md
File was deleted docs/document/api/basePrivilege/deleteBasePrivilege.md
File was deleted docs/document/api/basePrivilege/listBasePrivileges.md
File was deleted docs/document/api/basePrivilege/saveBasePrivilege.md
File was deleted docs/document/api/basePrivilege/updateBasePrivilege.md
File was deleted docs/document/api/capital/index.md
File was deleted docs/document/api/community/communityMemberQuit.md
File was deleted docs/document/api/community/deleteCommunity.md
File was deleted docs/document/api/community/index.md
File was deleted docs/document/api/community/queryMyCommunity.md
File was deleted docs/document/api/community/queryNoEnterCommunity.md
File was deleted docs/document/api/community/saveCommunity.md
File was deleted docs/document/api/community/updateCommunity.md
File was deleted docs/document/api/complaint/auditComplaint.md
File was deleted docs/document/api/complaint/deleteComplaint.md
File was deleted docs/document/api/complaint/listAuditComplaints.md
File was deleted docs/document/api/complaint/listAuditHistoryComplaints.md
File was deleted docs/document/api/complaint/listComplaints.md
File was deleted docs/document/api/complaint/saveComplaint.md
File was deleted docs/document/api/complaint/updateComplaint.md
File was deleted docs/document/api/count/queryIndexStatistic.md
File was deleted docs/document/api/demo/queryDemoConfig.md
File was deleted docs/document/api/demo/saveDemoConfig.md
File was deleted docs/document/api/fee/index.md
File was deleted docs/document/api/file/getFile.md
File was deleted docs/document/api/file/getFileByObjId.md
File was deleted docs/document/api/file/saveFile.md
File was deleted docs/document/api/floor/deleteFloor.md
File was deleted docs/document/api/machine/applicationKey.md
File was deleted docs/document/api/mapping/deleteMapping.md
File was deleted docs/document/api/mapping/listMappings.md
File was deleted docs/document/api/mapping/saveMapping.md
File was deleted docs/document/api/mapping/updateMapping.md
File was deleted docs/document/api/menu/configMenu.md
File was deleted docs/document/api/menu/deleteMenu.md
File was deleted docs/document/api/menu/deleteMenuGroup.md
File was deleted docs/document/api/menu/listMenuGroups.md
File was deleted docs/document/api/menu/listMenus.md
File was deleted docs/document/api/menu/saveMenuGroup.md
File was deleted docs/document/api/menu/updateMenu.md
File was deleted docs/document/api/menu/updateMenuGroup.md
File was deleted docs/document/api/message/listMsg.md
File was deleted docs/document/api/money/getParkingSpacePayFee.md
File was deleted docs/document/api/money/getPropertyPayFee.md
File was deleted docs/document/api/money/payFee.md
File was deleted docs/document/api/money/payFeeConfirm.md
File was deleted docs/document/api/money/payFeePre.md
File was deleted docs/document/api/money/queryArrearsFee.md
File was deleted docs/document/api/money/queryFee.md
File was deleted docs/document/api/money/queryFeeByParkingSpace.md
File was deleted docs/document/api/money/queryFeeConfig.md
File was deleted docs/document/api/money/queryFeeDetail.md
File was deleted docs/document/api/money/saveFeeConfig.md
File was deleted docs/document/api/money/updateFeeConfig.md
File was deleted docs/document/api/notice/deleteNotice.md
File was deleted docs/document/api/notice/listNotices.md
File was deleted docs/document/api/notice/notice.md
File was deleted docs/document/api/notice/saveNotice.md
File was deleted docs/document/api/notice/updateNotice.md
File was deleted docs/document/api/order/listCorders.md
File was deleted docs/document/api/organization/listParentOrgs.md
File was deleted docs/document/api/organization/store.byuser.md
File was deleted docs/document/api/other/CheckUserHasResource.md
File was deleted docs/document/api/other/listMyEnteredCommunitys.md
File was deleted docs/document/api/owner/appUserBindingOwner.md
File was deleted docs/document/api/owner/deleteOwner.md
File was deleted docs/document/api/owner/listOwnerMachines.md
File was deleted docs/document/api/owner/queryUnits.md
File was deleted docs/document/api/owner/updateOwner.md
File was deleted docs/document/api/parkingSpace/deleteParkingSpace.md
File was deleted docs/document/api/parkingSpace/editParkingSpace.md
File was deleted docs/document/api/parkingSpace/exitParkingSpace.md
File was deleted docs/document/api/parkingSpace/queryParkingSpaces.md
File was deleted docs/document/api/parkingSpace/queryParkingSpacesByOwner.md
File was deleted docs/document/api/parkingSpace/saveParkingSpace.md
File was deleted docs/document/api/parkingSpace/sellParkingSpace.md
File was deleted docs/document/api/privilege/deleteStaffPrivilege.md
File was deleted docs/document/api/purchase/deleteAuditUser.md
File was deleted docs/document/api/purchase/listAuditOrders.md
File was deleted docs/document/api/purchase/listAuditUsers.md
File was deleted docs/document/api/purchase/saveAuditUser.md
File was deleted docs/document/api/repair/closeRepairDispatch.md
File was deleted docs/document/api/repair/deleteOwnerRepair.md
File was deleted docs/document/api/repair/queryRepair.md
File was deleted docs/document/api/repair/repairDispatchStep.md
File was deleted docs/document/api/repair/saveRepair.md
File was deleted docs/document/api/resource/deleteResourceStore.md
File was deleted docs/document/api/resource/listResourceStores.md
File was deleted docs/document/api/resource/saveResourceStore.md
File was deleted docs/document/api/resource/updateResourceStore.md
File was deleted docs/document/api/resourcesApply/listPurchaseApplys.md
File was deleted docs/document/api/resourcesApply/savePurchaseApply.md
File was deleted docs/document/api/room/deleteRoom.md
File was deleted docs/document/api/room/queryRooms.md
File was deleted docs/document/api/room/queryRoomsByOwner.md
File was deleted docs/document/api/room/queryRoomsWithOutSell.md
File was deleted docs/document/api/room/queryRoomsWithSell.md
File was deleted docs/document/api/service/bindingService.md
File was deleted docs/document/api/service/deleteService.md
File was deleted docs/document/api/service/deleteServiceImpl.md
File was deleted docs/document/api/service/deleteServiceProvide.md
File was deleted docs/document/api/service/deleteServiceRegister.md
File was deleted docs/document/api/service/index.md
File was deleted docs/document/api/service/listServiceImpls.md
File was deleted docs/document/api/service/listServiceProvides.md
File was deleted docs/document/api/service/listServiceRegisters.md
File was deleted docs/document/api/service/listServices.md
File was deleted docs/document/api/service/saveService.md
File was deleted docs/document/api/service/saveServiceImpl.md
File was deleted docs/document/api/service/saveServiceProvide.md
File was deleted docs/document/api/service/updateService.md
File was deleted docs/document/api/service/updateServiceImpl.md
File was deleted docs/document/api/service/updateServiceProvide.md
File was deleted docs/document/api/service/updateServiceRegister.md
File was deleted docs/document/api/staff/addStaff.md
File was deleted docs/document/api/staff/deleteStaff.md
File was deleted docs/document/api/staff/editStaff.md
File was deleted docs/document/api/staff/searchStaff.md
File was deleted docs/document/api/store/saveStore.md
File was deleted docs/document/api/unit/deleteUnit.md
File was deleted docs/document/api/unit/queryUnits.md
File was deleted docs/document/api/unit/saveUnit.md
File was deleted docs/document/api/unit/updateUnit.md
File was deleted docs/document/api/user/checkUserHasPrivilege.md
File was deleted docs/document/api/user/index.md
File was deleted docs/document/api/user/listVisits.md
File was deleted docs/document/api/user/saveVisit.md
File was deleted docs/document/api/user/updateVisit.md
File was deleted docs/document/api/utils/clearCache.md
File was deleted docs/document/develop.md
File was deleted docs/document/develop/addService.md
File was deleted docs/document/develop/api.md
File was deleted docs/document/develop/checkPrivilege.md
File was deleted docs/document/develop/clearCache.md
File was deleted docs/document/develop/front.md
File was deleted docs/document/develop/images/016.pngBinary files differ
docs/document/develop/images/017.pngBinary files differ
docs/document/develop/images/018.pngBinary files differ
docs/document/develop/images/machineFlow.pngBinary files differ
docs/document/develop/machine.md
File was deleted docs/document/develop/service.md
File was deleted docs/document/develop/table.md
File was deleted docs/document/dict/app.md
File was deleted docs/document/dict/businessType.md
File was deleted docs/document/dictionary.md
File was deleted docs/document/favicon.icoBinary files differ
docs/document/fonts/FontAwesome.otfBinary files differ
docs/document/fonts/Linearicons-Free.eotBinary files differ
docs/document/fonts/Linearicons-Free.svg
File was deleted docs/document/fonts/Linearicons-Free.ttfBinary files differ
docs/document/fonts/Linearicons-Free.woffBinary files differ
docs/document/fonts/Linearicons-Free.woff2Binary files differ
docs/document/fonts/fontawesome-webfont.eotBinary files differ
docs/document/fonts/fontawesome-webfont.svg
File was deleted docs/document/fonts/fontawesome-webfont.ttfBinary files differ
docs/document/fonts/fontawesome-webfont.woffBinary files differ
docs/document/fonts/fontawesome-webfont.woff2Binary files differ
docs/document/fonts/glyphicons-halflings-regular.eotBinary files differ
docs/document/fonts/glyphicons-halflings-regular.svg
File was deleted docs/document/fonts/glyphicons-halflings-regular.ttfBinary files differ
docs/document/fonts/glyphicons-halflings-regular.woffBinary files differ
docs/document/fonts/glyphicons-halflings-regular.woff2Binary files differ
docs/document/func/funcation.md
File was deleted docs/document/images/about-us.pngBinary files differ
docs/document/images/all.jpgBinary files differ
docs/document/images/api/001.pngBinary files differ
docs/document/images/api/002.pngBinary files differ
docs/document/images/api/003.pngBinary files differ
docs/document/images/api/004.pngBinary files differ
docs/document/images/api/005.pngBinary files differ
docs/document/images/api/006.pngBinary files differ
docs/document/images/api/007.pngBinary files differ
docs/document/images/api/008.pngBinary files differ
docs/document/images/api/009.pngBinary files differ
docs/document/images/api/010.pngBinary files differ
docs/document/images/api/011.pngBinary files differ
docs/document/images/api/012.pngBinary files differ
docs/document/images/api/013.pngBinary files differ
docs/document/images/center_01.jpgBinary files differ
docs/document/images/center_02.jpgBinary files differ
docs/document/images/client-1.pngBinary files differ
docs/document/images/client-2.pngBinary files differ
docs/document/images/client-3.pngBinary files differ
docs/document/images/code_01.jpgBinary files differ
docs/document/images/comment_01.jpgBinary files differ
docs/document/images/comment_02.jpgBinary files differ
docs/document/images/compatibility-img.pngBinary files differ
docs/document/images/console_01.jpgBinary files differ
docs/document/images/converse.pngBinary files differ
docs/document/images/docker_all.jpgBinary files differ
docs/document/images/eureka_01.jpgBinary files differ
docs/document/images/eureka_02.jpgBinary files differ
docs/document/images/eureka_03.jpgBinary files differ
docs/document/images/git_code.jpgBinary files differ
docs/document/images/google.pngBinary files differ
docs/document/images/instagram.pngBinary files differ
docs/document/images/intro-1.jpgBinary files differ
docs/document/images/intro-bg.jpgBinary files differ
docs/document/images/intro-image.pngBinary files differ
docs/document/images/kafka_01.jpgBinary files differ
docs/document/images/machineFlow.pngBinary files differ
docs/document/images/microsoft.pngBinary files differ
docs/document/images/mysql_01.jpgBinary files differ
docs/document/images/mysql_02.jpgBinary files differ
docs/document/images/mysql_03.jpgBinary files differ
docs/document/images/mysql_04.jpgBinary files differ
docs/document/images/promo-logo.pngBinary files differ
docs/document/images/promo-logo2.pngBinary files differ
docs/document/images/promo-logo20190716.pngBinary files differ
docs/document/images/promo-logo201999.ico
docs/document/images/redis_01.jpgBinary files differ
docs/document/images/redis_02.jpgBinary files differ
docs/document/images/shop_01.jpgBinary files differ
docs/document/images/store_01.jpgBinary files differ
docs/document/images/team-1.jpgBinary files differ
docs/document/images/team-2.jpgBinary files differ
docs/document/images/team-3.jpgBinary files differ
docs/document/images/user_01.jpgBinary files differ
docs/document/images/work-1.jpgBinary files differ
docs/document/images/work-2.jpgBinary files differ
docs/document/images/zookeeper_01.jpgBinary files differ
docs/document/images/zookeeper_02.jpgBinary files differ
docs/document/index.html
File was deleted docs/document/license.md
File was deleted docs/document/services/communityLocation/DeleteCommunityLocationInfo.md
File was deleted docs/document/services/communityLocation/SaveCommunityLocationInfo.md
File was deleted docs/document/services/communityLocation/UpdateCommunityLocationInfo.md
File was deleted docs/document/services/meterWater/DeleteMeterWaterInfo.md
File was deleted docs/document/services/meterWater/SaveMeterWaterInfo.md
File was deleted docs/document/services/meterWater/UpdateMeterWaterInfo.md
File was deleted docs/document/services/ownerAttr/DeleteOwnerAttrInfo.md
File was deleted docs/document/services/ownerAttr/SaveOwnerAttrInfo.md
File was deleted docs/document/services/ownerAttr/UpdateOwnerAttrInfo.md
File was deleted docs/document/services/repairSetting/DeleteRepairSettingInfo.md
File was deleted docs/document/services/repairSetting/SaveRepairSettingInfo.md
File was deleted docs/document/services/repairSetting/UpdateRepairSettingInfo.md
File was deleted docs/document/services/repairTypeUser/DeleteRepairTypeUserInfo.md
File was deleted docs/document/services/repairTypeUser/SaveRepairTypeUserInfo.md
File was deleted docs/document/services/repairTypeUser/UpdateRepairTypeUserInfo.md
File was deleted docs/document/services/smallWechatAttr/DeleteSmallWechatAttrInfo.md
File was deleted docs/document/services/smallWechatAttr/SaveSmallWechatAttrInfo.md
File was deleted docs/document/services/smallWechatAttr/UpdateSmallWechatAttrInfo.md
File was deleted docs/document/services/userAttr/DeleteUserAttrInfo.md
File was deleted docs/document/services/userAttr/SaveUserAttrInfo.md
File was deleted docs/document/services/userAttr/UpdateUserAttrInfo.md
File was deleted docs/document/services/wechatMenu/DeleteWechatMenuInfo.md
File was deleted docs/document/services/wechatMenu/SaveWechatMenuInfo.md
File was deleted docs/document/services/wechatMenu/UpdateWechatMenuInfo.md
File was deleted docs/document/services/workflow/DeleteWorkflowInfo.md
File was deleted docs/document/services/workflow/SaveWorkflowInfo.md
File was deleted docs/document/services/workflow/UpdateWorkflowInfo.md
File was deleted docs/document/services/workflowStep/DeleteWorkflowStepInfo.md
File was deleted docs/document/services/workflowStep/SaveWorkflowStepInfo.md
File was deleted docs/document/services/workflowStep/UpdateWorkflowStepInfo.md
File was deleted docs/document/services/workflowStepStaff/DeleteWorkflowStepStaffInfo.md
File was deleted docs/document/services/workflowStepStaff/SaveWorkflowStepStaffInfo.md
File was deleted docs/document/services/workflowStepStaff/UpdateWorkflowStepStaffInfo.md
File was deleted docs/document/start/CodeStandards.md
File was deleted docs/document/start/images/001.pngBinary files differ
docs/document/start/images/002.pngBinary files differ
docs/document/start/images/003.pngBinary files differ
docs/document/start/images/004.pngBinary files differ
docs/document/start/images/005.pngBinary files differ
docs/document/start/images/006.pngBinary files differ
docs/document/start/images/007.pngBinary files differ
docs/document/start/images/008.pngBinary files differ
docs/document/start/images/009.pngBinary files differ
docs/document/start/images/010.pngBinary files differ
docs/document/start/images/011.pngBinary files differ
docs/document/start/images/012.pngBinary files differ
docs/document/start/images/013.pngBinary files differ
docs/document/start/images/014.pngBinary files differ
docs/document/start/images/015.pngBinary files differ
docs/document/start/images/all.jpgBinary files differ
docs/document/start/images/center_01.jpgBinary files differ
docs/document/start/images/center_02.jpgBinary files differ
docs/document/start/images/code_01.jpgBinary files differ
docs/document/start/images/comment_01.jpgBinary files differ
docs/document/start/images/comment_02.jpgBinary files differ
docs/document/start/images/console_01.jpgBinary files differ
docs/document/start/images/docker_all.jpgBinary files differ
docs/document/start/images/eureka_01.jpgBinary files differ
docs/document/start/images/eureka_02.jpgBinary files differ
docs/document/start/images/eureka_03.jpgBinary files differ
docs/document/start/images/git_code.jpgBinary files differ
docs/document/start/images/kafka_01.jpgBinary files differ
docs/document/start/images/mysql_01.jpgBinary files differ
docs/document/start/images/mysql_02.jpgBinary files differ
docs/document/start/images/mysql_03.jpgBinary files differ
docs/document/start/images/mysql_04.jpgBinary files differ
docs/document/start/images/redis_01.jpgBinary files differ
docs/document/start/images/redis_02.jpgBinary files differ
docs/document/start/images/shop_01.jpgBinary files differ
docs/document/start/images/store_01.jpgBinary files differ
docs/document/start/images/user_01.jpgBinary files differ
docs/document/start/images/zookeeper_01.jpgBinary files differ
docs/document/start/images/zookeeper_02.jpgBinary files differ
docs/document/start/installHc.md
File was deleted docs/document/start/question.md
File was deleted docs/document/start/vedio.md
File was deleted docs/favicon.icoBinary files differ
docs/fonts/FontAwesome.otfBinary files differ
docs/fonts/Linearicons-Free.eotBinary files differ
docs/fonts/Linearicons-Free.svg
File was deleted docs/fonts/Linearicons-Free.ttfBinary files differ
docs/fonts/Linearicons-Free.woffBinary files differ
docs/fonts/Linearicons-Free.woff2Binary files differ
docs/fonts/fontawesome-webfont.eotBinary files differ
docs/fonts/fontawesome-webfont.svg
File was deleted docs/fonts/fontawesome-webfont.ttfBinary files differ
docs/fonts/fontawesome-webfont.woffBinary files differ
docs/fonts/fontawesome-webfont.woff2Binary files differ
docs/fonts/glyphicons-halflings-regular.eotBinary files differ
docs/fonts/glyphicons-halflings-regular.svg
File was deleted docs/fonts/glyphicons-halflings-regular.ttfBinary files differ
docs/fonts/glyphicons-halflings-regular.woffBinary files differ
docs/fonts/glyphicons-halflings-regular.woff2Binary files differ
docs/hcÐ¡Çø¹ÜÀíϵͳÊý¾Ý¿âÄ£ÐÍv1.0.pdb
File was deleted docs/hcÐ¡Çø¹ÜÀíϵͳÊý¾Ý¿âÄ£ÐÍv1.0.pdm
File was deleted docs/images/0001.pngBinary files differ
docs/images/0002.jpgBinary files differ
docs/images/0003.pngBinary files differ
docs/images/MicroCommunity_qq.pngBinary files differ
docs/images/about-us.pngBinary files differ
docs/images/all.jpgBinary files differ
docs/images/center_01.jpgBinary files differ
docs/images/center_02.jpgBinary files differ
docs/images/client-1.pngBinary files differ
docs/images/client-2.pngBinary files differ
docs/images/client-3.pngBinary files differ
docs/images/code_01.jpgBinary files differ
docs/images/comment_01.jpgBinary files differ
docs/images/comment_02.jpgBinary files differ
docs/images/compatibility-img.pngBinary files differ
docs/images/console_01.jpgBinary files differ
docs/images/converse.pngBinary files differ
docs/images/dataModel.pngBinary files differ
docs/images/dependencies.pngBinary files differ
docs/images/docker_all.jpgBinary files differ
docs/images/eureka_01.jpgBinary files differ
docs/images/eureka_02.jpgBinary files differ
docs/images/eureka_03.jpgBinary files differ
docs/images/git_code.jpgBinary files differ
docs/images/google.pngBinary files differ
docs/images/hcOwner.pngBinary files differ
docs/images/hc_function.pngBinary files differ
docs/images/instagram.pngBinary files differ
docs/images/intro-1.jpgBinary files differ
docs/images/intro-bg.jpgBinary files differ
docs/images/intro-image.pngBinary files differ
docs/images/join_me.JPGBinary files differ
docs/images/kafka_01.jpgBinary files differ
docs/images/lzy.pngBinary files differ
docs/images/microsoft.pngBinary files differ
docs/images/mysql_01.jpgBinary files differ
docs/images/mysql_02.jpgBinary files differ
docs/images/mysql_03.jpgBinary files differ
docs/images/mysql_04.jpgBinary files differ
docs/images/prod_001.pngBinary files differ
docs/images/prod_002.pngBinary files differ
docs/images/prod_003.pngBinary files differ
docs/images/prod_004.pngBinary files differ
docs/images/prod_owner_001.jpgBinary files differ
docs/images/prod_owner_002.jpgBinary files differ
docs/images/prod_owner_003.jpgBinary files differ
docs/images/prod_owner_004.jpgBinary files differ
docs/images/prod_owner_005.jpgBinary files differ
docs/images/prod_owner_006.jpgBinary files differ
docs/images/prod_owner_007.jpgBinary files differ
docs/images/prod_owner_008.jpgBinary files differ
docs/images/promo-logo.pngBinary files differ
docs/images/promo-logo2.pngBinary files differ
docs/images/promo-logo20190716.pngBinary files differ
docs/images/promo-logo201999.ico
docs/images/redis_01.jpgBinary files differ
docs/images/redis_02.jpgBinary files differ
docs/images/rzy.pngBinary files differ
docs/images/shop_01.jpgBinary files differ
docs/images/store_01.jpgBinary files differ
docs/images/syj.jpgBinary files differ
docs/images/system.pngBinary files differ
docs/images/team-1.jpgBinary files differ
docs/images/team-2.jpgBinary files differ
docs/images/team-3.jpgBinary files differ
docs/images/user_01.jpgBinary files differ
docs/images/work-1.jpgBinary files differ
docs/images/work-2.jpgBinary files differ
docs/images/wtl.pngBinary files differ
docs/images/wxw.pngBinary files differ
docs/images/zookeeper_01.jpgBinary files differ
docs/images/zookeeper_02.jpgBinary files differ
docs/img/0004.pngdocs/img/func.pngdocs/img/hc.pngdocs/img/qq.png
docs/index.html
File was deleted docs/index.md
File was deleted docs/js/bootstrap.min.js
File was deleted docs/js/custom.js
File was deleted docs/js/jquery-2.1.1.js
File was deleted docs/js/owl.carousel.min.js
File was deleted docs/operateDoc/README.md
File was deleted docs/operateDoc/_coverpage.md
File was deleted docs/operateDoc/_sidebar.md
File was deleted docs/operateDoc/assets.md
File was deleted docs/operateDoc/favicon.icoBinary files differ
docs/operateDoc/fee.md
File was deleted docs/operateDoc/flow.md
File was deleted docs/operateDoc/img/001.pngBinary files differ
docs/operateDoc/img/002.pngBinary files differ
docs/operateDoc/img/003.pngBinary files differ
docs/operateDoc/img/004.pngBinary files differ
docs/operateDoc/img/005.pngBinary files differ
docs/operateDoc/img/006.pngBinary files differ
docs/operateDoc/img/007.pngBinary files differ
docs/operateDoc/img/010.pngBinary files differ
docs/operateDoc/img/011.pngBinary files differ
docs/operateDoc/img/012.pngBinary files differ
docs/operateDoc/img/013.pngBinary files differ
docs/operateDoc/img/014.pngBinary files differ
docs/operateDoc/img/015.pngBinary files differ
docs/operateDoc/img/016.pngBinary files differ
docs/operateDoc/img/017.pngBinary files differ
docs/operateDoc/img/018.pngBinary files differ
docs/operateDoc/img/019.pngBinary files differ
docs/operateDoc/img/020.pngBinary files differ
docs/operateDoc/img/021.pngBinary files differ
docs/operateDoc/img/022.pngBinary files differ
docs/operateDoc/img/023.pngBinary files differ
docs/operateDoc/img/024.pngBinary files differ
docs/operateDoc/img/025.pngBinary files differ
docs/operateDoc/img/026.pngBinary files differ
docs/operateDoc/img/027.pngBinary files differ
docs/operateDoc/img/028.pngBinary files differ
docs/operateDoc/img/029.pngBinary files differ
docs/operateDoc/img/030.pngBinary files differ
docs/operateDoc/img/031.pngBinary files differ
docs/operateDoc/img/032.pngBinary files differ
docs/operateDoc/img/033.pngBinary files differ
docs/operateDoc/img/034.pngBinary files differ
docs/operateDoc/img/035.pngBinary files differ
docs/operateDoc/img/036.pngBinary files differ
docs/operateDoc/img/037.pngBinary files differ
docs/operateDoc/img/038.pngBinary files differ
docs/operateDoc/img/039.pngBinary files differ
docs/operateDoc/img/040.pngBinary files differ
docs/operateDoc/img/041.pngBinary files differ
docs/operateDoc/img/042.pngBinary files differ
docs/operateDoc/img/043.pngBinary files differ
docs/operateDoc/img/044.pngBinary files differ
docs/operateDoc/img/045.pngBinary files differ
docs/operateDoc/img/046.pngBinary files differ
docs/operateDoc/img/047.pngBinary files differ
docs/operateDoc/img/048.pngBinary files differ
docs/operateDoc/img/049.pngBinary files differ
docs/operateDoc/img/050.pngBinary files differ
docs/operateDoc/img/051.pngBinary files differ
docs/operateDoc/img/052.pngBinary files differ
docs/operateDoc/img/053.pngBinary files differ
docs/operateDoc/img/054.pngBinary files differ
docs/operateDoc/img/055.pngBinary files differ
docs/operateDoc/img/056.pngBinary files differ
docs/operateDoc/img/057.pngBinary files differ
docs/operateDoc/img/058.pngBinary files differ
docs/operateDoc/img/059.pngBinary files differ
docs/operateDoc/img/060.pngBinary files differ
docs/operateDoc/img/061.pngBinary files differ
docs/operateDoc/img/062.pngBinary files differ
docs/operateDoc/img/063.pngBinary files differ
docs/operateDoc/img/064.pngBinary files differ
docs/operateDoc/img/065.pngBinary files differ
docs/operateDoc/img/066.pngBinary files differ
docs/operateDoc/img/067.pngBinary files differ
docs/operateDoc/img/068.pngBinary files differ
docs/operateDoc/img/069.pngBinary files differ
docs/operateDoc/img/070.pngBinary files differ
docs/operateDoc/img/071.pngBinary files differ
docs/operateDoc/img/072.pngBinary files differ
docs/operateDoc/img/073.pngBinary files differ
docs/operateDoc/img/074.pngBinary files differ
docs/operateDoc/img/075.pngBinary files differ
docs/operateDoc/img/076.pngBinary files differ
docs/operateDoc/img/077.pngBinary files differ
docs/operateDoc/img/078.pngBinary files differ
docs/operateDoc/img/079.pngBinary files differ
docs/operateDoc/img/080.pngBinary files differ
docs/operateDoc/img/081.pngBinary files differ
docs/operateDoc/img/082.pngBinary files differ
docs/operateDoc/img/085.pngBinary files differ
docs/operateDoc/img/086.pngBinary files differ
docs/operateDoc/img/087.pngBinary files differ
docs/operateDoc/img/088.pngBinary files differ
docs/operateDoc/img/089.pngBinary files differ
docs/operateDoc/img/090.pngBinary files differ
docs/operateDoc/img/091.pngBinary files differ
docs/operateDoc/img/092.pngBinary files differ
docs/operateDoc/img/093.pngBinary files differ
docs/operateDoc/img/094.pngBinary files differ
docs/operateDoc/img/095.pngBinary files differ
docs/operateDoc/img/096.pngBinary files differ
docs/operateDoc/img/097.pngBinary files differ
docs/operateDoc/img/098.pngBinary files differ
docs/operateDoc/img/099.pngBinary files differ
docs/operateDoc/img/100.pngBinary files differ
docs/operateDoc/img/101.pngBinary files differ
docs/operateDoc/img/all.jpgBinary files differ
docs/operateDoc/img/dlsdl.pngBinary files differ
docs/operateDoc/img/flow.pngBinary files differ
docs/operateDoc/img/glxt.pngBinary files differ
docs/operateDoc/img/glxt1.pngBinary files differ
docs/operateDoc/img/glydl.pngBinary files differ
docs/operateDoc/img/photoRepair.pngBinary files differ
docs/operateDoc/img/repairFlow.pngBinary files differ
docs/operateDoc/img/rzcg.pngBinary files differ
docs/operateDoc/img/rzsh.pngBinary files differ
docs/operateDoc/img/rzxq.pngBinary files differ
docs/operateDoc/img/sh.pngBinary files differ
docs/operateDoc/img/shcg.pngBinary files differ
docs/operateDoc/img/shsh.pngBinary files differ
docs/operateDoc/img/shsh1.pngBinary files differ
docs/operateDoc/img/shti.pngBinary files differ
docs/operateDoc/img/shxq.pngBinary files differ
docs/operateDoc/img/shzt.pngBinary files differ
docs/operateDoc/img/sqrz.pngBinary files differ
docs/operateDoc/img/tj.pngBinary files differ
docs/operateDoc/img/tjxq.pngBinary files differ
docs/operateDoc/img/tjxq1.pngBinary files differ
docs/operateDoc/img/wsgsxx.pngBinary files differ
docs/operateDoc/img/xqxx.pngBinary files differ
docs/operateDoc/img/xxws.pngBinary files differ
docs/operateDoc/img/zc.pngBinary files differ
docs/operateDoc/img/zcdr.pngBinary files differ
docs/operateDoc/index.html
File was deleted docs/operateDoc/org.md
File was deleted docs/operateDoc/propertyEnter.md
File was deleted docs/operateDoc/repair.md
File was deleted docs/operateDoc/vedio.md
File was deleted docs/yuelun.html
File was deleted docs/ÈÕÖ¾¼Ç¼.md
File was deleted docs/ÇëÇóÐÅϢ˵Ã÷.md
File was deleted java110-bean/src/main/java/com/java110/dto/fee/FeeAttrDto.java
@@ -17,7 +17,7 @@ public static final String SPEC_CD_REPAIR = "390001"; // æ¥ä¿®åID public static final String SPEC_CD_IMPORT_FEE_NAME = "390001";//å¯¼å ¥è´¹ç¨åç§° public static final String SPEC_CD_IMPORT_FEE_NAME = "390002";//å¯¼å ¥è´¹ç¨åç§° private String attrId; private String specCd; java110-bean/src/main/java/com/java110/dto/fee/FeeConfigDto.java
@@ -47,6 +47,8 @@ private String paymentCycle; private String valid; private Date createTime; @@ -214,4 +216,12 @@ public void setCurTime(String curTime) { this.curTime = curTime; } public String getValid() { return valid; } public void setValid(String valid) { this.valid = valid; } } java110-bean/src/main/java/com/java110/dto/fee/FeeDto.java
@@ -62,6 +62,15 @@ private String paymentCycle; private String bId; private String importFeeName; private String amountOwed; private String roomName; private String ownerName; private String ownerTel; private Date createTime; @@ -375,4 +384,44 @@ public void setBillTypeName(String billTypeName) { this.billTypeName = billTypeName; } public String getImportFeeName() { return importFeeName; } public void setImportFeeName(String importFeeName) { this.importFeeName = importFeeName; } public String getAmountOwed() { return amountOwed; } public void setAmountOwed(String amountOwed) { this.amountOwed = amountOwed; } public String getRoomName() { return roomName; } public void setRoomName(String roomName) { this.roomName = roomName; } public String getOwnerName() { return ownerName; } public void setOwnerName(String ownerName) { this.ownerName = ownerName; } public String getOwnerTel() { return ownerTel; } public void setOwnerTel(String ownerTel) { this.ownerTel = ownerTel; } } java110-bean/src/main/java/com/java110/dto/owner/OwnerDto.java
@@ -30,6 +30,7 @@ private String link; private String remark; private String ownerId; private String[] ownerIds; private String userId; private String age; private String memberId; @@ -265,4 +266,12 @@ public void setOwnerAttrDtos(List<OwnerAttrDto> ownerAttrDtos) { this.ownerAttrDtos = ownerAttrDtos; } public String[] getOwnerIds() { return ownerIds; } public void setOwnerIds(String[] ownerIds) { this.ownerIds = ownerIds; } } java110-bean/src/main/java/com/java110/entity/assetImport/ImportRoomFee.java
@@ -21,6 +21,8 @@ private String roomId; private String communityId; public String getFloorNum() { return floorNum; @@ -85,4 +87,12 @@ public void setRoomId(String roomId) { this.roomId = roomId; } public String getCommunityId() { return communityId; } public void setCommunityId(String communityId) { this.communityId = communityId; } } java110-db/src/main/resources/mapper/community/CommunityServiceDaoImplMapper.xml
@@ -515,12 +515,14 @@ <!-- æ¥è¯¢å°åºæ°é add by wuxw 2018-07-03 --> <select id="queryCommunitysCount" parameterType="Map" resultType="Map"> select count(1) count from s_community t select count(DISTINCT(t.community_id)) count from s_community t,city_area ca <if test="memberId !=null and memberId !=''"> ,s_community_member cm </if> where 1 =1 and t.city_code = ca.area_code and ca.status_cd = '0' <if test="address !=null and address != ''"> and t.address= #{address} </if> java110-db/src/main/resources/mapper/community/NoticeServiceDaoImplMapper.xml
@@ -135,6 +135,9 @@ <if test="userId !=null and userId != ''"> and t.user_id= #{userId} </if> <if test="state !=null and state != ''"> and t.state= #{state} </if> <if test="noticeId !=null and noticeId != ''"> and t.notice_id= #{noticeId} </if> java110-db/src/main/resources/mapper/fee/FeeConfigServiceDaoImplMapper.xml
@@ -179,6 +179,9 @@ <if test="endTime !=null "> and t.end_time= #{endTime} </if> <if test="valid !=null and valid == 1"> and t.end_time > now() </if> <if test="curTime !=null "> and t.end_time > #{curTime} and t.start_time < #{curTime} @@ -308,6 +311,9 @@ <if test="endTime !=null "> and t.end_time= #{endTime} </if> <if test="valid !=null and valid == 1"> and t.end_time > now() </if> <if test="communityId !=null and communityId != ''"> and t.community_id= #{communityId} </if> java110-db/src/main/resources/mapper/fee/FeeServiceDaoImplMapper.xml
@@ -140,24 +140,19 @@ computingFormula, pfc.bill_type billType,t.payer_obj_type,t.payer_obj_type payerObjType,pfc.is_default isDefault,pfc.start_time configStartTime,pfc.end_time configEndTime,pfc.payment_cd paymentCd,pfc.payment_cycle paymentCycle,td4.name billTypeName from pay_fee t,pay_fee_config pfc,t_dict td1,t_dict td2,t_dict td3,t_dict td4 billTypeName,pfa.value importFeeName from pay_fee t INNER join pay_fee_config pfc on t.fee_type_cd = pfc.fee_type_cd and t.config_id = pfc.config_id and pfc.status_cd = '0' left join t_dict td1 on pfc.fee_type_cd = td1.status_cd and td1.table_name = 'pay_fee_config' and td1.table_columns = 'fee_type_cd' left join t_dict td2 on t.state = td2.status_cd and td2.table_name = 'pay_fee' and td2.table_columns = 'state' left join t_dict td3 on t.fee_flag = td3.status_cd and td3.table_name = 'pay_fee' and td3.table_columns = 'fee_flag' left join t_dict td4 on pfc.bill_type = td4.status_cd and td4.table_name = 'pay_fee_config' and td4.table_columns = 'bill_type' LEFT JOIN pay_fee_attrs pfa on t.fee_id = pfa.fee_id and pfa.spec_cd = '390002' and pfa.status_cd = '0' where 1 =1 and t.fee_type_cd = pfc.fee_type_cd and t.config_id = pfc.config_id and pfc.status_cd = '0' and pfc.fee_type_cd = td1.status_cd and td1.table_name = 'pay_fee_config' and td1.table_columns = 'fee_type_cd' and t.state = td2.status_cd and td2.table_name = 'pay_fee' and td2.table_columns = 'state' and t.fee_flag = td3.status_cd and td3.table_name = 'pay_fee' and td3.table_columns = 'fee_flag' and pfc.bill_type = td4.status_cd and td4.table_name = 'pay_fee_config' and td4.table_columns = 'bill_type' <if test="amount !=null and amount != ''"> and t.amount= #{amount} </if> @@ -757,4 +752,85 @@ </foreach> </insert> <select id="computeBillOweFeeCount" parameterType="Map" resultType="Map"> select count(1) count from pay_fee pf INNER JOIN pay_fee_config pfc on pf.config_id = pfc.config_id and pfc.bill_type in ('001','002','003') and pfc.status_cd = '0' and pf.community_id = pfc.community_id inner join bill_owe_fee bof on pf.fee_id = bof.fee_id and bof.community_id = pf.community_id and bof.state ='1000' and bof.amount_owed > 0 inner join bill b on bof.bill_id = b.bill_id and b.community_id = bof.community_id and b.cur_bill = 'T' where pf.status_cd = '0' and pf.state = '2008001' and pf.community_id = #{communityId} <if test="payerObjId !=null and payerObjId != ''"> and pf.payer_obj_id= #{payerObjId} </if> <if test="payerObjType !=null and payerObjType != ''"> and pf.payer_obj_type = #{payerObjType} </if> </select> <select id="computeBillOweFee" parameterType="Map" resultType="Map"> select pfc.fee_name feeName,pf.fee_id feeId,pf.end_time endTime,bof.amount_owed amountOwed,bof.payer_obj_name roomName,bof.owner_name ownerName,bof.owner_tel ownerTel,pf.payer_obj_id payerObjId,pf.payer_obj_type payerObjType, pf.community_id communityId from pay_fee pf INNER JOIN pay_fee_config pfc on pf.config_id = pfc.config_id and pfc.bill_type in ('001','002','003') and pfc.status_cd = '0' and pf.community_id = pfc.community_id inner join bill_owe_fee bof on pf.fee_id = bof.fee_id and bof.community_id = pf.community_id and bof.state ='1000' and bof.amount_owed > 0 inner join bill b on bof.bill_id = b.bill_id and b.community_id = bof.community_id and b.cur_bill = 'T' where pf.status_cd = '0' and pf.state = '2008001' and pf.community_id = #{communityId} <if test="payerObjId !=null and payerObjId != ''"> and pf.payer_obj_id= #{payerObjId} </if> <if test="payerObjType !=null and payerObjType != ''"> and pf.payer_obj_type = #{payerObjType} </if> <if test="page != -1 and page != null "> limit #{page}, #{row} </if> </select> <select id="computeEveryOweFeeCount" parameterType="Map" resultType="Map"> select count(1) count from pay_fee pf INNER JOIN pay_fee_config pfc on pf.config_id = pfc.config_id and pfc.bill_type = '004' and pfc.status_cd = '0' and pf.community_id = pfc.community_id where pf.end_time < NOW() and pf.status_cd = '0' and pf.state = '2008001' and pf.community_id = #{communityId} <if test="payerObjId !=null and payerObjId != ''"> and pf.payer_obj_id= #{payerObjId} </if> <if test="payerObjType !=null and payerObjType != ''"> and pf.payer_obj_type = #{payerObjType} </if> </select> <select id="computeEveryOweFee" parameterType="Map" resultType="Map"> select pfc.fee_name feeName,pf.fee_id feeId,pf.end_time endTime,pf.payer_obj_id payerObjId,pf.payer_obj_type payerObjType, pf.community_id communityId,pfc.computing_formula computingFormula,pfc.square_price squarePrice,pfc.additional_amount additionalAmount from pay_fee pf INNER JOIN pay_fee_config pfc on pf.config_id = pfc.config_id and pfc.bill_type = '004' and pfc.status_cd = '0' and pf.community_id = pfc.community_id where pf.end_time < NOW() and pf.status_cd = '0' and pf.state = '2008001' and pf.community_id = #{communityId} <if test="payerObjId !=null and payerObjId != ''"> and pf.payer_obj_id= #{payerObjId} </if> <if test="payerObjType !=null and payerObjType != ''"> and pf.payer_obj_type = #{payerObjType} </if> <if test="page != -1 and page != null "> limit #{page}, #{row} </if> </select> </mapper> java110-db/src/main/resources/mapper/user/OwnerServiceDaoImplMapper.xml
@@ -125,6 +125,9 @@ t.user_id,t.user_id userId,t.age,t.member_id,t.member_id memberId,t.owner_type_cd, t.owner_type_cd ownerTypeCd,t.create_time createTime,t.community_id, t.community_id communityId,t.id_card, t.id_card idCard,t.state,td.name ownerTypeName <if test="roomIds != null"> , borr.room_id roomId </if> from building_owner t,t_dict td <if test="roomId != null and roomId != ''"> ,building_owner_room_rel borr java110-interface/src/main/java/com/java110/intf/fee/IFeeInnerServiceSMO.java
@@ -1,7 +1,6 @@ package com.java110.intf.fee; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.java110.config.feign.FeignConfiguration; import com.java110.dto.fee.BillDto; import com.java110.dto.fee.BillOweFeeDto; @@ -44,7 +43,6 @@ */ @RequestMapping(value = "/queryBusinessFees", method = RequestMethod.POST) List<FeeDto> queryBusinessFees(@RequestBody FeeDto feeDto); /** @@ -95,6 +93,45 @@ @RequestMapping(value = "/queryBills", method = RequestMethod.POST) public List<BillDto> queryBills(@RequestBody BillDto billDto); /** * æ¥è¯¢è´¦åæ¬ è´¹ * * @param feeDto æ°æ®å¯¹è±¡å享 * @return å°åºä¸çå°åºæ¥¼è®°å½æ° */ @RequestMapping(value = "/computeBillOweFeeCount", method = RequestMethod.POST) public int computeBillOweFeeCount(@RequestBody FeeDto feeDto); /** * æ¥è¯¢è´¦åæ¬ è´¹ * * @param feeDto æ°æ®å¯¹è±¡å享 * @return å°åºä¸çå°åºæ¥¼è®°å½æ° */ @RequestMapping(value = "/computeEveryOweFee", method = RequestMethod.POST) public List<FeeDto> computeEveryOweFee(@RequestBody FeeDto feeDto); /** * æ¥è¯¢è´¦åæ¬ è´¹ * * @param feeDto æ°æ®å¯¹è±¡å享 * @return å°åºä¸çå°åºæ¥¼è®°å½æ° */ @RequestMapping(value = "/computeEveryOweFeeCount", method = RequestMethod.POST) public int computeEveryOweFeeCount(@RequestBody FeeDto feeDto); /** * æ¥è¯¢è´¦åæ¬ è´¹ * * @param feeDto æ°æ®å¯¹è±¡å享 * @return å°åºä¸çå°åºæ¥¼è®°å½æ° */ @RequestMapping(value = "/computeBillOweFee", method = RequestMethod.POST) public List<FeeDto> computeBillOweFee(@RequestBody FeeDto feeDto); /** * æ¥è¯¢ æ¬ è´¹æ°é * @@ -120,7 +157,7 @@ * @return */ @RequestMapping(value = "/insertBillOweFees", method = RequestMethod.POST) public int insertBillOweFees(@RequestBody BillOweFeeDto billDto) ; public int insertBillOweFees(@RequestBody BillOweFeeDto billDto); /** * ä¿åæ¬ è´¹ @@ -129,7 +166,8 @@ * @return */ @RequestMapping(value = "/updateBillOweFees", method = RequestMethod.POST) public int updateBillOweFees(@RequestBody BillOweFeeDto billDto) ; public int updateBillOweFees(@RequestBody BillOweFeeDto billDto); /** * ä¿åè´¦å * java110-interface/src/main/java/com/java110/intf/user/IOwnerInnerServiceSMO.java
@@ -32,6 +32,8 @@ @RequestMapping(value = "/queryOwners", method = RequestMethod.POST) List<OwnerDto> queryOwners(@RequestBody OwnerDto ownerDto); /** * <p>æ¥è¯¢ä¸ä¸»æå</p> * java110-utils/src/main/java/com/java110/utils/constant/ServiceCodeConstant.java
@@ -525,6 +525,9 @@ //æ¥è¯¢é¦é¡µç»è®¡ä¿¡æ¯ public static final String SERVICE_CODE_QUERY_INDEX_STATISTIC = "index.queryIndexStatistic"; //æ¥è¯¢é¦é¡µå¾ å public static final String SERVICE_CODE_QUERY_INDEX_TODO_TASK = "index.queryIndexTodoTask"; //æ¥è¯¢è´¹ç¨é ç½® æ ¹æ®åè½¦ä½ public static final String SERVICE_CODE_QUERY_FEE_BY_PARKING_SPACE = "fee.queryFeeByParkingSpace"; service-api/src/main/java/com/java110/api/bmo/fee/IFeeBMO.java
@@ -33,7 +33,7 @@ */ public void deleteFee(JSONObject paramInJson, DataFlowContext dataFlowContext); public JSONObject updateFee(JSONObject paramInJson, DataFlowContext dataFlowContext); public void updateFee(JSONObject paramInJson, DataFlowContext dataFlowContext); /** * ä¿®æ¹è´¹ç¨ä¿¡æ¯ service-api/src/main/java/com/java110/api/bmo/fee/impl/FeeBMOImpl.java
@@ -89,13 +89,10 @@ super.delete(dataFlowContext, payFeePo, BusinessTypeConstant.BUSINESS_TYPE_DELETE_FEE_INFO); } public JSONObject updateFee(JSONObject paramInJson, DataFlowContext dataFlowContext) { JSONObject business = JSONObject.parseObject("{\"datas\":{}}"); business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_FEE_INFO); business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 1); business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S); business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put(PayFeePo.class.getSimpleName(), paramInJson); return business; public void updateFee(JSONObject paramInJson, DataFlowContext dataFlowContext) { PayFeePo payFeePo = BeanConvertUtil.covertBean(paramInJson, PayFeePo.class); super.update(dataFlowContext,payFeePo, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_FEE_INFO); } /** service-api/src/main/java/com/java110/api/listener/index/QueryIndexTodoTaskListener.java
New file @@ -0,0 +1,139 @@ package com.java110.api.listener.index; import com.alibaba.fastjson.JSONObject; import com.java110.api.listener.AbstractServiceApiDataFlowListener; import com.java110.core.annotation.Java110Listener; import com.java110.core.context.DataFlowContext; import com.java110.core.event.service.api.ServiceDataFlowEvent; import com.java110.dto.repair.RepairDto; import com.java110.entity.audit.AuditUser; import com.java110.intf.common.IComplaintUserInnerServiceSMO; import com.java110.intf.common.IGoodCollectionUserInnerServiceSMO; import com.java110.intf.common.IResourceEntryStoreInnerServiceSMO; import com.java110.intf.community.IParkingSpaceInnerServiceSMO; import com.java110.intf.community.IRepairInnerServiceSMO; import com.java110.utils.constant.ServiceCodeConstant; import com.java110.utils.util.Assert; import com.java110.vo.ResultVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpMethod; /** * @ClassName FloorDto * @Description æ¥è¯¢é¦é¡µç»è®¡ä¿¡æ¯ * @Author wuxw * @Date 2019/4/24 8:52 * @Version 1.0 * add by wuxw 2019/4/24 **/ @Java110Listener("queryIndexTodoTaskListener") public class QueryIndexTodoTaskListener extends AbstractServiceApiDataFlowListener { @Autowired private IComplaintUserInnerServiceSMO complaintUserInnerServiceSMOImpl; @Autowired private IRepairInnerServiceSMO repairInnerServiceSMOImpl; @Autowired private IResourceEntryStoreInnerServiceSMO resourceEntryStoreInnerServiceSMOImpl; @Autowired private IGoodCollectionUserInnerServiceSMO goodCollectionUserInnerServiceSMOImpl; @Autowired private IParkingSpaceInnerServiceSMO parkingSpaceInnerServiceSMOImpl; @Override public String getServiceCode() { return ServiceCodeConstant.SERVICE_CODE_QUERY_INDEX_TODO_TASK; } @Override public HttpMethod getHttpMethod() { return HttpMethod.GET; } /** * ä¸å¡å±æ°æ®å¤ç * * @param event æ¶é´å¯¹è±¡ */ @Override public void soService(ServiceDataFlowEvent event) { DataFlowContext dataFlowContext = event.getDataFlowContext(); //è·åè¯·æ±æ°æ® JSONObject reqJson = dataFlowContext.getReqJson(); AuditUser auditUser = new AuditUser(); auditUser.setStoreId(reqJson.getString("storeId")); auditUser.setUserId(reqJson.getString("userId")); auditUser.setCommunityId(reqJson.getString("communityId")); //æè¯å¾ å long complaintCount = complaintUserInnerServiceSMOImpl.getUserTaskCount(auditUser); //æè¯å·²å long complaintHisCount = complaintUserInnerServiceSMOImpl.getUserHistoryTaskCount(auditUser); //æ¥ä¿® å¾ å RepairDto ownerRepairDto = new RepairDto(); ownerRepairDto.setStaffId(reqJson.getString("userId")); ownerRepairDto.setCommunityId(reqJson.getString("communityId")); int repairCount = repairInnerServiceSMOImpl.queryStaffRepairsCount(ownerRepairDto); //æ¥ä¿®å·²å int repairHisCount = repairInnerServiceSMOImpl.queryStaffFinishRepairsCount(ownerRepairDto); // éè´å¾ å long purchaseCount = resourceEntryStoreInnerServiceSMOImpl.getUserTaskCount(auditUser); //éè´å·²å long purchaseHisCount = resourceEntryStoreInnerServiceSMOImpl.getUserHistoryTaskCount(auditUser); //ç©åé¢ç¨å¾ å long collectionCount = goodCollectionUserInnerServiceSMOImpl.getUserTaskCount(auditUser); long collectionHisCount = goodCollectionUserInnerServiceSMOImpl.getUserHistoryTaskCount(auditUser); JSONObject paramOut = new JSONObject(); paramOut.put("complaintCount", complaintCount); paramOut.put("complaintHisCount", complaintHisCount); paramOut.put("repairCount", repairCount); paramOut.put("repairHisCount", repairHisCount); paramOut.put("purchaseCount", purchaseCount); paramOut.put("purchaseHisCount", purchaseHisCount); paramOut.put("collectionCount", collectionCount); paramOut.put("collectionHisCount", collectionHisCount); dataFlowContext.setResponseEntity(ResultVo.createResponseEntity(paramOut)); } /** * æ ¡éªæ¥è¯¢æ¡ä»¶æ¯å¦æ»¡è¶³æ¡ä»¶ * * @param reqJson å 嫿¥è¯¢æ¡ä»¶ */ private void validateIndexStatistic(JSONObject reqJson) { Assert.jsonObjectHaveKey(reqJson, "communityId", "请æ±ä¸æªå å«communityIdä¿¡æ¯"); } @Override public int getOrder() { return super.DEFAULT_ORDER; } public IParkingSpaceInnerServiceSMO getParkingSpaceInnerServiceSMOImpl() { return parkingSpaceInnerServiceSMOImpl; } public void setParkingSpaceInnerServiceSMOImpl(IParkingSpaceInnerServiceSMO parkingSpaceInnerServiceSMOImpl) { this.parkingSpaceInnerServiceSMOImpl = parkingSpaceInnerServiceSMOImpl; } } service-api/src/main/java/com/java110/api/listener/returnPayFee/UpdateReturnPayFeeListener.java
@@ -65,7 +65,7 @@ Calendar endCalender = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); endCalender.setTime(feeDto1.getEndTime()); endCalender.add(Calendar.MONTH, -new Double(cycles).intValue()); endCalender.add(Calendar.MONTH, new Double(cycles).intValue()); reqJson.put("endTime", sdf.format(endCalender.getTime())); reqJson.put("amount", feeDto1.getAmount()); reqJson.put("feeTypeCd", feeDto1.getFeeTypeCd()); @@ -80,8 +80,11 @@ reqJson.put("state", feeDto1.getState()); reqJson.put("configId", feeDto1.getConfigId()); reqJson.put("payerObjType", feeDto1.getPayerObjType()); reqJson.put("feeId",feeDto1.getFeeId()); if ("888800010006".equals(feeDto1.getFeeTypeCds())) { reqJson.put("state", "2009001"); }else{ reqJson.put("state", "2008001"); } feeBMOImpl.updateFee(reqJson, context); service-api/src/main/java/com/java110/api/listener/unit/SaveUnitListener.java
@@ -5,9 +5,11 @@ import com.java110.api.listener.AbstractServiceApiPlusListener; import com.java110.core.annotation.Java110Listener; import com.java110.core.context.DataFlowContext; import com.java110.dto.UnitDto; import com.java110.intf.community.IFloorInnerServiceSMO; import com.java110.dto.FloorDto; import com.java110.core.event.service.api.ServiceDataFlowEvent; import com.java110.intf.community.IUnitInnerServiceSMO; import com.java110.utils.constant.ServiceCodeConstant; import com.java110.utils.util.Assert; import org.slf4j.Logger; @@ -31,6 +33,9 @@ @Autowired private IFloorInnerServiceSMO floorInnerServiceSMOImpl; @Autowired private IUnitInnerServiceSMO unitInnerServiceSMOImpl; @Override public String getServiceCode() { @@ -66,6 +71,17 @@ if (total < 1) { throw new IllegalArgumentException("ä¼ å ¥å°åºæ¥¼ID䏿¯è¯¥å°åºç楼"); } //æ ¡éªåå ç¼å·æ¯å¦å·²ç»åå¨ UnitDto unitDto = new UnitDto(); unitDto.setCommunityId(reqJson.getString("communityId")); unitDto.setFloorId(reqJson.getString("floorId")); unitDto.setUnitNum(reqJson.getString("unitNum")); int count = unitInnerServiceSMOImpl.queryUnitsCount(unitDto); if(count > 0){ throw new IllegalArgumentException("åå ç¼å·å·²ç»åå¨ï¼è¯·å¿é夿·»å "); } } @Override service-fee/src/main/java/com/java110/fee/api/FeeApi.java
@@ -181,6 +181,34 @@ return queryOweFeeImpl.query(feeDto); } /** * æ¥è¯¢æ¬ 费费ç¨(æ¹éæ¥è¯¢) * * @param num åè½¦ä½ææ¿å±ç¼å· * @param communityId å°åºID * @return * @path /app/feeApi/getOweFees */ @RequestMapping(value = "/getOweFees", method = RequestMethod.GET) public ResponseEntity<String> getOweFees( @RequestParam(value = "payObjType") String payObjType, @RequestParam(value = "communityId") String communityId, @RequestParam(value = "billType") String billType, @RequestParam(value = "row") int row, @RequestParam(value = "page") int page, @RequestParam(value = "num",required = false) String num ) { FeeDto feeDto = new FeeDto(); feeDto.setPayerObjId(num); feeDto.setPayerObjType(payObjType); feeDto.setCommunityId(communityId); feeDto.setBillType(billType); feeDto.setRow(row); feeDto.setPage(page); return queryOweFeeImpl.queryAllOwneFee(feeDto); } /** * æ¬ è´¹æ¹éç¼´è´¹ * service-fee/src/main/java/com/java110/fee/bmo/IQueryOweFee.java
@@ -12,4 +12,11 @@ * @return */ ResponseEntity<String> query(FeeDto feeDto); /** * æ¥è¯¢è´¹ç¨ * @param feeDto * @return */ ResponseEntity<String> queryAllOwneFee(FeeDto feeDto); } service-fee/src/main/java/com/java110/fee/bmo/impl/ImportRoomFeeImpl.java
@@ -101,6 +101,10 @@ List<ImportRoomFee> tmpImportRoomFees = importRoomFees.toJavaList(ImportRoomFee.class); for(ImportRoomFee tmpImportRoomFee: tmpImportRoomFees){ tmpImportRoomFee.setCommunityId(communityId); } Assert.isNotNull(tmpImportRoomFees, "åæ°éè¯¯ï¼æªå å«å¤çè´¹ç¨"); tmpImportRoomFees = roomInnerServiceSMOImpl.freshRoomIds(tmpImportRoomFees); @@ -113,7 +117,7 @@ for (ImportRoomFee importRoomFee : tmpImportRoomFees) { payFeePo = new PayFeePo(); payFeePo.setFeeId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_feeId)); payFeePo.setEndTime(importRoomFee.getEndTime()); payFeePo.setEndTime(importRoomFee.getStartTime()); payFeePo.setState(FeeDto.STATE_DOING); payFeePo.setCommunityId(communityId); payFeePo.setConfigId(feeConfigDto.getConfigId()); service-fee/src/main/java/com/java110/fee/bmo/impl/QueryOweFeeImpl.java
@@ -1,24 +1,31 @@ package com.java110.fee.bmo.impl; import com.alibaba.fastjson.JSONArray; import com.java110.dto.RoomDto; import com.java110.dto.fee.BillDto; import com.java110.dto.fee.BillOweFeeDto; import com.java110.dto.fee.FeeConfigDto; import com.java110.dto.fee.FeeDto; import com.java110.dto.owner.OwnerDto; import com.java110.dto.parking.ParkingSpaceDto; import com.java110.fee.bmo.IQueryOweFee; import com.java110.intf.community.IParkingSpaceInnerServiceSMO; import com.java110.intf.community.IRoomInnerServiceSMO; import com.java110.intf.fee.IFeeConfigInnerServiceSMO; import com.java110.intf.fee.IFeeInnerServiceSMO; import com.java110.intf.user.IOwnerInnerServiceSMO; import com.java110.utils.util.DateUtil; import com.java110.utils.util.StringUtil; import com.java110.vo.ResultVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.math.RoundingMode; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.List; @Service @@ -36,6 +43,9 @@ @Autowired private IRoomInnerServiceSMO roomInnerServiceSMOImpl; @Autowired private IOwnerInnerServiceSMO ownerInnerServiceSMOImpl; @Override @@ -62,6 +72,268 @@ return ResultVo.createResponseEntity(tmpFeeDtos); } @Override public ResponseEntity<String> queryAllOwneFee(FeeDto feeDto) { ResponseEntity<String> responseEntity = null; if (!freshFeeDtoParam(feeDto)) { return ResultVo.createResponseEntity(1, 0, new JSONArray()); } if (FeeConfigDto.BILL_TYPE_EVERY.equals(feeDto.getBillType())) { responseEntity = computeEveryOweFee(feeDto); } else { responseEntity = computeBillOweFee(feeDto); } return responseEntity; } private boolean freshFeeDtoParam(FeeDto feeDto) { if (StringUtil.isEmpty(feeDto.getPayerObjId())) { return true; } if (!feeDto.getPayerObjId().contains("#")) { return false; } if (FeeDto.PAYER_OBJ_TYPE_ROOM.equals(feeDto.getPayerObjType())) { String[] nums = feeDto.getPayerObjId().split("#"); if (nums.length != 3) { return false; } RoomDto roomDto = new RoomDto(); roomDto.setFloorId(nums[0]); roomDto.setUnitNum(nums[1]); roomDto.setRoomNum(nums[2]); roomDto.setCommunityId(feeDto.getCommunityId()); List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto); if (roomDtos == null || roomDtos.size() < 1) { return false; } feeDto.setPayerObjId(roomDtos.get(0).getRoomId()); } else { String[] nums = feeDto.getPayerObjId().split("#"); if (nums.length != 2) { return false; } ParkingSpaceDto parkingSpaceDto = new ParkingSpaceDto(); parkingSpaceDto.setAreaNum(nums[0]); parkingSpaceDto.setNum(nums[1]); parkingSpaceDto.setCommunityId(feeDto.getCommunityId()); List<ParkingSpaceDto> parkingSpaceDtos = parkingSpaceInnerServiceSMOImpl.queryParkingSpaces(parkingSpaceDto); if (parkingSpaceDtos == null || parkingSpaceDtos.size() < 1) { return false; } feeDto.setPayerObjId(parkingSpaceDtos.get(0).getPsId()); } return true; } /** * è´¦åè´¹ç¨ * * @param feeDto * @return */ private ResponseEntity<String> computeBillOweFee(FeeDto feeDto) { int count = feeInnerServiceSMOImpl.computeBillOweFeeCount(feeDto); List<FeeDto> feeDtos = null; if (count > 0) { feeDtos = feeInnerServiceSMOImpl.computeBillOweFee(feeDto); } else { feeDtos = new ArrayList<>(); } return ResultVo.createResponseEntity((int) Math.ceil((double) count / (double) feeDto.getRow()), count, feeDtos); } /** * 宿¶è´¹ç¨ * * @param feeDto * @return */ private ResponseEntity<String> computeEveryOweFee(FeeDto feeDto) { int count = feeInnerServiceSMOImpl.computeEveryOweFeeCount(feeDto); List<FeeDto> feeDtos = null; if (count > 0) { feeDtos = feeInnerServiceSMOImpl.computeEveryOweFee(feeDto); computeFeePrices(feeDtos); } else { feeDtos = new ArrayList<>(); } return ResultVo.createResponseEntity((int) Math.ceil((double) count / (double) feeDto.getRow()), count, feeDtos); } private void computeFeePrices(List<FeeDto> feeDtos) { List<FeeDto> roomFees = new ArrayList<>(); List<FeeDto> psFees = new ArrayList<>(); List<String> roomIds = new ArrayList<>(); List<String> psIds = new ArrayList<>(); for (FeeDto fee : feeDtos) { if ("3333".equals(fee.getPayerObjType())) { //æ¿å±ç¸å ³ roomFees.add(fee); roomIds.add(fee.getPayerObjId()); } else if ("6666".equals(fee.getPayerObjType())) {//车ä½ç¸å ³ psFees.add(fee); psIds.add(fee.getPayerObjId()); } } if (roomFees.size() > 0) { computeRoomFee(roomFees, roomIds); } if (psFees.size() > 0) { computePsFee(psFees, psIds); } } /** * 计ç®å车费 * * @param psFees */ private void computePsFee(List<FeeDto> psFees, List<String> psIds) { ParkingSpaceDto parkingSpaceDto = new ParkingSpaceDto(); parkingSpaceDto.setCommunityId(psFees.get(0).getCommunityId()); parkingSpaceDto.setPsIds(psIds.toArray(new String[psIds.size()])); List<ParkingSpaceDto> parkingSpaceDtos = parkingSpaceInnerServiceSMOImpl.queryParkingSpaces(parkingSpaceDto); if (parkingSpaceDtos == null || parkingSpaceDtos.size() < 1) { //æ°æ®æé®é¢ return; } for (ParkingSpaceDto tmpParkingSpaceDto : parkingSpaceDtos) { for (FeeDto feeDto : psFees) { dealFeePs(tmpParkingSpaceDto, feeDto); } } OwnerDto ownerDto = new OwnerDto(); ownerDto.setOwnerIds(psIds.toArray(new String[psIds.size()])); ownerDto.setCommunityId(psFees.get(0).getCommunityId()); List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwnersByParkingSpace(ownerDto); for (OwnerDto tmpOwnerDto : ownerDtos) { for (FeeDto feeDto : psFees) { dealFeeOwner(tmpOwnerDto, feeDto); } } } private void dealFeePs(ParkingSpaceDto tmpParkingSpaceDto, FeeDto feeDto) { if (!tmpParkingSpaceDto.getPsId().equals(feeDto.getPayerObjId())) { return; } feeDto.setRoomName(tmpParkingSpaceDto.getAreaNum() + "å车åº" + tmpParkingSpaceDto.getNum() + "车ä½"); String computingFormula = feeDto.getComputingFormula(); double feePrice = 0.00; if ("1001".equals(computingFormula)) { //é¢ç§¯*åä»·+éå è´¹ BigDecimal squarePrice = new BigDecimal(Double.parseDouble(feeDto.getSquarePrice())); BigDecimal builtUpArea = new BigDecimal(Double.parseDouble(tmpParkingSpaceDto.getArea())); BigDecimal additionalAmount = new BigDecimal(Double.parseDouble(feeDto.getAdditionalAmount())); feePrice = squarePrice.multiply(builtUpArea).add(additionalAmount).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(); } else if ("2002".equals(computingFormula)) { // åºå®è´¹ç¨ BigDecimal additionalAmount = new BigDecimal(Double.parseDouble(feeDto.getAdditionalAmount())); feePrice = additionalAmount.setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(); } else if ("4004".equals(computingFormula)) { feePrice = Double.parseDouble(feeDto.getAmount()); } else { feePrice = 0.00; } feeDto.setFeePrice(feePrice); double month = dayCompare(feeDto.getEndTime(), DateUtil.getCurrentDate()); BigDecimal price = new BigDecimal(feeDto.getFeePrice()); price = price.multiply(new BigDecimal(month)); feeDto.setAmountOwed(price.setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue() + ""); } /** * è®¡ç®æ¿å±è´¹ * * @param roomFees */ private void computeRoomFee(List<FeeDto> roomFees, List<String> roomIds) { RoomDto roomDto = new RoomDto(); roomDto.setCommunityId(roomFees.get(0).getCommunityId()); roomDto.setRoomIds(roomIds.toArray(new String[roomIds.size()])); List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto); if (roomDtos == null || roomDtos.size() < 1) { //æ°æ®æé®é¢ return; } for (RoomDto tmpRoomDto : roomDtos) { for (FeeDto feeDto : roomFees) { dealFeeRoom(tmpRoomDto, feeDto); } } OwnerDto ownerDto = new OwnerDto(); ownerDto.setRoomIds(roomIds.toArray(new String[roomIds.size()])); ownerDto.setCommunityId(roomFees.get(0).getCommunityId()); List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto); for (OwnerDto tmpOwnerDto : ownerDtos) { for (FeeDto feeDto : roomFees) { dealFeeOwner(tmpOwnerDto, feeDto); } } } private void dealFeeOwner(OwnerDto tmpOwnerDto, FeeDto feeDto) { if (!tmpOwnerDto.getRoomId().equals(feeDto.getPayerObjId())) { return; } feeDto.setOwnerName(tmpOwnerDto.getName()); feeDto.setOwnerTel(tmpOwnerDto.getLink()); } private void dealFeeRoom(RoomDto tmpRoomDto, FeeDto feeDto) { if (!tmpRoomDto.getRoomId().equals(feeDto.getPayerObjId())) { return; } feeDto.setRoomName(tmpRoomDto.getFloorNum() + "æ " + tmpRoomDto.getUnitNum() + "åå " + tmpRoomDto.getRoomNum() + "室"); String computingFormula = feeDto.getComputingFormula(); double feePrice = 0.00; if ("1001".equals(computingFormula)) { //é¢ç§¯*åä»·+éå è´¹ BigDecimal squarePrice = new BigDecimal(Double.parseDouble(feeDto.getSquarePrice())); BigDecimal builtUpArea = new BigDecimal(Double.parseDouble(tmpRoomDto.getBuiltUpArea())); BigDecimal additionalAmount = new BigDecimal(Double.parseDouble(feeDto.getAdditionalAmount())); feePrice = squarePrice.multiply(builtUpArea).add(additionalAmount).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(); } else if ("2002".equals(computingFormula)) { // åºå®è´¹ç¨ BigDecimal additionalAmount = new BigDecimal(Double.parseDouble(feeDto.getAdditionalAmount())); feePrice = additionalAmount.setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(); } else if ("4004".equals(computingFormula)) { feePrice = Double.parseDouble(feeDto.getAmount()); } else { feePrice = 0.00; } feeDto.setFeePrice(feePrice); double month = dayCompare(feeDto.getEndTime(), DateUtil.getCurrentDate()); BigDecimal price = new BigDecimal(feeDto.getFeePrice()); price = price.multiply(new BigDecimal(month)); feeDto.setAmountOwed(price.setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue() + ""); } /** @@ -135,8 +407,11 @@ } else { feePrice = 0.00; } feeDto.setFeePrice(feePrice); double month = dayCompare(feeDto.getEndTime(), DateUtil.getCurrentDate()); BigDecimal price = new BigDecimal(feeDto.getFeePrice()); price = price.multiply(new BigDecimal(month)); feeDto.setFeePrice(price.setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); } @@ -173,6 +448,38 @@ } feeDto.setFeePrice(feePrice); double month = dayCompare(feeDto.getEndTime(), DateUtil.getCurrentDate()); BigDecimal price = new BigDecimal(feeDto.getFeePrice()); price = price.multiply(new BigDecimal(month)); feeDto.setFeePrice(price.setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); } /** * 计ç®2ä¸ªæ¥æä¹é´ç¸å·®ç 以年ãæãæ¥ä¸ºåä½ï¼åèªè®¡ç®ç»ææ¯å¤å° * æ¯å¦ï¼2011-02-02 å° 2017-03-02 * 以年为åä½ç¸å·®ä¸ºï¼6å¹´ * 以æä¸ºåä½ç¸å·®ä¸ºï¼73个æ * 以æ¥ä¸ºåä½ç¸å·®ä¸ºï¼2220天 * * @param fromDate * @param toDate * @return */ public static double dayCompare(Date fromDate, Date toDate) { Calendar from = Calendar.getInstance(); from.setTime(fromDate); Calendar to = Calendar.getInstance(); to.setTime(toDate); long t1 = from.getTimeInMillis(); long t2 = to.getTimeInMillis(); long days = (t2 - t1) / (24 * 60 * 60 * 1000); BigDecimal tmpDays = new BigDecimal(days); BigDecimal monthDay = new BigDecimal(30); return tmpDays.divide(monthDay, 2, RoundingMode.HALF_UP).doubleValue(); } } service-fee/src/main/java/com/java110/fee/dao/IFeeServiceDao.java
@@ -164,6 +164,11 @@ int insertFees(Map info); int computeBillOweFeeCount(Map beanCovertMap); List<Map> computeBillOweFee(Map beanCovertMap); int computeEveryOweFeeCount(Map beanCovertMap); List<Map> computeEveryOweFee(Map beanCovertMap); } service-fee/src/main/java/com/java110/fee/dao/impl/FeeServiceDaoImpl.java
@@ -3,7 +3,6 @@ import com.alibaba.fastjson.JSONObject; import com.java110.core.base.dao.BaseServiceDao; import com.java110.fee.dao.IFeeServiceDao; import com.java110.po.fee.PayFeePo; import com.java110.utils.constant.ResponseConstant; import com.java110.utils.exception.DAOException; import com.java110.utils.util.DateUtil; @@ -288,5 +287,37 @@ return saveFlag; } @Override public int computeBillOweFeeCount(Map beanCovertMap) { List<Map> businessFeeInfos = sqlSessionTemplate.selectList("feeServiceDaoImpl.computeBillOweFeeCount", beanCovertMap); if (businessFeeInfos.size() < 1) { return 0; } return Integer.parseInt(businessFeeInfos.get(0).get("count").toString()); } @Override public List<Map> computeBillOweFee(Map beanCovertMap) { List<Map> businessFeeInfos = sqlSessionTemplate.selectList("feeServiceDaoImpl.computeBillOweFee", beanCovertMap); return businessFeeInfos; } @Override public int computeEveryOweFeeCount(Map beanCovertMap) { List<Map> businessFeeInfos = sqlSessionTemplate.selectList("feeServiceDaoImpl.computeEveryOweFeeCount", beanCovertMap); if (businessFeeInfos.size() < 1) { return 0; } return Integer.parseInt(businessFeeInfos.get(0).get("count").toString()); } @Override public List<Map> computeEveryOweFee(Map beanCovertMap) { List<Map> businessFeeInfos = sqlSessionTemplate.selectList("feeServiceDaoImpl.computeEveryOweFee", beanCovertMap); return businessFeeInfos; } } service-fee/src/main/java/com/java110/fee/listener/fee/UpdateFeeInfoListener.java
@@ -2,18 +2,18 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.java110.intf.order.IOrderInnerServiceSMO; import com.java110.core.annotation.Java110Listener; import com.java110.core.context.DataFlowContext; import com.java110.dto.order.BusinessDto; import com.java110.entity.center.Business; import com.java110.fee.dao.IFeeDetailServiceDao; import com.java110.fee.dao.IFeeServiceDao; import com.java110.intf.order.IOrderInnerServiceSMO; import com.java110.po.fee.PayFeePo; import com.java110.utils.constant.*; import com.java110.utils.exception.ListenerExecuteException; import com.java110.utils.lock.DistributedLock; import com.java110.utils.util.Assert; import com.java110.core.annotation.Java110Listener; import com.java110.core.context.DataFlowContext; import com.java110.entity.center.Business; import com.java110.fee.dao.IFeeServiceDao; import com.java110.utils.util.DateUtil; import com.java110.utils.util.StringUtil; import org.slf4j.Logger; @@ -120,6 +120,18 @@ List<BusinessDto> businessDtos = orderInnerServiceSMOImpl.querySameOrderBusiness(businessDto); Assert.listOnlyOne(businessDtos, "åå¨å¤æ¡ç¼´è´¹è®°å½ææ²¡æ"); //æ¥è¯¢æ¯å¦ä¸ºéè´¹é»è¾ businessDto = new BusinessDto(); businessDto.setbId(business.getbId()); businessDto.setBusinessTypeCd("621100040001"); List<BusinessDto> returnPayFeeDtos = orderInnerServiceSMOImpl.querySameOrderBusiness(businessDto); if (returnPayFeeDtos != null && returnPayFeeDtos.size() > 0) { returnPayFee(businessFeeInfos, businessDtos, dataFlowContext, business, returnPayFeeDtos); return; } //æ¥è¯¢è´¹ç¨æç»è¿ç¨è¡¨ Map feeDetailInfo = new HashMap(); feeDetailInfo.put("bId", businessDtos.get(0).getbId()); @@ -183,8 +195,65 @@ } } } } private void returnPayFee(List<Map> businessFeeInfos, List<BusinessDto> businessDtos, DataFlowContext dataFlowContext, Business business, List<BusinessDto> returnPayFeeDtos) { //æ¥è¯¢è´¹ç¨æç»è¿ç¨è¡¨ Map feeDetailInfo = new HashMap(); feeDetailInfo.put("bId", businessDtos.get(0).getbId()); feeDetailInfo.put("operate", "ADD"); List<Map> feeDetails = feeDetailServiceDaoImpl.getBusinessFeeDetailInfo(feeDetailInfo); Assert.listOnlyOne(feeDetails, "business表ä¸åå¨å¤æ¡ç¼´è´¹è®°å½ææ²¡æ"); String cyclesStr = feeDetails.get(0).get("cycles").toString(); double cycles = Double.parseDouble(cyclesStr); Map feeMap = null; if (businessFeeInfos != null && businessFeeInfos.size() > 0) { for (int _feeIndex = 0; _feeIndex < businessFeeInfos.size(); _feeIndex++) { Map businessFeeInfo = businessFeeInfos.get(_feeIndex); //å¼å§é代ç String requestId = DistributedLock.getLockUUID(); String key = this.getClass().getSimpleName() + businessFeeInfo.get("fee_id"); try { DistributedLock.waitGetDistributedLock(key, requestId); //è¿éèèå¹¶åé®é¢ feeMap = new HashMap(); feeMap.put("feeId", businessFeeInfo.get("fee_id")); feeMap.put("communityId", businessFeeInfo.get("community_id")); feeMap.put("statusCd", "0"); List<Map> feeInfo = feeServiceDaoImpl.getFeeInfo(feeMap); Assert.listOnlyOne(feeInfo, "æ¥è¯¢å°å¤æ¡æ°æ®ææªæ¥è¯¢å°æ°æ®" + feeMap); //æ ¹æ®å½åçç»ææ¶é´ ä¿®æ¹ Date endTime = (Date) feeInfo.get(0).get("end_time"); Calendar endCalender = Calendar.getInstance(); endCalender.setTime(endTime); if (StringUtil.isNumber(cyclesStr)) { endCalender.add(Calendar.MONTH, new Double(cycles).intValue()); } else { int hours = new Double(cycles * DateUtil.getCurrentMonthDay() * 24).intValue(); endCalender.add(Calendar.HOUR, hours); } businessFeeInfo.put("end_time", endCalender.getTime()); // 䏿¬¡æ§æ¶è´¹ç±»åï¼ç¼´è´¹åï¼å设置费ç¨ç¶æä¸ºæ¶è´¹ç»æãè®¾ç½®ç»ææ¥æä¸ºè´¹ç¨é¡¹ç»æ¢æ¥æ if (FeeFlagTypeConstant.ONETIME.equals(feeInfo.get(0).get("feeFlag"))) { //æ¼éçè¯è´¹ç¨ç´æ¥ç»æ businessFeeInfo.put("state", "888800010006".equals(feeInfo.get(0).get("feeTypeCd")) ? FeeStateConstant.END : FeeStateConstant.CHARGING); businessFeeInfo.put("end_time", feeInfo.get(0).get("startTime")); } flushBusinessFeeInfo(businessFeeInfo, StatusConstant.STATUS_CD_VALID); feeServiceDaoImpl.updateFeeInfoInstance(businessFeeInfo); if (businessFeeInfo.size() == 1) { dataFlowContext.addParamOut("feeId", businessFeeInfo.get("fee_id")); } } finally { DistributedLock.releaseDistributedLock(requestId, key); } } } } /** service-fee/src/main/java/com/java110/fee/smo/impl/FeeInnerServiceSMOImpl.java
@@ -14,6 +14,7 @@ import com.java110.po.fee.PayFeePo; import com.java110.utils.util.BeanConvertUtil; import com.java110.utils.util.DateUtil; import com.java110.utils.util.StringUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; @@ -92,6 +93,12 @@ BeanConvertUtil.covertBean(user, fee); } } if (!StringUtil.isEmpty(fee.getImportFeeName())) { //fee.setFeeName(fee.getImportFeeName() + "(" + fee.getFeeName() + ")"); fee.setFeeName(fee.getImportFeeName()); } } /** @@ -104,6 +111,7 @@ List<String> userIds = new ArrayList<String>(); for (FeeDto fee : fees) { userIds.add(fee.getUserId()); } return userIds.toArray(new String[userIds.size()]); @@ -163,6 +171,44 @@ } @Override public int computeBillOweFeeCount(@RequestBody FeeDto feeDto) { return feeServiceDaoImpl.computeBillOweFeeCount(BeanConvertUtil.beanCovertMap(feeDto)); } @Override public List<FeeDto> computeBillOweFee(@RequestBody FeeDto feeDto) { int page = feeDto.getPage(); if (page != PageDto.DEFAULT_PAGE) { feeDto.setPage((page - 1) * feeDto.getRow()); } List<FeeDto> fees = BeanConvertUtil.covertBeanList(feeServiceDaoImpl.computeBillOweFee(BeanConvertUtil.beanCovertMap(feeDto)), FeeDto.class); return fees; } @Override public List<FeeDto> computeEveryOweFee(FeeDto feeDto) { int page = feeDto.getPage(); if (page != PageDto.DEFAULT_PAGE) { feeDto.setPage((page - 1) * feeDto.getRow()); } List<FeeDto> fees = BeanConvertUtil.covertBeanList(feeServiceDaoImpl.computeEveryOweFee(BeanConvertUtil.beanCovertMap(feeDto)), FeeDto.class); return fees; } @Override public int computeEveryOweFeeCount(FeeDto feeDto) { return feeServiceDaoImpl.computeEveryOweFeeCount(BeanConvertUtil.beanCovertMap(feeDto)); } @Override public int queryBillOweFeeCount(@RequestBody BillOweFeeDto billDto) { service-front/src/main/java/com/java110/front/controller/mina/WxLoginController.java
@@ -72,7 +72,7 @@ String photoInfo = WechatFactory.getPhoneNumberBeanS5(postObj.getString("decryptData"), postObj.getString("key"), postObj.getString("iv")); JSONObject photoObj = JSONObject.parseObject(photoInfo); CommonCache.setValue(postObj.getString("key"), photoObj.toJSONString(), CommonCache.defaultExpireTime); CommonCache.setValue(postObj.getString("key"), photoObj.getString("phoneNumber"), CommonCache.defaultExpireTime); return ResultVo.createResponseEntity(photoObj); } service-front/src/main/java/com/java110/front/smo/impl/PrivilegeServiceSMOImpl.java
@@ -2,11 +2,12 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.java110.core.component.BaseComponentSMO; import com.java110.core.context.IPageData; import com.java110.front.smo.IPrivilegeServiceSMO; import com.java110.utils.constant.ServiceConstant; import com.java110.utils.util.Assert; import com.java110.core.context.IPageData; import com.java110.core.component.BaseComponentSMO; import com.java110.front.smo.IPrivilegeServiceSMO; import com.java110.utils.util.StringUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpMethod; import org.springframework.http.HttpStatus; @@ -223,10 +224,34 @@ return privileges; } JSONObject resultObj = JSONObject.parseObject(privileges.getBody().toString()); JSONArray privilegeArrays = resultObj.getJSONArray("privileges"); JSONObject privilegeObj = null; return new ResponseEntity<String>(resultObj.getJSONArray("privileges").toJSONString(), HttpStatus.OK); JSONArray tmpPrivilegeArrays = new JSONArray(); for (int privilegeIndex = 0; privilegeIndex < privilegeArrays.size(); privilegeIndex++) { privilegeObj = privilegeArrays.getJSONObject(privilegeIndex); hasSameData(privilegeObj, tmpPrivilegeArrays); } return new ResponseEntity<String>(tmpPrivilegeArrays.toJSONString(), HttpStatus.OK); } private void hasSameData(JSONObject privilegeObj, JSONArray tmpPrivilegeArrays) { JSONObject tmpPrivilegeObj = null; for (int tmpPrivilegeIndex = 0; tmpPrivilegeIndex < tmpPrivilegeArrays.size(); tmpPrivilegeIndex++) { tmpPrivilegeObj = tmpPrivilegeArrays.getJSONObject(tmpPrivilegeIndex); if (privilegeObj.getString("pId").equals(tmpPrivilegeObj.getString("pId"))) { if (!StringUtil.isEmpty(privilegeObj.getString("pgId"))) { tmpPrivilegeArrays.remove(tmpPrivilegeIndex); tmpPrivilegeArrays.add(privilegeObj); } return; } } tmpPrivilegeArrays.add(privilegeObj); } @Override