parent
							
								
									92868c1ce8
								
							
						
					
					
						commit
						a63368198b
					
				|  | @ -34,7 +34,10 @@ public class WMSAdjustBillController { | |||
| 
 | ||||
|     @ApiPostMapping(value = "/WMSAdjustBill", desc = "WMS库存异动api") | ||||
|     public CustomApiResult<ApiResultExt> wmsAdjustBill | ||||
|             (@NotNull @ApiParam(value = "入参", example = "") String data) { | ||||
|             (@NotNull @ApiParam(value = "调整单号", required = true) String cPACode, | ||||
|              @NotNull @ApiParam(value = "归属", required = true) String BelongTo, | ||||
|              @NotNull @ApiParam(value = "仓库编码", required = true) String cWhCode, | ||||
|              @NotNull @ApiParam(value = "明细", required = true) String Details) { | ||||
|         ApiResultExt resultExt = new ApiResultExt(); | ||||
|         List<ApiResultExt.ResultBean> results = new ArrayList<>(); | ||||
|         ApiResultExt.ResultBean resultBean = new ApiResultExt.ResultBean(); | ||||
|  | @ -43,11 +46,6 @@ public class WMSAdjustBillController { | |||
|         JSONObject keys = new JSONObject(); | ||||
|         boolean billStatus = true; | ||||
| 
 | ||||
|         JSONObject obj = JSON.parseObject(data); | ||||
|         String cPACode =  obj.getString("cPACode");//调整单号 | ||||
|         String cWhCode =  obj.getString("cWhCode");//仓库编码 | ||||
|         String BelongTo =  obj.getString("BelongTo");//归属组织 | ||||
| 
 | ||||
|         if(StringUtils.isBlank(cPACode)){ | ||||
|             rowMsg.add("入参调整单号字段cPACode为空"); | ||||
|             billStatus = false; | ||||
|  | @ -61,12 +59,13 @@ public class WMSAdjustBillController { | |||
|             billStatus = false; | ||||
|         }else{ | ||||
|             QFilter f = new QFilter("number", "=", cWhCode); | ||||
|             DynamicObject[] whArr = BusinessDataServiceHelper.load("bos_warehouse", "id,name,number", new QFilter[]{f}); | ||||
|             DynamicObject[] whArr = BusinessDataServiceHelper.load("bd_warehouse", "id,name,number", new QFilter[]{f}); | ||||
|             if(whArr == null || whArr.length == 0){ | ||||
|                 rowMsg.add("根据仓库编码字段cWhCode【"+cWhCode+"】在金蝶系统中没有查询到对应的仓库信息"); | ||||
|                 billStatus = false; | ||||
|             }else { | ||||
|                 warehouse = whArr[0]; | ||||
|                 warehouse = BusinessDataServiceHelper.loadSingle(warehouse.getPkValue(), "bd_warehouse"); | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|  | @ -86,10 +85,10 @@ public class WMSAdjustBillController { | |||
|             } | ||||
|         } | ||||
| 
 | ||||
|         JSONArray Details = obj.getJSONArray("Details"); | ||||
|         if(Details != null && Details.size() > 0){ | ||||
|             for (int i = 0; i < Details.size(); i++) { | ||||
|                 JSONObject detail = Details.getJSONObject(i); | ||||
|         JSONArray DetailsArr = JSON.parseArray(Details); | ||||
|         if(DetailsArr != null && DetailsArr.size() > 0){ | ||||
|             for (int i = 0; i < DetailsArr.size(); i++) { | ||||
|                 JSONObject detail = DetailsArr.getJSONObject(i); | ||||
|                 String cInvCode = detail.getString("cInvCode");//产品编码 | ||||
|                 String cOBatch = detail.getString("cOBatch");//挑战前批次 | ||||
|                 String cIBatch = detail.getString("cIBatch");//调整后批次 | ||||
|  | @ -142,7 +141,7 @@ public class WMSAdjustBillController { | |||
|         resultBean.setBillIndex(0); | ||||
|         resultBean.setKeys(keys); | ||||
|         resultBean.setNumber(cPACode); | ||||
|         if(billStatus){ | ||||
|         if(!billStatus){ | ||||
|             //出现错误后返回 | ||||
|             error.setKeys(keys); | ||||
|             error.setRowMsg(rowMsg); | ||||
|  | @ -172,7 +171,14 @@ public class WMSAdjustBillController { | |||
|             DynamicObject invstatus = invstatusArr[0]; | ||||
| 
 | ||||
|             //必填校验通过,构建并保存数据 | ||||
|             DynamicObject adjustbill = BusinessDataServiceHelper.newDynamicObject("im_adjustbill"); | ||||
|             DynamicObject adjustbill = null; | ||||
|             DynamicObject[] billArr = BusinessDataServiceHelper.load("im_adjustbill", "id", new QFilter[]{new QFilter("billno", "=", "cPACode")}); | ||||
|             if(billArr != null && billArr.length > 0){ | ||||
|                 adjustbill = BusinessDataServiceHelper.loadSingle(billArr[0].getPkValue(), "im_adjustbill"); | ||||
|             }else { | ||||
|                 adjustbill = BusinessDataServiceHelper.newDynamicObject("im_adjustbill"); | ||||
|                 adjustbill.set("billno", cPACode); | ||||
|             } | ||||
|             adjustbill.set("billno", cPACode); | ||||
|             adjustbill.set("biztime", new Date()); | ||||
|             adjustbill.set("org", org); | ||||
|  | @ -181,8 +187,8 @@ public class WMSAdjustBillController { | |||
|             adjustbill.set("billstatus", "A"); | ||||
|             adjustbill.set("billcretype", "1"); | ||||
|             DynamicObjectCollection beforeEntries = adjustbill.getDynamicObjectCollection("billentry");//调整前明细 | ||||
|             for (int i = 0; i < Details.size(); i++) { | ||||
|                 JSONObject detail = Details.getJSONObject(i); | ||||
|             for (int i = 0; i < DetailsArr.size(); i++) { | ||||
|                 JSONObject detail = DetailsArr.getJSONObject(i); | ||||
|                 String cInvCode = detail.getString("cInvCode");//产品编码 | ||||
|                 String cOBatch = detail.getString("cOBatch");//挑战前批次 | ||||
|                 Date dOMDate = detail.getDate("dOMDate");//挑战前生产日期 | ||||
|  | @ -198,8 +204,9 @@ public class WMSAdjustBillController { | |||
|                 DynamicObject material = materialArr[0]; | ||||
|                 //物料库存信息 | ||||
|                 f = new QFilter("masterid.id", "=", material.getPkValue()); | ||||
|                 DynamicObject[] materialinvArr = BusinessDataServiceHelper.load("bd_materialinventoryinfo", "id,number,name,baseunit", new QFilter[]{f}); | ||||
|                 DynamicObject[] materialinvArr = BusinessDataServiceHelper.load("bd_materialinventoryinfo", "id,number,name", new QFilter[]{f}); | ||||
|                 DynamicObject materialinv = materialinvArr[0]; | ||||
|                 materialinv = BusinessDataServiceHelper.loadSingle(materialinv.getPkValue(), "bd_materialinventoryinfo"); | ||||
|                 //调整前商品 | ||||
|                 DynamicObject oGoods = null; | ||||
|                 DynamicObject[] oGoodsArr = BaseDataMatchUtils.materialMatchGoods("cInvCode", cOBatch, true); | ||||
|  | @ -246,7 +253,7 @@ public class WMSAdjustBillController { | |||
|                 DynamicObject afterEntry = afterEntries.addNew(); | ||||
|                 afterEntry.set("materialmasterid1", material); | ||||
|                 afterEntry.set("material1", materialinv); | ||||
|                 beforeEntry.set("tqq9_goods1", iGoods); | ||||
|                 afterEntry.set("tqq9_goods1", iGoods); | ||||
|                 afterEntry.set("unit1", material.getDynamicObject("baseunit")); | ||||
|                 afterEntry.set("qty1", iPAQuantity); | ||||
|                 afterEntry.set("baseunit1", material.getDynamicObject("baseunit")); | ||||
|  |  | |||
|  | @ -39,7 +39,7 @@ public class BaseDataMatchUtils { | |||
|     public static DynamicObject[] materialMatchGoods(String materialNumber, String lotNumber, boolean isauto){ | ||||
|         QFilter f1 = new QFilter("tqq9_mater.number", "=", materialNumber); | ||||
|         QFilter f2 = new QFilter("tqq9_entry.tqq9_lot.number", "=", lotNumber); | ||||
|         QFilter f3 = new QFilter("isauto", "=", isauto); | ||||
|         QFilter f3 = new QFilter("tqq9_isauto", "=", isauto); | ||||
|         DynamicObject[] goodsA = BusinessDataServiceHelper.load("tqq9_goodspackage", | ||||
|                 "id,number,name,tqq9_mater.baseunit,tqq9_mater.modelnum,tqq9_isauto", | ||||
|                 new QFilter[]{f1, f2, f3}); | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue