| | |
| | | try |
| | | { |
| | | SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); |
| | | oCn.RunProc("exec H_p_SRM_BarCodeBill_PrintQty '" + msg1 + "'"); |
| | | string sql = $"Update Gy_BarCodeBill set HPrintQty=isnull(HPrintQty,0) + 1 where HItemID in ({msg1})"; |
| | | oCn.RunProc(sql); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "更新打印次数成功!"; |
| | |
| | | List<Model.ClsGy_BarCodeBill_WMS_Model> ls3 = new List<Model.ClsGy_BarCodeBill_WMS_Model>(); |
| | | ls = oListModels.getObjectByJson_MaterialList(msg3); |
| | | |
| | | foreach (Model.ClsGy_MaterialList_WMS_Model oItemSub in ls) |
| | | { |
| | | if (oBill.CheckBarCode(oItemSub.HSourceInterID, oItemSub.HSourceEntryID) == false) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "已存在条码,不允许重复生成!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | if (msg2 != string.Empty) |
| | | { |
| | | if (oItemSub.HBQty == 0 || oItemSub.HMinQty == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "内箱包装数不能为0!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | if (oItemSub.HWBQty == 0 || oItemSub.HWXQty == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "外箱包装数不能为0!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | } |
| | | //foreach (Model.ClsGy_MaterialList_WMS_Model oItemSub in ls) |
| | | //{ |
| | | // if (oBill.CheckBarCode(oItemSub.HSourceInterID, oItemSub.HSourceEntryID) == false) |
| | | // { |
| | | // objJsonResult.code = "0"; |
| | | // objJsonResult.count = 0; |
| | | // objJsonResult.Message = "已存在条码,不允许重复生成!"; |
| | | // objJsonResult.data = null; |
| | | // return objJsonResult; |
| | | // } |
| | | // if (msg2 != string.Empty) |
| | | // { |
| | | // if (oItemSub.HBQty == 0 || oItemSub.HMinQty == 0) |
| | | // { |
| | | // objJsonResult.code = "0"; |
| | | // objJsonResult.count = 0; |
| | | // objJsonResult.Message = "内箱包装数不能为0!"; |
| | | // objJsonResult.data = null; |
| | | // return objJsonResult; |
| | | // } |
| | | // if (oItemSub.HWBQty == 0 || oItemSub.HWXQty == 0) |
| | | // { |
| | | // objJsonResult.code = "0"; |
| | | // objJsonResult.count = 0; |
| | | // objJsonResult.Message = "外箱包装数不能为0!"; |
| | | // objJsonResult.data = null; |
| | | // return objJsonResult; |
| | | // } |
| | | // } |
| | | //} |
| | | long linterid = Pub_Class.ClsPub.CreateBillID_SRMProd("8888", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | int LSHlen = 6; //流水号长度 |
| | | int SumLen = 10; //总长度 |
| | |
| | | LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]); |
| | | foreach (Model.ClsGy_MaterialList_WMS_Model oItemSub in ls) |
| | | { |
| | | //数量为0 跳过 |
| | | if (oItemSub.HQty == 0) |
| | | continue; |
| | | if (ClsPub.isLong(oItemSub.HMaterID) != 0) |
| | | { |
| | | HNumber = oItemSub.HMaterID.ToString(); |
| | |
| | | HSumQty = ClsPub.isDoule(oItemSub.HQty); //产品数量 |
| | | for (int i = 0; i < HBQty; i++) |
| | | { |
| | | // 安瑞条码规则:物料编码(系统代入)@物料名称(系统代入)@规格型号(系统代入)@生产日期(手工输入)@数量(手工输入)@失效日期(手工输入)@批次号(手工代入)@供应商名称(系统代入)@采购订单号(系统代入) |
| | | TM = $"{oItemSub.HMaterNumber}@{oItemSub.HMaterName}@{oItemSub.HMaterModel}@{oItemSub.HKFDate}@{oItemSub.HQty}@{oItemSub.HKFDQDate}@{oItemSub.HBatchNo}@{oItemSub.HSupName}@{oItemSub.HSourceBillNo}"; |
| | | //// 安瑞条码规则:物料编码(系统代入)@物料名称(系统代入)@规格型号(系统代入)@生产日期(手工输入)@数量(手工输入)@失效日期(手工输入)@批次号(手工代入)@供应商名称(系统代入)@采购订单号(系统代入) |
| | | //TM = $"{oItemSub.HMaterNumber}@{oItemSub.HMaterName}@{oItemSub.HMaterModel}@{oItemSub.HKFDate}@{oItemSub.HQty}@{oItemSub.HKFDQDate}@{oItemSub.HBatchNo}@{oItemSub.HSupName}@{oItemSub.HSourceBillNo}"; |
| | | |
| | | if (HSumQty - HMinQty > 0) |
| | | { |
| | |
| | | HMinQty = HSumQty; |
| | | } |
| | | |
| | | // 安瑞条码规则:物料编码(系统代入)@物料名称(系统代入)@规格型号(系统代入)@生产日期(手工输入)@数量(手工输入)@失效日期(手工输入)@批次号(手工代入)@供应商名称(系统代入)@采购订单号(系统代入) |
| | | TM = $"{oItemSub.HMaterNumber}@{oItemSub.HMaterName}@{oItemSub.HMaterModel}@{oItemSub.HKFDate}@{HMinQty}@{oItemSub.HKFDQDate}@{oItemSub.HBatchNo}@{oItemSub.HSupName}@{oItemSub.HSourceBillNo}"; |
| | | Model.ClsGy_BarCodeBill_WMS_Model bar = new Model.ClsGy_BarCodeBill_WMS_Model(); |
| | | |
| | | bar.HBarCode = TM; |
| | | bar.HMaterID = oItemSub.HMaterID; |
| | | //bar.HMaterNumber = oItemSub.HMaterNumber; |
| | |
| | | int SumLen2 = 4; |
| | | string TM2 = ""; |
| | | double HWXQty = 0; |
| | | double HBarcodeQty = ClsPub.isDoule(oItemSub2.HQty); |
| | | |
| | | LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]) + 1; |
| | | // |
| | |
| | | TM2 = "0" + TM2; |
| | | } |
| | | bar2.HMaterID = oItemSub2.HMaterID; |
| | | |
| | | |
| | | bar2.HBarCode = oItemSub2.HBarCode + "-" + TM2; |
| | | |
| | | bar2.HBarCode = oItemSub2.HBarCode.Replace(HBarcodeQty.ToString(), HWXQty.ToString()); |
| | | bar2.HUnitID = oItemSub2.HUnitID; |
| | | bar2.HQty = HWXQty; |
| | | bar2.HBatchNo = DBUtility.ClsPub.isStrNull(oItemSub2.HBatchNo); |
| | |
| | | string HWei = ""; |
| | | string HMTONO = ""; |
| | | oCn.BeginTran(); |
| | | int count = 1; |
| | | foreach (Model.ClsGy_BarCodeBill_WMS_Model oItemSub in ls2) |
| | | //更新采购订单条码数量 |
| | | foreach (Model.ClsGy_MaterialList_WMS_Model oItemSub in ls) |
| | | { |
| | | if (ClsPub.isLong(oItemSub.HMaterID) != 0) |
| | | //数量为0 跳过 |
| | | if (oItemSub.HQty == 0) |
| | | continue; |
| | | //更新 已打印数量 |
| | | if (oItemSub.HSourceBillType == "1102") |
| | | oCn.RunProc($"update Cg_POOrderBillSub set HBarcodeCount= isnull(HBarcodeCount,0) + {oItemSub.HQty } where HInterID={oItemSub.HSourceInterID} and HEntryID = {oItemSub.HSourceEntryID}"); |
| | | if (oItemSub.HSourceBillType == "1601") |
| | | oCn.RunProc($"update WW_EntrustOrderBillSub set HBarcodeCount= isnull(HBarcodeCount,0) + {oItemSub.HQty } where HInterID={oItemSub.HSourceInterID} and HEntryID = {oItemSub.HSourceEntryID}"); |
| | | //更新条码档案 该源单其它条码默认已经打印过一次 |
| | | oCn.RunProc($"update Gy_BarCodeBill set HPrintQty += 1 where HPrintQty = 0 and HSourceInterID={oItemSub.HSourceInterID} and HSourceEntryID = {oItemSub.HSourceEntryID}"); |
| | | } |
| | | //外箱 |
| | | var oItemSubGroup = ls2.GroupBy(x => new { x.HSourceEntryID }).Select(y => new Model.ClsGy_BarCodeBill_WMS_Model { HSourceEntryID = y.Key.HSourceEntryID }); |
| | | foreach (var oitem in oItemSubGroup) |
| | | { |
| | | var SubModel = ls2.Where(x => x.HSourceEntryID == oitem.HSourceEntryID).ToList(); |
| | | int count = 1; |
| | | foreach (var oItemSub in SubModel) |
| | | { |
| | | HBarCode = oItemSub.HBarCode.ToString(); |
| | | HMTONO = ClsPub.isStrNull(oItemSub.HMTONO); |
| | | HBarCodeType = "箱号条码"; |
| | | HMaterID = ClsPub.isLong(oItemSub.HMaterID); |
| | | HUnitID = ClsPub.isLong(oItemSub.HUnitID); |
| | | HQty2 = ClsPub.isDoule(oItemSub.HQty); |
| | | HBatchNo = ClsPub.isStrNull(oItemSub.HBatchNo); |
| | | HSupID = oItemSub.HSupID; |
| | | HKFPeriod = ClsPub.isInt(oItemSub.HKFPeriod); |
| | | HKFDate = ClsPub.isStrNull(oItemSub.HKFDate); |
| | | HKFDQDate = ClsPub.isStrNull(oItemSub.HKFDQDate); |
| | | HSourceInterID = ClsPub.isLong(oItemSub.HSourceInterID); |
| | | HSourceEntryID = ClsPub.isLong(oItemSub.HSourceEntryID); |
| | | HSourceBillNo = ClsPub.isStrNull(oItemSub.HSourceBillNo); |
| | | HSourceBillType = ClsPub.isStrNull(oItemSub.HSourceBillType); |
| | | HWei = ClsPub.isStrNull(oItemSub.HEndQty); |
| | | |
| | | string sql = "insert into Gy_BarCodeBill (HInterID,HBarCode,HBarCodeType,HMaterID,HUnitID,HQty,HKFDate,HKFPeriod,HKFDQDate" + |
| | | ",HBatchNo,HBarcodeQtys,HBarcodeNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HEndQty,HSupflag" + |
| | | ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HMTONO " + |
| | | ") values (" |
| | | + linterid.ToString() + ",'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID + "," + HUnitID + "," + HQty2 + ",'" + HKFDate + "'," + HKFPeriod + ",'" + HKFDQDate |
| | | + "','" + HBatchNo + "','" + ls2.Count + "','" + count + "'," + HSupID + "," + HGroupID + ",'" + ClsPub.CurUserName + "','" + DateTime.Today + "'," + HPrintQty + ",'" + HWei + "',1" |
| | | + "," + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HMTONO + "')"; |
| | | LogService.Write(sql); |
| | | oCn.RunProc(sql); |
| | | oCn.RunProc("exec setLSH '" + DateTime.Today + "'"); |
| | | count++; |
| | | if (ClsPub.isLong(oItemSub.HMaterID) != 0) |
| | | { |
| | | HBarCode = oItemSub.HBarCode.ToString(); |
| | | HMTONO = ClsPub.isStrNull(oItemSub.HMTONO); |
| | | HBarCodeType = "箱号条码"; |
| | | HMaterID = ClsPub.isLong(oItemSub.HMaterID); |
| | | HUnitID = ClsPub.isLong(oItemSub.HUnitID); |
| | | HQty2 = ClsPub.isDoule(oItemSub.HQty); |
| | | HBatchNo = ClsPub.isStrNull(oItemSub.HBatchNo); |
| | | HSupID = oItemSub.HSupID; |
| | | HKFPeriod = ClsPub.isInt(oItemSub.HKFPeriod); |
| | | HKFDate = ClsPub.isStrNull(oItemSub.HKFDate); |
| | | HKFDQDate = ClsPub.isStrNull(oItemSub.HKFDQDate); |
| | | HSourceInterID = ClsPub.isLong(oItemSub.HSourceInterID); |
| | | HSourceEntryID = ClsPub.isLong(oItemSub.HSourceEntryID); |
| | | HSourceBillNo = ClsPub.isStrNull(oItemSub.HSourceBillNo); |
| | | HSourceBillType = ClsPub.isStrNull(oItemSub.HSourceBillType); |
| | | HWei = ClsPub.isStrNull(oItemSub.HEndQty); |
| | | |
| | | string sql = "insert into Gy_BarCodeBill (HInterID,HBarCode,HBarCodeType,HMaterID,HUnitID,HQty,HKFDate,HKFPeriod,HKFDQDate" + |
| | | ",HBatchNo,HBarcodeQtys,HBarcodeNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HEndQty,HSupflag" + |
| | | ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HMTONO " + |
| | | ") values (" |
| | | + linterid.ToString() + ",'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID + "," + HUnitID + "," + HQty2 + ",'" + HKFDate + "'," + HKFPeriod + ",'" + HKFDQDate |
| | | + "','" + HBatchNo + "','" + SubModel.Count + "','" + count + "'," + HSupID + "," + HGroupID + ",'" + ClsPub.CurUserName + "','" + DateTime.Today + "'," + HPrintQty + ",'" + HWei + "',1" |
| | | + "," + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HMTONO + "')"; |
| | | LogService.Write(sql); |
| | | oCn.RunProc(sql); |
| | | oCn.RunProc("exec setLSH '" + DateTime.Today + "'"); |
| | | count++; |
| | | } |
| | | } |
| | | } |
| | | int _count = 1; |
| | | foreach (Model.ClsGy_BarCodeBill_WMS_Model oItemSub in ls3) |
| | | |
| | | //内箱 |
| | | var _oItemSubGroup = ls3.GroupBy(x => new { x.HSourceEntryID }).Select(y => new Model.ClsGy_BarCodeBill_WMS_Model { HSourceEntryID = y.Key.HSourceEntryID }); |
| | | foreach (var oitem in _oItemSubGroup) |
| | | { |
| | | if (ClsPub.isLong(oItemSub.HMaterID) != 0) |
| | | var SubModel = ls3.Where(x => x.HSourceEntryID == oitem.HSourceEntryID).ToList(); |
| | | int _count = 1; |
| | | foreach (var oItemSub in SubModel) |
| | | { |
| | | HBarCode = oItemSub.HBarCode.ToString(); |
| | | HMTONO = ClsPub.isStrNull(oItemSub.HMTONO); |
| | | HBarCodeType = "箱号内条码"; |
| | | HMaterID = ClsPub.isLong(oItemSub.HMaterID); |
| | | HUnitID = ClsPub.isLong(oItemSub.HUnitID); |
| | | HQty2 = ClsPub.isDoule(oItemSub.HQty); |
| | | HBatchNo = ClsPub.isStrNull(oItemSub.HBatchNo); |
| | | HSupID = oItemSub.HSupID; |
| | | HKFPeriod = ClsPub.isInt(oItemSub.HKFPeriod); |
| | | HKFDate = ClsPub.isStrNull(oItemSub.HKFDate); |
| | | HKFDQDate = ClsPub.isStrNull(oItemSub.HKFDQDate); |
| | | HSourceInterID = ClsPub.isLong(oItemSub.HSourceInterID); |
| | | HSourceEntryID = ClsPub.isLong(oItemSub.HSourceEntryID); |
| | | HSourceBillNo = ClsPub.isStrNull(oItemSub.HSourceBillNo); |
| | | HSourceBillType = ClsPub.isStrNull(oItemSub.HSourceBillType); |
| | | HWei = ClsPub.isStrNull(oItemSub.HEndQty); |
| | | string sql = "insert into Gy_BarCodeBill (HInterID,HBarCode,HBarCodeType,HMaterID,HUnitID,HQty,HKFDate,HKFPeriod,HKFDQDate" + |
| | | ",HBatchNo,HBarcodeQtys,HBarcodeNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HEndQty,HSupflag" + |
| | | ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HMTONO " + |
| | | ") values (" |
| | | + linterid.ToString() + ",'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID + "," + HUnitID + "," + HQty2 + ",'" + HKFDate + "'," + HKFPeriod + ",'" + HKFDQDate |
| | | + "','" + HBatchNo + "','" + ls3.Count + "','" + _count + "'," + HSupID + "," + HGroupID + ",'" + ClsPub.CurUserName + "','" + DateTime.Today + "'," + HPrintQty + ",'" + HWei + "',1" |
| | | + "," + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HMTONO + "')"; |
| | | LogService.Write(sql); |
| | | oCn.RunProc(sql); |
| | | _count++; |
| | | if (ClsPub.isLong(oItemSub.HMaterID) != 0) |
| | | { |
| | | HBarCode = oItemSub.HBarCode.ToString(); |
| | | HMTONO = ClsPub.isStrNull(oItemSub.HMTONO); |
| | | HBarCodeType = "箱号内条码"; |
| | | HMaterID = ClsPub.isLong(oItemSub.HMaterID); |
| | | HUnitID = ClsPub.isLong(oItemSub.HUnitID); |
| | | HQty2 = ClsPub.isDoule(oItemSub.HQty); |
| | | HBatchNo = ClsPub.isStrNull(oItemSub.HBatchNo); |
| | | HSupID = oItemSub.HSupID; |
| | | HKFPeriod = ClsPub.isInt(oItemSub.HKFPeriod); |
| | | HKFDate = ClsPub.isStrNull(oItemSub.HKFDate); |
| | | HKFDQDate = ClsPub.isStrNull(oItemSub.HKFDQDate); |
| | | HSourceInterID = ClsPub.isLong(oItemSub.HSourceInterID); |
| | | HSourceEntryID = ClsPub.isLong(oItemSub.HSourceEntryID); |
| | | HSourceBillNo = ClsPub.isStrNull(oItemSub.HSourceBillNo); |
| | | HSourceBillType = ClsPub.isStrNull(oItemSub.HSourceBillType); |
| | | HWei = ClsPub.isStrNull(oItemSub.HEndQty); |
| | | string sql = "insert into Gy_BarCodeBill (HInterID,HBarCode,HBarCodeType,HMaterID,HUnitID,HQty,HKFDate,HKFPeriod,HKFDQDate" + |
| | | ",HBatchNo,HBarcodeQtys,HBarcodeNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HEndQty,HSupflag" + |
| | | ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HMTONO " + |
| | | ") values (" |
| | | + linterid.ToString() + ",'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID + "," + HUnitID + "," + HQty2 + ",'" + HKFDate + "'," + HKFPeriod + ",'" + HKFDQDate |
| | | + "','" + HBatchNo + "','" + SubModel.Count + "','" + _count + "'," + HSupID + "," + HGroupID + ",'" + ClsPub.CurUserName + "','" + DateTime.Today + "'," + HPrintQty + ",'" + HWei + "',1" |
| | | + "," + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HMTONO + "')"; |
| | | LogService.Write(sql); |
| | | oCn.RunProc(sql); |
| | | _count++; |
| | | } |
| | | } |
| | | } |
| | | //暂时只回填关联数量 |
| | |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | try |
| | | { |
| | | string sql = "select HBarCode from Gy_BarCodeBill where HItemID in(" + HInterID + ") "; |
| | | string sql = "select HBarCode,HSourceInterID,HSourceEntryID,HQty,HBarCodeType,HSourceBillType from Gy_BarCodeBill where HItemID in(" + HInterID + ") "; |
| | | LogService.Write("删除sql:" + sql); |
| | | oCN.BeginTran(); |
| | | DataTable dt = oCN.RunProcReturn(sql, "deleteTable").Tables[0]; |
| | | if (dt.Rows.Count > 0) |
| | | { |
| | | foreach (DataRow dr in dt.Rows) |
| | | { |
| | | WebAPIController.Add_Log("条码档案删除", HUserName, "单号" + dr["HBarCode"].ToString()); ; |
| | | WebAPIController.Add_Log("条码档案删除", HUserName, "单号" + dr["HBarCode"].ToString()); |
| | | //反写打印数量到采购订单子表 |
| | | if (dr["HBarCodeType"].ToString() == "箱号内条码" && dr["HSourceBillType"].ToString() == "1102") |
| | | oCN.RunProc($"update Cg_POOrderBillSub set HBarcodeCount -= {dr["HQty"]} where HInterID ={dr["HSourceInterID"]} and HEntryID ={dr["HSourceEntryID"]}"); |
| | | //反写打印数量到委外订单 |
| | | if (dr["HBarCodeType"].ToString() == "箱号内条码" && dr["HSourceBillType"].ToString() == "1601") |
| | | oCN.RunProc($"update WW_EntrustOrderBillSub set HBarcodeCount -= {dr["HQty"]} where HInterID ={dr["HSourceInterID"]} and HEntryID ={dr["HSourceEntryID"]}"); |
| | | } |
| | | } |
| | | oCN.BeginTran(); |
| | | //LogService.Write("Delete From Gy_BarCodeBill where HItemID in(" + HInterID + ")") ; |
| | | oCN.RunProc("Delete From Gy_BarCodeBill where HItemID in(" + HInterID + ") "); |
| | | oCN.Commit(); |
| | | objJsonResult.code = "1"; |