release
gaorl 2 years ago
commit a521635cce
  1. 5
      order-management-common/src/main/java/com/dxhy/order/model/OrderInfo.java
  2. 6
      order-management-consumer/src/main/java/com/dxhy/order/consumer/model/PageOrderInfo.java
  3. 71
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/buyer/domain/BuyerEntityExcel.java
  4. 25
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/buyer/domain/BuyerEntityYhItemExcel.java
  5. 63
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/commodity/controller/GroupCommodityCodeController.java
  6. 19
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/InvoiceServiceImpl.java
  7. 1
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/BeanTransServiceImpl.java
  8. 3
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/GenerateReadyOpenOrderServiceImpl.java
  9. 1
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/ISDEnregyService.java
  10. 46
      order-management-consumer/src/main/java/com/dxhy/order/consumer/openapi/service/impl/SDEnregyServiceImpl.java

@ -406,4 +406,9 @@ public class OrderInfo implements Serializable {
*/
private String bzdh;
/**
* 公司代码
*/
private String gsdm;
}

@ -242,4 +242,10 @@ public class PageOrderInfo {
@ApiModelProperty
private String bzdh;
/**
* 公司代码
*/
@ApiModelProperty
private String gsdm;
}

@ -0,0 +1,71 @@
package com.dxhy.order.consumer.modules.buyer.domain;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
@Data
public class BuyerEntityExcel {
// 主编码的值
@ExcelProperty("CODE")
private String CODE;
// 业务伙伴全称的值
@ExcelProperty("DESC1")
private String DESC1;
// 法人代表的值
@ExcelProperty("DESC12")
private String DESC12;
// 统一社会信用代码(税号)的值
@ExcelProperty("DESC14")
private String DESC14;
// 省份的值
@ExcelProperty("DESC22")
private String DESC22;
// 城市的值
@ExcelProperty("DESC23")
private String DESC23;
// 街道/门牌号的值
@ExcelProperty("DESC24")
private String DESC24;
// 公司电话的值
@ExcelProperty("DESC26")
private String DESC26;
// 手机号
@ExcelProperty("DESC27")
private String DESC27;
// 邮箱
@ExcelProperty("DESC29")
private String DESC29;
// 是否客户的值
@ExcelProperty("DESC38")
private String DESC38;
// 是否供应商的值
@ExcelProperty("DESC39")
private String DESC39;
// 开票名称的值
@ExcelProperty("DESC48")
private String DESC48;
// 开票税号的值
@ExcelProperty("DESC49")
private String DESC49;
@ExcelIgnore
@JSONField(name = "MULTICODE")
private BuyerEntityYhItemExcel MULTICODE;
}

@ -0,0 +1,25 @@
package com.dxhy.order.consumer.modules.buyer.domain;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
@Data
public class BuyerEntityYhItemExcel {
// 银行名称的值
@ExcelProperty("DESC3")
private String DESC3;
// 银行账号的值
@ExcelProperty("DESC4")
private String DESC4;
// 节点编码的值
@ExcelProperty("LISTCODE")
private String LISTCODE;
// A4
@ExcelIgnore
private String SPECIALITYCODE;
@ExcelProperty("CODEID")
private String CODEID;
}

