Compare commits
	
		
			2 Commits
		
	
	
		
			aaa3e7aa3d
			...
			4223630e1d
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 4223630e1d | ||
|  | f95e4a2455 | 
| @ -15,4 +15,7 @@ public interface ErrorCodeConstants { | |||||||
|     // ========== 企业证件 (1-041-100-000) ========== |     // ========== 企业证件 (1-041-100-000) ========== | ||||||
|     ErrorCode CREDENTIAL_MANAGEMENT_NOT_EXISTS = new ErrorCode(1-041-100-000, "企业证件不存在"); |     ErrorCode CREDENTIAL_MANAGEMENT_NOT_EXISTS = new ErrorCode(1-041-100-000, "企业证件不存在"); | ||||||
| 
 | 
 | ||||||
|  |     // ========== Fta 企业信息变更(1-040-101-000) ========== | ||||||
|  |     ErrorCode ENTERPRISE_CHANGE_NOT_EXISTS = new ErrorCode(1_040_101_000, "企业信息变更不存在"); | ||||||
|  | 
 | ||||||
| } | } | ||||||
|  | |||||||
| @ -0,0 +1,95 @@ | |||||||
|  | package cn.iocoder.yudao.module.fta.controller.admin.enterprisechange; | ||||||
|  | 
 | ||||||
|  | import org.springframework.web.bind.annotation.*; | ||||||
|  | import javax.annotation.Resource; | ||||||
|  | import org.springframework.validation.annotation.Validated; | ||||||
|  | import org.springframework.security.access.prepost.PreAuthorize; | ||||||
|  | import io.swagger.v3.oas.annotations.tags.Tag; | ||||||
|  | import io.swagger.v3.oas.annotations.Parameter; | ||||||
|  | import io.swagger.v3.oas.annotations.Operation; | ||||||
|  | 
 | ||||||
|  | import javax.validation.constraints.*; | ||||||
|  | import javax.validation.*; | ||||||
|  | import javax.servlet.http.*; | ||||||
|  | import java.util.*; | ||||||
|  | import java.io.IOException; | ||||||
|  | 
 | ||||||
|  | import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||||||
|  | import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||||||
|  | import cn.iocoder.yudao.framework.common.pojo.CommonResult; | ||||||
|  | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | ||||||
|  | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; | ||||||
|  | 
 | ||||||
|  | import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; | ||||||
|  | 
 | ||||||
|  | import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; | ||||||
|  | import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; | ||||||
|  | 
 | ||||||
|  | import cn.iocoder.yudao.module.fta.controller.admin.enterprisechange.vo.*; | ||||||
|  | import cn.iocoder.yudao.module.fta.dal.dataobject.enterprisechange.EnterpriseChangeDO; | ||||||
|  | import cn.iocoder.yudao.module.fta.service.enterprisechange.EnterpriseChangeService; | ||||||
|  | 
 | ||||||
|  | @Tag(name = "管理后台 - 企业信息变更") | ||||||
|  | @RestController | ||||||
|  | @RequestMapping("/fta/enterprise-change") | ||||||
|  | @Validated | ||||||
|  | public class EnterpriseChangeController { | ||||||
|  | 
 | ||||||
|  |     @Resource | ||||||
|  |     private EnterpriseChangeService enterpriseChangeService; | ||||||
|  | 
 | ||||||
|  |     @PostMapping("/create") | ||||||
|  |     @Operation(summary = "创建企业信息变更") | ||||||
|  |     @PreAuthorize("@ss.hasPermission('fta:enterprise-change:create')") | ||||||
|  |     public CommonResult<Long> createEnterpriseChange(@Valid @RequestBody EnterpriseChangeSaveReqVO createReqVO) { | ||||||
|  |         return success(enterpriseChangeService.createEnterpriseChange(createReqVO)); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @PutMapping("/update") | ||||||
|  |     @Operation(summary = "更新企业信息变更") | ||||||
|  |     @PreAuthorize("@ss.hasPermission('fta:enterprise-change:update')") | ||||||
|  |     public CommonResult<Boolean> updateEnterpriseChange(@Valid @RequestBody EnterpriseChangeSaveReqVO updateReqVO) { | ||||||
|  |         enterpriseChangeService.updateEnterpriseChange(updateReqVO); | ||||||
|  |         return success(true); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @DeleteMapping("/delete") | ||||||
|  |     @Operation(summary = "删除企业信息变更") | ||||||
|  |     @Parameter(name = "id", description = "编号", required = true) | ||||||
|  |     @PreAuthorize("@ss.hasPermission('fta:enterprise-change:delete')") | ||||||
|  |     public CommonResult<Boolean> deleteEnterpriseChange(@RequestParam("id") Long id) { | ||||||
|  |         enterpriseChangeService.deleteEnterpriseChange(id); | ||||||
|  |         return success(true); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @GetMapping("/get") | ||||||
|  |     @Operation(summary = "获得企业信息变更") | ||||||
|  |     @Parameter(name = "id", description = "编号", required = true, example = "1024") | ||||||
|  |     @PreAuthorize("@ss.hasPermission('fta:enterprise-change:query')") | ||||||
|  |     public CommonResult<EnterpriseChangeRespVO> getEnterpriseChange(@RequestParam("id") Long id) { | ||||||
|  |         EnterpriseChangeDO enterpriseChange = enterpriseChangeService.getEnterpriseChange(id); | ||||||
|  |         return success(BeanUtils.toBean(enterpriseChange, EnterpriseChangeRespVO.class)); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @GetMapping("/page") | ||||||
|  |     @Operation(summary = "获得企业信息变更分页") | ||||||
|  |     @PreAuthorize("@ss.hasPermission('fta:enterprise-change:query')") | ||||||
|  |     public CommonResult<PageResult<EnterpriseChangeRespVO>> getEnterpriseChangePage(@Valid EnterpriseChangePageReqVO pageReqVO) { | ||||||
|  |         PageResult<EnterpriseChangeDO> pageResult = enterpriseChangeService.getEnterpriseChangePage(pageReqVO); | ||||||
|  |         return success(BeanUtils.toBean(pageResult, EnterpriseChangeRespVO.class)); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @GetMapping("/export-excel") | ||||||
|  |     @Operation(summary = "导出企业信息变更 Excel") | ||||||
|  |     @PreAuthorize("@ss.hasPermission('fta:enterprise-change:export')") | ||||||
|  |     @ApiAccessLog(operateType = EXPORT) | ||||||
|  |     public void exportEnterpriseChangeExcel(@Valid EnterpriseChangePageReqVO pageReqVO, | ||||||
|  |               HttpServletResponse response) throws IOException { | ||||||
|  |         pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); | ||||||
|  |         List<EnterpriseChangeDO> list = enterpriseChangeService.getEnterpriseChangePage(pageReqVO).getList(); | ||||||
|  |         // 导出 Excel | ||||||
|  |         ExcelUtils.write(response, "企业信息变更.xls", "数据", EnterpriseChangeRespVO.class, | ||||||
|  |                         BeanUtils.toBean(list, EnterpriseChangeRespVO.class)); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,52 @@ | |||||||
|  | package cn.iocoder.yudao.module.fta.controller.admin.enterprisechange.vo; | ||||||
|  | 
 | ||||||
|  | import lombok.*; | ||||||
|  | import java.util.*; | ||||||
|  | import io.swagger.v3.oas.annotations.media.Schema; | ||||||
|  | import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||||||
|  | import org.springframework.format.annotation.DateTimeFormat; | ||||||
|  | import java.time.LocalDateTime; | ||||||
|  | 
 | ||||||
|  | import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; | ||||||
|  | 
 | ||||||
|  | @Schema(description = "管理后台 - 企业信息变更分页 Request VO") | ||||||
|  | @Data | ||||||
|  | @EqualsAndHashCode(callSuper = true) | ||||||
|  | @ToString(callSuper = true) | ||||||
|  | public class EnterpriseChangePageReqVO extends PageParam { | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "创建时间") | ||||||
|  |     @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) | ||||||
|  |     private LocalDateTime[] createTime; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "审批结果", example = "2") | ||||||
|  |     private Integer status; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "变更前企业名称", example = "赵六") | ||||||
|  |     private String oldEnterpriseName; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "变更前企业法定代表人") | ||||||
|  |     private String oldLegalPerson; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业名称", example = "张三") | ||||||
|  |     private String name; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业法定代表人") | ||||||
|  |     private String legalPerson; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "统一社会信用代码") | ||||||
|  |     private String unifiedCreditCode; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "经营状态") | ||||||
|  |     private Integer operateState; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业类型", example = "2") | ||||||
|  |     private Integer enterpriseType; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业所属行业") | ||||||
|  |     private String enterpriseBelongingToIndustry; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "是否涉及危化证") | ||||||
|  |     private Integer isSecure; | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,108 @@ | |||||||
|  | package cn.iocoder.yudao.module.fta.controller.admin.enterprisechange.vo; | ||||||
|  | 
 | ||||||
