From 76067d492d70e2103263914febf7f7e8a74fc79c Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Mon, 28 Oct 2024 13:50:55 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E5=94=AE=E5=90=8E=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MonthEndService.java | 13 +- .../CarListVo.java | 31 + .../CrmMaintenanceenterpriseRecord.java | 93 ++ ...mMaintenanceenterpriseRecordDetailsVo.java | 208 ++++ .../CrmMaintenanceenterpriseRecordDto.java | 200 ++++ ...ntenanceenterpriseRecordFeignFallback.java | 123 ++ .../CrmMaintenanceenterpriseRecordQuery.java | 69 ++ .../CrmMaintenanceenterpriseRecordVo.java | 110 ++ .../FileQueryUrl.java | 15 + .../PersonListVo.java | 32 + ...xtCrmMaintenanceenterpriseRecordFeign.java | 128 +++ .../flowable/EnterpriseCompleteDto.java | 37 + .../flowable/EnterpriseDelegateQuery.java | 26 + .../flowable/EnterpriseNodeQuery.java | 25 + .../flowable/EnterpriseNodeVo.java | 26 + .../flowable/EnterpriseTaskQuery.java | 48 + .../flowable/SubmitEnterpriseDto.java | 24 + .../AsBusrepairBillDetailsVo.java | 2 + .../asbusrepairbill/AsBusrepairBillDto.java | 2 + .../AsBusrepairBillVech.java | 2 + .../ascustomervehicle/AsCustomerCrmVehVo.java | 3 +- .../ascustomervehicle/AsCustomerVehicle.java | 4 + .../AsBusrepairBillService.java | 6 + .../AsCustomerVehicleMapper.xml | 11 +- .../AsCustomerVehicleService.java | 7 +- .../com/yxt/crm/apiadmin/CrmCustomerRest.java | 93 +- .../crm/apiadmin/CrmDockingPeopleRest.java | 116 ++ .../com/yxt/crm/apiadmin/CrmFileRest.java | 112 ++ .../CrmMaintenanceenterprisePersonRest.java | 104 ++ .../CrmMaintenanceenterpriseRecordRest.java | 172 +++ .../CrmMaintenanceenterpriseVehRest.java | 93 ++ .../biz/crmcustomer/AsCustomerListQuery.java | 35 + .../crm/biz/crmcustomer/AsCustomerListVo.java | 40 + .../yxt/crm/biz/crmcustomer/CrmCustomer.java | 160 ++- .../crm/biz/crmcustomer/CrmCustomerDto.java | 145 ++- .../biz/crmcustomer/CrmCustomerMapper.java | 12 +- .../crm/biz/crmcustomer/CrmCustomerMapper.xml | 28 +- .../biz/crmcustomer/CrmCustomerService.java | 378 +++++- .../biz/crmcustomer/CrmCustomerUpdateDto.java | 117 ++ .../crm/biz/crmcustomer/CrmCustomerVo.java | 187 ++- .../biz/crmcustomer/CustomerInitQuery.java | 34 + .../crmdockingpeople/CrmDockingPeople.java | 60 + .../CrmDockingPeopleDetailsVo.java | 60 + .../crmdockingpeople/CrmDockingPeopleDto.java | 60 + .../CrmDockingPeopleMapper.java | 69 ++ .../CrmDockingPeopleMapper.xml | 16 + .../CrmDockingPeopleQuery.java | 58 + .../CrmDockingPeopleService.java | 132 +++ .../crmdockingpeople/CrmDockingPeopleVo.java | 60 + .../crm/biz/crmdockingpeople/PeopleList.java | 20 + .../java/com/yxt/crm/biz/crmfile/CrmFile.java | 158 +++ .../biz/crmfile/CrmFileAttachTypeEnum.java | 37 + .../yxt/crm/biz/crmfile/CrmFileDetailsVo.java | 63 + .../com/yxt/crm/biz/crmfile/CrmFileDto.java | 65 ++ .../yxt/crm/biz/crmfile/CrmFileListDto.java | 39 + .../yxt/crm/biz/crmfile/CrmFileMapper.java | 78 ++ .../com/yxt/crm/biz/crmfile/CrmFileMapper.xml | 57 + .../com/yxt/crm/biz/crmfile/CrmFileQuery.java | 57 + .../yxt/crm/biz/crmfile/CrmFileService.java | 240 ++++ .../com/yxt/crm/biz/crmfile/CrmFileVo.java | 60 + .../CrmMaintenanceenterprisePerson.java | 64 ++ ...mMaintenanceenterprisePersonDetailsVo.java | 64 ++ .../CrmMaintenanceenterprisePersonDto.java | 64 ++ .../CrmMaintenanceenterprisePersonMapper.java | 72 ++ .../CrmMaintenanceenterprisePersonMapper.xml | 13 + .../CrmMaintenanceenterprisePersonQuery.java | 62 + ...CrmMaintenanceenterprisePersonService.java | 115 ++ .../CrmMaintenanceenterprisePersonVo.java | 64 ++ .../CrmPersonListVo.java | 17 + .../CarListVo.java | 31 + .../CrmMaintenanceenterpriseRecord.java | 93 ++ ...mMaintenanceenterpriseRecordDetailsVo.java | 208 ++++ .../CrmMaintenanceenterpriseRecordDto.java | 200 ++++ .../CrmMaintenanceenterpriseRecordMapper.java | 74 ++ .../CrmMaintenanceenterpriseRecordMapper.xml | 90 ++ .../CrmMaintenanceenterpriseRecordQuery.java | 69 ++ ...CrmMaintenanceenterpriseRecordService.java | 1011 +++++++++++++++++ .../CrmMaintenanceenterpriseRecordVo.java | 110 ++ .../FileQueryUrl.java | 15 + .../PersonListVo.java | 32 + .../flowable/EnterpriseCompleteDto.java | 37 + .../flowable/EnterpriseDelegateQuery.java | 26 + .../flowable/EnterpriseNodeQuery.java | 25 + .../flowable/EnterpriseNodeVo.java | 26 + .../flowable/EnterpriseTaskQuery.java | 48 + .../flowable/SubmitEnterpriseDto.java | 25 + .../CrmMaintenanceenterpriseVeh.java | 70 ++ .../CrmMaintenanceenterpriseVehDetailsVo.java | 71 ++ .../CrmMaintenanceenterpriseVehDto.java | 71 ++ .../CrmMaintenanceenterpriseVehMapper.java | 69 ++ .../CrmMaintenanceenterpriseVehMapper.xml | 13 + .../CrmMaintenanceenterpriseVehQuery.java | 69 ++ .../CrmMaintenanceenterpriseVehService.java | 111 ++ .../CrmMaintenanceenterpriseVehVo.java | 71 ++ .../crmcustomertemp/CrmCustomerTemp.java | 171 +++ .../crmcustomertemp/CrmCustomerTempFeign.java | 44 + .../AsCustomerVehicleDto.java | 70 ++ .../AsCustomerVehicleFeign.java | 14 + .../BaseVehicleOutApplyFeign.java | 60 + .../bus/bussalesorder/BusSalesOrder.java | 155 +++ .../bus/bussalesorder/BusSalesOrderFeign.java | 69 ++ .../flowable/flow/BusinessVariables.java | 65 ++ .../flowable/flow/FlowProcessMapQuery.java | 27 + .../feign/flowable/flow/FlowableFeign.java | 39 + .../crm/feign/flowable/flow/ProcDefEnum.java | 52 + .../flowable/flow/UpdateFlowFieldVo.java | 68 ++ .../flowable/flow2/FlowDelegateQuery.java | 23 + .../crm/feign/flowable/flow2/FlowFeign.java | 37 + .../flowable/flowtask/FlowCommentDto.java | 39 + .../feign/flowable/flowtask/FlowRecordVo.java | 16 + .../crm/feign/flowable/flowtask/FlowTask.java | 106 ++ .../flowable/flowtask/FlowTaskFeign.java | 37 + .../feign/flowable/flowtask/FlowTaskVo.java | 53 + .../feign/flowable/flowtask/LatestTaskVo.java | 34 + .../feign/flowable/flowtask/TaskUserInfo.java | 31 + .../yxt/crm/feign/message/MessageFeign.java | 26 + .../yxt/crm/feign/message/MessageFlowVo.java | 21 + .../feign/message/MessageFlowableQuery.java | 32 + .../crm/feign/message/PushMessageQuery.java | 34 + .../portal/dictcommon/DictCommonFeign.java | 36 + .../portal/dictcommon/DictCommonType.java | 267 +++++ .../feign/portal/dictcommon/DictCommonVo.java | 32 + .../feign/portal/sysstafforg/SysStaffOrg.java | 46 + .../portal/sysstafforg/SysStaffOrgFeign.java | 18 + .../yxt/crm/feign/portal/sysuser/OrgList.java | 24 + .../crm/feign/portal/sysuser/SysUserDto.java | 42 + .../feign/portal/sysuser/SysUserFeign.java | 15 +- .../crm/feign/portal/sysuser/SysUserVo.java | 99 ++ .../feign/portal/sysuserrole/SysUserRole.java | 34 + .../portal/sysuserrole/SysUserRoleDto.java | 32 + .../portal/sysuserrole/SysUserRoleFeign.java | 78 ++ .../sysuserrole/SysUserRoleFeignFallback.java | 86 ++ .../portal/sysuserrole/SysUserRoleQuery.java | 32 + .../portal/sysuserrole/SysUserRoleVo.java | 32 + .../src/main/java/com/yxt/crm/utils/Rule.java | 46 + .../java/com/yxt/crm/utils/domain/BillNo.java | 24 + 136 files changed, 9816 insertions(+), 110 deletions(-) create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CarListVo.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecord.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordDetailsVo.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordDto.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordFeignFallback.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordQuery.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordVo.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/FileQueryUrl.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/PersonListVo.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/YxtCrmMaintenanceenterpriseRecordFeign.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseCompleteDto.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseDelegateQuery.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseNodeQuery.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseNodeVo.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseTaskQuery.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/SubmitEnterpriseDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmDockingPeopleRest.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmFileRest.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterprisePersonRest.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterpriseRecordRest.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterpriseVehRest.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/AsCustomerListQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/AsCustomerListVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerUpdateDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CustomerInitQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeople.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleDetailsVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleMapper.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleMapper.xml create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleService.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/PeopleList.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFile.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileAttachTypeEnum.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileDetailsVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileListDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileMapper.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileMapper.xml create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileService.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePerson.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonDetailsVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonMapper.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonMapper.xml create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonService.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmPersonListVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CarListVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecord.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordDetailsVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordMapper.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordMapper.xml create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordService.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/FileQueryUrl.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/PersonListVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseCompleteDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseDelegateQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseNodeQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseNodeVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseTaskQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/SubmitEnterpriseDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVeh.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehDetailsVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehMapper.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehMapper.xml create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehService.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/anruicrm/crmcustomertemp/CrmCustomerTemp.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/anruicrm/crmcustomertemp/CrmCustomerTempFeign.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/base/basevehicleoutapply/BaseVehicleOutApplyFeign.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/bus/bussalesorder/BusSalesOrder.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/bus/bussalesorder/BusSalesOrderFeign.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/BusinessVariables.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/FlowProcessMapQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/FlowableFeign.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/ProcDefEnum.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/UpdateFlowFieldVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow2/FlowDelegateQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow2/FlowFeign.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowCommentDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowRecordVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTask.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTaskFeign.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTaskVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/LatestTaskVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/TaskUserInfo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFeign.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFlowVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFlowableQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/PushMessageQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonFeign.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonType.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysstafforg/SysStaffOrg.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/OrgList.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRole.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleDto.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleFeign.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleFeignFallback.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleQuery.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleVo.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/utils/Rule.java create mode 100644 yxt-crm-biz/src/main/java/com/yxt/crm/utils/domain/BillNo.java diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/crm/crmmaintenanceenterpriserecord/MonthEndService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/crm/crmmaintenanceenterpriserecord/MonthEndService.java index 68c9724645..0d7e7d48ed 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/crm/crmmaintenanceenterpriserecord/MonthEndService.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/crm/crmmaintenanceenterpriserecord/MonthEndService.java @@ -27,23 +27,18 @@ package com.yxt.anrui.terminal.biz.crm.crmmaintenanceenterpriserecord; import cn.hutool.core.bean.BeanUtil; -import com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordDetailsVo; -import com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordFeign; -import com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.flowable.*; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.portal.api.sysuser.SysUserVo; -import com.yxt.anrui.riskcenter.api.loanbuckleapply.flow.*; import com.yxt.anrui.terminal.api.crm.crmmaintenanceenterpriserecord.MonthEndDetailsVo; import com.yxt.anrui.terminal.api.crm.crmmaintenanceenterpriserecord.flow.AppMonthEndTaskQuery; import com.yxt.anrui.terminal.api.crm.crmmaintenanceenterpriserecord.flow.CompleteMonthEndDto; import com.yxt.anrui.terminal.api.crm.crmmaintenanceenterpriserecord.flow.MonthEndDelegateQuery; import com.yxt.anrui.terminal.api.crm.crmmaintenanceenterpriserecord.flow.MonthEndFlowableQuery; -import com.yxt.anrui.terminal.api.risk.buckle.flow.AppBuckleDelegateQuery; -import com.yxt.anrui.terminal.api.risk.buckle.flow.AppBuckleTaskQuery; -import com.yxt.anrui.terminal.api.risk.buckle.flow.BuckleFlowableQuery; -import com.yxt.anrui.terminal.api.risk.buckle.flow.CompleteBuckleDto; +import com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.CrmMaintenanceenterpriseRecordDetailsVo; +import com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.YxtCrmMaintenanceenterpriseRecordFeign; +import com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.flowable.*; import com.yxt.common.core.result.ResultBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -71,7 +66,7 @@ import java.util.stream.Collectors; public class MonthEndService { @Autowired - private CrmMaintenanceenterpriseRecordFeign crmMaintenanceenterpriseRecordFeign; + private YxtCrmMaintenanceenterpriseRecordFeign crmMaintenanceenterpriseRecordFeign; @Autowired private SysUserFeign sysUserFeign; @Autowired diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CarListVo.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CarListVo.java new file mode 100644 index 0000000000..2f757561ea --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CarListVo.java @@ -0,0 +1,31 @@ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/22 14:42 + */ +@Data +public class CarListVo { + + /** + * 购买日期 + */ + private String buyDate; + private String sid; + /** + * 车牌号 + */ + private String vehMark; + /** + * 车架号 + */ + private String vinNo; + + + @ApiModelProperty("售后客户车辆信息sid") + private String asVinSid; // 售后客户车辆信息sid +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecord.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecord.java new file mode 100644 index 0000000000..9abcce1b3d --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecord.java @@ -0,0 +1,93 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecord.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecord
+ * Description: 定点企业备案.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案", description = "定点企业备案") +@TableName("crm_maintenanceenterprise_record") +public class CrmMaintenanceenterpriseRecord extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("单据编号") + private String billNo; // 单据编号 + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + @ApiModelProperty("备案类别") + private String filingType; // 备案类别 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @ApiModelProperty("备案有效期") + private Date filingIndate; // 备案有效期 + @ApiModelProperty("申请部门") + private String deptName; // 申请部门 + @ApiModelProperty("申请部门sid") + private String deptSid; // 申请部门sid + @ApiModelProperty("taskId") + private String taskId; // taskId + @ApiModelProperty("环节定义的sid") + private String nodeSid; // 环节定义的sid + @ApiModelProperty("流程状态") + private String nodeState; // 流程状态 + @ApiModelProperty("流程实例的sid") + private String procInstId; // 流程实例的sid + @ApiModelProperty("流程定义的id") + private String procDefId; // 流程定义的id + @ApiModelProperty("使用组织sid") + private String useOrgSid; // 使用组织sid + @ApiModelProperty("使用组织名称(分公司)") + private String useOrgName; // 使用组织名称(分公司) + @ApiModelProperty("创建组织sid") + private String createOrgSid; // 创建组织sid + @ApiModelProperty("创建组织名称(分公司)") + private String createOrgName; // 创建组织名称(分公司) + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @ApiModelProperty("办结日期") + private Date closingDate; // 办结日期 + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordDetailsVo.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordDetailsVo.java new file mode 100644 index 0000000000..602cb3c4be --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordDetailsVo.java @@ -0,0 +1,208 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordVo.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordVo
+ * Description: 定点企业备案 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案 视图数据详情", description = "定点企业备案 视图数据详情") +public class CrmMaintenanceenterpriseRecordDetailsVo implements Vo { + + /** + * 客户sid + */ + private String customerSid; + /** + * 详细地址 + */ + private String address; + + /** + * 详细地址 + */ + private String customerAddress; + /** + * 车辆列表 + */ + private List carList = new ArrayList<>(); + /** + * 证件类型 + */ + private String certificateType; + /** + * 证件类型Key + */ + private String certificateTypeKey; + /** + * 市 + */ + private String city; + /** + * 对接人列表 + */ + private List contactPerson = new ArrayList<>(); + /** + * 县 + */ + private String county; + /** + * 申请人 + */ + private String createByName; + /** + * 申请人sid + */ + private String createBySid; + /** + * 分公司 + */ + private String createOrgName; + /** + * 分公司sid + */ + private String createOrgSid; + /** + * 申请日期 + */ + private String createTime; + /** + * 客户名称 + */ + private String customerName; + /** + * 客户类型 + */ + private String customerType; + /** + * 客户类型Key + */ + private String customerTypeKey; + /** + * 申请部门 + */ + private String deptName; + /** + * 申请部门sid + */ + private String deptSid; + /** + * 电子邮箱 + */ + private String e_mail; + /** + * 紧急联系人 + */ + private String emergencyContact; + /** + * 紧急联系电话 + */ + private String emergencyMobile; + /** + * 证书有效期 + */ + private String endDate; + /** + * 附件 + */ + private List files = new ArrayList<>(); + private List files2 = new ArrayList<>(); + /** + * 备案有效期 + */ + private String filingIndate; + /** + * 备案类别,默认赋值"首次" + */ + private String filingType; + /** + * 证书号码 + */ + private String idnumber; + /** + * 流程实例ID + */ + private String instanceId; + private String procInsId; + /** + * 联系电话 + */ + private String mobile; + /** + * 省 + */ + private String province; + /** + * 已备人数,首次备案默认为空 + */ + private String readyStrength; + /** + * 已备车辆,首次备案默认为空 + */ + private String readyVehicle; + /** + * 备注 + */ + private String remarks; + private String sid; + /** + * 流程ID + */ + private String taskId; + /** + * 分公司 + */ + private String useOrgName; + /** + * 分公司sid + */ + private String useOrgSid; + /** + * 微信号 + */ + private String weixin; + + + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordDto.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordDto.java new file mode 100644 index 0000000000..6e2ae36544 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordDto.java @@ -0,0 +1,200 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord; + + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordDto.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordDto
+ * Description: 定点企业备案 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案 数据传输对象", description = "定点企业备案 数据传输对象") +public class CrmMaintenanceenterpriseRecordDto implements Dto { + + + /** + * 客户sid + */ + private String customerSid; + /** + * 详细地址 + */ + private String address; + /** + * 车辆列表 + */ + private List carList = new ArrayList<>(); + /** + * 证件类型 + */ + private String certificateType; + /** + * 证件类型Key + */ + private String certificateTypeKey; + /** + * 市 + */ + private String city; + /** + * 对接人列表 + */ + private List contactPerson = new ArrayList<>(); + /** + * 县 + */ + private String county; + /** + * 申请人 + */ + private String createByName; + /** + * 申请人sid + */ + private String createBySid; + /** + * 分公司 + */ + private String createOrgName; + /** + * 分公司sid + */ + private String createOrgSid; + /** + * 申请日期 + */ + private String createTime; + /** + * 客户名称 + */ + private String customerName; + /** + * 客户类型 + */ + private String customerType; + /** + * 客户类型Key + */ + private String customerTypeKey; + /** + * 申请部门 + */ + private String deptName; + /** + * 申请部门sid + */ + private String deptSid; + /** + * 电子邮箱 + */ + private String eMail; + /** + * 紧急联系人 + */ + private String emergencyContact; + /** + * 紧急联系电话 + */ + private String emergencyMobile; + /** + * 证书有效期 + */ + private String endDate; + /** + * 附件 + */ + private List files = new ArrayList<>(); + /** + * 备案有效期 + */ + private String filingIndate; + /** + * 备案类别,默认赋值"首次" + */ + private String filingType; + /** + * 证书号码 + */ + private String idnumber; + /** + * 流程实例ID + */ + private String instanceId; + /** + * 联系电话 + */ + private String mobile; + /** + * 省 + */ + private String province; + /** + * 已备人数,首次备案默认为空 + */ + private String readyStrength; + /** + * 已备车辆,首次备案默认为空 + */ + private String readyVehicle; + /** + * 备注 + */ + private String remarks; + private String sid; + /** + * 流程ID + */ + private String taskId; + /** + * 分公司 + */ + private String useOrgName; + /** + * 分公司sid + */ + private String useOrgSid; + /** + * 微信号 + */ + private String weixin; + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordFeignFallback.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordFeignFallback.java new file mode 100644 index 0000000000..571837a700 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordFeignFallback.java @@ -0,0 +1,123 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord; + +import com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.flowable.*; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordFeignFallback.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordFeignFallback
+ * Description: 定点企业备案.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Component +public class CrmMaintenanceenterpriseRecordFeignFallback implements YxtCrmMaintenanceenterpriseRecordFeign { + + @Override + public ResultBean> listPage(PagerQuery pq){ + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口crm/crmmaintenanceenterpriserecord/listPage无法访问"); + } + + @Override + public ResultBean save(CrmMaintenanceenterpriseRecordDto dto){ + return ResultBean.fireFail().setMsg("接口crm/crmmaintenanceenterpriserecord/save无法访问"); + } + + @Override + public ResultBean delBySids( String[] sids){ + return ResultBean.fireFail().setMsg("接口crm/crmmaintenanceenterpriserecord/delBySids无法访问"); + } + + @Override + public ResultBean init(String sid) { + return null; + } + + @Override + public ResultBean fetchDetailsBySid(String sid){ + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口crm/crmmaintenanceenterpriserecord/fetchDetailsBySid无法访问"); + } + + @Override + public ResultBean submitRecordApplication(SubmitEnterpriseDto dto) { + return null; + } + + @Override + public ResultBean complete(EnterpriseCompleteDto dto) { + return null; + } + + @Override + public ResultBean revokeProcess(EnterpriseTaskQuery query) { + return null; + } + + @Override + public ResultBean taskReject(EnterpriseTaskQuery query) { + return null; + } + + @Override + public ResultBean breakProcess(EnterpriseTaskQuery query) { + return null; + } + + @Override + public ResultBean flowRecord(String procInsId) { + return null; + } + + @Override + public ResultBean> getNextNodesForSubmit(EnterpriseNodeQuery query) { + return null; + } + + @Override + public ResultBean> getPreviousNodesForReject(EnterpriseNodeQuery query) { + return null; + } + + @Override + public ResultBean delegate(EnterpriseDelegateQuery query) { + return null; + } +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordQuery.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordQuery.java new file mode 100644 index 0000000000..6c927d19ae --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordQuery.java @@ -0,0 +1,69 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord; + + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModel; +import lombok.Data; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordQuery.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordQuery
+ * Description: 定点企业备案 查询条件.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案 查询条件", description = "定点企业备案 查询条件") +public class CrmMaintenanceenterpriseRecordQuery implements Query { + + private String billNo; + private String closingDateEnd; + private String closingDateStart; + private String createByName; + private String createEndTime; + private String createOrgName; + private String createStartTime; + private String customerName; + private String customerTypeKey; + private String deptName; + private String menuUrl; + private String mobile; + private String orgPath; + /** + * 是否有效 1是0否 + */ + private String state; + private String userSid; + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordVo.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordVo.java new file mode 100644 index 0000000000..191521ca82 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/CrmMaintenanceenterpriseRecordVo.java @@ -0,0 +1,110 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordVo.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordVo
+ * Description: 定点企业备案 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案 视图数据对象", description = "定点企业备案 视图数据对象") +public class CrmMaintenanceenterpriseRecordVo implements Vo { + + /** + * 单据编号 + */ + private String billNo; + /** + * 办结日期 + */ + private String closingDate; + /** + * 申请人 + */ + private String createByName; + /** + * 申请日期 + */ + private String createTime; + /** + * 客户名称 + */ + private String customerName; + /** + * 客户类型 + */ + private String customerTypeValue; + /** + * 申请部门 + */ + private String deptName; + /** + * 备案有效期 + */ + private String filingIndate; + /** + * 备案有效期是否已过,1是0否 + */ + private String isFilingIndate; + /** + * 联系电话 + */ + private String mobile; + /** + * 流程状态 + */ + private String nodeState; + /** + * 流程定义ID + */ + private String procDefId; + /** + * 流程实例ID + */ + private String procInstId; + private String sid; + /** + * 分公司 + */ + private String useOrgName; + @ApiModelProperty("备案类别") + private String filingType; // 备案类别 +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/FileQueryUrl.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/FileQueryUrl.java new file mode 100644 index 0000000000..07a61e7217 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/FileQueryUrl.java @@ -0,0 +1,15 @@ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord; + +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/22 14:35 + */ +@Data +public class FileQueryUrl { + + private String url; + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/PersonListVo.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/PersonListVo.java new file mode 100644 index 0000000000..e7075c61a7 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/PersonListVo.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/22 14:42 + */ +@Data +public class PersonListVo { + + /** + * 手机号码 + */ + private String mobile; + /** + * 姓名 + */ + private String name; + /** + * 备注 + */ + private String remarks; + private String sid; + + @ApiModelProperty("对接人员sid") + private String personSid; // 对接人员sid + + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/YxtCrmMaintenanceenterpriseRecordFeign.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/YxtCrmMaintenanceenterpriseRecordFeign.java new file mode 100644 index 0000000000..5fa5172cb3 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/YxtCrmMaintenanceenterpriseRecordFeign.java @@ -0,0 +1,128 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord; + +import com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.flowable.*; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordFeign.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordFeign
+ * Description: 定点企业备案.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "定点企业备案") +@FeignClient( + contextId = "yxt-crm-CrmMaintenanceenterpriseRecord", + name = "yxt-crm", + path = "v1/maintenanceEnterprise", + fallback = CrmMaintenanceenterpriseRecordFeignFallback.class) +public interface YxtCrmMaintenanceenterpriseRecordFeign { + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + @ResponseBody + public ResultBean> listPage(@RequestBody PagerQuery pq); + + @ApiOperation("新增或修改") + @PostMapping("/save") + @ResponseBody + public ResultBean save(@RequestBody CrmMaintenanceenterpriseRecordDto dto); + + @ApiOperation("根据sid删除记录") + @DeleteMapping("/delBySids") + @ResponseBody + public ResultBean delBySids(@RequestBody String[] sids); + + @ApiOperation("新增初始化") + @GetMapping("/init") + @ResponseBody + public ResultBean init(@RequestParam("sid") String sid); + + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchDetailsBySid/{sid}") + @ResponseBody + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid); + + + //------------------------------流程接口---------------------------------------------- + + @ApiOperation("提交") + @PostMapping("/submit") + public ResultBean submitRecordApplication(@RequestBody @Valid SubmitEnterpriseDto dto); + + @ApiOperation(value = "办理(同意)") + @PostMapping("/complete") + public ResultBean complete(@Valid @RequestBody EnterpriseCompleteDto dto); + + @ApiOperation(value = "撤回流程") + @PostMapping(value = "/revokeProcess") + public ResultBean revokeProcess(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody EnterpriseTaskQuery query); + + @ApiOperation(value = "驳回任务") + @PostMapping(value = "/reject") + public ResultBean taskReject(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody EnterpriseTaskQuery query); + + @ApiOperation(value = "终止任务") + @PostMapping(value = "/breakProcess") + public ResultBean breakProcess(@RequestBody EnterpriseTaskQuery query); + + @ApiOperation(value = "流程历史流转记录") + @GetMapping(value = "/task/flowRecord/{procInsId}/{deployId}") + public ResultBean flowRecord(@ApiParam(value = "流程实例id") @PathVariable(value = "procInsId") String procInsId); + + @ApiOperation(value = "获取下一个环节") + @GetMapping(value = "/getNextNodesForSubmit") + ResultBean> getNextNodesForSubmit(@Valid @SpringQueryMap EnterpriseNodeQuery query); + + @ApiOperation(value = "获取上一个环节") + @GetMapping(value = "/getPreviousNodesForReject") + ResultBean> getPreviousNodesForReject(@Valid @SpringQueryMap EnterpriseNodeQuery query); + + @ApiOperation(value = "加签") + @PostMapping(value = "/delegate") + public ResultBean delegate(@RequestBody EnterpriseDelegateQuery query); + + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseCompleteDto.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseCompleteDto.java new file mode 100644 index 0000000000..fc7ec03ea6 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseCompleteDto.java @@ -0,0 +1,37 @@ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.flowable; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/9/6 14:57 + * @Description + */ +@Data +public class EnterpriseCompleteDto implements Dto { + private static final long serialVersionUID = 6378752532534735663L; + + @ApiModelProperty(value = "用户sid") + private String userSid; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id(PC)") + private String instanceId; + @ApiModelProperty(value = "流程id(移动)") + private String procInsId; + @ApiModelProperty(value = "意见") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + + private String orgPath; +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseDelegateQuery.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseDelegateQuery.java new file mode 100644 index 0000000000..014d5a0a4e --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseDelegateQuery.java @@ -0,0 +1,26 @@ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.flowable; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/28 9:28 + */ +@Data +public class EnterpriseDelegateQuery { + @ApiModelProperty + private String userSid; + @ApiModelProperty("流程实例id") +// @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty("任务Id") + private String taskId; + @ApiModelProperty("审批人sid") + private String assignee; + @ApiModelProperty("填写意见") + private String views; + + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseNodeQuery.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseNodeQuery.java new file mode 100644 index 0000000000..592a1bcd82 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseNodeQuery.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/9/6 15:04 + * @Description + */ +@Data +public class EnterpriseNodeQuery implements Query { + private static final long serialVersionUID = 9117613683840483366L; + + @ApiModelProperty(value = "环节定义id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + @ApiModelProperty(value = "业务sid") + private String businessSid; + @ApiModelProperty(value = "0 上一环节 1下一环节") + private Integer next; +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseNodeVo.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseNodeVo.java new file mode 100644 index 0000000000..bfcfb7bcc5 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseNodeVo.java @@ -0,0 +1,26 @@ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.flowable; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/9/6 15:03 + * @Description + */ +@Data +public class EnterpriseNodeVo implements Vo { + private static final long serialVersionUID = -833419512294877848L; + + @ApiModelProperty(value = "节点名称") + private String name; + @ApiModelProperty(value = "节点id") + private String id; + @ApiModelProperty(value = "审批组") + private List candidateGroups; + @ApiModelProperty(value = "是否是最后环节") + private String endTask; +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseTaskQuery.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseTaskQuery.java new file mode 100644 index 0000000000..88f882f037 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/EnterpriseTaskQuery.java @@ -0,0 +1,48 @@ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/9/6 15:06 + * @Description + */ +@Data +public class EnterpriseTaskQuery implements Query { + private static final long serialVersionUID = 1288615499873178778L; + + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回、驳回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id(PC)") + private String instanceId; + + @ApiModelProperty("流程实例Id(移动)") + private String procInsId; +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/SubmitEnterpriseDto.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/SubmitEnterpriseDto.java new file mode 100644 index 0000000000..2f74b2b66a --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/crmMaintenanceenterpriseRecord/flowable/SubmitEnterpriseDto.java @@ -0,0 +1,24 @@ +package com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.flowable; + +import com.yxt.anrui.terminal.fegin.crmMaintenanceenterpriseRecord.CrmMaintenanceenterpriseRecordDto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author liuguohui + * @version 1.0 + * @description + * @date 2022/04/13 + */ +@ApiModel("提交") +@Data +public class SubmitEnterpriseDto extends CrmMaintenanceenterpriseRecordDto { + + @ApiModelProperty("意见") + private String comment; + @ApiModelProperty("流程实例id") + private String instanceId; + @ApiModelProperty("任务id") + private String taskId; +} diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDetailsVo.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDetailsVo.java index 8fc427e34b..e13ef6d392 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDetailsVo.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDetailsVo.java @@ -149,6 +149,8 @@ public class AsBusrepairBillDetailsVo implements Vo { private String oil; @ApiModelProperty("当前里程(本次里程)") private String currentMileage; + @ApiModelProperty("客户车辆sid") + private String customerVehicleSid; private InvoiceVo invoiceVo = new InvoiceVo(); //发票信息 private InsuranceVo insuranceVo = new InsuranceVo();//保险信息 private OtherVo otherVo = new OtherVo();//送修人信息 diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDto.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDto.java index 15191ceef9..69213dfccc 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDto.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDto.java @@ -147,6 +147,8 @@ public class AsBusrepairBillDto implements Dto { private String mileage; @ApiModelProperty("油量(空、小于1/4、1/4、1/2、3/4、满)") private String oil; + @ApiModelProperty("客户车辆sid") + private String customerVehicleSid; @ApiModelProperty("当前里程(本次里程)") private String currentMileage; private InvoiceVo invoiceVo = new InvoiceVo(); //发票信息 diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbillvech/AsBusrepairBillVech.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbillvech/AsBusrepairBillVech.java index 520c8ff64a..fda74a63b8 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbillvech/AsBusrepairBillVech.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbillvech/AsBusrepairBillVech.java @@ -19,6 +19,8 @@ public class AsBusrepairBillVech extends BaseEntity { @ApiModelProperty("工单sid") private String billSid; + @ApiModelProperty("客户车辆sid") + private String customerVehicleSid; @ApiModelProperty("客户sid") private String customerSid; @ApiModelProperty("车牌号") diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerCrmVehVo.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerCrmVehVo.java index cd5183c635..95f3855c49 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerCrmVehVo.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerCrmVehVo.java @@ -25,7 +25,8 @@ public class AsCustomerCrmVehVo implements Vo { private String salesCompany; // 销售公司 @ApiModelProperty("客户名称") private String customerName; // 客户名称 - + @ApiModelProperty("客户车辆sid") + private String customerVehicleSid; @ApiModelProperty("车型") private String vehModel; // 客户名称 @ApiModelProperty("来源") diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerVehicle.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerVehicle.java index c8c2f6e1cb..c14f226e2f 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerVehicle.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerVehicle.java @@ -54,6 +54,8 @@ public class AsCustomerVehicle extends BaseEntity { @ApiModelProperty("客户sid") private String customerSid; // 客户sid + @ApiModelProperty("销售公司") + private String saleOrgName; // 销售公司名称-集团销售时有值 @ApiModelProperty("车牌号") private String vehMark; // 车牌号 @ApiModelProperty("车架号") @@ -71,6 +73,8 @@ public class AsCustomerVehicle extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") @ApiModelProperty("下次保养日期") private Date nextMaintainDate; // 下次保养日期 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private Date saleDate; // 销售日期-集团销售时有值 @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") @ApiModelProperty("购车日期") private Date buyDate; // 购车日期 diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java index b909680c11..8f724dfa7e 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java @@ -350,6 +350,9 @@ public class AsBusrepairBillService extends MybatisBaseService diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/ascustomervehicle/AsCustomerVehicleService.java b/yxt-as/src/main/java/com/yxt/anrui/as/biz/ascustomervehicle/AsCustomerVehicleService.java index e072fedcb8..07f20bc089 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/ascustomervehicle/AsCustomerVehicleService.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/ascustomervehicle/AsCustomerVehicleService.java @@ -236,12 +236,7 @@ public class AsCustomerVehicleService extends MybatisBaseService 4) { - qw.like("v.vinNo", query.getVinNo()); - } - } - qw.orderByDesc("v.id"); + qw.orderByDesc("c.sid"); IPage page = PagerUtil.queryToPage(pq); IPage pagging = baseMapper.customerList(page, qw); PagerVo p = PagerUtil.pageToVo(pagging, null); diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmCustomerRest.java b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmCustomerRest.java index f5aa1d3486..57b883b2c1 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmCustomerRest.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmCustomerRest.java @@ -33,9 +33,11 @@ import com.yxt.crm.biz.crmcustomerorg.CrmCustomerOrgQuery; import com.yxt.crm.biz.crmcustomerorg.CrmCustomerOrgVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import javax.validation.Valid; import java.util.List; /** @@ -77,12 +79,16 @@ public class CrmCustomerRest { } - @ApiOperation("新增或修改") + /** + * pc端潜在客户新增保存 + * + * @param dto 客户信息及运行信息数据传输对象 + * @return + */ + @ApiOperation("新增保存") @PostMapping("/save") - public ResultBean save(@RequestBody CrmCustomerDto dto) { - ResultBean rb = ResultBean.fireFail(); - crmCustomerService.saveOrUpdateDto(dto); - return rb.success(); + public ResultBean save(@Valid @RequestBody CrmCustomerDto dto) { + return crmCustomerService.saveCrmCustomer(dto); } @@ -102,4 +108,81 @@ public class CrmCustomerRest { CrmCustomerDetailsVo vo = crmCustomerService.fetchDetailsVoBySid(sid); return rb.success().setData(vo); } + + + @ApiOperation("根据车架号初始化客户新增页面") + @PostMapping("/customerInit") + public ResultBean customerInit(@RequestBody CustomerInitQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isNotBlank(query.getVinNo())) { + String vinNo = query.getVinNo(); + if (vinNo.length() != 8 || vinNo.length() != 17) { + return rb.setMsg("请填写8位或17位车架号!"); + } + } + CrmCustomerDto vo = crmCustomerService.customerInit(query); + return rb.success().setData(vo); + } + + /** + * pc潜在客户的编辑回显 + * + * @param sid + * @return + */ + @ApiOperation("获取一条记录") + @GetMapping("/fetchSid/{sid}") + public ResultBean fetchSid(@PathVariable("sid") String sid){ + ResultBean rb = ResultBean.fireFail(); + CrmCustomer customerTemp = crmCustomerService.fetchBySid(sid); + if (customerTemp == null) { + return rb.setMsg("该客户不存在"); + } + CrmCustomerVo vo = crmCustomerService.fetchAllBySid(sid); + return rb.success().setData(vo); + } + + /** + * pc端潜在客户编辑保存 + * + * @param dto 数据传输对象 + * @param sid 潜在客户sid + * @return + */ + @ApiOperation("修改保存") + @PostMapping("/update/{sid}") + public ResultBean update(@RequestBody CrmCustomerUpdateDto dto, @PathVariable("sid") String sid){ + ResultBean rb = ResultBean.fireFail(); + String weixin = dto.getWeixin(); + if (StringUtils.isNotBlank(weixin)) { + if (!weixin.matches("^[a-zA-Z]{1}[-_a-zA-Z0-9]{5,19}$") && !weixin.matches("^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\\d{8}$")) { + return rb.setMsg("微信号格式不正确"); + } + } + String email = dto.getE_mail(); + if (StringUtils.isNotBlank(email)) { + if (!email.matches("^[0-9A-Za-z][\\.-_0-9A-Za-z]*@[0-9A-Za-z]+(?:\\.[0-9A-Za-z]+)+$")) { + return rb.setMsg("邮箱格式不正确"); + } + } + ResultBean resultBean = crmCustomerService.updateCrmCustomer(dto, sid); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setMsg(resultBean.getMsg()); + } + + /** + * 售后客户管理分页列表 + * + * @param pq + * @return + */ + @ApiOperation("售后客户管理分页列表") + @PostMapping("/asListPage") + public ResultBean> asListPage(PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = crmCustomerService.asListPage(pq); + return rb.success().setData(pv); + } } diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmDockingPeopleRest.java b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmDockingPeopleRest.java new file mode 100644 index 0000000000..696cc204b7 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmDockingPeopleRest.java @@ -0,0 +1,116 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.apiadmin; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.crm.biz.crmdockingpeople.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * Project: anrui-crm(crm)
+ * File: CrmDockingPeopleFeignFallback.java
+ * Class: com.yxt.anrui.crm.biz.crmdockingpeople.CrmDockingPeopleRest
+ * Description: 定点企业对接人信息.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 17:21:58
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "定点企业对接人信息") +@RestController +@RequestMapping("v1/crmdockingpeople") +public class CrmDockingPeopleRest{ + + @Autowired + private CrmDockingPeopleService crmDockingPeopleService; + + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq){ + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = crmDockingPeopleService.listPageVo(pq); + return rb.success().setData(pv); + } + + + @ApiOperation("新增或修改") + @PostMapping("/save") + public ResultBean save(@RequestBody CrmDockingPeopleDto dto){ + ResultBean rb = ResultBean.fireFail(); + crmDockingPeopleService.saveOrUpdateDto(dto); + return rb.success(); + } + + + @ApiOperation("根据sid批量删除") + @PostMapping("/delBySids") + public ResultBean delBySids(@RequestBody String[] sids){ + ResultBean rb = ResultBean.fireFail(); + crmDockingPeopleService.delBySids(sids); + return rb.success(); + } + + + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchDetailsBySid/{sid}") + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid){ + ResultBean rb = ResultBean.fireFail(); + CrmDockingPeopleDetailsVo vo = crmDockingPeopleService.fetchDetailsVoBySid(sid); + return rb.success().setData(vo); + } + + @ApiOperation("对接人批量禁用") + @PostMapping("/disableState") + public ResultBean disableState(String[] sid) { + return crmDockingPeopleService.disableState(sid); + } + + @ApiOperation("对接人批量启用") + @PostMapping("/enable") + public ResultBean enable(String[] sid) { + return crmDockingPeopleService.enable(sid); + } + + @ApiOperation("根据客户SID获取一条记录") + @GetMapping("/getListByCustomerSid") + @ResponseBody + public ResultBean> getListByCustomerSid(String customerSid) { + ResultBean rb = ResultBean.fireFail(); + List list = crmDockingPeopleService.getListByCustomerSid(customerSid); + return rb.success().setData(list); + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmFileRest.java b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmFileRest.java new file mode 100644 index 0000000000..45ac0f398f --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmFileRest.java @@ -0,0 +1,112 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.apiadmin; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.crm.biz.crmfile.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + * Project: anrui-crm(客户信息)
+ * File: CrmFileFeignFallback.java
+ * Class: com.yxt.anrui.crm.biz.crmfile.CrmFileRest
+ * Description: 客户资料表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-01-24 09:15:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "客户资料表") +@RestController +@RequestMapping("v1/crmfile") +public class CrmFileRest { + + @Autowired + private CrmFileService crmFileService; + + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + IPage page = crmFileService.listPageVo(pq); + PagerVo pv = new PagerVo<>(); + PagerVo pv1 = PagerUtil.pageToVo(page, pv); + return rb.success().setData(pv1); + } + + + @ApiOperation("新增保存") + @PostMapping("/save") + public ResultBean save(@RequestBody CrmFileDto dto) { + ResultBean rb = ResultBean.fireFail(); + crmFileService.saveCrmFile(dto); + return rb.success(); + } + + @ApiOperation("修改保存") + @PostMapping("/update/{sid}") + public ResultBean update(@RequestBody CrmFileDto dto, @PathVariable("sid") String sid) { + ResultBean rb = ResultBean.fireFail(); + crmFileService.updateCrmFile(dto,sid); + return rb.success(); + } + + + @ApiOperation("根据sid批量删除") + @PostMapping("/delBySids") + public ResultBean delBySids(@RequestBody String[] sids) { + ResultBean rb = ResultBean.fireFail(); + crmFileService.delBySids(sids); + return rb.success(); + } + + + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchBySid/{sid}") + public ResultBean fetchBySid(@PathVariable("sid") String sid) { + ResultBean rb = ResultBean.fireFail(); + CrmFile vo = crmFileService.fetchBySid(sid); + return rb.success().setData(vo); + } + @ApiOperation(value = "移除文件") + @ApiImplicitParam(name = "fullPath", value = "文件全路径", required = true, dataTypeClass = String.class) + @PostMapping("/deleteFilesOss") + public ResultBean deleteFilesOss(@RequestParam(value = "fullPath") String fullPath) { + return crmFileService.deleteFilesOss(fullPath); + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterprisePersonRest.java b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterprisePersonRest.java new file mode 100644 index 0000000000..7f5448b211 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterprisePersonRest.java @@ -0,0 +1,104 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.apiadmin; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.crm.biz.crmmaintenanceenterpriseperson.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterprisePersonFeignFallback.java
+ * Class: com.yxt.anrui.crm.biz.crmmaintenanceenterpriseperson.CrmMaintenanceenterprisePersonRest
+ * Description: 定点企业备案-对接人员.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "定点企业备案-对接人员") +@RestController +@RequestMapping("v1/crmmaintenanceenterpriseperson") +public class CrmMaintenanceenterprisePersonRest{ + + @Autowired + private CrmMaintenanceenterprisePersonService crmMaintenanceenterprisePersonService; + + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq){ + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = crmMaintenanceenterprisePersonService.listPageVo(pq); + return rb.success().setData(pv); + } + + + @ApiOperation("新增或修改") + @PostMapping("/save") + public ResultBean save(@RequestBody CrmMaintenanceenterprisePersonDto dto){ + ResultBean rb = ResultBean.fireFail(); + crmMaintenanceenterprisePersonService.saveOrUpdateDto(dto); + return rb.success(); + } + + + @ApiOperation("根据sid批量删除") + @PostMapping("/delBySids") + public ResultBean delBySids(@RequestBody String[] sids){ + ResultBean rb = ResultBean.fireFail(); + crmMaintenanceenterprisePersonService.delBySids(sids); + return rb.success(); + } + + + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchDetailsBySid/{sid}") + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid){ + ResultBean rb = ResultBean.fireFail(); + CrmMaintenanceenterprisePersonDetailsVo vo = crmMaintenanceenterprisePersonService.fetchDetailsVoBySid(sid); + return rb.success().setData(vo); + } + + @ApiOperation("根据SID获取一条记录") + @GetMapping("/personList") + @ResponseBody + public ResultBean> personList(String sid) { + ResultBean rb = ResultBean.fireFail(); + List list = crmMaintenanceenterprisePersonService.personList(sid); + return rb.success().setData(list); + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterpriseRecordRest.java b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterpriseRecordRest.java new file mode 100644 index 0000000000..63bea29e40 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterpriseRecordRest.java @@ -0,0 +1,172 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.apiadmin; + +import cn.hutool.core.bean.BeanUtil; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.crm.biz.crmmaintenanceenterpriserecord.*; +import com.yxt.crm.biz.crmmaintenanceenterpriserecord.flowable.*; +import com.yxt.crm.feign.flowable.flow.BusinessVariables; +import com.yxt.crm.feign.flowable.flow.ProcDefEnum; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordFeignFallback.java
+ * Class: com.yxt.anrui.crm.biz.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordRest
+ * Description: 定点企业备案.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "定点企业备案") +@RestController +@RequestMapping("v1/maintenanceEnterprise") +public class CrmMaintenanceenterpriseRecordRest { + + @Autowired + private CrmMaintenanceenterpriseRecordService crmMaintenanceenterpriseRecordService; + + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + @ResponseBody + public ResultBean> listPage(@RequestBody PagerQuery pq){ + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = crmMaintenanceenterpriseRecordService.listPageVo(pq); + return rb.success().setData(pv); + } + + + @ApiOperation("新增或修改") + @PostMapping("/save") + @ResponseBody + public ResultBean save(@RequestBody CrmMaintenanceenterpriseRecordDto dto){ + ResultBean rb = ResultBean.fireFail(); + crmMaintenanceenterpriseRecordService.saveOrUpdateDto(dto); + return rb.success(); + } + + + @ApiOperation("根据sid删除记录") + @DeleteMapping("/delBySids") + @ResponseBody + public ResultBean delBySids(@RequestBody String[] sids){ + return crmMaintenanceenterpriseRecordService.deleteBySids(sids); + } + + @ApiOperation("新增初始化") + @GetMapping("/init") + @ResponseBody + public ResultBean init(@RequestParam("sid") String sid) { + return crmMaintenanceenterpriseRecordService.init(sid); + } + + + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchDetailsBySid/{sid}") + @ResponseBody + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid){ + ResultBean rb = ResultBean.fireFail(); + CrmMaintenanceenterpriseRecordDetailsVo vo = crmMaintenanceenterpriseRecordService.fetchDetailsVoBySid(sid); + return rb.success().setData(vo); + } + + + @ApiOperation("提交") + @PostMapping("/submit") + public ResultBean submitRecordApplication(@RequestBody @Valid SubmitEnterpriseDto dto) { + return crmMaintenanceenterpriseRecordService.submitRecordApplication(dto); + } + + @ApiOperation(value = "办理(同意)") + @PostMapping("/complete") + public ResultBean complete(@Valid @RequestBody EnterpriseCompleteDto dto){ + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(dto, bv); + bv.setModelId(ProcDefEnum.ENTERPRISEAPPLY.getProDefId()); + return crmMaintenanceenterpriseRecordService.complete(bv); + } + + + + @ApiOperation(value = "撤回流程") + @PostMapping(value = "/revokeProcess") + public ResultBean revokeProcess(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody EnterpriseTaskQuery query) { + return crmMaintenanceenterpriseRecordService.revokeProcess(query); + } + + @ApiOperation(value = "驳回任务") + @PostMapping(value = "/reject") + public ResultBean taskReject(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody EnterpriseTaskQuery query) { + return crmMaintenanceenterpriseRecordService.taskReject(query); + } + + @ApiOperation(value = "终止任务") + @PostMapping(value = "/breakProcess") + public ResultBean breakProcess(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody EnterpriseTaskQuery query) { + return crmMaintenanceenterpriseRecordService.breakProcess(query); + } + + @ApiOperation(value = "流程历史流转记录") + @GetMapping(value = "/task/flowRecord/{procInsId}/{deployId}") + public ResultBean flowRecord(@ApiParam(value = "流程实例id") @PathVariable(value = "procInsId") String procInsId) { + return crmMaintenanceenterpriseRecordService.flowRecord(procInsId); + } + + @ApiOperation(value = "获取下一个环节") + @GetMapping(value = "/getNextNodesForSubmit") + public ResultBean> getNextNodesForSubmit(@Valid @SpringQueryMap EnterpriseNodeQuery query) { + return crmMaintenanceenterpriseRecordService.getNextNodesForSubmit(query); + } + + @ApiOperation(value = "获取上一个环节") + @GetMapping(value = "/getPreviousNodesForReject") + public ResultBean> getPreviousNodesForReject(@Valid @SpringQueryMap EnterpriseNodeQuery query) { + return crmMaintenanceenterpriseRecordService.getPreviousNodesForReject(query); + } + + @ApiOperation(value = "加签") + @PostMapping(value = "/delegate") + public ResultBean delegate(@RequestBody EnterpriseDelegateQuery query) { + return crmMaintenanceenterpriseRecordService.delegate(query); + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterpriseVehRest.java b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterpriseVehRest.java new file mode 100644 index 0000000000..5988e5adcd --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/apiadmin/CrmMaintenanceenterpriseVehRest.java @@ -0,0 +1,93 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.apiadmin; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.crm.biz.crmmaintenanceenterpriseveh.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseVehFeignFallback.java
+ * Class: com.yxt.anrui.crm.biz.crmmaintenanceenterpriseveh.CrmMaintenanceenterpriseVehRest
+ * Description: 定点企业备案-车辆信息.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "定点企业备案-车辆信息") +@RestController +@RequestMapping("v1/crmmaintenanceenterpriseveh") +public class CrmMaintenanceenterpriseVehRest { + + @Autowired + private CrmMaintenanceenterpriseVehService crmMaintenanceenterpriseVehService; + + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq){ + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = crmMaintenanceenterpriseVehService.listPageVo(pq); + return rb.success().setData(pv); + } + + + @ApiOperation("新增或修改") + @PostMapping("/save") + public ResultBean save(@RequestBody CrmMaintenanceenterpriseVehDto dto){ + ResultBean rb = ResultBean.fireFail(); + crmMaintenanceenterpriseVehService.saveOrUpdateDto(dto); + return rb.success(); + } + + + @ApiOperation("根据sid批量删除") + @PostMapping("/delBySids") + public ResultBean delBySids(@RequestBody String[] sids){ + ResultBean rb = ResultBean.fireFail(); + crmMaintenanceenterpriseVehService.delBySids(sids); + return rb.success(); + } + + + @ApiOperation("根据SID获取一条记录") + @GetMapping("/fetchDetailsBySid/{sid}") + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid){ + ResultBean rb = ResultBean.fireFail(); + CrmMaintenanceenterpriseVehDetailsVo vo = crmMaintenanceenterpriseVehService.fetchDetailsVoBySid(sid); + return rb.success().setData(vo); + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/AsCustomerListQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/AsCustomerListQuery.java new file mode 100644 index 0000000000..87a5bb2fba --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/AsCustomerListQuery.java @@ -0,0 +1,35 @@ +package com.yxt.crm.biz.crmcustomer; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/6/3 13:42 + */ +@Data +public class AsCustomerListQuery implements Query { + @ApiModelProperty("客户名称") + private String name; + @ApiModelProperty("客户类型key(自然人/法人)") + private String customerTypeKey; + @ApiModelProperty("联系电话") + private String mobile; + @ApiModelProperty("客户级别(意向客户/准客户/成交客户/集团内销/黑名单客户)") + private String levelKey; + @ApiModelProperty("提醒开始日期") + private String remindStartDay; + @ApiModelProperty("提醒结束日期") + private String remindEndDay; + + @ApiModelProperty("全路径") + private String orgPath; + private String userSid; + @ApiModelProperty("菜单url") + private String menuUrl; + @ApiModelProperty("是否为定点企业 1是0否") + private String isDesignatedEnterprise; + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/AsCustomerListVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/AsCustomerListVo.java new file mode 100644 index 0000000000..6fc4bb5fe4 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/AsCustomerListVo.java @@ -0,0 +1,40 @@ +package com.yxt.crm.biz.crmcustomer; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/6/3 13:42 + */ +@Data +public class AsCustomerListVo implements Vo { + + @ApiModelProperty("潜在客户sid") + private String sid; + @ApiModelProperty("客户编号(部门编码+客户类型(1位,0个人,1企业)+部门内部流水号(6位))") + private String customerNo; + @ApiModelProperty("客户名称") + private String name; + @ApiModelProperty("客户类型(自然人/法人)") + private String customerType; + @ApiModelProperty("联系电话") + private String mobile; + @ApiModelProperty("微信号码") + private String weixin; + @ApiModelProperty("客户级别(意向客户/准客户/成交客户/集团内销/黑名单客户)") + private String level; + @ApiModelProperty("提醒日期") + private String remind_day; + private String vehCount; //车辆数量 + private String personCount; //对接人数量 + private String isDesignatedEnterprise; //是否为定点企业 1是0否 + private String filingIndate; //备案有效期 + private String isFilingIndate; //备案有效期是否已过 1是0否 + private String isEnable; //使用状态 1启用0禁用 + + + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomer.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomer.java index 202dc5a668..d10bb011cb 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomer.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomer.java @@ -31,6 +31,8 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.Date; + /** * Project: crm(crm)
* File: CrmCustomer.java
@@ -50,23 +52,145 @@ import lombok.Data; public class CrmCustomer extends BaseEntity { private static final long serialVersionUID = 1L; - @ApiModelProperty("客户名称") - private String name; // 客户名称 - @ApiModelProperty("客户编码") - private String customerNo; // 客户编码 - @ApiModelProperty("联系电话") - private String mobile; // 联系电话 - @ApiModelProperty("客户类型") - private String customerTypeKey; // 客户类型 - @ApiModelProperty("客户类型(个人、企业)") - private String customerType; // 客户类型(个人、企业) - @ApiModelProperty("所在单位sid") - private String orgSid; // 所在单位sid - @ApiModelProperty("所在单位") - private String orgName; // 所在单位 - @ApiModelProperty("使用组织sid") - private String useOrgSid; // 使用组织sid - @ApiModelProperty("创建组织sid") - private String createOrgSid; // 创建组织sid + @ApiModelProperty("客户编号(部门编码+客户类型(1位,0个人,1企业)+部门内部流水号(6位))") + private String customerNo; + + @ApiModelProperty("客户类型(自然人/法人)") + private String customerType; + + @ApiModelProperty("客户类型key") + private String customerTypeKey; + + @ApiModelProperty("客户分类(个人:司机/个体老板/其他。企业:企业型客户/一级经销商/二级经销商/终端物流客户)") + private String customerClass; + + @ApiModelProperty("客户分类key") + private String customerClassKey; + + @ApiModelProperty("客户来源(公司资源/自主开发/交接客户/转介绍客户/集团内销)") + private String source; + + @ApiModelProperty("客户来源key") + private String sourceKey; + + @ApiModelProperty("客户级别(意向客户/准客户/成交客户/集团内销/黑名单客户)") + private String level; + + @ApiModelProperty("客户级别key") + private String levelKey; + + @ApiModelProperty("客户名称") + private String name; + + @ApiModelProperty("证件类型key") + private String certificateTypeKey; + + @ApiModelProperty("证件类型(个人为身份证/企业为营业执照)") + private String certificateType; + + @ApiModelProperty("证件号码(个人为身份证号/企业为统一社会信用代码)") + private String IDNumber; + + @ApiModelProperty("证件有效期") + private String endDate; + + @ApiModelProperty("行政区划代码(省)") + private String address_province; + + @ApiModelProperty("行政区划代码(市)") + private String address_city; + + @ApiModelProperty("行政区划代码(县)") + private String address_county; + + @ApiModelProperty("省") + private String province; + + @ApiModelProperty("市") + private String city; + + @ApiModelProperty("县") + private String county; + + @ApiModelProperty("详细地址") + private String address; + + @ApiModelProperty("邮编") + private String zipCode; + + @ApiModelProperty("电子邮箱") + private String e_mail; + + @ApiModelProperty("联系人") + private String contacts; + + @ApiModelProperty("联系电话") + private String mobile; + + @ApiModelProperty("紧急联系电话") + private String emergencyContact; + + @ApiModelProperty("紧急联系电话") + private String emergencyMobile; + + @ApiModelProperty("微信号码") + private String weixin; + + @ApiModelProperty("业务人员sid") + private String staffSid; + + @ApiModelProperty("创建组织sid") + private String createOrgSid; + + @ApiModelProperty("创建部门sid") + private String useOrgSid; + + @ApiModelProperty("性别") + private String sex; + + @ApiModelProperty("性别key") + private String sexKey; + + @ApiModelProperty("生日") + private String birthday; + + @ApiModelProperty("所在公司名称") + private String companyName; + + @ApiModelProperty("跟进状态key") + private String follow_state_key; + + @ApiModelProperty("跟进状态") + private String follow_state; + + @ApiModelProperty("是否开启提醒key(1开启,0不开启)") + private String isOnRemindkey; + + @ApiModelProperty("是否开启提醒(1开启,0不开启)") + private String isOnRemind; + + @ApiModelProperty("提醒日期") + private String remind_day; + + @ApiModelProperty("提醒备注") + private String remind_remark; + + @ApiModelProperty("客户头像") + private String customerPhoto; + + @ApiModelProperty("见面方式key") + private String visitWayKey; + + @ApiModelProperty("见面方式(到店/电话/拜访)") + private String visitWay; + + @ApiModelProperty("证件地址") + private String certificateAddress; + + @ApiModelProperty("是否为定点企业(1是0否)") + private Integer isDesignatedEnterprise; + + @ApiModelProperty("定点企业备案有效期") + private Date filingIndate; } diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerDto.java index 7cab759339..a4164ce762 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerDto.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerDto.java @@ -32,6 +32,9 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; +import java.util.ArrayList; + /** * Project: crm(crm)
* File: CrmCustomerDto.java
@@ -49,25 +52,123 @@ import lombok.Data; @ApiModel(value = "客户 数据传输对象", description = "客户 数据传输对象") public class CrmCustomerDto implements Dto { - private String sid; // sid - - @ApiModelProperty("客户名称") - private String name; // 客户名称 - @ApiModelProperty("客户编码") - private String customerNo; // 客户编码 - @ApiModelProperty("联系电话") - private String mobile; // 联系电话 - @ApiModelProperty("客户类型") - private String customerTypeKey; // 客户类型 - @ApiModelProperty("客户类型(个人、企业)") - private String customerType; // 客户类型(个人、企业) - @ApiModelProperty("所在单位sid") - private String orgSid; // 所在单位sid - @ApiModelProperty("所在单位") - private String orgName; // 所在单位 - @ApiModelProperty("使用组织sid") - private String useOrgSid; // 使用组织sid - @ApiModelProperty("创建组织sid") - private String createOrgSid; // 创建组织sid - -} \ No newline at end of file + private static final long serialVersionUID = 793474187074718535L; + + @ApiModelProperty(value = "当前登录用户的sid") + private String userSid; + + @ApiModelProperty(value = "客户类型(1个人/2企业)", required = true) + @NotBlank(message = "客户类型为必选项") + private String customerType; + + @ApiModelProperty(value = "客户类型key", required = true) + @NotBlank(message = "客户类型为必选项") + private String customerTypeKey; + + @ApiModelProperty(value = "见面方式key", required = true) + @NotBlank(message = "见面方式为必选项") + private String visitWayKey; + + @ApiModelProperty(value = "见面方式(到店/电话/拜访)", required = true) + @NotBlank(message = "见面方式为必选项") + private String visitWay; + + @ApiModelProperty(value = "客户名称", required = true) + @NotBlank(message = "客户名称为必填项") + private String name; + + @ApiModelProperty("联系电话") + @NotBlank(message = "联系电话为必填项") + private String mobile; + + @ApiModelProperty("微信号码") + private String weixin; + + @ApiModelProperty("公司名称:个人客户时显示") + private String companyName; + + @ApiModelProperty("行政区划代码(省)") + private String address_province; + + @ApiModelProperty("行政区划代码(市)") + private String address_city; + @ApiModelProperty("行政区划代码(县)") + private String address_county; + @ApiModelProperty("客户地址:省") + private String province; + @ApiModelProperty("客户地址:市") + private String city; + @ApiModelProperty("客户地址:县") + private String county; + @ApiModelProperty("客户地址:详细地址") + private String address; + + @ApiModelProperty("客户级别(意向客户/准客户/成交客户/集团内销/黑名单客户)") + private String level; + @ApiModelProperty("客户级别key") + private String levelKey; + @ApiModelProperty("是否开启提醒(1开启,0不开启)") + private String isOnRemindkey; + @ApiModelProperty("是否开启提醒(1开启,0不开启)") + private String isOnRemind; + @ApiModelProperty("提醒日期") + private String remind_day; + @ApiModelProperty("提醒备注") + private String remind_remark; + //更多信息 + @ApiModelProperty("客户生日:个人客户时显示") + private String birthday; + @ApiModelProperty("性别:个人客户时显示") + private String sex; + @ApiModelProperty("性别key:个人客户时") + private String sexKey; + @ApiModelProperty("证件类型key") + private String certificateTypeKey; + @ApiModelProperty("证件类型(个人为身份证/企业为营业执照)") + private String certificateType; + @ApiModelProperty("证件号码(个人为身份证号/企业为统一社会信用代码)") + private String IDNumber; + @ApiModelProperty("证件有效期") + private String endDate; + @ApiModelProperty("电子邮箱") + private String e_mail; + @ApiModelProperty(value = "联系人") + private String contacts; + @ApiModelProperty("紧急联系人") + private String emergencyContact; + + @ApiModelProperty("紧急联系电话") + private String emergencyMobile; + + @ApiModelProperty("客户来源(公司资源/自主开发/交接客户/转介绍客户/集团内销)") + private String source; + + @ApiModelProperty("客户来源key") + private String sourceKey; + @ApiModelProperty("客户分类(个人:司机/个体老板/其他。企业:企业型客户/一级经销商/二级经销商/终端物流客户)") + private String customerClass; + @ApiModelProperty("客户分类key") + private String customerClassKey; + @ApiModelProperty(value = "备注") + private String remarks; + @ApiModelProperty("业务人员sid") + private String staffSid; + +// //运营信息 +// @ApiModelProperty(value = "运营信息") +// private CrmBusinessDto crmBusinessDto = new CrmBusinessDto(); +// //见证材料集合 +// @ApiModelProperty(value = "见证材料的集合,编辑保存时无此字段") +// private List crmVisitAppendixDtoList = new ArrayList<>(); + + + private String orgPath; + private String useOrgSid; + private String customerOrgSid; + private String customerOrgName; + + private String vinNo; + private String vehState; + private String saleOrgName; + private String saleDate; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerMapper.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerMapper.java index f40f42b8d4..7131f5d14d 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerMapper.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerMapper.java @@ -54,15 +54,19 @@ public interface CrmCustomerMapper extends BaseMapper { //@Update("update crm_customer set name=#{msg} where id=#{id}") //IPage voPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); - + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); - + List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); - + @Select("select * from crm_customer") List selectListVo(); List customerListPage(@Param(Constants.WRAPPER) QueryWrapper qw); List customerList(); -} \ No newline at end of file + + CrmCustomer selectByCustomerNo(String customerNo); + + IPage asListPage(IPage page, @Param(Constants.WRAPPER)QueryWrapper qw); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerMapper.xml b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerMapper.xml index f79bee4934..a162f44e70 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerMapper.xml +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerMapper.xml @@ -31,4 +31,30 @@ useOrgSid FROM crm_customer - \ No newline at end of file + + + + + diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerService.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerService.java index 6a4144df8f..f308daaa26 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerService.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerService.java @@ -26,11 +26,30 @@ package com.yxt.crm.biz.crmcustomer; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.common.base.utils.HanZiConverterPinYin; +import com.yxt.common.base.utils.HttpStatusEnum; +import com.yxt.crm.biz.crmcustomerorg.CrmCustomerOrg; +import com.yxt.crm.feign.anruicrm.crmcustomertemp.CrmCustomerTemp; +import com.yxt.crm.feign.anruicrm.crmcustomertemp.CrmCustomerTempFeign; import com.yxt.crm.feign.as.ascustomervehicle.AsCustomerCrmVehVo; +import com.yxt.crm.feign.as.ascustomervehicle.AsCustomerVehicleDto; import com.yxt.crm.feign.as.ascustomervehicle.AsCustomerVehicleFeign; +import com.yxt.crm.feign.base.basevehicleoutapply.BaseVehicleOutApplyFeign; +import com.yxt.crm.feign.bus.bussalesorder.BusSalesOrder; +import com.yxt.crm.feign.bus.bussalesorder.BusSalesOrderFeign; +import com.yxt.crm.feign.portal.dictcommon.DictCommonFeign; +import com.yxt.crm.feign.portal.dictcommon.DictCommonType; +import com.yxt.crm.feign.portal.privilege.PrivilegeQuery; +import com.yxt.crm.feign.portal.sysorganization.SysOrganizationFeign; +import com.yxt.crm.feign.portal.sysorganization.SysOrganizationVo; +import com.yxt.crm.feign.portal.sysstafforg.SysStaffOrg; import com.yxt.crm.feign.portal.sysstafforg.SysStaffOrgFeign; +import com.yxt.crm.feign.portal.sysuser.SysUserDto; +import com.yxt.crm.feign.portal.sysuser.SysUserFeign; +import com.yxt.crm.feign.portal.sysuser.SysUserVo; import org.apache.commons.lang3.StringUtils; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; @@ -38,6 +57,7 @@ import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -64,10 +84,22 @@ import java.util.stream.Collectors; @Service public class CrmCustomerService extends MybatisBaseService { + @Autowired + private BusSalesOrderFeign busSalesOrderFeign; + @Autowired + private CrmCustomerTempFeign crmCustomerTempFeign; + @Autowired + private BaseVehicleOutApplyFeign baseVehicleOutApplyFeign; + @Autowired + private DictCommonFeign dictCommonFeign; @Resource private AsCustomerVehicleFeign asCustomerVehicleFeign; @Autowired private SysStaffOrgFeign sysStaffOrgFeign; + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; private QueryWrapper createQueryWrapper(CrmCustomerQuery query) { // todo: 这里根据具体业务调整查询条件 @@ -85,14 +117,7 @@ public class CrmCustomerService extends MybatisBaseService asListPage(PagerQuery pq) { + AsCustomerListQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(query.getOrgPath()); + privilegeQuery.setMenuUrl(query.getMenuUrl()); + privilegeQuery.setUserSid(query.getUserSid()); + ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); + if (StringUtils.isNotBlank(query.getMenuUrl())) { + if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { + //数据权限ID(1集团、2事业部、3分公司、4部门、5个人) + String orgSidPath = query.getOrgPath(); + orgSidPath = orgSidPath + "/"; + int i1 = orgSidPath.indexOf("/"); + int i2 = orgSidPath.indexOf("/", i1 + 1); + int i3 = orgSidPath.indexOf("/", i2 + 1); + int i4 = orgSidPath.indexOf("/", i3 + 1); + String orgLevelKey = defaultIdReltBean.getData(); + if ("1".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i1); + qw.like("s.orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("s.orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("s.orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("s.orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("a.createBySid", query.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } + if (StringUtils.isNotBlank(query.getName())) { + qw.like("a.name", query.getName()); + } + if (StringUtils.isNotBlank(query.getCustomerTypeKey())) { + qw.eq("a.customerTypeKey", query.getCustomerTypeKey()); + } + if (StringUtils.isNotBlank(query.getMobile())) { + qw.like("a.mobile", query.getMobile()); + } + if (StringUtils.isNotBlank(query.getLevelKey())) { + qw.like("a.levelKey", query.getLevelKey()); + } + if (StringUtils.isNotBlank(query.getIsDesignatedEnterprise())) { + qw.eq("a.isDesignatedEnterprise", query.getIsDesignatedEnterprise()); + } + String remindStartDay = query.getRemindStartDay(); + String remindEndDay = query.getRemindEndDay(); + qw.apply(StringUtils.isNotBlank(remindStartDay), "date_format (a.remind_day,'%Y-%m-%d') >= date_format('" + remindStartDay + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(remindEndDay), "date_format (a.remind_day,'%Y-%m-%d') <= date_format('" + remindEndDay + "','%Y-%m-%d')" + ); + qw.apply("a.useOrgSid IS NOT NULL and a.useOrgSid != ''"); + qw.eq("a.isDelete", 0); + qw.orderByDesc("a.createTime"); + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.asListPage(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + + /** + * pc端潜在客户新增保存 + * + * @param dto 数据传输对象 + * state值:211:为当前用户的客户 + * @return + */ + public ResultBean saveCrmCustomer(CrmCustomerDto dto) { + ResultBean rb = ResultBean.fireFail(); + String sid = ""; + if (dto.getVehState().equals("0")) { + CrmCustomer crmCustomerTemp = new CrmCustomer(); + BeanUtil.copyProperties(dto,crmCustomerTemp); + String orgSid = ""; + if (StringUtils.isNotBlank(dto.getOrgPath())) { + orgSid = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()).getData(); + } else { + orgSid = sysStaffOrgFeign.getPathSidByUserSid(dto.getUserSid()).getData(); + } + crmCustomerTemp.setCreateOrgSid(orgSid); + ResultBean resultBean = dictCommonFeign.getFirstDictKeyByType(DictCommonType.FOLLOW_STATE, "0"); + if (resultBean.getSuccess() && resultBean.getData() != null) { + String key = resultBean.getData().toString(); + crmCustomerTemp.setFollow_state_key(key); + crmCustomerTemp.setFollow_state(dictCommonFeign.selectBykey(key, DictCommonType.FOLLOW_STATE).getData().getDictValue()); + } + //客户编码 + String customerNo = getPrefix(crmCustomerTemp.getStaffSid(), crmCustomerTemp.getName(), crmCustomerTemp.getMobile()); + crmCustomerTemp.setCustomerNo(customerNo); + if (StringUtils.isNotBlank(dto.getUseOrgSid())) { + crmCustomerTemp.setUseOrgSid(dto.getUseOrgSid()); + } + save(crmCustomerTemp); + sid = crmCustomerTemp.getSid(); + AsCustomerVehicleDto v = new AsCustomerVehicleDto(); + if (StringUtils.isNotBlank(dto.getVinNo())) { + v.setVinNo(dto.getVinNo()); + } + v.setCustomerSid(sid); + asCustomerVehicleFeign.save(v); + + } else { + //手机号 + String mobile = dto.getMobile(); + //微信号 + String weixin = dto.getWeixin(); + if ("1".equals(dto.getCustomerType())) { + /* if (!mobile.matches("^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\\d{8}$")) { + return rb.setMsg("手机号格式不正确"); + }*/ + /*if (StringUtils.isNotBlank(dto.getIDNumber())) { + if (!weixin.matches("^[1-9]\\d{5}(18|19|([23]\\d))\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$")) { + return rb.setMsg("证件号码格式不正确"); + } + }*/ + } else { + /*if (StringUtils.isNotBlank(dto.getIDNumber())) { + if (dto.getIDNumber().length() != 9 && dto.getIDNumber().length() != 18) { + return rb.setMsg("证件号码格式不正确"); + } + }*/ + } + if (StringUtils.isNotBlank(weixin)) { + if (!weixin.matches("^[a-zA-Z]{1}[-_a-zA-Z0-9]{5,19}$") && !weixin.matches("^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\\d{8}$")) { + return rb.setMsg("微信号格式不正确"); + } + } + String email = dto.getE_mail(); + if (StringUtils.isNotBlank(email)) { + if (!email.matches("^[0-9A-Za-z][\\.-_0-9A-Za-z]*@[0-9A-Za-z]+(?:\\.[0-9A-Za-z]+)+$")) { + return rb.setMsg("邮箱格式不正确"); + } + } + String emergencyMobile = dto.getEmergencyMobile(); + if (StringUtils.isNotBlank(emergencyMobile)) { + if (!emergencyMobile.matches("^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\\d{8}$")) { + return rb.setMsg("紧急联系电话格式不正确"); + } + } + //根据用户sid获取业务员信息 + SysUserVo sysUserVo = sysUserFeign.fetchBySid(dto.getUserSid()).getData(); + if (sysUserVo == null) { + return rb.setMsg("该用户不存在"); + } + String staffSid = sysUserVo.getStaffSid(); + String name = dto.getName(); + //生成客户编码:分公司简称+部门编码+手机号+姓名首字母大写拼写 + String customerNo = getPrefix(staffSid, name, mobile); + //查询该客户编码是否存在 + CrmCustomer crmCustomerTemp = baseMapper.selectByCustomerNo(customerNo); + if (crmCustomerTemp != null) {//存在 + //查询是否是当前用户客户 + if (!dto.getUserSid().equals(crmCustomerTemp.getCreateBySid())) { + String staffName = ""; + SysUserVo sysCrmVo = sysUserFeign.fetchBySid(crmCustomerTemp.getCreateBySid()).getData(); + if (sysCrmVo != null) { + staffName = sysCrmVo.getName(); + return rb.setCode(HttpStatusEnum.CRM_ERROR_NOTBELONG.getCode()).setMsg("为" + staffName + "销售专员客户"); + } + } else { + // 返回潜在客户sid,跳转维护信息页面 + return rb.setCode(HttpStatusEnum.CRM_ERROR_EXIST.getCode()).setMsg(HttpStatusEnum.CRM_ERROR_EXIST.getMsg()).setData(crmCustomerTemp.getSid()); + } + } else {//不存在 + // 新增 + CrmCustomer customerTemp = saveCrmCustomerTemp(dto, sysUserVo); + sid = customerTemp.getSid(); + } + } + + return rb.success().setData(sid); + } + + /** + * 新增潜在客户信息及运营信息并增加跟进记录 + * + * @param dto 潜在客户信息数据传输对象 + * @param sysUserInfoVo 当前登录者的组织信息 + * @return + */ + private CrmCustomer saveCrmCustomerTemp(CrmCustomerDto dto, SysUserVo sysUserInfoVo) { + CrmCustomer crmCustomerTemp = new CrmCustomer(); + dto.fillEntity(crmCustomerTemp); + crmCustomerTemp.setCreateBySid(dto.getUserSid()); + crmCustomerTemp.setStaffSid(sysUserInfoVo.getStaffSid()); + String orgSid = ""; + if (StringUtils.isNotBlank(dto.getOrgPath())) { + orgSid = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()).getData(); + } else { + orgSid = sysStaffOrgFeign.getPathSidByUserSid(dto.getUserSid()).getData(); + } + crmCustomerTemp.setCreateOrgSid(orgSid); + ResultBean resultBean = dictCommonFeign.getFirstDictKeyByType(DictCommonType.FOLLOW_STATE, "0"); + if (resultBean.getSuccess() && resultBean.getData() != null) { + String key = resultBean.getData().toString(); + crmCustomerTemp.setFollow_state_key(key); + crmCustomerTemp.setFollow_state(dictCommonFeign.selectBykey(key, DictCommonType.FOLLOW_STATE).getData().getDictValue()); + } + //客户编码 + String customerNo = getPrefix(crmCustomerTemp.getStaffSid(), crmCustomerTemp.getName(), crmCustomerTemp.getMobile()); + crmCustomerTemp.setCustomerNo(customerNo); + if (StringUtils.isNotBlank(dto.getUseOrgSid())) { + crmCustomerTemp.setUseOrgSid(dto.getUseOrgSid()); + } + save(crmCustomerTemp); + //创建客户账号中 + SysUserDto sysUserDto = new SysUserDto(); + sysUserDto.setMobile(dto.getMobile()); + sysUserDto.setUserType(2); + sysUserFeign.saveCustUser(sysUserDto); + return crmCustomerTemp; + + } + + + public String getPrefix(String staffSid, String name, String mobile) { + String customerNoPrefix = ""; + //查询业务员的分公司简称和部门编码 + ResultBean staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(staffSid); + if (staffOrgResultBean.getSuccess()) { + SysStaffOrg sysStaffOrg = staffOrgResultBean.getData(); + if (sysStaffOrg != null) { + ResultBean resultBean1 = sysStaffOrgFeign.getOrgSidByPath(sysStaffOrg.getOrgSidPath()); + if (resultBean1.getSuccess()) { + String osid = resultBean1.getData(); + if (StringUtils.isNotBlank(osid)) { + ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(osid); + if (sysOrganizationVoResultBean.getSuccess()) { + SysOrganizationVo sysOrganizationVo = sysOrganizationVoResultBean.getData(); + customerNoPrefix = customerNoPrefix + sysOrganizationVo.getOrgAbbre(); + } + } + } + String orgSid1 = sysStaffOrg.getOrgSid(); + ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(orgSid1); + if (sysOrganizationVoResultBean.getSuccess()) { + SysOrganizationVo sysOrganizationVo = sysOrganizationVoResultBean.getData(); + customerNoPrefix = customerNoPrefix + sysOrganizationVo.getOrgCode(); + } + } + } + customerNoPrefix = customerNoPrefix + mobile + HanZiConverterPinYin.getPinYinFirst(name); + System.out.println(customerNoPrefix.length() > 30 ? customerNoPrefix.substring(0, 30) : customerNoPrefix); + return customerNoPrefix.length() > 30 ? customerNoPrefix.substring(0, 30) : customerNoPrefix; + } + + public CrmCustomerVo fetchAllBySid(String sid) { + CrmCustomerVo vo = new CrmCustomerVo(); + CrmCustomer crmCustomerTemp = this.fetchBySid(sid); + BeanUtil.copyProperties(crmCustomerTemp, vo); + return vo; + } + + /** + * 潜在客户的信息的编辑保存 + * + * @param dto 数据传输对象 + * @param sid 潜在客户的sid + * @return + */ + public ResultBean updateCrmCustomer(CrmCustomerUpdateDto dto, String sid) { + ResultBean rb = ResultBean.fireFail(); + CrmCustomer customerTemp = fetchBySid(sid); + if (customerTemp == null) { + return rb.setMsg("该客户不存在"); + } + //对比客户名称以及手机号是否变化 + if (!customerTemp.getName().equals(dto.getName())) { + return rb.setMsg("客户名称不允许修改"); + } + if (!customerTemp.getMobile().equals(dto.getMobile())) { + return rb.setMsg("客户手机号不允许修改"); + } + BeanUtil.copyProperties(dto, customerTemp); + if (StringUtils.isNotBlank(dto.getUseOrgSid())) { + customerTemp.setUseOrgSid(dto.getUseOrgSid()); + } + baseMapper.updateById(customerTemp); + return rb.success(); + } + + public CrmCustomerDto customerInit(CustomerInitQuery query) { + CrmCustomerDto vo = new CrmCustomerDto(); + vo.setVehState("1"); + if (StringUtils.isNotBlank(query.getVinNo())) { + String vinNo = query.getVinNo(); + String orderSid = baseVehicleOutApplyFeign.selectSidByVinNo(vinNo).getData(); + if (StringUtils.isNotBlank(orderSid)) { + BusSalesOrder order = busSalesOrderFeign.fetchBySid(orderSid).getData(); + if (null != order) { + if (StringUtils.isNotBlank(order.getCustomerSid())) { + String customerSid = order.getCustomerSid(); + CrmCustomerTemp customerTemp = crmCustomerTempFeign.fetchEntity(customerSid).getData(); + if (null != customerTemp) { + BeanUtils.copyProperties(customerTemp,vo,"isDesignatedEnterprise","filingIndate"); + vo.setVehState("0"); + vo.setVinNo(vinNo); + vo.setSaleOrgName(order.getUseOrgName()); + vo.setSaleDate(DateUtil.formatDate(order.getCreateDate())); + } + } + } + } + } + vo.setUserSid(query.getUserSid()); + vo.setUseOrgSid(query.getUseOrgSid()); + vo.setOrgPath(query.getOrgPath()); + vo.setVisitWay(query.getVisitWay()); + vo.setVisitWayKey(query.getVisitWayKey()); + vo.setCustomerType(query.getCustomerType()); + vo.setCustomerTypeKey(query.getCustomerTypeKey()); + return vo; + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerUpdateDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerUpdateDto.java new file mode 100644 index 0000000000..f48e600702 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerUpdateDto.java @@ -0,0 +1,117 @@ +package com.yxt.crm.biz.crmcustomer; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Pattern; + +/** + * @author Fan + * @description + * @date 2024/10/28 10:09 + */ +@Data +public class CrmCustomerUpdateDto { + + private static final long serialVersionUID = -1744083007571476652L; + + @ApiModelProperty(value = "当前登录用户的sid") + private String userSid; + + @ApiModelProperty(value = "客户类型(个人/企业)", required = true) + @NotBlank(message = "客户类型为必选项") + private String customerType; + + @ApiModelProperty(value = "客户类型key", required = true) + @NotBlank(message = "客户类型为必选项") + private String customerTypeKey; + + @ApiModelProperty(value = "见面方式key", required = true) + @NotBlank(message = "见面方式为必选项") + private String visitWayKey; + + @ApiModelProperty(value = "见面方式(到店/电话/拜访)", required = true) + @NotBlank(message = "见面方式为必选项") + private String visitWay; + + @ApiModelProperty(value = "客户名称", required = true) + @NotBlank(message = "客户名称为必填项") + private String name; + + @ApiModelProperty("联系电话") + @NotBlank(message = "联系电话为必填项") + @Pattern(regexp = "^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|166|198|199|(147))\\d{8}$", message = "手机号码格式不正确") + private String mobile; + + @ApiModelProperty("微信号码") + private String weixin; + + @ApiModelProperty("公司名称:个人客户时显示") + private String companyName; + + @ApiModelProperty("行政区划代码(省)") + private String address_province; + + @ApiModelProperty("行政区划代码(市)") + private String address_city; + @ApiModelProperty("行政区划代码(县)") + private String address_county; + @ApiModelProperty("客户地址:省") + private String province; + @ApiModelProperty("客户地址:市") + private String city; + @ApiModelProperty("客户地址:县") + private String county; + @ApiModelProperty("客户地址:详细地址") + private String address; + + @ApiModelProperty("客户级别(意向客户/准客户/成交客户/集团内销/黑名单客户)") + private String level; + @ApiModelProperty("客户级别key") + private String levelKey; + //更多信息 + @ApiModelProperty("客户生日:个人客户时显示") + private String birthday; + @ApiModelProperty("性别:个人客户时显示") + private String sex; + @ApiModelProperty("性别key:个人客户时") + private String sexKey; + @ApiModelProperty("证件类型key") + private String certificateTypeKey; + @ApiModelProperty("证件类型(个人为身份证/企业为营业执照)") + private String certificateType; + @ApiModelProperty("证件号码(个人为身份证号/企业为统一社会信用代码)") + private String IDNumber; + @ApiModelProperty("证件有效期") + private String endDate; + @ApiModelProperty("电子邮箱") + private String e_mail; + @ApiModelProperty(value = "联系人") + private String contacts; + @ApiModelProperty("紧急联系人") + private String emergencyContact; + + @ApiModelProperty("紧急联系电话") + private String emergencyMobile; + + @ApiModelProperty("客户来源(公司资源/自主开发/交接客户/转介绍客户/集团内销)") + private String source; + + @ApiModelProperty("客户来源key") + private String sourceKey; + @ApiModelProperty("客户分类(个人:司机/个体老板/其他。企业:企业型客户/一级经销商/二级经销商/终端物流客户)") + private String customerClass; + @ApiModelProperty("客户分类key") + private String customerClassKey; + @ApiModelProperty(value = "备注") + private String remarks; + + private String orgPath; + private String useOrgSid; + private String customerOrgSid; + private String customerOrgName; +// //运营信息 +// @ApiModelProperty(value = "运营信息") +// private CrmBusinessDto crmBusinessDto = new CrmBusinessDto(); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerVo.java index 863ddda64e..88ece3ad77 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerVo.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerVo.java @@ -26,12 +26,15 @@ package com.yxt.crm.biz.crmcustomer; +import com.fasterxml.jackson.annotation.JsonFormat; import com.yxt.common.core.vo.Vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.Date; + /** * Project: crm(crm)
* File: CrmCustomerVo.java
@@ -49,25 +52,169 @@ import lombok.Data; @ApiModel(value = "客户 视图数据对象", description = "客户 视图数据对象") public class CrmCustomerVo implements Vo { - private String sid; // sid - - @ApiModelProperty("客户名称") - private String name; // 客户名称 - @ApiModelProperty("客户编码") - private String customerNo; // 客户编码 - @ApiModelProperty("联系电话") - private String mobile; // 联系电话 - @ApiModelProperty("客户类型") - private String customerTypeKey; // 客户类型 - @ApiModelProperty("客户类型(个人、企业)") - private String customerType; // 客户类型(个人、企业) - @ApiModelProperty("所在单位sid") - private String orgSid; // 所在单位sid - @ApiModelProperty("所在单位") - private String orgName; // 所在单位 - @ApiModelProperty("使用组织sid") - private String useOrgSid; // 使用组织sid - @ApiModelProperty("创建组织sid") - private String createOrgSid; // 创建组织sid + @ApiModelProperty("潜在客户sid") + private String sid; + + @ApiModelProperty("分公司名称") + private String createOrgName; + + @ApiModelProperty("业务员名称") + private String staffName; + + @ApiModelProperty("部门名称") + private String deptName; + + @ApiModelProperty("创建人sid") + private String createBySid; + + @ApiModelProperty("登记日期") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date createTime; + + @ApiModelProperty("客户编号(部门编码+客户类型(1位,0个人,1企业)+部门内部流水号(6位))") + private String customerNo; + + @ApiModelProperty("客户类型(自然人/法人)") + private String customerType; + + @ApiModelProperty("客户类型key") + private String customerTypeKey; + + @ApiModelProperty("客户分类(个人:司机/个体老板/其他。企业:企业型客户/一级经销商/二级经销商/终端物流客户)") + private String customerClass; + + @ApiModelProperty("客户分类key") + private String customerClassKey; + + @ApiModelProperty("客户来源(公司资源/自主开发/交接客户/转介绍客户/集团内销)") + private String source; + + @ApiModelProperty("客户来源key") + private String sourceKey; + + @ApiModelProperty("客户级别(意向客户/准客户/成交客户/集团内销/黑名单客户)") + private String level; + + @ApiModelProperty("客户级别key") + private String levelKey; + + @ApiModelProperty("客户名称") + private String name; + + @ApiModelProperty("证件类型key") + private String certificateTypeKey; + + @ApiModelProperty("证件类型(个人为身份证/企业为营业执照)") + private String certificateType; + + @ApiModelProperty("证件号码(个人为身份证号/企业为统一社会信用代码)") + private String IDNumber; + + @ApiModelProperty("证件有效期") + private String endDate; + + @ApiModelProperty("行政区划代码(省)") + private String address_province; + + @ApiModelProperty("行政区划代码(市)") + private String address_city; + + @ApiModelProperty("行政区划代码(县)") + private String address_county; + + @ApiModelProperty("省") + private String province; + + @ApiModelProperty("市") + private String city; + + @ApiModelProperty("县") + private String county; + + @ApiModelProperty("客户地址") + private String address; + + @ApiModelProperty("邮编") + private String zipCode; + + @ApiModelProperty("电子邮箱") + private String e_mail; + + @ApiModelProperty("联系人") + private String contacts; + + @ApiModelProperty("联系电话") + private String mobile; + + @ApiModelProperty("紧急联系电话") + private String emergencyContact; + + @ApiModelProperty("紧急联系电话") + private String emergencyMobile; + + @ApiModelProperty("微信号码") + private String weixin; + + @ApiModelProperty("业务人员sid") + private String staffSid; + + @ApiModelProperty("创建组织sid") + private String createOrgSid; + + @ApiModelProperty("性别") + private String sex; + + @ApiModelProperty("性别key") + private String sexKey; + + @ApiModelProperty("客户生日") + private String birthday; + + @ApiModelProperty("所在公司名称") + private String companyName; + + @ApiModelProperty("跟进状态key") + private String follow_state_key; + + @ApiModelProperty("跟进状态") + private String follow_state; + + @ApiModelProperty("是否开启提醒key(1开启,0不开启)") + private String isOnRemindkey; + + @ApiModelProperty("是否开启提醒(1开启,0不开启)") + private String isOnRemind; + + @ApiModelProperty("提醒日期") + private String remind_day; + + @ApiModelProperty("提醒备注") + private String remind_remark; + + @ApiModelProperty("客户头像") + private String customerPhoto; + + @ApiModelProperty("见面方式key") + private String visitWayKey; + + @ApiModelProperty("见面方式(到店/电话/拜访)") + private String visitWay; + + @ApiModelProperty("备注") + private String remarks; + + @ApiModelProperty("意向车型数量") + private String yxcounts; + + @ApiModelProperty("跟进记录数量") + private String gjcounts; + +// @ApiModelProperty("客户运营信息") +// private CrmBusinessVo crmBusinessVo; + + private String useOrgSid; + private String customerOrgSid; + private String customerOrgName; + } diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CustomerInitQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CustomerInitQuery.java new file mode 100644 index 0000000000..0be3e12914 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CustomerInitQuery.java @@ -0,0 +1,34 @@ +package com.yxt.crm.biz.crmcustomer; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @author Fan + * @description + * @date 2024/10/28 11:46 + */ +@Data +public class CustomerInitQuery { + private String vinNo; + private String userSid; + private String orgPath; + private String useOrgSid; + @ApiModelProperty(value = "客户类型(1个人/2企业)", required = true) + @NotBlank(message = "客户类型为必选项") + private String customerType; + + @ApiModelProperty(value = "客户类型key", required = true) + @NotBlank(message = "客户类型为必选项") + private String customerTypeKey; + + @ApiModelProperty(value = "见面方式key", required = true) + @NotBlank(message = "见面方式为必选项") + private String visitWayKey; + + @ApiModelProperty(value = "见面方式(到店/电话/拜访)", required = true) + @NotBlank(message = "见面方式为必选项") + private String visitWay; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeople.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeople.java new file mode 100644 index 0000000000..52a30453be --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeople.java @@ -0,0 +1,60 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmdockingpeople; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-crm(crm)
+ * File: CrmDockingPeople.java
+ * Class: com.yxt.anrui.crm.api.crmdockingpeople.CrmDockingPeople
+ * Description: 定点企业对接人信息.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 17:21:58
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业对接人信息", description = "定点企业对接人信息") +@TableName("crm_docking_people") +public class CrmDockingPeople extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("对接人") + private String name; // 对接人 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleDetailsVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleDetailsVo.java new file mode 100644 index 0000000000..c1c186a41f --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleDetailsVo.java @@ -0,0 +1,60 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmdockingpeople; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-crm(crm)
+ * File: CrmDockingPeopleVo.java
+ * Class: com.yxt.anrui.crm.api.crmdockingpeople.CrmDockingPeopleVo
+ * Description: 定点企业对接人信息 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 17:21:58
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业对接人信息 视图数据详情", description = "定点企业对接人信息 视图数据详情") +public class CrmDockingPeopleDetailsVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("对接人") + private String name; // 对接人 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleDto.java new file mode 100644 index 0000000000..d85bc962cc --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleDto.java @@ -0,0 +1,60 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmdockingpeople; + + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-crm(crm)
+ * File: CrmDockingPeopleDto.java
+ * Class: com.yxt.anrui.crm.api.crmdockingpeople.CrmDockingPeopleDto
+ * Description: 定点企业对接人信息 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 17:21:58
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业对接人信息 数据传输对象", description = "定点企业对接人信息 数据传输对象") +public class CrmDockingPeopleDto implements Dto { + + private String sid; // sid + + @ApiModelProperty("对接人") + private String name; // 对接人 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleMapper.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleMapper.java new file mode 100644 index 0000000000..79be95008f --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleMapper.java @@ -0,0 +1,69 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmdockingpeople; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +/** + * Project: anrui-crm(crm)
+ * File: CrmDockingPeopleMapper.java
+ * Class: com.yxt.anrui.crm.biz.crmdockingpeople.CrmDockingPeopleMapper
+ * Description: 定点企业对接人信息.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 17:21:58
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Mapper +public interface CrmDockingPeopleMapper extends BaseMapper { + + //@Update("update crm_docking_people set name=#{msg} where id=#{id}") + //IPage voPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); + + List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); + + @Select("select * from crm_docking_people") + List selectListVo(); + + List getListByCustomerSid(@Param("customerSid") String customerSid); + + @Delete("delete from crm_docking_people where customerSid = #{customerSid}") + void delByCustomerSid(String customerSid); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleMapper.xml b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleMapper.xml new file mode 100644 index 0000000000..5aa3b35370 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleMapper.xml @@ -0,0 +1,16 @@ + + + + + + + + + + diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleQuery.java new file mode 100644 index 0000000000..2ceb529e42 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleQuery.java @@ -0,0 +1,58 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmdockingpeople; + + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-crm(crm)
+ * File: CrmDockingPeopleQuery.java
+ * Class: com.yxt.anrui.crm.api.crmdockingpeople.CrmDockingPeopleQuery
+ * Description: 定点企业对接人信息 查询条件.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 17:21:58
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业对接人信息 查询条件", description = "定点企业对接人信息 查询条件") +public class CrmDockingPeopleQuery implements Query { + + @ApiModelProperty("对接人") + private String name; // 对接人 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleService.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleService.java new file mode 100644 index 0000000000..e700016903 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleService.java @@ -0,0 +1,132 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmdockingpeople; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * Project: anrui-crm(crm)
+ * File: CrmDockingPeopleService.java
+ * Class: com.yxt.anrui.crm.biz.crmdockingpeople.CrmDockingPeopleService
+ * Description: 定点企业对接人信息 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 17:21:58
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Service +public class CrmDockingPeopleService extends MybatisBaseService { + private QueryWrapper createQueryWrapper(CrmDockingPeopleQuery query) { + // todo: 这里根据具体业务调整查询条件 + // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName())); + QueryWrapper qw = new QueryWrapper<>(); + return qw; + } + + public PagerVo listPageVo(PagerQuery pq) { + CrmDockingPeopleQuery query = pq.getParams(); + QueryWrapper qw = createQueryWrapper(query); + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.selectPageVo(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public void saveOrUpdateDto(CrmDockingPeopleDto dto){ + String dtoSid = dto.getSid(); + if (StringUtils.isBlank(dtoSid)) { + this.insertByDto(dto); + return; + } + this.updateByDto(dto); + } + + public void insertByDto(CrmDockingPeopleDto dto){ + CrmDockingPeople entity = new CrmDockingPeople(); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.insert(entity); + } + + public void updateByDto(CrmDockingPeopleDto dto){ + String dtoSid = dto.getSid(); + if (StringUtils.isBlank(dtoSid)) { + return; + } + CrmDockingPeople entity = fetchBySid(dtoSid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } + + public CrmDockingPeopleDetailsVo fetchDetailsVoBySid(String sid){ + CrmDockingPeople entity = fetchBySid(sid); + CrmDockingPeopleDetailsVo vo = new CrmDockingPeopleDetailsVo(); + BeanUtil.copyProperties(entity, vo); + return vo; + } + + public ResultBean disableState(String[] sid) { + ResultBean rb = ResultBean.fireFail(); + for (String s : sid) { + CrmDockingPeople crmDockingPeople = fetchBySid(s); + crmDockingPeople.setIsEnable(0); + baseMapper.updateById(crmDockingPeople); + } + return rb.success(); + } + + public ResultBean enable(String[] sid) { + ResultBean rb = ResultBean.fireFail(); + for (String s : sid) { + CrmDockingPeople crmDockingPeople = fetchBySid(s); + crmDockingPeople.setIsEnable(1); + baseMapper.updateById(crmDockingPeople); + } + return rb.success(); + } + + public List getListByCustomerSid(String customerSid) { + return baseMapper.getListByCustomerSid(customerSid); + } + + public void delByCustomerSid(String customerSid) { + baseMapper.delByCustomerSid(customerSid); + } + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleVo.java new file mode 100644 index 0000000000..340c685a1e --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/CrmDockingPeopleVo.java @@ -0,0 +1,60 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmdockingpeople; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-crm(crm)
+ * File: CrmDockingPeopleVo.java
+ * Class: com.yxt.anrui.crm.api.crmdockingpeople.CrmDockingPeopleVo
+ * Description: 定点企业对接人信息 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 17:21:58
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业对接人信息 视图数据对象", description = "定点企业对接人信息 视图数据对象") +public class CrmDockingPeopleVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("对接人") + private String name; // 对接人 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/PeopleList.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/PeopleList.java new file mode 100644 index 0000000000..8f549b43ed --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmdockingpeople/PeopleList.java @@ -0,0 +1,20 @@ +package com.yxt.crm.biz.crmdockingpeople; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/31 14:33 + */ +@Data +public class PeopleList { + + private String sid; + @ApiModelProperty("对接人") + private String name; // 对接人 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + private String remarks; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFile.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFile.java new file mode 100644 index 0000000000..50113917e7 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFile.java @@ -0,0 +1,158 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmfile; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * Project: anrui-crm(客户信息)
+ * File: CrmFile.java
+ * Class: com.yxt.anrui.crm.api.crmfile.CrmFile
+ * Description: 客户资料表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-01-24 09:15:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "客户资料表", description = "客户资料表") +@TableName("crm_file") +public class CrmFile extends BaseEntity { + private static final long serialVersionUID = 1L; + + + @ApiModelProperty("文件名") + private String fileName; // 文件名 + @ApiModelProperty("文件类型") + private String fileType; // 文件类型 + @ApiModelProperty("上传人姓名") + private String name; // 上传人姓名 + @ApiModelProperty("关联业务对象sid") + private String linkSid; // 关联业务对象sid + @ApiModelProperty("附件类型") + private String attachType; // 附件类型 + @ApiModelProperty("文件大小") + private String fileSize; // 文件大小 + @ApiModelProperty("文件的相对路径") + private String filePath; // 文件的相对路径 + + /** + * @return 文件名 + */ + public String getFileName(){ + return fileName; + } + + /** + * @param fileName 文件名 to set + */ + public void setFileName(String fileName){ + this.fileName = fileName; + } + /** + * @return 文件类型 + */ + public String getFileType(){ + return fileType; + } + + /** + * @param fileType 文件类型 to set + */ + public void setFileType(String fileType){ + this.fileType = fileType; + } + /** + * @return 上传人姓名 + */ + public String getName(){ + return name; + } + + /** + * @param name 上传人姓名 to set + */ + public void setName(String name){ + this.name = name; + } + /** + * @return 关联业务对象sid + */ + public String getLinkSid(){ + return linkSid; + } + + /** + * @param linkSid 关联业务对象sid to set + */ + public void setLinkSid(String linkSid){ + this.linkSid = linkSid; + } + /** + * @return 附件类型 + */ + public String getAttachType(){ + return attachType; + } + + /** + * @param attachType 附件类型 to set + */ + public void setAttachType(String attachType){ + this.attachType = attachType; + } + /** + * @return 文件大小 + */ + public String getFileSize(){ + return fileSize; + } + + /** + * @param fileSize 文件大小 to set + */ + public void setFileSize(String fileSize){ + this.fileSize = fileSize; + } + /** + * @return 文件的相对路径 + */ + public String getFilePath(){ + return filePath; + } + + /** + * @param filePath 文件的相对路径 to set + */ + public void setFilePath(String filePath){ + this.filePath = filePath; + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileAttachTypeEnum.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileAttachTypeEnum.java new file mode 100644 index 0000000000..75afc5f8a1 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileAttachTypeEnum.java @@ -0,0 +1,37 @@ +package com.yxt.crm.biz.crmfile; + +/** + * 客户资料类型的枚举类 + */ +public enum CrmFileAttachTypeEnum { + + IDCARD("0001", "身份证"), + IDOFFRONT("0001_1", "身份证正面"), + IDOFBACK("0001_2", "身份证反面"), + + ; + + /** + * 附件类型 + */ + private final String attachType; + + /** + * 代号 + */ + private final String mark; + + + CrmFileAttachTypeEnum(String attachType, String mark) { + this.attachType = attachType; + this.mark = mark; + } + + public String getAttachType() { + return attachType; + } + + public String getMark() { + return mark; + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileDetailsVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileDetailsVo.java new file mode 100644 index 0000000000..c835ea2e64 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileDetailsVo.java @@ -0,0 +1,63 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmfile; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-crm(客户信息)
+ * File: CrmFileVo.java
+ * Class: com.yxt.anrui.crm.api.crmfile.CrmFileVo
+ * Description: 客户资料表 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-01-24 09:15:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "客户资料表 视图数据对象", description = "客户资料表 视图数据对象") +@Data +public class CrmFileDetailsVo implements Vo { + + @ApiModelProperty("图片sid") + private String sid; + @ApiModelProperty("上传时间") + private String createTime; + @ApiModelProperty("文件名") + private String fileName; + @ApiModelProperty("文件大小") + private String fileSize; + @ApiModelProperty("文件路径") + private String filePath; + @ApiModelProperty("是否可以删除(0不可删除,1可以删除)") + private Integer isDel; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileDto.java new file mode 100644 index 0000000000..00a8699b92 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileDto.java @@ -0,0 +1,65 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmfile; + + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-crm(客户信息)
+ * File: CrmFileDto.java
+ * Class: com.yxt.anrui.crm.api.crmfile.CrmFileDto
+ * Description: 客户资料表 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-01-24 09:15:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "客户资料表 数据传输对象", description = "客户资料表 数据传输对象") +@Data +public class CrmFileDto implements Dto { + + @ApiModelProperty("文件名") + private String fileName; // 文件名 + @ApiModelProperty("文件类型") + private String fileType; // 文件类型 + @ApiModelProperty("上传人姓名") + private String name; // 上传人姓名 + @ApiModelProperty("关联业务对象sid") + private String linkSid; // 关联业务对象sid + @ApiModelProperty("附件类型") + private String attachType; // 附件类型 + @ApiModelProperty("文件大小") + private String fileSize; // 文件大小 + @ApiModelProperty("文件的相对路径") + private String filePath; // 文件的相对路径 +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileListDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileListDto.java new file mode 100644 index 0000000000..2add1014a2 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileListDto.java @@ -0,0 +1,39 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmfile; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class CrmFileListDto implements Dto { + + @ApiModelProperty("客户资料") + private List crmFileDtoList; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileMapper.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileMapper.java new file mode 100644 index 0000000000..ff33704d88 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileMapper.java @@ -0,0 +1,78 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmfile; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +/** + * Project: anrui-crm(客户信息)
+ * File: CrmFileMapper.java
+ * Class: com.yxt.anrui.crm.biz.crmfile.CrmFileMapper
+ * Description: 客户资料表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-01-24 09:15:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Mapper +public interface CrmFileMapper extends BaseMapper { + + + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); + + List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); + + @Select("select * from crm_file") + List selectListVo(); + + List selectByLinkSid(@Param("linkSid") String linkSid, @Param("attachType") String attachType); + + @Delete("delete from crm_file where linkSid=#{linkSid} and filePath=#{filePath}") + int delByLinkSidAndFilePath(@Param("linkSid") String linkSid, @Param("filePath") String filePath); + + @Select("select * from crm_file where linkSid = #{sid}") + List fetchByLinkSid(String sid); + + int selectPath(String path); + + void deletePath(String path); + + int fetchByFilePath(String str); + + void deleteByLinkSidAndAttachType(@Param("sid") String sid, @Param("key") String key); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileMapper.xml b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileMapper.xml new file mode 100644 index 0000000000..42e3491504 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileMapper.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + delete + from crm_file + where filePath = #{path} + + + delete + from crm_file + where linkSid = #{sid} + and attachType = #{key} + + + + diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileQuery.java new file mode 100644 index 0000000000..5817b0356f --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileQuery.java @@ -0,0 +1,57 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmfile; + + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-crm(客户信息)
+ * File: CrmFileQuery.java
+ * Class: com.yxt.anrui.crm.api.crmfile.CrmFileQuery
+ * Description: 客户资料表 查询条件.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-01-24 09:15:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "客户资料表 查询条件", description = "客户资料表 查询条件") +@Data +public class CrmFileQuery implements Query { + + @ApiModelProperty("客户sid") + private String linkSid; + @ApiModelProperty("文件名") + private String fileName; + @ApiModelProperty("文件类型") + private String fileType; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileService.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileService.java new file mode 100644 index 0000000000..6657e1ca86 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileService.java @@ -0,0 +1,240 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmfile; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.common.base.config.component.FileUploadComponent; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.base.utils.StringUtils; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.io.File; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; + +/** + * Project: anrui-crm(客户信息)
+ * File: CrmFileService.java
+ * Class: com.yxt.anrui.crm.biz.crmfile.CrmFileService
+ * Description: 客户资料表 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-01-24 09:15:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Service +public class CrmFileService extends MybatisBaseService { + + @Autowired + private FileUploadComponent fileUploadComponent; + + public PagerVo listPage(PagerQuery pq) { + CrmFileQuery query = pq.getParams(); + QueryWrapper qw = createQueryWrapper(query); + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.selectPage(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + private QueryWrapper createQueryWrapper(CrmFileQuery query) { + // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName())); + QueryWrapper qw = new QueryWrapper<>(); + + qw.eq("linkSid", query.getLinkSid()); + if (StringUtils.isNotNull(query.getFileType())) { + qw.eq("fileType", query.getFileType()); + } + if (StringUtils.isNotNull(query.getFileName())) { + qw.eq("fileName", query.getFileName()); + } + qw.groupBy("attachType", "fileName"); + return qw; + } + + public IPage listPageVo(PagerQuery pq) { + // mybits所用的分页对对象 + IPage page = PagerUtil.queryToPage(pq); + // mybits所用的查询条件封装类 + QueryWrapper qw = createQueryWrapper(pq.getParams()); + return baseMapper.selectPageVo(page, qw); + } + + public void saveOrUpdateDto(CrmFileDto dto) { + CrmFile entity = new CrmFile(); + dto.fillEntity(entity); + this.saveOrUpdate(entity); + } + + public CrmFileVo fetchByIdVo(String id) { + CrmFile entity = this.fetchById(id); + CrmFileVo vo = new CrmFileVo(); + BeanUtil.copyProperties(entity, vo); + return vo; + } + + /** + * 根据linkSid和附件类型查询文件路径 + * + * @param linkSid + * @param attachType + * @return + */ + public List selectByLinkSid(String linkSid, String attachType) { + return baseMapper.selectByLinkSid(linkSid, attachType); + } + + /** + * 插入客户资料数据 + * + * @param linkSid + * @param list 相对路径 + */ + public void insertCrmFile(String linkSid, List list) { + list.stream().forEach(str -> { + CrmFile crmFile = new CrmFile(); + File file = new File(fileUploadComponent.getUploadPath() + str.replace("/", File.separator)); + if (file != null) { + crmFile.setFileSize(fileUploadComponent.getPrintSize(file.length())); + } + crmFile.setLinkSid(linkSid); + crmFile.setFileName(str.substring(str.lastIndexOf("/") + 1, str.lastIndexOf("."))); + crmFile.setFileType(str.substring(str.lastIndexOf(".") + 1)); + crmFile.setAttachType(CrmFileAttachTypeEnum.IDCARD.getAttachType()); + crmFile.setFilePath(str.replace(fileUploadComponent.getUrlPrefix(), "")); + save(crmFile); + }); + } + + /** + * 根据linkSid和附件类型删除文件 + * + * @param linkSid + * @param delList + * @return + */ + public void delByLinkSidAndAttachType(String linkSid, List delList) { + for (String str : delList) { + // 删除数据库 + baseMapper.delByLinkSidAndFilePath(linkSid, str); + // 删除文件 + String pathLoc = fileUploadComponent.getUploadPath() + str; + pathLoc = pathLoc.substring(0, pathLoc.lastIndexOf("/") + 1).replace("/", File.separator); + fileUploadComponent.deleteFiles(fileUploadComponent.getUrlPrefix() + str, pathLoc); + } + } + + public void saveCrmFile(CrmFileDto dto) { + /* List filePath = dto.getFilePath(); + for (String str : filePath) { + String xdfilePath = str.replace(fileUploadComponent.getUrlPrefix(), ""); + int i = baseMapper.fetchByFilePath(xdfilePath); + if (i > 0) { + continue; + } + CrmFile crmFile = new CrmFile(); + File file = new File(fileUploadComponent.getUploadPath() + str.replace("/", File.separator)); + if (file != null) { + crmFile.setFileSize(fileUploadComponent.getPrintSize(file.length())); + } + crmFile.setName(dto.getName()); + crmFile.setLinkSid(dto.getLinkSid()); + crmFile.setFileName(str.substring(str.lastIndexOf("/") + 1, str.lastIndexOf("."))); + crmFile.setFileType(str.substring(str.lastIndexOf(".") + 1)); + crmFile.setAttachType(dto.getAttachType()); + crmFile.setFilePath(xdfilePath); + save(crmFile); + }*/ + } + + public void updateCrmFile(CrmFileDto dto, String sid) { + CrmFile crmFile = new CrmFile(); + dto.fillEntity(crmFile); + } + + public List fetchByLinkSid(String sid) { + List crmFileDetailsVos = baseMapper.fetchByLinkSid(sid); + if (crmFileDetailsVos.size() > 0) { + ChenkCrmFileDetails(crmFileDetailsVos); + } + return crmFileDetailsVos; + } + + private void ChenkCrmFileDetails(List crmFileDetailsVos) { + String path = ""; + for (CrmFileDetailsVo crmFileDetailsVo : crmFileDetailsVos) { + String filePath = crmFileDetailsVo.getFilePath(); + String urlPrefix = fileUploadComponent.getUrlPrefix(); + path = urlPrefix + filePath; + crmFileDetailsVo.setFilePath(path); + String createTime = crmFileDetailsVo.getCreateTime(); + String date = createTime.substring(0, 10); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + String format = simpleDateFormat.format(new Date()); + if (date.equals(format)) { + crmFileDetailsVo.setIsDel(1); + } else { + crmFileDetailsVo.setIsDel(0); + } + } + } + + public ResultBean deleteFilesOss(String fullPath) { + ResultBean rb = ResultBean.fireFail(); + //删除服务器上的该文件 + String pathT = fileUploadComponent.getUrlPrefix(); + String path = ""; + if (fullPath.indexOf(pathT) > -1) { + path = fullPath.replace(pathT, ""); + } else { + path = fullPath; + } + String a = path.substring(0, path.lastIndexOf("/")).replace("/", File.separator); + String pathOne = fileUploadComponent.getUploadPath() + path.substring(0, path.lastIndexOf("/") + 1).replace("/", File.separator); + FileUploadComponent.deleteFiles(fullPath, pathOne); + //查询数据库,然后根据相对路径删除数据 + int count = baseMapper.selectPath(path); + if (count > 0) { + baseMapper.deletePath(path); + } + return rb.success().setMsg("移除成功"); + } + + public void deleteByLinkSidAndAttachType(String sid, String key) { + baseMapper.deleteByLinkSidAndAttachType(sid,key); + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileVo.java new file mode 100644 index 0000000000..e50d9b445f --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmfile/CrmFileVo.java @@ -0,0 +1,60 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmfile; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui-crm(客户信息)
+ * File: CrmFileVo.java
+ * Class: com.yxt.anrui.crm.api.crmfile.CrmFileVo
+ * Description: 客户资料表 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-01-24 09:15:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "客户资料表 视图数据对象", description = "客户资料表 视图数据对象") +@Data +public class CrmFileVo implements Vo { + + private static final long serialVersionUID = -7094724945005598636L; + @ApiModelProperty("文件名") + private String fileName; + @ApiModelProperty("上传人姓名") + private String name; + @ApiModelProperty("文件类别") + private String attachType; + @ApiModelProperty(value = "上传时间") + private String createTime; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePerson.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePerson.java new file mode 100644 index 0000000000..e4a715baa3 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePerson.java @@ -0,0 +1,64 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseperson; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterprisePerson.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriseperson.CrmMaintenanceenterprisePerson
+ * Description: 定点企业备案-对接人员.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案-对接人员", description = "定点企业备案-对接人员") +@TableName("crm_maintenanceenterprise_person") +public class CrmMaintenanceenterprisePerson extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("定点企业备案sid") + private String billSid; // 定点企业备案sid + @ApiModelProperty("对接人员sid") + private String personSid; // 对接人员sid + @ApiModelProperty("姓名") + private String name; // 姓名 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonDetailsVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonDetailsVo.java new file mode 100644 index 0000000000..7cf6edc3de --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonDetailsVo.java @@ -0,0 +1,64 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseperson; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterprisePersonVo.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriseperson.CrmMaintenanceenterprisePersonVo
+ * Description: 定点企业备案-对接人员 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案-对接人员 视图数据详情", description = "定点企业备案-对接人员 视图数据详情") +public class CrmMaintenanceenterprisePersonDetailsVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("定点企业备案sid") + private String billSid; // 定点企业备案sid + @ApiModelProperty("对接人员sid") + private String personSid; // 对接人员sid + @ApiModelProperty("姓名") + private String name; // 姓名 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonDto.java new file mode 100644 index 0000000000..e29d27a661 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonDto.java @@ -0,0 +1,64 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseperson; + + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterprisePersonDto.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriseperson.CrmMaintenanceenterprisePersonDto
+ * Description: 定点企业备案-对接人员 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案-对接人员 数据传输对象", description = "定点企业备案-对接人员 数据传输对象") +public class CrmMaintenanceenterprisePersonDto implements Dto { + + private String sid; // sid + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("定点企业备案sid") + private String billSid; // 定点企业备案sid + @ApiModelProperty("对接人员sid") + private String personSid; // 对接人员sid + @ApiModelProperty("姓名") + private String name; // 姓名 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonMapper.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonMapper.java new file mode 100644 index 0000000000..8d02e7b6ff --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonMapper.java @@ -0,0 +1,72 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseperson; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterprisePersonMapper.java
+ * Class: com.yxt.anrui.crm.biz.crmmaintenanceenterpriseperson.CrmMaintenanceenterprisePersonMapper
+ * Description: 定点企业备案-对接人员.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Mapper +public interface CrmMaintenanceenterprisePersonMapper extends BaseMapper { + + //@Update("update crm_maintenanceenterprise_person set name=#{msg} where id=#{id}") + //IPage voPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); + + List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); + + @Select("select * from crm_maintenanceenterprise_person") + List selectListVo(); + + @Delete("delete from crm_maintenanceenterprise_person where billSid = #{sid}") + void delByBillSid(String sid); + @Select("select * from crm_maintenanceenterprise_person where billSid = #{sid} ") + List selByBillSid(String sid); + + @Select("select * from crm_maintenanceenterprise_person where billSid = #{sid}") + List personList(String sid); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonMapper.xml b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonMapper.xml new file mode 100644 index 0000000000..bb81a2c4d1 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonMapper.xml @@ -0,0 +1,13 @@ + + + + + + + + + diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonQuery.java new file mode 100644 index 0000000000..f9a943c9c8 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonQuery.java @@ -0,0 +1,62 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseperson; + + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterprisePersonQuery.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriseperson.CrmMaintenanceenterprisePersonQuery
+ * Description: 定点企业备案-对接人员 查询条件.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案-对接人员 查询条件", description = "定点企业备案-对接人员 查询条件") +public class CrmMaintenanceenterprisePersonQuery implements Query { + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("定点企业备案sid") + private String billSid; // 定点企业备案sid + @ApiModelProperty("对接人员sid") + private String personSid; // 对接人员sid + @ApiModelProperty("姓名") + private String name; // 姓名 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonService.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonService.java new file mode 100644 index 0000000000..423e117811 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonService.java @@ -0,0 +1,115 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseperson; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.vo.PagerVo; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterprisePersonService.java
+ * Class: com.yxt.anrui.crm.biz.crmmaintenanceenterpriseperson.CrmMaintenanceenterprisePersonService
+ * Description: 定点企业备案-对接人员 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Service +public class CrmMaintenanceenterprisePersonService extends MybatisBaseService { + private QueryWrapper createQueryWrapper(CrmMaintenanceenterprisePersonQuery query) { + // todo: 这里根据具体业务调整查询条件 + // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName())); + QueryWrapper qw = new QueryWrapper<>(); + return qw; + } + + public void delByBillSid(String sid) { + baseMapper.delByBillSid(sid); + } + + + public List selByBillSid(String sid) { + return baseMapper.selByBillSid(sid); + } + + public PagerVo listPageVo(PagerQuery pq) { + CrmMaintenanceenterprisePersonQuery query = pq.getParams(); + QueryWrapper qw = createQueryWrapper(query); + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.selectPageVo(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public void saveOrUpdateDto(CrmMaintenanceenterprisePersonDto dto){ + String dtoSid = dto.getSid(); + if (StringUtils.isBlank(dtoSid)) { + this.insertByDto(dto); + return; + } + this.updateByDto(dto); + } + + public void insertByDto(CrmMaintenanceenterprisePersonDto dto){ + CrmMaintenanceenterprisePerson entity = new CrmMaintenanceenterprisePerson(); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.insert(entity); + } + + public void updateByDto(CrmMaintenanceenterprisePersonDto dto){ + String dtoSid = dto.getSid(); + if (StringUtils.isBlank(dtoSid)) { + return; + } + CrmMaintenanceenterprisePerson entity = fetchBySid(dtoSid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } + + public CrmMaintenanceenterprisePersonDetailsVo fetchDetailsVoBySid(String sid){ + CrmMaintenanceenterprisePerson entity = fetchBySid(sid); + CrmMaintenanceenterprisePersonDetailsVo vo = new CrmMaintenanceenterprisePersonDetailsVo(); + BeanUtil.copyProperties(entity, vo); + return vo; + } + + public List personList(String sid) { + return baseMapper.personList(sid); + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonVo.java new file mode 100644 index 0000000000..ef6bab5dbb --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmMaintenanceenterprisePersonVo.java @@ -0,0 +1,64 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseperson; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterprisePersonVo.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriseperson.CrmMaintenanceenterprisePersonVo
+ * Description: 定点企业备案-对接人员 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案-对接人员 视图数据对象", description = "定点企业备案-对接人员 视图数据对象") +public class CrmMaintenanceenterprisePersonVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("定点企业备案sid") + private String billSid; // 定点企业备案sid + @ApiModelProperty("对接人员sid") + private String personSid; // 对接人员sid + @ApiModelProperty("姓名") + private String name; // 姓名 + @ApiModelProperty("手机号码") + private String mobile; // 手机号码 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmPersonListVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmPersonListVo.java new file mode 100644 index 0000000000..10e1f70e54 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseperson/CrmPersonListVo.java @@ -0,0 +1,17 @@ +package com.yxt.crm.biz.crmmaintenanceenterpriseperson; + +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/29 16:48 + */ +@Data +public class CrmPersonListVo { + private String mobile; + private String name; + private String remarks; + private String sid; + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CarListVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CarListVo.java new file mode 100644 index 0000000000..65780a6b2e --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CarListVo.java @@ -0,0 +1,31 @@ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/22 14:42 + */ +@Data +public class CarListVo { + + /** + * 购买日期 + */ + private String buyDate; + private String sid; + /** + * 车牌号 + */ + private String vehMark; + /** + * 车架号 + */ + private String vinNo; + + + @ApiModelProperty("售后客户车辆信息sid") + private String asVinSid; // 售后客户车辆信息sid +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecord.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecord.java new file mode 100644 index 0000000000..c2bd13da1a --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecord.java @@ -0,0 +1,93 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecord.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecord
+ * Description: 定点企业备案.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案", description = "定点企业备案") +@TableName("crm_maintenanceenterprise_record") +public class CrmMaintenanceenterpriseRecord extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("单据编号") + private String billNo; // 单据编号 + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + @ApiModelProperty("备案类别") + private String filingType; // 备案类别 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @ApiModelProperty("备案有效期") + private Date filingIndate; // 备案有效期 + @ApiModelProperty("申请部门") + private String deptName; // 申请部门 + @ApiModelProperty("申请部门sid") + private String deptSid; // 申请部门sid + @ApiModelProperty("taskId") + private String taskId; // taskId + @ApiModelProperty("环节定义的sid") + private String nodeSid; // 环节定义的sid + @ApiModelProperty("流程状态") + private String nodeState; // 流程状态 + @ApiModelProperty("流程实例的sid") + private String procInstId; // 流程实例的sid + @ApiModelProperty("流程定义的id") + private String procDefId; // 流程定义的id + @ApiModelProperty("使用组织sid") + private String useOrgSid; // 使用组织sid + @ApiModelProperty("使用组织名称(分公司)") + private String useOrgName; // 使用组织名称(分公司) + @ApiModelProperty("创建组织sid") + private String createOrgSid; // 创建组织sid + @ApiModelProperty("创建组织名称(分公司)") + private String createOrgName; // 创建组织名称(分公司) + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @ApiModelProperty("办结日期") + private Date closingDate; // 办结日期 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordDetailsVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordDetailsVo.java new file mode 100644 index 0000000000..223e98ad02 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordDetailsVo.java @@ -0,0 +1,208 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordVo.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordVo
+ * Description: 定点企业备案 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案 视图数据详情", description = "定点企业备案 视图数据详情") +public class CrmMaintenanceenterpriseRecordDetailsVo implements Vo { + + /** + * 客户sid + */ + private String customerSid; + /** + * 详细地址 + */ + private String address; + + /** + * 详细地址 + */ + private String customerAddress; + /** + * 车辆列表 + */ + private List carList = new ArrayList<>(); + /** + * 证件类型 + */ + private String certificateType; + /** + * 证件类型Key + */ + private String certificateTypeKey; + /** + * 市 + */ + private String city; + /** + * 对接人列表 + */ + private List contactPerson = new ArrayList<>(); + /** + * 县 + */ + private String county; + /** + * 申请人 + */ + private String createByName; + /** + * 申请人sid + */ + private String createBySid; + /** + * 分公司 + */ + private String createOrgName; + /** + * 分公司sid + */ + private String createOrgSid; + /** + * 申请日期 + */ + private String createTime; + /** + * 客户名称 + */ + private String customerName; + /** + * 客户类型 + */ + private String customerType; + /** + * 客户类型Key + */ + private String customerTypeKey; + /** + * 申请部门 + */ + private String deptName; + /** + * 申请部门sid + */ + private String deptSid; + /** + * 电子邮箱 + */ + private String e_mail; + /** + * 紧急联系人 + */ + private String emergencyContact; + /** + * 紧急联系电话 + */ + private String emergencyMobile; + /** + * 证书有效期 + */ + private String endDate; + /** + * 附件 + */ + private List files = new ArrayList<>(); + private List files2 = new ArrayList<>(); + /** + * 备案有效期 + */ + private String filingIndate; + /** + * 备案类别,默认赋值"首次" + */ + private String filingType; + /** + * 证书号码 + */ + private String idnumber; + /** + * 流程实例ID + */ + private String instanceId; + private String procInsId; + /** + * 联系电话 + */ + private String mobile; + /** + * 省 + */ + private String province; + /** + * 已备人数,首次备案默认为空 + */ + private String readyStrength; + /** + * 已备车辆,首次备案默认为空 + */ + private String readyVehicle; + /** + * 备注 + */ + private String remarks; + private String sid; + /** + * 流程ID + */ + private String taskId; + /** + * 分公司 + */ + private String useOrgName; + /** + * 分公司sid + */ + private String useOrgSid; + /** + * 微信号 + */ + private String weixin; + + + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordDto.java new file mode 100644 index 0000000000..767cca768d --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordDto.java @@ -0,0 +1,200 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord; + + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordDto.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordDto
+ * Description: 定点企业备案 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案 数据传输对象", description = "定点企业备案 数据传输对象") +public class CrmMaintenanceenterpriseRecordDto implements Dto { + + + /** + * 客户sid + */ + private String customerSid; + /** + * 详细地址 + */ + private String address; + /** + * 车辆列表 + */ + private List carList = new ArrayList<>(); + /** + * 证件类型 + */ + private String certificateType; + /** + * 证件类型Key + */ + private String certificateTypeKey; + /** + * 市 + */ + private String city; + /** + * 对接人列表 + */ + private List contactPerson = new ArrayList<>(); + /** + * 县 + */ + private String county; + /** + * 申请人 + */ + private String createByName; + /** + * 申请人sid + */ + private String createBySid; + /** + * 分公司 + */ + private String createOrgName; + /** + * 分公司sid + */ + private String createOrgSid; + /** + * 申请日期 + */ + private String createTime; + /** + * 客户名称 + */ + private String customerName; + /** + * 客户类型 + */ + private String customerType; + /** + * 客户类型Key + */ + private String customerTypeKey; + /** + * 申请部门 + */ + private String deptName; + /** + * 申请部门sid + */ + private String deptSid; + /** + * 电子邮箱 + */ + private String eMail; + /** + * 紧急联系人 + */ + private String emergencyContact; + /** + * 紧急联系电话 + */ + private String emergencyMobile; + /** + * 证书有效期 + */ + private String endDate; + /** + * 附件 + */ + private List files = new ArrayList<>(); + /** + * 备案有效期 + */ + private String filingIndate; + /** + * 备案类别,默认赋值"首次" + */ + private String filingType; + /** + * 证书号码 + */ + private String idnumber; + /** + * 流程实例ID + */ + private String instanceId; + /** + * 联系电话 + */ + private String mobile; + /** + * 省 + */ + private String province; + /** + * 已备人数,首次备案默认为空 + */ + private String readyStrength; + /** + * 已备车辆,首次备案默认为空 + */ + private String readyVehicle; + /** + * 备注 + */ + private String remarks; + private String sid; + /** + * 流程ID + */ + private String taskId; + /** + * 分公司 + */ + private String useOrgName; + /** + * 分公司sid + */ + private String useOrgSid; + /** + * 微信号 + */ + private String weixin; + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordMapper.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordMapper.java new file mode 100644 index 0000000000..829114d30e --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordMapper.java @@ -0,0 +1,74 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordMapper.java
+ * Class: com.yxt.anrui.crm.biz.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordMapper
+ * Description: 定点企业备案.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Mapper +public interface CrmMaintenanceenterpriseRecordMapper extends BaseMapper { + + //@Update("update crm_maintenanceenterprise_record set name=#{msg} where id=#{id}") + //IPage voPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); + + List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); + + @Select("select * from crm_maintenanceenterprise_record") + List selectListVo(); + + List selPersonList(@Param("sid") String sid); + + int selectNum(String bill); + + int selPersonCount(@Param("customerSid") String customerSid); + + int selectBySid(String join); + + int updateFlowFiled(Map map); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordMapper.xml b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordMapper.xml new file mode 100644 index 0000000000..c4d78ec812 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordMapper.xml @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + UPDATE crm_maintenanceenterprise_record + SET nodeState=#{nodeState} + , nodeSid=#{taskDefKey} + + , procDefId=#{procDefId} + + + , procInstId=#{procInsId} + + + , taskId=#{taskId} + + WHERE sid = #{sid} + + diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordQuery.java new file mode 100644 index 0000000000..5b11bb969e --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordQuery.java @@ -0,0 +1,69 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord; + + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModel; +import lombok.Data; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordQuery.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordQuery
+ * Description: 定点企业备案 查询条件.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案 查询条件", description = "定点企业备案 查询条件") +public class CrmMaintenanceenterpriseRecordQuery implements Query { + + private String billNo; + private String closingDateEnd; + private String closingDateStart; + private String createByName; + private String createEndTime; + private String createOrgName; + private String createStartTime; + private String customerName; + private String customerTypeKey; + private String deptName; + private String menuUrl; + private String mobile; + private String orgPath; + /** + * 是否有效 1是0否 + */ + private String state; + private String userSid; + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordService.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordService.java new file mode 100644 index 0000000000..6f1b954dc1 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordService.java @@ -0,0 +1,1011 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.google.common.util.concurrent.ThreadFactoryBuilder; + +import com.yxt.common.base.config.component.FileUploadComponent; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.crm.biz.crmcustomer.CrmCustomer; +import com.yxt.crm.biz.crmcustomer.CrmCustomerService; +import com.yxt.crm.biz.crmdockingpeople.CrmDockingPeople; +import com.yxt.crm.biz.crmdockingpeople.CrmDockingPeopleService; +import com.yxt.crm.biz.crmfile.CrmFile; +import com.yxt.crm.biz.crmfile.CrmFileDetailsVo; +import com.yxt.crm.biz.crmfile.CrmFileService; +import com.yxt.crm.biz.crmmaintenanceenterpriseperson.CrmMaintenanceenterprisePerson; +import com.yxt.crm.biz.crmmaintenanceenterpriseperson.CrmMaintenanceenterprisePersonService; +import com.yxt.crm.biz.crmmaintenanceenterpriserecord.flowable.*; +import com.yxt.crm.biz.crmmaintenanceenterpriseveh.CrmMaintenanceenterpriseVeh; +import com.yxt.crm.biz.crmmaintenanceenterpriseveh.CrmMaintenanceenterpriseVehService; +import com.yxt.crm.feign.as.ascustomervehicle.AsCustomerVehicleDto; +import com.yxt.crm.feign.as.ascustomervehicle.AsCustomerVehicleFeign; +import com.yxt.crm.feign.flowable.flow.BusinessVariables; +import com.yxt.crm.feign.flowable.flow.FlowableFeign; +import com.yxt.crm.feign.flowable.flow.ProcDefEnum; +import com.yxt.crm.feign.flowable.flow.UpdateFlowFieldVo; +import com.yxt.crm.feign.flowable.flow2.FlowDelegateQuery; +import com.yxt.crm.feign.flowable.flow2.FlowFeign; +import com.yxt.crm.feign.flowable.flowtask.FlowTaskFeign; +import com.yxt.crm.feign.flowable.flowtask.FlowTaskVo; +import com.yxt.crm.feign.flowable.flowtask.LatestTaskVo; +import com.yxt.crm.feign.message.MessageFeign; +import com.yxt.crm.feign.message.MessageFlowVo; +import com.yxt.crm.feign.message.MessageFlowableQuery; +import com.yxt.crm.feign.portal.privilege.PrivilegeQuery; +import com.yxt.crm.feign.portal.sysorganization.SysOrganizationFeign; +import com.yxt.crm.feign.portal.sysorganization.SysOrganizationVo; +import com.yxt.crm.feign.portal.sysstafforg.SysStaffOrg; +import com.yxt.crm.feign.portal.sysstafforg.SysStaffOrgFeign; +import com.yxt.crm.feign.portal.sysuser.SysUserFeign; +import com.yxt.crm.feign.portal.sysuser.SysUserVo; +import com.yxt.crm.feign.portal.sysuserrole.SysUserRoleFeign; +import com.yxt.crm.utils.Rule; +import com.yxt.crm.utils.domain.BillNo; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.*; +import java.util.concurrent.*; +import java.util.stream.Collectors; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordService.java
+ * Class: com.yxt.anrui.crm.biz.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordService
+ * Description: 定点企业备案 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Service +public class CrmMaintenanceenterpriseRecordService extends MybatisBaseService { + + @Autowired + private AsCustomerVehicleFeign asCustomerVehicleFeign; + @Autowired + private FlowFeign flowFeign; + @Autowired + private FlowableFeign flowableFeign; + @Autowired + private FlowTaskFeign flowTaskFeign; + @Autowired + private MessageFeign messageFeign; + @Autowired + private CrmFileService crmFileService; + @Autowired + private FileUploadComponent fileUploadComponent; + @Autowired + private CrmMaintenanceenterprisePersonService crmMaintenanceenterprisePersonService; + @Autowired + private CrmMaintenanceenterpriseVehService crmMaintenanceenterpriseVehService; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private CrmCustomerService crmCustomerTempService; + @Autowired + private SysStaffOrgFeign sysStaffOrgFeign; + @Autowired + private CrmDockingPeopleService crmDockingPeopleService; + @Autowired + private SysUserRoleFeign sysUserRoleFeign; + + private QueryWrapper createQueryWrapper(CrmMaintenanceenterpriseRecordQuery query) { + // todo: 这里根据具体业务调整查询条件 + // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName())); + QueryWrapper qw = new QueryWrapper<>(); + return qw; + } + + public PagerVo listPageVo(PagerQuery pq) { + CrmMaintenanceenterpriseRecordQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(query.getOrgPath()); + privilegeQuery.setMenuUrl(query.getMenuUrl()); + privilegeQuery.setUserSid(query.getUserSid()); + ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); + if (StringUtils.isNotBlank(query.getMenuUrl())) { + if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { + //数据权限ID(1集团、2事业部、3分公司、4部门、5个人) + String orgSidPath = query.getOrgPath(); + orgSidPath = orgSidPath + "/"; + int i1 = orgSidPath.indexOf("/"); + int i2 = orgSidPath.indexOf("/", i1 + 1); + int i3 = orgSidPath.indexOf("/", i2 + 1); + int i4 = orgSidPath.indexOf("/", i3 + 1); + String orgLevelKey = defaultIdReltBean.getData(); + if ("1".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i1); + qw.like("a.orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("a.orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("a.orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("a.orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("a.createBySid", query.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } + if (StringUtils.isNotBlank(query.getState())) { + qw.eq("a.isFilingIndate", query.getState()); + } + if (StringUtils.isNotBlank(query.getCustomerTypeKey())) { + qw.eq("a.customerTypeKey", query.getCustomerTypeKey()); + } + if (StringUtils.isNotBlank(query.getMobile())) { + qw.like("a.mobile", query.getMobile()); + } + if (StringUtils.isNotBlank(query.getBillNo())) { + qw.like("a.billNo", query.getBillNo()); + } + if (StringUtils.isNotBlank(query.getCreateByName())) { + qw.like("a.createByName", query.getCreateByName()); + } + if (StringUtils.isNotBlank(query.getCreateOrgName())) { + qw.like("a.useOrgName", query.getCreateOrgName()); + } + if (StringUtils.isNotBlank(query.getDeptName())) { + qw.like("a.deptName", query.getDeptName()); + } + if (StringUtils.isNotBlank(query.getCustomerName())) { + qw.like("a.customerName", query.getCustomerName()); + } + String createStartTime = query.getCreateStartTime(); + String createEndTime = query.getCreateEndTime(); + qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (a.createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(createEndTime), "date_format (a.createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')" + ); + String closingDateStart = query.getClosingDateStart(); + String closingDateEnd = query.getClosingDateEnd(); + qw.apply(StringUtils.isNotBlank(closingDateStart), "date_format (a.closingDate,'%Y-%m-%d') >= date_format('" + closingDateStart + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(closingDateEnd), "date_format (a.closingDate,'%Y-%m-%d') <= date_format('" + closingDateEnd + "','%Y-%m-%d')" + ); + qw.orderBy(true, false, "a.createTime") + .orderBy(true, false, "a.filingIndate") + ; + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.selectPageVo(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public String saveOrUpdateDto(CrmMaintenanceenterpriseRecordDto dto) { + String sid = ""; + if (StringUtils.isNotBlank(dto.getSid())) { + sid = dto.getSid(); + crmMaintenanceenterprisePersonService.delByBillSid(sid); + crmMaintenanceenterpriseVehService.delByBillSid(sid); + crmFileService.deleteByLinkSidAndAttachType(sid, "2"); + CrmMaintenanceenterpriseRecord entity = fetchBySid(sid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } else { + CrmMaintenanceenterpriseRecord entity = new CrmMaintenanceenterpriseRecord(); + sid = entity.getSid(); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + entity.setNodeState("待提交"); + String applyCode = getApplyCode(dto.getCreateOrgSid()); + entity.setBillNo(applyCode); + baseMapper.insert(entity); + } + if (!dto.getCarList().isEmpty()) { + List carList = dto.getCarList(); + for (CarListVo carListVo : carList) { + CrmMaintenanceenterpriseVeh veh = new CrmMaintenanceenterpriseVeh(); + BeanUtil.copyProperties(carListVo, veh, "id", "sid"); + veh.setBillSid(sid); + crmMaintenanceenterpriseVehService.insert(veh); + } + } + if (!dto.getContactPerson().isEmpty()) { + List personListVos = dto.getContactPerson(); + for (PersonListVo personListVo : personListVos) { + CrmMaintenanceenterprisePerson person = new CrmMaintenanceenterprisePerson(); + BeanUtil.copyProperties(personListVo, person, "id", "sid"); + person.setBillSid(sid); + crmMaintenanceenterprisePersonService.insert(person); + } + } + if (!dto.getFiles().isEmpty()) { + List files = dto.getFiles(); + for (FileQueryUrl url : files) { + String file = url.getUrl(); + if (file.contains(fileUploadComponent.getUrlPrefix())) { + file = file.replace(fileUploadComponent.getUrlPrefix(), ""); + } + CrmFile crmFile = new CrmFile(); + crmFile.setFilePath(file); + crmFile.setLinkSid(sid); + crmFile.setCreateBySid(dto.getCreateBySid()); + crmFile.setCreateTime(new Date()); + crmFile.setName(dto.getCreateByName()); + crmFile.setAttachType("2"); + crmFileService.save(crmFile); + } + } + return sid; + } + + + /** + * 生成申请单单据编号 + * + * @param orgSid + * @return + */ + public String getApplyCode(String orgSid) { + //获取分公司sid + ResultBean resultBean1 = sysOrganizationFeign.fetchBySid(orgSid); + String orgCode = resultBean1.getData().getOrgCode(); + BillNo b = new BillNo(); + b.setOrgCode(orgCode); + b.setBillType("DDQYBA"); + String bill = Rule.getBill(b); + int i = baseMapper.selectNum(bill); + String billNo = Rule.getBillNo(bill, i); + return billNo; + } + + + public void insertByDto(CrmMaintenanceenterpriseRecordDto dto) { + CrmMaintenanceenterpriseRecord entity = new CrmMaintenanceenterpriseRecord(); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.insert(entity); + } + + public void updateByDto(CrmMaintenanceenterpriseRecordDto dto) { + String dtoSid = dto.getSid(); + if (StringUtils.isBlank(dtoSid)) { + return; + } + CrmMaintenanceenterpriseRecord entity = fetchBySid(dtoSid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } + + public CrmMaintenanceenterpriseRecordDetailsVo fetchDetailsVoBySid(String sid) { + CrmMaintenanceenterpriseRecordDetailsVo vo = new CrmMaintenanceenterpriseRecordDetailsVo(); + CrmMaintenanceenterpriseRecord entity = fetchBySid(sid); + List contactPerson = new ArrayList<>(); + List carListVos = new ArrayList<>(); + List files = new ArrayList<>(); + List files2 = new ArrayList<>(); + if (null != entity) { + BeanUtil.copyProperties(entity, vo); + if (StringUtils.isNotBlank(entity.getProcInstId())) { + vo.setInstanceId(entity.getProcInstId()); + } + vo.setCreateTime(DateUtil.formatDate(entity.getCreateTime())); + if (null != entity.getFilingIndate()) { + vo.setFilingIndate(DateUtil.formatDate(entity.getFilingIndate())); + } + CrmCustomer customerTemp = crmCustomerTempService.fetchBySid(entity.getCustomerSid()); + String sheng =""; + String shi =""; + String xian =""; + String dizhi =""; + if (null != customerTemp) { + if (StringUtils.isNotBlank(customerTemp.getAddress())) { + vo.setAddress(customerTemp.getAddress()); + dizhi = customerTemp.getAddress(); + } + if (StringUtils.isNotBlank(customerTemp.getCertificateType())) { + vo.setCertificateType(customerTemp.getCertificateType()); + } + if (StringUtils.isNotBlank(customerTemp.getCertificateTypeKey())) { + vo.setCertificateTypeKey(customerTemp.getCertificateTypeKey()); + } + if (StringUtils.isNotBlank(customerTemp.getCity())) { + vo.setCity(customerTemp.getCity()); + shi = customerTemp.getCity(); + } + if (StringUtils.isNotBlank(customerTemp.getCounty())) { + vo.setCounty(customerTemp.getCounty()); + xian = customerTemp.getCounty(); + } + if (StringUtils.isNotBlank(customerTemp.getName())) { + vo.setCustomerName(customerTemp.getName()); + } + if (StringUtils.isNotBlank(customerTemp.getCustomerType())) { + vo.setCustomerType(customerTemp.getCustomerType()); + } + if (StringUtils.isNotBlank(customerTemp.getCustomerTypeKey())) { + vo.setCustomerTypeKey(customerTemp.getCustomerTypeKey()); + } + if (StringUtils.isNotBlank(customerTemp.getE_mail())) { + vo.setE_mail(customerTemp.getE_mail()); + } + if (StringUtils.isNotBlank(customerTemp.getEmergencyContact())) { + vo.setEmergencyContact(customerTemp.getEmergencyContact()); + } + if (StringUtils.isNotBlank(customerTemp.getEmergencyMobile())) { + vo.setEmergencyMobile(customerTemp.getEmergencyMobile()); + } + if (StringUtils.isNotBlank(customerTemp.getEndDate())) { + vo.setEndDate(customerTemp.getEndDate()); + } + if (StringUtils.isNotBlank(customerTemp.getMobile())) { + vo.setMobile(customerTemp.getMobile()); + } + if (StringUtils.isNotBlank(customerTemp.getProvince())) { + vo.setProvince(customerTemp.getProvince()); + sheng = customerTemp.getProvince(); + } + if (StringUtils.isNotBlank(customerTemp.getIDNumber())) { + vo.setIdnumber(customerTemp.getIDNumber()); + } + if (StringUtils.isNotBlank(customerTemp.getWeixin())) { + vo.setWeixin(customerTemp.getWeixin()); + } + vo.setCustomerAddress(sheng+shi+xian+dizhi); + } + List personList = crmMaintenanceenterprisePersonService.selByBillSid(sid); + if (!personList.isEmpty()) { + for (CrmMaintenanceenterprisePerson person : personList) { + PersonListVo personListVo = new PersonListVo(); + BeanUtil.copyProperties(person, personListVo); + contactPerson.add(personListVo); + } + vo.setContactPerson(contactPerson); + } + List vehList = crmMaintenanceenterpriseVehService.selByBillSid(sid); + if (!vehList.isEmpty()) { + for (CrmMaintenanceenterpriseVeh veh : vehList) { + CarListVo carListVo = new CarListVo(); + BeanUtil.copyProperties(veh, carListVo); + if (null != veh.getBuyDate()) { + carListVo.setBuyDate(DateUtil.formatDate(veh.getBuyDate())); + } + carListVos.add(carListVo); + } + vo.setCarList(carListVos); + } + int personCount = baseMapper.selPersonCount(entity.getCustomerSid()); + int vehCount = asCustomerVehicleFeign.getVehListCountsByCustomerSid(entity.getCustomerSid()); + vo.setReadyStrength(String.valueOf(personCount)); + vo.setReadyVehicle(String.valueOf(vehCount)); + List crmFileDetailsVos = crmFileService.fetchByLinkSid(sid); + if (crmFileDetailsVos != null) { + for (CrmFileDetailsVo crmFileDetailsVo : crmFileDetailsVos) { + FileQueryUrl url = new FileQueryUrl(); + String filePath = crmFileDetailsVo.getFilePath(); + url.setUrl(filePath); + files.add(url); + files2.add(filePath); + } + vo.setFiles(files); + vo.setFiles2(files2); + } + } + return vo; + } + + public ResultBean init(String sid) { + ResultBean rb = ResultBean.fireFail(); + CrmMaintenanceenterpriseRecordDetailsVo vo = new CrmMaintenanceenterpriseRecordDetailsVo(); + CrmCustomer customerTemp = crmCustomerTempService.fetchBySid(sid); + if (null != customerTemp) { + if (StringUtils.isNotBlank(customerTemp.getAddress())) { + vo.setAddress(customerTemp.getAddress()); + } + if (StringUtils.isNotBlank(customerTemp.getCertificateType())) { + vo.setCertificateType(customerTemp.getCertificateType()); + } + if (StringUtils.isNotBlank(customerTemp.getCertificateTypeKey())) { + vo.setCertificateTypeKey(customerTemp.getCertificateTypeKey()); + } + if (StringUtils.isNotBlank(customerTemp.getCity())) { + vo.setCity(customerTemp.getCity()); + } + if (StringUtils.isNotBlank(customerTemp.getCounty())) { + vo.setCounty(customerTemp.getCounty()); + } + if (StringUtils.isNotBlank(customerTemp.getName())) { + vo.setCustomerName(customerTemp.getName()); + } + if (StringUtils.isNotBlank(customerTemp.getCustomerType())) { + vo.setCustomerType(customerTemp.getCustomerType()); + } + if (StringUtils.isNotBlank(customerTemp.getCustomerTypeKey())) { + vo.setCustomerTypeKey(customerTemp.getCustomerTypeKey()); + } + if (StringUtils.isNotBlank(customerTemp.getE_mail())) { + vo.setE_mail(customerTemp.getE_mail()); + } + if (StringUtils.isNotBlank(customerTemp.getEmergencyContact())) { + vo.setEmergencyContact(customerTemp.getEmergencyContact()); + } + if (StringUtils.isNotBlank(customerTemp.getEmergencyMobile())) { + vo.setEmergencyMobile(customerTemp.getEmergencyMobile()); + } + if (StringUtils.isNotBlank(customerTemp.getEndDate())) { + vo.setEndDate(customerTemp.getEndDate()); + } + if (StringUtils.isNotBlank(customerTemp.getMobile())) { + vo.setMobile(customerTemp.getMobile()); + } + if (StringUtils.isNotBlank(customerTemp.getProvince())) { + vo.setProvince(customerTemp.getProvince()); + } + if (StringUtils.isNotBlank(customerTemp.getIDNumber())) { + vo.setIdnumber(customerTemp.getIDNumber()); + } + if (StringUtils.isNotBlank(customerTemp.getWeixin())) { + vo.setWeixin(customerTemp.getWeixin()); + } + //获取当前日期 + LocalDateTime now = LocalDateTime.now(); + //加一年 + LocalDateTime afterOneYear = now.plusYears(1); + //格式化输出 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + vo.setFilingIndate(afterOneYear.format(formatter)); + vo.setCustomerSid(sid); + vo.setReadyStrength(""); + vo.setReadyVehicle(""); + vo.setFilingType("首次"); + List contactPerson = baseMapper.selPersonList(customerTemp.getSid()); + if (!contactPerson.isEmpty()) { + vo.setContactPerson(contactPerson); + } + List carListVos = asCustomerVehicleFeign.getVehListByCustomerSid(customerTemp.getSid()).getData(); + if (!carListVos.isEmpty()) { + vo.setCarList(carListVos); + } + } + return rb.success().setData(vo); + } + + public ResultBean deleteBySids(String[] sids) { + ResultBean rb = ResultBean.fireFail(); + //查询该sid中是否有流程不是待提交的 + int count = baseMapper.selectBySid(StringUtils.join(sids, ",")); + if (count > 0) { + return rb.setMsg("删除的数据中包含已提交或已办结审批的数据,删除失败"); + } + delBySids(sids); + for (String sid : sids) { + crmMaintenanceenterprisePersonService.delByBillSid(sid); + crmMaintenanceenterpriseVehService.delByBillSid(sid); + crmFileService.deleteByLinkSidAndAttachType(sid, "2"); + } + return rb.success(); + } + + + //-------------------------------------流程------------------------------------------------/ + + /** + * 判断提交的流程是否被允许 + * + * @param dto + * @return + */ + private synchronized int submitBusinessData(SubmitEnterpriseDto dto, CrmMaintenanceenterpriseRecord crmMaintenanceenterpriseRecord) { + int r = 0; + if (StringUtils.isBlank(dto.getSid())) { + r = 1; + } else { + if (crmMaintenanceenterpriseRecord != null) { + String businessTaskId = crmMaintenanceenterpriseRecord.getTaskId(); + if (StringUtils.isBlank(businessTaskId) && StringUtils.isBlank(dto.getTaskId())) { + //新提交 + r = 1; + } else if (StringUtils.isNotBlank(businessTaskId) && businessTaskId.equals(dto.getTaskId())) { + //二次提交//只有数据一致的时候才能进行下一步 + r = 2; + } + } else { + r = 3; + } + } + return r; + } + + /** + * 更新流程相关的状态 + * + * @param map + * @return + */ + private int updateFlowFiled(Map map) { + return baseMapper.updateFlowFiled(map); + } + + public ResultBean submitRecordApplication(SubmitEnterpriseDto dto) { + ResultBean rb = ResultBean.fireFail(); + CrmMaintenanceenterpriseRecord apply = fetchBySid(dto.getSid()); + int r = submitBusinessData(dto, apply); + if (r == 3) { + return rb.setMsg("该申请不存在"); + } + if (r == 0) { + return rb.setMsg("操作失败!提交的数据不一致"); + } + //新增修改保存 + String businessSid = saveOrUpdateDto(dto); + CrmMaintenanceenterpriseRecord entity = fetchBySid(businessSid); + String orgSidPath = ""; + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(entity.getDeptSid()).getData(); + if (null != organizationVo) { + orgSidPath = organizationVo.getOrgSidPath(); + } else { + SysUserVo data = sysUserFeign.fetchBySid(entity.getCreateBySid()).getData(); + if (null != data) { + //根据staffSid获取用户的组织全路径 + ResultBean staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(data.getStaffSid()); + if (!staffOrgResultBean.getSuccess()) { + return rb.setMsg(staffOrgResultBean.getMsg()); + } + //用户的组织全路径 + orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); + } + } + List orgPathList = Arrays.asList(orgSidPath.split("/")); + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(orgPathList.get(orgPathList.size() - 1)).getData(); + if (sysOrganization == null) { + return rb.setMsg("当前所在的组织机构不存在"); + } + if (StringUtils.isBlank(sysOrganization.getManagerSid())) { +// return rb.setMsg("当前所在的组织机构未设置主管人员"); + sysOrganization.setManagerSid("427a2fb0-60c5-409f-bea4-4eb441041ae6"); + } + //创建BusinessVariables实体对象 + BusinessVariables bv = new BusinessVariables(); + //流程中的参数赋值 + Map variables = BeanUtil.beanToMap(dto); + Map appMap = new HashMap<>(); + //若有网关,则赋值网关中判断的字段。 +// boolean isTure = true; +// //去查询是否同意 +// if (StringUtils.isNotBlank(entity.getSalesUserSid())) { +// if (!entity.getCreateBySid().equals(entity.getSalesUserSid())) { +// isTure = false; +// } +// } +// variables.put("isTure", isTure); + variables.put("businessSid", businessSid); + appMap.put("sid", businessSid); + variables.put("app", appMap); + //判断发起人是否为前台主管 + String createBySid = entity.getCreateBySid(); + List list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData(); + variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f")); +// String orderNames = "<" + entity.getCustomer() + ">" + "欠款客户备案"; +// variables.put("orderNames", orderNames); + CrmMaintenanceenterpriseRecord record = fetchBySid(businessSid); + String msgBusinessSid = record.getSid(); + //用户的部门全路径sid + bv.setOrgSidPath(orgSidPath); + //业务sid + bv.setBusinessSid(businessSid); + //用户sid + bv.setUserSid(dto.getCreateBySid()); + bv.setFormVariables(variables); +// String nextNodeUserSids_ = sysOrganization.getManagerSid(); +// if (isTure) { +// bv.setNextNodeUserSids(nextNodeUserSids_); +// } else { +// bv.setNextNodeUserSids(entity.getSalesUserSid()); +// } + //流程定义id + bv.setModelId(ProcDefEnum.ENTERPRISEAPPLY.getProDefId()); + if (r == 1) { + //流程定义id + bv.setModelId(ProcDefEnum.ENTERPRISEAPPLY.getProDefId()); + ResultBean voResultBean = flowFeign.startProcess(bv); + if (!voResultBean.getSuccess()) { + return rb.setMsg(voResultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = voResultBean.getData(); + int i = updateFlowFiled(BeanUtil.beanToMap(ufVo)); + //==================================添加线程 + try { + ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() + .setNameFormat("demo-pool-%d").build(); + ExecutorService pool = new ThreadPoolExecutor(2, 100, + 0L, TimeUnit.MILLISECONDS, + new LinkedBlockingQueue(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy()); + Future future1 = pool.submit(() -> { + //极光推送 + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(msgBusinessSid); + messageFlowableQuery.setModuleName("定点维修月结欠款备案申请"); + SysUserVo userVo = sysUserFeign.fetchBySid(record.getCreateBySid()).getData(); + if (userVo != null) { + if (StringUtils.isNotBlank(userVo.getName())) { + messageFlowableQuery.setMsgContent(userVo.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + } + } + messageFlowableQuery.setMsgTitle("定点维修月结欠款备案申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + }); + } catch (Exception e) { + e.printStackTrace(); + } + //==================================添加线程 + return voResultBean; + } + if (r == 2) { + // ToDo:驳回到发起人后再次提交 + if (StringUtils.isBlank(dto.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + CrmMaintenanceenterpriseRecord record1 = fetchBySid(dto.getSid()); + bv.setTaskId(dto.getTaskId()); + bv.setTaskDefKey(record1.getNodeSid()); + bv.setComment("重新提交"); + bv.setInstanceId(dto.getInstanceId()); + return complete(bv); + } + return rb; + } + + public ResultBean complete(BusinessVariables bv) { + ResultBean rb = ResultBean.fireFail(); + String businessSid = bv.getBusinessSid(); + CrmMaintenanceenterpriseRecord record = this.fetchBySid(businessSid); + if (bv.getTaskId().equals(record.getTaskId())) { + String orgSidPath = ""; + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(record.getDeptSid()).getData(); + if (null != organizationVo) { + orgSidPath = organizationVo.getOrgSidPath(); + } + bv.setOrgSidPath(orgSidPath); + //流程中的参数赋值 + Map variables = new HashMap<>(); + //判断发起人是否为前台主管 + String createBySid = record.getCreateBySid(); + List list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData(); + variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f")); + Map appMap = new HashMap<>(); + //若有网关,则赋值网关中判断的字段。 + variables.put("businessSid", businessSid); + appMap.put("sid", businessSid); + variables.put("app", appMap); + bv.setFormVariables(variables); + ResultBean resultBean = flowFeign.handleProsess(bv); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + int i = updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + if ("Event_end".equals(resultBean.getData().getTaskDefKey())) { + CrmMaintenanceenterpriseRecord entity = fetchBySid(businessSid); + entity.setClosingDate(new Date()); + baseMapper.updateById(entity); + Date filingIndate = entity.getFilingIndate(); + String customerSid = entity.getCustomerSid(); + List personList = crmMaintenanceenterprisePersonService.selByBillSid(businessSid); + if (!personList.isEmpty()) { + if (entity.getFilingType().equals("首次")) { + crmDockingPeopleService.delByCustomerSid(customerSid); + } + for (CrmMaintenanceenterprisePerson person : personList) { + CrmDockingPeople crmDockingPeople = new CrmDockingPeople(); + if (StringUtils.isNotBlank(person.getName())) { + crmDockingPeople.setName(person.getName()); + } + if (StringUtils.isNotBlank(person.getMobile())) { + crmDockingPeople.setMobile(person.getMobile()); + } + if (StringUtils.isNotBlank(person.getRemarks())) { + crmDockingPeople.setRemarks(person.getRemarks()); + } + crmDockingPeople.setCustomerSid(customerSid); + crmDockingPeopleService.insert(crmDockingPeople); + } + } + List vehs = crmMaintenanceenterpriseVehService.selByBillSid(businessSid); + if (!vehs.isEmpty()) { + for (CrmMaintenanceenterpriseVeh veh : vehs) { + if (StringUtils.isNotBlank(veh.getAsVinSid())) { + AsCustomerVehicleDto v = new AsCustomerVehicleDto(); + v.setSid(veh.getAsVinSid()); + if (StringUtils.isNotBlank(veh.getVehMark())) { + v.setVehMark(veh.getVehMark()); + } + if (StringUtils.isNotBlank(veh.getVinNo())) { + v.setVinNo(veh.getVinNo()); + } + v.setCustomerSid(customerSid); + asCustomerVehicleFeign.save(v); + } else { + AsCustomerVehicleDto v = new AsCustomerVehicleDto(); + if (StringUtils.isNotBlank(veh.getVehMark())) { + v.setVehMark(veh.getVehMark()); + } + if (StringUtils.isNotBlank(veh.getVinNo())) { + v.setVinNo(veh.getVinNo()); + } + v.setCustomerSid(customerSid); + asCustomerVehicleFeign.save(v); + } + } + } + CrmCustomer customerTemp = crmCustomerTempService.fetchBySid(customerSid); + customerTemp.setFilingIndate(filingIndate); + customerTemp.setIsEnable(1); + customerTemp.setIsDesignatedEnterprise(1); + crmCustomerTempService.updateById(customerTemp); + } + return rb.success().setData(resultBean.getData()); + } else { + return rb.setMsg("操作失败!提交的数据不一致"); + } + } + + + + public ResultBean revokeProcess(EnterpriseTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + CrmMaintenanceenterpriseRecord paymentApply = fetchBySid(query.getBusinessSid()); + String businessTaskId = paymentApply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.revokeProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + return rb.success().setData(resultBean.getData()); + } + } + return rb.setMsg("操作失败,提交的数据不一致!"); + } + + public ResultBean taskReject(EnterpriseTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + String businessSid = query.getBusinessSid(); + CrmMaintenanceenterpriseRecord paymentApply = fetchBySid(businessSid); + if (paymentApply == null) { + return rb.setMsg("该申请不存在"); + } + String businessTaskId = paymentApply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + if (StringUtils.isBlank(query.getComment())) { + return rb.setMsg("请填写意见"); + } + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", businessSid); + variables.put("app", appMap); + //若有网关,则赋值网关中判断的字段。 +// boolean isTure = true; +// //去查询是否同意 +// if (StringUtils.isNotBlank(loanCustomerRecord.getSalesUserSid())) { +// if (!loanCustomerRecord.getCreateBySid().equals(loanCustomerRecord.getSalesUserSid())) { +// isTure = false; +// } +// } +// variables.put("isTure", isTure); + //判断发起人是否为前台主管 + String createBySid = paymentApply.getCreateBySid(); + List list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData(); + variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f")); + flowTaskVo.setValues(variables); + ResultBean resultBean = flowableFeign.taskReject(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = resultBean.getData(); + Map map = BeanUtil.beanToMap(ufVo); + //更新业务中的流程相关的参数 + updateFlowFiled(map); + //极光推送 + paymentApply = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + String procId = paymentApply.getProcInstId(); + messageFlowVo.setProcInsId(procId); + messageFlowVo.setProcDefId(paymentApply.getProcDefId()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("定点维修月结欠款备案申请"); + ResultBean> listResultBean = flowTaskFeign.getLatestTasks(procId); + String nextName = listResultBean.getData().get(0).getName_(); + String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); + List receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); +// if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(busVehicleApply.getCreateBySid())) { + if ("发起申请".equals(nextName)) { + messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交"); + } else { + SysUserVo userVo = sysUserFeign.fetchBySid(paymentApply.getCreateBySid()).getData(); + if (userVo != null) { + if (StringUtils.isNotBlank(userVo.getName())) { + messageFlowableQuery.setMsgContent(userVo.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + } + } + } + messageFlowableQuery.setMsgTitle("定点维修月结欠款备案申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + return rb.success(); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean breakProcess(EnterpriseTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + if (StringUtils.isBlank(query.getComment())) { + return rb.setMsg("请填写意见"); + } + CrmMaintenanceenterpriseRecord paymentApply = fetchBySid(query.getBusinessSid()); + String businessTaskId = paymentApply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (query.getUserSid().equals(paymentApply.getCreateBySid())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + Map map = BeanUtil.beanToMap(resultBean.getData()); + updateFlowFiled(map); + + return rb.success().setData(resultBean.getData()); + } else { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + Map map = BeanUtil.beanToMap(resultBean.getData()); + updateFlowFiled(map); + return rb.success().setData(resultBean.getData()); + } + } + + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean flowRecord(String procInsId) { + return flowTaskFeign.businessFlowRecord(procInsId); + } + + public ResultBean> getNextNodesForSubmit(EnterpriseNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + //流程中的参数赋值、若有网关,则赋值网关中判断的字段。 + Map variables = new HashMap<>(); + + //根据业务sid查询排产信息 + CrmMaintenanceenterpriseRecord paymentApply = fetchBySid(query.getBusinessSid()); + //若有网关,则赋值网关中判断的字段。 +// boolean isTure = true; +// //去查询是否同意 +// if (StringUtils.isNotBlank(loanCustomerRecord.getSalesUserSid())) { +// if (!loanCustomerRecord.getCreateBySid().equals(loanCustomerRecord.getSalesUserSid())) { +// isTure = false; +// } +// } +// variables.put("isTure", isTure); + //判断发起人是否为前台主管 + String createBySid = paymentApply.getCreateBySid(); + List list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData(); + variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f")); + bv.setFormVariables(variables); + bv.setModelId(paymentApply.getProcDefId()); + ResultBean>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), EnterpriseNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean> getPreviousNodesForReject(EnterpriseNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + //流程中的参数赋值、若有网关,则赋值网关中判断的字段。 + Map variables = new HashMap<>(); + //根据业务sid查询排产信息 + CrmMaintenanceenterpriseRecord paymentApply = fetchBySid(query.getBusinessSid()); +// //若有网关,则赋值网关中判断的字段。 +// boolean isTure = true; +// //去查询是否同意 +// if (StringUtils.isNotBlank(loanCustomerRecord.getSalesUserSid())) { +// if (!loanCustomerRecord.getCreateBySid().equals(loanCustomerRecord.getSalesUserSid())) { +// isTure = false; +// } +// } +// variables.put("isTure", isTure); + //判断发起人是否为前台主管 + String createBySid = paymentApply.getCreateBySid(); + List list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData(); + variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f")); + bv.setFormVariables(variables); + bv.setModelId(paymentApply.getProcDefId()); + ResultBean>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), EnterpriseNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean delegate(EnterpriseDelegateQuery query) { + ResultBean rb = ResultBean.fireFail(); + FlowDelegateQuery delegateQuery = new FlowDelegateQuery(); + BeanUtil.copyProperties(query, delegateQuery); + flowFeign.delegate(delegateQuery); + return rb.success(); + } + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordVo.java new file mode 100644 index 0000000000..ba8e13bd67 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordVo.java @@ -0,0 +1,110 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseRecordVo.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordVo
+ * Description: 定点企业备案 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案 视图数据对象", description = "定点企业备案 视图数据对象") +public class CrmMaintenanceenterpriseRecordVo implements Vo { + + /** + * 单据编号 + */ + private String billNo; + /** + * 办结日期 + */ + private String closingDate; + /** + * 申请人 + */ + private String createByName; + /** + * 申请日期 + */ + private String createTime; + /** + * 客户名称 + */ + private String customerName; + /** + * 客户类型 + */ + private String customerTypeValue; + /** + * 申请部门 + */ + private String deptName; + /** + * 备案有效期 + */ + private String filingIndate; + /** + * 备案有效期是否已过,1是0否 + */ + private String isFilingIndate; + /** + * 联系电话 + */ + private String mobile; + /** + * 流程状态 + */ + private String nodeState; + /** + * 流程定义ID + */ + private String procDefId; + /** + * 流程实例ID + */ + private String procInstId; + private String sid; + /** + * 分公司 + */ + private String useOrgName; + @ApiModelProperty("备案类别") + private String filingType; // 备案类别 +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/FileQueryUrl.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/FileQueryUrl.java new file mode 100644 index 0000000000..f5da6c14de --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/FileQueryUrl.java @@ -0,0 +1,15 @@ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord; + +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/22 14:35 + */ +@Data +public class FileQueryUrl { + + private String url; + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/PersonListVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/PersonListVo.java new file mode 100644 index 0000000000..ec638121ee --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/PersonListVo.java @@ -0,0 +1,32 @@ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/22 14:42 + */ +@Data +public class PersonListVo { + + /** + * 手机号码 + */ + private String mobile; + /** + * 姓名 + */ + private String name; + /** + * 备注 + */ + private String remarks; + private String sid; + + @ApiModelProperty("对接人员sid") + private String personSid; // 对接人员sid + + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseCompleteDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseCompleteDto.java new file mode 100644 index 0000000000..7ed85495ab --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseCompleteDto.java @@ -0,0 +1,37 @@ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord.flowable; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/9/6 14:57 + * @Description + */ +@Data +public class EnterpriseCompleteDto implements Dto { + private static final long serialVersionUID = 6378752532534735663L; + + @ApiModelProperty(value = "用户sid") + private String userSid; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id(PC)") + private String instanceId; + @ApiModelProperty(value = "流程id(移动)") + private String procInsId; + @ApiModelProperty(value = "意见") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + + private String orgPath; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseDelegateQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseDelegateQuery.java new file mode 100644 index 0000000000..3d8c1c77e9 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseDelegateQuery.java @@ -0,0 +1,26 @@ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord.flowable; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/9/28 9:28 + */ +@Data +public class EnterpriseDelegateQuery { + @ApiModelProperty + private String userSid; + @ApiModelProperty("流程实例id") +// @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty("任务Id") + private String taskId; + @ApiModelProperty("审批人sid") + private String assignee; + @ApiModelProperty("填写意见") + private String views; + + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseNodeQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseNodeQuery.java new file mode 100644 index 0000000000..238bffb574 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseNodeQuery.java @@ -0,0 +1,25 @@ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/9/6 15:04 + * @Description + */ +@Data +public class EnterpriseNodeQuery implements Query { + private static final long serialVersionUID = 9117613683840483366L; + + @ApiModelProperty(value = "环节定义id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + @ApiModelProperty(value = "业务sid") + private String businessSid; + @ApiModelProperty(value = "0 上一环节 1下一环节") + private Integer next; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseNodeVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseNodeVo.java new file mode 100644 index 0000000000..a811dc99f2 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseNodeVo.java @@ -0,0 +1,26 @@ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord.flowable; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/9/6 15:03 + * @Description + */ +@Data +public class EnterpriseNodeVo implements Vo { + private static final long serialVersionUID = -833419512294877848L; + + @ApiModelProperty(value = "节点名称") + private String name; + @ApiModelProperty(value = "节点id") + private String id; + @ApiModelProperty(value = "审批组") + private List candidateGroups; + @ApiModelProperty(value = "是否是最后环节") + private String endTask; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseTaskQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseTaskQuery.java new file mode 100644 index 0000000000..df00ac049c --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/EnterpriseTaskQuery.java @@ -0,0 +1,48 @@ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/9/6 15:06 + * @Description + */ +@Data +public class EnterpriseTaskQuery implements Query { + private static final long serialVersionUID = 1288615499873178778L; + + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回、驳回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id(PC)") + private String instanceId; + + @ApiModelProperty("流程实例Id(移动)") + private String procInsId; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/SubmitEnterpriseDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/SubmitEnterpriseDto.java new file mode 100644 index 0000000000..55554f9a41 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriserecord/flowable/SubmitEnterpriseDto.java @@ -0,0 +1,25 @@ +package com.yxt.crm.biz.crmmaintenanceenterpriserecord.flowable; + + +import com.yxt.crm.biz.crmmaintenanceenterpriserecord.CrmMaintenanceenterpriseRecordDto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author liuguohui + * @version 1.0 + * @description + * @date 2022/04/13 + */ +@ApiModel("提交") +@Data +public class SubmitEnterpriseDto extends CrmMaintenanceenterpriseRecordDto { + + @ApiModelProperty("意见") + private String comment; + @ApiModelProperty("流程实例id") + private String instanceId; + @ApiModelProperty("任务id") + private String taskId; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVeh.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVeh.java new file mode 100644 index 0000000000..1b894e7fa6 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVeh.java @@ -0,0 +1,70 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseveh; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseVeh.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriseveh.CrmMaintenanceenterpriseVeh
+ * Description: 定点企业备案-车辆信息.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案-车辆信息", description = "定点企业备案-车辆信息") +@TableName("crm_maintenanceenterprise_veh") +public class CrmMaintenanceenterpriseVeh extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("定点企业备案sid") + private String billSid; // 定点企业备案sid + @ApiModelProperty("售后客户车辆信息sid") + private String asVinSid; // 售后客户车辆信息sid + @ApiModelProperty("车牌号") + private String vehMark; // 车牌号 + @ApiModelProperty("车架号") + private String vinNo; // 车架号 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @ApiModelProperty("购车日期") + private Date buyDate; // 购车日期 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehDetailsVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehDetailsVo.java new file mode 100644 index 0000000000..ca2478da39 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehDetailsVo.java @@ -0,0 +1,71 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseveh; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseVehVo.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriseveh.CrmMaintenanceenterpriseVehVo
+ * Description: 定点企业备案-车辆信息 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案-车辆信息 视图数据详情", description = "定点企业备案-车辆信息 视图数据详情") +public class CrmMaintenanceenterpriseVehDetailsVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("定点企业备案sid") + private String billSid; // 定点企业备案sid + @ApiModelProperty("售后客户车辆信息sid") + private String asVinSid; // 售后客户车辆信息sid + @ApiModelProperty("车牌号") + private String vehMark; // 车牌号 + @ApiModelProperty("车架号") + private String vinNo; // 车架号 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @ApiModelProperty("购车日期") + private Date buyDateStart; // 购车日期 + private Date buyDateEnd; // 购车日期 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehDto.java new file mode 100644 index 0000000000..3aafef1595 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehDto.java @@ -0,0 +1,71 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseveh; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseVehDto.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriseveh.CrmMaintenanceenterpriseVehDto
+ * Description: 定点企业备案-车辆信息 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案-车辆信息 数据传输对象", description = "定点企业备案-车辆信息 数据传输对象") +public class CrmMaintenanceenterpriseVehDto implements Dto { + + private String sid; // sid + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("定点企业备案sid") + private String billSid; // 定点企业备案sid + @ApiModelProperty("售后客户车辆信息sid") + private String asVinSid; // 售后客户车辆信息sid + @ApiModelProperty("车牌号") + private String vehMark; // 车牌号 + @ApiModelProperty("车架号") + private String vinNo; // 车架号 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @ApiModelProperty("购车日期") + private Date buyDateStart; // 购车日期 + private Date buyDateEnd; // 购车日期 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehMapper.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehMapper.java new file mode 100644 index 0000000000..89a25265fe --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehMapper.java @@ -0,0 +1,69 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseveh; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseVehMapper.java
+ * Class: com.yxt.anrui.crm.biz.crmmaintenanceenterpriseveh.CrmMaintenanceenterpriseVehMapper
+ * Description: 定点企业备案-车辆信息.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Mapper +public interface CrmMaintenanceenterpriseVehMapper extends BaseMapper { + + //@Update("update crm_maintenanceenterprise_veh set name=#{msg} where id=#{id}") + //IPage voPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); + + List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); + + @Select("select * from crm_maintenanceenterprise_veh") + List selectListVo(); + + @Delete("delete from crm_maintenanceenterprise_veh where billSid = #{sid}") + void delByBillSid(String sid); + @Select("select * from crm_maintenanceenterprise_veh where billSid = #{sid} ") + List selByBillSid(String sid); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehMapper.xml b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehMapper.xml new file mode 100644 index 0000000000..fdd46b93e8 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehMapper.xml @@ -0,0 +1,13 @@ + + + + + + + + + diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehQuery.java new file mode 100644 index 0000000000..8c77eac06f --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehQuery.java @@ -0,0 +1,69 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseveh; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseVehQuery.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriseveh.CrmMaintenanceenterpriseVehQuery
+ * Description: 定点企业备案-车辆信息 查询条件.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案-车辆信息 查询条件", description = "定点企业备案-车辆信息 查询条件") +public class CrmMaintenanceenterpriseVehQuery implements Query { + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("定点企业备案sid") + private String billSid; // 定点企业备案sid + @ApiModelProperty("售后客户车辆信息sid") + private String asVinSid; // 售后客户车辆信息sid + @ApiModelProperty("车牌号") + private String vehMark; // 车牌号 + @ApiModelProperty("车架号") + private String vinNo; // 车架号 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @ApiModelProperty("购车日期") + private Date buyDateStart; // 购车日期 + private Date buyDateEnd; // 购车日期 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehService.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehService.java new file mode 100644 index 0000000000..662ca66d00 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehService.java @@ -0,0 +1,111 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseveh; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.vo.PagerVo; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseVehService.java
+ * Class: com.yxt.anrui.crm.biz.crmmaintenanceenterpriseveh.CrmMaintenanceenterpriseVehService
+ * Description: 定点企业备案-车辆信息 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Service +public class CrmMaintenanceenterpriseVehService extends MybatisBaseService { + private QueryWrapper createQueryWrapper(CrmMaintenanceenterpriseVehQuery query) { + // todo: 这里根据具体业务调整查询条件 + // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName())); + QueryWrapper qw = new QueryWrapper<>(); + return qw; + } + + public void delByBillSid(String sid) { + baseMapper.delByBillSid(sid); + } + + + public List selByBillSid(String sid) { + return baseMapper.selByBillSid(sid); + } + + public PagerVo listPageVo(PagerQuery pq) { + CrmMaintenanceenterpriseVehQuery query = pq.getParams(); + QueryWrapper qw = createQueryWrapper(query); + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.selectPageVo(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public void saveOrUpdateDto(CrmMaintenanceenterpriseVehDto dto){ + String dtoSid = dto.getSid(); + if (StringUtils.isBlank(dtoSid)) { + this.insertByDto(dto); + return; + } + this.updateByDto(dto); + } + + public void insertByDto(CrmMaintenanceenterpriseVehDto dto){ + CrmMaintenanceenterpriseVeh entity = new CrmMaintenanceenterpriseVeh(); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.insert(entity); + } + + public void updateByDto(CrmMaintenanceenterpriseVehDto dto){ + String dtoSid = dto.getSid(); + if (StringUtils.isBlank(dtoSid)) { + return; + } + CrmMaintenanceenterpriseVeh entity = fetchBySid(dtoSid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } + + public CrmMaintenanceenterpriseVehDetailsVo fetchDetailsVoBySid(String sid){ + CrmMaintenanceenterpriseVeh entity = fetchBySid(sid); + CrmMaintenanceenterpriseVehDetailsVo vo = new CrmMaintenanceenterpriseVehDetailsVo(); + BeanUtil.copyProperties(entity, vo); + return vo; + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehVo.java new file mode 100644 index 0000000000..08711ca692 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmmaintenanceenterpriseveh/CrmMaintenanceenterpriseVehVo.java @@ -0,0 +1,71 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.biz.crmmaintenanceenterpriseveh; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * Project: crm(crm)
+ * File: CrmMaintenanceenterpriseVehVo.java
+ * Class: com.yxt.anrui.crm.api.crmmaintenanceenterpriseveh.CrmMaintenanceenterpriseVehVo
+ * Description: 定点企业备案-车辆信息 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-07-22 13:49:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "定点企业备案-车辆信息 视图数据对象", description = "定点企业备案-车辆信息 视图数据对象") +public class CrmMaintenanceenterpriseVehVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("申请人") + private String createByName; // 申请人 + @ApiModelProperty("定点企业备案sid") + private String billSid; // 定点企业备案sid + @ApiModelProperty("售后客户车辆信息sid") + private String asVinSid; // 售后客户车辆信息sid + @ApiModelProperty("车牌号") + private String vehMark; // 车牌号 + @ApiModelProperty("车架号") + private String vinNo; // 车架号 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @ApiModelProperty("购车日期") + private Date buyDateStart; // 购车日期 + private Date buyDateEnd; // 购车日期 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/anruicrm/crmcustomertemp/CrmCustomerTemp.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/anruicrm/crmcustomertemp/CrmCustomerTemp.java new file mode 100644 index 0000000000..968fe49f17 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/anruicrm/crmcustomertemp/CrmCustomerTemp.java @@ -0,0 +1,171 @@ +package com.yxt.crm.feign.anruicrm.crmcustomertemp; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * Project: anrui-crm(客户管理)
+ * File: CrmCustomerTemp.java
+ * Class: com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp
+ * Description: 潜在客户信息.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-01-12 11:21:16
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "潜在客户信息", description = "潜在客户信息") +@TableName("crm_customer_temp") +@Data +public class CrmCustomerTemp extends BaseEntity { + private static final long serialVersionUID = 1L; + + + @ApiModelProperty("客户编号(部门编码+客户类型(1位,0个人,1企业)+部门内部流水号(6位))") + private String customerNo; + + @ApiModelProperty("客户类型(自然人/法人)") + private String customerType; + + @ApiModelProperty("客户类型key") + private String customerTypeKey; + + @ApiModelProperty("客户分类(个人:司机/个体老板/其他。企业:企业型客户/一级经销商/二级经销商/终端物流客户)") + private String customerClass; + + @ApiModelProperty("客户分类key") + private String customerClassKey; + + @ApiModelProperty("客户来源(公司资源/自主开发/交接客户/转介绍客户/集团内销)") + private String source; + + @ApiModelProperty("客户来源key") + private String sourceKey; + + @ApiModelProperty("客户级别(意向客户/准客户/成交客户/集团内销/黑名单客户)") + private String level; + + @ApiModelProperty("客户级别key") + private String levelKey; + + @ApiModelProperty("客户名称") + private String name; + + @ApiModelProperty("证件类型key") + private String certificateTypeKey; + + @ApiModelProperty("证件类型(个人为身份证/企业为营业执照)") + private String certificateType; + + @ApiModelProperty("证件号码(个人为身份证号/企业为统一社会信用代码)") + private String IDNumber; + + @ApiModelProperty("证件有效期") + private String endDate; + + @ApiModelProperty("行政区划代码(省)") + private String address_province; + + @ApiModelProperty("行政区划代码(市)") + private String address_city; + + @ApiModelProperty("行政区划代码(县)") + private String address_county; + + @ApiModelProperty("省") + private String province; + + @ApiModelProperty("市") + private String city; + + @ApiModelProperty("县") + private String county; + + @ApiModelProperty("详细地址") + private String address; + + @ApiModelProperty("邮编") + private String zipCode; + + @ApiModelProperty("电子邮箱") + private String e_mail; + + @ApiModelProperty("联系人") + private String contacts; + + @ApiModelProperty("联系电话") + private String mobile; + + @ApiModelProperty("紧急联系电话") + private String emergencyContact; + + @ApiModelProperty("紧急联系电话") + private String emergencyMobile; + + @ApiModelProperty("微信号码") + private String weixin; + + @ApiModelProperty("业务人员sid") + private String staffSid; + + @ApiModelProperty("创建组织sid") + private String createOrgSid; + + @ApiModelProperty("创建部门sid") + private String useOrgSid; + + @ApiModelProperty("性别") + private String sex; + + @ApiModelProperty("性别key") + private String sexKey; + + @ApiModelProperty("生日") + private String birthday; + + @ApiModelProperty("所在公司名称") + private String companyName; + + @ApiModelProperty("跟进状态key") + private String follow_state_key; + + @ApiModelProperty("跟进状态") + private String follow_state; + + @ApiModelProperty("是否开启提醒key(1开启,0不开启)") + private String isOnRemindkey; + + @ApiModelProperty("是否开启提醒(1开启,0不开启)") + private String isOnRemind; + + @ApiModelProperty("提醒日期") + private String remind_day; + + @ApiModelProperty("提醒备注") + private String remind_remark; + + @ApiModelProperty("客户头像") + private String customerPhoto; + + @ApiModelProperty("见面方式key") + private String visitWayKey; + + @ApiModelProperty("见面方式(到店/电话/拜访)") + private String visitWay; + + @ApiModelProperty("证件地址") + private String certificateAddress; + + @ApiModelProperty("是否为定点企业(1是0否)") + private Integer isDesignatedEnterprise; + + @ApiModelProperty("定点企业备案有效期") + private Date filingIndate; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/anruicrm/crmcustomertemp/CrmCustomerTempFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/anruicrm/crmcustomertemp/CrmCustomerTempFeign.java new file mode 100644 index 0000000000..1ad581028d --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/anruicrm/crmcustomertemp/CrmCustomerTempFeign.java @@ -0,0 +1,44 @@ +package com.yxt.crm.feign.anruicrm.crmcustomertemp; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.crm.biz.crmcustomer.AsCustomerListQuery; +import com.yxt.crm.biz.crmcustomer.AsCustomerListVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** + * Project: anrui-crm(客户管理)
+ * File: CrmCustomerTempFeign.java
+ * Class: com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign
+ * Description: 潜在客户信息.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-01-12 11:21:16
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "潜在客户信息") +@FeignClient( + contextId = "anrui-crm-CrmCustomerTemp", + name = "anrui-crm", + path = "v1/crmcustomertemp") +public interface CrmCustomerTempFeign { + + + + @ApiOperation("根据sid查询实体") + @GetMapping("/fetchEntity/{sid}") + @ResponseBody + public ResultBean fetchEntity(@PathVariable("sid") String sid); + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleDto.java new file mode 100644 index 0000000000..f34d9e8759 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleDto.java @@ -0,0 +1,70 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.feign.as.ascustomervehicle; + + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: asdfasd(sdg)
+ * File: AsCustomerVehicleDto.java
+ * Class: as.api.ascustomervehicle.AsCustomerVehicleDto
+ * Description: 客户车辆信息 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-03-19 11:28:19
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "客户车辆信息 数据传输对象", description = "客户车辆信息 数据传输对象") +public class AsCustomerVehicleDto implements Dto { + + private String sid; // sid + + @ApiModelProperty("客户sid") + private String customerSid; // 客户sid + @ApiModelProperty("车牌号") + private String vehMark; // 车牌号 + @ApiModelProperty("车架号") + private String vinNo; // 车架号 + @ApiModelProperty("发动机号") + private String engineNo; // 发动机号 + @ApiModelProperty("车型sid") + private String vehModelSid; // 车型sid + @ApiModelProperty("车型") + private String vehModel; // 车型 + @ApiModelProperty("购车日期") + private String buyDate; // 购车日期 + @ApiModelProperty("0为内部车,1为外部车") + private Integer vehState; // 0为内部车,1为外部车 + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleFeign.java index ea42df1fa3..05ad530746 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleFeign.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleFeign.java @@ -1,10 +1,12 @@ package com.yxt.crm.feign.as.ascustomervehicle; import com.yxt.common.core.result.ResultBean; +import com.yxt.crm.biz.crmmaintenanceenterpriserecord.CarListVo; import io.swagger.annotations.ApiOperation; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import java.util.List; @@ -24,4 +26,16 @@ public interface AsCustomerVehicleFeign { @ApiOperation("查询数据的列表") @PostMapping("/listCustomerVeh") public ResultBean> listCustomerVeh(); + + @ApiOperation("根据客户sid查询车辆数量") + @GetMapping("/getVehListCountsByCustomerSid") + public int getVehListCountsByCustomerSid(@RequestParam("customerSid") String customerSid); + + @ApiOperation("根据客户sid查询车辆") + @GetMapping("/getVehListByCustomerSid") + public ResultBean> getVehListByCustomerSid(@RequestParam("customerSid") String customerSid); + + @ApiOperation("新增或修改") + @PostMapping("/save") + public ResultBean save(@RequestBody AsCustomerVehicleDto dto); } diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/base/basevehicleoutapply/BaseVehicleOutApplyFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/base/basevehicleoutapply/BaseVehicleOutApplyFeign.java new file mode 100644 index 0000000000..5fe7071d13 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/base/basevehicleoutapply/BaseVehicleOutApplyFeign.java @@ -0,0 +1,60 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.feign.base.basevehicleoutapply; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.*; + +/** + * Project: anrui-base(销售出库单)
+ * File: BaseVehicleOutApplyFeign.java
+ * Class: com.yxt.anrui.base.api.basevehicleoutapply.BaseVehicleOutApplyFeign
+ * Description: 车辆出库单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2023-01-12 08:54:50
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "车辆出库单") +@FeignClient( + contextId = "anrui-base-BaseVehicleOutApply", + name = "anrui-base", + path = "v1/basevehicleoutapply" + ) +public interface BaseVehicleOutApplyFeign { + + @ApiOperation("查询根据车架号查询销售订单信息") + @PostMapping("/selectSidByVinNo") + ResultBean selectSidByVinNo(@RequestParam("vinNo") String vinNo); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/bus/bussalesorder/BusSalesOrder.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/bus/bussalesorder/BusSalesOrder.java new file mode 100644 index 0000000000..3e846e33f4 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/bus/bussalesorder/BusSalesOrder.java @@ -0,0 +1,155 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.feign.bus.bussalesorder; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * Project: anrui-buscenter(业务管理)
+ * File: BusSalesOrder.java
+ * Class: com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder
+ * Description: 销售订单主表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-04-27 13:39:04
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "销售订单主表", description = "销售订单主表") +@TableName("bus_sales_order") +public class BusSalesOrder extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("订单编号") + private String billNo; + @ApiModelProperty("销售部门sid") + private String orgSid; + @ApiModelProperty("销售部门") + private String orgName; + @ApiModelProperty("客户名称") + private String customerName; + @ApiModelProperty("客户sid") + private String customerSid; + @ApiModelProperty("销售专员") + private String staffName; + @ApiModelProperty("销售专员sid") + private String staffSid; + @ApiModelProperty("客户联系电话") + private String mobile; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @ApiModelProperty("制单日期") + private Date createDate; + @ApiModelProperty("开票类型key") + private String billingTypeKey; + @ApiModelProperty("开票类型value") + private String billingType; + @ApiModelProperty("付款方式key") + private String payTypeKey; + @ApiModelProperty("付款方式value") + private String payType; + @ApiModelProperty("挂靠公司sid") + private String affiliatedCompanySid; + @ApiModelProperty("挂靠公司名称") + private String affiliatedCompany; + @ApiModelProperty("公司是否入保") + private String isInsurance; + @ApiModelProperty("补充说明") + private String notes; + @ApiModelProperty("是否包含上装") + private String isTop; + @ApiModelProperty("节点状态") + private String nodeState; + @ApiModelProperty("流程定义id") + private String procDefId; + @ApiModelProperty("环节定义id") + private String nodeId; + @ApiModelProperty("流程实例id") + private String procInstId; + @ApiModelProperty("记录最后修改时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8") + private Date closingDate; + @ApiModelProperty("销售订单车辆类型:1现车、2订单、3排产") + private String type; + @ApiModelProperty("单台开票金额") + private BigDecimal oneBillMoney; // 单台开票金额 + + @ApiModelProperty(value = "客户类型key") + private String customerClassKey; + @ApiModelProperty(value = "客户类型") + private String customerClass; + @ApiModelProperty(value = "客户头像") + private String customerPhoto; + @ApiModelProperty(value = "任务编号id") + private String taskId; + + @ApiModelProperty(value = "付款类型下级") + private String financePlan; + @ApiModelProperty(value = "付款类型下级value") + private String financePlanValue; + + @ApiModelProperty("分公司sid") + private String useOrgSid; + @ApiModelProperty("分公司名称") + private String useOrgName; + + @ApiModelProperty("是否包牌:1是,0否") + private String licensePlateKey; + @ApiModelProperty("是否包牌") + private String licensePlateValue; + @ApiModelProperty("采购系统sid") + private String purchaseSystemSid; + @ApiModelProperty("采购系统名称") + private String purchaseSystemName; + + @ApiModelProperty("补充说明附件") + private String imagesFile; + + @ApiModelProperty("申请人的组织机构全路径sid") + private String orgSidPath; + + private String contractNo; + + @ApiModelProperty("若无值,则为现车中有车架号或其他两种类型的,若有值,则为现车中不确定车架号的数量") + private String nowCarUnknownVinNum; + @ApiModelProperty("是否是挂靠公司") + private int affiliatedCompanyType; + + @ApiModelProperty("开票单位名称") + private String companyInvoicingName; + @ApiModelProperty("开票单位sid") + private String companyInvoicingSid; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/bus/bussalesorder/BusSalesOrderFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/bus/bussalesorder/BusSalesOrderFeign.java new file mode 100644 index 0000000000..c3763b7071 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/bus/bussalesorder/BusSalesOrderFeign.java @@ -0,0 +1,69 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.crm.feign.bus.bussalesorder; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.lang.reflect.InvocationTargetException; +import java.util.List; + +/** + * Project: anrui-buscenter(业务管理-销售订单)
+ * File: BusSalesOrderFeign.java
+ * Class: com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign
+ * Description: 销售订单主表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-04-27 13:39:04
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "销售订单主表") +@FeignClient( + contextId = "anrui-buscenter-BusSalesOrder", + name = "anrui-buscenter", + path = "v1/bussalesorder" + ) +public interface BusSalesOrderFeign { + + + + @ApiOperation("根据sid获取一条数据") + @GetMapping("/fetchBySid/{sid}") + @ResponseBody + public ResultBean fetchBySid(@PathVariable("sid") String sid); + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/BusinessVariables.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/BusinessVariables.java new file mode 100644 index 0000000000..3d1e4acf9b --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/BusinessVariables.java @@ -0,0 +1,65 @@ +package com.yxt.crm.feign.flowable.flow; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.HashMap; +import java.util.Map; + +/** + * 业务系统调用flowable流程传递参数的格式 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class BusinessVariables { + /** + * 分公司sid + */ + public static final String ORGPATH="orgPath"; + /** + * 流程定义的id + */ + private String modelId; + /** + * 审批意见 + */ + private String comment; + /** + * 流程实例的id + */ + private String instanceId; + /** + * taskId + */ + private String taskId; + /** + * 当前用户的id + */ + private String userSid; + /** + * 当前用户部门的全路径 + */ + private String orgSidPath; + /** + * 业务sid + */ + private String businessSid; + /** + * 环节定义的ID + */ + private String taskDefKey; + /** + * nextNodeUserSids 下一环节的用户sid + */ + private String nextNodeUserSids; + /** + * 业务参数,按需传递 + */ + private Map formVariables =new HashMap<>(); + /* @ApiModelProperty("机构sid:切换结构使用") + private String orgPath;*/ +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/FlowProcessMapQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/FlowProcessMapQuery.java new file mode 100644 index 0000000000..3a4cd74e62 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/FlowProcessMapQuery.java @@ -0,0 +1,27 @@ +package com.yxt.crm.feign.flowable.flow; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Map; + +/** + * @description: 流程获取map + * @author: dimengzhe + * @date: 2023/5/26 + **/ +@Data +public class FlowProcessMapQuery { + + @ApiModelProperty("合同编号") + private String contractNo; + @ApiModelProperty("变量") + private Map variables; + @ApiModelProperty("流程id") + private String proDefKey; + + @ApiModelProperty("是否领票(欠款开票使用)") + private String isLP; + @ApiModelProperty("贷款人姓名") + private String dkrName; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/FlowableFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/FlowableFeign.java new file mode 100644 index 0000000000..e277f31a78 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/FlowableFeign.java @@ -0,0 +1,39 @@ +package com.yxt.crm.feign.flowable.flow; + + +import com.yxt.common.core.result.ResultBean; +import com.yxt.crm.feign.flowable.flowtask.FlowTaskVo; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.ResponseBody; + +import java.util.Map; + +@FeignClient( + contextId = "anrui-flowable-Flowable", + name = "anrui-flowable", + path = "v1/flow") +public interface FlowableFeign { + + @ApiOperation(value = "获取map") + @PostMapping(value = "/getMap") + @ResponseBody + ResultBean> getMap(@RequestBody FlowProcessMapQuery query); + + @ApiOperation(value = "驳回流程") + @PostMapping(value = "/taskReject") + @ResponseBody + ResultBean taskReject(@RequestBody FlowTaskVo fl); + + @ApiOperation(value = "撤回流程") + @PostMapping(value = "/revokeProcess") + @ResponseBody + ResultBean revokeProcess(@RequestBody FlowTaskVo fl); + + @ApiOperation(value = "终止流程") + @PostMapping(value = "/breakProcess") + @ResponseBody + ResultBean breakProcess(@RequestBody FlowTaskVo fl); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/ProcDefEnum.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/ProcDefEnum.java new file mode 100644 index 0000000000..bf62a2f987 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/ProcDefEnum.java @@ -0,0 +1,52 @@ +package com.yxt.crm.feign.flowable.flow; + +/** + * 流程定义:流程名称与代号枚举类 + */ +public enum ProcDefEnum { + + + /***************************正式流程id***********************************/ + ASARREARSOUTAPPLY("欠款出厂申请", "process_d0eyl7ep:2:14197520"), + ASOLDPARTRETURNAPPLY("旧件返厂申请", "process_9ijbdmdb:1:14177556"), + ASOLDPARTHANDLEAPPLY("旧件处理申请", "process_hxr0wezs:1:14177560"), + REVERSESETTLEAPPLY("工单反结算申请", "process_g3r02po8:3:14197552"), + ASBUSCLAIMINVOICEBILL("索赔单开票申请", "process_czty2ysj:2:14197524"), + ASBUSCLAIMCHECKAPPLY("索赔单调整申请", "process_i6ln3qcd:2:14197528"), + ASBWDIFFAPPLY("工单应收调差申请", "process_b1thoh6n:2:14197532"), + ASBWINVOICEAPPLY("工单开票申请", "process_ldw1bs5t:1:14197536"), + ASTECHTITLEAPPLY("维修技师职称备案申请", "process_kl8rqdjf:1:14197604"), + BILLSETTLEAPPLY("工单结算申请", "process_q2p7s99n:2:14900004"), + ASHOSESUPPAPPLY("工时提成抵顶配件费用申请", "process_z2d1n43e:1:14197592"), + ASSERVICEITEMAPPLY("维修项目备案申请", "process_mbiz75zg:1:14197572"), + ASSERVICEACCOMMAPPLY("配件销售提成备案申请", "process_89i56wrn:1:14197576"), + ASSTANDRECORDAPPLY("合作二级站备案申请", "process_e5yugvlx:2:14197596"), + ENTERPRISEAPPLY("定点企业备案", "process_tvywp9ri:2:14197516"), + + ; + + + ProcDefEnum(String proDefName, String proDefId) { + this.proDefName = proDefName; + this.proDefId = proDefId; + } + + /** + * 流程类型名称 + */ + private final String proDefName; + + /** + * 流程代号 + */ + private final String proDefId; + + public String getProDefName() { + return proDefName; + } + + public String getProDefId() { + return proDefId; + } +} + diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/UpdateFlowFieldVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/UpdateFlowFieldVo.java new file mode 100644 index 0000000000..e5d13725d4 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow/UpdateFlowFieldVo.java @@ -0,0 +1,68 @@ +package com.yxt.crm.feign.flowable.flow; + +public class UpdateFlowFieldVo { + + private String sid; + private String procDefId; + private String nodeState; + private String procInsId; + private String taskDefKey; + private String taskId; + private String nextNodeUserSids; + + public String getNextNodeUserSids() { + return nextNodeUserSids; + } + + public void setNextNodeUserSids(String nextNodeUserSids) { + this.nextNodeUserSids = nextNodeUserSids; + } + + public String getSid() { + return sid; + } + + public void setSid(String sid) { + this.sid = sid; + } + + public String getProcDefId() { + return procDefId; + } + + public void setProcDefId(String procDefId) { + this.procDefId = procDefId; + } + + public String getNodeState() { + return nodeState; + } + + public void setNodeState(String nodeState) { + this.nodeState = nodeState; + } + + public String getProcInsId() { + return procInsId; + } + + public void setProcInsId(String procInsId) { + this.procInsId = procInsId; + } + + public String getTaskDefKey() { + return taskDefKey; + } + + public void setTaskDefKey(String taskDefKey) { + this.taskDefKey = taskDefKey; + } + + public String getTaskId() { + return taskId; + } + + public void setTaskId(String taskId) { + this.taskId = taskId; + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow2/FlowDelegateQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow2/FlowDelegateQuery.java new file mode 100644 index 0000000000..1d747b1d62 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow2/FlowDelegateQuery.java @@ -0,0 +1,23 @@ +package com.yxt.crm.feign.flowable.flow2; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Administrator + * @description + * @date 2023/10/8 15:58 + */ +@Data +public class FlowDelegateQuery { + @ApiModelProperty + private String userSid; + @ApiModelProperty("流程实例id") + private String instanceId; + @ApiModelProperty("任务Id") + private String taskId; + @ApiModelProperty("审批人sid") + private String assignee; + @ApiModelProperty("填写意见") + private String views; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow2/FlowFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow2/FlowFeign.java new file mode 100644 index 0000000000..6d3a3e4bb9 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flow2/FlowFeign.java @@ -0,0 +1,37 @@ +package com.yxt.crm.feign.flowable.flow2; + + +import com.yxt.common.core.result.ResultBean; +import com.yxt.crm.feign.flowable.flow.BusinessVariables; +import com.yxt.crm.feign.flowable.flow.UpdateFlowFieldVo; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.ResponseBody; + +@FeignClient( + contextId = "anrui-flowable-Flow", + name = "anrui-flowable", + path = "v2/flow") +public interface FlowFeign { + + @ApiOperation(value = "加签") + @PostMapping(value = "/delegate") + public ResultBean delegate(@RequestBody FlowDelegateQuery flowDelegateQuery); + + @ApiOperation(value = "启动流程") + @PostMapping(value = "/startProcess") + @ResponseBody + ResultBean startProcess(@RequestBody BusinessVariables dto); + + @ApiOperation(value = "处理流程") + @PostMapping(value = "/handleProsess") + @ResponseBody + ResultBean handleProsess(@RequestBody BusinessVariables bv); + + @ApiOperation(value = "转办") + @PostMapping(value = "/assignTask") + public ResultBean assignTask(@RequestBody FlowDelegateQuery flowDelegateQuery); + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowCommentDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowCommentDto.java new file mode 100644 index 0000000000..0947b410ad --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowCommentDto.java @@ -0,0 +1,39 @@ +package com.yxt.crm.feign.flowable.flowtask; + +import lombok.Builder; +import lombok.Data; + +import java.io.Serializable; + +/** + * @author XuanXuan + * @date 2021/3/28 15:50 + */ +@Data +@Builder +/*@NoArgsConstructor +@AllArgsConstructor*/ +public class FlowCommentDto implements Serializable { + public FlowCommentDto() { + } + + public FlowCommentDto(String type, String comment) { + this.type = type; + this.comment = comment; + } + /** + * + */ + private static final long serialVersionUID = 1929734226858491967L; + + /** + * 意见类别 1正常(同意)意见 2退回意见 3 驳回意见 4 委派意见 5 转办意见 6 终止流程 7 撤回流程 + */ + private String type; + + /** + * 意见内容 + */ + private String comment; + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowRecordVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowRecordVo.java new file mode 100644 index 0000000000..4f02fe709e --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowRecordVo.java @@ -0,0 +1,16 @@ +package com.yxt.crm.feign.flowable.flowtask; + +import java.util.ArrayList; +import java.util.List; + +public class FlowRecordVo { + private List flowList = new ArrayList<>(); + + public List getFlowList() { + return flowList; + } + + public void setFlowList(List flowList) { + this.flowList = flowList; + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTask.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTask.java new file mode 100644 index 0000000000..4fbb08c60c --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTask.java @@ -0,0 +1,106 @@ +package com.yxt.crm.feign.flowable.flowtask; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + *

工作流任务

+ * + * @author XuanXuan + * @date 2021-04-03 + */ +@ApiModel("工作流任务相关-返回参数") +@Data +public class FlowTask extends BaseEntity implements Serializable { + + @ApiModelProperty("任务编号") + private String taskId; + + @ApiModelProperty("任务名称") + private String taskName; + + @ApiModelProperty("任务Key") + private String taskDefKey; + + @ApiModelProperty("任务执行人Id") + private Long assigneeId; + + @ApiModelProperty("部门名称") + private String deptName; + + @ApiModelProperty("流程发起人部门名称") + private String startDeptName; + + @ApiModelProperty("任务执行人名称") + private String assigneeName; + + @ApiModelProperty("任务执行人头像") + private String assigneeHeadImage; + + @ApiModelProperty("流程发起人Id") + private String startUserId; + + @ApiModelProperty("流程发起人名称") + private String startUserName; + + @ApiModelProperty("流程类型") + private String category; + + @ApiModelProperty("流程变量信息") + private Object procVars; + + @ApiModelProperty("局部变量信息") + private Object taskLocalVars; + + @ApiModelProperty("流程部署编号") + private String deployId; + + @ApiModelProperty("流程ID") + private String procDefId; + + @ApiModelProperty("流程key") + private String procDefKey; + + @ApiModelProperty("流程定义名称") + private String procDefName; + + @ApiModelProperty("流程定义内置使用版本") + private int procDefVersion; + + @ApiModelProperty("流程实例ID") + private String procInsId; + + @ApiModelProperty("历史流程实例ID") + private String hisProcInsId; + + @ApiModelProperty("任务耗时") + private String duration; + + @ApiModelProperty("任务意见") + private FlowCommentDto comment = new FlowCommentDto(); + + @ApiModelProperty("候选执行人") + private String candidate; + + /* @ApiModelProperty("任务创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" ) + private String createTime;*/ + + @ApiModelProperty("任务完成时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8") + private Date finishTime; + + @ApiModelProperty("流程完成时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" ) + private String processEndTime; + + @ApiModelProperty("环节的办理人信息") + private List taskUserInfos; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTaskFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTaskFeign.java new file mode 100644 index 0000000000..35b0fbd59d --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTaskFeign.java @@ -0,0 +1,37 @@ +package com.yxt.crm.feign.flowable.flowtask; + +import com.yxt.common.core.result.ResultBean; +import com.yxt.crm.feign.flowable.flow.BusinessVariables; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +@FeignClient( + contextId = "anrui-flowable-FlowTask", + name = "anrui-flowable", + path = "v1/flowable/task") +public interface FlowTaskFeign { + + @ApiOperation(value = "获取下一个环节") + @PostMapping(value = "/getNextNodesForSubmit") + ResultBean getNextNodesForSubmit(@RequestBody BusinessVariables bv); + + @ApiOperation(value = "根据流程实例的id获取最新待办环节") + @PostMapping(value = "/获取上一个环节") + ResultBean getPreviousNodesForReject(@RequestBody BusinessVariables bv); + + @ApiOperation(value = "根据流程实例的id获取最新待办环节") + @PostMapping(value = "/getLatestTasks/{procId}") + ResultBean> getLatestTasks(@PathVariable(value = "procId") String procId); + + @ApiOperation(value = "业务系统流程历史流转记录" ) + @GetMapping(value = "/businessFlowRecord/{procInsId}") + public ResultBean businessFlowRecord(@PathVariable(value = "procInsId")String procInsId); + +} + diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTaskVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTaskVo.java new file mode 100644 index 0000000000..6250916a81 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/FlowTaskVo.java @@ -0,0 +1,53 @@ +package com.yxt.crm.feign.flowable.flowtask; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + *

流程任务

+ * + * @author XuanXuan + * @date 2021-04-03 + */ +@ApiModel("工作流任务相关--请求参数") +@Data +public class FlowTaskVo { + + @ApiModelProperty("任务Id") + private String taskId; + @ApiModelProperty("业务sid") + private String businessSid; + @ApiModelProperty("用户Id") + private String userId; + @ApiModelProperty("用户Sid") + private String userSid; + + @ApiModelProperty("任务意见") + private String comment; + + @ApiModelProperty("流程实例Id") + private String instanceId; + + @ApiModelProperty("节点") + private String targetKey; + + @ApiModelProperty("流程变量信息") + private Map values=new HashMap<>(); + + @ApiModelProperty("审批人") + private String assignee; + + @ApiModelProperty("候选人") + private List candidateUsers; + + @ApiModelProperty("审批组") + private List candidateGroups; + + + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/LatestTaskVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/LatestTaskVo.java new file mode 100644 index 0000000000..08d9ee280b --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/LatestTaskVo.java @@ -0,0 +1,34 @@ +package com.yxt.crm.feign.flowable.flowtask; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Description + * @Author liuguohui + * @Date 2022/1/11 + */ +@ApiModel("最近环节") +@Data +public class LatestTaskVo implements Vo { + + @ApiModelProperty(value = "name_") + private String name_; + + @ApiModelProperty(value = "task_def_key_") + private String task_def_key_; + + @ApiModelProperty(value = "id_") + private String id_; + + @ApiModelProperty(value = "name_") + private String ASSIGNEE_; + + @ApiModelProperty(value = "orgPath") + private String orgPath; + + @ApiModelProperty(value = "incomingSourceRef") + private String incomingSourceRef; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/TaskUserInfo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/TaskUserInfo.java new file mode 100644 index 0000000000..26a4142378 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/flowable/flowtask/TaskUserInfo.java @@ -0,0 +1,31 @@ +package com.yxt.crm.feign.flowable.flowtask; + +public class TaskUserInfo { + private String assigneeName; + private String assigneeHeadImage; + private String assigneeSid; + + public String getAssigneeSid() { + return assigneeSid; + } + + public void setAssigneeSid(String assigneeSid) { + this.assigneeSid = assigneeSid; + } + + public String getAssigneeName() { + return assigneeName; + } + + public void setAssigneeName(String assigneeName) { + this.assigneeName = assigneeName; + } + + public String getAssigneeHeadImage() { + return assigneeHeadImage; + } + + public void setAssigneeHeadImage(String assigneeHeadImage) { + this.assigneeHeadImage = assigneeHeadImage; + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFeign.java new file mode 100644 index 0000000000..e03026d5ba --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFeign.java @@ -0,0 +1,26 @@ +package com.yxt.crm.feign.message; + +import com.yxt.common.core.result.ResultBean; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +@Api(tags = "消息体") +@FeignClient( + contextId = "message-center-Message", + name = "message-center", + path = "v1/message") +public interface MessageFeign { + + /** + * 流程审批推送消息 + * + * @param query + * @return + */ + @ApiOperation("流程审批推送消息") + @PostMapping("/pushMessage") + ResultBean pushMessage(@RequestBody MessageFlowableQuery query); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFlowVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFlowVo.java new file mode 100644 index 0000000000..51b3aca0a7 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFlowVo.java @@ -0,0 +1,21 @@ +package com.yxt.crm.feign.message; + +import com.yxt.common.core.vo.Vo; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/8/25 15:58 + * @Description + */ +@Data +public class MessageFlowVo implements Vo { + + private String sid; + private String procDefId; + private String nodeState; + private String procInsId; + private String taskDefKey; + private String taskId; + private String nextNodeUserSids; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFlowableQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFlowableQuery.java new file mode 100644 index 0000000000..9366fd60be --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/MessageFlowableQuery.java @@ -0,0 +1,32 @@ +package com.yxt.crm.feign.message; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Map; + +/** + * @Author dimengzhe + * @Date 2022/8/25 15:12 + * @Description + */ +@Data +public class MessageFlowableQuery implements Query { + private static final long serialVersionUID = 3618558867479892211L; + @ApiModelProperty("业务sid") + private String businessSid; + @ApiModelProperty("模块名称") + private String moduleName; + @ApiModelProperty("消息内容") + private String msgContent; + @ApiModelProperty("消息标题") + private String msgTitle; + @ApiModelProperty("流程相关参数") + private MessageFlowVo ufVo; + @ApiModelProperty("app所需参数") + private Map appMap; + @ApiModelProperty("申请人") + private String applicationName; + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/PushMessageQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/PushMessageQuery.java new file mode 100644 index 0000000000..99ae5c01ba --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/message/PushMessageQuery.java @@ -0,0 +1,34 @@ +package com.yxt.crm.feign.message; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @description: + * @author: dimengzhe + * @date: 2023/8/10 + **/ +@Data +public class PushMessageQuery implements Query { + private static final long serialVersionUID = -5710109873182775336L; + + @ApiModelProperty("业务sid") + private String businessSid; + @ApiModelProperty("模块名称") + private String moduleName; + @ApiModelProperty("消息内容") + private String msgContent; + @ApiModelProperty("消息标题") + private String msgTitle; + @ApiModelProperty("接收人sidList") + private List receivedSids; + /* @ApiModelProperty("跳转地址") + private String msgTargetUri;*/ + @ApiModelProperty("0.内置Activity 1.内置WebView 2.RePlugin插件") + private String app_type; + @ApiModelProperty("插件sid") + private String moduleSid; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonFeign.java new file mode 100644 index 0000000000..cb8906e692 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonFeign.java @@ -0,0 +1,36 @@ +package com.yxt.crm.feign.portal.dictcommon; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** + * @author dimengzhe + * @date 2021/7/5 21:59 + * @description + */ +@FeignClient( + contextId = "anrui-portal-DictCommon", + name = "anrui-portal", + path = "v1/dictcommons" + ) +public interface DictCommonFeign { + + @GetMapping("/getFirstDictKeyByType") + @ResponseBody + @ApiOperation("根据数据字典的key获取第一个值(默认值)") + ResultBean getFirstDictKeyByType(@RequestParam("dictType") String dictType, @RequestParam("psid") String psid); + + @ResponseBody + @GetMapping("/selectBykey/{key}/{type}") + @ApiOperation(value = "数据字典信息修改时的初始化信息") + public ResultBean selectBykey(@ApiParam(value = "数据字典key", required = true) @PathVariable("key") String key, @ApiParam(value = "数据字典type", required = true) @PathVariable("type") String type); + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonType.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonType.java new file mode 100644 index 0000000000..552ccda70b --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonType.java @@ -0,0 +1,267 @@ +package com.yxt.crm.feign.portal.dictcommon; + +import io.swagger.annotations.ApiModelProperty; + +/** + * @author dimengzhe + * @date 2021/7/1 10:23 + * @description 常量值管理 + */ +public class DictCommonType { + + //客户端获取手机验证码redis前缀定义 + public static final String WX_REGIST = "wx-regist-";//注册获取验证码 + public static final String WX_LOGIN = "wx-login-";//登录获取验证码 + public static final String WX_FORGET = "wx-forget-";//忘记密码获取验证码 + public static final String WX_UPDATE = "wx-update-";//忘记密码获取验证码 + public static final String WX_NEW = "wx-new-";//新手机号获取验证码 + + /*供应厂商相关*/ + @ApiModelProperty(value = "供应商分类") + public static final String SUPPLIER_TYPE = "supplierType";//数据字典已添加 + @ApiModelProperty(value = "供应类别") + public static final String SUPPLY_TYPE = "supplyType";//数据字典已添加 + @ApiModelProperty(value = "供应商分组") + public static final String SUPPLIE_RGROUP = "supplierGroup";//数据字典已添加 + + /*供应厂商财务信息相关*/ + @ApiModelProperty(value = "结算币种") + public static final String SETTLEMENT_CURRENCY = "settlementCurrency";//数据字典已添加 + @ApiModelProperty(value = "结算方式") + public static final String SETTLEMENT_WAY = "settlementWay";//数据字典已添加 + @ApiModelProperty(value = "税分类") + public static final String TAX_CLASSIFICATION = "taxClassification";//数据字典已添加 + /*基础信息品牌相关*/ + @ApiModelProperty(value = "品牌类型") + public static final String BRAND_TYPE = "brandType";//数据字典已添加 + @ApiModelProperty(value = "职级(岗位)") + public static final String POSTLEVEL = "postLevel"; + + /*车型、车型配置、车辆信息相关*/ + @ApiModelProperty(value = "车辆类型") + public static final String VEHICLE_TYPE = "vehicleType";//数据字典已添加 + @ApiModelProperty(value = "排放标准") + public static final String EMISSION_STANDARD = "emissionStandard";//数据字典已添加 + @ApiModelProperty(value = "产品线") + public static final String PRODUCT_LINE = "productLine";//数据字典已添加 + @ApiModelProperty(value = "后桥") + public static final String REAR_AXLE = "rearAxle";//数据字典已添加 + @ApiModelProperty(value = "速比") + public static final String SPEED_RATIO = "speedRatio";//数据字典已添加 + @ApiModelProperty(value = "系别") + private static final String SERIES = "series";//数据字典已添加 + @ApiModelProperty(value = "车辆功能") + private static final String VEHICLE_FUNCTION = "vehicleFunction";//数据字典已添加 + @ApiModelProperty(value = "细分市场") + private static final String MARKETSEGMENTS = "marketSegments";//数据字典已添加 + + @ApiModelProperty(value = "车身颜色") + public static final String BODYCOLOR = "bodyColor"; + @ApiModelProperty(value = "缓速器") + public static final String SLOWMACHINE = "slowMachine"; + @ApiModelProperty(value = "后视镜") + public static final String REARVIEWMIRROR = "rearViewMirror"; + @ApiModelProperty(value = "轮胎") + public static final String TIRESIZE = "tireSize"; + @ApiModelProperty(value = "驾驶室") + public static final String SPECIFICATION = "specification"; + @ApiModelProperty(value = "后桥速比") + public static final String REARAXLERATIO = "rearAxleRatio"; + @ApiModelProperty(value = "轮毂材质") + public static final String HUBMATERIAL = "hubMaterial"; + @ApiModelProperty(value = "悬架") + public static final String SUSPENSION = "suspension"; + @ApiModelProperty(value = "座椅") + public static final String SEAT = "seat"; + @ApiModelProperty(value = "鞍座") + public static final String SADDLE = "saddle"; + @ApiModelProperty(value = "轴距") + public static final String WHEELBASE = "wheelbase"; + @ApiModelProperty(value = "保险杠") + public static final String BUMPER = "bumper"; + @ApiModelProperty(value = "配置包") + public static final String CONFIGURINGBAO = "configuringBao"; + @ApiModelProperty(value = "独立热源") + public static final String INDEPENDENTSOURCES = "independentSources"; + @ApiModelProperty(value = "燃料箱") + public static final String FUELTANK = "fuelTank"; + @ApiModelProperty(value = "有无:1有0无") + public static final String WHETHER = "whether"; + + @ApiModelProperty(value = "车辆状态") + public static final String VEHICLE_STATE = "vehicleState"; + @ApiModelProperty(value = "车辆状态(车辆台账)") + public static final String VEHICLE_LEDGER_STATE = "vehicleLedgerState"; + @ApiModelProperty(value = "驱动") + public static final String DRIVER = "driver"; + @ApiModelProperty(value = "马力") + public static final String HORSEPOWER = "horsepower"; + @ApiModelProperty(value = "锁定状态") + public static final String LOCKED_STATE = "lockedState"; + @ApiModelProperty(value = "预计订金日期") + public static final String RESERVE_DEPOSIT_DATE = "reserveDepositDate"; + + + @ApiModelProperty(value = "贷款主体类型") + public static final String LOANTYPE = "loanType"; + @ApiModelProperty(value = "打包项目") + public static final String PACKAGINGPROJECT = "packagingProject"; + @ApiModelProperty(value = "融资项目(比打包项目多一个“配件”)") + public static final String PACKAGINGPROJECTFIN = "packagingProjectFin"; + @ApiModelProperty(value = "变速箱") + public static final String GEARBOX = "gearbox"; + @ApiModelProperty(value = "燃料种类") + public static final String FUELTYPE = "fuelType"; + @ApiModelProperty(value = "版本(车辆需求)") + public static final String VEHICLEVERSION = "vehicleVersion"; + @ApiModelProperty(value = "采购形式") + public static final String PURCHASINGFORM = "purchasingForm"; + /*经销商相关*/ + @ApiModelProperty(value = "经销商分类") + public static final String DISTRIBUTOR_CLASSIFICATION = "distributorClassification";//数据字典已添加 + @ApiModelProperty(value = "经销商类型") + public static final String DISTRIBUTOR_TYPE = "distributorType";//数据字典已添加 + @ApiModelProperty(value = "经销商等级") + public static final String DISTRIBUTOR_LEVEL = "distributorLevel";//数据字典已添加 + @ApiModelProperty(value = "企业性质") + public static final String ENTERPRISE_NATURE = "enterpriseNature";//数据字典已添加 + @ApiModelProperty(value = "登记状态") + public static final String REGIST_STATE = "registState"; + @ApiModelProperty(value = "注册资本单位") + public static final String REGISTEREDCAPITAL_ORG = "registeredCapitalOrg"; + @ApiModelProperty(value = "项目类型") + public static final String PROJECT_TYPE = "projectType"; + /*经销商相关结束*/ + + + @ApiModelProperty(value = "合格证情况:0001虚拟 ,002正式") + public static final String CERTIFICATE_SITUATION = "certificateSituation"; + @ApiModelProperty(value = "客户类型:1个人2企业") + public static final String CUSTOMER_TYPE = "customerType"; + @ApiModelProperty(value = "登记注册号类型") + public static final String REGIST_NUM_TYPE = "registNumType"; + @ApiModelProperty(value = "现居住状况") + public static final String CURRENT_LIVE_STATE = "currentlivestate"; + @ApiModelProperty(value = "教育程度") + public static final String EDUCATION_DEGREE = "educationdegree"; + @ApiModelProperty(value = "雇员类型") + public static final String EMPLOYEE_TYPE = "employeetype"; + @ApiModelProperty(value = "证件类型") + public static final String DOCUMENT_TYPE = "documenttype"; + @ApiModelProperty(value = "行业类别") + public static final String INDUSTRY_TYPE = "industrytype"; + @ApiModelProperty(value = "经济类型") + public static final String ECONOMIC_TYPE = "economictype"; + @ApiModelProperty(value = "组织机构类别") + public static final String ORGANIZATION_TYPE = "organizationtype"; + @ApiModelProperty(value = "组织机构类别细分") + public static final String ORGANIZATION_TYPE_DETAILS = "organizationtypedetails"; + + @ApiModelProperty(value = "是或否") + public static final String IS_TRUE = "isTrue"; + @ApiModelProperty(value = "准驾车型") + public static final String CAR_TYPE = "carType"; + + @ApiModelProperty(value = "与客户关系") + public static final String RELATION_SHIP = "relationship"; + @ApiModelProperty(value = "现工作单位性质") + public static final String ORG_NATURE = "orgNature"; + @ApiModelProperty(value = "主要收入来源") + public static final String INCOME_SOURCE = "incomeSource"; + @ApiModelProperty(value = "职位") + public static final String POSITION = "position"; + @ApiModelProperty(value = "经销商类型") + public static final String DEALERS_TYPE = "dealersType"; + @ApiModelProperty(value = "附件类型") + public static final String ATTACH_TYPE = "attachType"; + @ApiModelProperty(value = "信用记录") + public static final String CREDIT_RECORD = "creditRecord"; + @ApiModelProperty(value = "拟租赁形式l") + public static final String PLANS_TO_LEASE = "plansToLease"; + @ApiModelProperty(value = "去返程货物") + public static final String GO_GOODS = "goGoods"; + @ApiModelProperty(value = "经营业务范围") + public static final String BUSINESSSCOPE = "businessScope"; + /* 客户信息相关*/ + @ApiModelProperty(value = "客户分类") + public static final String CUSTOMER_CLASS = "customerClass"; + @ApiModelProperty(value = "客户来源") + public static final String CUSTOMER_SOURCE = "customerSource"; + @ApiModelProperty(value = "客户等级") + public static final String CUSTOMER_LEVEL = "customerLevel"; + @ApiModelProperty(value = "来访方式") + public static final String VISIT_WAY = "visitWay"; + @ApiModelProperty(value = "跟进状态") + public static final String FOLLOW_STATE = "followState"; + @ApiModelProperty(value = "提醒日期(天)") + public static final String REMIND_DAY = "remindDay"; + @ApiModelProperty(value = "承运货物类型") + public static final String CONSIGNMENT_TYPE = "consignmentType"; + @ApiModelProperty(value = "承运货物(暂为假数据)") + public static final String CONSIGNMENT = "consignment"; + @ApiModelProperty(value = "购车方式") + public static final String PURCHASETYPE = "purchaseType"; + @ApiModelProperty(value = "提车方式") + public static final String SALETYPE = "saleType"; + /* 车辆订单 */ + @ApiModelProperty(value = "单据类型") + public static final String BILLSTYPE = "billsType"; + @ApiModelProperty(value = "合同类型") + public static final String CONTRACTTYPE = "contractType"; + + @ApiModelProperty(value = "主车优惠类型") + public static final String DISCOUNTTYPE = "discountType"; + @ApiModelProperty(value = "还款方式") + public static final String MODEOFREPAY = "modeOfRePay"; + @ApiModelProperty(value = "保证金方式") + public static final String BONDMETHOD = "bondMethod"; + @ApiModelProperty(value = "业务类型") + public static final String BUSINESSTYPE = "businessType"; + @ApiModelProperty(value = "开户银行") + public static final String BANK = "bank"; + @ApiModelProperty(value = "账户类型") + public static final String ACCOUNTTYPE = "accountType"; + @ApiModelProperty(value = "运输货物") + public static final String TRANSPORTCARGO = "transportCargo"; + @ApiModelProperty(value = "结账周期") + public static final String CHECKOUTCYCLE = "checkoutCycle"; + @ApiModelProperty(value = "虚拟订单类型") + public static final String DEPOSITBILLTYPE = "depositBillType"; + @ApiModelProperty(value = "付款方式") + public static final String PAYMENTTYPE = "paymentType"; + + /* 物料相关 */ + @ApiModelProperty(value = "物料分组") + public static final String MATERIAL_GROUP = "materialGroup"; + @ApiModelProperty(value = "物料属性") + public static final String MATERIAL_PROPERTIES = "materialProperties"; + @ApiModelProperty(value = "存货类别") + public static final String STOCK_TYPE = "stockType"; + @ApiModelProperty(value = "基本单位") + public static final String BASIC_UNIT = "basicUnit"; + + /* 合同相关 */ + @ApiModelProperty(value = "人员类型") + public static final String PERSONNEL_TYPE = "personnelType"; + + /* 开票申请单相关 */ + @ApiModelProperty(value = "开票性质") + public static final String INVOICING_NATURE = "invoicingNature"; + + /*员工信息管理相关*/ + @ApiModelProperty(value = "婚姻状况") + public static final String MARITAL_STATUS = "maritalstatus"; + @ApiModelProperty(value = "民族") + public static final String NATIONAL = "national"; + @ApiModelProperty(value = "性别") + public static final String SEX = "sex"; + @ApiModelProperty(value = "政治面貌") + public static final String POLITICAL = "political"; + + + /*资料清单相关*/ + @ApiModelProperty(value = "资料类别") + public static final String DATA_TYPE = "dataType"; + @ApiModelProperty(value = "文件格式") + public static final String FILE_TYPE = "fileType"; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonVo.java new file mode 100644 index 0000000000..7a9df7da17 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/dictcommon/DictCommonVo.java @@ -0,0 +1,32 @@ +package com.yxt.crm.feign.portal.dictcommon; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author dimengzhe + * @date 2021/6/23 15:54 + * @description + */ +@Data +public class DictCommonVo implements Vo { + private static final long serialVersionUID = -1094142938193916816L; + + @ApiModelProperty(value = "数据字典项sid") + private String sid; + + @ApiModelProperty(value = "数据字典项key") + private String dictKey; + + @ApiModelProperty(value = "数据字典类型") + private String dictType; + + @ApiModelProperty(value = "数据字典项名称") + private String dictValue; + @ApiModelProperty(value = "父级sid:0为第一级") + private String parentSid; + + @ApiModelProperty(value = "分组名称") + private String groupName; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysstafforg/SysStaffOrg.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysstafforg/SysStaffOrg.java new file mode 100644 index 0000000000..3256b2401f --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysstafforg/SysStaffOrg.java @@ -0,0 +1,46 @@ +package com.yxt.crm.feign.portal.sysstafforg; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysStaffOrg.java
+ * Class: com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg
+ * Description: 员工部门关联表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:29
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "员工部门关联表", description = "员工部门关联表") +@TableName("sys_staff_org") +@Data +public class SysStaffOrg extends BaseEntity { + private static final long serialVersionUID = 1L; + + + @ApiModelProperty("部门sid") + private String orgSid; + + @ApiModelProperty("部门名称") + private String orgName; + + @ApiModelProperty("人员sid") + private String staffSid; + + @ApiModelProperty("部门路径") + private String orgSidPath; + + @ApiModelProperty("部门名称路径") + private String orgNamePath; + + @ApiModelProperty("管理类型:1、主管。2、分管。3、员工") + private String manageType; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysstafforg/SysStaffOrgFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysstafforg/SysStaffOrgFeign.java index 719a48186e..ce2f1a9554 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysstafforg/SysStaffOrgFeign.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysstafforg/SysStaffOrgFeign.java @@ -22,4 +22,22 @@ public interface SysStaffOrgFeign { @ResponseBody @ApiOperation("根据用户组织全路径获取用户的分公司sid") ResultBean getOrgSidByPath(@RequestParam("orgPath") String orgPath); + + @GetMapping("/getOrgByStaffSid") + @ResponseBody + @ApiOperation("根据组织staffSid获取分公司SysStaffOrg") + ResultBean getOrgByStaffSid(@RequestParam(value = "staffSid") String staffSid); + + + /** + * 根据用户sid获取分公司sid + * + * @param applySid 用户sid + * @return + */ + @GetMapping("/getPathSidByUserSid") + @ResponseBody + @ApiOperation("根据用户sid获取分公司sid") + ResultBean getPathSidByUserSid(@RequestParam(value = "userSid") String applySid); + } diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/OrgList.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/OrgList.java new file mode 100644 index 0000000000..23c9b2a8f0 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/OrgList.java @@ -0,0 +1,24 @@ +package com.yxt.crm.feign.portal.sysuser; + +import com.yxt.common.core.vo.Vo; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/9/21 9:26 + * @Description + */ +@Data +public class OrgList implements Vo { + private static final long serialVersionUID = -2867882982421321776L; + + private String orgName; + private String orgPath; + + private String deptName; + + private String deptSid; + + private String orgAttributeKey; + private String orgAttributeValue; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserDto.java new file mode 100644 index 0000000000..97ad6236cd --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserDto.java @@ -0,0 +1,42 @@ +package com.yxt.crm.feign.portal.sysuser; + + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysUserDto.java
+ * Class: com.yxt.anrui.portal.api.sysuser.SysUserDto
+ * Description: 用户表 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "用户表 数据传输对象", description = "用户表 数据传输对象") +@Data +public class SysUserDto implements Dto { + @ApiModelProperty("手机号") + private String mobile; + @ApiModelProperty("用户类型:1员工、2客户、3供应商") + private Integer userType; + @ApiModelProperty(value = "姓名", required = true) + @NotBlank(message = "姓名不能为空") + private String name; + @ApiModelProperty(value = "验证码", required = true) + @NotBlank(message = "验证码不能为空") + private String verificationCode; + @ApiModelProperty(value = "部门sid") + private String deptSid; + @ApiModelProperty(value = "岗位sid") + private String postSid; + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserFeign.java index aab255e456..ba2152dfbb 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserFeign.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserFeign.java @@ -6,9 +6,13 @@ import com.yxt.crm.feign.portal.privilege.PrivilegeQuery; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; +import javax.validation.Valid; + @Api(tags = "用户表") @FeignClient( contextId = "anrui-portal-SysUser", @@ -19,4 +23,13 @@ public interface SysUserFeign { @ApiOperation(value = "查询角色权限的层级获取权限id") @PostMapping(value = "/selectPrivilegeLevel") ResultBean selectPrivilegeLevel(@RequestBody PrivilegeQuery query); -} \ No newline at end of file + + @ApiOperation("根据sid获取一条记录") + @GetMapping("/fetchBySid/{sid}") + public ResultBean fetchBySid(@PathVariable("sid") String sid); + + @ApiOperation("新增保存客户账号") + @PostMapping("/saveCustUser") + public ResultBean saveCustUser(@Valid @RequestBody SysUserDto dto); + +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserVo.java new file mode 100644 index 0000000000..35025b7af4 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuser/SysUserVo.java @@ -0,0 +1,99 @@ +package com.yxt.crm.feign.portal.sysuser; + + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysUserVo.java
+ * Class: com.yxt.anrui.portal.api.sysuser.SysUserVo
+ * Description: 用户表 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "用户表 视图数据对象", description = "用户表 视图数据对象") +@Data +@NoArgsConstructor +public class SysUserVo implements Vo { + private static final long serialVersionUID = 2415131854581950721L; + @ApiModelProperty("部门sid") + private String departmentSid; + @ApiModelProperty("部门名称") + private String departmentName; + @ApiModelProperty("上级部门名称-本级部门名称 岗位名称") + @JsonProperty("pNameAndDepartmentNameAndPostName") + private String pNameAndDepartmentNameAndPostName; + @ApiModelProperty("岗位名称") + private String postName; + @ApiModelProperty("岗位Sid") + private String postSid; + @ApiModelProperty("单位sid") + private String organizationSid; + @ApiModelProperty("单位名称") + private String organizationName; + @ApiModelProperty("用户姓名") + private String name; + @ApiModelProperty("登录名,登录名不能相同") + private String userName; + + @ApiModelProperty("id") + private Integer id; + @ApiModelProperty("用户sid") + private String sid; + @ApiModelProperty("是否是管理员:1管理员,2一般用户,0是超级管理员,3尚无单位人员") + private String isAdmin; + @ApiModelProperty("角色名称") + private String roleName; + + @ApiModelProperty("关联的人员sid") + private String staffSid; + + @ApiModelProperty("手机号") + private String mobile; + @ApiModelProperty(value = "禁用状态") + private String isEnable; + + @ApiModelProperty("用户类型:1员工、2客户、3供应商") + private String userType; + @ApiModelProperty("用户类型:1、2、3") + private String userTypeKey; + @ApiModelProperty("用户头像") + private String headImage; + @ApiModelProperty("组织名称") + private String orgNamePath; + @ApiModelProperty("组织sid") + private String orgSidPath; + @ApiModelProperty(value = "token") + private String token; + @ApiModelProperty(value = "角色sids") + private List roleSids = new ArrayList<>(); + + private List orgList = new ArrayList<>(); + @ApiModelProperty("默认的组织机构sid全路径") + private String defaultOrgPath; + @ApiModelProperty("默认的组织机构名称全路径") + private String defaultOrgPathName; + + private String defaultDeptName; + private String defaultDeptSid; + private String defaultOrgAttributeKey; + private String defaultOrgAttributeValue; + + @ApiModelProperty("是否需要更换密码") + private Boolean needResetPsd; + @ApiModelProperty("工号") + private String jobNumber; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRole.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRole.java new file mode 100644 index 0000000000..a62219e347 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRole.java @@ -0,0 +1,34 @@ +package com.yxt.crm.feign.portal.sysuserrole; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysUserRole.java
+ * Class: com.yxt.anrui.portal.api.sysuserrole.SysUserRole
+ * Description: 用户与角色关联表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "用户与角色关联表", description = "用户与角色关联表") +@TableName("sys_user_role") +@Data +public class SysUserRole extends BaseEntity { + private static final long serialVersionUID = 1L; + + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("角色sid") + private String roleSid; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleDto.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleDto.java new file mode 100644 index 0000000000..134a49f4d3 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleDto.java @@ -0,0 +1,32 @@ +package com.yxt.crm.feign.portal.sysuserrole; + + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysUserRoleDto.java
+ * Class: com.yxt.anrui.portal.api.sysuserrole.SysUserRoleDto
+ * Description: 用户与角色关联表 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "用户与角色关联表 数据传输对象", description = "用户与角色关联表 数据传输对象") +@Data +public class SysUserRoleDto implements Dto { + + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("角色sid") + private String roleSid; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleFeign.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleFeign.java new file mode 100644 index 0000000000..1740ba6883 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleFeign.java @@ -0,0 +1,78 @@ +package com.yxt.crm.feign.portal.sysuserrole; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysUserRoleFeign.java
+ * Class: com.yxt.anrui.portal.api.sysuserrole.SysUserRoleFeign
+ * Description: 用户与角色关联表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "用户与角色关联表") +@FeignClient( + contextId = "anrui-portal-SysUserRole", + name = "anrui-portal", + path = "v1/sysuserrole", + fallback = SysUserRoleFeignFallback.class) +public interface SysUserRoleFeign { + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq); + + @ApiOperation("根据条件查询所有数据列表") + @PostMapping("/listAll") + public ResultBean> listAll(@RequestBody SysUserRoleQuery query); + + @ApiOperation("所有数据列表") + @GetMapping("/list") + public ResultBean> list(); + + @ApiOperation("新增保存") + @PostMapping("/save") + public ResultBean save(@RequestBody SysUserRoleDto dto); + + @ApiOperation("修改保存") + @PostMapping("/update") + public ResultBean update(@RequestBody SysUserRoleDto dto); + + @ApiOperation("删除记录") + @GetMapping("/del/{ids}") + public ResultBean del(@PathVariable("ids") String ids); + + @ApiOperation("根据用户sid和角色sid删除记录") + @GetMapping("/delByUserSidAndRoleSid/{userSid}/{roleSid}") + public ResultBean delByUserSidAndRoleSid(@PathVariable("userSid")String userSid, + @PathVariable("roleSid")String roleSid); + + @ApiOperation("获取一条记录") + @GetMapping("/fetch/{id}") + public ResultBean fetch(@PathVariable("id") String id); + + @ApiOperation("根据用户sid查询用户角色sid列表") + @GetMapping("/getUserRoleSidByUserSid/{userSid}") + public ResultBean> getUserRoleSidByUserSid(@PathVariable("userSid") String userSid); + + @ApiOperation("根据角色sid查询用户id列表") + @GetMapping("/getUserIdListByRoleSid") + public ResultBean> getUserIdListByRoleSid(@RequestParam("roleList") List roleList); + + @ApiOperation("查询用户的角色") + @GetMapping("/selectByUserSid") + ResultBean> selectByUserSid(@RequestParam("userSid") String userSid); +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleFeignFallback.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleFeignFallback.java new file mode 100644 index 0000000000..bbd218d7c5 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleFeignFallback.java @@ -0,0 +1,86 @@ +package com.yxt.crm.feign.portal.sysuserrole; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysUserRoleFeignFallback.java
+ * Class: com.yxt.anrui.portal.api.sysuserrole.SysUserRoleFeignFallback
+ * Description: 用户与角色关联表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Component +public class SysUserRoleFeignFallback implements SysUserRoleFeign { + + @Override + public ResultBean> listPage(PagerQuery pq){ + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysuserrole/listPage无法访问"); + } + + @Override + public ResultBean> listAll(SysUserRoleQuery query){ + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysuserrole/listAll无法访问"); + } + + @Override + public ResultBean> list(){ + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysuserrole/list无法访问"); + } + + @Override + public ResultBean save(SysUserRoleDto dto){ + return ResultBean.fireFail().setMsg("接口anrui_portal/sysuserrole/save无法访问"); + } + + @Override + public ResultBean update(SysUserRoleDto dto){ + return ResultBean.fireFail().setMsg("接口anrui_portal/sysuserrole/update无法访问"); + } + + @Override + public ResultBean del(String ids){ + return ResultBean.fireFail().setMsg("接口anrui_portal/sysuserrole/del无法访问"); + } + + @Override + public ResultBean delByUserSidAndRoleSid(String userSid, String roleSid) { + return ResultBean.fireFail().setMsg("接口anrui_portal/sysuserrole/delByUserSidAndRoleSid无法访问"); + } + + @Override + public ResultBean fetch(String id){ + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysuserrole/fetch无法访问"); + } + + @Override + public ResultBean getUserRoleSidByUserSid(String userSid) { + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysuserrole/getUserRoleByUserSid无法访问"); + } + + @Override + public ResultBean getUserIdListByRoleSid(List roleList) { + ResultBean rb = ResultBean.fireFail(); + return rb.setMsg("接口anrui_portal/sysuserrole/getUserIdByRoleSid无法访问"); + } + + @Override + public ResultBean> selectByUserSid(String userSid) { + return null; + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleQuery.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleQuery.java new file mode 100644 index 0000000000..eaf7c69cde --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleQuery.java @@ -0,0 +1,32 @@ +package com.yxt.crm.feign.portal.sysuserrole; + + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysUserRoleQuery.java
+ * Class: com.yxt.anrui.portal.api.sysuserrole.SysUserRoleQuery
+ * Description: 用户与角色关联表 查询条件.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "用户与角色关联表 查询条件", description = "用户与角色关联表 查询条件") +@Data +public class SysUserRoleQuery implements Query { + + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("角色sid") + private String roleSid; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleVo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleVo.java new file mode 100644 index 0000000000..fc3c9327ee --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/portal/sysuserrole/SysUserRoleVo.java @@ -0,0 +1,32 @@ +package com.yxt.crm.feign.portal.sysuserrole; + + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: anrui_portal(门户建设)
+ * File: SysUserRoleVo.java
+ * Class: com.yxt.anrui.portal.api.sysuserrole.SysUserRoleVo
+ * Description: 用户与角色关联表 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-08-03 00:24:30
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@ApiModel(value = "用户与角色关联表 视图数据对象", description = "用户与角色关联表 视图数据对象") +@Data +public class SysUserRoleVo implements Vo { + + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("角色sid") + private String roleSid; +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/utils/Rule.java b/yxt-crm-biz/src/main/java/com/yxt/crm/utils/Rule.java new file mode 100644 index 0000000000..f754e4a634 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/utils/Rule.java @@ -0,0 +1,46 @@ +package com.yxt.crm.utils; + +import cn.hutool.core.date.DateUtil; + +import com.yxt.crm.utils.domain.BillNo; +import org.springframework.util.StringUtils; + +/** + * @Author dimengzhe + * @Date 2022/7/1 9:44 + * @Description 规则 + */ +public class Rule { + + /** + * 单据编号规则:单据名称大写首字母+分公司编码+年份+月份+4位顺序号 + * 单据名称大写首字母+分公司编码+年份+月份 + * 注意:品牌编码暂不用 + * + * @return + */ + public static String getBill(BillNo b) { + String billType = b.getBillType(); + String orgCode = b.getOrgCode(); + String date = DateUtil.format(DateUtil.date(), "yyyyMM"); + String bill = billType; + if (!StringUtils.isEmpty(orgCode)) { + bill = bill + orgCode; + } + bill = bill + date; + return bill; + } + + /** + * 生成单据编号规则 + * + * @param bill 单据名称大写首字母+分公司编码+年份+月份 + * @param i 根据单据编号包含单据名称大写首字母+分公司编码+年份+月份查询出来的单据的个数 + * @return + */ + public static String getBillNo(String bill, int i) { + String num = String.format("%04d", i + 1); // 不足4位补0 + String billNo = bill + num; + return billNo; + } +} diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/utils/domain/BillNo.java b/yxt-crm-biz/src/main/java/com/yxt/crm/utils/domain/BillNo.java new file mode 100644 index 0000000000..70c65d1a02 --- /dev/null +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/utils/domain/BillNo.java @@ -0,0 +1,24 @@ +package com.yxt.crm.utils.domain; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author dimengzhe + * @Date 2022/7/1 9:46 + * @Description + */ +@Data +public class BillNo implements Serializable { + private static final long serialVersionUID = 1598887042562656350L; + +// @ApiModelProperty(value = "品牌编码") +// private String brandCode; + @ApiModelProperty(value = "单据名称首字母") + private String billType; + @ApiModelProperty(value = "分公司编码") + private String orgCode; + +} From e2be799874378a48ad55690268cc4221e26c7a8d Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Mon, 28 Oct 2024 13:58:32 +0800 Subject: [PATCH 2/8] =?UTF-8?q?=E5=94=AE=E5=90=8E=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E4=BC=98=E5=8C=962?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AsCustomerVehicleFeignFallback.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleFeignFallback.java b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleFeignFallback.java index bde9f2b9c1..17a3c773bb 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleFeignFallback.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/feign/as/ascustomervehicle/AsCustomerVehicleFeignFallback.java @@ -26,6 +26,7 @@ package com.yxt.crm.feign.as.ascustomervehicle; import com.yxt.common.core.result.ResultBean; +import com.yxt.crm.biz.crmmaintenanceenterpriserecord.CarListVo; import org.springframework.stereotype.Component; import java.util.List; @@ -51,4 +52,19 @@ public class AsCustomerVehicleFeignFallback implements AsCustomerVehicleFeign{ public ResultBean> listCustomerVeh() { return null; } -} \ No newline at end of file + + @Override + public int getVehListCountsByCustomerSid(String customerSid) { + return 0; + } + + @Override + public ResultBean> getVehListByCustomerSid(String customerSid) { + return null; + } + + @Override + public ResultBean save(AsCustomerVehicleDto dto) { + return null; + } +} From ced070ef0a7864d0812d7f87042bfaacd0f564af Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Mon, 28 Oct 2024 14:05:51 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E5=94=AE=E5=90=8E=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E4=BC=98=E5=8C=963?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../as/api/ascustomervehicle/AsCustomerVehicleDto.java | 4 +++- .../com/yxt/crm/biz/crmcustomer/CrmCustomerService.java | 7 +++++++ .../feign/as/ascustomervehicle/AsCustomerVehicleDto.java | 4 +++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerVehicleDto.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerVehicleDto.java index b6a8efd0d8..4195444389 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerVehicleDto.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/ascustomervehicle/AsCustomerVehicleDto.java @@ -69,5 +69,7 @@ public class AsCustomerVehicleDto implements Dto { private String buyDate; // 购车日期 @ApiModelProperty("0为内部车,1为外部车") private Integer vehState; // 0为内部车,1为外部车 - + @ApiModelProperty("销售公司") + private String saleOrgName; // 销售公司名称-集团销售时有值 + private String saleDate; // 销售日期-集团销售时有值 } diff --git a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerService.java b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerService.java index f308daaa26..0ff1addd01 100644 --- a/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerService.java +++ b/yxt-crm-biz/src/main/java/com/yxt/crm/biz/crmcustomer/CrmCustomerService.java @@ -415,6 +415,13 @@ public class CrmCustomerService extends MybatisBaseService Date: Mon, 28 Oct 2024 14:27:31 +0800 Subject: [PATCH 4/8] =?UTF-8?q?=E5=AE=8C=E5=96=84=E7=BB=B4=E4=BF=AE?= =?UTF-8?q?=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yxt-as-ui/src/views/operation/repairbill/repairbillAdd.vue | 3 +++ yxt-as-ui/src/views/operation/repairbill/repairbillInfo.vue | 2 ++ 2 files changed, 5 insertions(+) diff --git a/yxt-as-ui/src/views/operation/repairbill/repairbillAdd.vue b/yxt-as-ui/src/views/operation/repairbill/repairbillAdd.vue index 1480de9e0b..4aa578eee1 100644 --- a/yxt-as-ui/src/views/operation/repairbill/repairbillAdd.vue +++ b/yxt-as-ui/src/views/operation/repairbill/repairbillAdd.vue @@ -743,6 +743,7 @@ export default { mobile: '', customerOrg: '', customerSource: '', + customerVehicleSid: '', memberCardSid: '', memberCarNumber: '', vehMark: '', @@ -1062,6 +1063,7 @@ export default { this.formobj.vinNo = value.vinNo this.formobj.vehModel = value.vehModel this.formobj.customerSource = value.source + this.formobj.customerVehicleSid = value.customerVehicleSid // 单据类型为欠款月结时,对接人信息需要从欠款月结客户中获取对应的对接人信息 if (this.formobj.billTypeKey === '2') { req.getListByCustomerSid({ customerSid: this.formobj.customerSid }).then((res) => { @@ -1767,6 +1769,7 @@ export default { mobile: '', customerOrg: '', customerSource: '', + customerVehicleSid: '', memberCardSid: '', memberCarNumber: '', vehMark: '', diff --git a/yxt-as-ui/src/views/operation/repairbill/repairbillInfo.vue b/yxt-as-ui/src/views/operation/repairbill/repairbillInfo.vue index 79fa00a186..0a14bcfed7 100644 --- a/yxt-as-ui/src/views/operation/repairbill/repairbillInfo.vue +++ b/yxt-as-ui/src/views/operation/repairbill/repairbillInfo.vue @@ -378,6 +378,7 @@ export default { mobile: '', customerOrg: '', customerSource: '', + customerVehicleSid: '', memberCardSid: '', memberCarNumber: '', vehMark: '', @@ -527,6 +528,7 @@ export default { mobile: '', customerOrg: '', customerSource: '', + customerVehicleSid: '', memberCardSid: '', memberCarNumber: '', vehMark: '', From 35d1f45e0690cd7f47cde6e741834f7da34d1047 Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Mon, 28 Oct 2024 15:02:15 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E5=AE=8C=E5=96=84=E9=A2=84=E7=BA=A6?= =?UTF-8?q?=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/operation/preregistration/preregistrationAdd.vue | 3 +++ .../views/operation/preregistration/preregistrationInfo.vue | 2 ++ 2 files changed, 5 insertions(+) diff --git a/yxt-as-ui/src/views/operation/preregistration/preregistrationAdd.vue b/yxt-as-ui/src/views/operation/preregistration/preregistrationAdd.vue index 379f583f93..df26458ee6 100644 --- a/yxt-as-ui/src/views/operation/preregistration/preregistrationAdd.vue +++ b/yxt-as-ui/src/views/operation/preregistration/preregistrationAdd.vue @@ -191,6 +191,7 @@ export default { waitorSid: '', waitorName: '', reserveEquip: '', + customerVehicleSid: '', customerSid: '', customerName: '', mobile: '', @@ -307,6 +308,7 @@ export default { value = JSON.parse(JSON.stringify(value)) this.formobj.customerName = value.customerName this.formobj.customerSid = value.sid + this.formobj.customerVehicleSid = value.customerVehicleSid this.formobj.mobile = value.mobile this.formobj.vehMark = value.vehMark this.formobj.vinNo = value.vinNo @@ -503,6 +505,7 @@ export default { waitorSid: '', waitorName: '', reserveEquip: '', + customerVehicleSid: '', customerSid: '', customerName: '', mobile: '', diff --git a/yxt-as-ui/src/views/operation/preregistration/preregistrationInfo.vue b/yxt-as-ui/src/views/operation/preregistration/preregistrationInfo.vue index a34003f9c5..8b9035d2b9 100644 --- a/yxt-as-ui/src/views/operation/preregistration/preregistrationInfo.vue +++ b/yxt-as-ui/src/views/operation/preregistration/preregistrationInfo.vue @@ -104,6 +104,7 @@ export default { waitorSid: '', waitorName: '', reserveEquip: '', + customerVehicleSid: '', customerSid: '', customerName: '', mobile: '', @@ -152,6 +153,7 @@ export default { waitorSid: '', waitorName: '', reserveEquip: '', + customerVehicleSid: '', customerSid: '', customerName: '', mobile: '', From 6e2f56c8cd19e34a9e4e91eb48f46ed2123ac7fc Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Mon, 28 Oct 2024 15:03:53 +0800 Subject: [PATCH 6/8] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/api/client/customermanagement.js | 29 ++++++++---- .../customermanagement/customermanagement.vue | 27 ++++++++++- .../customermanagementAdd.vue | 47 +++++++++++-------- 3 files changed, 72 insertions(+), 31 deletions(-) diff --git a/yxt-as-ui/src/api/client/customermanagement.js b/yxt-as-ui/src/api/client/customermanagement.js index f47b9a4709..4f2c65e915 100644 --- a/yxt-as-ui/src/api/client/customermanagement.js +++ b/yxt-as-ui/src/api/client/customermanagement.js @@ -4,22 +4,31 @@ export default { // 查询分页列表 listPage: function(params) { return request({ - url: '/crm/v1/crmcustomertemp/asListPage', + url: '/yxtcrm/apiadmin/v1/crmcustomer/asListPage', method: 'post', data: params, headers: { 'Content-Type': 'application/json' } }) }, // 初始化 + customerInit: function(data) { + return request({ + url: '/yxtcrm/apiadmin/v1/crmcustomer/customerInit', + method: 'post', + data: data, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 回显 fetchDetailsBySid: function(data) { return request({ - url: '/crm/v1/crmcustomertemp/fetchSid/' + data, + url: '/yxtcrm/apiadmin/v1/crmcustomer/fetchSid/' + data, method: 'get' }) }, save: function(data) { return request({ - url: '/crm/v1/crmcustomertemp/save', + url: '/yxtcrm/apiadmin/v1/crmcustomer/save', method: 'post', data: data, headers: { 'Content-Type': 'application/json' } @@ -27,7 +36,7 @@ export default { }, update: function(data) { return request({ - url: '/crm/v1/crmcustomertemp/update/' + data.sid, + url: '/yxtcrm/apiadmin/v1/crmcustomer/update/' + data.sid, method: 'post', data: data, headers: { 'Content-Type': 'application/json' } @@ -44,7 +53,7 @@ export default { // 定点企业禁用 disableState: function(data) { return request({ - url: '/crm/v1/crmcustomertemp/disableState', + url: '/yxtcrm/apiadmin/v1/crmcustomer/disableState', method: 'post', data: data, headers: { 'Content-Type': 'application/json' } @@ -53,7 +62,7 @@ export default { // 定点企业启用 enable: function(data) { return request({ - url: '/crm/v1/crmcustomertemp/enable', + url: '/yxtcrm/apiadmin/v1/crmcustomer/enable', method: 'post', data: data, headers: { 'Content-Type': 'application/json' } @@ -61,7 +70,7 @@ export default { }, deleteBySids: function(data) { return request({ - url: '/crm/v1/crmcustomertemp/del/', + url: '/yxtcrm/apiadmin/v1/crmcustomer/del/', method: 'DELETE', data: data, headers: { 'Content-Type': 'application/json' } @@ -121,7 +130,7 @@ export default { // 对接人列表 getListByCustomerSid: function(params) { return request({ - url: '/crm/v1/crmdockingpeople/getListByCustomerSid', + url: '/yxtcrm/v1/crmdockingpeople/getListByCustomerSid', method: 'get', params: params }) @@ -129,7 +138,7 @@ export default { // 禁用对接人信息 disableStateByPerson: function(data) { return request({ - url: '/crm/v1/crmdockingpeople/disableState', + url: '/yxtcrm/v1/crmdockingpeople/disableState', method: 'DELETE', data: data, headers: { 'Content-Type': 'application/json' } @@ -138,7 +147,7 @@ export default { // 启用对接人信息 enableByPerson: function(data) { return request({ - url: '/crm/v1/crmdockingpeople/enable', + url: '/yxtcrm/v1/crmdockingpeople/enable', method: 'DELETE', data: data, headers: { 'Content-Type': 'application/json' } diff --git a/yxt-as-ui/src/views/client/customermanagement/customermanagement.vue b/yxt-as-ui/src/views/client/customermanagement/customermanagement.vue index dca3d40ea6..5329a23600 100644 --- a/yxt-as-ui/src/views/client/customermanagement/customermanagement.vue +++ b/yxt-as-ui/src/views/client/customermanagement/customermanagement.vue @@ -119,6 +119,8 @@ + +

客户类型
@@ -128,6 +130,12 @@ + + +
车架号
+ +
+