| | |
| | | return barInfo; // 返回第一行数据,如果没有则返回 null |
| | | } |
| | | |
| | | public dynamic GetBarInfoBefore(WarehouseQuery unity) |
| | | { |
| | | |
| | | // 使用参数化查询防止SQL注入 |
| | | var sqlParams = new List<SugarParameter> { new("@barcode", unity.barcode) }; |
| | | |
| | | var sql1 = @"SELECT 1 FROM MES_INV_ITEM_STOCKS WHERE ITEM_BARCODE =@barcode "; |
| | | |
| | | var KcInfo = Db.Ado.SqlQuery<dynamic>(sql1, sqlParams); |
| | | |
| | | if(KcInfo.Count > 0) throw new Exception("该条码已入库不能进行入库前拆分!"); |
| | | |
| | | var sql2 = @"SELECT ITEM_ID,QUANTITY FROM MES_INV_ITEM_BARCODES WHERE ITEM_BARCODE =@barcode "; |
| | | |
| | | var barInfo = Db.Ado.SqlQuery<dynamic>(sql2, sqlParams).First(); |
| | | |
| | | if (barInfo is null) throw new Exception("该条码信息不存在!"); |
| | | |
| | | return barInfo; |
| | | } |
| | | |
| | | public MesItems GetItemNo(decimal strItemId) |
| | | { |
| | | var itemInfo = Db.Queryable<MesItems>() |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | public ProductionPickDto BarCfBefore(WarehouseQuery unity) |
| | | { |
| | | var _strMsg = ""; |
| | | var _intSum = ""; |
| | | var _cfBar = "";//拆分后条码 |
| | | using (var conn = new SqlConnection(DbHelperSQL.strConn)) |
| | | { |
| | | if (unity.userName.IsNullOrEmpty()) throw new Exception("用户名不允许为空"); |
| | | if (unity.CfNum <= 0) throw new Exception("拆分数量需大于等于0"); |
| | | if (unity.barcode.IsNullOrEmpty()) throw new Exception("条码不允许为空"); |
| | | |
| | | using (var cmd = new SqlCommand("[prc_pda_bar_cf_before]", conn)) |
| | | { |
| | | try |
| | | { |
| | | conn.Open(); |
| | | cmd.CommandType = CommandType.StoredProcedure; |
| | | SqlParameter[] parameters = |
| | | { |
| | | new("@outMsg", SqlDbType.NVarChar, 300), |
| | | new("@outSum", SqlDbType.NVarChar, 300), |
| | | new("@barcode_new", SqlDbType.NVarChar, 300), |
| | | new("@c_user", unity.userName), |
| | | new("@p_old_barcode", unity.barcode), |
| | | new("@p_qty", unity.CfNum), |
| | | |
| | | }; |
| | | parameters[0].Direction = ParameterDirection.Output; |
| | | parameters[1].Direction = ParameterDirection.Output; |
| | | parameters[2].Direction = ParameterDirection.Output; |
| | | |
| | | foreach (var parameter in parameters) |
| | | cmd.Parameters.Add(parameter); |
| | | cmd.ExecuteNonQuery(); |
| | | _strMsg = parameters[0].Value.ToString(); |
| | | _intSum = parameters[1].Value.ToString(); |
| | | _cfBar = parameters[2].Value.ToString(); |
| | | |
| | | |
| | | var result = Convert.ToInt32(_intSum); |
| | | if (result <= 0) throw new Exception(_strMsg); |
| | | |
| | | var dto = new ProductionPickDto |
| | | { |
| | | barcode = unity.barcode,//原条码 |
| | | cfBarcode = _cfBar//拆分后条码 |
| | | }; |
| | | return dto; |
| | | |
| | | //var result = Convert.ToInt32(_intSum); |
| | | //if (result <= 0) throw new Exception(_strMsg); |
| | | |
| | | //return _strMsg; |
| | | |
| | | //return 0; |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | throw new Exception(ex.Message); |
| | | } |
| | | finally |
| | | { |
| | | conn.Close(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |