feature:物料整体逻辑优化

release
gaorl 2 years ago
parent d58b06f065
commit 55cb47cf8c
  1. 5
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/controller/CommodityController.java
  2. 3
      order-management-base-service/src/main/resources/mybatis/mapper/CommodityMapper.xml
  3. 2
      order-management-base-service/src/main/resources/mybatis/mapper/TaxClassCodeMapper.xml
  4. 22
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/commodity/service/impl/GroupCommodityCodeServiceImpl.java
  5. 2
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java
  6. 16
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/api/InvoiceRestApiV6.java
  7. 1
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/InterfaceServiceImplV3.java
  8. 10
      order-management-consumer/src/main/resources/mybatis/mapper/GroupCommodityCodeMapper.xml

@ -191,13 +191,14 @@ public class CommodityController {
CommodityCodeEntity commodityCode = new CommodityCodeEntity(); CommodityCodeEntity commodityCode = new CommodityCodeEntity();
commodityCode.setSpjc(spjc); commodityCode.setSpjc(spjc);
commodityCode.setSpbm(spbm); commodityCode.setSpbm(spbm);
commodityCode.setModifyTime(new Date());
commodityCode.setModifyUserId(userInfoService.getUser() != null && userInfoService.getUser().getUserId() != null ? userInfoService.getUser().getUserId().toString():"");
try { try {
commodityService.batchUpdateCommodity(commodityCode,ids); return commodityService.batchUpdateCommodity(commodityCode,ids);
} catch (Exception e) { } catch (Exception e) {
log.error("更新集团物料失败,异常信息{}",e); log.error("更新集团物料失败,异常信息{}",e);
return R.error("系统更新异常,请联系管理员"); return R.error("系统更新异常,请联系管理员");
} }
return R.ok();
} }
/** /**
* 删除 * 删除

@ -465,6 +465,9 @@
<if test="commodityCode.modifyTime != null and commodityCode.modifyTime != ''"> <if test="commodityCode.modifyTime != null and commodityCode.modifyTime != ''">
modify_time = #{commodityCode.modifyTime,jdbcType=TIMESTAMP}, modify_time = #{commodityCode.modifyTime,jdbcType=TIMESTAMP},
</if> </if>
<if test="commodityCode.modifyUserId != null and commodityCode.modifyUserId != ''">
modify_user_id = #{commodityCode.modifyUserId,jdbcType=CHAR},
</if>
<if test="commodityCode.bz != null and commodityCode.bz != ''"> <if test="commodityCode.bz != null and commodityCode.bz != ''">
description = #{commodityCode.bz,jdbcType=VARCHAR}, description = #{commodityCode.bz,jdbcType=VARCHAR},
</if> </if>

@ -152,7 +152,7 @@
WHERE WHERE
tcc.spbm =#{spbm,jdbcType=VARCHAR} tcc.spbm =#{spbm,jdbcType=VARCHAR}
and tcc.kyzt = 'Y' and tcc.kyzt = 'Y'
AND TCC.hzx = 'N' AND tcc.hzx = 'N'
</select> </select>
<select id="queryTaxClassCodeEntityBySpmcOrMs" parameterType="String" <select id="queryTaxClassCodeEntityBySpmcOrMs" parameterType="String"

@ -4,7 +4,9 @@ import com.dxhy.order.baseservice.module.base.service.BaseService;
import com.dxhy.order.baseservice.module.commodity.model.CommodityCodeEntity; import com.dxhy.order.baseservice.module.commodity.model.CommodityCodeEntity;
import com.dxhy.order.baseservice.module.taxclass.dao.TaxClassCodeMapper; import com.dxhy.order.baseservice.module.taxclass.dao.TaxClassCodeMapper;
import com.dxhy.order.baseservice.module.taxclass.model.TaxClassCodeEntity; import com.dxhy.order.baseservice.module.taxclass.model.TaxClassCodeEntity;
import com.dxhy.order.baseservice.module.thirdservice.user.service.UserInfoService;
import com.dxhy.order.constant.ConfigureConstant; import com.dxhy.order.constant.ConfigureConstant;
import com.dxhy.order.constant.TaxClassCodeEnum;
import com.dxhy.order.consumer.dao.GroupCommodityCodeMapper; import com.dxhy.order.consumer.dao.GroupCommodityCodeMapper;
import com.dxhy.order.consumer.modules.commodity.domain.dto.QueryGroupCommodityDTO; import com.dxhy.order.consumer.modules.commodity.domain.dto.QueryGroupCommodityDTO;
import com.dxhy.order.consumer.modules.commodity.domain.dto.QuoteGroupCommodityDTO; import com.dxhy.order.consumer.modules.commodity.domain.dto.QuoteGroupCommodityDTO;
@ -28,6 +30,7 @@ import javax.annotation.Resource;
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.InvocationTargetException;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Arrays; import java.util.Arrays;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -54,6 +57,9 @@ public class GroupCommodityCodeServiceImpl implements IGroupCommodityCodeService
@Resource @Resource
private TaxClassCodeMapper taxClassCodeMapper; private TaxClassCodeMapper taxClassCodeMapper;
@Resource
private UserInfoService userInfoService;
/** /**
* 查询集团物料库 * 查询集团物料库
* *
@ -136,7 +142,15 @@ public class GroupCommodityCodeServiceImpl implements IGroupCommodityCodeService
log.error("{}引用物料异常", LOGGER_MSG, e); log.error("{}引用物料异常", LOGGER_MSG, e);
} }
if(queryCommodityEntity != null){ if(queryCommodityEntity != null){
//如果优先级更高则不进行更新
if(Arrays.asList("1,2,6,7,8,10").contains(queryCommodityEntity.getDataSource())){
return R.error("第" + (i + 1) + "条数据,已存在");
}
newCommodityCodeEntity.setId(queryCommodityEntity.getId()); newCommodityCodeEntity.setId(queryCommodityEntity.getId());
newCommodityCodeEntity.setModifyTime(new Date());
newCommodityCodeEntity.setCreateTime(null);
newCommodityCodeEntity.setUserId(null);
newCommodityCodeEntity.setModifyUserId(userInfoService.getUser() != null && userInfoService.getUser().getUserId() != null ? userInfoService.getUser().getUserId().toString():"");
if (groupCommodityMapper.updateCommodityCode(newCommodityCodeEntity) <= 0) { if (groupCommodityMapper.updateCommodityCode(newCommodityCodeEntity) <= 0) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return R.error("第" + (i + 1) + "条数据,引用失败"); return R.error("第" + (i + 1) + "条数据,引用失败");
@ -144,10 +158,12 @@ public class GroupCommodityCodeServiceImpl implements IGroupCommodityCodeService
}else{ }else{
newCommodityCodeEntity.setId(baseService.getGenerateShotKey()); newCommodityCodeEntity.setId(baseService.getGenerateShotKey());
newCommodityCodeEntity.setXhfNsrsbh(quoteGroupCommodityDTO.getXhfNsrsbh()); newCommodityCodeEntity.setXhfNsrsbh(quoteGroupCommodityDTO.getXhfNsrsbh());
newCommodityCodeEntity.setDataState("0"); newCommodityCodeEntity.setDataState(TaxClassCodeEnum.DATA_SOURCE_9.getKey());
newCommodityCodeEntity.setXhfMc(quoteGroupCommodityDTO.getXhfMc()); newCommodityCodeEntity.setXhfMc(quoteGroupCommodityDTO.getXhfMc());
newCommodityCodeEntity.setHsbz("1"); newCommodityCodeEntity.setHsbz(ConfigureConstant.STRING_1);
newCommodityCodeEntity.setYhzcbs("0"); newCommodityCodeEntity.setYhzcbs(ConfigureConstant.STRING_0);
newCommodityCodeEntity.setCreateTime(new Date());
newCommodityCodeEntity.setUserId(userInfoService.getUser() != null && userInfoService.getUser().getUserId() != null ? userInfoService.getUser().getUserId().toString():"");
if(StringUtils.isNotBlank(newCommodityCodeEntity.getSpbm())){ if(StringUtils.isNotBlank(newCommodityCodeEntity.getSpbm())){
TaxClassCodeEntity taxClassCodeEntity = taxClassCodeMapper.queryTaxClassCodeEntityBySpbm(newCommodityCodeEntity.getSpbm()); TaxClassCodeEntity taxClassCodeEntity = taxClassCodeMapper.queryTaxClassCodeEntityBySpbm(newCommodityCodeEntity.getSpbm());
if(taxClassCodeEntity != null){ if(taxClassCodeEntity != null){

@ -1907,7 +1907,7 @@ public class OrderInfoServiceImpl implements OrderInfoService {
for (OrderItemInfo itemInfo : orderItemInfo) { for (OrderItemInfo itemInfo : orderItemInfo) {
try { try {
CommodityCodeEntity commodityCodeEntity = buildCommodity(itemInfo, param, spbmMap); CommodityCodeEntity commodityCodeEntity = buildCommodity(itemInfo, param, spbmMap);
//判断是否已存在 //判断是否已存在,同步中存在一样的是否需要过滤后期考虑
int i = 0; int i = 0;
//公司不维护 //公司不维护
CommodityCodeEntity commodityCodeOld = collect.get(itemInfo.getZxbm()); CommodityCodeEntity commodityCodeOld = collect.get(itemInfo.getZxbm());

@ -254,16 +254,16 @@ public class InvoiceRestApiV6 {
} else if (ConfigurerInfo.QUERYCOMMODITYINFO.equals(interfaceName)) { } else if (ConfigurerInfo.QUERYCOMMODITYINFO.equals(interfaceName)) {
//商品信息查询接口 //商品信息查询接口
SpxxcxReqBO spxxcxReq = JsonUtils.getInstance().parseObject(reqStr, SpxxcxReqBO.class); // SpxxcxReqBO spxxcxReq = JsonUtils.getInstance().parseObject(reqStr, SpxxcxReqBO.class);
SpxxcxRspBO spxxcxRsp = interfaceServiceV3.queryCommodityMessage(spxxcxReq, secretId); // SpxxcxRspBO spxxcxRsp = interfaceServiceV3.queryCommodityMessage(spxxcxReq, secretId);
returnJsonString = JsonUtils.getInstance().toJsonStringNullToEmpty(spxxcxRsp); // returnJsonString = JsonUtils.getInstance().toJsonStringNullToEmpty(spxxcxRsp);
return returnJsonString = "";
} else if (ConfigurerInfo.SYNCCOMMODITYINFO.equals(interfaceName)) { } else if (ConfigurerInfo.SYNCCOMMODITYINFO.equals(interfaceName)) {
//商品信息同步接口 //商品信息同步接口
List<SpxxtbReqBO> spxxtbReqList = JSONObject.parseArray(reqStr, SpxxtbReqBO.class); // List<SpxxtbReqBO> spxxtbReqList = JSONObject.parseArray(reqStr, SpxxtbReqBO.class);
List<SpxxtbRspBO> spxxtbRspList = interfaceServiceV3.syncCommodityMessage(spxxtbReqList, secretId); // List<SpxxtbRspBO> spxxtbRspList = interfaceServiceV3.syncCommodityMessage(spxxtbReqList, secretId);
returnJsonString = JsonUtils.getInstance().toJsonStringNullToEmpty(spxxtbRspList); // returnJsonString = JsonUtils.getInstance().toJsonStringNullToEmpty(spxxtbRspList);
return returnJsonString = "";
} else if (ConfigurerInfo.QUERYBUYERINFO.equals(interfaceName)) { } else if (ConfigurerInfo.QUERYBUYERINFO.equals(interfaceName)) {
//购买方信息查询接口 //购买方信息查询接口
GmfxxcxReqBO gmfxxcxReq = JsonUtils.getInstance().parseObject(reqStr, GmfxxcxReqBO.class); GmfxxcxReqBO gmfxxcxReq = JsonUtils.getInstance().parseObject(reqStr, GmfxxcxReqBO.class);

@ -5371,6 +5371,7 @@ public class InterfaceServiceImplV3 implements InterfaceServiceV3 {
* @return * @return
*/ */
@Override @Override
@SuppressWarnings("")
public List<GroupTaxRespBO> syncGroupTax(List<GroupTaxReqBO> groupTaxReqBO, String secretId) { public List<GroupTaxRespBO> syncGroupTax(List<GroupTaxReqBO> groupTaxReqBO, String secretId) {
List<GroupTaxRespBO> resp = new ArrayList<GroupTaxRespBO>(); List<GroupTaxRespBO> resp = new ArrayList<GroupTaxRespBO>();
// 根据商品名称和和商品编码查下商品编码公司是否已经录入了物料编码 // 根据商品名称和和商品编码查下商品编码公司是否已经录入了物料编码

@ -569,13 +569,13 @@
tax_classification_name, tax_classification_name,
preferential_policies_type, preferential_policies_type,
zzstsgl, zzstsgl,
user_id, 'clone',
create_time, now(),
modify_time, null,
modify_user_id, '',
group_id, group_id,
#{to.xhfMc,jdbcType=VARCHAR}, #{to.xhfMc,jdbcType=VARCHAR},
data_source, '10',
matching_state, matching_state,
data_state, data_state,
tax_class_abbreviation, tax_class_abbreviation,

Loading…
Cancel
Save