| | |
| | | using NewPdaSqlServer.Dto.service; |
| | | using NewPdaSqlServer.entity; |
| | | using NewPdaSqlServer.entity.Base; |
| | | using NewPdaSqlServer.util; |
| | | using SqlSugar; |
| | | using static Microsoft.EntityFrameworkCore.DbLoggerCategory; |
| | | |
| | | namespace NewPdaSqlServer.service.Warehouse; |
| | | |
| | |
| | | { |
| | | if (string.IsNullOrEmpty(query.billNo)) throw new Exception("申请单号为空"); |
| | | |
| | | var mesInvItemOuts = base.GetSingle(it => it.BillNo == query.billNo && it.Status == true); |
| | | var mesInvItemOuts = base.GetSingle(it => |
| | | it.BillNo == query.billNo && it.Status == true); |
| | | if (mesInvItemOuts == null) throw new Exception("采购退货申请单不存在或未审核"); |
| | | |
| | | var sql = string.Format(@"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,A.SQ_NUM FQty,A.YS_NUM SQty,A.SQ_NUM - A.YS_NUM DSQty, |
| | | var sql = string.Format( |
| | | @"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,A.SQ_NUM FQty,A.YS_NUM SQty,A.SQ_NUM - A.YS_NUM DSQty, |
| | | dbo.F_QX_GETRECODEPOTSE(A.ITEM_ID,A.depot_id,'','') as RecoKw |
| | | fROM MES_CGTH_SQ_DETAIL A |
| | | LEFT JOIN MES_CGTH_SQ B ON A.MID = B.ID |
| | |
| | | |
| | | var womdabs = Db.Ado.SqlQuery<ItemDetailModel>(sql); |
| | | |
| | | if(womdabs.Count < 1) |
| | | { |
| | | throw new Exception("该采购退货申请单明细不存在"); |
| | | } |
| | | if (womdabs.Count < 1) throw new Exception("该采购退货申请单明细不存在"); |
| | | |
| | | |
| | | var DS_list = womdabs.Where(s => s.DSQty > 0).ToList(); |
| | |
| | | throw new ApplicationException("GUID转换错误"); // 如果转换失败,则抛出异常 |
| | | |
| | | // 使用SqlSugar框架查询MesInvItemOutItems和MesItems表,根据ItemId进行内连接 |
| | | var mesInvItemOutItemsList = Db.Queryable<MesCgthSqDetail, MesItems>( |
| | | (c, s) => new object[] |
| | | { |
| | | JoinType.Inner, c.ItemId == s.Id // 内连接条件 |
| | | }).Where((c, s) => c.Mid == parsedGuid) // 根据ItemOutId过滤 |
| | | var mesInvItemOutItemsList = Db |
| | | .Queryable<MesCgthSqDetail, MesItems>((c, s) => new object[] |
| | | { |
| | | JoinType.Inner, c.ItemId == s.Id // 内连接条件 |
| | | }).Where((c, s) => c.Mid == parsedGuid) // 根据ItemOutId过滤 |
| | | .Select<MesCgthSqDetail>((c, s) => |
| | | new MesCgthSqDetail // 选择并映射到MesInvItemOutItems对象 |
| | | { |
| | |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | if (query.userName.IsNullOrEmpty()) throw new Exception("用户名不允许为空"); |
| | | if (query.billNo.IsNullOrEmpty()) throw new Exception("申请单号不允许为空"); if (query.barcode.IsNullOrEmpty()) throw new Exception("条码不允许为空"); |
| | | if (query.billNo.IsNullOrEmpty()) throw new Exception("申请单号不允许为空"); |
| | | if (query.barcode.IsNullOrEmpty()) throw new Exception("条码不允许为空"); |
| | | |
| | | using (var cmd = new SqlCommand("[prc_pda_CGTH]", conn)) |
| | | { |
| | |
| | | |
| | | var _strMsg = ""; |
| | | var _intSum = ""; |
| | | var _cfBar = "";//拆分后条码 |
| | | var _cfBar = ""; //拆分后条码 |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | using (var cmd = new SqlCommand("[prc_pda_CGTH_CF]", conn)) |
| | |
| | | var dto = new ProductionPickDto |
| | | { |
| | | daa001 = query.billNo, |
| | | barcode = query.barcode,//原条码 |
| | | cfBarcode = _cfBar//拆分后条码 |
| | | barcode = query.barcode, //原条码 |
| | | cfBarcode = _cfBar //拆分后条码 |
| | | }; |
| | | |
| | | return dto; |
| | |
| | | |
| | | |
| | | /// <summary> |
| | | /// 采购扫码验退 |
| | | /// 采购扫码验退 |
| | | /// </summary> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | |
| | | /// <exception cref="Exception"></exception> |
| | | public dynamic ScanCgyt(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query), "参数对象不能为 null"); |
| | | if (query == null) |
| | | throw new ArgumentNullException(nameof(query), "参数对象不能为 null"); |
| | | |
| | | // 2. 使用 string.IsNullOrEmpty 直接判断字符串属性(避免 NullReferenceException) |
| | | if (string.IsNullOrEmpty(query.userName?.ToString())) |
| | |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | var parameters = new SqlParameter[] |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userName }, |
| | | new("@pi_barcode", SqlDbType.NVarChar, 100) { Value = query.barcode }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new("@po_outSum", SqlDbType.Int) { Direction = ParameterDirection.Output }, |
| | | new("@po_ygdh", SqlDbType.NVarChar, 200) { Direction = ParameterDirection.Output } |
| | | new("@pi_user", SqlDbType.NVarChar, 100) |
| | | { Value = query.userName }, |
| | | new("@pi_barcode", SqlDbType.NVarChar, 100) |
| | | { Value = query.barcode }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) |
| | | { Direction = ParameterDirection.Output }, |
| | | new("@po_outSum", SqlDbType.Int) |
| | | { Direction = ParameterDirection.Output }, |
| | | new("@po_ygdh", SqlDbType.NVarChar, 200) |
| | | { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | cmd.Parameters.AddRange(parameters); |
| | |
| | | var result = new |
| | | { |
| | | result = parameters[3].Value.ToString(), |
| | | barcode = query.barcode, |
| | | query.barcode, |
| | | ytdh = parameters[4].Value.ToString(), |
| | | msg = parameters[2].Value.ToString() |
| | | }; |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 删除验退单 |
| | | /// 删除验退单 |
| | | /// </summary> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | |
| | | /// <exception cref="Exception"></exception> |
| | | public dynamic deleteCgyt(dynamic query) |
| | | { |
| | | if (query == null) throw new ArgumentNullException(nameof(query), "参数对象不能为 null"); |
| | | if (query == null) |
| | | throw new ArgumentNullException(nameof(query), "参数对象不能为 null"); |
| | | |
| | | // 2. 使用 string.IsNullOrEmpty 直接判断字符串属性(避免 NullReferenceException) |
| | | if (string.IsNullOrEmpty(query.userName?.ToString())) |
| | |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | var parameters = new SqlParameter[] |
| | | { |
| | | new("@pi_user", SqlDbType.NVarChar, 100) { Value = query.userName }, |
| | | new("@pi_ytdh", SqlDbType.NVarChar, 100) { Value = query.ytdh }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) { Direction = ParameterDirection.Output }, |
| | | new("@po_outSum", SqlDbType.Int) { Direction = ParameterDirection.Output } |
| | | new("@pi_user", SqlDbType.NVarChar, 100) |
| | | { Value = query.userName }, |
| | | new("@pi_ytdh", SqlDbType.NVarChar, 100) |
| | | { Value = query.ytdh }, |
| | | new("@po_outMsg", SqlDbType.NVarChar, 2000) |
| | | { Direction = ParameterDirection.Output }, |
| | | new("@po_outSum", SqlDbType.Int) |
| | | { Direction = ParameterDirection.Output } |
| | | }; |
| | | |
| | | cmd.Parameters.AddRange(parameters); |
| | |
| | | var result = new |
| | | { |
| | | result = parameters[3].Value.ToString(), |
| | | msg = parameters[2].Value.ToString(), |
| | | msg = parameters[2].Value.ToString() |
| | | }; |
| | | |
| | | if (result.result == "-1") |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 获取验退单已扫物料信息 |
| | | /// 获取验退单已扫物料信息 |
| | | /// </summary> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | public dynamic getYtItem(string ytdh) |
| | | { |
| | | if (string.IsNullOrEmpty(ytdh?.ToString())) |
| | | if (string.IsNullOrEmpty(ytdh)) |
| | | throw new ArgumentException("验退单号不允许为空", nameof(ytdh)); |
| | | |
| | | var sqlParams = new List<SugarParameter> { new("@ytdh", ytdh) }; |
| | | |
| | | var sql1 = @"SELECT C.item_id,C.item_no,C.item_name,C.item_model,A.quantity |
| | | var sql1 = |
| | | @"SELECT C.item_id,C.item_no,C.item_name,C.item_model,A.quantity |
| | | FROM MES_INV_ITEM_CGYT_ITEMS A |
| | | LEFT JOIN MES_INV_ITEM_CGYT B ON A.item_cgyt_id = B.GUID |
| | | LEFT JOIN MES_ITEMS C ON A.item_id = C.item_id |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 获取验退单已扫条码信息 |
| | | /// 获取验退单已扫条码信息 |
| | | /// </summary> |
| | | /// <param name="query"></param> |
| | | /// <returns></returns> |
| | | public dynamic getYtBarInfo(string ytdh) |
| | | { |
| | | if (string.IsNullOrEmpty(ytdh?.ToString())) |
| | | if (string.IsNullOrEmpty(ytdh)) |
| | | throw new ArgumentException("验退单号不允许为空", nameof(ytdh)); |
| | | |
| | | var sqlParams = new List<SugarParameter> { new("@ytdh", ytdh) }; |
| | | |
| | | var sql1 = @"SELECT C.item_id,C.item_no,C.item_name,C.item_model,A.quantity,A.ITEM_BARCODE |
| | | var sql1 = |
| | | @"SELECT C.item_id,C.item_no,C.item_name,C.item_model,A.quantity,A.ITEM_BARCODE |
| | | FROM MES_INV_ITEM_CGYT_C_DETAILS A |
| | | LEFT JOIN MES_INV_ITEM_CGYT B ON A.item_cgyt_id = B.GUID |
| | | LEFT JOIN MES_ITEMS C ON A.item_id = C.item_id |