|
|
|
@ -35,6 +35,7 @@ import com.dxhy.order.consumer.openapi.protocol.v6.order.QdTxxBO; |
|
|
|
|
import com.dxhy.order.exception.OrderReceiveException; |
|
|
|
|
import com.dxhy.order.invoice.module.fangge.protocol.invoice.FgCommonOrderHeadBO; |
|
|
|
|
import com.dxhy.order.invoice.module.fangge.protocol.invoice.FgOrderInvoiceItemBO; |
|
|
|
|
import com.dxhy.order.invoice.module.invoicespecial.model.SpecialInvoiceReversalEntity; |
|
|
|
|
import com.dxhy.order.model.*; |
|
|
|
|
import com.dxhy.order.model.c48.cpy.*; |
|
|
|
|
import com.dxhy.order.model.c48.sld.SldInvoiceRollPloRequest; |
|
|
|
@ -3573,4 +3574,185 @@ public class BeanTransitionUtils { |
|
|
|
|
poCommonResponseParam.setES_OUTPUT(esOutput); |
|
|
|
|
return poCommonResponseParam; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 红字信息表转订单 |
|
|
|
|
* @param specialInvoiceReversalEntity , specialInvoiceReversalItems |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
public static CommonOrderInfo transitionCommonOrderInfoFromHzxxb(SpecialInvoiceReversalEntity specialInvoiceReversalEntity, List<SpecialInvoiceReversalItem> specialInvoiceReversalItems) { |
|
|
|
|
CommonOrderInfo commonOrderInfo = new CommonOrderInfo(); |
|
|
|
|
|
|
|
|
|
OrderInfo orderInfo = transitionOrderInfoFromHzxxb(specialInvoiceReversalEntity); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<OrderItemInfo> orderItemInfos = transitionOrderItemInfoFromHzxxb(specialInvoiceReversalItems,specialInvoiceReversalEntity.getXhfNsrsbh()); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 默认开票项目为明细行首行数据 |
|
|
|
|
*/ |
|
|
|
|
orderInfo.setKpxm(orderItemInfos.get(0).getXmmc()); |
|
|
|
|
|
|
|
|
|
commonOrderInfo.setOrderInfo(orderInfo); |
|
|
|
|
|
|
|
|
|
commonOrderInfo.setOrderItemInfo(orderItemInfos); |
|
|
|
|
|
|
|
|
|
return commonOrderInfo; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 红字信息主表信息转OrderInfo |
|
|
|
|
* @param ddtxx |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
public static OrderInfo transitionOrderInfoFromHzxxb(SpecialInvoiceReversalEntity ddtxx) { |
|
|
|
|
|
|
|
|
|
OrderInfo orderInfo = new OrderInfo(); |
|
|
|
|
orderInfo.setFpqqlsh(ddtxx.getId()); |
|
|
|
|
//如果订单号为空的话, 自动生成20位的订单号
|
|
|
|
|
orderInfo.setDdh(RandomUtil.randomNumbers(12)); |
|
|
|
|
//orderInfo.setThdh(ddtxx.getTHDH());
|
|
|
|
|
//orderInfo.setGhfId(ddtxx.getGMFBM());
|
|
|
|
|
orderInfo.setDdlx("0"); |
|
|
|
|
Date ddrq = new Date(); |
|
|
|
|
orderInfo.setDdrq(ddrq); |
|
|
|
|
orderInfo.setDsptbm(""); |
|
|
|
|
orderInfo.setNsrsbh(ddtxx.getXhfNsrsbh()); |
|
|
|
|
orderInfo.setNsrmc(ddtxx.getXhfMc()); |
|
|
|
|
orderInfo.setNsrdzdah(ddtxx.getXhfNsrsbh()); |
|
|
|
|
orderInfo.setSwjgDm(""); |
|
|
|
|
// TODO: 2018/10/25 代开标志默认为0
|
|
|
|
|
orderInfo.setDkbz("0"); |
|
|
|
|
/** |
|
|
|
|
* 外层进行补全,使用明细行第一行商品名称作为开票项目 |
|
|
|
|
*/ |
|
|
|
|
orderInfo.setKpxm(""); |
|
|
|
|
orderInfo.setBbmBbh(ddtxx.getBmbbbh()); |
|
|
|
|
orderInfo.setXhfMc(ddtxx.getXhfMc()); |
|
|
|
|
orderInfo.setXhfNsrsbh(ddtxx.getXhfNsrsbh()); |
|
|
|
|
orderInfo.setXhfDz(ddtxx.getXhfDz()); |
|
|
|
|
orderInfo.setXhfDh(ddtxx.getXhfDh()); |
|
|
|
|
// TODO: 2018/10/25 前期使用银行字段存储银行帐号
|
|
|
|
|
if (StringUtils.isNotBlank(ddtxx.getXhfYh())) { |
|
|
|
|
orderInfo.setXhfYh(ddtxx.getXhfYh()); |
|
|
|
|
} |
|
|
|
|
if (StringUtils.isNotBlank(ddtxx.getXhfZh())) { |
|
|
|
|
orderInfo.setXhfZh(ddtxx.getXhfZh()); |
|
|
|
|
} |
|
|
|
|
orderInfo.setGhfQylx(ddtxx.getGhfqylx()); |
|
|
|
|
//orderInfo.setGhfSf(ddtxx.getGMFSF());
|
|
|
|
|
orderInfo.setGhfMc(ddtxx.getGhfMc()); |
|
|
|
|
orderInfo.setGhfNsrsbh(ddtxx.getGhfNsrsbh()); |
|
|
|
|
orderInfo.setGhfDz(ddtxx.getGhfDz()); |
|
|
|
|
orderInfo.setGhfDh(ddtxx.getGhfDh()); |
|
|
|
|
// TODO: 2018/10/25 前期使用银行字段存储银行帐号
|
|
|
|
|
if (StringUtils.isNotBlank(ddtxx.getGhfYh())) { |
|
|
|
|
orderInfo.setGhfYh(ddtxx.getGhfYh()); |
|
|
|
|
} |
|
|
|
|
if (StringUtils.isNotBlank(ddtxx.getGhfZh())) { |
|
|
|
|
orderInfo.setGhfZh(ddtxx.getGhfZh()); |
|
|
|
|
} |
|
|
|
|
//orderInfo.setGhfSj(ddtxx.getGMFSJH());
|
|
|
|
|
//orderInfo.setGhfEmail(ddtxx.getGMFDZYX());
|
|
|
|
|
orderInfo.setHyDm(""); |
|
|
|
|
orderInfo.setHyMc(""); |
|
|
|
|
orderInfo.setKpr(ddtxx.getKpr()); |
|
|
|
|
orderInfo.setSkr(ddtxx.getSkr()); |
|
|
|
|
orderInfo.setFhr(ddtxx.getFhr()); |
|
|
|
|
//orderInfo.setKplx(ddtxx.getKPLX());
|
|
|
|
|
|
|
|
|
|
orderInfo.setFpzlDm(ddtxx.getFpzlDm()); |
|
|
|
|
orderInfo.setYfpDm(ddtxx.getYfpDm()); |
|
|
|
|
orderInfo.setYfpHm(ddtxx.getYfpHm()); |
|
|
|
|
orderInfo.setChyy(ddtxx.getChyy()); |
|
|
|
|
//orderInfo.setTschbz(ddtxx.getTSCHBZ());
|
|
|
|
|
orderInfo.setHzxxbbh(ddtxx.getXxbbh()); |
|
|
|
|
// TODO: 2018/10/25 操作代码默认为10
|
|
|
|
|
orderInfo.setCzdm("10"); |
|
|
|
|
orderInfo.setQdBz(ddtxx.getQdbz()); |
|
|
|
|
//orderInfo.setQdXmmc(ddtxx.getQDXMMC());
|
|
|
|
|
orderInfo.setKphjje(ddtxx.getKphjje()); |
|
|
|
|
orderInfo.setHjbhsje(ddtxx.getHjbhsje()); |
|
|
|
|
orderInfo.setHjse(ddtxx.getHjse()); |
|
|
|
|
//orderInfo.setStatementNo(ddtxx.getSettlementNo());
|
|
|
|
|
if (StringUtils.isNotBlank(ddtxx.getKphjje())) { |
|
|
|
|
orderInfo.setKphjje(DecimalCalculateUtil.decimalFormatToString(String.valueOf(ddtxx.getKphjje()), 2)); |
|
|
|
|
} |
|
|
|
|
if (StringUtils.isNotBlank(ddtxx.getHjbhsje())) { |
|
|
|
|
orderInfo.setHjbhsje(DecimalCalculateUtil.decimalFormatToString(String.valueOf(ddtxx.getHjbhsje()), 2)); |
|
|
|
|
} |
|
|
|
|
if (StringUtils.isNotBlank(ddtxx.getHjse())) { |
|
|
|
|
orderInfo.setHjse(DecimalCalculateUtil.decimalFormatToString(String.valueOf(ddtxx.getHjse()), 2)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// TODO: 2018/10/25 后期考虑添加以下字段:门店号,业务类型,推送地址
|
|
|
|
|
orderInfo.setMdh(""); |
|
|
|
|
orderInfo.setYwlx(""); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 外层进行补全,使用最外层的数据进行填充 |
|
|
|
|
*/ |
|
|
|
|
orderInfo.setKpjh(""); |
|
|
|
|
orderInfo.setSld(""); |
|
|
|
|
orderInfo.setSldMc(""); |
|
|
|
|
//orderInfo.setTqm(ddtxx.getTQM());
|
|
|
|
|
//orderInfo.setSfcf(ddtxx.getSFCF());
|
|
|
|
|
|
|
|
|
|
//orderInfo.setBz(ddtxx.getBZ());
|
|
|
|
|
orderInfo.setCreateTime(new Date()); |
|
|
|
|
orderInfo.setUpdateTime(new Date()); |
|
|
|
|
//orderInfo.setByzd1(ddtxx.getBYZD1());
|
|
|
|
|
//orderInfo.setByzd2(ddtxx.getBYZD2());
|
|
|
|
|
//orderInfo.setByzd3(ddtxx.getBYZD3());
|
|
|
|
|
//orderInfo.setByzd4(ddtxx.getBYZD4());
|
|
|
|
|
//orderInfo.setByzd5(ddtxx.getBYZD5());
|
|
|
|
|
//orderInfo.setDeptId(ddtxx.getDEPTID());
|
|
|
|
|
return orderInfo; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 红字信息表明细转OrderItemInfo |
|
|
|
|
* @param specialInvoiceReversalItemList , xhfNsrsbh |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
public static List<OrderItemInfo> transitionOrderItemInfoFromHzxxb(List<SpecialInvoiceReversalItem> specialInvoiceReversalItemList,String xhfNsrsbh) { |
|
|
|
|
List<OrderItemInfo> orderItemInfos = new ArrayList<>(); |
|
|
|
|
for (int i = 0; i < specialInvoiceReversalItemList.size(); i++) { |
|
|
|
|
OrderItemInfo orderItemInfo = new OrderItemInfo(); |
|
|
|
|
SpecialInvoiceReversalItem orderInvoiceItem = specialInvoiceReversalItemList.get(i); |
|
|
|
|
orderItemInfo.setSphxh(String.valueOf(i + 1)); |
|
|
|
|
//orderItemInfo.setSpId(orderInvoiceItem.getSPID());
|
|
|
|
|
orderItemInfo.setXmmc(orderInvoiceItem.getXmmc()); |
|
|
|
|
orderItemInfo.setXmdw(ObjectUtil.isNull(orderInvoiceItem.getXmdw()) ? "":orderInvoiceItem.getXmdw()); |
|
|
|
|
orderItemInfo.setGgxh(ObjectUtil.isNull(orderInvoiceItem.getGgxh()) ? "":orderInvoiceItem.getGgxh()); |
|
|
|
|
|
|
|
|
|
orderItemInfo.setXmdj(ObjectUtil.isNull(orderInvoiceItem.getXmdj()) ? "":orderInvoiceItem.getXmdj()); |
|
|
|
|
orderItemInfo.setXmsl(ObjectUtil.isNull(orderInvoiceItem.getXmsl()) ? "":orderInvoiceItem.getXmsl()); |
|
|
|
|
|
|
|
|
|
orderItemInfo.setHsbz(orderInvoiceItem.getHsbz()); |
|
|
|
|
//orderItemInfo.setFphxz(ObjectUtil.isNull(orderInvoiceItem.getFphxz()) ? "0":orderInvoiceItem.getFphxz());
|
|
|
|
|
orderItemInfo.setFphxz("0"); |
|
|
|
|
orderItemInfo.setSpbm(orderInvoiceItem.getSpbm()); |
|
|
|
|
orderItemInfo.setZxbm(orderInvoiceItem.getZxbm()); |
|
|
|
|
orderItemInfo.setYhzcbs(orderInvoiceItem.getYhzcbs()); |
|
|
|
|
orderItemInfo.setLslbs(orderInvoiceItem.getLslbs()); |
|
|
|
|
orderItemInfo.setZzstsgl(orderInvoiceItem.getZzstsgl()); |
|
|
|
|
orderItemInfo.setKce(orderInvoiceItem.getKce()); |
|
|
|
|
orderItemInfo.setXmje(orderInvoiceItem.getXmje()); |
|
|
|
|
orderItemInfo.setSl(orderInvoiceItem.getSl()); |
|
|
|
|
orderItemInfo.setSe(orderInvoiceItem.getSe()); |
|
|
|
|
orderItemInfo.setXhfNsrsbh(xhfNsrsbh); |
|
|
|
|
orderItemInfo.setWcje("0.00"); |
|
|
|
|
//orderItemInfo.setByzd1(orderInvoiceItem.getBYZD1());
|
|
|
|
|
//orderItemInfo.setByzd2(orderInvoiceItem.getBYZD2());
|
|
|
|
|
//orderItemInfo.setByzd3(orderInvoiceItem.getBYZD3());
|
|
|
|
|
orderItemInfo.setCreateTime(new Date()); |
|
|
|
|
orderItemInfos.add(orderItemInfo); |
|
|
|
|
} |
|
|
|
|
return orderItemInfos; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|