diff --git a/src/main/java/com/glxp/api/controller/basic/BasicManufacturerController.java b/src/main/java/com/glxp/api/controller/basic/BasicManufacturerController.java index 008470cd7..554c21c9b 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicManufacturerController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicManufacturerController.java @@ -1,11 +1,46 @@ package com.glxp.api.controller.basic; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.IdUtil; +import com.github.pagehelper.PageInfo; +import com.glxp.api.annotation.AuthRuleAnnotation; +import com.glxp.api.common.enums.ResultEnum; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.constant.ConstantStatus; +import com.glxp.api.constant.SyncDelType; import com.glxp.api.controller.BaseController; +import com.glxp.api.entity.basic.BasicCorpEntity; +import com.glxp.api.entity.basic.BasicManufacturerEntity; +import com.glxp.api.entity.thrsys.ThrSystemDetailEntity; +import com.glxp.api.entity.thrsys.ThrSystemEntity; +import com.glxp.api.req.basic.BasicDataRequest; +import com.glxp.api.req.basic.BasicUnitMaintainFilterRequest; +import com.glxp.api.req.basic.CombineSingleUnitRequest; +import com.glxp.api.req.basic.CombineUnitRequest; +import com.glxp.api.req.system.DeleteRequest; +import com.glxp.api.req.thrsys.FilterBasicThirdSysRequest; +import com.glxp.api.req.thrsys.ThrUnitMaintainFilterRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.basic.BasicErpUnitsResponse; +import com.glxp.api.res.basic.BasicProductThirdSysResponse; import com.glxp.api.service.basic.BasicManufacturerService; +import com.glxp.api.service.thrsys.ThrSystemDetailService; +import com.glxp.api.service.thrsys.ThrSystemService; +import com.glxp.api.util.CustomUtil; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import javax.validation.Valid; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; /** * 生产企业字典 @@ -17,4 +52,265 @@ public class BasicManufacturerController extends BaseController { @Resource BasicManufacturerService manufacturerService; + + + @GetMapping("/udiwms/basic/manu/maintain/filter") + public BaseResponse filterBasicUnitMaintain(BasicUnitMaintainFilterRequest basicUnitMaintainFilterRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List basicUnitMaintainEntities; + basicUnitMaintainEntities = manufacturerService.filterList(basicUnitMaintainFilterRequest); + PageInfo pageInfo = new PageInfo<>(basicUnitMaintainEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(basicUnitMaintainEntities); + + return ResultVOUtils.success(pageSimpleResponse); + } + + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/basic/manu/maintain/save") + public BaseResponse save(@RequestBody @Valid BasicManufacturerEntity basicUnitMaintainSaveRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + + boolean result = manufacturerService.verifyExists(basicUnitMaintainSaveRequest); + if (result) { + return ResultVOUtils.error(ResultEnum.DATA_REPEAT, "重复添加"); + } + + BasicManufacturerEntity basicUnitMaintainEntity = new BasicManufacturerEntity(); + BeanUtils.copyProperties(basicUnitMaintainSaveRequest, basicUnitMaintainEntity); + basicUnitMaintainEntity.setErpId(CustomUtil.getId()); + basicUnitMaintainEntity.setUpdateTime(new Date()); + basicUnitMaintainEntity.setId(IdUtil.getSnowflakeNextId()); + boolean b = manufacturerService.save(basicUnitMaintainEntity); + if (!b) { + return ResultVOUtils.error(ResultEnum.NOT_NETWORK); + } + + return ResultVOUtils.success(); + } + + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/basic/manu/maintain/update") + public BaseResponse update(@RequestBody @Valid BasicManufacturerEntity basicUnitMaintainSaveRequest, BindingResult bindingResult) { + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + + boolean result = manufacturerService.verifyExists(basicUnitMaintainSaveRequest); + if (result) { + return ResultVOUtils.error(ResultEnum.DATA_REPEAT, "重复添加"); + } + + basicUnitMaintainSaveRequest.setOutType(ConstantStatus.CORP_SICK_CUS); + basicUnitMaintainSaveRequest.setUpdateTime(new Date()); + manufacturerService.updateById(basicUnitMaintainSaveRequest); + return ResultVOUtils.success("修改成功"); + } + + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/basic/manu/maintain/delete") + public BaseResponse deleteBasicUnitMaintain(@RequestBody DeleteRequest deleteRequest) { + + String id = deleteRequest.getId(); + manufacturerService.removeById(id); +// //调用同步删除的方法 +// BasicDataRequest basicDataRequest = new BasicDataRequest(); +// basicDataRequest.setDeleteRequest(deleteRequest); +// basicDataRequest.setKey(SyncDelType.BASIC_CORP_MAINTAIN); +// Long userId = getUserId(); +// spGetHttpClient.deleteBasicData(basicDataRequest, userId + ""); + return ResultVOUtils.success("删除成功"); + } + + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/basic/manu/maintain/combine") + public BaseResponse combine(@RequestBody CombineUnitRequest combineRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + List erpUnitsResponses = combineRequest.getCustmandocResponses(); + if (erpUnitsResponses != null && erpUnitsResponses.size() > 0) { + for (BasicErpUnitsResponse erpUnitsResponse : erpUnitsResponses) { + BasicManufacturerEntity basicUnitMaintainEntity = new BasicManufacturerEntity(); + if (combineRequest.getThirdSys() != null) { + if ("thirdId".equals(combineRequest.getThirdSys())) { + basicUnitMaintainEntity.setThirdId(erpUnitsResponse.getUnitId()); + basicUnitMaintainEntity.setThirdName(erpUnitsResponse.getName()); + } else if ("thirdId1".equals(combineRequest.getThirdSys())) { + basicUnitMaintainEntity.setThirdId1(erpUnitsResponse.getUnitId()); + basicUnitMaintainEntity.setThirdName1(erpUnitsResponse.getName()); + } else if ("thirdId2".equals(combineRequest.getThirdSys())) { + basicUnitMaintainEntity.setThirdId2(erpUnitsResponse.getUnitId()); + basicUnitMaintainEntity.setThirdName2(erpUnitsResponse.getName()); + } else if ("thirdId3".equals(combineRequest.getThirdSys())) { + basicUnitMaintainEntity.setThirdId3(erpUnitsResponse.getUnitId()); + basicUnitMaintainEntity.setThirdName3(erpUnitsResponse.getName()); + } else if ("thirdId4".equals(combineRequest.getThirdSys())) { + basicUnitMaintainEntity.setThirdId4(erpUnitsResponse.getUnitId()); + basicUnitMaintainEntity.setThirdName4(erpUnitsResponse.getName()); + } + } + basicUnitMaintainEntity.setErpId(CustomUtil.getId()); + basicUnitMaintainEntity.setName(erpUnitsResponse.getName()); + basicUnitMaintainEntity.setSpell(erpUnitsResponse.getSpell()); + basicUnitMaintainEntity.setAddr(erpUnitsResponse.getAddr()); + basicUnitMaintainEntity.setCreditNo(erpUnitsResponse.getCreditNo()); + basicUnitMaintainEntity.setContact(erpUnitsResponse.getContact()); + basicUnitMaintainEntity.setMobile(erpUnitsResponse.getMobile()); + basicUnitMaintainEntity.setCorpType(ConstantStatus.CORP_SP); + basicUnitMaintainEntity.setUpdateTime(new Date()); + basicUnitMaintainEntity.setId(IdUtil.getSnowflakeNextId()); + manufacturerService.save(basicUnitMaintainEntity); + } + } + return ResultVOUtils.success("选入成功"); + } + + @Resource + ThrSystemDetailService thrSystemDetailService; + + @AuthRuleAnnotation("") + @GetMapping("/udiwms/basic/manu/maintain/combineAll") + public BaseResponse combineAll(ThrUnitMaintainFilterRequest unitMaintainFilterRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + ThrSystemDetailEntity basicThirdSysDetailEntity = thrSystemDetailService.selectByKey("manuUrl", unitMaintainFilterRequest.getThirdSys()); + if (basicThirdSysDetailEntity == null || basicThirdSysDetailEntity.getValue() == null) + return ResultVOUtils.error(500, "往来单位接口地址未定义"); + if (basicThirdSysDetailEntity.getEnabled()) { + manufacturerService.selectAllUnit(basicThirdSysDetailEntity, unitMaintainFilterRequest); + } else { + return ResultVOUtils.error(500, "第三方系统往来单位接口服务未启用"); + } + + return ResultVOUtils.success("后台正在添加,请稍后刷新查看!"); + } + + + @AuthRuleAnnotation("") + @PostMapping("/udiwms/basic/manu/maintain/combineSingle") + public BaseResponse combineSingle(@RequestBody CombineSingleUnitRequest combineRequest, BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + BasicErpUnitsResponse basicErpUnitsResponse = combineRequest.getBasicErpUnitsResponse(); + BasicManufacturerEntity basicCorpEntity = new BasicManufacturerEntity(); + basicCorpEntity.setId(Long.parseLong(combineRequest.getKey())); + if (combineRequest.getThirdSys() != null) { + if ("thirdId".equals(combineRequest.getThirdSys())) { + basicCorpEntity.setThirdId(basicErpUnitsResponse.getId()); + basicCorpEntity.setThirdName(basicErpUnitsResponse.getName()); + } else if ("thirdId1".equals(combineRequest.getThirdSys())) { + basicCorpEntity.setThirdId1(basicErpUnitsResponse.getId()); + basicCorpEntity.setThirdName1(basicErpUnitsResponse.getName()); + } else if ("thirdId2".equals(combineRequest.getThirdSys())) { + basicCorpEntity.setThirdId2(basicErpUnitsResponse.getId()); + basicCorpEntity.setThirdName2(basicErpUnitsResponse.getName()); + } else if ("thirdId3".equals(combineRequest.getThirdSys())) { + basicCorpEntity.setThirdId3(basicErpUnitsResponse.getId()); + basicCorpEntity.setThirdName3(basicErpUnitsResponse.getName()); + } else if ("thirdId4".equals(combineRequest.getThirdSys())) { + basicCorpEntity.setThirdId4(basicErpUnitsResponse.getId()); + basicCorpEntity.setThirdName4(basicErpUnitsResponse.getName()); + } + } + + manufacturerService.updateById(basicCorpEntity); + return ResultVOUtils.success("关联成功"); + } + + @Resource + private ThrSystemService thrSystemService; + + //获取产品信息详情(多平台) + @AuthRuleAnnotation("") + @GetMapping("/udiwms/manutMaintain/thirdSys/detail") + public BaseResponse getThirdSysDetail(BasicUnitMaintainFilterRequest basicUnitMaintainFilterRequest, + BindingResult bindingResult) { + + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + BasicManufacturerEntity basicUnitMaintainEntity = manufacturerService.getById(basicUnitMaintainFilterRequest.getId() + ""); + + FilterBasicThirdSysRequest filterBasicThirdSysRequest = new FilterBasicThirdSysRequest(); + filterBasicThirdSysRequest.setEnabled(true); + List basicThirdSysEntities = thrSystemService.filterBasicThiSys(filterBasicThirdSysRequest); + List basicProductThirdSysResponses = new ArrayList<>(); + + for (ThrSystemEntity basicThirdSysEntity : basicThirdSysEntities) { + if (basicThirdSysEntity.getThirdId().equals("thirdId")) { + BasicProductThirdSysResponse basicProductThirdSysResponse = new BasicProductThirdSysResponse(); + basicProductThirdSysResponse.setSysId(basicThirdSysEntity.getThirdId()); + basicProductThirdSysResponse.setSysName(basicThirdSysEntity.getThirdName()); + if (basicUnitMaintainEntity != null) { + basicProductThirdSysResponse.setThirdId(basicUnitMaintainEntity.getThirdId()); + basicProductThirdSysResponse.setThirdName(basicUnitMaintainEntity.getThirdName()); + } + + basicProductThirdSysResponses.add(basicProductThirdSysResponse); + } else if (basicThirdSysEntity.getThirdId().equals("thirdId1")) { + BasicProductThirdSysResponse basicProductThirdSysResponse = new BasicProductThirdSysResponse(); + basicProductThirdSysResponse.setSysId(basicThirdSysEntity.getThirdId()); + basicProductThirdSysResponse.setSysName(basicThirdSysEntity.getThirdName()); + if (basicUnitMaintainEntity != null) { + basicProductThirdSysResponse.setThirdId(basicUnitMaintainEntity.getThirdId1()); + basicProductThirdSysResponse.setThirdName(basicUnitMaintainEntity.getThirdName1()); + } + basicProductThirdSysResponses.add(basicProductThirdSysResponse); + } else if (basicThirdSysEntity.getThirdId().equals("thirdId2")) { + BasicProductThirdSysResponse basicProductThirdSysResponse = new BasicProductThirdSysResponse(); + basicProductThirdSysResponse.setSysId(basicThirdSysEntity.getThirdId()); + basicProductThirdSysResponse.setSysName(basicThirdSysEntity.getThirdName()); + if (basicUnitMaintainEntity != null) { + basicProductThirdSysResponse.setThirdId(basicUnitMaintainEntity.getThirdId2()); + basicProductThirdSysResponse.setThirdName(basicUnitMaintainEntity.getThirdName2()); + } + basicProductThirdSysResponses.add(basicProductThirdSysResponse); + } else if (basicThirdSysEntity.getThirdId().equals("thirdId3")) { + BasicProductThirdSysResponse basicProductThirdSysResponse = new BasicProductThirdSysResponse(); + basicProductThirdSysResponse.setSysId(basicThirdSysEntity.getThirdId()); + basicProductThirdSysResponse.setSysName(basicThirdSysEntity.getThirdName()); + if (basicUnitMaintainEntity != null) { + basicProductThirdSysResponse.setThirdId(basicUnitMaintainEntity.getThirdId3()); + basicProductThirdSysResponse.setThirdName(basicUnitMaintainEntity.getThirdName3()); + } + basicProductThirdSysResponses.add(basicProductThirdSysResponse); + } else if (basicThirdSysEntity.getThirdId().equals("thirdId4")) { + BasicProductThirdSysResponse basicProductThirdSysResponse = new BasicProductThirdSysResponse(); + basicProductThirdSysResponse.setSysId(basicThirdSysEntity.getThirdId()); + basicProductThirdSysResponse.setSysName(basicThirdSysEntity.getThirdName()); + if (basicUnitMaintainEntity != null) { + basicProductThirdSysResponse.setThirdId(basicUnitMaintainEntity.getThirdId4()); + basicProductThirdSysResponse.setThirdName(basicUnitMaintainEntity.getThirdName4()); + } + basicProductThirdSysResponses.add(basicProductThirdSysResponse); + } + } + PageInfo pageInfo; + pageInfo = new PageInfo<>(basicProductThirdSysResponses); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(basicProductThirdSysResponses); + return ResultVOUtils.success(pageSimpleResponse); + } + + } diff --git a/src/main/java/com/glxp/api/dao/basic/BasicManufacturerMapper.java b/src/main/java/com/glxp/api/dao/basic/BasicManufacturerMapper.java index 95e4bbee3..0b1426117 100644 --- a/src/main/java/com/glxp/api/dao/basic/BasicManufacturerMapper.java +++ b/src/main/java/com/glxp/api/dao/basic/BasicManufacturerMapper.java @@ -1,9 +1,30 @@ package com.glxp.api.dao.basic; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.glxp.api.dao.BaseMapperPlus; +import com.glxp.api.entity.basic.BasicCorpEntity; import com.glxp.api.entity.basic.BasicManufacturerEntity; +import com.glxp.api.req.basic.BasicUnitMaintainFilterRequest; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; @Mapper -public interface BasicManufacturerMapper extends BaseMapper { +public interface BasicManufacturerMapper extends BaseMapperPlus { + + List filterList(BasicUnitMaintainFilterRequest basicUnitMaintainFilterRequest); + + + List batchSelectByErpIdsAndName(@Param("erpIds") List erpIds, @Param("name") String name); + + /** + * 根据往来单位名称和社会信用号查询列表 + * + * @param name + * @param creditNo + * @return + */ + List selectByNameAndCreditNo(@Param("name") String name, @Param("creditNo") String creditNo); + } diff --git a/src/main/java/com/glxp/api/entity/basic/BasicManufacturerEntity.java b/src/main/java/com/glxp/api/entity/basic/BasicManufacturerEntity.java index b95a21293..a38d193b9 100644 --- a/src/main/java/com/glxp/api/entity/basic/BasicManufacturerEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/BasicManufacturerEntity.java @@ -4,8 +4,10 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; + import java.io.Serializable; import java.util.Date; + import lombok.Data; @Data @@ -15,19 +17,19 @@ public class BasicManufacturerEntity implements Serializable { private Long id; /** - * 生产企业编码 + * 往来单位编码 */ - @TableField(value = "code") - private String code; + @TableField(value = "erpId") + private String erpId; /** - * 生产企业名称 + * 往来单位名称 */ @TableField(value = "`name`") private String name; /** - * 拼音码 + * 往来单位简称 */ @TableField(value = "spell") private String spell; @@ -42,10 +44,10 @@ public class BasicManufacturerEntity implements Serializable { * 状态 */ @TableField(value = "`status`") - private String status; + private Integer status; /** - * 生产企业类型 + * 类型 */ @TableField(value = "`type`") private String type; @@ -57,22 +59,13 @@ public class BasicManufacturerEntity implements Serializable { private String contact; /** - * 联系方式 + * 联系电话 */ @TableField(value = "mobile") private String mobile; - /** - * 统一社会信用号 - */ - @TableField(value = "creditCode") - private String creditCode; - - /** - * 备注 - */ - @TableField(value = "remark") - private String remark; + @TableField(value = "creditNo") + private String creditNo; /** * 第三方平台ID(备用) @@ -80,30 +73,45 @@ public class BasicManufacturerEntity implements Serializable { @TableField(value = "thirdId") private String thirdId; - /** - * 第三方平台ID(备用) - */ @TableField(value = "thirdId1") private String thirdId1; - /** - * 第三方平台ID(备用) - */ @TableField(value = "thirdId2") private String thirdId2; - /** - * 第三方平台ID(备用) - */ @TableField(value = "thirdId3") private String thirdId3; - /** - * 第三方平台ID(备用) - */ @TableField(value = "thirdId4") private String thirdId4; + @TableField(value = "thirdName") + private String thirdName; + + @TableField(value = "thirdName1") + private String thirdName1; + + @TableField(value = "thirdName2") + private String thirdName2; + + @TableField(value = "thirdName3") + private String thirdName3; + + @TableField(value = "thirdName4") + private String thirdName4; + + /** + * 往来单位类型:1.客户,2:供应商,3:内部科室,4.特殊单据 + */ + @TableField(value = "corpType") + private Integer corpType; + + /** + * 客户单据:1.患者,2.客户 + */ + @TableField(value = "outType") + private Integer outType; + /** * 创建人 */ @@ -128,5 +136,12 @@ public class BasicManufacturerEntity implements Serializable { @TableField(value = "updateTime") private Date updateTime; + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; + + private static final long serialVersionUID = 1L; } diff --git a/src/main/java/com/glxp/api/service/basic/BasicManufacturerService.java b/src/main/java/com/glxp/api/service/basic/BasicManufacturerService.java index 1c2b94b7f..05570d441 100644 --- a/src/main/java/com/glxp/api/service/basic/BasicManufacturerService.java +++ b/src/main/java/com/glxp/api/service/basic/BasicManufacturerService.java @@ -1,10 +1,118 @@ package com.glxp.api.service.basic; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.extra.pinyin.PinyinUtil; +import com.github.pagehelper.PageHelper; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.constant.ConstantStatus; +import com.glxp.api.entity.basic.BasicCorpEntity; +import com.glxp.api.entity.thrsys.ThrManufacturerEntity; +import com.glxp.api.entity.thrsys.ThrSystemDetailEntity; +import com.glxp.api.req.basic.BasicUnitMaintainFilterRequest; +import com.glxp.api.req.thrsys.FilterThrCorpRequest; +import com.glxp.api.req.thrsys.ThrUnitMaintainFilterRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.thrsys.ThrCorpsResponse; +import com.glxp.api.service.thrsys.ThrManufacturerService; +import com.glxp.api.util.CustomUtil; +import org.springframework.beans.BeanUtils; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.glxp.api.entity.basic.BasicManufacturerEntity; import com.glxp.api.dao.basic.BasicManufacturerMapper; + +import javax.annotation.Resource; +import java.util.*; + @Service public class BasicManufacturerService extends ServiceImpl { + + @Resource + BasicManufacturerMapper basicManufacturerMapper; + + public List filterList(BasicUnitMaintainFilterRequest basicUnitMaintainFilterRequest) { + if (basicUnitMaintainFilterRequest == null) { + return Collections.emptyList(); + } + if (basicUnitMaintainFilterRequest.getPage() != null) { + int offset = (basicUnitMaintainFilterRequest.getPage() - 1) * basicUnitMaintainFilterRequest.getLimit(); + PageHelper.offsetPage(offset, basicUnitMaintainFilterRequest.getLimit()); + } + + List data = basicManufacturerMapper.filterList(basicUnitMaintainFilterRequest); + return data; + } + + + public boolean verifyExists(BasicManufacturerEntity basicCorpEntity) { + List list = basicManufacturerMapper.selectByNameAndCreditNo(basicCorpEntity.getName(), basicCorpEntity.getCreditNo()); + if (CollUtil.isNotEmpty(list)) { + if (null != basicCorpEntity.getId()) { + for (BasicManufacturerEntity corpEntity : list) { + if (!corpEntity.getId().equals(basicCorpEntity.getId())) { + return true; + } + } + } else { + return true; + } + } + return false; + } + + @Resource + ThrManufacturerService thrManufacturerService; + + @Async + public void selectAllUnit(ThrSystemDetailEntity thrSystemDetailEntity, ThrUnitMaintainFilterRequest unitMaintainFilterRequest) { + List imports = new ArrayList<>(); + + FilterThrCorpRequest filterThrCorpRequest = new FilterThrCorpRequest(); + BeanUtils.copyProperties(unitMaintainFilterRequest, filterThrCorpRequest); + filterThrCorpRequest.setThirdSysFk(unitMaintainFilterRequest.getThirdSys()); + filterThrCorpRequest.setPage(null); + List thrCorpEntities = thrManufacturerService.filterThrManu(filterThrCorpRequest); + imports.addAll(thrCorpEntities); + if (imports != null && imports.size() > 0) { + for (ThrManufacturerEntity erpUnitsResponse : imports) { + BasicManufacturerEntity thrUnitMaintainResponse = new BasicManufacturerEntity(); + if (unitMaintainFilterRequest.getThirdSys() != null) { + if ("thirdId".equals(unitMaintainFilterRequest.getThirdSys())) { + thrUnitMaintainResponse.setThirdId(erpUnitsResponse.getUnitId()); + thrUnitMaintainResponse.setThirdName(erpUnitsResponse.getName()); + } else if ("thirdId1".equals(unitMaintainFilterRequest.getThirdSys())) { + thrUnitMaintainResponse.setThirdId1(erpUnitsResponse.getUnitId()); + thrUnitMaintainResponse.setThirdName1(erpUnitsResponse.getName()); + } else if ("thirdId2".equals(unitMaintainFilterRequest.getThirdSys())) { + thrUnitMaintainResponse.setThirdId2(erpUnitsResponse.getUnitId()); + thrUnitMaintainResponse.setThirdName2(erpUnitsResponse.getName()); + } else if ("thirdId3".equals(unitMaintainFilterRequest.getThirdSys())) { + thrUnitMaintainResponse.setThirdId3(erpUnitsResponse.getUnitId()); + thrUnitMaintainResponse.setThirdName3(erpUnitsResponse.getName()); + } else if ("thirdId4".equals(unitMaintainFilterRequest.getThirdSys())) { + thrUnitMaintainResponse.setThirdId4(erpUnitsResponse.getUnitId()); + thrUnitMaintainResponse.setThirdName4(erpUnitsResponse.getName()); + } + } + thrUnitMaintainResponse.setErpId(CustomUtil.getId()); + thrUnitMaintainResponse.setName(erpUnitsResponse.getName()); + if (erpUnitsResponse.getSpell() == null || "".equals(erpUnitsResponse.getSpell())) { + thrUnitMaintainResponse.setSpell(PinyinUtil.getFirstLetter(erpUnitsResponse.getName(), "").toUpperCase(Locale.ROOT)); + } else { + thrUnitMaintainResponse.setSpell(erpUnitsResponse.getSpell()); + } + thrUnitMaintainResponse.setAddr(erpUnitsResponse.getAddr()); + thrUnitMaintainResponse.setCreditNo(erpUnitsResponse.getCreditNo()); + thrUnitMaintainResponse.setCorpType(ConstantStatus.CORP_SP); + thrUnitMaintainResponse.setContact(erpUnitsResponse.getContact()); + thrUnitMaintainResponse.setMobile(erpUnitsResponse.getMobile()); + thrUnitMaintainResponse.setUpdateTime(new Date()); + thrUnitMaintainResponse.setId(IdUtil.getSnowflakeNextId()); + basicManufacturerMapper.insertIgnore(thrUnitMaintainResponse); + } + } + } } diff --git a/src/main/resources/mybatis/mapper/basic/BasicManufacturerMapper.xml b/src/main/resources/mybatis/mapper/basic/BasicManufacturerMapper.xml index 13ba7e449..c3b642341 100644 --- a/src/main/resources/mybatis/mapper/basic/BasicManufacturerMapper.xml +++ b/src/main/resources/mybatis/mapper/basic/BasicManufacturerMapper.xml @@ -1,34 +1,67 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - id, code, `name`, spell, addr, `status`, `type`, contact, mobile, creditCode, remark, - thirdId, thirdId1, thirdId2, thirdId3, thirdId4, `createUser`, createTime, updateUser, - updateTime - + + + + + +