/// <summary>
        /// 修改批次
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public Response <string> UpdateInventoryBatch(AddInventroyRequest request)
        {
            Response <string> response = new Response <string>();
            string            message  = "";

            try
            {
                message = new InventoryManagementAccessor().UpdateInventoryBatch(request);
                if (message == "")
                {
                    response.Result    = message;
                    response.IsSuccess = true;
                }
                else
                {
                    response.Result    = message;
                    response.IsSuccess = false;
                }
                return(response);
            }
            catch (Exception ex)
            {
                LogError(ex);
                response.IsSuccess = false;
                response.ErrorCode = ErrorCode.Technical;
                response.Result    = message + ex.Message;
            }
            return(response);
        }
Example #2
0
        /// <summary>
        /// 修改批次
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public string UpdateInventoryBatch(AddInventroyRequest request)
        {
            #region 注释
            //using (SqlConnection conn = new SqlConnection(BaseAccessor._dataBase.ConnectionString))
            //{
            //    string message = "";
            //    try
            //    {
            //        SqlCommand cmd = new SqlCommand("Proc_WSM_UpdateInventoryBactch", conn);
            //        cmd.CommandType = CommandType.StoredProcedure;
            //        cmd.Parameters.AddWithValue("@inventrys", request.inventorys.Select(p => new WMSInventoryToDb(p)));
            //        cmd.Parameters[0].SqlDbType = SqlDbType.Structured;
            //        cmd.Parameters.AddWithValue("@CustomerID", request.inventorys.FirstOrDefault().CustomerID);
            //        cmd.Parameters[1].SqlDbType = SqlDbType.BigInt;
            //        cmd.Parameters.AddWithValue("@message", message);
            //        cmd.Parameters[2].SqlDbType = SqlDbType.NVarChar;
            //        cmd.Parameters[2].Direction = ParameterDirection.Output;
            //        cmd.Parameters[2].Size = 500;
            //        cmd.CommandTimeout = 300;
            //        conn.Open();

            //        DataSet ds = new DataSet();
            //        SqlDataAdapter sda = new SqlDataAdapter();
            //        sda.SelectCommand = cmd;
            //        sda.Fill(ds);
            //        message = sda.SelectCommand.Parameters["@message"].Value.ToString();
            //        conn.Close();
            //        return message;
            //    }
            //    catch (Exception ex)
            //    {
            //        return message + "(" + ex.Message + ")";
            //    }

            //}
            #endregion


            string msg      = "";
            int    RowCount = 0;
            string SqlStr   = "";
            foreach (var item in request.inventorys)
            {
                SqlStr += "  UPDATE dbo.WMS_Inventory_88  SET BatchNumber='" + item.str3 + "',DateTime1='" + item.str4 + "' " +
                          "  WHERE CustomerID=" + item.CustomerID + " AND CustomerName='" + item.CustomerName + "' AND Warehouse='" + item.Warehouse + "' " +
                          "  AND Area='" + item.Area + "' AND Location='" + item.Location + "' AND SKU='" + item.SKU + "' AND GoodsType='" + item.GoodsType + "' AND InventoryType=" + item.InventoryType + " " +
                          "  AND isnull(BatchNumber,'')='" + item.str1 + "' AND isnull(Unit,'')='" + item.str2 + "' ";
            }

            SqlConnection conn = new SqlConnection(BaseAccessor._dataBase.ConnectionString);
            conn.Open();
            SqlTransaction transaction = conn.BeginTransaction();
            SqlCommand     cmd         = new SqlCommand(SqlStr, conn);
            cmd.Transaction = transaction;
            try
            {
                RowCount = cmd.ExecuteNonQuery();
                transaction.Commit();
                if (RowCount <= 0)
                {
                    msg = "没有找到需要修改的库存,请刷新重试!";
                }
            }
            catch (Exception ex)
            {
                transaction.Rollback();
                msg = "数据库更新错误:" + ex.Message.ToString();
            }
            finally
            {
                conn.Close();
                transaction.Dispose();
                conn.Dispose();
            }
            return(msg);
        }