release
gaorl 2 years ago
commit 3e9f8fef78
  1. 26
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/controller/CommodityController.java
  2. 30
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/taxcodematch/controller/SdenergyTaxCodeMatchController.java
  3. 20
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/SDEnregyServiceImpl.java

@ -5,16 +5,6 @@ import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.dxhy.order.baseservice.module.commodity.model.CommodityCodeModifyLog;
import com.dxhy.order.baseservice.module.commodity.model.dto.QueryModifyLogDTO;
import com.dxhy.order.baseservice.module.commodity.model.dto.QueryModifyLogResultDTO;
import com.dxhy.order.baseservice.module.commodity.service.CommodityCodeModifyLogService;
import com.dxhy.order.constant.*;
import com.dxhy.order.model.CommodityCodeCheckQuery;
import com.dxhy.order.model.CommodityTaxClassCodeReq;
import com.dxhy.order.model.PageUtils;
import com.dxhy.order.model.R;
import com.dxhy.order.utils.*;
import com.dxhy.base.file.common.ExcelReadContext;
import com.dxhy.base.file.exception.ExcelReadException;
import com.dxhy.base.file.handle.ExcelReadHandle;
@ -23,12 +13,21 @@ import com.dxhy.order.baseservice.module.base.service.BaseService;
import com.dxhy.order.baseservice.module.commodity.constant.CommodityEnum;
import com.dxhy.order.baseservice.module.commodity.model.CommodityCodeEntity;
import com.dxhy.order.baseservice.module.commodity.model.CommodityExcel;
import com.dxhy.order.baseservice.module.commodity.model.dto.QueryModifyLogDTO;
import com.dxhy.order.baseservice.module.commodity.model.dto.QueryModifyLogResultDTO;
import com.dxhy.order.baseservice.module.commodity.service.CommodityCodeModifyLogService;
import com.dxhy.order.baseservice.module.commodity.service.CommodityService;
import com.dxhy.order.baseservice.module.commodity.service.VerifyCommodityCodeService;
import com.dxhy.order.baseservice.module.thirdservice.user.model.DeptEntity;
import com.dxhy.order.baseservice.module.thirdservice.user.model.UserEntity;
import com.dxhy.order.baseservice.module.thirdservice.user.service.UserInfoService;
import com.dxhy.order.baseservice.openapi.protocol.qd.PageSpxxReq;
import com.dxhy.order.constant.*;
import com.dxhy.order.model.CommodityCodeCheckQuery;
import com.dxhy.order.model.CommodityTaxClassCodeReq;
import com.dxhy.order.model.PageUtils;
import com.dxhy.order.model.R;
import com.dxhy.order.utils.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@ -162,7 +161,6 @@ public class CommodityController {
if (StringUtils.isBlank(commodityCodeEntity.getYcbz())) {
commodityCodeEntity.setYcbz(ConfigureConstant.STRING_0);
}
/**
* 添加校验
*/
@ -447,7 +445,7 @@ public class CommodityController {
/**
* excel 导入数据转换为表格数据
*/
List<CommodityCodeEntity> commodityCodeEntities = transCommodityCodeEntityList(commodityExcelList, String.valueOf(userEntity.getUserId()));
List<CommodityCodeEntity> commodityCodeEntities = transCommodityCodeEntityList(commodityExcelList, String.valueOf(userEntity.getUserId()),userEntity.getDept().getDeptId());
return commodityService.uploadCommodityCode(commodityCodeEntities);
@ -459,7 +457,7 @@ public class CommodityController {
* @param commodityExcelList
* @return
*/
public List<CommodityCodeEntity> transCommodityCodeEntityList(List<CommodityExcel> commodityExcelList, String userId) {
public List<CommodityCodeEntity> transCommodityCodeEntityList(List<CommodityExcel> commodityExcelList, String userId, String deptId) {
List<CommodityCodeEntity> commodityCodeEntityList = new ArrayList<>();
if (ObjectUtil.isNotEmpty(commodityExcelList)) {
for (CommodityExcel commodityExcel : commodityExcelList) {
@ -503,7 +501,7 @@ public class CommodityController {
commodityCodeEntity.setCpy("");
commodityCodeEntity.setJdc("");
commodityCodeEntity.setBmbBbh("");
commodityCodeEntity.setEntId(deptId);
commodityCodeEntity.setUserId(userId);
if (StringUtils.isNotEmpty(commodityCodeEntity.getHsbz())) {

@ -6,14 +6,18 @@ import com.dxhy.base.file.exception.ExcelReadException;
import com.dxhy.base.file.handle.ExcelReadHandle;
import com.dxhy.order.baseservice.module.taxclass.model.TaxClassCodeEntity;
import com.dxhy.order.baseservice.module.taxclass.service.TaxClassCodeService;
import com.dxhy.order.constant.OrderInfoContentEnum;
import com.dxhy.order.constant.OrderManagementConstant;
import com.dxhy.order.consumer.modules.taxcodematch.emum.SdenergyTaxCodeMatchEnum;
import com.dxhy.order.consumer.modules.taxcodematch.entity.SdenergyTaxCodeMatch;
import com.dxhy.order.consumer.modules.taxcodematch.model.dto.SdenergyTaxCodeMatchDTO;
import com.dxhy.order.consumer.modules.taxcodematch.model.dto.SdenergyTaxCodeMatchDeleteDTO;
import com.dxhy.order.consumer.modules.taxcodematch.service.SdenergyTaxCodeMatchService;
import com.dxhy.order.consumer.utils.InterfaceResponseUtils;
import com.dxhy.order.model.PageUtils;
import com.dxhy.order.model.R;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.lang3.StringUtils;
@ -149,39 +153,49 @@ public class SdenergyTaxCodeMatchController {
if(ObjectUtil.isEmpty(uploadList) ){
return R.error("数据解析为空");
}
List<String> errorMsgList = Lists.newArrayList();
int resultIndex = 3;
List<Map<String,String>> errorMsgList = Lists.newArrayList();
int resultIndex = 2;
for (SdenergyTaxCodeMatch taxCodeMatch : uploadList) {
resultIndex++;
String wlflbm = taxCodeMatch.getWlflbm();
if(StringUtils.isNotBlank(wlflbm)){
SdenergyTaxCodeMatch codeMatch = sdenergyTaxCodeMatchService.queryByWlflbm(taxCodeMatch.getWlflbm());
if(codeMatch != null){
errorMsgList.add("第" + resultIndex + "行,物料分类编码已存在");
errorMsgList.add(buildEMsgMap("第" + resultIndex + "行,物料分类编码已存在"));
continue;
}
}else {
errorMsgList.add("第" + resultIndex + "行,物料分类编码不能为空");
errorMsgList.add(buildEMsgMap("第" + resultIndex + "行,物料分类编码不能为空"));
continue;
}
String ssflbm = taxCodeMatch.getSsflbm();
if(StringUtils.isBlank(ssflbm)){
errorMsgList.add("第" + resultIndex + "行,税收分类编码不能为空");
errorMsgList.add(buildEMsgMap("第" + resultIndex + "行,税收分类编码不能为空"));
continue;
}else {
TaxClassCodeEntity entity = taxClassCodeService.queryTaxClassCodeEntityBySpbm(ssflbm);
if(entity != null){
taxCodeMatch.setSsflmc(entity.getSpjc());
}else {
errorMsgList.add("第" + resultIndex + "行,税收分类编码有误");
errorMsgList.add(buildEMsgMap("第" + resultIndex + "行,税收分类编码有误"));
continue;
}
}
}
if (ObjectUtil.isNotEmpty(errorMsgList)) {
return R.error(errorMsgList);
return R.error("9999","导入失败").put(OrderManagementConstant.DATA, errorMsgList).put("isPass", false).put("count", errorMsgList.size());
}
return sdenergyTaxCodeMatchService.upload(uploadList) > 0 ? R.ok() : R.error();
if(sdenergyTaxCodeMatchService.upload(uploadList) > 0){
return InterfaceResponseUtils.buildReturnInfo(OrderInfoContentEnum.SUCCESS, null).put("count", uploadList.size());
}
return R.error("9999","导入失败").put(OrderManagementConstant.DATA, errorMsgList).put("isPass", false).put("count", errorMsgList.size());
}
public Map<String,String> buildEMsgMap(String errorMsg){
Map<String, String> map = Maps.newHashMap();
map.put("errorMsg",errorMsg);
return map;
}
}

@ -114,10 +114,17 @@ public class SDEnregyServiceImpl extends SDEnregyServiceAbstract {
public AjaxResult syncBuyerMessage(List<MdmGmfxxtbReqBO> mdmGmfxxtbReqBOS, String requestBody) {
// 存表
List<BuyerEntity> list = new ArrayList<>();
for (int i = 0; i < mdmGmfxxtbReqBOS.size(); i++) {
MdmGmfxxtbReqBO tempMdmGmfxxtbReqBO = mdmGmfxxtbReqBOS.get(i);
BuyerEntity entity = new BuyerEntity();
BuyerEntity buyerEntity = buyerMapper.selectBuyerByCodeOrNameAndNsrsbh(tempMdmGmfxxtbReqBO.getCODE(), "", "-1");
if(buyerEntity == null){
log.info("MDM编码数据已存在;{}",tempMdmGmfxxtbReqBO.getCODE());
entity.setSuccess(false);
if(mdmGmfxxtbReqBOS.size() == 1){
return AjaxResult.success("9999", "MDM数据已存在,请勿重复同步");
}
} else {
entity.setId(DistributedKeyMaker.generateShotKey());
entity.setTaxpayerCode(tempMdmGmfxxtbReqBO.getDESC14());
entity.setPurchaseName(tempMdmGmfxxtbReqBO.getDESC1());
@ -182,7 +189,7 @@ public class SDEnregyServiceImpl extends SDEnregyServiceAbstract {
} else {
entity.setSuccess(false);
}
}
list.add(entity);
}
String respStr = "";
@ -429,7 +436,7 @@ public class SDEnregyServiceImpl extends SDEnregyServiceAbstract {
"}";
// 发送POST请求
log.info("[MDM主动同步物料]请求地址:{},请求参数:{}", buyerUrl, requestBody);
log.info("[MDM主动同步物料]请求地址:{},请求参数:{}", groupTaxCodeUrl, requestBody);
HttpResponse response = HttpRequest.post(groupTaxCodeUrl)
.timeout(20000) // 设置请求超时时间
.header("Content-Type", "application/json")
@ -439,8 +446,13 @@ public class SDEnregyServiceImpl extends SDEnregyServiceAbstract {
.execute();
String resp = response.body();
log.info("[MDM主动同步物料]响应结果:{}", resp);
if(StringUtils.isBlank(resp)){
return R.error("未查询到数据!");
}
SDEnergyMdmBaseBO baseBO = JSONObject.parseObject(resp, SDEnergyMdmBaseBO.class);
if(baseBO == null || baseBO.getESB() == null || "S".equals(baseBO.getESB().getRESULT())){
return R.error("未查询到数据!");
}
List<MdmSyncGroupTaxCodeReqBO> mdmGmfxxtbReqBOS = (List<MdmSyncGroupTaxCodeReqBO>) Optional.of(baseBO)
.map(SDEnergyMdmBaseBO::getESB)
.map(ESBBO::getDATA)

Loading…
Cancel
Save