|  | import io.swagger.v3.oas.annotations.media.Schema; | ||||||
|  | import lombok.*; | ||||||
|  | 
 | ||||||
|  | import java.time.LocalDate; | ||||||
|  | import java.util.*; | ||||||
|  | import java.util.*; | ||||||
|  | import org.springframework.format.annotation.DateTimeFormat; | ||||||
|  | import java.time.LocalDateTime; | ||||||
|  | import com.alibaba.excel.annotation.*; | ||||||
|  | import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat; | ||||||
|  | import cn.iocoder.yudao.framework.excel.core.convert.DictConvert; | ||||||
|  | 
 | ||||||
|  | @Schema(description = "管理后台 - 企业信息变更 Response VO") | ||||||
|  | @Data | ||||||
|  | @ExcelIgnoreUnannotated | ||||||
|  | public class EnterpriseChangeRespVO { | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "30728") | ||||||
|  |     @ExcelProperty("编号") | ||||||
|  |     private Long id; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("创建时间") | ||||||
|  |     private LocalDateTime createTime; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "流程实例编号", example = "28590") | ||||||
|  |     @ExcelProperty("流程实例编号") | ||||||
|  |     private String processInstanceId; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "审批结果", example = "2") | ||||||
|  |     @ExcelProperty(value = "审批结果", converter = DictConvert.class) | ||||||
|  |     @DictFormat("bpm_process_instance_status") // TODO 代码优化:建议设置到对应的 DictTypeConstants 枚举类中 | ||||||
|  |     private Integer status; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "变更前企业名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六") | ||||||
|  |     @ExcelProperty("变更前企业名称") | ||||||
|  |     private String oldEnterpriseName; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "变更前企业法定代表人", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("变更前企业法定代表人") | ||||||
|  |     private String oldLegalPerson; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三") | ||||||
|  |     @ExcelProperty("企业名称") | ||||||
|  |     private String name; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业法定代表人", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("企业法定代表人") | ||||||
|  |     private String legalPerson; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "统一社会信用代码", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("统一社会信用代码") | ||||||
|  |     private String unifiedCreditCode; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "电话", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("电话") | ||||||
|  |     private String telephone; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "邮箱", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("邮箱") | ||||||
|  |     private String mailbox; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "注册地址", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("注册地址") | ||||||
|  |     private String registerAddress; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "通信地址", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("通信地址") | ||||||
|  |     private String communicationAddress; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "经营状态", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty(value = "经营状态", converter = DictConvert.class) | ||||||
|  |     @DictFormat("enterprise_operate_state") // TODO 代码优化:建议设置到对应的 DictTypeConstants 枚举类中 | ||||||
|  |     private Integer operateState; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "成立日期", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("成立日期") | ||||||
|  |     private LocalDate establishDate; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") | ||||||
|  |     @ExcelProperty(value = "企业类型", converter = DictConvert.class) | ||||||
|  |     @DictFormat("enterprise_type") // TODO 代码优化:建议设置到对应的 DictTypeConstants 枚举类中 | ||||||
|  |     private Integer enterpriseType; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业所属地区", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("企业所属地区") | ||||||
|  |     private String enterpriseBelongingToRegion; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业所属行业", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("企业所属行业") | ||||||
|  |     private String enterpriseBelongingToIndustry; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "登记机关", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("登记机关") | ||||||
|  |     private String registerOffice; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "经营许可范围", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty("经营许可范围") | ||||||
|  |     private String operatePermitRange; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "是否涉及危化证", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @ExcelProperty(value = "是否涉及危化证", converter = DictConvert.class) | ||||||
|  |     @DictFormat("enterprise_is_secure") // TODO 代码优化:建议设置到对应的 DictTypeConstants 枚举类中 | ||||||
|  |     private Integer isSecure; | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,89 @@ | |||||||
|  | package cn.iocoder.yudao.module.fta.controller.admin.enterprisechange.vo; | ||||||
|  | 
 | ||||||
|  | import io.swagger.v3.oas.annotations.media.Schema; | ||||||
|  | import lombok.*; | ||||||
|  | 
 | ||||||
