| | |
| | | using MES.Service.DB; |
| | | using Masuit.Tools.Models; |
| | | using MES.Service.DB; |
| | | using MES.Service.Dto.service; |
| | | using MES.Service.Modes; |
| | | using MES.Service.util; |
| | |
| | | |
| | | if (!string.IsNullOrEmpty(qsItemOqcReq.FcheckResu)) |
| | | { |
| | | throw new Exception("该检验单已" + qsItemOqcReq.FcheckResu + ",不运行修改结果"); |
| | | throw new Exception("该检验单已" + qsItemOqcReq.FcheckResu + ",不允许修改结果"); |
| | | } |
| | | |
| | | var oracle = SqlSugarHelper.UseTransactionWithOracle(db => |
| | |
| | | /// womdaa 已生产量 DAA011加回条码报工数量 |
| | | /// MES_SCGD_GX 检验标识 CHECK_FLAG,('√','×') |
| | | /// 通过mes_inv_item_in_c_details2的MES_SCGD_GX_ID连接 |
| | | /// |
| | | /// 20250602更新 现在不合格不会更新工单生产数量,合格会增加对应工单生产数量 |
| | | ///</summary> |
| | | private void setBarCodes(string? FcheckResu, QsItemOqcItemDetail detail, |
| | | SqlSugarClient db) |
| | |
| | | var barCodes = mesInvItemInsList.Select(s => s.ItemBarcode).ToList(); |
| | | |
| | | var count = db.Queryable<MesInvItemBarcodes>() |
| | | .Where(s => barCodes.Contains(s.ItemBarcode) && s.WorkFlg == 0) |
| | | .Where(s => barCodes.Contains(s.ItemBarcode)) |
| | | .Count(); |
| | | |
| | | var gxId = mesInvItemInsList.Select(s => s.MesScgdGxId).ToList(); |
| | |
| | | |
| | | if (count <= 0) return; |
| | | |
| | | //取消mes_inv_item_barcodes 的报工标识 WORK_FLG 使用条码 |
| | | //更新mes_inv_item_barcodes 的报工标识 WORK_FLG 使用条码 |
| | | var executeCommand = db.Updateable<MesInvItemBarcodes>() |
| | | .SetColumns(a => a.WorkFlg == 1) |
| | | .Where(a => barCodes.Contains(a.ItemBarcode)) |
| | |
| | | |
| | | if (executeCommand > 0) |
| | | { |
| | | //womdaa 已生产量 DAA011加回条码报工数量 |
| | | //womdaa 已生产量 DAA011加上条码报工数量 |
| | | db.Updateable<Womdaa>() |
| | | .SetColumns(b => b.Daa011 == b.Daa011 + sumQty) |
| | | .Where(b => b.Daa001 == qsItemOqcReq.Daa001) |
| | |
| | | .Where(a => barCodes.Contains(a.ItemBarcode)) |
| | | .ExecuteCommand(); |
| | | |
| | | if (executeCommand > 0) |
| | | /*if (executeCommand > 0) |
| | | { |
| | | //womdaa 已生产量 DAA011加回条码报工数量 |
| | | //womdaa 已生产量 DAA011扣除条码报工数量 |
| | | db.Updateable<Womdaa>() |
| | | .SetColumns(b => b.Daa011 == b.Daa011 - sumQty) |
| | | .Where(b => b.Daa001 == qsItemOqcReq.Daa001) |
| | | .ExecuteCommand(); |
| | | } |
| | | }*/ |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | if (!string.IsNullOrEmpty(qsItemOqcReq.FcheckResu)) |
| | | { |
| | | throw new Exception("该检验单已" + qsItemOqcReq.FcheckResu + ",不运行修改结果"); |
| | | throw new Exception("该检验单已" + qsItemOqcReq.FcheckResu + ",不允许修改结果"); |
| | | } |
| | | |
| | | var withOracle = SqlSugarHelper.UseTransactionWithOracle(db => |
| | |
| | | SetQSItemDetail(detail); |
| | | }); |
| | | |
| | | //因为默认合格,在这里增加工单生产数量 |
| | | var db = SqlSugarHelper.GetInstance(); |
| | | var oqcReqList = db.Queryable<QsItemOqcReq, MesInvItemIns, Womdaa>( |
| | | (a, b, c) => |
| | | new JoinQueryInfos( |
| | | JoinType.Left, a.BillNo == b.BillNo, |
| | | JoinType.Left, c.Daa001 == b.RbillNo |
| | | )) |
| | | .Where(a => a.Id == rkjDto.gid) |
| | | .Select((a, b, c) => |
| | | new |
| | | { |
| | | a.Id, |
| | | a.BillNo, |
| | | c.Daa001 |
| | | }) |
| | | .First(); |
| | | |
| | | if (oqcReqList.Id is null or 0) return 0; |
| | | |
| | | //查询检验数量 |
| | | var sumQty = db |
| | | .Queryable<MesInvItemIns, MesInvItemInCDetails2>((a, b) => |
| | | new JoinQueryInfos( |
| | | JoinType.Left, a.Id == b.ItemInId)) |
| | | .Where((a, b) => a.BillNo == oqcReqList.BillNo) |
| | | .Select((a, b) => new {b.Quantity }) |
| | | .MergeTable().Sum( a=> a.Quantity); |
| | | |
| | | //更新生产量 |
| | | db.Updateable<Womdaa>() |
| | | .SetColumns(b => b.Daa011 == b.Daa011 + sumQty) |
| | | .Where(b => b.Daa001 == oqcReqList.Daa001) |
| | | .ExecuteCommand(); |
| | | |
| | | |
| | | |
| | | return Convert.ToInt32(rkjDto.gid); |
| | | } |
| | | |
| | |
| | | { |
| | | if (isRk(dto.gid)) throw new Exception("已有条码入库,不允许清除检验结果"); |
| | | |
| | | var db = SqlSugarHelper.GetInstance(); |
| | | //查询检验结果 |
| | | var oqcReqList = db.Queryable<QsItemOqcReq, MesInvItemIns, Womdaa>( |
| | | (a, b, c) => |
| | | new JoinQueryInfos( |
| | | JoinType.Left, a.BillNo == b.BillNo, |
| | | JoinType.Left, c.Daa001 == b.RbillNo |
| | | )) |
| | | .Where(a => a.Id == dto.gid) |
| | | .Select((a, b, c) => |
| | | new |
| | | { |
| | | a.FcheckResu, |
| | | a.Id, |
| | | a.BillNo, |
| | | c.Daa001 |
| | | }) |
| | | .First(); |
| | | |
| | | if (oqcReqList.Id is null or 0) return 0; |
| | | |
| | | var FcheckResu = oqcReqList.FcheckResu; //检验结果 |
| | | |
| | | //查询检验数量 |
| | | var mesInvItemInsList = db |
| | | .Queryable<MesInvItemIns, MesInvItemInCDetails2>((a, b) => |
| | | new JoinQueryInfos( |
| | | JoinType.Left, a.Id == b.ItemInId)) |
| | | .Where((a, b) => a.BillNo == oqcReqList.BillNo) |
| | | .Select((a, b) => new |
| | | { b.ItemBarcode, b.Quantity, b.MesScgdGxId }) |
| | | .ToList(); |
| | | |
| | | var barCodes = mesInvItemInsList.Select(s => s.ItemBarcode).ToList(); |
| | | |
| | | var count = db.Queryable<MesInvItemBarcodes>() |
| | | .Where(s => barCodes.Contains(s.ItemBarcode)) |
| | | .Count(); |
| | | |
| | | var gxId = mesInvItemInsList.Select(s => s.MesScgdGxId).ToList(); |
| | | |
| | | var sumQty = mesInvItemInsList.Sum(s => s.Quantity); |
| | | |
| | | |
| | | //根据工序id更新工序表的检验结果 |
| | | db.Updateable<MesScgdGx>() |
| | | .SetColumns(s => s.CheckFlag == "未检验") |
| | | .Where(s => gxId.Contains(s.Id)) |
| | | .ExecuteCommand(); |
| | | |
| | | if (count <= 0) return 0; |
| | | |
| | | //更新mes_inv_item_barcodes 的报工标识 WORK_FLG 为已报工(主要是针对不合格的检验结果) |
| | | var executeCommand = db.Updateable<MesInvItemBarcodes>() |
| | | .SetColumns(a => a.WorkFlg == 1) |
| | | .Where(a => barCodes.Contains(a.ItemBarcode)) |
| | | .ExecuteCommand(); |
| | | |
| | | |
| | | if ("合格".Equals(FcheckResu)) //检验合格的则回退生产数量 |
| | | { |
| | | //womdaa 已生产量 DAA011扣除条码报工数量 |
| | | db.Updateable<Womdaa>() |
| | | .SetColumns(b => b.Daa011 == b.Daa011 - sumQty) |
| | | .Where(b => b.Daa001 == oqcReqList.Daa001) |
| | | .ExecuteCommand(); |
| | | } |
| | | |
| | | |
| | | return SqlSugarHelper.UseTransactionWithOracle(db => |
| | | { |