Esempio n. 1
0
        /// <summary>
        ///导出库存变更数据
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public Response <GetAdjustmentDetailByConditionResponse> ExportAdjustmentByCondition(GetAdjustmentByConditionRequest request)
        {
            Response <GetAdjustmentDetailByConditionResponse> response = new Response <GetAdjustmentDetailByConditionResponse>()
            {
                Result = new GetAdjustmentDetailByConditionResponse()
            };

            if (request == null || request.SearchCondition == null)
            {
                ArgumentNullException ex = new ArgumentNullException("GetExportByConditionRequest request");
                LogError(ex);
                response.ErrorCode = ErrorCode.Argument;
                response.Exception = ex;
                return(response);
            }
            try
            {
                AdjustmentManagementAccessor accessor = new AdjustmentManagementAccessor();
                response.Result    = accessor.ExportadjustByCondition(request.SearchCondition);
                response.IsSuccess = true;
            }
            catch (Exception ex)
            {
                LogError(ex);
                response.Exception = ex;
                response.IsSuccess = false;
                response.ErrorCode = ErrorCode.Technical;
            }
            return(response);
        }
Esempio n. 2
0
        //明细单条的查看或者编辑
        public Response <AdjustmentAndAdjustmentDetail> GetAdjustmentInfos(GetAdjustmentByConditionRequest request)
        {
            Response <AdjustmentAndAdjustmentDetail> response = new Response <AdjustmentAndAdjustmentDetail>();

            if (request == null)
            {
                ArgumentNullException ex = new ArgumentNullException("GetAdjustmentByConditionRequest request");
                LogError(ex);
                response.ErrorCode = ErrorCode.Argument;
                response.Exception = ex;
                return(response);
            }

            try
            {
                AdjustmentManagementAccessor accessor = new AdjustmentManagementAccessor();
                response.Result    = accessor.GetAdjustmentInfos(request.ID);
                response.IsSuccess = true;
            }
            catch (Exception ex)
            {
                LogError(ex);
                response.IsSuccess = false;
                response.ErrorCode = ErrorCode.Technical;
            }

            return(response);
        }
Esempio n. 3
0
        //批量完成
        public Response <bool> PLComplet(string ID, string type)
        {
            Response <bool> response = new Response <bool>();

            try
            {
                string result = new AdjustmentManagementAccessor().PLComplet(ID, type);
                if (result.Contains("提交成功"))
                {
                    response.IsSuccess      = true;
                    response.SuccessMessage = "操作成功";
                }
                else
                {
                    response.IsSuccess      = false;
                    response.SuccessMessage = result;
                }
            }
            catch (Exception ex)
            {
                LogError(ex);
                response.IsSuccess = false;
                response.ErrorCode = ErrorCode.Technical;
            }
            return(response);
        }
Esempio n. 4
0
        public Response <GetAdjustmentDetailByConditionResponse> GetAdjustmentByCondition(GetAdjustmentByConditionRequest request)
        {
            Response <GetAdjustmentDetailByConditionResponse> response = new Response <GetAdjustmentDetailByConditionResponse>()
            {
                Result = new GetAdjustmentDetailByConditionResponse()
            };

            if (request == null || request.SearchCondition == null)
            {
                ArgumentNullException ex = new ArgumentNullException("GetReceiptByConditionRequest request");
                LogError(ex);
                response.ErrorCode = ErrorCode.Argument;
                response.Exception = ex;
                return(response);
            }

            try
            {
                AdjustmentManagementAccessor accessor = new AdjustmentManagementAccessor();
                int RowCount;

                response.Result           = accessor.GetadjustByCondition(request.SearchCondition, request.PageIndex, request.PageSize, out RowCount);
                response.Result.PageCount = RowCount % request.PageSize == 0 ? RowCount / request.PageSize : RowCount / request.PageSize + 1;
                response.Result.PageIndex = request.PageIndex;
                response.IsSuccess        = true;
            }
            catch (Exception ex)
            {
                LogError(ex);
                response.Exception = ex;
                response.IsSuccess = false;
                response.ErrorCode = ErrorCode.Technical;
            }
            return(response);
        }
Esempio n. 5
0
        //批量取消操作
        public bool Cancels(string asnid)
        {
            bool ve = true;

            try
            {
                ve = new AdjustmentManagementAccessor().Cancels(asnid);
            }
            catch (Exception ex)
            {
                LogError(ex);
            }
            return(ve);
        }