|  | import java.time.LocalDate; | ||||||
|  | import java.util.*; | ||||||
|  | import javax.validation.constraints.*; | ||||||
|  | 
 | ||||||
|  | @Schema(description = "管理后台 - 企业信息变更新增/修改 Request VO") | ||||||
|  | @Data | ||||||
|  | public class EnterpriseChangeSaveReqVO { | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "30728") | ||||||
|  |     private Long id; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "变更前企业信息Json字符串", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "变更前企业信息Json字符串不能为空") | ||||||
|  |     private String oldEnterpriseJson; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "变更前企业名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六") | ||||||
|  |     @NotEmpty(message = "变更前企业名称不能为空") | ||||||
|  |     private String oldEnterpriseName; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "变更前企业法定代表人", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "变更前企业法定代表人不能为空") | ||||||
|  |     private String oldLegalPerson; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三") | ||||||
|  |     @NotEmpty(message = "企业名称不能为空") | ||||||
|  |     private String name; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业法定代表人", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "企业法定代表人不能为空") | ||||||
|  |     private String legalPerson; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "统一社会信用代码", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "统一社会信用代码不能为空") | ||||||
|  |     private String unifiedCreditCode; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "电话", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "电话不能为空") | ||||||
|  |     private String telephone; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "邮箱", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "邮箱不能为空") | ||||||
|  |     private String mailbox; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "注册地址", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "注册地址不能为空") | ||||||
|  |     private String registerAddress; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "通信地址", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "通信地址不能为空") | ||||||
|  |     private String communicationAddress; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "经营状态", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "经营状态不能为空") | ||||||
|  |     private Integer operateState; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "成立日期", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "成立日期不能为空") | ||||||
|  |     private LocalDate establishDate; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") | ||||||
|  |     @NotNull(message = "企业类型不能为空") | ||||||
|  |     private Integer enterpriseType; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业所属地区", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "企业所属地区不能为空") | ||||||
|  |     private String enterpriseBelongingToRegion; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "企业所属行业", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "企业所属行业不能为空") | ||||||
|  |     private String enterpriseBelongingToIndustry; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "登记机关", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "登记机关不能为空") | ||||||
|  |     private String registerOffice; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "经营许可范围", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "经营许可范围不能为空") | ||||||
|  |     private String operatePermitRange; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "是否涉及危化证", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "是否涉及危化证不能为空") | ||||||
|  |     private Integer isSecure; | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -79,6 +79,14 @@ public class EnterpriseInformationController { | |||||||
|         return success(BeanUtils.toBean(pageResult, EnterpriseInformationRespVO.class)); |         return success(BeanUtils.toBean(pageResult, EnterpriseInformationRespVO.class)); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     @GetMapping("/passPage") | ||||||
|  |     @Operation(summary = "获得已经通过审核的企业信息分页") | ||||||
|  |     @PreAuthorize("@ss.hasPermission('fta:enterprise-information:query')") | ||||||
|  |     public CommonResult<PageResult<EnterpriseInformationRespVO>> getEnterpriseInformationPassPage(@Valid EnterpriseInformationPageReqVO pageReqVO) { | ||||||
|  |         PageResult<EnterpriseInformationDO> pageResult = enterpriseInformationService.getEnterpriseInformationPage(pageReqVO); | ||||||
|  |         return success(BeanUtils.toBean(pageResult, EnterpriseInformationRespVO.class)); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     @GetMapping("/export-excel") |     @GetMapping("/export-excel") | ||||||
|     @Operation(summary = "导出企业信息 Excel") |     @Operation(summary = "导出企业信息 Excel") | ||||||
|     @PreAuthorize("@ss.hasPermission('fta:enterprise-information:export')") |     @PreAuthorize("@ss.hasPermission('fta:enterprise-information:export')") | ||||||
| @ -92,4 +100,4 @@ public class EnterpriseInformationController { | |||||||
|                         BeanUtils.toBean(list, EnterpriseInformationRespVO.class)); |                         BeanUtils.toBean(list, EnterpriseInformationRespVO.class)); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
| } | } | ||||||
|  | |||||||
| @ -78,4 +78,96 @@ public class EnterpriseInformationSaveReqVO { | |||||||
|     @NotEmpty(message = "审批人不能为空") |     @NotEmpty(message = "审批人不能为空") | ||||||
|     private Map<String, List<Long>> startUserSelectAssignees; |     private Map<String, List<Long>> startUserSelectAssignees; | ||||||
| 
 | 
 | ||||||
|  |     @Schema(description = "负责人证号", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "负责人证号不能为空") | ||||||
|  |     private String principalCertificateNumber; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "负责人姓名", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "负责人姓名不能为空") | ||||||
|  |     private String principalName; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "负责人人员类型", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "负责人人员类型不能为空") | ||||||
|  |     private String principalPersonnelType; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "负责人性别", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "负责人性别不能为空") | ||||||
|  |     private Integer principalSex; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "负责人行业类别", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotEmpty(message = "负责人行业类别不能为空") | ||||||
|  |     private String principalCategoryOfEmployment; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "负责人证初领日期", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "负责人证初领日期不能为空") | ||||||
|  |     private LocalDate principalDateOfIssue; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "负责人证到期日期", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "负责人证到期日期不能为空") | ||||||
|  |     private LocalDate principalExpiryDate; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "负责人证签发机关", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "负责人证签发机关不能为空") | ||||||
|  |     private String principalLicenceIssuingAuthority; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "负责人证图片", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "负责人证图片不能为空") | ||||||
|  |     private String principalImageUrl; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "安全员证号", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "安全员证号不能为空") | ||||||
|  |     private String securityCertificateNumber; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "安全员姓名", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "安全员姓名不能为空") | ||||||
|  |     private String securityName; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "安全员人员类型", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "安全员人员类型不能为空") | ||||||
|  |     private String securityPersonnelType; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "安全员性别", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "安全员性别不能为空") | ||||||
|  |     private Integer securitySex; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "安全员行业类别", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "安全员行业类别不能为空") | ||||||
|  |     private String securityCategoryOfEmployment; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "安全员证初领日期", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "安全员证初领日期不能为空") | ||||||
|  |     private LocalDate securityDateOfIssue; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "安全员证到期日期", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "安全员证到期日期不能为空") | ||||||
|  |     private LocalDate securityExpiryDate; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "安全员证签发机关", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "安全员证签发机关不能为空") | ||||||
|  |     private String securityLicenceIssuingAuthority; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "安全员证图片", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "安全员证图片不能为空") | ||||||
|  |     private String securityImageUrl; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "危化证经营方式", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "危化证经营方式不能为空") | ||||||
|  |     private String dangerBusinessPattern; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "危化证发证机关", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "危化证发证机关不能为空") | ||||||
|  |     private String dangerLicenceIssuingAuthority; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "危化证发证日期", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "危化证发证日期不能为空") | ||||||
|  |     private LocalDate dangerDateOfIssue; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "危化证到期日期", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "危化证到期日期不能为空") | ||||||
|  |     private LocalDate dangerExpiryDate; | ||||||
|  | 
 | ||||||
