| | |
| | | { |
| | | var reqType = input.Options["reqType"].ToString(); |
| | | //如果类型不一样,则清除CurOrder |
| | | if (CurReqType != reqType) { |
| | | if (CurReqType != reqType) |
| | | { |
| | | CurOrder = null; |
| | | CurReqType = reqType; |
| | | } |
| | |
| | | { |
| | | CurOrder = await MainDB.Queryable<BIZ_U9_ASN>().Where(q => q.ORDER_NO == SqlFunc.Subqueryable<BIZ_U9_ASN_DTL>().Where(s => SqlFunc.StartsWith(s.UPDATE_USER, $"GenerateASN_{UserCode}_Sample")).Select(s => s.ORDER_NO)).Includes(q => q.Details, d => d._ItemInfos).IncludesAllFirstLayer().FirstAsync(); |
| | | } |
| | | CurOrder = CurOrder??new() { |
| | | CurOrder = CurOrder ?? new() |
| | | { |
| | | ORDER_NO= $"WASN{DateTime.Now.ToString("yyyyMMddHHmmss")}", |
| | | SUPP_CODE = dtl.SUPP_CODE, |
| | | DELIVERY_DATE = DateTime.Now, |
| | |
| | | return action; |
| | | } |
| | | //如果没有供应商名称,则从供应商表中获取 |
| | | if (CurOrder.SUPP_NAME.IsNullOrEmpty()) { |
| | | if (CurOrder.SUPP_NAME.IsNullOrEmpty()) |
| | | { |
| | | CurOrder.SUPP_NAME = MainDB.Queryable<BAS_SUPPLIER>().Where(q => q.SUPP_CODE == CurOrder.SUPP_CODE).First()?.SUPP_NAME_CN; |
| | | } |
| | | //if (!CurOrder.ORDER_NO.IsNullOrEmpty() && CurOrder.ORDER_NO.StartsWith("WASN") && CurOrder.STATUS == BIZ_U9_ASN.STATUSs.Counting.GetValue()) |
| | |
| | | //使用统一的事务DB对象 |
| | | var db = GetCommitDB(); |
| | | //数据保存逻辑 |
| | | db.Updateable<BIZ_U9_ASN>(UserCode).SetColumns(q => q.STATUS == BIZ_U9_ASN.STATUSs.Counting.GetValue()).Where(q => q.ORDER_NO == dtl.ORDER_NO).ExecuteCommand(); |
| | | db.Updateable<BIZ_U9_ASN>(UserCode).SetColumns(q => new BIZ_U9_ASN() { STATUS = BIZ_U9_ASN.STATUSs.Counting.GetValue(), COMMIT_JSON = $"{reqType}" }).Where(q => q.ORDER_NO == dtl.ORDER_NO).ExecuteCommand(); |
| | | db.Storageable(sns, UserCode).ExecuteCommand(); |
| | | if (reqType == "2") |
| | | { |
| | |
| | | public async Task<ApiAction> GenerateReceipt(BaseInput input) |
| | | { |
| | | var action = new ApiAction(); |
| | | var orderNo = CurOrder.ORDER_NO; |
| | | var orderNo = input.Data.ToString(); //CurOrder.ORDER_NO; |
| | | try |
| | | { |
| | | var reqType = input.Options["reqType"].ToString(); |
| | |
| | | //如果是随单赠品或者样品 |
| | | if (reqType.ToInt32() > 0) |
| | | { |
| | | rcvDocType = reqType == "2" ? "RCV03" : "RCV01"; |
| | | var iInput = new CreateReceivementInput |
| | | { |
| | | userId = UserCode, |
| | |
| | | rcvDTO = new() |
| | | { |
| | | Supplier = new() { m_code = order.SUPP_CODE }, |
| | | BusinessDate = DateTime.Now, |
| | | RcvDocType = new() { m_code = rcvDocType }, |
| | | RcvLines = finishNotSubmit.Select(q=> new RcvLine |
| | | { |
| | |
| | | { |
| | | ASNLineKey = q.ID, |
| | | TransQty = new() { m_amount1 = q.QTY }, |
| | | BinInfoList = new() { new() { Bin = new() { m_code = q.ItemInfo.DEFAULT_LOCATION }, LocationQtySU = q.QTY, LocationQtyTU = q.QTY } }, |
| | | BinInfoList = new() { new() { Bin = new() { m_code = q.ItemInfo?.DEFAULT_LOCATION ?? "" }, LocationQtySU = q.QTY, LocationQtyTU = q.QTY } }, |
| | | }).ToList(), |
| | | } |
| | | }; |
| | |
| | | |
| | | foreach (var item in list) |
| | | { |
| | | var asnDtl = finishNotSubmit.First(q => q.ID == item.SrcASNDocLineId.ToString()); |
| | | var asnDtl = finishNotSubmit.First(q => q.ID == item.SrcASNDocLineId.ToString() || (item.SrcASNDocLineId.ToString()=="0" && q.ITEM_CODE == item.ItemCode && q.QTY==item.RcvQtyTU)); |
| | | BIZ_U9_RECEIPT_DTL receiptDt = new() |
| | | { |
| | | ID = item.RcvLineId.ToString(), |