|
@@ -88,14 +88,16 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
item1.setSize(size.getSize());//获取尺码
|
|
|
item1.setTotalPrice(boxNumber.multiply(item1.getUnitPrice()));//获取总价 箱数*单价-->件数*单价
|
|
|
// item1.setBoxNumber(boxNumber);//获取箱数
|
|
|
- boxNumber=boxNumber.divide(item.getPiecesBox(),6,BigDecimal.ROUND_HALF_UP);
|
|
|
+
|
|
|
+ /*boxNumber=boxNumber.divide(item.getPiecesBox(),6,BigDecimal.ROUND_HALF_UP);
|
|
|
item1.setTotalNetWeight(boxNumber.multiply(item1.getNetWeight()));//获取总净重 净重*箱数
|
|
|
item1.setTotalGrossWeight(boxNumber.multiply(item1.getGrossWeight()));//获取总毛重 箱数*毛重/箱
|
|
|
//item1.setTotalNetWeight(boxNumber.multiply(new BigDecimal(size.getProportion())));//获取净净重 不知
|
|
|
BigDecimal volume=boxNumber.multiply(item1.getOuterBoxHeight());
|
|
|
volume=volume.multiply(item1.getOuterBoxLength());
|
|
|
volume=volume.multiply(item1.getOuterBoxWidth());
|
|
|
- item1.setTotalVolume(volume.divide(new BigDecimal(1000000)));//获取总体积 长*宽*高*箱数
|
|
|
+ item1.setTotalVolume(volume.divide(new BigDecimal(1000000)));//获取总体积 长*宽*高*箱数*/
|
|
|
+
|
|
|
item1.setSyPreAssembledPackingListItemId(size.getItemId());//获取到预装箱单子表id
|
|
|
item1.setSort(size.getNum());//获取序号
|
|
|
item1.setId(oConvertUtils.id());//获取到随机id
|
|
@@ -111,6 +113,8 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
item1.setOmpoId(syPreItem.getOmpoId());//获取采购委外主表id
|
|
|
item1.setOmpoIdItem(syPreItem.getOmpoIdItem());//获取采购委外子表id
|
|
|
item1.setOmpoAccount(syPreItem.getOmpoAccount());//委外采购账套号
|
|
|
+ item1.setSupplier(syPreItem.getSupplier());
|
|
|
+ item1.setSupplierCode(syPreItem.getSupplierCode());
|
|
|
syPreAssembledPackingListItemMapper.updateById(syPreItem);//修改剩余数量
|
|
|
syPackingListTailoringItemMapper.insert(item1);//添加子表数据
|
|
|
}
|
|
@@ -135,14 +139,14 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
item1.setActualPackingQty(boxNumber);
|
|
|
item1.setTotalPrice(boxNumber.multiply(item1.getUnitPrice()));//获取总价 箱数*单价-->件数*单价
|
|
|
//item1.setBoxNumber(boxNumber);//获取箱数
|
|
|
- boxNumber=boxNumber.divide(item.getPiecesBox(),6,BigDecimal.ROUND_HALF_UP);
|
|
|
+ /*boxNumber=boxNumber.divide(item.getPiecesBox(),6,BigDecimal.ROUND_HALF_UP);
|
|
|
item1.setTotalNetWeight(boxNumber.multiply(item1.getNetWeight()));//获取总净重 净重*箱数
|
|
|
item1.setTotalGrossWeight(boxNumber.multiply(item1.getGrossWeight()));//获取总毛重 箱数*毛重/箱
|
|
|
//item1.setTotalNetWeight(boxNumber.multiply(new BigDecimal(size.getProportion())));//获取净净重 不知
|
|
|
BigDecimal volume=boxNumber.multiply(item1.getOuterBoxHeight());//获取体积
|
|
|
volume=volume.multiply(item1.getOuterBoxLength());
|
|
|
volume=volume.multiply(item1.getOuterBoxWidth());
|
|
|
- item1.setTotalVolume(volume.divide(new BigDecimal(1000000)));//获取总体积 长*宽*高*箱数
|
|
|
+ item1.setTotalVolume(volume.divide(new BigDecimal(1000000)));//获取总体积 长*宽*高*箱数*/
|
|
|
|
|
|
//item.setSyDeclarationElementsItemId(size.getItemId());//获取到发运明细子表id
|
|
|
item1.setId(size.getItemId());//从尺码表中获取到id
|
|
@@ -264,6 +268,9 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
s1.setInventoryCcode(syPreAssembledPackingListItem.getInventoryCcode());//物料分类
|
|
|
s1.setWithCode(syPreAssembledPackingListItem.getWithCode());//配码规则
|
|
|
s1.setOmpoAccount(syPreAssembledPackingListItem.getOmpoAccount());//采购委外账套号
|
|
|
+
|
|
|
+ s1.setSupplier(syPreAssembledPackingListItem.getSupplier());
|
|
|
+ s1.setSupplierCode(syPreAssembledPackingListItem.getSupplierCode());
|
|
|
s1.setYmoney(syPreAssembledPackingListItem.getYmoney());//佣金
|
|
|
s1.setElementsId(syPackingListTailoring.getElementsId());//申报要素id
|
|
|
/*s1.getOmpoId(syPreAssembledPackingListItem.getOmpoId())//采购委外主表id
|
|
@@ -551,7 +558,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
item.setSyPackingListTailoringId(syPackingListTailoring.getId());//获取主表id
|
|
|
item.setElementsId(syPackingListTailoring.getElementsId());//申报要素id
|
|
|
BigDecimal boxNumber1=item.getBoxNumber();//获取箱数
|
|
|
- item.setGroupId(oConvertUtils.id());//分组随机id
|
|
|
+ item.setGroupId(oConvertUtils.id());//分组随机idv1
|
|
|
item.setDelFlag("0");//默认为未删除
|
|
|
syPackingListTailoring.setTotal(syPackingListTailoring.getTotal().add(item.getTotal()));
|
|
|
item.setSmallPo(syPackingListTailoring.getSmallPo());
|
|
@@ -571,13 +578,16 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
item1.setActualPackingQty(boxNumber);//实际装箱数量
|
|
|
item1.setPlanQuantity(boxNumber);//计划装箱数量
|
|
|
item1.setSize(size.getSize());//获取尺码
|
|
|
- boxNumber=boxNumber.divide(item.getPiecesBox(),6,BigDecimal.ROUND_HALF_UP);
|
|
|
+
|
|
|
+ /* boxNumber=boxNumber.divide(item.getPiecesBox(),6,BigDecimal.ROUND_HALF_UP);
|
|
|
item1.setTotalNetWeight(boxNumber.multiply(item1.getNetWeight()));//获取总净重 净重*箱数
|
|
|
item1.setTotalGrossWeight(boxNumber.multiply(item1.getGrossWeight()));//获取总毛重 箱数*毛重/箱
|
|
|
BigDecimal volume=boxNumber.multiply(item1.getOuterBoxHeight());
|
|
|
volume=volume.multiply(item1.getOuterBoxLength());
|
|
|
volume=volume.multiply(item1.getOuterBoxWidth());
|
|
|
- item1.setTotalVolume(volume.divide(new BigDecimal(1000000)));//获取总体积 长*宽*高*箱数
|
|
|
+ item1.setTotalVolume(volume.divide(new BigDecimal(1000000)));//获取总体积 长*宽*高*箱数*/
|
|
|
+
|
|
|
+
|
|
|
item1.setSyPreAssembledPackingListItemId(size.getItemId());//获取到预装箱单子表id
|
|
|
item1.setSort(size.getNum());//获取序号
|
|
|
item1.setId(oConvertUtils.id());//获取到随机id
|
|
@@ -589,7 +599,6 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
item1.setHod(new SimpleDateFormat("yyyy-MM-dd").parse(syPreItem.getHod()));//预发货日期
|
|
|
item1.setWithCode(syPreItem.getWithCode());
|
|
|
|
|
|
- item1.setOmpoIdItem(syPreItem.getOmpoIdItem());//获取委外/采购订单子表Id
|
|
|
item1.setUnitPrice(syPreItem.getUnitPrice());//获取销售单价
|
|
|
//item1.setFactoryUnitPrice(new BigDecimal(syPreItem.getFactoryUnitPrice()==null?"0":syPreItem.getFactoryUnitPrice()));//工厂单价
|
|
|
item1.setInventoryName(syPreItem.getInventoryName());//存货名称
|
|
@@ -603,6 +612,8 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
item1.setOmpoId(syPreItem.getOmpoId());//主表id
|
|
|
item1.setOmpoIdItem(syPreItem.getOmpoIdItem());//子表id
|
|
|
item1.setOmpoAccount(syPreItem.getOmpoAccount());//子表id
|
|
|
+ item1.setSupplier(syPreItem.getSupplier());
|
|
|
+ item1.setSupplierCode(syPreItem.getSupplierCode());
|
|
|
syPreAssembledPackingListItemMapper.updateById(syPreItem);//修改剩余数量
|
|
|
}
|
|
|
syPackingListTailoring.setTotalPrice(syPackingListTailoring.getTotalPrice().add(item1.getTotalPrice()));//获取总价
|
|
@@ -689,6 +700,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
}
|
|
|
|
|
|
Map<String,Object> saveBatch(List<SyPackingListTailoring> mains,Map<String,Object> mapt){
|
|
|
+ mapt.put("customerCode","xxx");//进入方法时设置客户编码为空
|
|
|
if(mains==null||mains.size()==0){
|
|
|
return new HashMap();//为空就传回空对象
|
|
|
}
|
|
@@ -707,40 +719,43 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
Map<String,String> mapSort=new HashMap<>();
|
|
|
|
|
|
String createBy="进出口平台管理员";
|
|
|
+ //String createDate=main.getCreateTime().toString();
|
|
|
+ String createDate=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(main.getCreateTime());//转化日期类型
|
|
|
JSONObject map=new JSONObject();//采购(委外)入库单
|
|
|
- map.put("CVOUCHCODE",purchaseWarehousingMapper.getMaxCode("id+1","RdRecord01","dnmaketime"));//获取单据号
|
|
|
- map.put("DDATE",main.getCreateTime());//日期(格式2015-01-01)
|
|
|
+ map.put("CVOUCHCODE", org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cCode","RdRecord01","dnmaketime")));//获取单据号
|
|
|
+ map.put("DDATE",createDate);//日期(格式2015-01-01)
|
|
|
map.put("CMAKER",createBy);//制单人
|
|
|
map.put("cVouchType",1);//传1
|
|
|
|
|
|
/* JSONObject map2=new JSONObject();//材料出库单
|
|
|
- map2.put("CVOUCHCODE",purchaseWarehousingMapper.getMaxCode("ID+1","rdrecord11","dnmaketime"));//单号
|
|
|
+ map2.put("CVOUCHCODE",org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cCode","rdrecord11","dnmaketime")));//单号
|
|
|
map2.put("DDATE",main.getCreateTime());//日期(格式2015-01-01)
|
|
|
map2.put("CHANDLER",createBy);//审核人
|
|
|
map2.put("CMAKER",createBy);//制单人
|
|
|
map2.put("cOrderCode",main.getOrderNumber());//销售订单号*/
|
|
|
|
|
|
JSONObject map3=new JSONObject();//销售发货单
|
|
|
- map3.put("CVOUCHCODE",purchaseWarehousingMapper.getMaxCode("DLID+1","DispatchList","dcreatesystime"));//发货单号
|
|
|
- map3.put("DDATE",main.getCreateTime());//发货日期(yyyy-MM-dd)
|
|
|
+ map3.put("CVOUCHCODE",org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cDLCode","DispatchList","dcreatesystime")));//发货单号
|
|
|
+ map3.put("DDATE",createDate);//发货日期(yyyy-MM-dd)
|
|
|
map3.put("BRETURNFLAG","0");//退货标识(1:退货,0:发货)
|
|
|
map3.put("CMAKER",createBy);//制单人名称
|
|
|
+ //map3.put("CVERIFIER",createBy);//审核人名称
|
|
|
|
|
|
JSONObject map4=new JSONObject();//销售出库单
|
|
|
- map4.put("CVOUCHCODE",purchaseWarehousingMapper.getMaxCode("ID+1","rdrecord32","dnmaketime"));//单据号
|
|
|
- map4.put("DDATE",main.getCreateTime());//订单日期(格式2015-01-01)
|
|
|
+ map4.put("CVOUCHCODE",org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("ccode","rdrecord32","dnmaketime")));//单据号
|
|
|
+ map4.put("DDATE",createDate);//订单日期(格式2015-01-01)
|
|
|
map4.put("CMAKER",createBy);//制单人
|
|
|
|
|
|
JSONObject map5=new JSONObject();//采购发票
|
|
|
- map5.put("CVOUCHCODE",purchaseWarehousingMapper.getMaxCode("PBVID+1","PurBillVouch","cmaketime"));//发票号
|
|
|
- map5.put("DDATE",main.getCreateTime());//发票日期(格式2015-01-01)
|
|
|
- map5.put("CTYPE","x");//发票类型(01:专用 02:普票)
|
|
|
+ map5.put("CVOUCHCODE",org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cpbvcode ","PurBillVouch","cmaketime")));//发票号
|
|
|
+ map5.put("DDATE",createDate);//发票日期(格式2015-01-01)
|
|
|
+ map5.put("CTYPE","普通");//发票类型(01:专用 02:普票)
|
|
|
map5.put("CMAKER",createBy);//制单人
|
|
|
|
|
|
JSONObject map6=new JSONObject();//销售发票
|
|
|
- map6.put("CVOUCHCODE",purchaseWarehousingMapper.getMaxCode("SBVID+1","SaleBillVouch","dcreatesystime"));//发票号
|
|
|
- map6.put("DDATE",main.getCreateTime());//发票日期(yyyy-MM-dd)
|
|
|
- map6.put("CTYPE","x");//发票类型(普通,专用)
|
|
|
+ map6.put("CVOUCHCODE",org.jeecg.modules.system.util.oConvertUtils.addOne(purchaseWarehousingMapper.getMaxCode("cSBVCode","SaleBillVouch","dcreatesystime")));//发票号
|
|
|
+ map6.put("DDATE",createDate);//发票日期(yyyy-MM-dd)
|
|
|
+ map6.put("CTYPE","普通");//发票类型(普通,专用)
|
|
|
map6.put("CMAKER",createBy);//制单人名称
|
|
|
|
|
|
JSONArray mapItems=new JSONArray();
|
|
@@ -755,16 +770,22 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
if(mapt.get("account").equals("903")){//查询委外订单主表数据 顺序---1
|
|
|
orderData=syPackingListTailoringMapper.getOmOrPo("om_momain","cCode='"+mapt.get("mpOrder")+"'","moid");
|
|
|
map.put("CRDCODE","委外入库");//入库类别(采购入库/委外入库)
|
|
|
- map.put("CGLTYPE","委外订单");//制单人
|
|
|
+ map.put("CGLTYPE","委外订单");//来源单据类型
|
|
|
+ map4.put("CGLTYPE","销售发货单");//来源单据类型
|
|
|
+ map5.put("CGLTYPE","委外订单");//来源单据类型
|
|
|
+ map6.put("CGLTYPE","销售出库单");//来源单据类型
|
|
|
//map2.put("CRDCODE","委外出库");//出库类别
|
|
|
- }else {//查询委外订单表数据
|
|
|
+ }else {//查询采购订单表数据
|
|
|
if(mapt.get("orderNumber").equals("one")){
|
|
|
- orderData=syPackingListTailoringMapper.getOmOrPo("PO_POMAIN","cPOID='"+mapt.get("mpOrder")+"'","POID");
|
|
|
+ orderData=syPackingListTailoringMapper.getOmOrPo("PO_POMAIN","cPOID='"+mapt.get("mpOrder")+"'","POID");//委外订单号判断
|
|
|
}else{
|
|
|
orderData=syPackingListTailoringMapper.getOmOrPo("PO_POMAIN","cPOID='"+mapt.get("orderNumber")+"'","POID");//根据采购订单号判断
|
|
|
}
|
|
|
map.put("CRDCODE","采购入库");//入库类别(采购入库/委外入库)
|
|
|
- map.put("CGLTYPE","采购订单");//制单人
|
|
|
+ map.put("CGLTYPE","采购订单");//来源单据类型
|
|
|
+ map4.put("CGLTYPE","销售发货单");//来源单据类型
|
|
|
+ map5.put("CGLTYPE","采购订单");//来源单据类型
|
|
|
+ map6.put("CGLTYPE","销售出库单");//来源单据类型
|
|
|
//map2.put("CRDCODE","采购出库");//出库类别
|
|
|
}
|
|
|
if(orderData!=null){
|
|
@@ -793,29 +814,33 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
|
|
|
Map<String,Object> orderDataItem=null;// inum
|
|
|
if(!mapt.get("account").equals("903")){ //采购订单子表数据 顺序---2
|
|
|
+ System.out.println("mapt.get(\"orderNumber\")\n"+mapt.get("orderNumber"));
|
|
|
if(mapt.get("orderNumber").equals("one")){
|
|
|
orderDataItem=syPackingListTailoringMapper.getOmOrPoItem("PO_PoDetails", "ID='"+item.getOmpoIdItem()+"'","ID");
|
|
|
}else{
|
|
|
- orderDataItem=syPackingListTailoringMapper.getOmOrPoItem("PO_PoDetails", "poid='"+orderData.get("id")+"' and irowno=xxx" +
|
|
|
- "xxxxxxxxxxxxxxxx" +
|
|
|
- "xxxxxxxx" +
|
|
|
- "xxxxxxxxxx" +
|
|
|
- "xxxxxxxx" +
|
|
|
- "xxxxxxx","ID");
|
|
|
+ if(orderData!=null&&orderData.containsKey("id")){
|
|
|
+ orderDataItem=syPackingListTailoringMapper.getOmOrPoItem("PO_PoDetails", "poid='"+orderData.get("id")+"' and irowno='"+
|
|
|
+ ((Map<String,String>)mapt.get("itemSort")).get(item.getId())+"'","ID");//根据行号获取信息
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(orderDataItem!=null){
|
|
|
+ Map<String,Object> orderDataItem2=purchaseWarehousingMapper.getPOPodetails(orderDataItem.get("id").toString());//获取自由项
|
|
|
+ getcFree(mapItem,orderDataItem2);
|
|
|
+ getcFree(mapItem5,orderDataItem2);
|
|
|
+ mapItem.put("POAUTOIDCOL","ID");//订单明细ID对应字段名(关联单据类型为采购订单传ID,为采购到货单为Autoid,为委外订单传MODetailsID,为委外到货单为Autoid)
|
|
|
+ mapItem.put("AUTOID_PO",orderDataItem.get("id"));//明细ID(采购订单行ID/委外订单行ID)
|
|
|
+ map5.put("CGLTYPE","采购订单");
|
|
|
+ mapItem5.put("POAUTOIDCOL","ID");//明细ID对应字段名(关联单据类型为采购订单传ID,委外订单传MODetailsID,入库单为Autoid)
|
|
|
+ mapItem5.put("AUTOID_PO",orderDataItem.get("id"));//明细ID(采购订单行ID/委外订单行ID)
|
|
|
+ mapItem5.put("IORIMONEY",orderDataItem.get("iMoney"));//原币金额
|
|
|
+ mapItem5.put("IMONEY",orderDataItem.get("iNatMoney"));//本币金额
|
|
|
}
|
|
|
- Map<String,Object> orderDataItem2=purchaseWarehousingMapper.getPOPodetails(orderDataItem.get("id").toString());//获取自由项
|
|
|
- getcFree(mapItem,orderDataItem2);
|
|
|
- mapItem.put("POAUTOIDCOL","ID");//订单明细ID对应字段名(关联单据类型为采购订单传ID,为采购到货单为Autoid,为委外订单传MODetailsID,为委外到货单为Autoid)
|
|
|
- mapItem.put("AUTOID_PO",orderDataItem.get("id"));//明细ID(采购订单行ID/委外订单行ID)
|
|
|
- map5.put("CGLTYPE","采购订单");
|
|
|
- mapItem5.put("POAUTOIDCOL","ID");//明细ID对应字段名(关联单据类型为采购订单传ID,委外订单传MODetailsID,入库单为Autoid)
|
|
|
- mapItem5.put("AUTOID_PO",orderDataItem.get("id"));//明细ID(采购订单行ID/委外订单行ID)
|
|
|
}else{//委外订单子表数据 顺序---2
|
|
|
//第二次怎么获取采购订单的子表id 查询销售订单子表保存行号去绑定上游的账套
|
|
|
orderDataItem=syPackingListTailoringMapper.getOmOrPoItem("OM_MODetails", "MODetailsID='"+item.getOmpoIdItem()+"'","MODetailsID");
|
|
|
Map<String,Object> orderDataItem2=purchaseWarehousingMapper.getOMMoDetails(item.getOmpoIdItem());//获取自由项
|
|
|
getcFree(mapItem,orderDataItem2);
|
|
|
- System.out.println("mapItem\t"+mapItem);
|
|
|
+ getcFree(mapItem5,orderDataItem2);
|
|
|
mapItem.put("POAUTOIDCOL","MODetailsID");//订单明细ID对应字段名(关联单据类型为采购订单传ID,为采购到货单为Autoid,为委外订单传MODetailsID,为委外到货单为Autoid)
|
|
|
mapItem.put("AUTOID_PO",orderDataItem.get("id"));//明细ID(采购订单行ID/委外订单行ID)
|
|
|
map5.put("CGLTYPE","委外订单");
|
|
@@ -823,10 +848,9 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
mapItem2.put("ALLCAUTOIDCOL","AllocateId");//订单明细ID对应字段名(固定AllocateId)*/
|
|
|
mapItem5.put("POAUTOIDCOL","MODetailsID");//明细ID对应字段名(关联单据类型为采购订单传ID,委外订单传MODetailsID,入库单为Autoid)
|
|
|
mapItem5.put("AUTOID_PO",orderDataItem.get("id"));//明细ID(采购订单行ID/委外订单行ID)
|
|
|
+ mapItem5.put("IORIMONEY",orderDataItem.get("iMoney"));//原币金额
|
|
|
+ mapItem5.put("IMONEY",orderDataItem.get("iNatMoney"));//本币金额
|
|
|
}
|
|
|
- mapItem5.put("IORIMONEY",orderDataItem.get("iMoney"));//原币金额
|
|
|
- mapItem5.put("IMONEY",orderDataItem.get("iNatMoney"));//本币金额
|
|
|
-
|
|
|
if(!mapt.get("CVENCODE").equals("one")){//查询供应商表获取编码 顺序---3
|
|
|
String wheCode=syPackingListTailoringMapper.getWhCodeByVenCode(mapt.get("CVENCODE").toString());
|
|
|
if(wheCode!=null){
|
|
@@ -837,24 +861,24 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
mapItem6.put("CWHCODE",wheCode);//仓库编码
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+ mapt.put("poid","one");//重置销售订单id
|
|
|
|
|
|
if(item.getSyOrderDataItemId()!=null){//销售发货单 ---查询销售订单子表数据 顺序---5
|
|
|
- Map<String,Object> orderDataItem2=syPackingListTailoringMapper.getSoMainItem(orderDataItem.get("iSOsID").toString());
|
|
|
- System.out.println("irowno\t"+orderDataItem2.get("irowno"));
|
|
|
- System.out.println("id\t"+item.getId());
|
|
|
- mapSort.put(item.getId(),orderDataItem2.get("irowno").toString());
|
|
|
- mapItem3.put("ITAXUNITPRICE",orderDataItem2.get("iTaxUnitPrice"));//原币含税单价(如果传空,取来源单据)(以含税单价为准自动计算相关价格及金额)
|
|
|
- mapItem3.put("ITAXRATE",orderDataItem2.get("iTaxRate"));//税率(如果传空,取来源单据,无来源单据,取存货档案对应的销项税率)
|
|
|
- mapItem3.put("SOAUTOIDCOL","ISOSID");//来源单据明细ID对应字段名(如果取销售订单主键,需传固定值ISOSID)
|
|
|
- mapItem3.put("AUTOID_SO",orderDataItem2.get("iSOsID"));//来源单据明细ID
|
|
|
- mapt.put("orderNumber", orderDataItem2.get("id"));
|
|
|
+ if(orderDataItem!=null&&orderDataItem.containsKey("iSOsID")){
|
|
|
+ Map<String,Object> orderDataItem2=syPackingListTailoringMapper.getSoMainItem(orderDataItem.get("iSOsID").toString());
|
|
|
+ mapSort.put(item.getId(),orderDataItem2.get("irowno").toString());
|
|
|
+ mapItem3.put("ITAXUNITPRICE",orderDataItem2.get("iTaxUnitPrice"));//原币含税单价(如果传空,取来源单据)(以含税单价为准自动计算相关价格及金额)
|
|
|
+ mapItem3.put("ITAXRATE",orderDataItem2.get("iTaxRate"));//税率(如果传空,取来源单据,无来源单据,取存货档案对应的销项税率)
|
|
|
+ mapItem3.put("SOAUTOIDCOL","ISOSID");//来源单据明细ID对应字段名(如果取销售订单主键,需传固定值ISOSID)
|
|
|
+ mapItem3.put("AUTOID_SO",orderDataItem2.get("iSOsID"));//来源单据明细ID
|
|
|
+ mapt.put("poid", orderDataItem2.get("id"));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- if(!mapt.get("orderNumber").equals("one")){//销售订单
|
|
|
- Map<String,Object> order=syPackingListTailoringMapper.getSoMain(mapt.get("orderNumber").toString());//
|
|
|
+ if(!mapt.get("poid").equals("one")){//销售订单
|
|
|
+ Map<String,Object> order=syPackingListTailoringMapper.getSoMain(mapt.get("poid").toString());//
|
|
|
mapt.put("orderNumber",order.get("cSOCode"));//销售订单号
|
|
|
- mapt.put("customerCode",order.get("cCusCode"));//销售订单号
|
|
|
+ mapt.put("customerCode",order.get("cCusCode"));//客户编码
|
|
|
if(order!=null){//销售订单主表
|
|
|
//cPersonCode,cDepCode,cBusType,cPayCode,cexch_name,nflat
|
|
|
/*map2.put("CDEPCODE",order.get("cDepCode"));//部门编码(如果传空,取来源单据)
|
|
@@ -871,7 +895,7 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
|
|
|
mapItem.put("CINVCODE",item.getInventoryCode());//存货编码
|
|
|
mapItem.put("IQUANTITY",item.getTotal());//数量
|
|
|
- mapItem.put("INUM",orderDataItem.get("inum"));//明细ID(采购订单行ID/委外订单行ID)
|
|
|
+ //mapItem.put("INUM",orderDataItem.get("inum"));//明细ID(采购订单行ID/委外订单行ID)
|
|
|
|
|
|
//mapItem.put("cBatch","x");//批号
|
|
|
|
|
@@ -884,13 +908,13 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
mapItem4.put("CINVCODE",item.getInventoryCode());//存货编码
|
|
|
mapItem4.put("IQUANTITY",item.getTotal());//数量
|
|
|
mapItem4.put("SOAUTOIDCOL","IDLSID");//订单明细ID对应字段名(关联单据类型为发货单IDLSID)
|
|
|
- mapItem4.put("AUTOID_PO","10300001");//关联明细ID 测试用先写
|
|
|
+ //mapItem4.put("AUTOID_SO","10300001");//关联明细ID 测试用先写
|
|
|
|
|
|
mapItem5.put("CINVCODE",item.getInventoryCode());//存货编码
|
|
|
mapItem5.put("IQUANTITY",item.getTotal());//数量
|
|
|
|
|
|
mapItem6.put("CINVCODE",item.getInventoryCode());//存货编码
|
|
|
- mapItem6.put("IQUNTITY",item.getTotal());//数量
|
|
|
+ mapItem6.put("IQUANTITY",item.getTotal());//数量
|
|
|
|
|
|
mapItems.add(mapItem);
|
|
|
//mapItems2.add(mapItem2);
|
|
@@ -922,56 +946,105 @@ public class SyPackingListTailoringServiceImpl extends ServiceImpl<SyPackingList
|
|
|
}
|
|
|
mapt.put("itemSort",mapSort);
|
|
|
}
|
|
|
+ try{
|
|
|
+ String txtWorld=((Map)mapList.get(0)).get("CACCID")+"\t"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS").format(System.currentTimeMillis())+"\n\n";
|
|
|
+ txtWorld+=mapList.toString()+"\n\n";
|
|
|
+ txtWorld+=mapList3.toString()+"\n\n";
|
|
|
+ txtWorld+=mapList4.toString()+"\n\n";
|
|
|
+ txtWorld+=mapList5.toString()+"\n\n";
|
|
|
+ txtWorld+=mapList6.toString()+"\n\n";
|
|
|
+ FileWriter file =new FileWriter ("D:\\test1\\test.txt",true);
|
|
|
+ file.write(txtWorld); //以字节数组类型写入内容
|
|
|
+ file.close();
|
|
|
+ System.out.println("已创建test.txt文件,已写入内容");
|
|
|
+ }catch (Exception e){
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
|
|
|
- mapLists.addAll(mapList);
|
|
|
- String txtWorld=mapt.get("account")+"\t"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS").format(System.currentTimeMillis())+"\n\n";
|
|
|
- txtWorld+=mapList.toString()+"\n\n";
|
|
|
- txtWorld+=mapList3.toString()+"\n\n";
|
|
|
- txtWorld+=mapList4.toString()+"\n\n";
|
|
|
- txtWorld+=mapList5.toString()+"\n\n";
|
|
|
- txtWorld+=mapList6.toString()+"\n\n";
|
|
|
+ /*mapLists.addAll(mapList);
|
|
|
//mapLists.addAll(mapList2);
|
|
|
mapLists.addAll(mapList3);
|
|
|
mapLists.addAll(mapList4);
|
|
|
mapLists.addAll(mapList5);
|
|
|
- mapLists.addAll(mapList6);
|
|
|
-
|
|
|
- System.out.println("mapList1\n"+mapList);
|
|
|
- // System.out.println("mapList2\n"+mapList2);
|
|
|
- System.out.println("mapList3\n"+mapList3);
|
|
|
- System.out.println("mapList4\n"+mapList4);
|
|
|
- System.out.println("mapList5\n"+mapList5);
|
|
|
- System.out.println("mapList6\n"+mapList6);
|
|
|
+ mapLists.addAll(mapList6);*/
|
|
|
|
|
|
- /*JSONArray resturn1 = InterfaceConnUtils.doPost(mapList,"purchasein_import");//采购入库单 主表添加了一个字段,子表可能要添加一个字段
|
|
|
+ JSONArray resturn1 = InterfaceConnUtils.doPost(mapList,"purchasein_import");//采购入库单 主表添加了一个字段,子表可能要添加一个字段
|
|
|
//JSONArray resturn2 = InterfaceConnUtils.doPost(mapList,"materialout_import");//材料出库单
|
|
|
JSONArray resturn3 = InterfaceConnUtils.doPost(mapList3,"consignment_import");//销售发货单
|
|
|
- JSONArray resturn4 = InterfaceConnUtils.doPost(mapList4,"saleout_import");//销售出库单
|
|
|
JSONArray resturn5 = InterfaceConnUtils.doPost(mapList5,"purinvoice_import");//采购发票单
|
|
|
- JSONArray resturn6 = InterfaceConnUtils.doPost(mapList6,"saleinvoice_import");//销售发票单
|
|
|
|
|
|
- System.out.println("调用接口后返回的信息resturn1\n"+resturn1);
|
|
|
- //System.out.println("调用接口后返回的信息resturn2\n"+resturn2);
|
|
|
- System.out.println("调用接口后返回的信息resturn3\n"+resturn3);
|
|
|
- System.out.println("调用接口后返回的信息resturn4\n"+resturn4);
|
|
|
- System.out.println("调用接口后返回的信息resturn5\n"+resturn5);
|
|
|
- System.out.println("调用接口后返回的信息resturn6\n"+resturn6);*/
|
|
|
+ result(resturn1,"采购入库单",((Map) mapList.get(0)).get("CACCID").toString(),mains.get(0).getId());//采购入库单
|
|
|
+ this.purchaseWarehousingMapper.updateVoucherHistoryCNumber(org.jeecg.modules.system.util.oConvertUtils.maxNumber(resturn1.getJSONObject(0).get("U8ReceiptNo").toString()),"107");
|
|
|
|
|
|
- try{
|
|
|
- FileWriter file =new FileWriter ("D:\\test1\\test.txt",true);
|
|
|
- //FileOutputStream fo = new FileOutputStream(file);
|
|
|
- //向文件中写入内容
|
|
|
- // byte [] bytecontent = txtWorld.getBytes(); //将字符串转换文字节数组类型
|
|
|
- file.write(txtWorld); //以字节数组类型写入内容
|
|
|
- //关闭文件输出流
|
|
|
- file.close();
|
|
|
- System.out.println("已创建test.txt文件,已写入内容");
|
|
|
- }catch (Exception e){
|
|
|
- e.printStackTrace();
|
|
|
+ result(resturn3,"销售发货单",((Map) mapList.get(0)).get("CACCID").toString(),mains.get(0).getId());//销售发货单
|
|
|
+ String u8ReceiptNo103= resturn3.getJSONObject(0).get("U8ReceiptNo").toString();
|
|
|
+ this.purchaseWarehousingMapper.updateVoucherHistoryCNumber(org.jeecg.modules.system.util.oConvertUtils.maxNumber(u8ReceiptNo103.substring(u8ReceiptNo103.length()-4 ) ),"108");
|
|
|
+
|
|
|
+
|
|
|
+ result(resturn5,"采购发票单",((Map) mapList.get(0)).get("CACCID").toString(),mains.get(0).getId());//采购发票单
|
|
|
+ this.purchaseWarehousingMapper.updateVoucherHistoryCNumber(org.jeecg.modules.system.util.oConvertUtils.maxNumber(resturn5.getJSONObject(0).get("U8ReceiptNo").toString()),"109");
|
|
|
+
|
|
|
+
|
|
|
+ JSONObject jsonObject3=resturn3.getJSONObject(0);//销售发货单*/
|
|
|
+ String consignmentName=jsonObject3.get("U8ReceiptNo").toString();//获取销售发货单
|
|
|
+ //String consignmentName= "20220401T00245841";// jsonObject3.get("U8ReceiptNo").toString();//获取销售发货单
|
|
|
+ List<Map<String,Object>> consignmentMaps= syPackingListTailoringMapper.getDispatchLists(consignmentName);
|
|
|
+ if(consignmentMaps!=null){
|
|
|
+ for (Map map : consignmentMaps){
|
|
|
+ JSONObject jsonObject=mapList4.getJSONObject(0);//循环迭代
|
|
|
+ List<Map<String,Object>> mapItems4= (List<Map<String,Object>>) jsonObject.get("DETAILList");
|
|
|
+ for (Map itemMap4 : mapItems4){
|
|
|
+ if(itemMap4.get("CINVCODE").equals(map.get("cinvcode"))&&itemMap4.get("IQUANTITY").equals(map.get("iQuantity"))&&!itemMap4.containsKey("AUTOID_SO")){
|
|
|
+ getcFree((JSONObject) itemMap4,map);
|
|
|
+ itemMap4.put("AUTOID_SO",map.get("iDLsID"));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ JSONArray resturn4 = InterfaceConnUtils.doPost(mapList4,"saleout_import");//销售出库单
|
|
|
+ result(resturn4,"销售出库单",((Map) mapList.get(0)).get("CACCID").toString(),mains.get(0).getId());//销售出库单
|
|
|
+
|
|
|
+
|
|
|
+ JSONObject jsonObject4=resturn4.getJSONObject(0);//销售出库单
|
|
|
+ String saleoutName=jsonObject4.get("U8ReceiptNo").toString();//销售出库单
|
|
|
+
|
|
|
+ this.purchaseWarehousingMapper.updateVoucherHistoryCNumber(org.jeecg.modules.system.util.oConvertUtils.maxNumber(saleoutName),"131");
|
|
|
+
|
|
|
+ //String saleoutName= "0000005974";// jsonObject4.get("U8ReceiptNo").toString();//获取销售发货单
|
|
|
+ List<Map<String,Object>> saleoutMaps= syPackingListTailoringMapper.getSaleBillVouchs(saleoutName);
|
|
|
+ //System.out.println("saleoutMaps\t"+saleoutMaps);
|
|
|
+ if(saleoutMaps!=null){
|
|
|
+ for (Map map : saleoutMaps){
|
|
|
+ JSONObject jsonObject=mapList6.getJSONObject(0);//循环迭代
|
|
|
+ List<Map<String,Object>> mapItems6= (List<Map<String,Object>>) jsonObject.get("DETAILList");
|
|
|
+ for (Map itemMap6 : mapItems6){
|
|
|
+ itemMap6.put("DISAUTOIDCOL","AUTOID");
|
|
|
+ if(itemMap6.get("CINVCODE").equals(map.get("cinvcode"))&&itemMap6.get("IQUANTITY").equals(map.get("iQuantity"))&&!itemMap6.containsKey("AUTOID_DIS")){
|
|
|
+ itemMap6.put("AUTOID_DIS",map.get("autoid"));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
+ JSONArray resturn6 = InterfaceConnUtils.doPost(mapList6,"saleinvoice_import");//销售发票单
|
|
|
+ result(resturn6,"销售发票单",((Map) mapList.get(0)).get("CACCID").toString(),mains.get(0).getId());//销售发票单
|
|
|
+ this.purchaseWarehousingMapper.updateVoucherHistoryCNumber(org.jeecg.modules.system.util.oConvertUtils.maxNumber(resturn6.getJSONObject(0).get("U8ReceiptNo").toString()),"120");
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
return mapt;
|
|
|
}
|
|
|
|
|
|
+ public void result(JSONArray jsonArray,String tableName ,String account,String id){
|
|
|
+ JSONObject jsonObject=jsonArray.getJSONObject(0);
|
|
|
+ if(jsonObject.get("Result").equals("F")){//获取发货单是否成功添加
|
|
|
+ /* SyPackingListTailoring syPackingListTailoring=syPackingListTailoringMapper.selectById(id);
|
|
|
+ syPackingListTailoring.setRecording(account+"-"+tableName);
|
|
|
+ syPackingListTailoringMapper.updateById(syPackingListTailoring);*/
|
|
|
+ throw new JeecgBootException("报错接口"+tableName+",原因\t"+ jsonObject.get("Description"));
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
public void getcFree(JSONObject itemMap,Map<String,Object> mapPOPodetails){
|
|
|
itemMap.put("CDEFINE22",setNull(mapPOPodetails.get("cDefine22")));
|