@ -3,11 +3,16 @@ package com.dxhy.order.consumer.modules.commodity.controller;
import com.alibaba.excel.EasyExcel;
import com.alibaba.fastjson.JSONObject;
import com.dxhy.order.baseservice.module.base.service.BaseService;
import com.dxhy.order.baseservice.module.buyer.protocol.MdmGmfxxtbMulticodeValuelistBO;
import com.dxhy.order.consumer.modules.buyer.domain.BuyerEntityExcel;
import com.dxhy.order.consumer.modules.buyer.domain.BuyerEntityYhItemExcel;
import com.dxhy.order.consumer.modules.commodity.domain.dto.CommodityCodeEntityExcel;
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.SyncGroupCommodityDTO;
import com.dxhy.order.consumer.modules.commodity.service.IGroupCommodityCodeService;
import com.dxhy.order.consumer.openapi.protocol.v6.sdenergy.MdmGmfxxtbMulticodeBO;
import com.dxhy.order.consumer.openapi.protocol.v6.sdenergy.MdmGmfxxtbReqBO;
import com.dxhy.order.consumer.openapi.protocol.v6.sdenergy.MdmSyncGroupTaxCodeReqBO;
import com.dxhy.order.consumer.openapi.service.ISDEnregyService;
import com.dxhy.order.model.PageUtils;
@ -22,6 +27,8 @@ import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @Description 集团物料库
@ -69,7 +76,7 @@ public class GroupCommodityCodeController {
}
@RequestMapping("/uploadGroupCommodityDTO")
public R emailUpload(@RequestParam(value = "file") MultipartFile file) {
public R uploadGroupCommodityDTO(@RequestParam(value = "file") MultipartFile file) {
try {
List<CommodityCodeEntityExcel> entityExcelList = EasyExcel.read(file.getInputStream()).sheet().head(CommodityCodeEntityExcel.class).headRowNumber(1).doReadSync();
log.info("解析的数据:{}", JSONObject.toJSONString(entityExcelList));
@ -94,4 +101,58 @@ public class GroupCommodityCodeController {
throw new RuntimeException(e);
}
}
@RequestMapping("/uploadBuyerInfo")
public R uploadBuyerInfo(@RequestParam(value = "file") MultipartFile file) {
try {
List<BuyerEntityExcel> buyerEntityExcels = EasyExcel.read(file.getInputStream()).sheet(0).head(BuyerEntityExcel.class).headRowNumber(1).doReadSync();
List<BuyerEntityYhItemExcel> buyerEntityYhItemExcels = EasyExcel.read(file.getInputStream()).sheet(1).head(BuyerEntityYhItemExcel.class).headRowNumber(1).doReadSync();
log.info("解析的数据:{}", JSONObject.toJSONString(buyerEntityExcels));
if (buyerEntityExcels == null || buyerEntityExcels.isEmpty() || buyerEntityYhItemExcels == null || buyerEntityYhItemExcels.isEmpty()) {
return R.error("数据解析失败");
}
Map<String, List<BuyerEntityYhItemExcel>> listMap = buyerEntityYhItemExcels.stream().collect(Collectors.groupingBy(BuyerEntityYhItemExcel::getCODEID));
List<MdmGmfxxtbReqBO> reqBOList = Lists.newArrayList();
for (BuyerEntityExcel buyerEntity : buyerEntityExcels) {
MdmGmfxxtbReqBO reqBO = new MdmGmfxxtbReqBO();
reqBO.setCODE(buyerEntity.getCODE());
reqBO.setDESC1(buyerEntity.getDESC1());
reqBO.setDESC12(buyerEntity.getDESC12());
reqBO.setDESC14(buyerEntity.getDESC14());
reqBO.setDESC22(buyerEntity.getDESC22());
reqBO.setDESC23(buyerEntity.getDESC23());
reqBO.setDESC24(buyerEntity.getDESC24());
reqBO.setDESC26(buyerEntity.getDESC26());
reqBO.setDESC38(buyerEntity.getDESC38());
reqBO.setDESC39(buyerEntity.getDESC39());
reqBO.setDESC48(buyerEntity.getDESC48());
reqBO.setDESC49(buyerEntity.getDESC49());
reqBO.setDESC27(buyerEntity.getDESC27());
reqBO.setDESC29(buyerEntity.getDESC29());
List<BuyerEntityYhItemExcel> itemExcels = listMap.get(buyerEntity.getCODE());
if (itemExcels != null) {
MdmGmfxxtbMulticodeBO multicodeBO = new MdmGmfxxtbMulticodeBO();
List<MdmGmfxxtbMulticodeValuelistBO> itemExces = Lists.newArrayList();
for (BuyerEntityYhItemExcel itemExcel : itemExcels) {
MdmGmfxxtbMulticodeValuelistBO valuelistBO = new MdmGmfxxtbMulticodeValuelistBO();
valuelistBO.setDESC3(itemExcel.getDESC3());
valuelistBO.setDESC4(itemExcel.getDESC4());
valuelistBO.setLISTCODE(itemExcel.getLISTCODE());
valuelistBO.setSPECIALITYCODE("");
itemExces.add(valuelistBO);
}
multicodeBO.setVALUELIST(itemExces);
reqBO.setMULTICODE(multicodeBO);
}
reqBO.setUUID(baseService.getGenerateShotKey());
reqBOList.add(reqBO);
}
String str = sdEnregyService.syncBuyerMessageService(reqBOList);
return R.ok().put("data",str);
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}

@ -190,14 +190,17 @@ public class InvoiceServiceImpl implements InvoiceService {
if(ruleSplitEntityList.size() != 0){
djce = StrUtil.isBlank(ruleSplitEntityList.get(0).getDjce())?ConfigureConstant.STRING_0:ruleSplitEntityList.get(0).getDjce();
}
BigDecimal abs = new BigDecimal(collect.get(0).getXmdj()).subtract(new BigDecimal(splitItem.getXmdj())).abs();
if (abs.compareTo(new BigDecimal(djce)) > 0) {
Map map = new HashMap();
map.put("ddh", commonOrderInfo.getOrderInfo().getDdh());
map.put("ghfMc", commonOrderInfo.getOrderInfo().getGhfMc());
map.put("xhfMc", commonOrderInfo.getOrderInfo().getXhfMc());
map.put("jshj", commonOrderInfo.getOrderInfo().getKphjje());
djOverflowList.add(map);
if(ObjectUtil.isNotNull(collect.get(0).getXmdj()) && StrUtil.isNotBlank(collect.get(0).getXmdj()) &&
ObjectUtil.isNotNull(splitItem.getXmdj()) && StrUtil.isNotBlank(splitItem.getXmdj())){
BigDecimal abs = new BigDecimal(collect.get(0).getXmdj()).subtract(new BigDecimal(splitItem.getXmdj())).abs();
if (abs.compareTo(new BigDecimal(djce)) > 0) {
Map map = new HashMap();
map.put("ddh", commonOrderInfo.getOrderInfo().getDdh());
map.put("ghfMc", commonOrderInfo.getOrderInfo().getGhfMc());
map.put("xhfMc", commonOrderInfo.getOrderInfo().getXhfMc());
map.put("jshj", commonOrderInfo.getOrderInfo().getKphjje());
djOverflowList.add(map);
}
}
} else {
log.error("{}校验单价容差范围发生错误:在原结算单中未匹配到唯一明细,找到了{}条", LOGGER_MSG, collect.size());

@ -142,6 +142,7 @@ public class BeanTransServiceImpl implements BeanTransService {
orderInfo.setEntId(pageOrderInfo.getEntId());
}
orderInfo.setBzdh(pageOrderInfo.getBzdh());
orderInfo.setGsdm(pageOrderInfo.getGsdm());
//判断小数点后位数,默认为8位,如果为全电,为15位
int afterPointLength = ConfigureConstant.INT_8;

@ -506,6 +506,7 @@ public class GenerateReadyOpenOrderServiceImpl implements GenerateReadyOpenOrder
int i = 1;
for (CommonOrderInfo com : orderSplit) {
com.setKpfs(OrderInfoEnum.ORDER_REQUEST_TYPE_0.getKey());
com.setTerminalCode(terminalCode);
//拆分后的数据,如果不包含1%或3%税率,税率开具理由设置为空
//如果包含1%或3%税率,则用原订单的税率开具理由
@ -709,7 +710,7 @@ public class GenerateReadyOpenOrderServiceImpl implements GenerateReadyOpenOrder
orderProcessInfo.setDdzt(commonOrderInfo.getProcessInfo().getDdzt());
orderProcessInfo.setBzdh(commonOrderInfo.getOrderInfo().getBzdh());
orderProcessInfo.setXtly("FPPAGE");
orderProcessInfo.setGsdm("");
orderProcessInfo.setGsdm(commonOrderInfo.getOrderInfo().getGsdm());
orderProcessInfo.setBhzt(ConfigureConstant.STRING_0);
if(OrderInfoEnum.INVOICE_BILLING_CZLX_1.getKey().equals(commonOrderInfo.getCzlx())){
orderProcessInfo.setYzfp(ConfigureConstant.STRING_0);

@ -65,6 +65,7 @@ public interface ISDEnregyService {
* @return
*/
public R proactiveSyncMdmBuyer(String code);
String syncBuyerMessageService(List<MdmGmfxxtbReqBO> mdmGmfxxtbReqBOS);
public SDEnergyMdmBaseBO buildResult(SDEnergyMdmBaseBO baseBO, List respList, Function<Object, SDEnergyMdmBaseRespBO> handleFunction);
}

@ -185,23 +185,26 @@ public class SDEnregyServiceImpl extends SDEnregyServiceAbstract {
list.add(entity);
}
SDEnergyMdmBaseBO baseBO = JSONObject.parseObject(requestBody, SDEnergyMdmBaseBO.class);
SDEnergyMdmBaseBO result = buildResult(
baseBO,
list,
i -> {
BuyerEntity t = (BuyerEntity) i;
SDEnergyMdmBaseRespBO resp = new SDEnergyMdmBaseRespBO();
resp.setCODE(t.getBuyerCode());
resp.setUUID(t.getUUID());
resp.setSYNSTATUS(t.getSuccess() ? "0" : "1");
resp.setSYNRESULT(t.getSuccess() ? "success" : "failed");
return resp;
}
);
String respStr = "";
if(StringUtils.isNotBlank(requestBody)){
SDEnergyMdmBaseBO baseBO = JSONObject.parseObject(requestBody, SDEnergyMdmBaseBO.class);
SDEnergyMdmBaseBO result = buildResult(
baseBO,
list,
i -> {
BuyerEntity t = (BuyerEntity) i;
SDEnergyMdmBaseRespBO resp = new SDEnergyMdmBaseRespBO();
resp.setCODE(t.getBuyerCode());
resp.setUUID(t.getUUID());
resp.setSYNSTATUS(t.getSuccess() ? "0" : "1");
resp.setSYNRESULT(t.getSuccess() ? "success" : "failed");
return resp;
}
);
respStr = JsonUtils.getInstance().toJsonStringNullToEmpty(result);
}
String resp = JsonUtils.getInstance().toJsonStringNullToEmpty(result);
return AjaxResult.success("success", resp);
return AjaxResult.success("success", respStr);
}
/**
* 集团物料同步接口
@ -467,6 +470,17 @@ public class SDEnregyServiceImpl extends SDEnregyServiceAbstract {
}
}
@Override
public String syncBuyerMessageService(List<MdmGmfxxtbReqBO> mdmGmfxxtbReqBOS){
AjaxResult syncResult = this.syncBuyerMessage(mdmGmfxxtbReqBOS,null);
if (syncResult.isSuccess()) {
return "";
} else {
// return R.error();
return null;
}
}
/**
* 主动同步购方信息
*

Loading…
Cancel
Save