|  |     @Schema(description = "危化证图片", requiredMode = Schema.RequiredMode.REQUIRED) | ||||||
|  |     @NotNull(message = "危化证图片不能为空") | ||||||
|  |     private String dangerImageUrl; | ||||||
|  | 
 | ||||||
| } | } | ||||||
|  | |||||||
| @ -0,0 +1,121 @@ | |||||||
|  | package cn.iocoder.yudao.module.fta.dal.dataobject.enterprisechange; | ||||||
|  | 
 | ||||||
|  | import lombok.*; | ||||||
|  | 
 | ||||||
|  | import java.time.LocalDate; | ||||||
|  | import java.util.*; | ||||||
|  | import java.time.LocalDateTime; | ||||||
|  | import java.time.LocalDateTime; | ||||||
|  | import com.baomidou.mybatisplus.annotation.*; | ||||||
|  | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 企业信息变更 DO | ||||||
|  |  * | ||||||
|  |  * @author 王长久 | ||||||
|  |  */ | ||||||
|  | @TableName("fta_enterprise_change") | ||||||
|  | @KeySequence("fta_enterprise_change_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 | ||||||
|  | @Data | ||||||
|  | @EqualsAndHashCode(callSuper = true) | ||||||
|  | @ToString(callSuper = true) | ||||||
|  | @Builder | ||||||
|  | @NoArgsConstructor | ||||||
|  | @AllArgsConstructor | ||||||
|  | public class EnterpriseChangeDO extends BaseDO { | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * 编号 | ||||||
|  |      */ | ||||||
|  |     @TableId | ||||||
|  |     private Long id; | ||||||
|  |     /** | ||||||
|  |      * 流程实例编号 | ||||||
|  |      */ | ||||||
|  |     private String processInstanceId; | ||||||
|  |     /** | ||||||
|  |      * 审批结果 | ||||||
|  |      * | ||||||
|  |      * 枚举 {@link TODO bpm_process_instance_status 对应的类} | ||||||
|  |      */ | ||||||
|  |     private Integer status; | ||||||
|  |     /** | ||||||
|  |      * 变更前企业信息Json字符串 | ||||||
|  |      */ | ||||||
|  |     private String oldEnterpriseJson; | ||||||
|  |     /** | ||||||
|  |      * 变更前企业名称 | ||||||
|  |      */ | ||||||
|  |     private String oldEnterpriseName; | ||||||
|  |     /** | ||||||
|  |      * 变更前企业法定代表人 | ||||||
|  |      */ | ||||||
|  |     private String oldLegalPerson; | ||||||
|  |     /** | ||||||
|  |      * 企业名称 | ||||||
|  |      */ | ||||||
|  |     private String name; | ||||||
|  |     /** | ||||||
|  |      * 企业法定代表人 | ||||||
|  |      */ | ||||||
|  |     private String legalPerson; | ||||||
|  |     /** | ||||||
|  |      * 统一社会信用代码 | ||||||
|  |      */ | ||||||
|  |     private String unifiedCreditCode; | ||||||
|  |     /** | ||||||
|  |      * 电话 | ||||||
|  |      */ | ||||||
|  |     private String telephone; | ||||||
|  |     /** | ||||||
|  |      * 邮箱 | ||||||
|  |      */ | ||||||
|  |     private String mailbox; | ||||||
|  |     /** | ||||||
|  |      * 注册地址 | ||||||
|  |      */ | ||||||
|  |     private String registerAddress; | ||||||
|  |     /** | ||||||
|  |      * 通信地址 | ||||||
|  |      */ | ||||||
|  |     private String communicationAddress; | ||||||
|  |     /** | ||||||
|  |      * 经营状态 | ||||||
|  |      * | ||||||
|  |      * 枚举 {@link TODO enterprise_operate_state 对应的类} | ||||||
|  |      */ | ||||||
|  |     private Integer operateState; | ||||||
|  |     /** | ||||||
|  |      * 成立日期 | ||||||
|  |      */ | ||||||
|  |     private LocalDate establishDate; | ||||||
|  |     /** | ||||||
|  |      * 企业类型 | ||||||
|  |      * | ||||||
|  |      * 枚举 {@link TODO enterprise_type 对应的类} | ||||||
|  |      */ | ||||||
|  |     private Integer enterpriseType; | ||||||
|  |     /** | ||||||
|  |      * 企业所属地区 | ||||||
|  |      */ | ||||||
|  |     private String enterpriseBelongingToRegion; | ||||||
|  |     /** | ||||||
|  |      * 企业所属行业 | ||||||
|  |      */ | ||||||
|  |     private String enterpriseBelongingToIndustry; | ||||||
|  |     /** | ||||||
|  |      * 登记机关 | ||||||
|  |      */ | ||||||
|  |     private String registerOffice; | ||||||
|  |     /** | ||||||
|  |      * 经营许可范围 | ||||||
|  |      */ | ||||||
|  |     private String operatePermitRange; | ||||||
|  |     /** | ||||||
|  |      * 是否涉及危化证 | ||||||
|  |      * | ||||||
|  |      * 枚举 {@link TODO enterprise_is_secure 对应的类} | ||||||
|  |      */ | ||||||
|  |     private Integer isSecure; | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,36 @@ | |||||||
|  | package cn.iocoder.yudao.module.fta.dal.mysql.enterprisechange; | ||||||
|  | 
 | ||||||
|  | import java.util.*; | ||||||
|  | 
 | ||||||
|  | import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||||||
|  | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; | ||||||
|  | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | ||||||
|  | import cn.iocoder.yudao.module.fta.dal.dataobject.enterprisechange.EnterpriseChangeDO; | ||||||
|  | import org.apache.ibatis.annotations.Mapper; | ||||||
|  | import cn.iocoder.yudao.module.fta.controller.admin.enterprisechange.vo.*; | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 企业信息变更 Mapper | ||||||
|  |  * | ||||||
|  |  * @author 王长久 | ||||||
|  |  */ | ||||||
|  | @Mapper | ||||||
|  | public interface EnterpriseChangeMapper extends BaseMapperX<EnterpriseChangeDO> { | ||||||
|  | 
 | ||||||
|  |     default PageResult<EnterpriseChangeDO> selectPage(EnterpriseChangePageReqVO reqVO) { | ||||||
|  |         return selectPage(reqVO, new LambdaQueryWrapperX<EnterpriseChangeDO>() | ||||||
|  |                 .betweenIfPresent(EnterpriseChangeDO::getCreateTime, reqVO.getCreateTime()) | ||||||
|  |                 .eqIfPresent(EnterpriseChangeDO::getStatus, reqVO.getStatus()) | ||||||
|  |                 .likeIfPresent(EnterpriseChangeDO::getOldEnterpriseName, reqVO.getOldEnterpriseName()) | ||||||
|  |                 .eqIfPresent(EnterpriseChangeDO::getOldLegalPerson, reqVO.getOldLegalPerson()) | ||||||
|  |                 .likeIfPresent(EnterpriseChangeDO::getName, reqVO.getName()) | ||||||
|  |                 .eqIfPresent(EnterpriseChangeDO::getLegalPerson, reqVO.getLegalPerson()) | ||||||
|  |                 .eqIfPresent(EnterpriseChangeDO::getUnifiedCreditCode, reqVO.getUnifiedCreditCode()) | ||||||
|  |                 .eqIfPresent(EnterpriseChangeDO::getOperateState, reqVO.getOperateState()) | ||||||
|  |                 .eqIfPresent(EnterpriseChangeDO::getEnterpriseType, reqVO.getEnterpriseType()) | ||||||
|  |                 .likeIfPresent(EnterpriseChangeDO::getEnterpriseBelongingToIndustry, reqVO.getEnterpriseBelongingToIndustry()) | ||||||
|  |                 .eqIfPresent(EnterpriseChangeDO::getIsSecure, reqVO.getIsSecure()) | ||||||
|  |                 .orderByDesc(EnterpriseChangeDO::getId)); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -4,6 +4,7 @@ package cn.iocoder.yudao.module.fta.dal.mysql.enterpriseinformation; | |||||||
| import cn.iocoder.yudao.framework.common.pojo.PageResult; | import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||||||
| import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; | import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; | ||||||
| import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | ||||||
|  | import cn.iocoder.yudao.module.bpm.enums.task.BpmTaskStatusEnum; | ||||||
| import cn.iocoder.yudao.module.fta.dal.dataobject.enterpriseinformation.EnterpriseInformationDO; | import cn.iocoder.yudao.module.fta.dal.dataobject.enterpriseinformation.EnterpriseInformationDO; | ||||||
| import org.apache.ibatis.annotations.Mapper; | import org.apache.ibatis.annotations.Mapper; | ||||||
| import cn.iocoder.yudao.module.fta.controller.admin.enterpriseinformation.vo.*; | import cn.iocoder.yudao.module.fta.controller.admin.enterpriseinformation.vo.*; | ||||||
| @ -33,4 +34,12 @@ public interface EnterpriseInformationMapper extends BaseMapperX<EnterpriseInfor | |||||||
|                 .orderByDesc(EnterpriseInformationDO::getId)); |                 .orderByDesc(EnterpriseInformationDO::getId)); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     default PageResult<EnterpriseInformationDO> selectPassPage(EnterpriseInformationPageReqVO reqVO) { | ||||||
|  |         return selectPage(reqVO, new LambdaQueryWrapperX<EnterpriseInformationDO>() | ||||||
|  |                 .likeIfPresent(EnterpriseInformationDO::getName, reqVO.getName()) | ||||||
|  |                 .likeIfPresent(EnterpriseInformationDO::getLegalPerson, reqVO.getLegalPerson()) | ||||||
|  |                 .eqIfPresent(EnterpriseInformationDO::getStatus, BpmTaskStatusEnum.APPROVE.getStatus()) | ||||||
|  |                 .orderByDesc(EnterpriseInformationDO::getId)); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
| } | } | ||||||
|  | |||||||
| @ -0,0 +1,55 @@ | |||||||
|  | package cn.iocoder.yudao.module.fta.service.enterprisechange; | ||||||
|  | 
 | ||||||
|  | import java.util.*; | ||||||
|  | import javax.validation.*; | ||||||
|  | import cn.iocoder.yudao.module.fta.controller.admin.enterprisechange.vo.*; | ||||||
|  | import cn.iocoder.yudao.module.fta.dal.dataobject.enterprisechange.EnterpriseChangeDO; | ||||||
|  | import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||||||
|  | import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 企业信息变更 Service 接口 | ||||||
|  |  * | ||||||
|  |  * @author 王长久 | ||||||
|  |  */ | ||||||
|  | public interface EnterpriseChangeService { | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * 创建企业信息变更 | ||||||
|  |      * | ||||||
|  |      * @param createReqVO 创建信息 | ||||||
|  |      * @return 编号 | ||||||
|  |      */ | ||||||
|  |     Long createEnterpriseChange(@Valid EnterpriseChangeSaveReqVO createReqVO); | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * 更新企业信息变更 | ||||||
|  |      * | ||||||
|  |      * @param updateReqVO 更新信息 | ||||||
|  |      */ | ||||||
|  |     void updateEnterpriseChange(@Valid EnterpriseChangeSaveReqVO updateReqVO); | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * 删除企业信息变更 | ||||||
|  |      * | ||||||
|  |      * @param id 编号 | ||||||
|  |      */ | ||||||
|  |     void deleteEnterpriseChange(Long id); | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * 获得企业信息变更 | ||||||
|  |      * | ||||||
|  |      * @param id 编号 | ||||||
|  |      * @return 企业信息变更 | ||||||
|  |      */ | ||||||
|  |     EnterpriseChangeDO getEnterpriseChange(Long id); | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * 获得企业信息变更分页 | ||||||
|  |      * | ||||||
|  |      * @param pageReqVO 分页查询 | ||||||
|  |      * @return 企业信息变更分页 | ||||||
|  |      */ | ||||||
|  |     PageResult<EnterpriseChangeDO> getEnterpriseChangePage(EnterpriseChangePageReqVO pageReqVO); | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -0,0 +1,74 @@ | |||||||
|  | package cn.iocoder.yudao.module.fta.service.enterprisechange; | ||||||
|  | 
 | ||||||
|  | import org.springframework.stereotype.Service; | ||||||
|  | import javax.annotation.Resource; | ||||||
|  | import org.springframework.validation.annotation.Validated; | ||||||
|  | import org.springframework.transaction.annotation.Transactional; | ||||||
|  | 
 | ||||||
|  | import java.util.*; | ||||||
|  | import cn.iocoder.yudao.module.fta.controller.admin.enterprisechange.vo.*; | ||||||
|  | import cn.iocoder.yudao.module.fta.dal.dataobject.enterprisechange.EnterpriseChangeDO; | ||||||
|  | import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||||||
|  | import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||||||
|  | import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | ||||||
|  | 
 | ||||||
|  | import cn.iocoder.yudao.module.fta.dal.mysql.enterprisechange.EnterpriseChangeMapper; | ||||||
|  | 
 | ||||||
|  | import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | ||||||
|  | import static cn.iocoder.yudao.module.fta.enums.ErrorCodeConstants.*; | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * 企业信息变更 Service 实现类 | ||||||
|  |  * | ||||||
|  |  * @author 王长久 | ||||||
|  |  */ | ||||||
|  | @Service | ||||||
|  | @Validated | ||||||
|  | public class EnterpriseChangeServiceImpl implements EnterpriseChangeService { | ||||||
|  | 
 | ||||||
|  |     @Resource | ||||||
|  |     private EnterpriseChangeMapper enterpriseChangeMapper; | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public Long createEnterpriseChange(EnterpriseChangeSaveReqVO createReqVO) { | ||||||
|  |         // 插入 | ||||||
|  |         EnterpriseChangeDO enterpriseChange = BeanUtils.toBean(createReqVO, EnterpriseChangeDO.class); | ||||||
|  |         enterpriseChangeMapper.insert(enterpriseChange); | ||||||
|  |         // 返回 | ||||||
|  |         return enterpriseChange.getId(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public void updateEnterpriseChange(EnterpriseChangeSaveReqVO updateReqVO) { | ||||||
|  |         // 校验存在 | ||||||
|  |         validateEnterpriseChangeExists(updateReqVO.getId()); | ||||||
|  |         // 更新 | ||||||
|  |         EnterpriseChangeDO updateObj = BeanUtils.toBean(updateReqVO, EnterpriseChangeDO.class); | ||||||
|  |         enterpriseChangeMapper.updateById(updateObj); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public void deleteEnterpriseChange(Long id) { | ||||||
|  |         // 校验存在 | ||||||
|  |         validateEnterpriseChangeExists(id); | ||||||
|  |         // 删除 | ||||||
|  |         enterpriseChangeMapper.deleteById(id); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     private void validateEnterpriseChangeExists(Long id) { | ||||||
|  |         if (enterpriseChangeMapper.selectById(id) == null) { | ||||||
|  |             throw exception(ENTERPRISE_CHANGE_NOT_EXISTS); | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public EnterpriseChangeDO getEnterpriseChange(Long id) { | ||||||
|  |         return enterpriseChangeMapper.selectById(id); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public PageResult<EnterpriseChangeDO> getEnterpriseChangePage(EnterpriseChangePageReqVO pageReqVO) { | ||||||
|  |         return enterpriseChangeMapper.selectPage(pageReqVO); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -50,6 +50,14 @@ public interface EnterpriseInformationService { | |||||||
|      */ |      */ | ||||||
|     PageResult<EnterpriseInformationDO> getEnterpriseInformationPage(EnterpriseInformationPageReqVO pageReqVO); |     PageResult<EnterpriseInformationDO> getEnterpriseInformationPage(EnterpriseInformationPageReqVO pageReqVO); | ||||||
| 
 | 
 | ||||||
|  |     /** | ||||||
|  |      * 获得已经通过审核的企业信息分页 | ||||||
|  |      * | ||||||
|  |      * @param pageReqVO 分页查询 | ||||||
|  |      * @return 企业信息分页 | ||||||
|  |      */ | ||||||
|  |     PageResult<EnterpriseInformationDO> getEnterpriseInformationPassPage(EnterpriseInformationPageReqVO pageReqVO); | ||||||
|  | 
 | ||||||
|     /** |     /** | ||||||
|      * 更新企业基本信息申请的状态 |      * 更新企业基本信息申请的状态 | ||||||
|      * |      * | ||||||
|  | |||||||
| @ -49,6 +49,13 @@ public class EnterpriseInformationServiceImpl implements EnterpriseInformationSe | |||||||
|                 .setStatus(BpmTaskStatusEnum.RUNNING.getStatus()); |                 .setStatus(BpmTaskStatusEnum.RUNNING.getStatus()); | ||||||
|         enterpriseInformationMapper.insert(enterpriseInformation); |         enterpriseInformationMapper.insert(enterpriseInformation); | ||||||
| 
 | 
 | ||||||
|  |         // 插入 企业负责人证件 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |         // 插入 企业安全员证件 | ||||||
|  | 
 | ||||||
|  |         // 判断 如果涉及危化证则插入危化证信息 | ||||||
|  | 
 | ||||||
|         // 发起 BPM 流程 |         // 发起 BPM 流程 | ||||||
|         Map<String, Object> processInstanceVariables = new HashMap<>(); |         Map<String, Object> processInstanceVariables = new HashMap<>(); | ||||||
|         String processInstanceId = processInstanceApi.createProcessInstance(getLoginUserId(), |         String processInstanceId = processInstanceApi.createProcessInstance(getLoginUserId(), | ||||||
| @ -96,6 +103,11 @@ public class EnterpriseInformationServiceImpl implements EnterpriseInformationSe | |||||||
|         return enterpriseInformationMapper.selectPage(pageReqVO); |         return enterpriseInformationMapper.selectPage(pageReqVO); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     @Override | ||||||
|  |     public PageResult<EnterpriseInformationDO> getEnterpriseInformationPassPage(EnterpriseInformationPageReqVO pageReqVO) { | ||||||
|  |         return enterpriseInformationMapper.selectPassPage(pageReqVO); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     @Override |     @Override | ||||||
|     public void updateEnterpriseInformationStatus(long id, Integer status) { |     public void updateEnterpriseInformationStatus(long id, Integer status) { | ||||||
|         validateLeaveExists(id); |         validateLeaveExists(id); | ||||||
|  | |||||||
| @ -0,0 +1,12 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8"?> | ||||||
|  | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | ||||||
|  | <mapper namespace="cn.iocoder.yudao.module.fta.dal.mysql.enterprisechange.EnterpriseChangeMapper"> | ||||||
|  | 
 | ||||||
|  |     <!-- | ||||||
|  |         一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。 | ||||||
|  |         无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。 | ||||||
|  |         代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。 | ||||||
|  |         文档可见:https://www.iocoder.cn/MyBatis/x-plugins/ | ||||||
|  |      --> | ||||||
|  | 
 | ||||||
|  | </mapper> | ||||||
| @ -0,0 +1,170 @@ | |||||||
|  | package cn.iocoder.yudao.module.fta.service.enterprisechange; | ||||||
|  | 
 | ||||||
|  | import org.junit.jupiter.api.Disabled; | ||||||
|  | import org.junit.jupiter.api.Test; | ||||||
|  | import org.springframework.boot.test.mock.mockito.MockBean; | ||||||
|  | 
 | ||||||
|  | import javax.annotation.Resource; | ||||||
|  | 
 | ||||||
|  | import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | ||||||
|  | 
 | ||||||
|  | import cn.iocoder.yudao.module.fta.controller.admin.enterprisechange.vo.*; | ||||||
|  | import cn.iocoder.yudao.module.fta.dal.dataobject.enterprisechange.EnterpriseChangeDO; | ||||||
|  | import cn.iocoder.yudao.module.fta.dal.mysql.enterprisechange.EnterpriseChangeMapper; | ||||||
|  | import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||||||
|  | 
 | ||||||
|  | import javax.annotation.Resource; | ||||||
|  | import org.springframework.context.annotation.Import; | ||||||
|  | import java.util.*; | ||||||
|  | import java.time.LocalDateTime; | ||||||
|  | 
 | ||||||
|  | import static cn.hutool.core.util.RandomUtil.*; | ||||||
|  | import static cn.iocoder.yudao.module.fta.enums.ErrorCodeConstants.*; | ||||||
|  | import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.*; | ||||||
|  | import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.*; | ||||||
|  | import static cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils.*; | ||||||
|  | import static cn.iocoder.yudao.framework.common.util.object.ObjectUtils.*; | ||||||
|  | import static cn.iocoder.yudao.framework.common.util.date.DateUtils.*; | ||||||
|  | import static org.junit.jupiter.api.Assertions.*; | ||||||
|  | import static org.mockito.Mockito.*; | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * {@link EnterpriseChangeServiceImpl} 的单元测试类 | ||||||
|  |  * | ||||||
|  |  * @author 王长久 | ||||||
|  |  */ | ||||||
|  | @Import(EnterpriseChangeServiceImpl.class) | ||||||
|  | public class EnterpriseChangeServiceImplTest extends BaseDbUnitTest { | ||||||
|  | 
 | ||||||
|  |     @Resource | ||||||
|  |     private EnterpriseChangeServiceImpl enterpriseChangeService; | ||||||
|  | 
 | ||||||
|  |     @Resource | ||||||
|  |     private EnterpriseChangeMapper enterpriseChangeMapper; | ||||||
|  | 
 | ||||||
|  |     @Test | ||||||
|  |     public void testCreateEnterpriseChange_success() { | ||||||
|  |         // 准备参数 | ||||||
|  |         EnterpriseChangeSaveReqVO createReqVO = randomPojo(EnterpriseChangeSaveReqVO.class).setId(null); | ||||||
|  | 
 | ||||||
|  |         // 调用 | ||||||
|  |         Long enterpriseChangeId = enterpriseChangeService.createEnterpriseChange(createReqVO); | ||||||
|  |         // 断言 | ||||||
|  |         assertNotNull(enterpriseChangeId); | ||||||
|  |         // 校验记录的属性是否正确 | ||||||
|  |         EnterpriseChangeDO enterpriseChange = enterpriseChangeMapper.selectById(enterpriseChangeId); | ||||||
|  |         assertPojoEquals(createReqVO, enterpriseChange, "id"); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Test | ||||||
|  |     public void testUpdateEnterpriseChange_success() { | ||||||
|  |         // mock 数据 | ||||||
|  |         EnterpriseChangeDO dbEnterpriseChange = randomPojo(EnterpriseChangeDO.class); | ||||||
|  |         enterpriseChangeMapper.insert(dbEnterpriseChange);// @Sql: 先插入出一条存在的数据 | ||||||
|  |         // 准备参数 | ||||||
|  |         EnterpriseChangeSaveReqVO updateReqVO = randomPojo(EnterpriseChangeSaveReqVO.class, o -> { | ||||||
|  |             o.setId(dbEnterpriseChange.getId()); // 设置更新的 ID | ||||||
|  |         }); | ||||||
|  | 
 | ||||||
|  |         // 调用 | ||||||
|  |         enterpriseChangeService.updateEnterpriseChange(updateReqVO); | ||||||
|  |         // 校验是否更新正确 | ||||||
|  |         EnterpriseChangeDO enterpriseChange = enterpriseChangeMapper.selectById(updateReqVO.getId()); // 获取最新的 | ||||||
|  |         assertPojoEquals(updateReqVO, enterpriseChange); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Test | ||||||
|  |     public void testUpdateEnterpriseChange_notExists() { | ||||||
|  |         // 准备参数 | ||||||
|  |         EnterpriseChangeSaveReqVO updateReqVO = randomPojo(EnterpriseChangeSaveReqVO.class); | ||||||
|  | 
 | ||||||
|  |         // 调用, 并断言异常 | ||||||
|  |         assertServiceException(() -> enterpriseChangeService.updateEnterpriseChange(updateReqVO), ENTERPRISE_CHANGE_NOT_EXISTS); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Test | ||||||
|  |     public void testDeleteEnterpriseChange_success() { | ||||||
|  |         // mock 数据 | ||||||
|  |         EnterpriseChangeDO dbEnterpriseChange = randomPojo(EnterpriseChangeDO.class); | ||||||
|  |         enterpriseChangeMapper.insert(dbEnterpriseChange);// @Sql: 先插入出一条存在的数据 | ||||||
|  |         // 准备参数 | ||||||
|  |         Long id = dbEnterpriseChange.getId(); | ||||||
|  | 
 | ||||||
|  |         // 调用 | ||||||
|  |         enterpriseChangeService.deleteEnterpriseChange(id); | ||||||
|  |        // 校验数据不存在了 | ||||||
|  |        assertNull(enterpriseChangeMapper.selectById(id)); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Test | ||||||
|  |     public void testDeleteEnterpriseChange_notExists() { | ||||||
|  |         // 准备参数 | ||||||
|  |         Long id = randomLongId(); | ||||||
|  | 
 | ||||||
|  |         // 调用, 并断言异常 | ||||||
|  |         assertServiceException(() -> enterpriseChangeService.deleteEnterpriseChange(id), ENTERPRISE_CHANGE_NOT_EXISTS); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Test | ||||||
|  |     @Disabled  // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解 | ||||||
|  |     public void testGetEnterpriseChangePage() { | ||||||
|  |        // mock 数据 | ||||||
|  |        EnterpriseChangeDO dbEnterpriseChange = randomPojo(EnterpriseChangeDO.class, o -> { // 等会查询到 | ||||||
|  |            o.setCreateTime(null); | ||||||
|  |            o.setStatus(null); | ||||||
|  |            o.setOldEnterpriseName(null); | ||||||
|  |            o.setOldLegalPerson(null); | ||||||
|  |            o.setName(null); | ||||||
|  |            o.setLegalPerson(null); | ||||||
|  |            o.setUnifiedCreditCode(null); | ||||||
|  |            o.setOperateState(null); | ||||||
|  |            o.setEnterpriseType(null); | ||||||
|  |            o.setEnterpriseBelongingToIndustry(null); | ||||||
|  |            o.setIsSecure(null); | ||||||
|  |        }); | ||||||
|  |        enterpriseChangeMapper.insert(dbEnterpriseChange); | ||||||
|  |        // 测试 createTime 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setCreateTime(null))); | ||||||
|  |        // 测试 status 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setStatus(null))); | ||||||
|  |        // 测试 oldEnterpriseName 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setOldEnterpriseName(null))); | ||||||
|  |        // 测试 oldLegalPerson 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setOldLegalPerson(null))); | ||||||
|  |        // 测试 name 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setName(null))); | ||||||
|  |        // 测试 legalPerson 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setLegalPerson(null))); | ||||||
|  |        // 测试 unifiedCreditCode 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setUnifiedCreditCode(null))); | ||||||
|  |        // 测试 operateState 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setOperateState(null))); | ||||||
|  |        // 测试 enterpriseType 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setEnterpriseType(null))); | ||||||
|  |        // 测试 enterpriseBelongingToIndustry 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setEnterpriseBelongingToIndustry(null))); | ||||||
|  |        // 测试 isSecure 不匹配 | ||||||
|  |        enterpriseChangeMapper.insert(cloneIgnoreId(dbEnterpriseChange, o -> o.setIsSecure(null))); | ||||||
|  |        // 准备参数 | ||||||
|  |        EnterpriseChangePageReqVO reqVO = new EnterpriseChangePageReqVO(); | ||||||
|  |        reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); | ||||||
|  |        reqVO.setStatus(null); | ||||||
|  |        reqVO.setOldEnterpriseName(null); | ||||||
|  |        reqVO.setOldLegalPerson(null); | ||||||
|  |        reqVO.setName(null); | ||||||
|  |        reqVO.setLegalPerson(null); | ||||||
|  |        reqVO.setUnifiedCreditCode(null); | ||||||
|  |        reqVO.setOperateState(null); | ||||||
|  |        reqVO.setEnterpriseType(null); | ||||||
|  |        reqVO.setEnterpriseBelongingToIndustry(null); | ||||||
|  |        reqVO.setIsSecure(null); | ||||||
|  | 
 | ||||||
|  |        // 调用 | ||||||
|  |        PageResult<EnterpriseChangeDO> pageResult = enterpriseChangeService.getEnterpriseChangePage(reqVO); | ||||||
|  |        // 断言 | ||||||
|  |        assertEquals(1, pageResult.getTotal()); | ||||||
|  |        assertEquals(1, pageResult.getList().size()); | ||||||
|  |        assertPojoEquals(dbEnterpriseChange, pageResult.getList().get(0)); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  | } | ||||||
| @ -1,2 +1,3 @@ | |||||||
| -- 将该删表 SQL 语句,添加到 yudao-module-fta-biz 模块的 test/resources/sql/clean.sql 文件里 | -- 将该删表 SQL 语句,添加到 yudao-module-fta-biz 模块的 test/resources/sql/clean.sql 文件里 | ||||||
| DELETE FROM "fta_enterprise_information"; | DELETE FROM "fta_enterprise_information"; | ||||||
|  | DELETE FROM "fta_enterprise_change"; | ||||||
|  | |||||||
| @ -23,3 +23,34 @@ CREATE TABLE IF NOT EXISTS "fta_enterprise_information" ( | |||||||
|                                                             "operate_permit_range" varchar NOT NULL, |                                                             "operate_permit_range" varchar NOT NULL, | ||||||
|                                                             PRIMARY KEY ("id") |                                                             PRIMARY KEY ("id") | ||||||
|     ) COMMENT '企业信息'; |     ) COMMENT '企业信息'; | ||||||
|  | 
 | ||||||
|  | CREATE TABLE IF NOT EXISTS "fta_enterprise_change" ( | ||||||
|  |                                                        "id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY, | ||||||
|  |                                                        "creator" varchar DEFAULT '', | ||||||
|  |                                                        "create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, | ||||||
|  |                                                        "updater" varchar DEFAULT '', | ||||||
|  |                                                        "update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, | ||||||
|  |                                                        "deleted" bit NOT NULL DEFAULT FALSE, | ||||||
|  |                                                        "process_instance_id" varchar, | ||||||
|  |                                                        "status" int, | ||||||
|  |                                                        "tenant_id" bigint NOT NULL, | ||||||
|  |                                                        "old_enterprise_json" varchar NOT NULL, | ||||||
|  |                                                        "old_enterprise_name" varchar NOT NULL, | ||||||
|  |                                                        "old_legal_person" varchar NOT NULL, | ||||||
|  |                                                        "name" varchar NOT NULL, | ||||||
|  |                                                        "legal_person" varchar NOT NULL, | ||||||
|  |                                                        "unified_credit_code" varchar NOT NULL, | ||||||
|  |                                                        "telephone" varchar NOT NULL, | ||||||
|  |                                                        "mailbox" varchar NOT NULL, | ||||||
|  |                                                        "register_address" varchar NOT NULL, | ||||||
|  |                                                        "communication_address" varchar NOT NULL, | ||||||
|  |                                                        "operate_state" int NOT NULL, | ||||||
|  |                                                        "establish_date" varchar NOT NULL, | ||||||
|  |                                                        "enterprise_type" int NOT NULL, | ||||||
|  |                                                        "enterprise_belonging_to_region" varchar NOT NULL, | ||||||
|  |                                                        "enterprise_belonging_to_industry" varchar NOT NULL, | ||||||
|  |                                                        "register_office" varchar NOT NULL, | ||||||
|  |                                                        "operate_permit_range" varchar NOT NULL, | ||||||
|  |                                                        "is_secure" int NOT NULL, | ||||||
|  |                                                        PRIMARY KEY ("id") | ||||||
|  |     ) COMMENT '企业信息变更'; | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user