Пример #1
0
        public void ShelfBllTestMethod()
        {
            BaseData <CommodityCode> baseDataCommodityCode = GetBaseData();


            BaseData <ShelfTask> baseDataShelfTask = ShelfBll.GetInstance().GetShelfTask("OS20190721000052");

            BaseData <ShelfTaskCommodityDetail> baseDataShelfTaskCommodityDetail = ShelfBll.GetInstance().GetShelfTaskCommodityDetail(baseDataShelfTask);

            ShelfBll.GetInstance().GetShelfTaskChange(baseDataCommodityCode, baseDataShelfTask.body.objects[0], baseDataShelfTaskCommodityDetail);

            BasePutData <ShelfTask> putData = ShelfBll.GetInstance().PutShelfTask(baseDataShelfTask.body.objects[0]);
            BasePostData <CommodityInventoryChange> basePostData = ShelfBll.GetInstance().CreateShelfTaskCommodityInventoryChange(baseDataCommodityCode, baseDataShelfTask.body.objects[0], true);

            JsonSerializerSettings jsetting = new JsonSerializerSettings
            {
                NullValueHandling = NullValueHandling.Ignore
            };

            string ret = JsonConvert.SerializeObject(new ShelfTask
            {
                Status           = "上架",
                AbnormalCauses   = "商品缺失",
                AbnormalDescribe = "异常描述"
            }, Formatting.Indented, jsetting);
        }
Пример #2
0
        /// <summary>
        /// 更新拣货任务单
        /// </summary>
        /// <param name="baseDataPickTask">最后结果集</param>
        /// <returns></returns>
        public BasePutData <PickTask> PutPickTask(PickTask pickTask)
        {
            PickTask task = new PickTask
            {
                id         = pickTask.id,
                BillStatus = pickTask.BillStatus,
                version    = pickTask.version
            };

            if (pickTask.BillStatus == DocumentStatus.异常.ToString() && pickTask.AbnormalCauses != "")
            {
                task.AbnormalCauses = pickTask.AbnormalCauses;
            }

            //当任务单状态为已完成时,携带完成时间进行更新
            if (pickTask.BillStatus == DocumentStatus.已完成.ToString())
            {
                task.FinishDate = GetDateTimeNow();
            }

            BasePutData <PickTask> basePutData = HttpHelper.GetInstance().Put(task);

            if (basePutData.code != 0)
            {
                LogUtils.Error("PutPickTask " + basePutData.message);
            }

            return(basePutData);
        }
        /// <summary>
        /// 更新调拨上架任务单
        /// </summary>
        /// <param name="allotShelf"></param>
        /// <returns></returns>
        public BasePutData <AllotShelf> PutAllotShelf(AllotShelf allotShelf)
        {
            AllotShelf task = new AllotShelf
            {
                id      = allotShelf.id,
                Status  = allotShelf.Status,
                version = allotShelf.version
            };

            if (allotShelf.Status == AllotShelfStatusEnum.异常.ToString() && allotShelf.AbnormalCauses != "")
            {
                task.AbnormalCauses = allotShelf.AbnormalCauses;
            }

            if (allotShelf.Status == AllotShelfStatusEnum.已完成.ToString())
            {
                task.FinishDate = GetDateTimeNow();
            }

            BasePutData <AllotShelf> basePutData = HttpHelper.GetInstance().Put(task);

            if (basePutData.code != 0)
            {
                LogUtils.Error("AllotShelf " + basePutData.message);
            }

            return(basePutData);
        }
Пример #4
0
        /// <summary>
        /// 更新上架任务单
        /// </summary>
        /// <param name="shelfTask"></param>
        /// <param name="abnormalCauses"></param>
        /// <param name="bAutoSubmit">是否是主动提交</param>
        /// <returns></returns>
        public BasePutData <ShelfTask> PutShelfTask(ShelfTask shelfTask)
        {
            ShelfTask task = new ShelfTask
            {
                id      = shelfTask.id,
                Status  = shelfTask.Status,
                version = shelfTask.version
            };

            if (shelfTask.Status == DocumentStatus.异常.ToString() && shelfTask.AbnormalCauses != "")
            {
                task.AbnormalCauses = shelfTask.AbnormalCauses;
            }

            //当任务单状态为已完成时,携带完成时间进行更新
            if (shelfTask.Status == DocumentStatus.已完成.ToString())
            {
                task.FinishDate = GetDateTimeNow();
            }

            BasePutData <ShelfTask> basePutData = HttpHelper.GetInstance().Put(task);

            if (basePutData.code != 0)
            {
                LogUtils.Error("PutShelfTask 失败! " + basePutData.message);
            }
            return(basePutData);
        }
