public async Task<bool> SubmitInput(InputSubmitModel data, string updateBy) { foreach (var item in data.TransactionList) { await CreateInput(item, updateBy); } var lists = data.InputNoList; if (lists.Count > 0) { string Transac_Sheet_No; do { string num = CodeUtility.RandomNumber(3); Transac_Sheet_No = "IB" + DateTime.Now.ToString("yyyyMMdd") + num; } while (await _repoTransactionMain.CheckTranSheetNo(Transac_Sheet_No)); foreach (var item in lists) { string Missing_No; do { // Để Mising No khác nhau string num2 = CodeUtility.RandomNumber(3); Missing_No = "BTM" + DateTime.Now.ToString("yyyyMMdd") + num2; } while (await this.CheckMissingMo(Missing_No)); WMSB_Transaction_Main model = await _repoTransactionMain.GetByInputNo(item); model.Can_Move = "Y"; model.Transac_Sheet_No = Transac_Sheet_No; model.Is_Transfer_Form = "N"; model.Updated_By = updateBy; model.Updated_Time = DateTime.Now; if (model.Purchase_Qty > model.Transacted_Qty) { model.Missing_No = Missing_No; //Tạo mới record và update status record cũ trong bảng QRCode_Main và QRCode_Detail GenerateNewQrCode(model.QRCode_ID, model.QRCode_Version, item, updateBy); //Update QrCode Version cho bảng Transaction_Main model.QRCode_Version += 1; // Tạo mới record trong bảng Missing CreateMissing(model.Purchase_No, model.MO_No, model.MO_Seq, model.Material_ID, model.Transac_No, model.Missing_No, updateBy); } else { WMSB_QRCode_Main qrModel = await _repoQRCodeMain.GetByQRCodeID(model.QRCode_ID); qrModel.Is_Scanned = "Y"; _repoQRCodeMain.Update(qrModel); } _repoTransactionMain.Update(model); } return await _repoTransactionMain.SaveAll(); } return false; }
public async Task <bool> SubmitInput(InputSubmitModel data) { foreach (var item in data.TransactionList) { await CreateInput(item); } var lists = data.InputNoList; Random ran = new Random(); if (lists.Count > 0) { int num = ran.Next(100, 999); var Transac_Sheet_No = "IB" + DateTime.Now.ToString("yyyyMMdd") + num.ToString(); var Missing_No = "BTM" + DateTime.Now.ToString("yyyyMMdd") + num.ToString(); foreach (var item in lists) { WMSB_Transaction_Main model = await _repoTransactionMain.GetByInputNo(item); model.Can_Move = "Y"; model.Transac_Sheet_No = Transac_Sheet_No; model.Updated_By = "Nam"; model.Updated_Time = DateTime.Now; if (model.Purchase_Qty > model.Transacted_Qty) { model.Missing_No = Missing_No; //Tạo mới record và update status record cũ trong bảng QRCode_Main và QRCode_Detail GenerateNewQrCode(model.QRCode_ID, model.QRCode_Version, item); //Update QrCode Version cho bảng Transaction_Main model.QRCode_Version += 1; // Tạo mới record trong bảng Missing CreateMissing(model.Purchase_No, model.MO_No, model.MO_Seq, model.Material_ID, model.Transac_No, model.Missing_No); } else { WMSB_QRCode_Main qrModel = await _repoQRCodeMain.GetByQRCodeID(model.QRCode_ID); qrModel.Is_Scanned = "Y"; _repoQRCodeMain.Update(qrModel); } _repoTransactionMain.Update(model); } return(await _repoTransactionMain.SaveAll()); } return(false); }