Esempio n. 6
0
        /// <summary>
        /// 提交
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public Response <string> UpdateAndInsertInventory(AddAdjustmentandAdjustmentDetailRequest request, string Inventorytype)
        {
            Response <string> response = new Response <string>();
            string            message  = "";

            if (request == null || request.adjustmentDetails == null || !request.adjustmentDetails.Any())
            {
                ArgumentNullException ex = new ArgumentNullException("AddInventroyRequest request");
                LogError(ex);
                response.ErrorCode = ErrorCode.Argument;
                response.Exception = ex;
                return(response);
            }
            try
            {
                message = new AdjustmentManagementAccessor().UpdateAndInsertInventory(request, Inventorytype);
                if (message.Contains("提交成功"))
                {
                    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);
        }
Esempio n. 7
0
        /// <summary>
        /// 更新暂存
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public Response <string> UpdateAdjustmentANDAdjustmentDetail(AddAdjustmentandAdjustmentDetailRequest request)
        {
            Response <string> response = new Response <string>();
            string            message  = "";

            if (request == null || request.adjustment == null || !request.adjustment.Any())
            {
                ArgumentNullException ex = new ArgumentNullException("UpdateAdjustmentANDAdjustmentDetail request");
                LogError(ex);
                response.ErrorCode = ErrorCode.Argument;
                response.Exception = ex;
                return(response);
            }
            try
            {
                message = new AdjustmentManagementAccessor().UpdateAdjustmentANDAdjustmentDetail(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);
        }
        /// <summary>
        /// 移库
        /// </summary>
        /// <param name="CustomerID"></param>
        /// <param name="WarehouseName"></param>
        /// <param name="BoxNumber"></param>
        /// <param name="Location"></param>
        /// <param name="Creator"></param>
        /// <returns></returns>
        public int MoveLocation(long CustomerID, string WarehouseName, string BoxNumber, string Location, string Creator)
        {
            try
            {
                string SqlCheckLocation = @"select wl.* from WMS_Warehouse w left join WMS_Warehouse_Location wl
               on w.ID = wl.WarehouseID where wl.Location = '" + Location + @"'  and w.WarehouseName='" + WarehouseName + "' ";
                if (this.ScanDataTable(SqlCheckLocation).Rows.Count < 1)
                {
                    return(2);
                }
                string sqlCheck = (@"select * from WMS_Inventory_103 where  Warehouse='" + WarehouseName + @"' and Location='" + BoxNumber + @"'
                and InventoryType!=9");
                IEnumerable <Inventorys> inventorys = this.ScanDataTable(sqlCheck).ConvertToEntityCollection <Inventorys>();
                //提交前查看是否还有数据Check
                if (inventorys == null || inventorys.Count() == 0)
                {
                    return(0);
                }
                string AdjustmentNumber = "ADJ" + DateTime.Now.Ticks;
                //新建库存移动单
                string SqlAdjustment = (@"
              DECLARE @AID bigint; 
             insert into [WMS_Adjustment] ([AdjustmentNumber]
            ,[CustomerID]
            ,[CustomerName]
            ,[Warehouse]
            ,[Status]
            ,[AdjustmentType]
            ,[AdjustmentReason]
            ,[AdjustmentTime]
            ,[IsHold]
            ,[Creator]
            ,[CreateTime] 
            ,[Remark] ,Str3) values('" + AdjustmentNumber + @"'
            ,'" + inventorys.First().CustomerID + @"'
            ,'" + inventorys.First().CustomerName + @"'
            ,'" + inventorys.First().Warehouse + @"'
            ,1
            ,'库存移动单'
            ,'RF主动移库'
            ,getdate()
            ,0
            ,'" + Creator + @"'
            ,getdate()
            ,'RF主动移库','QQQQQQ' ) 
            set @AID=@@IDENTITY
            insert into  WMS_AdjustmentDetail ([AID]
            ,[AdjustmentNumber]
            ,[CustomerID]
            ,[CustomerName]
            ,[FromLot]
            ,[ToLot]
            ,[SKU]
            ,[UPC]
            ,[BatchNumber]
            ,[BoxNumber]
            ,[GoodsName]
            ,[FromWarehouse]
            ,[ToWarehouse]
            ,[FromArea]
            ,[ToArea]
            ,[FromLocation]
            ,[ToLocation]
            ,[FromQty]
            ,[ToQty]
            ,[FromGoodsType]
            ,[ToGoodsType]
            ,[Unit]
            ,[Specifications]
            ,[IsHold]
            ,[AdjustmentReason]
            ,[Creator]
            ,[CreateTime],Str3 ) (  select @AID,'" + AdjustmentNumber + @"', CustomerID,CustomerName,null,null,SKU,UPC,BatchNumber,BoxNumber,GoodsName,Warehouse,Warehouse,Area,Area,
             Location,'" + Location + @"',Qty,Qty,GoodsType,GoodsType,Unit,Specifications,0,'','" + Creator + @"',getdate(),Str3 from WMS_Inventory_103 where    InventoryType=1 and Warehouse='" + WarehouseName + "' and   Location='" + BoxNumber + @"' )
             select * from WMS_Adjustment where [CustomerID]=" + CustomerID + " and AdjustmentNumber='" + AdjustmentNumber + @"'");
                //SqlAdjustment += (@"");
                Adjustment adjustment = this.ScanDataTable(SqlAdjustment).ConvertToEntity <Adjustment>();

                AdjustmentManagementAccessor adjustmentDetail = new AdjustmentManagementAccessor();
                string str = adjustmentDetail.Complets(adjustment.ID, "库存移动单");

                if (str.Contains("提交成功"))
                {
                    return(1);
                }
                else
                {
                    string UpdateadjustmentSql = (@" update WMS_Adjustment set  Status=-1  where AdjustmentNumber='" + AdjustmentNumber + @"' and CustomerID=" + CustomerID);
                    this.ScanDataTable(UpdateadjustmentSql);
                    return(0);
                }
                //return this.ScanExecuteNonQuery(sqlCheck);
                //return dt.ConvertToEntityCollection<Inventorys>();
            }
            catch (Exception ex)
            {
                SysLogWriter.Error("MoveLocation(Dao层)" + Creator + ex.ToString());
            }
            return(0);
        }