Пример #5
0
        public void PickBllTestMethod()
        {
            BaseData <CommodityCode> baseDataCommodityCode = GetBaseData();


            BaseData <PickTask> baseDataPickTask = PickBll.GetInstance().GetPickTask("ST20190721000031");

            BaseData <PickCommodity> baseDataPickTaskCommodityDetail = PickBll.GetInstance().GetPickTaskCommodityDetail(baseDataPickTask);

            PickBll.GetInstance().GetPickTaskChange(baseDataCommodityCode, baseDataPickTask.body.objects[0], baseDataPickTaskCommodityDetail);

            BasePutData <PickTask> putData = PickBll.GetInstance().PutPickTask(baseDataPickTask.body.objects[0]);
            BasePostData <CommodityInventoryChange> basePostData = PickBll.GetInstance().CreatePickTaskCommodityInventoryChange(baseDataCommodityCode, baseDataPickTask.body.objects[0], true);
        }
        /// <summary>
        /// 结束操作,包括主动提交和长时间未操作界面被动提交
        /// </summary>
        /// <param name="bExit">退出登陆还是回到首页</param>
        /// <param name="bAutoSubmit">是否是主动提交</param>
        private void EndOperation(bool bExit, bool bAutoSubmit = true)
        {
            if (isSuccess)
            {
                LoadingDataEvent(this, true);
                BasePostData <CommodityInventoryChange> basePostData = PickBll.GetInstance().CreatePickTaskCommodityInventoryChange(bdCommodityCode, pickTask, bAutoSubmit);
                LoadingDataEvent(this, false);

                HttpHelper.GetInstance().ResultCheck(basePostData, out bool isSuccess1);

                if (!isSuccess1)
                {
                    if (bAutoSubmit)
                    {
                        MessageBox.Show("创建取货任务单库存明细失败!" + basePostData.message, "温馨提示", MessageBoxButton.OK);
                    }
                }
                else
                {
                    if (!bAutoSubmit)
                    {
                        pickTask.BillStatus = DocumentStatus.异常.ToString();
                    }

                    pickTask.BillStatus = abnormalOptions.GetAbnormal();

                    LoadingDataEvent(this, true);
                    BasePutData <PickTask> putData = PickBll.GetInstance().PutPickTask(pickTask);
                    LoadingDataEvent(this, false);

                    HttpHelper.GetInstance().ResultCheck(putData, out bool isSuccess2);

                    if (!isSuccess2 && bAutoSubmit)
                    {
                        MessageBox.Show("更新取货任务单失败!" + putData.message, "温馨提示", MessageBoxButton.OK);
                    }
                }

                ConsumingBll.GetInstance().InsertLocalCommodityCodeInfo(bdCommodityCode, "PickTask");
            }

            ApplicationState.SetGoodsInfo(after);
            if (bAutoSubmit)
            {
                EnterPopCloseEvent(this, bExit);
            }
        }
        /// <summary>
        /// 结束操作,包括主动提交和长时间未操作界面被动提交
        /// </summary>
        /// <param name="bExit">退出登陆还是回到首页</param>
        /// <param name="bAutoSubmit">是否是主动提交</param>
        private void EndOperation(bool bExit, bool bAutoSubmit = true)
        {
            if (isSuccess)
            {
                LoadingDataEvent(this, true);
                BasePostData <CommodityInventoryChange> basePostData = AllotShelfBll.GetInstance().SubmitAllotShelfChangeWithOrder(bdCommodityCode, allotShelf, bdCommodityDetail);
                LoadingDataEvent(this, false);

                HttpHelper.GetInstance().ResultCheck(basePostData, out bool isSuccess1);

                if (!isSuccess1)
                {
                    if (bAutoSubmit)
                    {
                        MessageBox.Show("创建调拨上架任务单库存明细失败!" + basePostData.message, "温馨提示", MessageBoxButton.OK);
                    }
                }
                else
                {
                    allotShelf.AbnormalCauses = abnormalOptions.GetAbnormal().ToString();

                    LoadingDataEvent(this, true);
                    BasePutData <AllotShelf> putData = AllotShelfBll.GetInstance().PutAllotShelf(allotShelf);
                    LoadingDataEvent(this, false);

                    HttpHelper.GetInstance().ResultCheck(putData, out bool isSuccess2);

                    if (!isSuccess2 && bAutoSubmit)
                    {
                        MessageBox.Show("更新挑拨上架任务单失败!" + putData.message, "温馨提示", MessageBoxButton.OK);
                    }
                }
            }

            ConsumingBll.GetInstance().InsertLocalCommodityCodeInfo(bdCommodityCode, "AllotShelf");

            ApplicationState.SetGoodsInfo(after);
            if (bAutoSubmit)
            {
                EnterPopCloseEvent(this, bExit);
            }
        }
        /// <summary>
        /// 盘点确认
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void onSubmit(object sender, RoutedEventArgs e)
        {
            LoadingDataEvent(this, true);
            BasePutData <InventoryOrder> bdInventoryOrder = InventoryTaskBll.GetInstance().UpdateInventoryOrderStatus(inventoryOrder);

            LoadingDataEvent(this, false);

            //校验是否含有数据
            HttpHelper.GetInstance().ResultCheck(bdInventoryOrder, out bool isSuccess);

            if (!isSuccess)
            {
                MessageBox.Show("更新盘点任务单失败!" + bdInventoryOrder.message, "温馨提示", MessageBoxButton.OK);
                return;
            }

            LoadingDataEvent(this, true);
            BasePostData <InventoryDetail> bdInventoryDetail = InventoryTaskBll.GetInstance().CreateInventoryDetail(list, inventoryOrder.id);

            LoadingDataEvent(this, false);


            //校验是否含有数据
            HttpHelper.GetInstance().ResultCheck(bdInventoryDetail, out bool isSuccess1);

            if (isSuccess1)
            {
                MessageBox.Show("提交盘点任务单成功!" + bdInventoryDetail.message, "温馨提示", MessageBoxButton.OK);
                BackInventoryEvent(this, null);
            }
            else
            {
                MessageBox.Show("创建盘点商品明细失败!" + bdInventoryDetail.message, "温馨提示", MessageBoxButton.OK);
            }

            return;
        }