springcloud_k8s_panzhihuazhihuishequ/.idea/workspace.xml
@@ -23,10 +23,54 @@ </component> <component name="ChangeListManager"> <list default="true" id="8ba27629-3e5d-4f42-993e-d0c055bc9371" name="Default Changelist" comment=""> <change afterPath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/model/vos/user/CommunityUserInfoVO.java" afterDir="false" /> <change afterPath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/utlis/FileUtil.java" afterDir="false" /> <change afterPath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/utlis/IdCard.java" afterDir="false" /> <change afterPath="$PROJECT_DIR$/community_backstage/src/main/java/com/panzhihua/community_backstage/excel/CustomSheetWriteHandler.java" afterDir="false" /> <change afterPath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/dao/SysUserInputDAO.java" afterDir="false" /> <change afterPath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/model/dos/SysUserInputDO.java" afterDir="false" /> <change afterPath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/service/SysUserInputService.java" afterDir="false" /> <change afterPath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/service/impl/SysUserInputServiceImpl.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/applets/src/main/java/com/panzhihua/applets/api/LoginApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/applets/src/main/java/com/panzhihua/applets/api/LoginApi.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/applets/src/main/resources/logback-spring.xml" beforeDir="false" afterPath="$PROJECT_DIR$/applets/src/main/resources/logback-spring.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/applets_backstage/src/main/resources/logback-spring.xml" beforeDir="false" afterPath="$PROJECT_DIR$/applets_backstage/src/main/resources/logback-spring.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/auth/src/main/resources/logback-spring.xml" beforeDir="false" afterPath="$PROJECT_DIR$/auth/src/main/resources/logback-spring.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/exceptions/GlobalExceptionCapture.java" beforeDir="false" afterPath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/exceptions/GlobalExceptionCapture.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/model/dtos/user/EexcelUserDTO.java" beforeDir="false" afterPath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/model/dtos/user/EexcelUserDTO.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/model/vos/LoginUserInfoVO.java" beforeDir="false" afterPath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/model/vos/LoginUserInfoVO.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngStructAreaVO.java" beforeDir="false" afterPath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngStructAreaVO.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java" beforeDir="false" afterPath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/service/user/UserService.java" beforeDir="false" afterPath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/service/user/UserService.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/utlis/SFTPUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/common/src/main/java/com/panzhihua/common/utlis/SFTPUtil.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/exceptions/GlobalExceptionCapture.class" beforeDir="false" afterPath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/exceptions/GlobalExceptionCapture.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/model/dtos/user/EexcelUserDTO.class" beforeDir="false" afterPath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/model/dtos/user/EexcelUserDTO.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/model/vos/LoginUserInfoVO.class" beforeDir="false" afterPath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/model/vos/LoginUserInfoVO.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/model/vos/community/ComMngStructAreaVO.class" beforeDir="false" afterPath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/model/vos/community/ComMngStructAreaVO.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/service/community/CommunityService.class" beforeDir="false" afterPath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/service/community/CommunityService.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/service/user/UserService.class" beforeDir="false" afterPath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/service/user/UserService.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/community_backstage/src/main/java/com/panzhihua/community_backstage/api/SystemManagementApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/community_backstage/src/main/java/com/panzhihua/community_backstage/api/SystemManagementApi.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/utlis/SFTPUtil.class" beforeDir="false" afterPath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/utlis/SFTPUtil.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityManagerApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityManagerApi.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/community_backstage/src/main/java/com/panzhihua/community_backstage/easyexcel/UploadEexcelUserDTOListener.java" beforeDir="false" afterPath="$PROJECT_DIR$/community_backstage/src/main/java/com/panzhihua/community_backstage/easyexcel/UploadEexcelUserDTOListener.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/community_backstage/src/main/resources/logback-spring.xml" beforeDir="false" afterPath="$PROJECT_DIR$/community_backstage/src/main/resources/logback-spring.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngStructAreaDAO.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngStructAreaDAO.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngStructHouseUserDAO.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngStructHouseUserDAO.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/service/ComActActivityService.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/service/ComActActivityService.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/service/ComMngStructAreaService.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/service/ComMngStructAreaService.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructAreaServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructAreaServiceImpl.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructHouseServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructHouseServiceImpl.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_community/src/main/resources/logback-spring.xml" beforeDir="false" afterPath="$PROJECT_DIR$/service_community/src/main/resources/logback-spring.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_partybuilding/src/main/resources/logback-spring.xml" beforeDir="false" afterPath="$PROJECT_DIR$/service_partybuilding/src/main/resources/logback-spring.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/api/UserApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/api/UserApi.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/service/UserService.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/service/UserService.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/service_user/src/main/resources/logback-spring.xml" beforeDir="false" afterPath="$PROJECT_DIR$/service_user/src/main/resources/logback-spring.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java" beforeDir="false" afterPath="$PROJECT_DIR$/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/zuul/src/main/java/com/panzhihua/zuul/filters/SercuritFilter.java" beforeDir="false" afterPath="$PROJECT_DIR$/zuul/src/main/java/com/panzhihua/zuul/filters/SercuritFilter.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/zuul/src/main/resources/logback-spring.xml" beforeDir="false" afterPath="$PROJECT_DIR$/zuul/src/main/resources/logback-spring.xml" afterDir="false" /> </list> <option name="SHOW_DIALOG" value="false" /> <option name="HIGHLIGHT_CONFLICTS" value="true" /> @@ -39,8 +83,8 @@ <component name="FileTemplateManagerImpl"> <option name="RECENT_TEMPLATES"> <list> <option value="Interface" /> <option value="Kotlin File" /> <option value="Interface" /> <option value="Class" /> </list> </option> @@ -93,11 +137,11 @@ </component> <component name="RecentsManager"> <key name="CopyClassDialog.RECENTS_KEY"> <recent name="com.panzhihua.community_backstage.excel" /> <recent name="com.panzhihua.common.utlis" /> <recent name="com.panzhihua.applets.api" /> <recent name="com.panzhihua.timejob.config" /> <recent name="com.panzhihua.common.model.dtos.community" /> <recent name="com.panzhihua.common.exceptions" /> <recent name="com.panzhihua.common.model.vos" /> </key> <key name="CopyFile.RECENT_KEYS"> <recent name="F:\nahan\panzhihua_zhihuishequ\zhihuishequ\springcloud_k8s_panzhihuazhihuishequ\deploy-file" /> @@ -114,7 +158,7 @@ </set> </option> </component> <component name="RunManager" selected="Application.UserServiceImpl"> <component name="RunManager" selected="Application.IdCard"> <configuration name="ComActActivityServiceImpl" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true"> <option name="MAIN_CLASS_NAME" value="com.panzhihua.service_community.service.impl.ComActActivityServiceImpl" /> <module name="service_community" /> @@ -128,12 +172,12 @@ <option name="Make" enabled="true" /> </method> </configuration> <configuration name="ComBpActivityServiceImpl" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true"> <option name="MAIN_CLASS_NAME" value="com.panzhihua.service_dangjian.service.impl.ComBpActivityServiceImpl" /> <module name="service_partybuilding" /> <configuration name="IdCard" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true"> <option name="MAIN_CLASS_NAME" value="com.panzhihua.common.utlis.IdCard" /> <module name="common" /> <extension name="coverage"> <pattern> <option name="PATTERN" value="com.panzhihua.service_dangjian.service.impl.*" /> <option name="PATTERN" value="com.panzhihua.common.utlis.*" /> <option name="ENABLED" value="true" /> </pattern> </extension> @@ -180,13 +224,15 @@ <option name="Make" enabled="true" /> </method> </configuration> <configuration default="true" type="ArquillianJUnit" factoryName="" nameIsGenerated="true"> <configuration default="true" type="ArquillianTestNG" factoryName="" nameIsGenerated="true"> <option name="arquillianRunConfiguration"> <value> <option name="containerStateName" value="" /> </value> </option> <option name="TEST_OBJECT" value="class" /> <option name="TEST_OBJECT" value="CLASS" /> <properties /> <listeners /> <method v="2"> <option name="Make" enabled="true" /> </method> @@ -270,10 +316,11 @@ </configuration> <list> <item itemvalue="Application.UserServiceImpl" /> <item itemvalue="Application.ComBpActivityServiceImpl" /> <item itemvalue="Application.RichTextUtil" /> <item itemvalue="Application.PartyBuildingApi" /> <item itemvalue="Application.ComActActivityServiceImpl" /> <item itemvalue="Application.IdCard" /> <item itemvalue="Spring Boot.ServiceUserApplication" /> <item itemvalue="Spring Boot.AppletsApplication" /> <item itemvalue="Spring Boot.CommunityBackstageApplication" /> <item itemvalue="Spring Boot.AppletsBackstageApplication" /> @@ -281,18 +328,17 @@ <item itemvalue="Spring Boot.ConfigServerApplication" /> <item itemvalue="Spring Boot.EurekaServerApplication" /> <item itemvalue="Spring Boot.ServiceDangjianApplication" /> <item itemvalue="Spring Boot.ServiceUserApplication" /> <item itemvalue="Spring Boot.ZuulApplication" /> <item itemvalue="Spring Boot.ServiceCommunityApplication" /> <item itemvalue="Spring Boot.TimejobApplication" /> </list> <recent_temporary> <list> <item itemvalue="Application.IdCard" /> <item itemvalue="Application.UserServiceImpl" /> <item itemvalue="Application.ComActActivityServiceImpl" /> <item itemvalue="Application.PartyBuildingApi" /> <item itemvalue="Application.RichTextUtil" /> <item itemvalue="Application.ComBpActivityServiceImpl" /> </list> </recent_temporary> </component> @@ -418,7 +464,21 @@ <workItem from="1612406442748" duration="9358000" /> <workItem from="1612486797044" duration="146000" /> <workItem from="1612487068003" duration="7000" /> <workItem from="1612487277561" duration="4832000" /> <workItem from="1612487277561" duration="7568000" /> <workItem from="1612516875693" duration="48000" /> <workItem from="1612517019106" duration="19698000" /> <workItem from="1612785575000" duration="280000" /> <workItem from="1612785946464" duration="5000" /> <workItem from="1612786468574" duration="389000" /> <workItem from="1612786889245" duration="295000" /> <workItem from="1613220125395" duration="7000" /> <workItem from="1613220321791" duration="98000" /> <workItem from="1613365893297" duration="274000" /> <workItem from="1613366175434" duration="612000" /> <workItem from="1613609849178" duration="13230000" /> <workItem from="1613633203630" duration="14394000" /> <workItem from="1613714097966" duration="14584000" /> <workItem from="1613782093187" duration="3257000" /> </task> <servers /> </component> @@ -438,18 +498,18 @@ <option name="oldMeFiltersMigrated" value="true" /> </component> <component name="WindowStateProjectService"> <state x="249" y="0" key="#Project_Structure" timestamp="1608546608273"> <state x="249" y="0" key="#Project_Structure" timestamp="1613697422556"> <screen x="0" y="0" width="1536" height="824" /> </state> <state x="249" y="0" key="#Project_Structure/0.0.1536.824@0.0.1536.824" timestamp="1608546608273" /> <state x="249" y="0" key="#Project_Structure/0.0.1536.824@0.0.1536.824" timestamp="1613697422556" /> <state x="464" y="213" key="#com.intellij.fileTypes.FileTypeChooser" timestamp="1612177264050"> <screen x="0" y="0" width="1536" height="824" /> </state> <state x="464" y="213" key="#com.intellij.fileTypes.FileTypeChooser/0.0.1536.824@0.0.1536.824" timestamp="1612177264050" /> <state x="574" y="118" key="#com.intellij.ide.util.MemberChooser" timestamp="1612431598505"> <state x="574" y="118" key="#com.intellij.ide.util.MemberChooser" timestamp="1613725347160"> <screen x="0" y="0" width="1536" height="824" /> </state> <state x="574" y="118" key="#com.intellij.ide.util.MemberChooser/0.0.1536.824@0.0.1536.824" timestamp="1612431598505" /> <state x="574" y="118" key="#com.intellij.ide.util.MemberChooser/0.0.1536.824@0.0.1536.824" timestamp="1613725347160" /> <state x="405" y="335" key="#com.intellij.refactoring.move.MoveHandler.SelectRefactoringDialog" timestamp="1606099594079"> <screen x="0" y="0" width="1536" height="824" /> </state> @@ -462,14 +522,14 @@ <screen x="0" y="0" width="1536" height="824" /> </state> <state x="0" y="0" key="#com.intellij.refactoring.rename.AutomaticRenamingDialog/0.0.1536.824@0.0.1536.824" timestamp="1611214700095" /> <state x="499" y="159" key="#com.intellij.refactoring.safeDelete.UnsafeUsagesDialog" timestamp="1612314058774"> <state x="499" y="159" key="#com.intellij.refactoring.safeDelete.UnsafeUsagesDialog" timestamp="1613713199165"> <screen x="0" y="0" width="1536" height="824" /> </state> <state x="499" y="159" key="#com.intellij.refactoring.safeDelete.UnsafeUsagesDialog/0.0.1536.824@0.0.1536.824" timestamp="1612314058774" /> <state width="562" height="466" key="DebuggerActiveHint" timestamp="1611891031616"> <state x="499" y="159" key="#com.intellij.refactoring.safeDelete.UnsafeUsagesDialog/0.0.1536.824@0.0.1536.824" timestamp="1613713199165" /> <state width="562" height="466" key="DebuggerActiveHint" timestamp="1613728742869"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="562" height="466" key="DebuggerActiveHint/0.0.1536.824@0.0.1536.824" timestamp="1611891031616" /> <state width="562" height="466" key="DebuggerActiveHint/0.0.1536.824@0.0.1536.824" timestamp="1613728742869" /> <state x="93" y="93" width="1350" height="638" key="DiffContextDialog" timestamp="1612321934878"> <screen x="0" y="0" width="1536" height="824" /> </state> @@ -478,58 +538,58 @@ <screen x="0" y="0" width="1536" height="824" /> </state> <state x="549" y="167" key="FileChooserDialogImpl/0.0.1536.824@0.0.1536.824" timestamp="1612426172959" /> <state width="1031" height="634" key="GridCell.Tab.0.bottom" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.0.bottom" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.0.bottom/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state width="1031" height="634" key="GridCell.Tab.0.center" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.0.bottom/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state width="1031" height="320" key="GridCell.Tab.0.center" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.0.center/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state width="1031" height="634" key="GridCell.Tab.0.left" timestamp="1612511424855"> <state width="1031" height="320" key="GridCell.Tab.0.center/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state width="1031" height="320" key="GridCell.Tab.0.left" timestamp="1613785266854"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.0.left/0.0.1536.824@0.0.1536.824" timestamp="1612511424855" /> <state width="1031" height="634" key="GridCell.Tab.0.right" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.0.left/0.0.1536.824@0.0.1536.824" timestamp="1613785266854" /> <state width="1031" height="320" key="GridCell.Tab.0.right" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.0.right/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state width="1031" height="634" key="GridCell.Tab.1.bottom" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.0.right/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state width="1031" height="320" key="GridCell.Tab.1.bottom" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.1.bottom/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state width="1031" height="634" key="GridCell.Tab.1.center" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.1.bottom/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state width="1031" height="320" key="GridCell.Tab.1.center" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.1.center/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state width="1031" height="634" key="GridCell.Tab.1.left" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.1.center/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state width="1031" height="320" key="GridCell.Tab.1.left" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.1.left/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state width="1031" height="634" key="GridCell.Tab.1.right" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.1.left/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state width="1031" height="320" key="GridCell.Tab.1.right" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.1.right/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state width="1031" height="634" key="GridCell.Tab.2.bottom" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.1.right/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state width="1031" height="320" key="GridCell.Tab.2.bottom" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.2.bottom/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state width="1031" height="634" key="GridCell.Tab.2.center" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.2.bottom/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state width="1031" height="320" key="GridCell.Tab.2.center" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.2.center/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state width="1031" height="634" key="GridCell.Tab.2.left" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.2.center/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state width="1031" height="320" key="GridCell.Tab.2.left" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.2.left/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state width="1031" height="634" key="GridCell.Tab.2.right" timestamp="1612511424856"> <state width="1031" height="320" key="GridCell.Tab.2.left/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state width="1031" height="320" key="GridCell.Tab.2.right" timestamp="1613785266855"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="1031" height="634" key="GridCell.Tab.2.right/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" /> <state x="299" y="67" key="Maven.ArtifactSearchDialog" timestamp="1610611848124"> <state width="1031" height="320" key="GridCell.Tab.2.right/0.0.1536.824@0.0.1536.824" timestamp="1613785266855" /> <state x="299" y="67" key="Maven.ArtifactSearchDialog" timestamp="1612603382513"> <screen x="0" y="0" width="1536" height="824" /> </state> <state x="299" y="67" key="Maven.ArtifactSearchDialog/0.0.1536.824@0.0.1536.824" timestamp="1610611848124" /> <state x="299" y="67" key="Maven.ArtifactSearchDialog/0.0.1536.824@0.0.1536.824" timestamp="1612603382513" /> <state x="349" y="252" key="MavenRunHelper.GoalEditor" timestamp="1611284568987"> <screen x="0" y="0" width="1536" height="824" /> </state> @@ -538,10 +598,10 @@ <screen x="0" y="0" width="1536" height="824" /> </state> <state x="270" y="57" key="SettingsEditor/0.0.1536.824@0.0.1536.824" timestamp="1606120706449" /> <state width="498" height="540" key="SwitcherDM" timestamp="1612431298209"> <state width="498" height="540" key="SwitcherDM" timestamp="1612596268481"> <screen x="0" y="0" width="1536" height="824" /> </state> <state width="498" height="540" key="SwitcherDM/0.0.1536.824@0.0.1536.824" timestamp="1612431298209" /> <state width="498" height="540" key="SwitcherDM/0.0.1536.824@0.0.1536.824" timestamp="1612596268481" /> <state x="93" y="93" width="1350" height="638" key="com.intellij.history.integration.ui.views.DirectoryHistoryDialog" timestamp="1612321934878"> <screen x="0" y="0" width="1536" height="824" /> </state> @@ -554,10 +614,10 @@ <screen x="0" y="0" width="1536" height="824" /> </state> <state x="93" y="93" width="1350" height="638" key="com.intellij.history.integration.ui.views.SelectionHistoryDialog/0.0.1536.824@0.0.1536.824" timestamp="1611623127978" /> <state x="233" y="42" width="921" height="782" key="find.popup" timestamp="1612421414933"> <state x="233" y="42" width="921" height="782" key="find.popup" timestamp="1613785366330"> <screen x="0" y="0" width="1536" height="824" /> </state> <state x="233" y="42" width="921" height="782" key="find.popup/0.0.1536.824@0.0.1536.824" timestamp="1612421414933" /> <state x="233" y="42" width="921" height="782" key="find.popup/0.0.1536.824@0.0.1536.824" timestamp="1613785366330" /> <state width="600" height="428" key="javadoc.popup" timestamp="1610005781618"> <screen x="0" y="0" width="1536" height="824" /> </state> @@ -566,20 +626,29 @@ <screen x="0" y="0" width="1536" height="824" /> </state> <state x="131" y="82" key="new project wizard/0.0.1536.824@0.0.1536.824" timestamp="1610606891357" /> <state x="545" y="169" key="refactoring.ChangeSignatureDialog" timestamp="1611462424079"> <state x="545" y="169" key="refactoring.ChangeSignatureDialog" timestamp="1612596211909"> <screen x="0" y="0" width="1536" height="824" /> </state> <state x="545" y="169" key="refactoring.ChangeSignatureDialog/0.0.1536.824@0.0.1536.824" timestamp="1611462424079" /> <state x="545" y="169" key="refactoring.ChangeSignatureDialog/0.0.1536.824@0.0.1536.824" timestamp="1612596211909" /> <state x="425" y="187" key="run.anything.popup" timestamp="1611565231827"> <screen x="0" y="0" width="1536" height="824" /> </state> <state x="425" y="187" key="run.anything.popup/0.0.1536.824@0.0.1536.824" timestamp="1611565231827" /> <state x="431" y="145" width="672" height="678" key="search.everywhere.popup" timestamp="1611221223000"> <state x="431" y="145" width="672" height="678" key="search.everywhere.popup" timestamp="1613705386044"> <screen x="0" y="0" width="1536" height="824" /> </state> <state x="431" y="145" width="672" height="678" key="search.everywhere.popup/0.0.1536.824@0.0.1536.824" timestamp="1611221223000" /> <state x="431" y="145" width="672" height="678" key="search.everywhere.popup/0.0.1536.824@0.0.1536.824" timestamp="1613705386044" /> </component> <component name="XDebuggerManager"> <breakpoint-manager> <breakpoints> <line-breakpoint enabled="true" type="java-line"> <url>file://$PROJECT_DIR$/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java</url> <line>79</line> <option name="timeStamp" value="11" /> </line-breakpoint> </breakpoints> </breakpoint-manager> <pin-to-top-manager> <pinned-members> <PinnedItemInfo parentTag="com.panzhihua.common.model.vos.R" memberName="data" /> springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/LoginApi.java
@@ -55,6 +55,7 @@ if (ObjectUtils.isEmpty(code)) { return R.fail("缺少登录参数"); } log.info(code); WxMaService maService = wxMaConfiguration.getMaService(); WxMaJscode2SessionResult sessionInfo=null; try { springcloud_k8s_panzhihuazhihuishequ/applets/src/main/resources/logback-spring.xml
@@ -7,6 +7,7 @@ <springProfile name="test"> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> </springProfile> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/resources/logback-spring.xml
@@ -7,6 +7,7 @@ <springProfile name="test"> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> </springProfile> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> springcloud_k8s_panzhihuazhihuishequ/auth/src/main/resources/logback-spring.xml
@@ -7,6 +7,7 @@ <springProfile name="test"> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> </springProfile> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/exceptions/GlobalExceptionCapture.java
@@ -89,11 +89,11 @@ /** * * @param ex 数据库异常 * @param ex 服务层业务异常 * @return */ @ExceptionHandler(value = ServiceException.class) public R serviceException(Exception ex) { public R serviceException(ServiceException ex) { log.error("服务层业务异常【{}】",ex.getMessage()); return R.fail(ex.getMessage()); } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/user/EexcelUserDTO.java
@@ -1,99 +1,137 @@ package com.panzhihua.common.model.dtos.user; import com.alibaba.excel.annotation.ExcelIgnore; import com.alibaba.excel.annotation.ExcelProperty; import lombok.Data; /** * @program: springcloud_k8s_panzhihuazhihuishequ * @description: 居民信息excel导入 * @author: huang.hongfa weixin hhf9596 qq 959656820 * @create: 2021-02-04 16:06 **/ @Data public class EexcelUserDTO { /** * 序号 */ private Integer order; @ExcelProperty("序号") private String order; /** * 门牌号 */ @ExcelProperty("门牌号") private String doorNumber; /** * 是否租住 */ @ExcelProperty("是否租住") private String isRent; /** * 姓名 */ @ExcelProperty("姓名") private String name; /** * 民族 */ @ExcelProperty("民族") private String nation; /** * 政治面貌 */ @ExcelProperty("政治面貌") private String politicalOutlook; /** * 婚姻状态 */ @ExcelProperty("婚姻状态") private String maritalStatus; /** * 联系方式 */ @ExcelProperty("联系方式") private String phone; /** * 文化程度 */ @ExcelProperty("文化程度") private String education; /** * 身份证 */ @ExcelProperty("身份证") private String idCard; /** * 工作单位(学校) */ @ExcelProperty("工作单位(学校)") private String company; /** * 户口所在地 */ @ExcelProperty("户口所在地") private String residence; /** * 目前是否在攀枝花 */ @ExcelProperty("目前是否在攀枝花") private String isPanZhiHua; /** * 近一个月离(返)攀情况 */ @ExcelProperty("近一个月离(返)攀情况") private String situation; /** * 是否有与疑似或确诊病例密切接触史 */ @ExcelProperty("是否有与疑似或确诊病例密切接触史") private String isContact; /** * 特殊情况(重大过往病史或者孕妇) */ @ExcelProperty("特殊情况(重大过往病史或者孕妇") private String major; /** * 退役军人 */ @ExcelProperty("退役军人") private String soldier; /** * 残疾人 */ @ExcelProperty("残疾人") private String disability; /** * 低保户 */ @ExcelProperty("低保户") private String lowIncomeHouseholds; /** * 低收入人员 */ @ExcelProperty("低收入人员") private String lowIncomePeople; /** * 高龄老人 */ @ExcelProperty("高龄老人") private String oldPeople; /** *特服家庭 */ @ExcelProperty("特服家庭") private String specialServiceFamily; /** *重点人员 */ @ExcelProperty("重点人员") private String keyPersonnel; /** * 房屋编码 */ @ExcelIgnore private String houseCode; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/LoginUserInfoVO.java
@@ -9,6 +9,7 @@ import com.panzhihua.common.validated.PutGroup; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import io.swagger.models.auth.In; import lombok.Data; import javax.validation.constraints.Min; @@ -150,6 +151,17 @@ private Integer volunteerStatus; @ApiModelProperty("是否注册 0 否 1 是") private Integer isRegister; @ApiModelProperty("年龄") private Integer age; @ApiModelProperty("政治面貌:1 - 党员;2 - 团员;3 - 群众") private Integer politicalOutlook; springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComMngStructAreaVO.java
@@ -56,4 +56,7 @@ @ApiModelProperty("是否累加门牌号 0 否 1 是") private Integer isAccumulation; @ApiModelProperty("小区门牌号导入规则") private String doorNum; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/user/CommunityUserInfoVO.java
@@ -1,11 +1,95 @@ package com.panzhihua.common.model.vos.user;/** package com.panzhihua.common.model.vos.user; import com.fasterxml.jackson.annotation.JsonFormat; import com.panzhihua.common.model.vos.community.ComMngStructHouseVO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; import java.util.List; /** * @program: springcloud_k8s_panzhihuazhihuishequ * * @description: 社区人员详情 * * @author: huang.hongfa weixin hhf9596 qq 959656820 * * @create: 2021-02-18 09:43 **/ @Data @ApiModel("社区人员详情") public class CommunityUserInfoVO { @ApiModelProperty("真实名字") private String name; @ApiModelProperty("性别 1 男 2 女") private Integer sex; @ApiModelProperty("民族") private String nation; @ApiModelProperty("手机号") private String phone; @ApiModelProperty("0 未婚 1 已婚") private Integer maritalStatus; @ApiModelProperty("身份证号") private String idCard; @ApiModelProperty("工作单位(学校)") private String company; @ApiModelProperty("user_id") private Long userId; @ApiModelProperty("年龄") private Integer age; @ApiModelProperty("生日") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") private Date birthday; @ApiModelProperty("户口所在地") private String residence; @ApiModelProperty("政治面貌:1 - 党员;2 - 团员;3 - 群众") private Integer politicalOutlook; @ApiModelProperty("文化程度") private String education; @ApiModelProperty("专享政策") private String tags; @ApiModelProperty("创建时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createAt; @ApiModelProperty("是否志愿者 0否 1 是") private Integer isVolunteer; @ApiModelProperty("志愿者申请时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date volunteerCreateAt; @ApiModelProperty("家庭成员") private List<ComMngFamilyInfoVO> comMngFamilyInfoVOS; @ApiModelProperty("房屋信息") private List<ComMngStructHouseVO> comMngStructHouseVOS; @ApiModelProperty("目前是否在攀枝花 0 否 1 是") private Integer isPanzhiHua; @ApiModelProperty("是否有与疑似或确诊病例密切接触史 0 否 1 是") private Integer isContact; @ApiModelProperty("近一个月离(返)攀情况") private String situation; } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -848,4 +848,21 @@ */ @PostMapping("indexdatacommunitybackstageechart") R indexDataCommunityBackstageEchart(@RequestParam("communityId")Long communityId); /** * 选择导入的小区 * @param param 小区名字 模糊查询 * @param communityId 社区id * @return 小区集合 ComMngStructAreaVO */ @PostMapping("listareas") R listAreas(@RequestParam("param")String param, @RequestParam("communityId")Long communityId); /** * 检查小区是否已经批量设置过房屋并且返回小区房屋门号规则 * @param id 小区id * @return ComMngStructAreaVO */ @PostMapping("checkAreaHouse") R checkAreaHouse(@RequestParam("id")Long id); } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/user/UserService.java
@@ -505,8 +505,25 @@ /** * 批量导入居民用户 * @param list 居民用户集合 * @return * @param areaName 小区名字 * @return 导入结果 */ @PostMapping("batchsaveuser") R batchSaveUser(@RequestBody List<EexcelUserDTO> list); R batchSaveUser(@RequestBody List<EexcelUserDTO> list, @RequestParam("areaName")StringBuffer areaName); /** * 校验小区是否存在 * @param areaName 小区名字 * @return 校验结果 */ @PostMapping("checkaereaname") R checkAereaName(@RequestParam("areaName")String areaName); /** * 社区人员详情包括导入人员 * @param userId 人员id * @return CommunityUserInfoVO */ @PostMapping("detailusercomunity") R detailUserComunity(@RequestParam("userId")Long userId); } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/FileUtil.java
@@ -1,9 +1,9 @@ package com.alibaba.easyexcel.test.util; package com.panzhihua.common.utlis; import java.io.File; import java.io.InputStream; public class TestFileUtil { public class FileUtil { public static InputStream getResourcesFileInputStream(String fileName) { @@ -11,7 +11,7 @@ } public static String getPath() { return TestFileUtil.class.getResource("/").getPath(); return FileUtil.class.getResource("/").getPath(); } public static File createNewFile(String pathName) { springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/IdCard.java
@@ -1,11 +1,64 @@ package com.panzhihua.common.utlis;/** package com.panzhihua.common.utlis; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /** * @program: springcloud_k8s_panzhihuazhihuishequ * * @description: 年龄 * * @author: huang.hongfa weixin hhf9596 qq 959656820 * * @create: 2021-02-06 17:27 **/ public class IdCard { public static int IdNOToAge(String IdNO){ int leh = IdNO.length(); String dates=""; int age = 0; if (leh == 18) { dates = IdNO.substring(6, 10); SimpleDateFormat df = new SimpleDateFormat("yyyy"); String year = df.format(new Date()); age = Integer.parseInt(year)-Integer.parseInt(dates); }else { System.out.println("出错!身份证长度不是18位!"); } return age; } public static Date birthDay(String Id){ /*从身份证截取生日信息 * author:huangjy 2016-07-15 Date转换成String,只需将parse方法换成format方法 * */ String year = Id.substring(6, 10);//调用substring方法返回相关字段,注意索引从0开始 String month =Id.substring(10, 12); String day = Id.substring(12, 14); String birthday = year + "-" + month + "-" + day; DateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");//定义一个时间转换格式“年-月-日” Date date = null; try { //捕获类型转换(解析)异常 date = fmt.parse(birthday); } catch (ParseException e) { e.printStackTrace(); } return date; } public static Integer sex(String id ){ Integer sex; if (Integer.parseInt(id.substring(16).substring(0, 1)) % 2 == 0) {// 判断性别 sex = 2; } else { sex = 1; } return sex; } public static void main(String[] args) { System.out.println(birthDay("120000197802150561")); System.out.println(birthDay("32000019951110538X")); } } springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/SFTPUtil.java
@@ -309,6 +309,27 @@ return sftp.ls(directory); } /** * 判断文件或者目录是否存在 * @param path 目录或者文件的路径 * @return 存在结果 */ public boolean isExistDir(String path){ boolean isExist=false; try { SftpATTRS sftpATTRS = sftp.lstat(path); isExist = true; return sftpATTRS.isDir(); } catch (Exception e) { if (e.getMessage().toLowerCase().equals("no such file")) { isExist = false; } } return isExist; } public static void main(String[] args) throws SftpException, IOException { SFTPUtil sftp = new SFTPUtil("root", "evanN7F2K5M6", "47.104.148.185", 22); sftp.login(); springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/exceptions/GlobalExceptionCapture.classBinary files differ
springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/model/dtos/user/EexcelUserDTO.classBinary files differ
springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/model/vos/LoginUserInfoVO.classBinary files differ
springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/model/vos/community/ComMngStructAreaVO.classBinary files differ
springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/model/vos/user/CommunityUserInfoVO.classBinary files differ
springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/service/community/CommunityService.classBinary files differ
springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/service/user/UserService.classBinary files differ
springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/utlis/FileUtil.classBinary files differ
springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/utlis/IdCard.classBinary files differ
springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/utlis/SFTPUtil.classBinary files differ
springcloud_k8s_panzhihuazhihuishequ/common/target/classes/com/panzhihua/common/utlis/蓝湖国际.xlsxBinary files differ
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityManagerApi.java
@@ -1,30 +1,47 @@ package com.panzhihua.community_backstage.api; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.enums.CellExtraTypeEnum; import com.alibaba.excel.write.metadata.WriteSheet; import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.panzhihua.common.constants.FtpConstants; import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.model.dtos.user.EexcelUserDTO; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.*; import com.panzhihua.common.model.vos.user.CommunityUserInfoVO; import com.panzhihua.common.model.vos.user.SysUserNoticeVO; import com.panzhihua.common.service.community.CommunityService; import com.panzhihua.common.service.user.UserService; import com.panzhihua.common.utlis.FileUtil; import com.panzhihua.common.utlis.SFTPUtil; import com.panzhihua.common.validated.AddGroup; import com.panzhihua.community_backstage.easyexcel.UploadEexcelUserDTOListener; import com.panzhihua.community_backstage.excel.CustomSheetWriteHandler; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.http.ResponseEntity; import org.springframework.util.ObjectUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.io.IOException; import javax.servlet.http.HttpServletResponse; import java.io.*; import java.math.BigDecimal; import java.net.URLEncoder; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.UUID; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -41,6 +58,23 @@ private UserService userService; @Resource private CommunityService communityService; @Value("${excel.userurl}") private String excelUrl; // FTP 登录用户名 @Value("${ftp.username}") private String userName; // FTP 登录密码 @Value("${ftp.password}") private String password; // FTP 服务器地址IP地址 @Value("${ftp.host}") private String host; // FTP 端口 @Value("${ftp.port}") private int port; @Value("${ftp.url}") private String url; @ApiOperation(value = "分页查询人脸采集",response = LoginUserInfoVO.class) @PutMapping("pageuserface") @@ -95,28 +129,28 @@ return userService.listTag(); } @ApiOperation(value = "人员详情",response = LoginUserInfoVO.class) @GetMapping("detailuser") @ApiImplicitParam(name ="userId",value = "人员id",required = true) public R detailUser(@RequestParam("userId")Long userId){ R r = userService.detailUser(userId); boolean ok = R.isOk(r); if (ok) { Object data = r.getData(); if (!ObjectUtils.isEmpty(data)) { LoginUserInfoVO loginUserInfoVO= JSONObject.parseObject(JSONObject.toJSONString(data),LoginUserInfoVO.class); R r1=communityService.detailHouse(userId); if (R.isOk(r1)) { Object data1 = r1.getData(); if (!ObjectUtils.isEmpty(data1)) { loginUserInfoVO.setComMngStructHouseVOS((List<ComMngStructHouseVO>)data1); r.setData(loginUserInfoVO); } } } } return r; } // @ApiOperation(value = "人员详情",response = LoginUserInfoVO.class) // @GetMapping("detailuser") // @ApiImplicitParam(name ="userId",value = "人员id",required = true) // public R detailUser(@RequestParam("userId")Long userId){ // R r = userService.detailUser(userId); // boolean ok = R.isOk(r); // if (ok) { // Object data = r.getData(); // if (!ObjectUtils.isEmpty(data)) { // LoginUserInfoVO loginUserInfoVO= JSONObject.parseObject(JSONObject.toJSONString(data),LoginUserInfoVO.class); // R r1=communityService.detailHouse(userId); // if (R.isOk(r1)) { // Object data1 = r1.getData(); // if (!ObjectUtils.isEmpty(data1)) { // loginUserInfoVO.setComMngStructHouseVOS((List<ComMngStructHouseVO>)data1); // r.setData(loginUserInfoVO); // } // } // } // } // return r; // } @ApiOperation(value = "设置标签") @PutMapping("usertag") @@ -408,9 +442,9 @@ @ApiOperation(value = "导入居民") @DeleteMapping("importuser") @PostMapping("importuser") public R importUser(MultipartFile multipartFile)throws IOException { String name = multipartFile.getName(); String name = multipartFile.getOriginalFilename(); Float size = Float.parseFloat(String.valueOf(multipartFile.getSize())) / 1024; BigDecimal b = new BigDecimal(size); size = b.setScale(2, BigDecimal.ROUND_HALF_UP).floatValue(); @@ -420,11 +454,149 @@ if (isXls) { return R.fail("请上传xls或者xlsx格式的文件"); } // EasyExcel.read(multipartFile.getInputStream(), EexcelUserDTO.class, new UploadEexcelUserDTOListener(userService)).sheet().doRead(); EasyExcel.read(multipartFile.getInputStream(), EexcelUserDTO.class, new UploadEexcelUserDTOListener(userService,name)) .extraRead(CellExtraTypeEnum.MERGE).headRowNumber(1).sheet().doRead(); return R.ok(); } @ApiOperation(value = "社区人员详情",response = CommunityUserInfoVO.class) @GetMapping("detailuser") @ApiImplicitParam(name ="userId",value = "人员id",required = true) public R detailUser(@RequestParam("userId")Long userId){ // R r = userService.detailUser(userId); R r = userService.detailUserComunity(userId); boolean ok = R.isOk(r); if (ok) { Object data = r.getData(); if (!ObjectUtils.isEmpty(data)) { LoginUserInfoVO loginUserInfoVO= JSONObject.parseObject(JSONObject.toJSONString(data),LoginUserInfoVO.class); R r1=communityService.detailHouse(userId); if (R.isOk(r1)) { Object data1 = r1.getData(); if (!ObjectUtils.isEmpty(data1)) { loginUserInfoVO.setComMngStructHouseVOS((List<ComMngStructHouseVO>)data1); r.setData(loginUserInfoVO); } } } } return r; } @ApiOperation(value = "下载模板") @GetMapping("exportuser") @ApiImplicitParam(name ="id",value = "小区id",required = true) public R exportUser(@RequestParam("id") Long id ){ // 检查小区是否已经批量设置过房屋并且返回小区房屋门号规则 R r=communityService.checkAreaHouse(id); if (R.isOk(r)) { // 生成动态模板excel通过ftp工具上传到主节点,然后返回模板下载地址 ComMngStructAreaVO comMngStructAreaVO=JSONObject.parseObject(JSONObject.toJSONString(r.getData()),ComMngStructAreaVO.class); String areaName = comMngStructAreaVO.getAreaName(); String roleFloor = comMngStructAreaVO.getRoleFloor(); String roleConnector = comMngStructAreaVO.getRoleConnector(); String roleDoor = comMngStructAreaVO.getRoleDoor(); String doorNumber="1-1-1-"+roleFloor+roleConnector+roleDoor; // String url="http://www.psciio.com/web/excel/"; String url=excelUrl; String ftpUrl="/mnt/data/web/excel/"; String name=areaName + ".xlsx"; try { SFTPUtil sftp = new SFTPUtil(userName,password,host,port); sftp.login(); boolean existDir = sftp.isExistDir(ftpUrl+name); if (!existDir) { String property = System.getProperty("user.dir"); String fileName = property + File.separator+name; // 这里 需要指定写用哪个class去写 ExcelWriter excelWriter = null; InputStream inputStream=null; try { excelWriter = EasyExcel.write(fileName, EexcelUserDTO.class).registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()).registerWriteHandler(new CustomSheetWriteHandler()).build(); WriteSheet writeSheet = EasyExcel.writerSheet("模板").build(); List<EexcelUserDTO>eexcelUserDTOS=new ArrayList<>(); EexcelUserDTO eexcelUserDTO=new EexcelUserDTO(); eexcelUserDTO.setOrder("例子(可不用删除)"); eexcelUserDTO.setDoorNumber(doorNumber); eexcelUserDTO.setIsRent("是"); eexcelUserDTO.setName("张三"); eexcelUserDTO.setNation("汉"); eexcelUserDTO.setPoliticalOutlook("群众"); eexcelUserDTO.setMaritalStatus("已婚"); eexcelUserDTO.setPhone("13545789626"); eexcelUserDTO.setEducation("高中"); eexcelUserDTO.setIdCard("342589457896122557"); eexcelUserDTO.setCompany("恰恰食品厂"); eexcelUserDTO.setResidence("攀枝花"); eexcelUserDTO.setIsPanZhiHua("是"); eexcelUserDTO.setSituation("1月27日返攀"); eexcelUserDTO.setIsContact("否"); eexcelUserDTO.setMajor("否"); eexcelUserDTO.setSoldier("否"); eexcelUserDTO.setDisability("否"); eexcelUserDTO.setLowIncomePeople("否"); eexcelUserDTO.setLowIncomeHouseholds("否"); eexcelUserDTO.setOldPeople("否"); eexcelUserDTO.setSpecialServiceFamily("否"); eexcelUserDTO.setKeyPersonnel("否"); eexcelUserDTOS.add(eexcelUserDTO); excelWriter.write(eexcelUserDTOS, writeSheet); excelWriter.finish(); File file=new File(fileName); inputStream=new FileInputStream(file); sftp.uploadMore(ftpUrl, name, inputStream); sftp.logout(); inputStream.close(); String absolutePath = file.getAbsolutePath(); boolean delete = file.delete(); log.info("删除excel【{}】结果【{}】",absolutePath,delete); } finally { // 千万别忘记finish 会帮忙关闭流 if (inputStream != null) { inputStream.close(); } if (excelWriter != null) { excelWriter.finish(); } } } return R.ok(url+areaName+".xlsx"); } catch (Exception e) { e.printStackTrace(); log.error("文件传输失败【{}】", e.getMessage()); return R.fail(); } }else{ return r; } } @ApiOperation(value = "选择导入的小区",response =ComMngStructAreaVO.class ) @GetMapping("listareas") public R listAreas(String param) { if (null==param) { param=""; } Long communityId = this.getCommunityId(); return communityService.listAreas(param,communityId); } @ApiOperation(value = "导出" ) @PostMapping("export") public R export(@RequestBody ComMngStructAreaVO comMngStructAreaVO){ Long communityId = this.getCommunityId(); comMngStructAreaVO.setCommunityId(communityId); String url=excelUrl; String uuid= UUID.randomUUID().toString().replace("-",""); String fileName=url+uuid+".xlsx"; // R r=communityService.export(comMngStructAreaVO); // if (R.isOk(r)) { // List<EexcelUserDTO>eexcelUserDTOS=JSONArray.parseArray(JSONArray.toJSONString(r.getData()),EexcelUserDTO.class); // // } return R.ok(fileName); } } springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/easyexcel/UploadEexcelUserDTOListener.java
@@ -2,13 +2,19 @@ import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.exception.ExcelDataConvertException; import com.alibaba.excel.metadata.CellExtra; import com.alibaba.fastjson.JSON; import com.panzhihua.common.exceptions.ServiceException; import com.panzhihua.common.model.dtos.user.EexcelUserDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.service.user.UserService; import lombok.extern.slf4j.Slf4j; import org.springframework.util.ObjectUtils; import java.util.ArrayList; import java.util.List; import java.util.Map; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -24,24 +30,65 @@ */ private UserService userService; // 缓存上一次跨行数据的有效数据 private EexcelUserDTO excel; private StringBuffer areaName; private String name; /** * 如果使用了spring,请使用这个构造方法。每次创建Listener的时候需要把spring管理的类传进来 * * @param userService * @param name */ public UploadEexcelUserDTOListener(UserService userService) { public UploadEexcelUserDTOListener(UserService userService, String name) { this.userService = userService; this.name=name; } /** * 每隔5条存储数据库,实际使用中可以3000条,然后清理list ,方便内存回收 */ private static final int BATCH_COUNT = 50; private static final int BATCH_COUNT = 3000; List<EexcelUserDTO> list = new ArrayList<EexcelUserDTO>(); @Override public void invoke(EexcelUserDTO eexcelUserDTO, AnalysisContext analysisContext) { String order = eexcelUserDTO.getOrder(); String isRent = eexcelUserDTO.getIsRent(); String doorNumber = eexcelUserDTO.getDoorNumber(); String name = eexcelUserDTO.getName(); if (ObjectUtils.isEmpty(name)) { return; }else{ if (name.equals("张三")) { return; } } if (ObjectUtils.isEmpty(order)) { order=excel.getOrder(); } if (ObjectUtils.isEmpty(doorNumber)) { doorNumber=excel.getDoorNumber(); } if (ObjectUtils.isEmpty(isRent)) { isRent=excel.getIsRent(); } eexcelUserDTO.setOrder(order); eexcelUserDTO.setIsRent(isRent); eexcelUserDTO.setDoorNumber(doorNumber); log.info("解析到一条数据:{}", JSON.toJSONString(eexcelUserDTO)); list.add(eexcelUserDTO); // 复用跨行数据的实现 String order1 = eexcelUserDTO.getOrder(); if (!ObjectUtils.isEmpty(order1) || excel == null) { excel = eexcelUserDTO; } // 达到BATCH_COUNT了,需要去存储一次数据库,防止数据几万条数据在内存,容易OOM if (list.size() >= BATCH_COUNT) { saveData(); @@ -62,7 +109,76 @@ */ private void saveData() { log.info("{}条数据,开始存储数据库!", list.size()); userService.batchSaveUser(list); R r = userService.batchSaveUser(list, areaName); if (R.isOk(r)) { log.info("存储数据库成功!"); } else { throw new ServiceException(r.getMsg()); } } /** * 这里会一行行的返回头 * * @param headMap * @param context */ @Override public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) { // String s = JSON.toJSONString(headMap); // String key="所属小区:"; // boolean contains = s.contains(key); // if (contains) { // log.info("解析到头数据:{}", s); // String substring = s.substring(s.indexOf("【")+1, s.indexOf("】")); // if (ObjectUtils.isEmpty(substring)) { // throw new ServiceException("小区名字不能为空"); // } // R r=userService.checkAereaName(substring); // if (!R.isOk(r)) { // throw new ServiceException(r.getMsg()); // } // areaName=new StringBuffer(substring); // } String substring = name.substring(0,name.indexOf(".")); R r=userService.checkAereaName(substring); if (!R.isOk(r)) { throw new ServiceException(r.getMsg()); } areaName=new StringBuffer(substring); } /** * 在转换异常 获取其他异常下会调用本接口。抛出异常则停止读取。如果这里不抛出异常则 继续读取下一行。 * * @param exception * @param context * @throws Exception */ @Override public void onException(Exception exception, AnalysisContext context) throws ServiceException { log.error("抛出异常:{}", exception.getMessage()); if (exception instanceof ExcelDataConvertException) { ExcelDataConvertException excelDataConvertException = (ExcelDataConvertException)exception; log.error("第{}行,第{}列解析异常,数据为:{}", excelDataConvertException.getRowIndex(), excelDataConvertException.getColumnIndex(), excelDataConvertException.getCellData()); }else{ throw new ServiceException(exception.getMessage()); } } @Override public void extra(CellExtra extra, AnalysisContext context) { // log.info("读取到了一条额外信息:{}", JSON.toJSONString(extra)); // switch (extra.getType()) { // case MERGE: // log.info( // "合并信息,在firstRowIndex:{},firstColumnIndex;{},lastRowIndex:{},lastColumnIndex:{}", // extra.getFirstRowIndex(), extra.getFirstColumnIndex(), extra.getLastRowIndex(), // extra.getLastColumnIndex()); // break; // default: // } } } springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/excel/CustomSheetWriteHandler.java
@@ -1,15 +1,14 @@ package com.alibaba.easyexcel.test.demo.write; package com.panzhihua.community_backstage.excel; import com.alibaba.excel.write.handler.SheetWriteHandler; import com.alibaba.excel.write.metadata.holder.WriteSheetHolder; import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder; import org.apache.poi.ss.usermodel.DataValidation; import org.apache.poi.ss.usermodel.DataValidationConstraint; import org.apache.poi.ss.usermodel.DataValidationHelper; import org.apache.poi.ss.util.CellRangeAddressList; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.alibaba.excel.write.handler.SheetWriteHandler; import com.alibaba.excel.write.metadata.holder.WriteSheetHolder; import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder; /** * 自定义拦截器.对第一列第一行和第二行的数据新增下拉框,显示 测试1 测试2 @@ -30,10 +29,23 @@ LOGGER.info("第{}个Sheet写入成功。", writeSheetHolder.getSheetNo()); // 区间设置 第一列第一行和第二行的数据。由于第一行是头,所以第一、二行的数据实际上是第二三行 CellRangeAddressList cellRangeAddressList = new CellRangeAddressList(1, 2, 0, 0); CellRangeAddressList cellRangeAddressList = new CellRangeAddressList(1, 2000, 2, 2); CellRangeAddressList cellRangeAddressList1 = new CellRangeAddressList(1, 2000, 5 ,5); CellRangeAddressList cellRangeAddressList2 = new CellRangeAddressList(1, 2000, 12 ,12); CellRangeAddressList cellRangeAddressList3 = new CellRangeAddressList(1, 2000, 14 ,22); DataValidationHelper helper = writeSheetHolder.getSheet().getDataValidationHelper(); DataValidationConstraint constraint = helper.createExplicitListConstraint(new String[] {"测试1", "测试2"}); DataValidationConstraint constraint = helper.createExplicitListConstraint(new String[] {"是", "否"}); DataValidationConstraint constraint1 = helper.createExplicitListConstraint(new String[] {"党员", "团员","群众"}); DataValidation dataValidation = helper.createValidation(constraint, cellRangeAddressList); DataValidation dataValidation1 = helper.createValidation(constraint1, cellRangeAddressList1); DataValidation dataValidation2= helper.createValidation(constraint, cellRangeAddressList2); DataValidation dataValidation3= helper.createValidation(constraint, cellRangeAddressList3); writeSheetHolder.getSheet().addValidationData(dataValidation); writeSheetHolder.getSheet().addValidationData(dataValidation1); writeSheetHolder.getSheet().addValidationData(dataValidation2); writeSheetHolder.getSheet().addValidationData(dataValidation3); } } springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/resources/logback-spring.xml
@@ -7,6 +7,7 @@ <springProfile name="test"> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> </springProfile> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java
@@ -1177,5 +1177,25 @@ return comActActivityService.indexDataCommunityBackstageEchart(communityId); } /** * 选择导入的小区 * @param param 小区名字 模糊查询 * @param communityId 社区id * @return 小区集合 ComMngStructAreaVO */ @PostMapping("listareas") public R listAreas(@RequestParam("param")String param, @RequestParam("communityId")Long communityId){ return comMngStructAreaService.listAreas(param,communityId); } /** * 检查小区是否已经批量设置过房屋并且返回小区房屋门号规则 * @param id 小区id * @return ComMngStructAreaVO */ @PostMapping("checkAreaHouse") public R checkAreaHouse(@RequestParam("id")Long id){ return comMngStructAreaService.checkAreaHouse(id); } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngStructAreaDAO.java
@@ -3,12 +3,15 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.ComActDynVO; import com.panzhihua.common.model.vos.community.ComMngStructAreaVO; import com.panzhihua.service_community.model.dos.ComMngStructAreaDO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import java.util.List; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -44,4 +47,17 @@ " </if> " + "</script>") IPage<ComMngStructAreaVO> pageArea(Page page, @Param("comMngStructAreaVO") ComMngStructAreaVO comMngStructAreaVO); @Select("SELECT\n" + "\ta.id,\n" + "\ta.role_floor,\n" + "\ta.area_name,\n" + "\ta.role_connector,\n" + "\ta.role_door \n" + "FROM\n" + "\tcom_mng_struct_area a \n" + "WHERE\n" + "\ta.area_name LIKE CONCAT( '%', #{areaName}, '%' ) \n" + "\tAND a.community_id =#{communityId}") List<ComMngStructAreaVO> listAreas(@Param("areaName")String areaName, @Param("communityId")Long communityId); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngStructHouseUserDAO.java
@@ -7,6 +7,7 @@ import org.apache.ibatis.annotations.Select; import java.util.List; import java.util.Map; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -18,4 +19,12 @@ public interface ComMngStructHouseUserDAO extends BaseMapper<ComMngStructHouseUserDO> { @Select("select u.name,u.phone from com_mng_struct_house_user h join sys_user u on h.user_id=u.user_id and h.house_code=#{houseCode1}") List<LoginUserInfoVO> selectListHouseUser(String houseCode1); @Select("SELECT\n" + "\tp.house_code ,\n" + "\tp.is_rent\n" + "FROM\n" + "\tsys_user_input p \n" + "WHERE\n" + "\tp.id =#{userId}") Map<String, Object> selectHouseCode(Long userId); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActActivityService.java
@@ -108,4 +108,5 @@ * @return 图表数据 IndexDataVO */ R indexDataCommunityBackstageEchart(Long communityId); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComMngStructAreaService.java
@@ -65,4 +65,17 @@ * @return 小区信息 */ R detailArea(Long areaId); /** * 选择导入的小区 * @param param 小区名字 模糊查询 * @param communityId 社区id * @return 小区集合 ComMngStructAreaVO */ R listAreas(String param, Long communityId); /** * 检查小区是否已经批量设置过房屋并且返回小区房屋门号规则 * @param id 小区id * @return ComMngStructAreaVO */ R checkAreaHouse(Long id); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActActivityServiceImpl.java
@@ -396,6 +396,8 @@ return R.ok(indexDataVO); } /** * 获取最近七天的时间 * @return springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructAreaServiceImpl.java
@@ -182,5 +182,52 @@ return R.ok(comMngStructAreaVO); } /** * 选择导入的小区 * * @param param 小区名字 模糊查询 * @param communityId 社区id * @return 小区集合 ComMngStructAreaVO */ @Override public R listAreas(String param, Long communityId) { List<ComMngStructAreaVO> comMngStructAreaVOS=new ArrayList<>(); comMngStructAreaVOS =comMngStructAreaDAO.listAreas(param,communityId); if (!ObjectUtils.isEmpty(comMngStructAreaVOS)) { comMngStructAreaVOS.forEach(comMngStructAreaVO -> { String roleConnector = comMngStructAreaVO.getRoleConnector(); String roleFloor = comMngStructAreaVO.getRoleFloor(); String roleDoor = comMngStructAreaVO.getRoleDoor(); String doorNum="1-1-1-"+roleFloor+roleConnector+roleDoor; if (!ObjectUtils.isEmpty(roleFloor)) { comMngStructAreaVO.setDoorNum(doorNum); } }); } return R.ok(comMngStructAreaVOS); } /** * 检查小区是否已经批量设置过房屋并且返回小区房屋门号规则 * * @param id 小区id * @return ComMngStructAreaVO */ @Override public R checkAreaHouse(Long id) { ComMngStructAreaDO comMngStructAreaDO = comMngStructAreaDAO.selectById(id); if (null==comMngStructAreaDO) { return R.fail("小区不存在"); } String roleFloor = comMngStructAreaDO.getRoleFloor(); String roleDoor = comMngStructAreaDO.getRoleDoor(); if (ObjectUtils.isEmpty(roleDoor)||ObjectUtils.isEmpty(roleFloor)) { return R.fail("小区未批量设置房屋,请先去社区后台配置"); } ComMngStructAreaVO comMngStructAreaVO=new ComMngStructAreaVO(); BeanUtils.copyProperties(comMngStructAreaDO,comMngStructAreaVO); return R.ok(comMngStructAreaVO); } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructHouseServiceImpl.java
@@ -8,6 +8,7 @@ import com.panzhihua.common.model.vos.community.BatchhouseVO; import com.panzhihua.common.model.vos.community.ComMngStructAreaVO; import com.panzhihua.common.model.vos.community.ComMngStructHouseVO; import com.panzhihua.common.model.vos.user.CommunityUserInfoVO; import com.panzhihua.service_community.dao.ComMngStructHouseDAO; import com.panzhihua.service_community.dao.ComMngStructHouseUserDAO; import com.panzhihua.service_community.model.dos.ComMngStructAreaDO; @@ -23,6 +24,7 @@ import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** @@ -48,6 +50,7 @@ @Override public R detailHouse(Long userId) { List<ComMngStructHouseVO> comMngStructHouseVOS = new ArrayList<>(); if ( userId< 100000000l) { List<ComMngStructHouseUserDO> comMngStructHouseUserDOS = comMngStructHouseUserDAO.selectList(new QueryWrapper<ComMngStructHouseUserDO>().lambda().eq(ComMngStructHouseUserDO::getUserId, userId)); if (!ObjectUtils.isEmpty(comMngStructHouseUserDOS)) { String areaCode = comMngStructHouseUserDOS.get(0).getAreaCode(); @@ -62,6 +65,22 @@ }); return R.ok(comMngStructHouseVOS); } }else{ userId=userId-100000000l; // 查导入人员的房屋 Map<String,Object> map=comMngStructHouseUserDAO.selectHouseCode(userId); String houseCode = map.get("house_code").toString(); String isRent = map.get("is_rent").toString(); ComMngStructHouseDO comMngStructHouseDO = comMngStructHouseDAO.selectOne(new QueryWrapper<ComMngStructHouseDO>().lambda().eq(ComMngStructHouseDO::getHouseCode, houseCode)); ComMngStructHouseVO comMngStructHouseVO = new ComMngStructHouseVO(); BeanUtils.copyProperties(comMngStructHouseDO, comMngStructHouseVO); if (isRent.equals("1")) { comMngStructHouseVO.setIdentity(1); }else{ comMngStructHouseVO.setIdentity(2); } comMngStructHouseVOS.add(comMngStructHouseVO); } return R.ok(comMngStructHouseVOS); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/logback-spring.xml
@@ -7,6 +7,7 @@ <springProfile name="test"> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> </springProfile> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> springcloud_k8s_panzhihuazhihuishequ/service_partybuilding/src/main/resources/logback-spring.xml
@@ -7,6 +7,7 @@ <springProfile name="test"> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> </springProfile> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/api/UserApi.java
@@ -2,6 +2,7 @@ import com.panzhihua.common.model.dtos.PageDTO; import com.panzhihua.common.model.dtos.community.NoticeReadDTO; import com.panzhihua.common.model.dtos.user.EexcelUserDTO; import com.panzhihua.common.model.dtos.user.PageFeedBackDTO; import com.panzhihua.common.model.dtos.user.PageUserAppletsBackstageDTO; import com.panzhihua.common.model.dtos.user.SysUserFeedbackDTO; @@ -9,13 +10,16 @@ import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.SystemmanagementConfigVO; import com.panzhihua.common.model.vos.user.*; import com.panzhihua.service_user.service.SysUserInputService; import com.panzhihua.service_user.service.UserService; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.util.List; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -23,10 +27,13 @@ * @author: huang.hongfa weixin hhf9596 qq 959656820 * @create: 2020-11-24 09:00 **/ @Slf4j @RestController("/") public class UserApi { @Resource private UserService userService; @Resource private SysUserInputService sysUserInputService; /** * 新增微信用户 @@ -526,4 +533,55 @@ return userService.deleteFeedback(id); } /** * 校验小区是否存在 * @param areaName 小区名字 * @return 校验结果 */ @PostMapping("checkaereaname") public R checkAereaName(@RequestParam("areaName")String areaName){ return userService.checkAereaName(areaName); } /** * 批量导入居民用户 * @param list 居民用户集合 * @param areaName 小区名字 * @return 导入结果 */ @PostMapping("batchsaveuser") public R batchSaveUser(@RequestBody List<EexcelUserDTO> list,@RequestParam("areaName")StringBuffer areaName){ R r = null; try { r = sysUserInputService.batchSaveUser(list, areaName); } catch (Exception e) { String message = e.getMessage(); log.error(message); if (message.contains("unique_id_card")) { int i = message.indexOf("'"); String idcard = message.substring(i + 1, message.indexOf("'", i + 1)); // System.out.println(idcard); return R.fail("身份证存在重复"+idcard); }else { return R.fail(e.getMessage()); } } return r; } /** * 社区人员详情包括导入人员 * @param userId 人员id * @return CommunityUserInfoVO */ @PostMapping("detailusercomunity") public R detailUserComunity(@RequestParam("userId")Long userId){ CommunityUserInfoVO communityUserInfoVO=new CommunityUserInfoVO(); if(userId<100000000l){ communityUserInfoVO=userService.detailUserComunity(userId); }else{ communityUserInfoVO=sysUserInputService.detailUserComunity(userId); } return R.ok(communityUserInfoVO); } } springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/SysUserInputDAO.java
@@ -1,11 +1,57 @@ package com.panzhihua.service_user.dao;/** package com.panzhihua.service_user.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.panzhihua.common.model.vos.community.ComMngStructAreaVO; import com.panzhihua.common.model.vos.community.ComMngStructHouseVO; import com.panzhihua.common.model.vos.user.ComMngFamilyInfoVO; import com.panzhihua.service_user.model.dos.SysUserInputDO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import java.util.List; /** * @program: springcloud_k8s_panzhihuazhihuishequ * * @description: 居民导入 * * @author: huang.hongfa weixin hhf9596 qq 959656820 * * @create: 2021-02-05 17:40 **/ public interface SysUserInputDAO { @Mapper public interface SysUserInputDAO extends BaseMapper<SysUserInputDO> { // @Select("<script> " + // " <where>" + // "<if test='nameCn != null and nameCn.trim() != ""'>" + // " </if> " + // "<if test='nameCn != null and nameCn.trim() != ""'>" + // " </if> " + // "<if test='nameCn != null and nameCn.trim() != ""'>" + // " </if> " + // " </where>" + // "</script>") @Select("select a.id,a.community_id from com_mng_struct_area a where a.area_name=#{areaName}") ComMngStructAreaVO selectByAreaName(String areaName); @Select("SELECT \n" + "REPLACE(REPLACE(REPLACE(REPLACE(h.house_name,a.address_detail,''),'栋','-'),'单元','-'),'层','-')houseName,\n" + "h.house_code\n" + "FROM\n" + "\tcom_mng_struct_area a \n" + "\tjoin com_mng_struct_house h on h.house_name like CONCAT(a.address_detail,'%') and h.type=5\n" + "WHERE\n" + "\ta.area_name = #{areaName}") List<ComMngStructHouseVO> selectHouserByareaName(String areaName); @Select("SELECT \n" + "p.name,\n" + "p.id,\n" + "if(p.is_rent=1,'合租','家人')relationship,\n" + "p.id_card,\n" + "p.phone,\n" + "year(curdate())-if(length(p.id_card)=18,substring(p.id_card,7,4),if(length(p.id_card)=15,concat('19',substring(p.id_card,7,2)),null)) as age,\n" + "p.create_at\n" + "FROM\n" + "\tsys_user_input p \n" + "WHERE\n" + "\tp.door_number = #{doorNumber} \n" + "\tAND p.id !=#{userId}") List<ComMngFamilyInfoVO> selectListFamily(@Param("doorNumber") String doorNumber, @Param("userId")Long userId); } springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java
@@ -75,8 +75,12 @@ "SELECT\n" + "u.user_id,\n" + "u.`name`,\n" + "u.`sex`,\n" + "u.nick_name,\n" + "u.phone,\n" + "YEAR (now()) - YEAR (substring(u.id_card, 7, 8)) age,\n"+ "1 isRegister,\n"+ "v.political_face political_outlook,\n"+ "u.id_card,\n" + "u.job,\n" + "c.area_name communityName,\n" + @@ -84,10 +88,11 @@ "u.create_at \n" + "FROM\n" + "sys_user u\n" + "<if test='loginUserInfoVO.name != null and loginUserInfoVO.name.trim() != ""'>" + "left join com_mng_volunteer_mng v on u.phone=v.phone \n"+ "<if test='loginUserInfoVO.communityName != null and loginUserInfoVO.communityName.trim() != ""'>" + " JOIN com_mng_struct_area c ON u.area_id = c.id \n" + " </if> " + "<if test='loginUserInfoVO.name == null or loginUserInfoVO.name.trim() == ""'>" + "<if test='loginUserInfoVO.communityName == null or loginUserInfoVO.communityName.trim() == ""'>" + "LEFT JOIN com_mng_struct_area c ON u.area_id = c.id \n" + " </if> " + "<if test='loginUserInfoVO.communityName != null and loginUserInfoVO.communityName.trim() != ""'>" + @@ -99,6 +104,45 @@ " </if> " + "<if test='loginUserInfoVO.phone != null and loginUserInfoVO.phone.trim() != ""'>" + "AND u.phone like concat(#{loginUserInfoVO.phone},'%') " + " </if> " + "union all "+ "SELECT \n" + "u.id+100000000 user_id,\n" + "u.`name`,\n" + "case if(length(u.id_card)=18, cast(substring(u.id_card,17,1) as UNSIGNED)%2, if(length(u.id_card)=15,cast(substring(u.id_card,15,1) as UNSIGNED)%2,3)) \n" + "when 1 then 1\n" + "when 0 then 2\n" + "else 0\n" + "end as sex,\n" + "'' nick_name,\n" + "u.phone,\n" + "YEAR (now()) - YEAR (substring(u.id_card, 7, 8)) age,\n" + "if(su.user_id is null ,0,1)isRegister,\n" + "u.political_outlook,\n" + "u.id_card,\n" + "'' job,\n" + "c.area_name communityName,\n" + "CONCAT(if(u.soldier=1,'军人,',''),if(u.lowIncome_households=1,'低保户,',''),if(u.lowIncome_people=1,'低收入,',''),if(u.old_people=1,'特服家庭,',''),if(u.key_personnel=1,'重点人员,',''))tags,\n" + "u.create_at\n" + "FROM\n" + "\tsys_user_input u\n" + "\tLEFT JOIN sys_user su on su.id_card=u.id_card"+ "<if test='loginUserInfoVO.communityName != null and loginUserInfoVO.communityName.trim() != ""'>" + " JOIN com_mng_struct_area c ON u.area_id = c.id \n" + " </if> " + "<if test='loginUserInfoVO.communityName == null or loginUserInfoVO.communityName.trim() == ""'>" + "LEFT JOIN com_mng_struct_area c ON u.area_id = c.id \n" + " </if> " + "<if test='loginUserInfoVO.communityName != null and loginUserInfoVO.communityName.trim() != ""'>" + "AND c.`area_name` like concat(#{loginUserInfoVO.communityName},'%') \n" + " </if> " + " where u.community_id=#{loginUserInfoVO.communityId} " + "<if test='loginUserInfoVO.phone != null and loginUserInfoVO.phone.trim() != ""'>" + "AND u.phone like concat(#{loginUserInfoVO.phone},'%') " + " </if> " + "<if test='loginUserInfoVO.name != null and loginUserInfoVO.name.trim() != ""'>" + " and u.`name` like concat(#{loginUserInfoVO.name},'%') \n" + " </if> " + "</script>") IPage<LoginUserInfoVO> pageUser(Page page, @Param("loginUserInfoVO") LoginUserInfoVO loginUserInfoVO); @@ -243,4 +287,14 @@ int updateFaceState(Long userId); @Select("select name from com_act where community_id=#{communityId}") ComActVO selectCommunity(Long communityId); @Select("select COUNT(a.id) from com_mng_struct_area a where a.area_name=#{areaName}") Integer selectCountArea(String areaName); @Select("SELECT\n" + "\tCOUNT(h.id)\n" + "FROM\n" + "\tcom_mng_struct_area a \n" + "\tLEFT JOIN com_mng_struct_house h on h.parent_code=a.area_code\n" + "WHERE\n" + "\ta.area_name = #{areaName}") Integer selectCountHouse(String areaName); } springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/model/dos/SysUserInputDO.java
@@ -1,11 +1,162 @@ package com.panzhihua.service_user.model.dos;/** package com.panzhihua.service_user.model.dos; import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.*; import lombok.Data; import java.io.Serializable; import java.util.Date; /** * @program: springcloud_k8s_panzhihuazhihuishequ * * @description: 居民导入数据 * * @author: huang.hongfa weixin hhf9596 qq 959656820 * * @create: 2021-02-05 17:37 **/ public class SysUserInputDO { @Data @TableName("sys_user_input") public class SysUserInputDO implements Serializable { private static final long serialVersionUID = 1L; /** * id */ @TableId(type = IdType.AUTO) private Long id; /** * 门牌号 */ private String doorNumber; /** * 是否租住 0 不是 1 是 */ private Integer isRent; /** * 姓名 */ private String name; /** * 民族 */ private String nation; /** * 政治面貌:1 - 党员;2 - 团员;3 - 群众 */ private Integer politicalOutlook; /** * 0 未婚 1 已婚 */ private Integer maritalStatus; /** * 联系方式 */ private String phone; /** * 文化程度 */ private String education; /** * 身份证 */ private String idCard; /** * 工作单位(学校) */ private String company; /** * 户口所在地 */ private String residence; /** * 目前是否在攀枝花 0 否 1 是 */ private Integer isPanzhihua; /** * 近一个月离(返)攀情况 */ private String situation; /** * 是否有与疑似或确诊病例密切接触史 0 否 1 是 */ private Integer isContact; /** * 是否特殊情况(重大过往病史或者孕妇) 0 否 1是 */ private Integer major; /** * 是否退伍军人 0 否 1是 */ private Integer soldier; /** * 是否低保户 0 否 1是 */ private Integer lowincomeHouseholds; /** * 是否低收入人员 0否 1是 */ private Integer lowincomePeople; /** * 是否高龄老人 0否 1是 */ private Integer oldPeople; /** * 是否特服家庭 0 否 1是 */ private Integer specialServiceFamily; /** * 是否重点人员 0 否 1是 */ private Integer keyPersonnel; /** * 社区id */ private Long communityId; /** * 小区id */ private Long areaId; /** * create_at */ @TableField(fill = FieldFill.INSERT) private Date createAt; /** * update_at */ @TableField(fill = FieldFill.INSERT_UPDATE) private Date updateAt; /** * 房屋编码 */ private String houseCode; /** * 残疾人 */ private Integer disability; } springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/SysUserInputService.java
@@ -1,11 +1,31 @@ package com.panzhihua.service_user.service;/** package com.panzhihua.service_user.service; import com.baomidou.mybatisplus.extension.service.IService; import com.panzhihua.common.model.dtos.user.EexcelUserDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.user.CommunityUserInfoVO; import com.panzhihua.service_user.model.dos.SysUserInputDO; import java.util.List; /** * @program: springcloud_k8s_panzhihuazhihuishequ * * @description: 居民导入 * * @author: huang.hongfa weixin hhf9596 qq 959656820 * * @create: 2021-02-05 17:42 **/ public interface SysUserInputService { public interface SysUserInputService extends IService<SysUserInputDO> { /** * 批量导入居民用户 * @param list 居民用户集合 * @param areaName 小区名字 * @return 导入结果 */ R batchSaveUser(List<EexcelUserDTO> list, StringBuffer areaName); /** * 社区人员详情包括导入人员 * @param userId 人员id * @return CommunityUserInfoVO */ CommunityUserInfoVO detailUserComunity(Long userId); } springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/UserService.java
@@ -2,6 +2,7 @@ import com.panzhihua.common.model.dtos.PageDTO; import com.panzhihua.common.model.dtos.community.NoticeReadDTO; import com.panzhihua.common.model.dtos.user.EexcelUserDTO; import com.panzhihua.common.model.dtos.user.PageFeedBackDTO; import com.panzhihua.common.model.dtos.user.PageUserAppletsBackstageDTO; import com.panzhihua.common.model.dtos.user.SysUserFeedbackDTO; @@ -9,6 +10,8 @@ import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.SystemmanagementConfigVO; import com.panzhihua.common.model.vos.user.*; import java.util.List; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -322,4 +325,16 @@ * @return 删除结果 */ R deleteFeedback(Long id); /** * 校验小区是否存在 * @param areaName 小区名字 * @return 校验结果 */ R checkAereaName(String areaName); /** * 社区人员详情包括导入人员 * @param userId 人员id * @return CommunityUserInfoVO */ CommunityUserInfoVO detailUserComunity(Long userId); } springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/SysUserInputServiceImpl.java
@@ -1,11 +1,171 @@ package com.panzhihua.service_user.service.impl;/** package com.panzhihua.service_user.service.impl; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.panzhihua.common.exceptions.ServiceException; import com.panzhihua.common.model.dtos.user.EexcelUserDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.ComMngStructAreaVO; import com.panzhihua.common.model.vos.community.ComMngStructHouseVO; import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO; import com.panzhihua.common.model.vos.user.ComMngFamilyInfoVO; import com.panzhihua.common.model.vos.user.CommunityUserInfoVO; import com.panzhihua.common.utlis.IdCard; import com.panzhihua.service_user.dao.SysUserInputDAO; import com.panzhihua.service_user.model.dos.ComMngFamilyInfoDO; import com.panzhihua.service_user.model.dos.SysUserDO; import com.panzhihua.service_user.model.dos.SysUserInputDO; import com.panzhihua.service_user.service.SysUserInputService; import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.BeanUtils; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.data.redis.core.ValueOperations; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; /** * @program: springcloud_k8s_panzhihuazhihuishequ * * @description: 居民导入 * * @author: huang.hongfa weixin hhf9596 qq 959656820 * * @create: 2021-02-05 17:42 **/ public class SysUserInputServiceImpl { @Service public class SysUserInputServiceImpl extends ServiceImpl<SysUserInputDAO, SysUserInputDO> implements SysUserInputService { @Resource private SysUserInputDAO sysUserInputDAO; @Resource private StringRedisTemplate stringRedisTemplate; /** * 批量导入居民用户 * @param list 居民用户集合 * @param areaName 小区名字 * @return 导入结果 */ @Override @Transactional(rollbackFor = Exception.class) public R batchSaveUser(List<EexcelUserDTO> list, StringBuffer areaName) { List<SysUserInputDO> sysUserInputDOS=new ArrayList<>(); if (!ObjectUtils.isEmpty(list)) { ComMngStructAreaVO comMngStructAreaVO=sysUserInputDAO.selectByAreaName(areaName.toString()); // 查询该小区所有房屋信息用来进行匹配房屋编码 String key="house_"+areaName; Boolean aBoolean = stringRedisTemplate.hasKey(key); ValueOperations<String, String> stringStringValueOperations = stringRedisTemplate.opsForValue(); List<ComMngStructHouseVO> comMngStructHouseVOS=new ArrayList<>(); if (aBoolean) { String value = stringStringValueOperations.get(key); comMngStructHouseVOS= JSONArray.parseArray(value,ComMngStructHouseVO.class); }else{ comMngStructHouseVOS=sysUserInputDAO.selectHouserByareaName(areaName.toString()); } List<ComMngStructHouseVO> comMngStructHouseVOS1=comMngStructHouseVOS; list.forEach(eexcelUserDTO -> { SysUserInputDO sysUserInputDO=new SysUserInputDO(); String doorNumber = eexcelUserDTO.getDoorNumber(); List<ComMngStructHouseVO> collect = comMngStructHouseVOS1.stream().filter(comMngStructHouseVO -> comMngStructHouseVO.getHouseName().equals(doorNumber)).collect(Collectors.toList()); if (ObjectUtils.isEmpty(collect)) { throw new ServiceException("门牌号后台不存在或格式错误,错误门牌号为"+doorNumber); }else{ sysUserInputDO.setHouseCode(collect.get(0).getHouseCode()); } sysUserInputDO.setAreaId(comMngStructAreaVO.getId()); sysUserInputDO.setCommunityId(comMngStructAreaVO.getCommunityId()); sysUserInputDO.setCompany(eexcelUserDTO.getCompany()); sysUserInputDO.setDoorNumber(doorNumber); sysUserInputDO.setEducation(eexcelUserDTO.getEducation()); sysUserInputDO.setIdCard(eexcelUserDTO.getIdCard()); sysUserInputDO.setIsContact(eexcelUserDTO.getIsContact().equals("是")?1:0); sysUserInputDO.setIsPanzhihua(eexcelUserDTO.getIsPanZhiHua().equals("是")?1:0); sysUserInputDO.setIsRent(eexcelUserDTO.getIsRent().equals("是")?1:0); sysUserInputDO.setKeyPersonnel(eexcelUserDTO.getKeyPersonnel().equals("是")?1:0); sysUserInputDO.setLowincomeHouseholds(eexcelUserDTO.getLowIncomeHouseholds().equals("是")?1:0); sysUserInputDO.setLowincomePeople(eexcelUserDTO.getLowIncomePeople().equals("是")?1:0); sysUserInputDO.setMajor(eexcelUserDTO.getMajor().equals("是")?1:0); sysUserInputDO.setMaritalStatus(eexcelUserDTO.getMaritalStatus().equals("是")?1:0); sysUserInputDO.setName(eexcelUserDTO.getName()); sysUserInputDO.setNation(eexcelUserDTO.getNation()); sysUserInputDO.setOldPeople(eexcelUserDTO.getOldPeople().equals("是")?1:0); sysUserInputDO.setDisability(eexcelUserDTO.getDisability().equals("是")?1:0); sysUserInputDO.setPhone(eexcelUserDTO.getPhone()); String politicalOutlook = eexcelUserDTO.getPoliticalOutlook(); sysUserInputDO.setPoliticalOutlook(politicalOutlook.equals("党员")?1:politicalOutlook.equals("团员")?2:3); sysUserInputDO.setResidence(eexcelUserDTO.getResidence()); sysUserInputDO.setSituation(eexcelUserDTO.getSituation()); sysUserInputDO.setSoldier(eexcelUserDTO.getSoldier().equals("是")?1:0); sysUserInputDO.setSpecialServiceFamily(eexcelUserDTO.getSpecialServiceFamily().equals("是")?1:0); sysUserInputDOS.add(sysUserInputDO); }); this.saveBatch(sysUserInputDOS); } return R.ok(); } /** * 社区人员详情包括导入人员 * * @param userId 人员id * @return CommunityUserInfoVO */ @Override public CommunityUserInfoVO detailUserComunity(Long userId) { CommunityUserInfoVO communityUserInfoVO=new CommunityUserInfoVO(); userId=userId-100000000l; SysUserInputDO sysUserInputDO = sysUserInputDAO.selectById(userId); if (!org.springframework.util.ObjectUtils.isEmpty(sysUserInputDO)) { BeanUtils.copyProperties(sysUserInputDO,communityUserInfoVO); String idCard = sysUserInputDO.getIdCard(); if (!org.springframework.util.ObjectUtils.isEmpty(idCard)) { communityUserInfoVO.setAge(IdCard.IdNOToAge(idCard)); communityUserInfoVO.setBirthday(IdCard.birthDay(idCard)); communityUserInfoVO.setIdCard(idCard); communityUserInfoVO.setSex(IdCard.sex(idCard)); } String phone = sysUserInputDO.getPhone(); communityUserInfoVO.setPhone(phone); Integer keyPersonnel = sysUserInputDO.getKeyPersonnel(); Integer specialServiceFamily = sysUserInputDO.getSpecialServiceFamily(); Integer soldier = sysUserInputDO.getSoldier(); Integer lowincomeHouseholds = sysUserInputDO.getLowincomeHouseholds(); Integer lowincomePeople = sysUserInputDO.getLowincomePeople(); Integer oldPeople = sysUserInputDO.getOldPeople(); Integer disability = sysUserInputDO.getDisability(); StringBuilder stringBuilder=new StringBuilder(""); if (keyPersonnel.intValue()==1) { stringBuilder.append("重点人员,"); } if (specialServiceFamily.intValue()==1) { stringBuilder.append("特服家庭,"); } if (soldier.intValue()==1) { stringBuilder.append("军人,"); } if (lowincomeHouseholds.intValue()==1) { stringBuilder.append("低保户,"); } if (lowincomePeople.intValue()==1) { stringBuilder.append("低收入人员,"); } if (oldPeople.intValue()==1) { stringBuilder.append("高龄老人,"); } if (disability.intValue()==1) { stringBuilder.append("残疾人,"); } communityUserInfoVO.setTags(stringBuilder.toString()); communityUserInfoVO.setUserId(userId); communityUserInfoVO.setIsVolunteer(0); String doorNumber = sysUserInputDO.getDoorNumber(); List<ComMngFamilyInfoVO> comMngFamilyInfoVOS = sysUserInputDAO.selectListFamily(doorNumber,userId); communityUserInfoVO.setComMngFamilyInfoVOS(comMngFamilyInfoVOS); } return communityUserInfoVO; } } springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
@@ -17,14 +17,16 @@ import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO; import com.panzhihua.common.model.vos.partybuilding.ActivityManagerVO; import com.panzhihua.common.model.vos.user.*; import com.panzhihua.common.utlis.IdCard; import com.panzhihua.common.utlis.RealNameUtil; import com.panzhihua.service_user.dao.*; import com.panzhihua.service_user.model.dos.*; import com.panzhihua.service_user.model.dtos.DataKanbanDTO; import com.panzhihua.service_user.service.UserService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.time.DateFormatUtils; import org.apache.commons.lang3.time.DateUtils; import org.apache.commons.lang.time.DateFormatUtils; import org.apache.commons.lang.time.DateUtils; import org.springframework.beans.BeanUtils; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.data.redis.core.ValueOperations; @@ -71,6 +73,8 @@ private SysRoleMenuDAO sysRoleMenuDAO; @Resource private SysMenuDAO sysMenuDAO; @Resource private SysUserInputDAO sysUserInputDAO; /** @@ -398,11 +402,12 @@ */ @Override public R detailUser(Long userId) { LoginUserInfoVO loginUserInfoVO=new LoginUserInfoVO(); if(userId<100000000l){ SysUserDO sysUserDO = userDao.selectById(userId); if (ObjectUtils.isEmpty(sysUserDO)) { return R.fail("人员不存在"); } LoginUserInfoVO loginUserInfoVO=new LoginUserInfoVO(); BeanUtils.copyProperties(sysUserDO,loginUserInfoVO); List<ComMngFamilyInfoDO> comMngFamilyInfoDOS = comMngFamilyInfoDAO.selectList(new QueryWrapper<ComMngFamilyInfoDO>().lambda().eq(ComMngFamilyInfoDO::getUserId, userId)); if (!ObjectUtils.isEmpty(comMngFamilyInfoDOS)) { @@ -413,6 +418,42 @@ comMngFamilyInfoVOS.add(comMngFamilyInfoVO); }); loginUserInfoVO.setComMngFamilyInfoVOS(comMngFamilyInfoVOS); } }else{ //导入社区人员 SysUserInputDO sysUserInputDO = sysUserInputDAO.selectById(userId - 100000000); if (ObjectUtils.isEmpty(sysUserInputDO)) { return R.fail("人员不存在"); } String name1 = sysUserInputDO.getName(); BeanUtils.copyProperties(sysUserInputDO,loginUserInfoVO); String doorNumber = sysUserInputDO.getDoorNumber(); Long areaId = sysUserInputDO.getAreaId(); List<SysUserInputDO> sysUserInputDOS = sysUserInputDAO.selectList(new QueryWrapper<SysUserInputDO>().lambda().eq(SysUserInputDO::getDoorNumber, doorNumber).eq(SysUserInputDO::getAreaId, areaId)); if (!ObjectUtils.isEmpty(sysUserInputDOS)) { List<ComMngFamilyInfoVO>comMngFamilyInfoVOS=new ArrayList<>(); sysUserInputDOS.forEach(sysUserInputDO1 -> { String name = sysUserInputDO1.getName(); if (name1.equals(name)) { return; } Integer isRent = sysUserInputDO1.getIsRent(); ComMngFamilyInfoVO comMngFamilyInfoVO=new ComMngFamilyInfoVO(); comMngFamilyInfoVO.setIdCard(sysUserInputDO1.getIdCard()); comMngFamilyInfoVO.setName(name); comMngFamilyInfoVO.setPhone(sysUserInputDO1.getPhone()); if (isRent.intValue()==0) { comMngFamilyInfoVO.setRelationship("家人"); }else{ comMngFamilyInfoVO.setRelationship("合租"); } comMngFamilyInfoVO.setAge(IdCard.IdNOToAge(sysUserInputDO1.getIdCard())); comMngFamilyInfoVOS.add(comMngFamilyInfoVO); }); loginUserInfoVO.setComMngFamilyInfoVOS(comMngFamilyInfoVOS); } } ComActVO comActVO=userDao.selectCommunity(loginUserInfoVO.getCommunityId()); if (!ObjectUtils.isEmpty(comActVO)) { @@ -1360,6 +1401,76 @@ return R.fail(); } /** * 校验小区是否存在 * * @param areaName 小区名字 * @return 校验结果 */ @Override public R checkAereaName(String areaName) { Integer num=userDao.selectCountArea(areaName); if (num>0) { Integer integer = userDao.selectCountHouse(areaName); if (integer>0) { return R.ok(); }else{ return R.fail("小区房屋信息未创建,请先在社区平台添加房屋信息"); } }else{ return R.fail("小区不存在,请先在社区平台添加小区"); } } /** * 社区人员详情包括导入人员 * * @param userId 人员id * @return CommunityUserInfoVO */ @Override public CommunityUserInfoVO detailUserComunity(Long userId) { CommunityUserInfoVO communityUserInfoVO=new CommunityUserInfoVO(); SysUserDO sysUserDO = userDao.selectById(userId); if (!ObjectUtils.isEmpty(sysUserDO)) { String idCard = sysUserDO.getIdCard(); if (!ObjectUtils.isEmpty(idCard)) { communityUserInfoVO.setAge(IdCard.IdNOToAge(idCard)); communityUserInfoVO.setBirthday(IdCard.birthDay(idCard)); communityUserInfoVO.setIdCard(idCard); } communityUserInfoVO.setCreateAt(sysUserDO.getCreateAt()); communityUserInfoVO.setName(sysUserDO.getName()); String phone = sysUserDO.getPhone(); communityUserInfoVO.setPhone(phone); communityUserInfoVO.setSex(sysUserDO.getSex()); communityUserInfoVO.setTags(sysUserDO.getTags()); communityUserInfoVO.setUserId(userId); ComMngVolunteerMngVO comMngVolunteerMngVO = userDao.selectVolunteerMngByPhone(phone); if (!ObjectUtils.isEmpty(comMngVolunteerMngVO)) { communityUserInfoVO.setVolunteerCreateAt(comMngVolunteerMngVO.getCreateAt()); } Integer isPartymember = sysUserDO.getIsPartymember(); if (isPartymember.intValue()==1) { communityUserInfoVO.setPoliticalOutlook(1); }else{ communityUserInfoVO.setPoliticalOutlook(3); } communityUserInfoVO.setIsVolunteer(sysUserDO.getIsVolunteer()); List<ComMngFamilyInfoDO> comMngFamilyInfoDOS = comMngFamilyInfoDAO.selectList(new QueryWrapper<ComMngFamilyInfoDO>().lambda().eq(ComMngFamilyInfoDO::getUserId, userId)); if (!ObjectUtils.isEmpty(comMngFamilyInfoDOS)) { List<ComMngFamilyInfoVO>comMngFamilyInfoVOS=new ArrayList<>(); comMngFamilyInfoDOS.forEach(comMngFamilyInfoDO -> { ComMngFamilyInfoVO comMngFamilyInfoVO=new ComMngFamilyInfoVO(); BeanUtils.copyProperties(comMngFamilyInfoDO,comMngFamilyInfoVO); comMngFamilyInfoVOS.add(comMngFamilyInfoVO); }); communityUserInfoVO.setComMngFamilyInfoVOS(comMngFamilyInfoVOS); } } return communityUserInfoVO; } public static void main(String[] args) { // String encode = new BCryptPasswordEncoder().encode("lbsq123456"); springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/resources/logback-spring.xml
@@ -7,6 +7,7 @@ <springProfile name="test"> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> </springProfile> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/resources/logback-spring.xml
@@ -7,6 +7,7 @@ <springProfile name="test"> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> </springProfile> <property name="LOG_HOME" value="/mnt/data/gocd/log" /> <!-- 控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">