| | |
| | | var po = WMSHelper.GetInboundOrder(itemwlpz.HEAD.WLPZH); |
| | | if (po == null) |
| | | { |
| | | |
| | | |
| | | #region MyRegion |
| | | po = new TN_Inbound_Order { S_NO = itemwlpz.HEAD.WLPZH, S_WLPZND = itemwlpz.HEAD.ND, S_FACTORY = itemwlpz.ITEM[0].GC, S_IN_TYPE = "内采入库", S_BS_TYPE = itemwlpz.HEAD.YDLX }; |
| | | po.Details = new List<TN_Inbound_Detail>(); |
| | |
| | | { |
| | | itemwlpz.ITEM.ForEach(a => |
| | | { |
| | | //if (a.ITEM1.Select(s => s.XLH).Count() > 0)//判断序列号是否为多个 |
| | | //{ |
| | | // foreach (var item in a.ITEM1.Select(s => s.XLH)) |
| | | // { |
| | | // po.Details.Add(new TN_Inbound_Detail |
| | | // { |
| | | // S_IO_NO = model.ROOT.WLPZ.HEAD.WLPZBH, |
| | | // N_ROW_NO = po.Details.Count + 1, |
| | | // S_ITEM_CODE = a.WLH, |
| | | // F_QTY = a.SL, |
| | | // S_ITEM_STATE = "物料", |
| | | // S_ITEM_NAME = "物料", |
| | | // F_ACC_B_QTY = 0, |
| | | // S_KCDD = a.KCDD, |
| | | // S_UOM = a.JBJLDW,//计量单位 |
| | | // S_SERIAL_NO = item, |
| | | // S_BATCH_NO = a.PC, |
| | | // }); |
| | | // } |
| | | //} |
| | | //else |
| | | //{ |
| | | |
| | | po.Details.Add(new TN_Inbound_Detail |
| | | { |
| | | S_IO_NO = itemwlpz.HEAD.WLPZH, |
| | |
| | | { |
| | | var poq = po.Details.Where(s => s.S_ITEM_CODE == a.WLBM).FirstOrDefault(); |
| | | poq.F_QTY = a.SL; |
| | | |
| | | db.Updateable(poq).UpdateColumns(it => new { it.F_QTY }).ExecuteCommand(); |
| | | } |
| | | else |
| | |
| | | N_ROW_NO = a.WLPZHXM, |
| | | S_ITEM_CODE = a.WLBM, |
| | | F_QTY = a.SL, |
| | | S_ITEM_STATE = "物料", |
| | | S_ITEM_STATE = "正常", |
| | | S_ITEM_NAME = "物料", |
| | | S_CKPZKJND = a.CKPZND, |
| | | F_ACC_B_QTY = 0, |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | result.resultMsg = "成功"; |
| | | result.WLPZBH = itemwlpz.HEAD.WLPZH; |
| | | result.WLPZND = itemwlpz.HEAD.ND; |
| | |
| | | catch (Exception e) |
| | | { |
| | | var result = new SimpleResult(); |
| | | |
| | | result.resultMsg = "失败"; |
| | | result.WLPZBH = ""; |
| | | result.WLPZND = "0"; |
| | |
| | | return result; |
| | | |
| | | } |
| | | |
| | | //根据不同出库类型 回调sap |
| | | if (po.S_OUT_TYPE == "冲销出库") |
| | | { |
| | |
| | | if (cntr.Count() > 0) |
| | | { |
| | | db.BeginTran(); |
| | | //1.查看是否有相同物料批次的信息,如果有要累减少,不同批次的可以分开 |
| | | var cir = db.Queryable<CntrItemRel>().Where(a => a.S_CNTR_CODE == cntr_code && a.S_ITEM_CODE == item.item_code && a.N_BS_ROW_NO == item.N_ROW_NO).First();//&& a.S_BATCH_NO == item.S_BATCH_NO |
| | | //1.查看是否有相同物料批次的信息,如果有要累减少,不同批次的可以分开&& a.N_BS_ROW_NO == item.N_ROW_NO |
| | | var cir = db.Queryable<CntrItemRel>().Where(a => a.S_CNTR_CODE == cntr_code && a.S_ITEM_CODE == item.item_code ).First();//&& a.S_BATCH_NO == item.S_BATCH_NO |
| | | if (cir != null) |
| | | { |
| | | cir.F_QTY -= item.qty; |
| | |
| | | var podetail = po.Details.Where(s => s.S_ITEM_CODE == item.item_code).FirstOrDefault(); |
| | | CBcenterBackDto.HEADItem ckbitem = new CBcenterBackDto.HEADItem(); |
| | | ckbitem.KEY = arrival_no; |
| | | ckbitem.WLBH = item.item_code; |
| | | |
| | | ckbitem.CBZX = po.S_CBZX; |
| | | ckbitem.WLBH = item.item_code; |
| | | ckbitem.SL = item.qty; |
| | | |
| | | ckbitem.KCDD = podetail?.S_KCDD; |
| | | ckbitem.LRZX = po.S_LRZX; |
| | | ckbitem.ZZKM = po.S_ZZKM; |
| | | ckbitem.GC = po.S_FACTORY; |
| | | ckbitem.GZRY = po.S_CREATOR_NAME; |
| | | ckbitem.GZRY = po.UNAME; |
| | | |
| | | ckbitem.PC = podetail?.S_BATCH_NO; |
| | | ckbitem.PZRQ = PZZDRQ; |
| | |
| | | //json转xml |
| | | string xml = JsonConvert.DeserializeXmlNode(json, "ROOT").OuterXml; |
| | | |
| | | LogHelper.Info($"出计划外发料出库xml数据{xml}"); |
| | | LogHelper.Info($"计划外发料出库xml数据{xml}"); |
| | | // 创建 StringContent 并指定媒体类型为 "text/xml" |
| | | //HttpContent content = new StringContent(xml, Encoding.UTF8, "application/xml"); |
| | | //string url = Settings.WCSSeverUrl + "/api/WmsSap/cesReceiveXmlData"; |
| | |
| | | else |
| | | { |
| | | //2.插入新的容器物料信息(容器号不变S_SERIAL_NO = item.S_SERIAL_NO,) |
| | | cir = new CntrItemRel { S_CNTR_CODE = cntr.S_CODE.Trim(), S_BATCH_NO = item.S_BATCH_NO, N_BS_ROW_NO = item.N_ROW_NO, F_QTY = item.qty, S_ITEM_CODE = item.item_code, S_BS_NO = item.arrival_no }; |
| | | cir = new CntrItemRel { S_CNTR_CODE = cntr.S_CODE.Trim(), S_UOM=info.S_UOM, S_BATCH_NO = item.S_BATCH_NO, N_BS_ROW_NO = item.N_ROW_NO, F_QTY = item.qty, S_ITEM_CODE = item.item_code, S_BS_NO = item.arrival_no }; |
| | | db.Insertable<CntrItemRel>(cir).ExecuteCommand(); |
| | | } |
| | | var count = db.Queryable<CntrItemRel>().Count(a => a.S_CNTR_CODE == cntr.S_CODE); |
| | |
| | | else |
| | | { |
| | | //var az = db.Queryable<AZInventory>().ToList(); |
| | | var po1 = new TN_Outbound_Order { S_NO = WMSHelper.GenerateShippNo(), S_FACTORY = po.S_FACTORY, S_OUT_TYPE = po.S_OUT_TYPE, S_BS_TYPE = po.S_BS_TYPE, S_AREA_CODE = po.S_AREA_CODE, S_BS_NO = po.S_NO }; |
| | | var po1 = new TN_Outbound_Order { S_NO = WMSHelper.GenerateShippNo(),UNAME=po.UNAME, S_FACTORY = po.S_FACTORY,S_CBZX=po.S_CBZX,S_ZZKM=po.S_ZZKM,S_LRZX=po.S_LRZX, BLDAT = po.BLDAT, BUDAT=po.BUDAT, S_OUT_TYPE = po.S_OUT_TYPE, S_BS_TYPE = po.S_BS_TYPE, S_AREA_CODE = po.S_AREA_CODE, S_BS_NO = po.S_NO }; |
| | | |
| | | po1.Details = new List<TN_Outbound_Detail>(); |
| | | if (po.Details.Count() > 0) |
| | |
| | | S_DO_NO = po1.S_NO, |
| | | S_AREA_CODE = "HJQ", |
| | | N_ROW_NO = a.N_ROW_NO, |
| | | S_KCDD = a.S_KCDD, |
| | | S_ITEM_CODE = a.S_ITEM_CODE, |
| | | S_ITEM_NAME = a.S_ITEM_NAME, |
| | | S_UOM = a.S_UOM, |
| | | F_QTY = a.F_QTY - a.F_ACC_D_QTY, |
| | | S_BATCH_NO = a.S_BATCH_NO, |
| | | S_SERIAL_NO = a.S_SERIAL_NO, |