yanjinhui
9 天以前 4babfcfde8b26c755850e0066f1c07fac38e96a2
н¨Îļþ¼Ð/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/DeliveryOrderServices.cs
@@ -227,7 +227,6 @@
                        if (materielInfo == null) throw new Exception($"未找到药品编码【{detail.goods_no}】的信息");
                        if (!Enum.IsDefined(typeof(MaterielSourceTypeEnum), materielInfo.MaterielSourceType))
                            throw new Exception($"请设置药品编号【{detail.goods_no}】的属性分类");
                        if (materielInfo.BoxQty < 1) throw new Exception($"请设置药品编号【{detail.goods_no}】的箱规数量");
                        #endregion
                        #region å¤§ä»¶
                        if (materielInfo.MaterielSourceType == MaterielSourceTypeEnum.PurchasePart)//如果物料是大件
@@ -309,6 +308,7 @@
                        #endregion
                        else
                        {
                            if (materielInfo.BoxQty < 1) throw new Exception($"请设置药品编号【{detail.goods_no}】的箱规数量");
                            List<Dt_SupplyTask> supplyTasks = new List<Dt_SupplyTask>();
                            Dt_DeliveryOrderDetail orderDetail = null;
                            Dt_DeliveryOrderDetail orderDetailLK = null;
@@ -854,6 +854,12 @@
            return content;
        }
        /// <summary>
        /// pad出库完成
        /// </summary>
        /// <param name="saveModel"></param>
        /// <returns></returns>
        public WebResponseContent OutFinish(SaveModel saveModel)
        {
            WebResponseContent content = new WebResponseContent();
@@ -941,7 +947,9 @@
                supplyTask.TaskStatus = SupplyStatusEnum.OutFinish.ObjToInt();
                _supplyTaskService.Repository.DeleteAndMoveIntoHty(supplyTask, OperateTypeEnum.人工完成);
                #region åº“存批次
                #region åº“存批次 å¦‚果任务类型是调拨出库任务(8)就不修改批次库存
                if (supplyTask.TaskType != TaskTypeEnum.AllocatOut.ObjToInt())
                {
                Dt_Inventory_Batch inventory_Batch = _inventory_BatchServices.Repository.QueryFirst(x => x.BatchNo == inventoryInfo.BatchNo && x.MaterielCode == inventoryInfo.MaterielCode);
                if (inventory_Batch != null)
                {
@@ -951,6 +959,7 @@
                        _inventory_BatchServices.DeleteData(inventory_Batch);
                    else
                        _inventory_BatchServices.UpdateData(inventory_Batch);
                    }
                }
                #endregion
                if (supplyTask.WarehouseCode == WarehouseEnum.立库.ObjToInt().ToString("000"))
@@ -971,6 +980,11 @@
            return content;
        }
        /// <summary>
        /// äººå·¥åœ¨å‡ºåº“单中点击完成按钮实现上报
        /// </summary>
        /// <param name="key">id</param>
        /// <returns></returns>
        public WebResponseContent FinishOutOrder(int key)
        {
            WebResponseContent content = new WebResponseContent();
@@ -979,16 +993,30 @@
                Dt_DeliveryOrder deliveryOrder = BaseDal.QueryFirst(x => x.Id == key);
                List<Dt_DeliveryOrder> deliveryOrders = Db.Queryable<Dt_DeliveryOrder>().Where(x => x.Out_no == deliveryOrder.Out_no).Includes(x => x.Details).ToList();//找出所有出库单号相同的出库单
                _unitOfWorkManage.BeginTran();
                foreach (var item in deliveryOrders)
                {
                    if (item.Out_type==OutOrderTypeEnum.Allocate.ObjToInt().ToString())
                    {
                        if (item.Details!=null)
                        {
                            _deliveryOrderDetailServices.Repository.DeleteAndMoveIntoHty(item.Details, OperateTypeEnum.人工完成);
                            item.Details =null;
                        }
                    }
                    else
                {
                    if (item.Details != null)
                        _deliveryOrderDetailServices.Repository.DeleteAndMoveIntoHty(item.Details, OperateTypeEnum.人工完成);
                    item.Modifier = App.User.UserName;
                    item.ModifyDate = DateTime.Now;
                    item.Details = null;
                }
                BaseDal.DeleteAndMoveIntoHty(deliveryOrders, OperateTypeEnum.人工完成);
                }
                var url = "http://121.37.118.63:80/GYZ2/95fck/outOrderOk";
                var requestDate = new
                {
                    order_no = deliveryOrder.Out_no