diff --git a/yudao-ui-admin-vben-master/src/api/xxjj/customer/index.ts b/yudao-ui-admin-vben-master/src/api/xxjj/customer/index.ts new file mode 100644 index 0000000..ef093c6 --- /dev/null +++ b/yudao-ui-admin-vben-master/src/api/xxjj/customer/index.ts @@ -0,0 +1,31 @@ +import { defHttp } from '@/utils/http/axios' + +// 查询客户信息列表 +export function getCustomerPage(params) { + return defHttp.get({ url: '/xxjj/customer/page', params }) +} + +// 查询客户信息详情 +export function getCustomer(id: number) { + return defHttp.get({ url: '/xxjj/customer/get?id=' + id }) +} + +// 新增客户信息 +export function createCustomer(data) { + return defHttp.post({ url: '/xxjj/customer/create', data }) +} + +// 修改客户信息 +export function updateCustomer(data) { + return defHttp.put({ url: '/xxjj/customer/update', data }) +} + +// 删除客户信息 +export function deleteCustomer(id: number) { + return defHttp.delete({ url: '/xxjj/customer/delete?id=' + id }) +} + +// 导出客户信息 Excel +export function exportCustomer(params) { + return defHttp.download({ url: '/xxjj/customer/export-excel', params }, '客户信息.xls') +} diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/businessWarehouse.data.ts b/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/businessWarehouse.data.ts index 1e2ea6d..899eaf3 100644 --- a/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/businessWarehouse.data.ts +++ b/yudao-ui-admin-vben-master/src/views/xxjj/businessWarehouse/businessWarehouse.data.ts @@ -311,4 +311,4 @@ export const updateFormSchema: FormSchema[] = [ options: getDictOptions(DICT_TYPE.DIFF_FLAG, 'number') } }, -] \ No newline at end of file +] diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/customer/CustomerModal.vue b/yudao-ui-admin-vben-master/src/views/xxjj/customer/CustomerModal.vue new file mode 100644 index 0000000..528775c --- /dev/null +++ b/yudao-ui-admin-vben-master/src/views/xxjj/customer/CustomerModal.vue @@ -0,0 +1,57 @@ + + diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/customer/customer.data.ts b/yudao-ui-admin-vben-master/src/views/xxjj/customer/customer.data.ts new file mode 100644 index 0000000..eba9953 --- /dev/null +++ b/yudao-ui-admin-vben-master/src/views/xxjj/customer/customer.data.ts @@ -0,0 +1,659 @@ +import { BasicColumn, FormSchema, useRender } from '@/components/Table' +import { DICT_TYPE, getDictOptions } from '@/utils/dict' + +export const columns: BasicColumn[] = [ + { + title: '编号', + dataIndex: 'id', + width: 160 + }, + { + title: '客户分类(0:一级客户 1:二级客户)', + dataIndex: 'customerCalssify', + width: 180, + customRender: ({ text }) => { + return useRender.renderDict(text, DICT_TYPE.CUSTOMER_CALSSIFY) + } + }, + { + title: '客户名称', + dataIndex: 'customerName', + width: 160 + }, + { + title: '公司logo', + dataIndex: 'customerLogo', + width: 160 + }, + { + title: '企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业)', + dataIndex: 'enterpriseNature', + width: 180, + customRender: ({ text }) => { + return useRender.renderDict(text, DICT_TYPE.ENTERPRISE_NATURE) + } + }, + { + title: '客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径)', + dataIndex: 'customerSource', + width: 180, + customRender: ({ text }) => { + return useRender.renderDict(text, DICT_TYPE.PRODUCT_CLASS) + } + }, + { + title: '客户星级(0:一星 1:二星 2:三星 3:四星 4:五星)', + dataIndex: 'customerStarrating', + width: 180, + customRender: ({ text }) => { + return useRender.renderDict(text, DICT_TYPE.CUSTOMER_STARRATING) + } + }, + { + title: '业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置)', + dataIndex: 'industrySchedule', + width: 180, + customRender: ({ text }) => { + return useRender.renderDict(text, DICT_TYPE.INDUSTRY_SCHEDULE) + } + }, + { + title: '归属人员', + dataIndex: 'belongingPeople', + width: 160 + }, + { + title: '所在城市', + dataIndex: 'city', + width: 160 + }, + { + title: '国家', + dataIndex: 'country', + width: 160 + }, + { + title: '详细地址', + dataIndex: 'address', + width: 160 + }, + { + title: '公司电话', + dataIndex: 'phone', + width: 160 + }, + { + title: '公司传真', + dataIndex: 'companyFax', + width: 160 + }, + { + title: '公司网址', + dataIndex: 'companyHttp', + width: 160 + }, + { + title: '公司介绍', + dataIndex: 'companyProfile', + width: 160 + }, + { + title: '客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)', + dataIndex: 'customerStatus', + width: 180, + customRender: ({ text }) => { + return useRender.renderDict(text, DICT_TYPE.CUSTOMER_STATUS1) + } + }, + { + title: '社会信息代码证(营业执照)', + dataIndex: 'socialInformationCodeCertificate', + width: 160 + }, + { + title: '法定代表人证件照', + dataIndex: 'legalRepresentativesPhoto', + width: 160 + }, + { + title: '实缴资金证明', + dataIndex: 'proofPaidCapital', + width: 160 + }, + { + title: '资产证明', + dataIndex: 'assetCertificate', + width: 160 + }, + { + title: '资产抵押证明', + dataIndex: 'assetCertificateMortgage', + width: 160 + }, + { + title: '担保人证明', + dataIndex: 'guarantorCertificate', + width: 160 + }, + { + title: '经营范围', + dataIndex: 'businessScope', + width: 160 + }, + { + title: '创建时间', + dataIndex: 'createTime', + width: 180, + customRender: ({ text }) => { + return useRender.renderDate(text) + } + }, + { + title: '行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电)', + dataIndex: 'industryClassify', + width: 160 + }, + { + title: '其他资质文件', + dataIndex: 'otherQualifications', + width: 160 + }, +] + +export const searchFormSchema: FormSchema[] = [ + { + label: '客户分类(0:一级客户 1:二级客户)', + field: 'customerCalssify', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.CUSTOMER_CALSSIFY) + }, + colProps: { span: 8 } + }, + { + label: '客户名称', + field: 'customerName', + component: 'Input', + colProps: { span: 8 } + }, + { + label: '公司logo', + field: 'customerLogo', + component: 'Input', + colProps: { span: 8 } + }, + { + label: '企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业)', + field: 'enterpriseNature', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.ENTERPRISE_NATURE) + }, + colProps: { span: 8 } + }, + { + label: '客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径)', + field: 'customerSource', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.PRODUCT_CLASS) + }, + colProps: { span: 8 } + }, + { + label: '客户星级(0:一星 1:二星 2:三星 3:四星 4:五星)', + field: 'customerStarrating', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.CUSTOMER_STARRATING) + }, + colProps: { span: 8 } + }, + { + label: '业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置)', + field: 'industrySchedule', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.INDUSTRY_SCHEDULE) + }, + colProps: { span: 8 } + }, + { + label: '归属人员', + field: 'belongingPeople', + component: 'Input', + colProps: { span: 8 } + }, + { + label: '所在城市', + field: 'city', + component: 'Input', + colProps: { span: 8 } + }, + { + label: '国家', + field: 'country', + component: 'Input', + colProps: { span: 8 } + }, + { + label: '详细地址', + field: 'address', + component: 'Input', + colProps: { span: 8 } + }, + { + label: '公司电话', + field: 'phone', + component: 'Input', + colProps: { span: 8 } + }, + { + label: '公司传真', + field: 'companyFax', + component: 'Input', + colProps: { span: 8 } + }, + { + label: '公司网址', + field: 'companyHttp', + component: 'Input', + colProps: { span: 8 } + }, + { + label: '公司介绍', + field: 'companyProfile', + colProps: { span: 8 } + }, + { + label: '客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)', + field: 'customerStatus', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.CUSTOMER_STATUS1) + }, + colProps: { span: 8 } + }, + { + label: '社会信息代码证(营业执照)', + field: 'socialInformationCodeCertificate', + component: 'RangePicker', + colProps: { span: 8 } + }, + { + label: '法定代表人证件照', + field: 'legalRepresentativesPhoto', + colProps: { span: 8 } + }, + { + label: '实缴资金证明', + field: 'proofPaidCapital', + colProps: { span: 8 } + }, + { + label: '资产证明', + field: 'assetCertificate', + colProps: { span: 8 } + }, + { + label: '资产抵押证明', + field: 'assetCertificateMortgage', + colProps: { span: 8 } + }, + { + label: '担保人证明', + field: 'guarantorCertificate', + colProps: { span: 8 } + }, + { + label: '经营范围', + field: 'businessScope', + colProps: { span: 8 } + }, + { + label: '创建时间', + field: 'createTime', + component: 'RangePicker', + colProps: { span: 8 } + }, + { + label: '行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电)', + field: 'industryClassify', + component: 'Input', + colProps: { span: 8 } + }, + { + label: '其他资质文件', + field: 'otherQualifications', + component: 'Input', + colProps: { span: 8 } + }, +] + +export const createFormSchema: FormSchema[] = [ + { + label: '编号', + field: 'id', + show: false, + component: 'Input' + }, + { + label: '客户分类(0:一级客户 1:二级客户)', + field: 'customerCalssify', + required: true, + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.CUSTOMER_CALSSIFY, 'number') + } + }, + { + label: '客户名称', + field: 'customerName', + component: 'Input' + }, + { + label: '公司logo', + field: 'customerLogo', + component: 'Input' + }, + { + label: '企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业)', + field: 'enterpriseNature', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.ENTERPRISE_NATURE, 'number') + } + }, + { + label: '客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径)', + field: 'customerSource', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.PRODUCT_CLASS, 'number') + } + }, + { + label: '客户星级(0:一星 1:二星 2:三星 3:四星 4:五星)', + field: 'customerStarrating', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.CUSTOMER_STARRATING, 'number') + } + }, + { + label: '业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置)', + field: 'industrySchedule', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.INDUSTRY_SCHEDULE, 'number') + } + }, + { + label: '归属人员', + field: 'belongingPeople', + component: 'Input' + }, + { + label: '所在城市', + field: 'city', + component: 'Input' + }, + { + label: '国家', + field: 'country', + component: 'Input' + }, + { + label: '详细地址', + field: 'address', + component: 'Input' + }, + { + label: '公司电话', + field: 'phone', + component: 'Input' + }, + { + label: '公司传真', + field: 'companyFax', + component: 'Input' + }, + { + label: '公司网址', + field: 'companyHttp', + component: 'Input' + }, + { + label: '公司介绍', + field: 'companyProfile', + component: 'InputTextArea' + }, + { + label: '客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)', + field: 'customerStatus', + required: true, + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.CUSTOMER_STATUS1, 'number') + } + }, + { + label: '社会信息代码证(营业执照)', + field: 'socialInformationCodeCertificate', + component: 'DatePicker' + }, + { + label: '法定代表人证件照', + field: 'legalRepresentativesPhoto', + component: 'FileUpload', + componentProps: { + fileType: 'file', + maxCount: 1 + } + }, + { + label: '实缴资金证明', + field: 'proofPaidCapital', + component: 'FileUpload', + componentProps: { + fileType: 'file', + maxCount: 1 + } + }, + { + label: '资产证明', + field: 'assetCertificate', + component: 'FileUpload', + componentProps: { + fileType: 'file', + maxCount: 1 + } + }, + { + label: '资产抵押证明', + field: 'assetCertificateMortgage', + component: 'FileUpload', + componentProps: { + fileType: 'file', + maxCount: 1 + } + }, + { + label: '担保人证明', + field: 'guarantorCertificate', + component: 'FileUpload', + componentProps: { + fileType: 'file', + maxCount: 1 + } + }, + { + label: '经营范围', + field: 'businessScope', + component: 'InputTextArea' + }, + { + label: '行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电)', + field: 'industryClassify', + component: 'Input' + }, + { + label: '其他资质文件', + field: 'otherQualifications', + component: 'Input' + }, +] + +export const updateFormSchema: FormSchema[] = [ + { + label: '编号', + field: 'id', + show: false, + component: 'Input' + }, + { + label: '客户分类(0:一级客户 1:二级客户)', + field: 'customerCalssify', + required: true, + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.CUSTOMER_CALSSIFY, 'number') + } + }, + { + label: '客户名称', + field: 'customerName', + component: 'Input' + }, + { + label: '公司logo', + field: 'customerLogo', + component: 'Input' + }, + { + label: '企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业)', + field: 'enterpriseNature', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.ENTERPRISE_NATURE, 'number') + } + }, + { + label: '客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径)', + field: 'customerSource', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.PRODUCT_CLASS, 'number') + } + }, + { + label: '客户星级(0:一星 1:二星 2:三星 3:四星 4:五星)', + field: 'customerStarrating', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.CUSTOMER_STARRATING, 'number') + } + }, + { + label: '业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置)', + field: 'industrySchedule', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.INDUSTRY_SCHEDULE, 'number') + } + }, + { + label: '归属人员', + field: 'belongingPeople', + component: 'Input' + }, + { + label: '所在城市', + field: 'city', + component: 'Input' + }, + { + label: '国家', + field: 'country', + component: 'Input' + }, + { + label: '详细地址', + field: 'address', + component: 'Input' + }, + { + label: '公司电话', + field: 'phone', + component: 'Input' + }, + { + label: '公司传真', + field: 'companyFax', + component: 'Input' + }, + { + label: '公司网址', + field: 'companyHttp', + component: 'Input' + }, + { + label: '公司介绍', + field: 'companyProfile', + component: 'InputTextArea' + }, + { + label: '客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)', + field: 'customerStatus', + required: true, + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.CUSTOMER_STATUS1, 'number') + } + }, + { + label: '社会信息代码证(营业执照)', + field: 'socialInformationCodeCertificate', + component: 'DatePicker' + }, + { + label: '法定代表人证件照', + field: 'legalRepresentativesPhoto', + component: 'Upload' + }, + { + label: '实缴资金证明', + field: 'proofPaidCapital', + component: 'Upload' + }, + { + label: '资产证明', + field: 'assetCertificate', + component: 'Upload' + }, + { + label: '资产抵押证明', + field: 'assetCertificateMortgage', + component: 'Upload' + }, + { + label: '担保人证明', + field: 'guarantorCertificate', + component: 'Upload' + }, + { + label: '经营范围', + field: 'businessScope', + component: 'InputTextArea' + }, + { + label: '行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电)', + field: 'industryClassify', + component: 'Input' + }, + { + label: '其他资质文件', + field: 'otherQualifications', + component: 'Input' + }, +] \ No newline at end of file diff --git a/yudao-ui-admin-vben-master/src/views/xxjj/customer/index.vue b/yudao-ui-admin-vben-master/src/views/xxjj/customer/index.vue new file mode 100644 index 0000000..e906d5d --- /dev/null +++ b/yudao-ui-admin-vben-master/src/views/xxjj/customer/index.vue @@ -0,0 +1,92 @@ + + diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/EnterpriseController.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/EnterpriseController.java index cc1b3a9..f8a67b7 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/EnterpriseController.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/EnterpriseController.java @@ -1,5 +1,6 @@ package com.yunxi.scm.module.system.controller.admin.enterprise; +import com.yunxi.scm.module.system.controller.admin.user.vo.user.UserUpdateStatusReqVO; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import org.springframework.validation.annotation.Validated; @@ -52,6 +53,16 @@ public class EnterpriseController { return success(true); } + @PutMapping("/updateStatus") + @Operation(summary = "更新企业状态") + @PreAuthorize("@ss.hasPermission('system:enterprise:updateStatus')") + public CommonResult updateEnterpriseStatus(@Valid @RequestBody EnterpriseUpdateReqVO updateReqVO) { + updateReqVO.setEnterpriseStatus("1"); + enterpriseService.updateEnterprise(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") @Operation(summary = "删除企业信息") @Parameter(name = "id", description = "编号", required = true) diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseBaseVO.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseBaseVO.java index e814adb..78f68a9 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseBaseVO.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseBaseVO.java @@ -76,4 +76,7 @@ public class EnterpriseBaseVO { @Schema(description = "描述") private String description; + @Schema(description = "企业状态") + private String enterpriseStatus; + } diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseCreateReqVO.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseCreateReqVO.java index 0c0bbd9..72eade9 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseCreateReqVO.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseCreateReqVO.java @@ -145,4 +145,6 @@ public class EnterpriseCreateReqVO extends EnterpriseBaseVO { @Schema(description = "描述", example = "你猜") private String description; + @Schema(description = "企业状态") + private String enterpriseStatus; } diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseExportReqVO.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseExportReqVO.java index 9938961..ec4868b 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseExportReqVO.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseExportReqVO.java @@ -62,4 +62,7 @@ public class EnterpriseExportReqVO { @Schema(description = "描述") private String description; + + @Schema(description = "企业状态") + private String enterpriseStatus; } diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterprisePageReqVO.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterprisePageReqVO.java index bf19109..0898a48 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterprisePageReqVO.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterprisePageReqVO.java @@ -64,4 +64,7 @@ public class EnterprisePageReqVO extends PageParam { @Schema(description = "描述") private String description; + + @Schema(description = "企业状态") + private String enterpriseStatus; } diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseUpdateReqVO.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseUpdateReqVO.java index 32ac970..b636aeb 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseUpdateReqVO.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/controller/admin/enterprise/vo/EnterpriseUpdateReqVO.java @@ -149,4 +149,6 @@ public class EnterpriseUpdateReqVO extends EnterpriseBaseVO { @Schema(description = "描述", example = "你猜") private String description; + @Schema(description = "企业状态") + private String enterpriseStatus; } diff --git a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/dal/dataobject/enterprise/EnterpriseDO.java b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/dal/dataobject/enterprise/EnterpriseDO.java index f58a1fb..b5437a6 100644 --- a/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/dal/dataobject/enterprise/EnterpriseDO.java +++ b/yunxi-module-system/yunxi-module-system-biz/src/main/java/com/yunxi/scm/module/system/dal/dataobject/enterprise/EnterpriseDO.java @@ -255,5 +255,9 @@ public class EnterpriseDO extends BaseDO { * 企业父id */ private Long parentId; + /** + * 企业状态 + */ + private String enterpriseStatus; } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/CustomerController.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/CustomerController.java index a935b24..1d79307 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/CustomerController.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/CustomerController.java @@ -1,8 +1,5 @@ package com.yunxi.scm.module.xxjj.controller.admin.customer; -import com.yunxi.scm.framework.common.enums.CommonStatusEnum; -import com.yunxi.scm.module.xxjj.controller.admin.workorder.vo.WorkOrderCreateReqVO; -import com.yunxi.scm.module.xxjj.service.workorder.WorkOrderService; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import org.springframework.validation.annotation.Validated; @@ -39,26 +36,14 @@ public class CustomerController { @Resource private CustomerService customerService; - @Resource - private WorkOrderService workOrderService; - @PostMapping("/create") @Operation(summary = "创建客户信息") @PreAuthorize("@ss.hasPermission('xxjj:customer:create')") - public CommonResult createCustomerwork(@Valid @RequestBody CustomerCreateReqVO createReqVO) { + public CommonResult createCustomer(@Valid @RequestBody CustomerCreateReqVO createReqVO) { return success(customerService.createCustomer(createReqVO)); } - - @PostMapping("/creatework") - @Operation(summary = "创建工单") - @PreAuthorize("@ss.hasPermission('xxjj:customer:creatework')") - public CommonResult createCustomer(@Valid @RequestBody WorkOrderCreateReqVO workOrderCreateReqVO) { - return success(workOrderService.createWorkOrder(workOrderCreateReqVO)); - } - - @PutMapping("/update") @Operation(summary = "更新客户信息") @PreAuthorize("@ss.hasPermission('xxjj:customer:update')") @@ -114,18 +99,4 @@ public class CustomerController { ExcelUtils.write(response, "客户信息.xls", "数据", CustomerExcelVO.class, datas); } - - @GetMapping("/list-all-simplecustomer") - @Operation(summary = "获取客户", description = "只包含被开启的客户,主要用于前端的下拉选项") - public CommonResult> getCustomerId() { - CustomerRespVO customerRespVO=new CustomerRespVO(); - String status=Integer.toString(CommonStatusEnum.ENABLE.getStatus()); - customerRespVO.setStatus(status); - - List list = customerService.getCustomerstaus(customerRespVO); - return success(CustomerConvert.INSTANCE.convertList(list)); - } - - - } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerBaseVO.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerBaseVO.java index 93cd012..de968b7 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerBaseVO.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerBaseVO.java @@ -14,34 +14,81 @@ import javax.validation.constraints.*; @Data public class CustomerBaseVO { - @Schema(description = "客户名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六") - @NotNull(message = "客户名称不能为空") + @Schema(description = "客户分类(0:一级客户 1:二级客户)", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "客户分类(0:一级客户 1:二级客户)不能为空") + private String customerCalssify; + + @Schema(description = "客户名称", example = "王五") private String customerName; - @Schema(description = "客户类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") - @NotNull(message = "客户类型不能为空") - private String customerType; + @Schema(description = "公司logo") + private String customerLogo; + + @Schema(description = "企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业)") + private String enterpriseNature; + + @Schema(description = "客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径)") + private String customerSource; + + @Schema(description = "客户星级(0:一星 1:二星 2:三星 3:四星 4:五星)") + private String customerStarrating; + + @Schema(description = "业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置)") + private String industrySchedule; + + @Schema(description = "归属人员") + private String belongingPeople; + + @Schema(description = "所在城市") + private Long city; + + @Schema(description = "国家") + private String country; + + @Schema(description = "详细地址") + private String address; + + @Schema(description = "公司电话") + private String phone; + + @Schema(description = "公司传真") + private String companyFax; + + @Schema(description = "公司网址") + private String companyHttp; + + @Schema(description = "公司介绍") + private String companyProfile; + + @Schema(description = "客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") + @NotNull(message = "客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)不能为空") + private String customerStatus; + + @Schema(description = "社会信息代码证(营业执照)") + private String socialInformationCodeCertificate; + + @Schema(description = "法定代表人证件照") + private String legalRepresentativesPhoto; + + @Schema(description = "实缴资金证明") + private String proofPaidCapital; - @Schema(description = "统一结算主体") - private String unifiedSettlement; + @Schema(description = "资产证明") + private String assetCertificate; - @Schema(description = "客户性质", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "客户性质不能为空") - private String customerNature; + @Schema(description = "资产抵押证明") + private String assetCertificateMortgage; - @Schema(description = "合作模式", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "合作模式不能为空") - private String cooperationMode; + @Schema(description = "担保人证明") + private String guarantorCertificate; - @Schema(description = "隶属业务线", example = "22944") - private Long linebusinessId; + @Schema(description = "经营范围") + private String businessScope; - @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") - @NotNull(message = "状态不能为空") - private String status; + @Schema(description = "行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电)") + private String industryClassify; - @Schema(description = "归属人员",requiredMode = Schema.RequiredMode.REQUIRED, example = "1,2,3") - @NotNull(message = "成员编号数组不能为空") - private Set belongingPeople; + @Schema(description = "其他资质文件") + private String otherQualifications; } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerExcelVO.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerExcelVO.java index 2fdcc5b..a41882a 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerExcelVO.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerExcelVO.java @@ -7,11 +7,14 @@ import java.time.LocalDateTime; import java.time.LocalDateTime; import com.alibaba.excel.annotation.ExcelProperty; +import com.yunxi.scm.framework.excel.core.annotations.DictFormat; +import com.yunxi.scm.framework.excel.core.convert.DictConvert; + /** * 客户信息 Excel VO * - * @author 芋道源码 + * @author 长江云息 */ @Data public class CustomerExcelVO { @@ -19,34 +22,88 @@ public class CustomerExcelVO { @ExcelProperty("编号") private Long id; + @ExcelProperty(value = "客户分类(0:一级客户 1:二级客户)", converter = DictConvert.class) + @DictFormat("customer_calssify") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 + private String customerCalssify; + @ExcelProperty("客户名称") private String customerName; - @ExcelProperty("客户类型") - private String customerType; - - @ExcelProperty("统一结算主体") - private String unifiedSettlement; + @ExcelProperty("公司logo") + private String customerLogo; - @ExcelProperty("客户性质") - private String customerNature; + @ExcelProperty(value = "企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业)", converter = DictConvert.class) + @DictFormat("enterprise_nature") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 + private String enterpriseNature; - @ExcelProperty("合作模式") - private String cooperationMode; + @ExcelProperty(value = "客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径)", converter = DictConvert.class) + @DictFormat("product_class") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 + private String customerSource; - @ExcelProperty("隶属业务线") - private Long linebusinessId; + @ExcelProperty(value = "客户星级(0:一星 1:二星 2:三星 3:四星 4:五星)", converter = DictConvert.class) + @DictFormat("customer_starrating") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 + private String customerStarrating; - @ExcelProperty("状态") - private String status; + @ExcelProperty(value = "业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置)", converter = DictConvert.class) + @DictFormat("industry_schedule") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 + private String industrySchedule; @ExcelProperty("归属人员") - private Set belongingPeople; + private String belongingPeople; + + @ExcelProperty("所在城市") + private Long city; + + @ExcelProperty("国家") + private String country; + + @ExcelProperty("详细地址") + private String address; + + @ExcelProperty("公司电话") + private String phone; + + @ExcelProperty("公司传真") + private String companyFax; + + @ExcelProperty("公司网址") + private String companyHttp; + + @ExcelProperty("公司介绍") + private String companyProfile; + + @ExcelProperty(value = "客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)", converter = DictConvert.class) + @DictFormat("customer_status1") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 + private String customerStatus; + + @ExcelProperty("社会信息代码证(营业执照)") + private String socialInformationCodeCertificate; + + @ExcelProperty("法定代表人证件照") + private String legalRepresentativesPhoto; + + @ExcelProperty("实缴资金证明") + private String proofPaidCapital; + + @ExcelProperty("资产证明") + private String assetCertificate; + + @ExcelProperty("资产抵押证明") + private String assetCertificateMortgage; + + @ExcelProperty("担保人证明") + private String guarantorCertificate; + + @ExcelProperty("经营范围") + private String businessScope; @ExcelProperty("创建时间") private LocalDateTime createTime; - @ExcelProperty("更新时间") - private LocalDateTime updateTime; + @ExcelProperty("行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电)") + private String industryClassify; + + @ExcelProperty("其他资质文件") + private String otherQualifications; } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerExportReqVO.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerExportReqVO.java index 9a0104e..c4e3172 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerExportReqVO.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerExportReqVO.java @@ -13,36 +13,83 @@ import static com.yunxi.scm.framework.common.util.date.DateUtils.FORMAT_YEAR_MON @Data public class CustomerExportReqVO { - @Schema(description = "客户名称", example = "赵六") - private String customerName; + @Schema(description = "客户分类(0:一级客户 1:二级客户)") + private String customerCalssify; - @Schema(description = "客户类型", example = "2") - private String customerType; + @Schema(description = "客户名称", example = "王五") + private String customerName; - @Schema(description = "统一结算主体") - private String unifiedSettlement; + @Schema(description = "公司logo") + private String customerLogo; - @Schema(description = "客户性质") - private String customerNature; + @Schema(description = "企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业)") + private String enterpriseNature; - @Schema(description = "合作模式") - private String cooperationMode; + @Schema(description = "客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径)") + private String customerSource; - @Schema(description = "隶属业务线", example = "22944") - private Long linebusinessId; + @Schema(description = "客户星级(0:一星 1:二星 2:三星 3:四星 4:五星)") + private String customerStarrating; - @Schema(description = "状态", example = "2") - private String status; + @Schema(description = "业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置)") + private String industrySchedule; @Schema(description = "归属人员") private String belongingPeople; + @Schema(description = "所在城市") + private Long city; + + @Schema(description = "国家") + private String country; + + @Schema(description = "详细地址") + private String address; + + @Schema(description = "公司电话") + private String phone; + + @Schema(description = "公司传真") + private String companyFax; + + @Schema(description = "公司网址") + private String companyHttp; + + @Schema(description = "公司介绍") + private String companyProfile; + + @Schema(description = "客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)", example = "1") + private String customerStatus; + + @Schema(description = "社会信息代码证(营业执照)") + private String socialInformationCodeCertificate; + + @Schema(description = "法定代表人证件照") + private String legalRepresentativesPhoto; + + @Schema(description = "实缴资金证明") + private String proofPaidCapital; + + @Schema(description = "资产证明") + private String assetCertificate; + + @Schema(description = "资产抵押证明") + private String assetCertificateMortgage; + + @Schema(description = "担保人证明") + private String guarantorCertificate; + + @Schema(description = "经营范围") + private String businessScope; + @Schema(description = "创建时间") @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] createTime; - @Schema(description = "更新时间") - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) - private LocalDateTime[] updateTime; + @Schema(description = "行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电)") + private String industryClassify; + + @Schema(description = "其他资质文件") + private String otherQualifications; } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerPageReqVO.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerPageReqVO.java index ae9fb6b..6cf2950 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerPageReqVO.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerPageReqVO.java @@ -15,36 +15,83 @@ import static com.yunxi.scm.framework.common.util.date.DateUtils.FORMAT_YEAR_MON @ToString(callSuper = true) public class CustomerPageReqVO extends PageParam { - @Schema(description = "客户名称", example = "赵六") - private String customerName; + @Schema(description = "客户分类(0:一级客户 1:二级客户)") + private String customerCalssify; - @Schema(description = "客户类型", example = "2") - private String customerType; + @Schema(description = "客户名称", example = "王五") + private String customerName; - @Schema(description = "统一结算主体") - private String unifiedSettlement; + @Schema(description = "公司logo") + private String customerLogo; - @Schema(description = "客户性质") - private String customerNature; + @Schema(description = "企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业)") + private String enterpriseNature; - @Schema(description = "合作模式") - private String cooperationMode; + @Schema(description = "客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径)") + private String customerSource; - @Schema(description = "隶属业务线", example = "22944") - private Long linebusinessId; + @Schema(description = "客户星级(0:一星 1:二星 2:三星 3:四星 4:五星)") + private String customerStarrating; - @Schema(description = "状态", example = "2") - private String status; + @Schema(description = "业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置)") + private String industrySchedule; @Schema(description = "归属人员") - private Set belongingPeople; + private String belongingPeople; + + @Schema(description = "所在城市") + private Long city; + + @Schema(description = "国家") + private String country; + + @Schema(description = "详细地址") + private String address; + + @Schema(description = "公司电话") + private String phone; + + @Schema(description = "公司传真") + private String companyFax; + + @Schema(description = "公司网址") + private String companyHttp; + + @Schema(description = "公司介绍") + private String companyProfile; + + @Schema(description = "客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭)", example = "1") + private String customerStatus; + + @Schema(description = "社会信息代码证(营业执照)") + private String socialInformationCodeCertificate; + + @Schema(description = "法定代表人证件照") + private String legalRepresentativesPhoto; + + @Schema(description = "实缴资金证明") + private String proofPaidCapital; + + @Schema(description = "资产证明") + private String assetCertificate; + + @Schema(description = "资产抵押证明") + private String assetCertificateMortgage; + + @Schema(description = "担保人证明") + private String guarantorCertificate; + + @Schema(description = "经营范围") + private String businessScope; @Schema(description = "创建时间") @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] createTime; - @Schema(description = "更新时间") - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) - private LocalDateTime[] updateTime; + @Schema(description = "行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电)") + private String industryClassify; + + @Schema(description = "其他资质文件") + private String otherQualifications; } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerRespVO.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerRespVO.java index a822035..59a5b3f 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerRespVO.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerRespVO.java @@ -10,13 +10,10 @@ import java.time.LocalDateTime; @ToString(callSuper = true) public class CustomerRespVO extends CustomerBaseVO { - @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "7245") + @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9751") private Long id; @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) private LocalDateTime createTime; - @Schema(description = "更新时间", requiredMode = Schema.RequiredMode.REQUIRED) - private LocalDateTime updateTime; - } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerUpdateReqVO.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerUpdateReqVO.java index 2d0756e..e4476f7 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerUpdateReqVO.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/controller/admin/customer/vo/CustomerUpdateReqVO.java @@ -11,7 +11,7 @@ import javax.validation.constraints.*; @ToString(callSuper = true) public class CustomerUpdateReqVO extends CustomerBaseVO { - @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "7245") + @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "9751") @NotNull(message = "编号不能为空") private Long id; diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/convert/customer/CustomerConvert.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/convert/customer/CustomerConvert.java index ef7ecc6..3bb553e 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/convert/customer/CustomerConvert.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/convert/customer/CustomerConvert.java @@ -12,7 +12,7 @@ import com.yunxi.scm.module.xxjj.dal.dataobject.customer.CustomerDO; /** * 客户信息 Convert * - * @author 芋道源码 + * @author 长江云息 */ @Mapper public interface CustomerConvert { diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/dal/dataobject/customer/CustomerDO.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/dal/dataobject/customer/CustomerDO.java index 52e9123..91bd216 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/dal/dataobject/customer/CustomerDO.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/dal/dataobject/customer/CustomerDO.java @@ -1,7 +1,5 @@ package com.yunxi.scm.module.xxjj.dal.dataobject.customer; -import com.yunxi.scm.framework.common.enums.CommonStatusEnum; -import com.yunxi.scm.framework.mybatis.core.type.JsonLongSetTypeHandler; import lombok.*; import java.util.*; import java.time.LocalDateTime; @@ -12,9 +10,9 @@ import com.yunxi.scm.framework.mybatis.core.dataobject.BaseDO; /** * 客户信息 DO * - * @author 芋道源码 + * @author 长江云息 */ -@TableName(value = "xxjj_customer", autoResultMap = true) +@TableName("xxjj_customer") @KeySequence("xxjj_customer_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 @Data @EqualsAndHashCode(callSuper = true) @@ -29,40 +27,117 @@ public class CustomerDO extends BaseDO { */ @TableId private Long id; + /** + * 客户分类(0:一级客户 1:二级客户) + * + * 枚举 {@link TODO customer_calssify 对应的类} + */ + private String customerCalssify; /** * 客户名称 */ private String customerName; /** - * 客户类型 + * 公司logo */ - private String customerType; + private String customerLogo; /** - * 统一结算主体 + * 企业性质(0:国有企业 1:集体企业 2:私营企业 3:股份制企业 4:外资企业 5:合资企业) + * + * 枚举 {@link TODO enterprise_nature 对应的类} */ - private String unifiedSettlement; + private String enterpriseNature; /** - * 客户性质 + * 客户来源(0:电话营销 1:主动来电 2:客户介绍 3:朋友介绍 4:独立开发 5:网络搜索 6:广告杂志 7:展会促销 8:其他途径) + * + * 枚举 {@link TODO product_class 对应的类} */ - private String customerNature; + private String customerSource; /** - * 合作模式 + * 客户星级(0:一星 1:二星 2:三星 3:四星 4:五星) + * + * 枚举 {@link TODO customer_starrating 对应的类} */ - private String cooperationMode; + private String customerStarrating; /** - * 隶属业务线 + * 业务进度(0:了解跟进 1:资料收集 2:客户评审 3:风控核准 4:合作洽谈 5:准备签约 6:已经签约 7:合作叫停 8:暂时搁置) + * + * 枚举 {@link TODO industry_schedule 对应的类} */ - private Long linebusinessId; + private String industrySchedule; /** - * 状态 + * 归属人员 + */ + private String belongingPeople; + /** + * 所在城市 + */ + private Long city; + /** + * 国家 + */ + private String country; + /** + * 详细地址 + */ + private String address; + /** + * 公司电话 + */ + private String phone; + /** + * 公司传真 + */ + private String companyFax; + /** + * 公司网址 + */ + private String companyHttp; + /** + * 公司介绍 + */ + private String companyProfile; + /** + * 客户状态(0:待提交 1:待审核 2:待核准 3:带启用 4:已启用 5:已禁用 6:已关闭) * - * 枚举 {@link CommonStatusEnum} + * 枚举 {@link TODO customer_status1 对应的类} */ - private String status; + private String customerStatus; /** - * 归属人员 + * 社会信息代码证(营业执照) + */ + private String socialInformationCodeCertificate; + /** + * 法定代表人证件照 + */ + private String legalRepresentativesPhoto; + /** + * 实缴资金证明 + */ + private String proofPaidCapital; + /** + * 资产证明 + */ + private String assetCertificate; + /** + * 资产抵押证明 + */ + private String assetCertificateMortgage; + /** + * 担保人证明 + */ + private String guarantorCertificate; + /** + * 经营范围 + */ + private String businessScope; + /** + * 行业分类(0:家用电器 1:交通运输 2:商务服务 3:家具用品 4:电工电气 5:通信产品 6:办公文教 7:运动休闲 8:传媒广电) + */ + private String industryClassify; + /** + * 其他资质文件 */ - @TableField(typeHandler = JsonLongSetTypeHandler.class) - private Set belongingPeople; + private String otherQualifications; } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/dal/mysql/customer/CustomerMapper.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/dal/mysql/customer/CustomerMapper.java index bd293b1..ca29e0f 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/dal/mysql/customer/CustomerMapper.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/dal/mysql/customer/CustomerMapper.java @@ -12,43 +12,71 @@ import com.yunxi.scm.module.xxjj.controller.admin.customer.vo.*; /** * 客户信息 Mapper * - * @author 芋道源码 + * @author 长江云息 */ @Mapper public interface CustomerMapper extends BaseMapperX { default PageResult selectPage(CustomerPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(CustomerDO::getCustomerCalssify, reqVO.getCustomerCalssify()) .likeIfPresent(CustomerDO::getCustomerName, reqVO.getCustomerName()) - .eqIfPresent(CustomerDO::getCustomerType, reqVO.getCustomerType()) - .eqIfPresent(CustomerDO::getUnifiedSettlement, reqVO.getUnifiedSettlement()) - .eqIfPresent(CustomerDO::getCustomerNature, reqVO.getCustomerNature()) - .eqIfPresent(CustomerDO::getCooperationMode, reqVO.getCooperationMode()) - .eqIfPresent(CustomerDO::getLinebusinessId, reqVO.getLinebusinessId()) - .eqIfPresent(CustomerDO::getStatus, reqVO.getStatus()) + .eqIfPresent(CustomerDO::getCustomerLogo, reqVO.getCustomerLogo()) + .eqIfPresent(CustomerDO::getEnterpriseNature, reqVO.getEnterpriseNature()) + .eqIfPresent(CustomerDO::getCustomerSource, reqVO.getCustomerSource()) + .eqIfPresent(CustomerDO::getCustomerStarrating, reqVO.getCustomerStarrating()) + .eqIfPresent(CustomerDO::getIndustrySchedule, reqVO.getIndustrySchedule()) + .eqIfPresent(CustomerDO::getBelongingPeople, reqVO.getBelongingPeople()) + .eqIfPresent(CustomerDO::getCity, reqVO.getCity()) + .eqIfPresent(CustomerDO::getCountry, reqVO.getCountry()) + .eqIfPresent(CustomerDO::getAddress, reqVO.getAddress()) + .eqIfPresent(CustomerDO::getPhone, reqVO.getPhone()) + .eqIfPresent(CustomerDO::getCompanyFax, reqVO.getCompanyFax()) + .eqIfPresent(CustomerDO::getCompanyHttp, reqVO.getCompanyHttp()) + .eqIfPresent(CustomerDO::getCompanyProfile, reqVO.getCompanyProfile()) + .eqIfPresent(CustomerDO::getCustomerStatus, reqVO.getCustomerStatus()) + .eqIfPresent(CustomerDO::getSocialInformationCodeCertificate, reqVO.getSocialInformationCodeCertificate()) + .eqIfPresent(CustomerDO::getLegalRepresentativesPhoto, reqVO.getLegalRepresentativesPhoto()) + .eqIfPresent(CustomerDO::getProofPaidCapital, reqVO.getProofPaidCapital()) + .eqIfPresent(CustomerDO::getAssetCertificate, reqVO.getAssetCertificate()) + .eqIfPresent(CustomerDO::getAssetCertificateMortgage, reqVO.getAssetCertificateMortgage()) + .eqIfPresent(CustomerDO::getGuarantorCertificate, reqVO.getGuarantorCertificate()) + .eqIfPresent(CustomerDO::getBusinessScope, reqVO.getBusinessScope()) .betweenIfPresent(CustomerDO::getCreateTime, reqVO.getCreateTime()) - .betweenIfPresent(CustomerDO::getUpdateTime, reqVO.getUpdateTime()) + .eqIfPresent(CustomerDO::getIndustryClassify, reqVO.getIndustryClassify()) + .eqIfPresent(CustomerDO::getOtherQualifications, reqVO.getOtherQualifications()) .orderByDesc(CustomerDO::getId)); } default List selectList(CustomerExportReqVO reqVO) { return selectList(new LambdaQueryWrapperX() + .eqIfPresent(CustomerDO::getCustomerCalssify, reqVO.getCustomerCalssify()) .likeIfPresent(CustomerDO::getCustomerName, reqVO.getCustomerName()) - .eqIfPresent(CustomerDO::getCustomerType, reqVO.getCustomerType()) - .eqIfPresent(CustomerDO::getUnifiedSettlement, reqVO.getUnifiedSettlement()) - .eqIfPresent(CustomerDO::getCustomerNature, reqVO.getCustomerNature()) - .eqIfPresent(CustomerDO::getCooperationMode, reqVO.getCooperationMode()) - .eqIfPresent(CustomerDO::getLinebusinessId, reqVO.getLinebusinessId()) - .eqIfPresent(CustomerDO::getStatus, reqVO.getStatus()) + .eqIfPresent(CustomerDO::getCustomerLogo, reqVO.getCustomerLogo()) + .eqIfPresent(CustomerDO::getEnterpriseNature, reqVO.getEnterpriseNature()) + .eqIfPresent(CustomerDO::getCustomerSource, reqVO.getCustomerSource()) + .eqIfPresent(CustomerDO::getCustomerStarrating, reqVO.getCustomerStarrating()) + .eqIfPresent(CustomerDO::getIndustrySchedule, reqVO.getIndustrySchedule()) + .eqIfPresent(CustomerDO::getBelongingPeople, reqVO.getBelongingPeople()) + .eqIfPresent(CustomerDO::getCity, reqVO.getCity()) + .eqIfPresent(CustomerDO::getCountry, reqVO.getCountry()) + .eqIfPresent(CustomerDO::getAddress, reqVO.getAddress()) + .eqIfPresent(CustomerDO::getPhone, reqVO.getPhone()) + .eqIfPresent(CustomerDO::getCompanyFax, reqVO.getCompanyFax()) + .eqIfPresent(CustomerDO::getCompanyHttp, reqVO.getCompanyHttp()) + .eqIfPresent(CustomerDO::getCompanyProfile, reqVO.getCompanyProfile()) + .eqIfPresent(CustomerDO::getCustomerStatus, reqVO.getCustomerStatus()) + .eqIfPresent(CustomerDO::getSocialInformationCodeCertificate, reqVO.getSocialInformationCodeCertificate()) + .eqIfPresent(CustomerDO::getLegalRepresentativesPhoto, reqVO.getLegalRepresentativesPhoto()) + .eqIfPresent(CustomerDO::getProofPaidCapital, reqVO.getProofPaidCapital()) + .eqIfPresent(CustomerDO::getAssetCertificate, reqVO.getAssetCertificate()) + .eqIfPresent(CustomerDO::getAssetCertificateMortgage, reqVO.getAssetCertificateMortgage()) + .eqIfPresent(CustomerDO::getGuarantorCertificate, reqVO.getGuarantorCertificate()) + .eqIfPresent(CustomerDO::getBusinessScope, reqVO.getBusinessScope()) .betweenIfPresent(CustomerDO::getCreateTime, reqVO.getCreateTime()) - .betweenIfPresent(CustomerDO::getUpdateTime, reqVO.getUpdateTime()) + .eqIfPresent(CustomerDO::getIndustryClassify, reqVO.getIndustryClassify()) + .eqIfPresent(CustomerDO::getOtherQualifications, reqVO.getOtherQualifications()) .orderByDesc(CustomerDO::getId)); } - default List selectcustomerList(CustomerRespVO reqVO) { - return selectList(new LambdaQueryWrapperX() - .likeIfPresent(CustomerDO::getCustomerName, reqVO.getCustomerName()) - .eqIfPresent(CustomerDO::getStatus, reqVO.getStatus())); - } - } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/service/customer/CustomerService.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/service/customer/CustomerService.java index 1e8fd92..e682e49 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/service/customer/CustomerService.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/service/customer/CustomerService.java @@ -9,7 +9,7 @@ import com.yunxi.scm.framework.common.pojo.PageResult; /** * 客户信息 Service 接口 * - * @author 芋道源码 + * @author 长江云息 */ public interface CustomerService { @@ -67,11 +67,4 @@ public interface CustomerService { */ List getCustomerList(CustomerExportReqVO exportReqVO); - /** - * 获得指定状态的客户 - * - * - * @return 客户 - */ - List getCustomerstaus(CustomerRespVO customerRespVO); } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/service/customer/CustomerServiceImpl.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/service/customer/CustomerServiceImpl.java index a927e2a..3abcd30 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/service/customer/CustomerServiceImpl.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/java/com/yunxi/scm/module/xxjj/service/customer/CustomerServiceImpl.java @@ -18,7 +18,7 @@ import static com.yunxi.scm.module.xxjj.enums.ErrorCodeConstants.*; /** * 客户信息 Service 实现类 * - * @author 芋道源码 + * @author 长江云息 */ @Service @Validated @@ -79,9 +79,4 @@ public class CustomerServiceImpl implements CustomerService { return customerMapper.selectList(exportReqVO); } - @Override - public List getCustomerstaus(CustomerRespVO customerRespVO) { - return customerMapper.selectcustomerList(customerRespVO); - } - } diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/resources/mapper/customer/CustomerMapper.xml b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/resources/mapper/customer/CustomerMapper.xml index 78d7542..6f5b3b5 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/resources/mapper/customer/CustomerMapper.xml +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/main/resources/mapper/customer/CustomerMapper.xml @@ -2,9 +2,11 @@ - + diff --git a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/test/java/com/yunxi/scm/module/xxjj/service/customer/CustomerServiceImplTest.java b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/test/java/com/yunxi/scm/module/xxjj/service/customer/CustomerServiceImplTest.java index 504e911..094f1a6 100644 --- a/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/test/java/com/yunxi/scm/module/xxjj/service/customer/CustomerServiceImplTest.java +++ b/yunxi-module-xxjj/yunxi-module-xxjj-biz/src/test/java/com/yunxi/scm/module/xxjj/service/customer/CustomerServiceImplTest.java @@ -31,7 +31,7 @@ import static org.mockito.Mockito.*; /** * {@link CustomerServiceImpl} 的单元测试类 * - * @author 芋道源码 + * @author 长江云息 */ @Import(CustomerServiceImpl.class) public class CustomerServiceImplTest extends BaseDbUnitTest { @@ -110,50 +110,114 @@ public class CustomerServiceImplTest extends BaseDbUnitTest { public void testGetCustomerPage() { // mock 数据 CustomerDO dbCustomer = randomPojo(CustomerDO.class, o -> { // 等会查询到 + o.setCustomerCalssify(null); o.setCustomerName(null); - o.setCustomerType(null); - o.setUnifiedSettlement(null); - o.setCustomerNature(null); - o.setCooperationMode(null); - o.setLinebusinessId(null); - o.setStatus(null); + o.setCustomerLogo(null); + o.setEnterpriseNature(null); + o.setCustomerSource(null); + o.setCustomerStarrating(null); + o.setIndustrySchedule(null); o.setBelongingPeople(null); + o.setCity(null); + o.setCountry(null); + o.setAddress(null); + o.setPhone(null); + o.setCompanyFax(null); + o.setCompanyHttp(null); + o.setCompanyProfile(null); + o.setCustomerStatus(null); + o.setSocialInformationCodeCertificate(null); + o.setLegalRepresentativesPhoto(null); + o.setProofPaidCapital(null); + o.setAssetCertificate(null); + o.setAssetCertificateMortgage(null); + o.setGuarantorCertificate(null); + o.setBusinessScope(null); o.setCreateTime(null); - o.setUpdateTime(null); + o.setIndustryClassify(null); + o.setOtherQualifications(null); }); customerMapper.insert(dbCustomer); + // 测试 customerCalssify 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerCalssify(null))); // 测试 customerName 不匹配 customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerName(null))); - // 测试 customerType 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerType(null))); - // 测试 unifiedSettlement 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setUnifiedSettlement(null))); - // 测试 customerNature 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerNature(null))); - // 测试 cooperationMode 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCooperationMode(null))); - // 测试 linebusinessId 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setLinebusinessId(null))); - // 测试 status 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setStatus(null))); + // 测试 customerLogo 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerLogo(null))); + // 测试 enterpriseNature 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setEnterpriseNature(null))); + // 测试 customerSource 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerSource(null))); + // 测试 customerStarrating 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerStarrating(null))); + // 测试 industrySchedule 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setIndustrySchedule(null))); // 测试 belongingPeople 不匹配 customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setBelongingPeople(null))); + // 测试 city 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCity(null))); + // 测试 country 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCountry(null))); + // 测试 address 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setAddress(null))); + // 测试 phone 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setPhone(null))); + // 测试 companyFax 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCompanyFax(null))); + // 测试 companyHttp 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCompanyHttp(null))); + // 测试 companyProfile 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCompanyProfile(null))); + // 测试 customerStatus 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerStatus(null))); + // 测试 socialInformationCodeCertificate 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setSocialInformationCodeCertificate(null))); + // 测试 legalRepresentativesPhoto 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setLegalRepresentativesPhoto(null))); + // 测试 proofPaidCapital 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setProofPaidCapital(null))); + // 测试 assetCertificate 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setAssetCertificate(null))); + // 测试 assetCertificateMortgage 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setAssetCertificateMortgage(null))); + // 测试 guarantorCertificate 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setGuarantorCertificate(null))); + // 测试 businessScope 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setBusinessScope(null))); // 测试 createTime 不匹配 customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCreateTime(null))); - // 测试 updateTime 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setUpdateTime(null))); + // 测试 industryClassify 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setIndustryClassify(null))); + // 测试 otherQualifications 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setOtherQualifications(null))); // 准备参数 CustomerPageReqVO reqVO = new CustomerPageReqVO(); + reqVO.setCustomerCalssify(null); reqVO.setCustomerName(null); - reqVO.setCustomerType(null); - reqVO.setUnifiedSettlement(null); - reqVO.setCustomerNature(null); - reqVO.setCooperationMode(null); - reqVO.setLinebusinessId(null); - reqVO.setStatus(null); -// reqVO.setBelongingPeople(null); + reqVO.setCustomerLogo(null); + reqVO.setEnterpriseNature(null); + reqVO.setCustomerSource(null); + reqVO.setCustomerStarrating(null); + reqVO.setIndustrySchedule(null); + reqVO.setBelongingPeople(null); + reqVO.setCity(null); + reqVO.setCountry(null); + reqVO.setAddress(null); + reqVO.setPhone(null); + reqVO.setCompanyFax(null); + reqVO.setCompanyHttp(null); + reqVO.setCompanyProfile(null); + reqVO.setCustomerStatus(null); + reqVO.setSocialInformationCodeCertificate(null); + reqVO.setLegalRepresentativesPhoto(null); + reqVO.setProofPaidCapital(null); + reqVO.setAssetCertificate(null); + reqVO.setAssetCertificateMortgage(null); + reqVO.setGuarantorCertificate(null); + reqVO.setBusinessScope(null); reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); - reqVO.setUpdateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); + reqVO.setIndustryClassify(null); + reqVO.setOtherQualifications(null); // 调用 PageResult pageResult = customerService.getCustomerPage(reqVO); @@ -168,50 +232,114 @@ public class CustomerServiceImplTest extends BaseDbUnitTest { public void testGetCustomerList() { // mock 数据 CustomerDO dbCustomer = randomPojo(CustomerDO.class, o -> { // 等会查询到 + o.setCustomerCalssify(null); o.setCustomerName(null); - o.setCustomerType(null); - o.setUnifiedSettlement(null); - o.setCustomerNature(null); - o.setCooperationMode(null); - o.setLinebusinessId(null); - o.setStatus(null); + o.setCustomerLogo(null); + o.setEnterpriseNature(null); + o.setCustomerSource(null); + o.setCustomerStarrating(null); + o.setIndustrySchedule(null); o.setBelongingPeople(null); + o.setCity(null); + o.setCountry(null); + o.setAddress(null); + o.setPhone(null); + o.setCompanyFax(null); + o.setCompanyHttp(null); + o.setCompanyProfile(null); + o.setCustomerStatus(null); + o.setSocialInformationCodeCertificate(null); + o.setLegalRepresentativesPhoto(null); + o.setProofPaidCapital(null); + o.setAssetCertificate(null); + o.setAssetCertificateMortgage(null); + o.setGuarantorCertificate(null); + o.setBusinessScope(null); o.setCreateTime(null); - o.setUpdateTime(null); + o.setIndustryClassify(null); + o.setOtherQualifications(null); }); customerMapper.insert(dbCustomer); + // 测试 customerCalssify 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerCalssify(null))); // 测试 customerName 不匹配 customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerName(null))); - // 测试 customerType 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerType(null))); - // 测试 unifiedSettlement 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setUnifiedSettlement(null))); - // 测试 customerNature 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerNature(null))); - // 测试 cooperationMode 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCooperationMode(null))); - // 测试 linebusinessId 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setLinebusinessId(null))); - // 测试 status 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setStatus(null))); + // 测试 customerLogo 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerLogo(null))); + // 测试 enterpriseNature 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setEnterpriseNature(null))); + // 测试 customerSource 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerSource(null))); + // 测试 customerStarrating 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerStarrating(null))); + // 测试 industrySchedule 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setIndustrySchedule(null))); // 测试 belongingPeople 不匹配 customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setBelongingPeople(null))); + // 测试 city 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCity(null))); + // 测试 country 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCountry(null))); + // 测试 address 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setAddress(null))); + // 测试 phone 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setPhone(null))); + // 测试 companyFax 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCompanyFax(null))); + // 测试 companyHttp 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCompanyHttp(null))); + // 测试 companyProfile 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCompanyProfile(null))); + // 测试 customerStatus 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCustomerStatus(null))); + // 测试 socialInformationCodeCertificate 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setSocialInformationCodeCertificate(null))); + // 测试 legalRepresentativesPhoto 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setLegalRepresentativesPhoto(null))); + // 测试 proofPaidCapital 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setProofPaidCapital(null))); + // 测试 assetCertificate 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setAssetCertificate(null))); + // 测试 assetCertificateMortgage 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setAssetCertificateMortgage(null))); + // 测试 guarantorCertificate 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setGuarantorCertificate(null))); + // 测试 businessScope 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setBusinessScope(null))); // 测试 createTime 不匹配 customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setCreateTime(null))); - // 测试 updateTime 不匹配 - customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setUpdateTime(null))); + // 测试 industryClassify 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setIndustryClassify(null))); + // 测试 otherQualifications 不匹配 + customerMapper.insert(cloneIgnoreId(dbCustomer, o -> o.setOtherQualifications(null))); // 准备参数 CustomerExportReqVO reqVO = new CustomerExportReqVO(); + reqVO.setCustomerCalssify(null); reqVO.setCustomerName(null); - reqVO.setCustomerType(null); - reqVO.setUnifiedSettlement(null); - reqVO.setCustomerNature(null); - reqVO.setCooperationMode(null); - reqVO.setLinebusinessId(null); - reqVO.setStatus(null); + reqVO.setCustomerLogo(null); + reqVO.setEnterpriseNature(null); + reqVO.setCustomerSource(null); + reqVO.setCustomerStarrating(null); + reqVO.setIndustrySchedule(null); reqVO.setBelongingPeople(null); + reqVO.setCity(null); + reqVO.setCountry(null); + reqVO.setAddress(null); + reqVO.setPhone(null); + reqVO.setCompanyFax(null); + reqVO.setCompanyHttp(null); + reqVO.setCompanyProfile(null); + reqVO.setCustomerStatus(null); + reqVO.setSocialInformationCodeCertificate(null); + reqVO.setLegalRepresentativesPhoto(null); + reqVO.setProofPaidCapital(null); + reqVO.setAssetCertificate(null); + reqVO.setAssetCertificateMortgage(null); + reqVO.setGuarantorCertificate(null); + reqVO.setBusinessScope(null); reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); - reqVO.setUpdateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); + reqVO.setIndustryClassify(null); + reqVO.setOtherQualifications(null); // 调用 List list = customerService.getCustomerList(reqVO);