| | |
| | | /// <param name="batchNo"></param> |
| | | /// <param name="qty"></param> |
| | | /// <returns></returns> |
| | | internal static bool BindCntrItem(Container cntr, string itemCode, string batchNo, float qty, string putawayNo) |
| | | { |
| | | var res = false; |
| | | var db = new SqlHelper<object>().GetInstance(); |
| | | try |
| | | { |
| | | db.BeginTran(); |
| | | //1.查看是否有相同物料批次的信息,如果有要累加,不同批次的可以分开 |
| | | var cir = db.Queryable<CntrItemDetail>().Where(a => a.S_CNTR_CODE == cntr.S_CODE && a.S_ITEM_CODE == itemCode && a.S_BATCH_NO == batchNo).First(); |
| | | if (cir != null) |
| | | { |
| | | cir.F_QTY += qty; |
| | | db.Updateable(cir).UpdateColumns(it => new { it.F_QTY,it.S_CK }).ExecuteCommand(); |
| | | } |
| | | else |
| | | { |
| | | //2.插入新的容器物料信息(容器号不变) |
| | | cir = new CntrItemDetail { S_CNTR_CODE = cntr.S_CODE.Trim(), S_BATCH_NO = batchNo, F_QTY = qty, S_ITEM_CODE = itemCode, S_PUTAWAY_NO = putawayNo}; |
| | | db.Insertable<CntrItemDetail>(cir).ExecuteCommand(); |
| | | } |
| | | var count = db.Queryable<CntrItemDetail>().Count(a => a.S_CNTR_CODE == cntr.S_CODE); |
| | | cntr.N_DETAIL_COUNT = count; |
| | | cntr.C_ENABLE = "N";//码盘后将托盘设置为不可用状态,入库后变成可用 |
| | | //db.Updateable(cntr).UpdateColumns(it => new { it.N_DETAIL_COUNT, it.C_ENABLE, it.S_SRC }).ExecuteCommand(); |
| | | db.Updateable(cntr).UpdateColumns(it => new { it.N_DETAIL_COUNT, it.C_ENABLE }).ExecuteCommand(); |
| | | //internal static bool BindCntrItem(Container cntr, string itemCode, string batchNo, float qty, string putawayNo) |
| | | //{ |
| | | // var res = false; |
| | | // var db = new SqlHelper<object>().GetInstance(); |
| | | // try |
| | | // { |
| | | // db.BeginTran(); |
| | | // //1.查看是否有相同物料批次的信息,如果有要累加,不同批次的可以分开 |
| | | // var cir = db.Queryable<CntrItemDetail>().Where(a => a.S_CNTR_CODE == cntr.S_CODE && a.S_ITEM_CODE == itemCode && a.S_BATCH_NO == batchNo).First(); |
| | | // if (cir != null) |
| | | // { |
| | | // cir.F_QTY += qty; |
| | | // db.Updateable(cir).UpdateColumns(it => new { it.F_QTY,it.S_CK }).ExecuteCommand(); |
| | | // } |
| | | // else |
| | | // { |
| | | // //2.插入新的容器物料信息(容器号不变) |
| | | // cir = new CntrItemDetail { S_CNTR_CODE = cntr.S_CODE.Trim(), S_BATCH_NO = batchNo, F_QTY = qty, S_ITEM_CODE = itemCode, S_PUTAWAY_NO = putawayNo}; |
| | | // db.Insertable<CntrItemDetail>(cir).ExecuteCommand(); |
| | | // } |
| | | // var count = db.Queryable<CntrItemDetail>().Count(a => a.S_CNTR_CODE == cntr.S_CODE); |
| | | // cntr.N_DETAIL_COUNT = count; |
| | | // cntr.C_ENABLE = "N";//码盘后将托盘设置为不可用状态,入库后变成可用 |
| | | // //db.Updateable(cntr).UpdateColumns(it => new { it.N_DETAIL_COUNT, it.C_ENABLE, it.S_SRC }).ExecuteCommand(); |
| | | // db.Updateable(cntr).UpdateColumns(it => new { it.N_DETAIL_COUNT, it.C_ENABLE }).ExecuteCommand(); |
| | | |
| | | db.CommitTran(); |
| | | res = true; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | db.RollbackTran(); |
| | | Console.WriteLine(ex.Message); |
| | | } |
| | | // db.CommitTran(); |
| | | // res = true; |
| | | // } |
| | | // catch (Exception ex) |
| | | // { |
| | | // db.RollbackTran(); |
| | | // Console.WriteLine(ex.Message); |
| | | // } |
| | | |
| | | return res; |
| | | } |
| | | // return res; |
| | | //} |
| | | |
| | | ///// <summary> |
| | | ///// 物料信息绑定到满容器上 |
| | |
| | | if (db.Queryable<LocCntrRel>().Count(a => a.S_CNTR_CODE.Trim() == cntrCode) == 0) |
| | | { |
| | | var cir = new LocCntrRel { S_LOC_CODE = loc, S_CNTR_CODE = cntrCode}; |
| | | var con = new Container { S_CODE = cntrCode,N_DETAIL_COUNT = 1,C_FULL="0" }; |
| | | var con = new Container { S_CODE = cntrCode,N_DETAIL_COUNT = 1,C_FULL="2" };//默认满 主动绑定服务用 |
| | | db.Insertable<LocCntrRel>(cir).ExecuteCommand(); |
| | | db.Insertable<Container>(con).ExecuteCommand(); |
| | | if (!string.IsNullOrEmpty(itemCode)) |
| | | { |
| | | LogHelper.Info($"绑定容器参数:{JsonConvert.SerializeObject(con)}"); |
| | | ContainerHelper.BindCntrItem(cntrCode, itemCode, itemName); |
| | | //有物料的话就是满的 |
| | | con.C_FULL = "2"; |
| | | db.Updateable(con).UpdateColumns(it => it.C_FULL).ExecuteCommand(); |
| | | ////有物料的话就是满的 |
| | | //con.C_FULL = "2"; |
| | | //db.Updateable(con).UpdateColumns(it => it.C_FULL).ExecuteCommand(); |
| | | } |
| | | } |
| | | } |
| | |
| | | var db = new SqlHelper<object>().GetInstance(); |
| | | try |
| | | { |
| | | LogHelper.Info($"BindCntrItem============="); |
| | | db.BeginTran(); |
| | | var cir = new CntrItemDetail { S_CNTR_CODE = trayCode, S_ITEM_CODE = itemCode, S_ITEM_NAME = itemName}; |
| | | db.Insertable<CntrItemDetail>(cir).ExecuteCommand(); |
| | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogHelper.Error("BindCntrItem:" + ex.Message, ex); |
| | | db.Ado.RollbackTran(); |
| | | } |
| | | return res; |