Beispiel #1
0
        public async Task <string> Search(string text)
        {
            //var bootstrap = new Bootstrap.BootstrapParams
            //{
            //    limit = 100,
            //    offset = 0,
            //    sort = "CreateDate",
            //    search = text,
            //    order = "desc"
            //};
            //var json = _storagerackServices.PageList(bootstrap);
            //return Content(json);

            var bootstrap = new Bootstrap.BootstrapParams
            {
                limit  = 100,
                offset = 1,
                sort   = "CreateDate",
                search = text,
                order  = "desc"
            };
            IWMSBaseApiAccessor           wmsAccessor = WMSApiManager.GetBaseApiAccessor(bootstrap.storeId.ToString(), _client);
            RouteData <Wms_storagerack[]> result      = await wmsAccessor.GetStorageRackList(
                null, null, bootstrap.offset, bootstrap.limit, bootstrap.search,
                new string[] { bootstrap.sort + " " + bootstrap.order },
                bootstrap.datemin, bootstrap.datemax);

            if (!result.IsSccuess)
            {
                return(new PageGridData().JilToJson());
            }
            return(result.ToGridJson());
        }
Beispiel #2
0
        public async Task <IActionResult> Index(string storeId)
        {
            IWMSBaseApiAccessor             wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId, _client);
            RouteData <Wms_reservoirarea[]> result      = (await wmsAccessor.GetReservoirAreaList(1, 100, null, null, null, null));

            ViewData["reservoirAreaList"] = result.Data;
            return(View());
        }
Beispiel #3
0
        public async Task <IActionResult> Work(long storeId, string pid)
        {
            IWMSBaseApiAccessor baseApiAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client, this.UserDto);
            var model = _stockinServices.QueryableToEntity(c => c.StockInId == SqlFunc.ToInt64(pid) && c.IsDel == 1);

            ViewData["currentStoreId"]    = model.WarehouseId;
            ViewData["reservoirAreaList"] = (await baseApiAccessor.GetReservoirAreaList(1, 20, "", new string[0], "", "")).Data;
            return(View(model));
        }
Beispiel #4
0
        public async Task <string> Search(long storeId, string text)
        {
            IWMSBaseApiAccessor           wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client);
            RouteData <Wms_MaterialDto[]> result      = (await wmsAccessor.GetMateralList(1, 100, text, new string[0], null, null));

            if (!result.IsSccuess)
            {
                return(new PageGridData().JilToJson());
            }
            return(result.ToGridJson());
        }
        public async Task <IActionResult> Index(string storeId)
        {
            long currentStoreId = (long)ViewData["currentStoreId"];

            IWMSBaseApiAccessor             wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId, _client);
            RouteData <Wms_reservoirarea[]> result      = (await wmsAccessor.GetReservoirAreaList(1, 100, null, null, null, null));

            ViewData["reservoirAreaList"] = result.Data;
            //ViewBag.StorageRack = _storagerackServices.QueryableToList(c => c.WarehouseId == currentStoreId && c.IsDel == 1);
            return(View());
        }
        public async Task <OutsideStockCountMaterial[]> QueryPlanMaterialList(StockCountMaterialBootstrapParams bootstrap)
        {
            IWMSBaseApiAccessor baseAccessor        = WMSApiManager.GetBaseApiAccessor(bootstrap.storeId.ToString(), _client);
            RouteData <OutsideStockCountDto> result = await baseAccessor.QueryStockCount(bootstrap.StockCountNo);

            if (!result.IsSccuess || result.Data == null)
            {
                return(new OutsideStockCountMaterial[0]);
            }
            return(result.Data.MaterialList);
        }
Beispiel #7
0
        public async Task <string> ListDetail(int storeId, string pid)
        {
            IWMSBaseApiAccessor wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client);
            RouteData <OutsideStockInQueryResult> result = await wmsAccessor.QueryStockIn(SqlFunc.ToInt64(pid));

            if (!result.IsSccuess)
            {
                return(null);
            }
            return(new PageGridData(result.Data.Details, result.Data.Details.Length).JilToJson());
        }
        public async Task <IActionResult> Index()
        {
            long currentStoreId = (long)ViewData["currentStoreId"];


            IWMSBaseApiAccessor baseAccessor = WMSApiManager.GetBaseApiAccessor(currentStoreId.ToString(), _client);

            ViewBag.ReservoirAreas = (await baseAccessor.GetReservoirAreaList(0, 100, "", null, "", "")).Data;

            return(View());
        }
Beispiel #9
0
        public async Task <string> Search(string storeId, string text)
        {
            IWMSBaseApiAccessor wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client);
            RouteData <OutsideStockOutQueryResult[]> result = await wmsAccessor.QueryStockOutList(null, null, 1, 20, text, new string[0], null, null);

            if (!result.IsSccuess)
            {
                return(new PageGridData().JilToJson());
            }
            return(result.ToGridJson());
        }
        public async Task <PageGridData> QueryPlanList(StockCountBootstrapParams bootstrap)
        {
            IWMSBaseApiAccessor baseAccessor          = WMSApiManager.GetBaseApiAccessor(bootstrap.storeId.ToString(), _client);
            RouteData <OutsideStockCountDto[]> result = await baseAccessor.QueryStockCountList(
                bootstrap.StockCountStatus, bootstrap.pageIndex, bootstrap.limit, bootstrap.search,
                new string[] { bootstrap.sort + " " + bootstrap.order },
                bootstrap.datemin, bootstrap.datemax
                );

            return(result.ToGridData());
        }
        public async Task <IActionResult> BoxBack(long storeId, long inventoryBoxId)
        {
            IWMSBaseApiAccessor          wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client, this.UserDto);
            RouteData <Wms_inventorybox> result      = await wmsAccessor.GetInventoryBox(inventoryBoxId);

            if (!result.IsSccuess)
            {
                return(Json(result));
            }
            Wms_inventorybox     box  = result.Data;
            Wms_inventoryboxTask task = await _client.Queryable <Wms_inventoryboxTask>().FirstAsync(x => x.InventoryBoxId == inventoryBoxId &&
                                                                                                    (x.Status != (int)InventoryBoxTaskStatus.task_canceled &&
                                                                                                     x.Status != (int)InventoryBoxTaskStatus.task_backed));

            if (task == null) //新料箱入库
            {
                if (box.Status == (int)InventoryBoxStatus.None)
                {
                    task = new Wms_inventoryboxTask()
                    {
                        InventoryBoxTaskId = PubId.SnowflakeId,
                        InventoryBoxId     = box.InventoryBoxId,
                        InventoryBoxNo     = box.InventoryBoxNo,
                        ReservoirareaId    = (long)box.ReservoirAreaId,
                        StoragerackId      = (long)box.StorageRackId,
                        Data         = null,
                        OperaterDate = DateTime.Now,
                        OperaterId   = UserDto.UserId,
                        OperaterUser = UserDto.UserName,
                        Status       = InventoryBoxTaskStatus.task_leaved.ToByte()
                    };

                    if (_client.Insertable(task).ExecuteCommand() == 0)
                    {
                        return(Json(YL.Core.Dto.RouteData.From(PubMessages.E0005_DATABASE_INSERT_FAIL, "新料箱入库时任务记录生成失败")));
                    }
                }
                else
                {
                    return(Json(YL.Core.Dto.RouteData.From(PubMessages.E1013_INVENTORYBOXTASK_NOTFOUND)));
                }
            }
            else if (await _client.Queryable <Wms_stockindetail_box>().AnyAsync(x => x.InventoryBoxId == task.InventoryBoxTaskId))
            {
                return(Redirect($"/inventorybox/stockinboxback?storeId={storeId}&inventoryBoxTaskId=" + task.InventoryBoxTaskId));
            }
            else if (await _client.Queryable <Wms_stockoutdetail_box>().AnyAsync(x => x.InventoryBoxId == task.InventoryBoxTaskId))
            {
                return(Redirect($"/inventorybox/stockoutboxback?storeId={storeId}&inventoryBoxTaskId=" + task.InventoryBoxTaskId));
            }
            ViewData["InventoryBoxTaskId"] = task.InventoryBoxTaskId;
            ViewData["currentStoreId"]     = storeId;
            return(View(box));
        }
        public async Task <string> Search(long storeId, string text)
        {
            IWMSBaseApiAccessor            wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client);
            RouteData <Wms_inventorybox[]> result      = (await wmsAccessor.GetInventoryBoxList(
                                                              null, null, null, 1, 20, text, null, null, null));

            if (!result.IsSccuess)
            {
                return(new PageGridData().JilToJson());
            }
            return(result.ToGridJson());
        }
Beispiel #13
0
        public async Task <Wms_MaterialDto[]> MaterialList(Bootstrap.BootstrapParams bootstrap)
        {
            IWMSBaseApiAccessor           wmsAccessor = WMSApiManager.GetBaseApiAccessor(bootstrap.storeId.ToString(), _client);
            RouteData <Wms_MaterialDto[]> result      = (await wmsAccessor.GetMateralList(
                                                             bootstrap.pageIndex, bootstrap.limit, bootstrap.search,
                                                             new string[] { bootstrap.sort + " " + bootstrap.order },
                                                             bootstrap.datemin, bootstrap.datemax));

            if (!result.IsSccuess)
            {
                return(new Wms_MaterialDto[0]);
            }
            return(result.Data);
        }
        public async Task <string> DetailList(long storeId, long id)
        {
            if (id == 0)
            {
                return(PubMessages.E1006_INVENTORYBOX_MISSING.Message);
            }

            IWMSBaseApiAccessor         wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client);
            RouteData <Wms_inventory[]> result      = await wmsAccessor.GetInventoryBoxDetail(id);

            if (!result.IsSccuess)
            {
                return(result.Message);
            }
            return(result.ToGridJson());
        }
Beispiel #15
0
        public async Task <string> GetReservoirarea(string id)
        {
            //var json = _reservoirareaServices.Queryable().Where(c => c.IsDel == 1 && c.WarehouseId == SqlFunc.ToInt64(id))
            //    .Select(c => new { ReservoirAreaId = c.ReservoirAreaId.ToString(), c.ReservoirAreaName })
            //    .ToList();
            //return Content(json.JilToJson());

            IWMSBaseApiAccessor             wmsAccessor = WMSApiManager.GetBaseApiAccessor(id.ToString(), _client);
            RouteData <Wms_reservoirarea[]> result      = (await wmsAccessor.GetReservoirAreaList(1, 100, null, null, null, null));

            if (!result.IsSccuess)
            {
                return(new PageGridData().JilToJson());
            }
            return(result.ToGridJson());
        }
Beispiel #16
0
        public async Task <IActionResult> InventoryBoxList(long storeId, string materialNo)
        {
            ViewBag.StoreId    = storeId;
            ViewBag.MaterialNo = materialNo;
            IWMSOperationApiAccessor        accessor            = WMSApiManager.GetOperationApiAccessor(storeId.ToString(), _client, this.UserDto);
            IWMSBaseApiAccessor             wmsAccessor         = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client);
            RouteData <Wms_reservoirarea[]> reservoirAreaResult = (await wmsAccessor.GetReservoirAreaList(1, 100, null, null, null, null));

            ViewData["reservoirAreaList"] = reservoirAreaResult.Data;
            RouteData <Wms_InventoryBoxMaterialInfo[]> result = await accessor.GetInventoryBoxList(materialNo);

            Wms_InventoryBoxMaterialInfo last = result.Data.FirstOrDefault(x => x.InventoryBoxStatus == (int)InventoryBoxStatus.InPosition);

            ViewBag.Data = JsonConvert.SerializeObject(new Wms_InventoryBoxMaterialInfo[] { last });
            return(View());
        }
Beispiel #17
0
        public async Task <string> List([FromForm] Bootstrap.BootstrapParams bootstrap)
        {
            //var sd = _materialServices.PageList(bootstrap);
            //return Content(sd);

            IWMSBaseApiAccessor           wmsAccessor = WMSApiManager.GetBaseApiAccessor(bootstrap.storeId.ToString(), _client);
            RouteData <Wms_MaterialDto[]> result      = (await wmsAccessor.GetMateralList(
                                                             bootstrap.pageIndex, bootstrap.limit, bootstrap.search,
                                                             new string[] { bootstrap.sort + " " + bootstrap.order },
                                                             bootstrap.datemin, bootstrap.datemax));

            if (!result.IsSccuess)
            {
                return(new PageGridData().JilToJson());
            }
            return(result.ToGridJson());
        }
        public async Task <IActionResult> Add(long storeId, string id)
        {
            ViewData["currentStoreId"] = storeId;
            var model = new Wms_inventorybox();

            if (id.IsEmpty())
            {
                return(View(model));
            }
            else
            {
                IWMSBaseApiAccessor          wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client);
                RouteData <Wms_inventorybox> result      = await wmsAccessor.GetInventoryBox(SqlFunc.ToInt64(id));

                return(View(result.Data));
            }
        }
        public async Task <IActionResult> StockOutBoxBack(long storeId, long inventoryBoxTaskId)
        {
            IWMSOperationApiAccessor         wmsAccessor = WMSApiManager.GetOperationApiAccessor(storeId.ToString(), _client, this.UserDto);
            RouteData <Wms_inventoryboxTask> result      = await wmsAccessor.GetInventoryBoxkTask(inventoryBoxTaskId);

            IWMSBaseApiAccessor          wmsBaseAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client, this.UserDto);
            RouteData <Wms_inventorybox> boxResult       = await wmsBaseAccessor.GetInventoryBox(result.Data.InventoryBoxId);

            if (!boxResult.IsSccuess)
            {
                return(Json(boxResult.Message));
            }

            ViewData["currentStoreId"]     = storeId;
            ViewData["InventoryBoxTaskId"] = inventoryBoxTaskId;
            return(View(boxResult.Data));
        }
        public async Task <IActionResult> Detail(long storeId, long id)
        {
            IWMSBaseApiAccessor wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client);

            if (id == 0)
            {
                return(Content("调用错误"));
            }
            RouteData <Wms_inventorybox> result = (await wmsAccessor.GetInventoryBox(id));

            if (!result.IsSccuess)
            {
                return(Content(result.Message));
            }
            ViewData["currentStoreId"] = storeId;
            return(View(result.Data));
        }
        public async Task <PageGridData> List([FromForm] PubParams.InventoryBootstrapParams bootstrap)
        {
            //var sd = _inventoryrecordServices.PageList(bootstrap);
            //return Content(sd);

            IWMSBaseApiAccessor wmsAccessor = WMSApiManager.GetBaseApiAccessor(bootstrap.storeId.ToString(), _client);
            RouteData <OutsideInventoryRecordDto[]> result = (await wmsAccessor.QueryInventoryRecord(
                                                                  null, null, null, null, bootstrap.pageIndex, bootstrap.limit, bootstrap.search,
                                                                  new string[] { bootstrap.sort + " " + bootstrap.order },
                                                                  bootstrap.datemin, bootstrap.datemax));

            if (!result.IsSccuess)
            {
                return(new PageGridData());
            }
            return(result.ToGridData());
        }
Beispiel #22
0
        public async Task <string> List([FromForm] StorageRackBootstrapParams bootstrap)
        {
            //var sd = _storagerackServices.PageList(bootstrap);
            //return Content(sd);

            IWMSBaseApiAccessor           wmsAccessor = WMSApiManager.GetBaseApiAccessor(bootstrap.storeId.ToString(), _client);
            RouteData <Wms_storagerack[]> result      = await wmsAccessor.GetStorageRackList(
                bootstrap.ReservoirAreaId, bootstrap.Status, bootstrap.pageIndex, bootstrap.limit, bootstrap.search,
                new string[] { bootstrap.sort + " " + bootstrap.order },
                bootstrap.datemin, bootstrap.datemax);

            if (!result.IsSccuess)
            {
                return(new PageGridData().JilToJson());
            }
            return(result.ToGridJson());
        }
Beispiel #23
0
        public async Task <string> List([FromForm] PubParams.StockInBootstrapParams bootstrap)
        {
            //var sd = _stockinServices.PageList(bootstrap);
            //return Content(sd);

            IWMSBaseApiAccessor wmsAccessor = WMSApiManager.GetBaseApiAccessor(bootstrap.storeId.ToString(), _client);
            RouteData <OutsideStockInQueryResult[]> result = await wmsAccessor.QueryStockInList(
                null, null, bootstrap.pageIndex, bootstrap.limit, bootstrap.search,
                new string[] { bootstrap.sort + " " + bootstrap.order },
                bootstrap.datemin, bootstrap.datemax);

            if (!result.IsSccuess)
            {
                return(new PageGridData().JilToJson());
            }
            return(result.ToGridJson());
        }
Beispiel #24
0
        public async Task <IActionResult> Add(string id, string storeId)
        {
            IWMSBaseApiAccessor             wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId, _client);
            RouteData <Wms_reservoirarea[]> result      = (await wmsAccessor.GetReservoirAreaList(1, 100, null, null, null, null));

            ViewData["reservoirAreaList"] = result.Data;

            var model = new Wms_storagerack();

            if (id.IsEmpty())
            {
                return(View(model));
            }
            else
            {
                model = _storagerackServices.QueryableToEntity(c => c.StorageRackId == SqlFunc.ToInt64(id));
                return(View(model));
            }
        }
Beispiel #25
0
        public async Task <string> GetStoragerack(long storeId, long id)
        {
            //var json = _storagerackServices.Queryable().Where(c => c.IsDel == 1 && c.ReservoirAreaId == SqlFunc.ToInt64(id))
            //    .Select(c => new { value = c.StorageRackId.ToString(), name = c.StorageRackName })
            //    .ToList();
            //return Content(json.JilToJson());

            IWMSBaseApiAccessor wmsAccessor = WMSApiManager.GetBaseApiAccessor(storeId.ToString(), _client);

            if (wmsAccessor == null)
            {
                return("");
            }
            RouteData <Wms_storagerack[]> result = (await wmsAccessor.GetStorageRackList(SqlFunc.ToInt64(id), null, 1, 500, null, null, null, null));

            if (!result.IsSccuess)
            {
                return(new PageGridData().JilToJson());
            }
            return(result.Data.JilToJson());
        }
Beispiel #26
0
        public async Task <string> List([FromForm] PubParams.InventoryBootstrapParams bootstrap)
        {
            try
            {
                //var sd = _inventoryServices.PageList(bootstrap);
                //return Content(sd);
                long?materialId = string.IsNullOrWhiteSpace(bootstrap.MaterialId) ? (long?)null : long.Parse(bootstrap.MaterialId);

                IWMSBaseApiAccessor wmsAccessor          = WMSApiManager.GetBaseApiAccessor(bootstrap.storeId.ToString(), _client);
                RouteData <OutsideInventoryDto[]> result = (await wmsAccessor.QueryInventory(
                                                                null, null, null, materialId, bootstrap.pageIndex, bootstrap.limit, bootstrap.search,
                                                                new string[] { bootstrap.sort + " " + bootstrap.order }, bootstrap.datemin, bootstrap.datemax));
                if (!result.IsSccuess)
                {
                    return(new PageGridData().JilToJson());
                }
                return(result.ToGridJson());
            }
            catch (Exception ex)
            {
                return(ex.ToString());
            }
        }
Beispiel #27
0
        public async Task <string> DetailList(string id, MESTaskTypes mesTaskType)
        {
            long searchMesId = id.ToInt64();

            if (id.IsEmptyZero())
            {
                return("");
            }
            //IWMSBaseApiAccessor[] proxies = WMSApiManager.GetAll(_client);

            if (mesTaskType == MESTaskTypes.StockIn)
            {
                List <Wms_stockin> stockins = await _client.Queryable <Wms_stockin>().Where(x => x.MesTaskId == searchMesId).ToListAsync();

                List <OutsideStockInQueryResult> totalResult = new List <OutsideStockInQueryResult>();
                foreach (Wms_stockin stockin in stockins)
                {
                    IWMSBaseApiAccessor proxy     = WMSApiManager.GetBaseApiAccessor(stockin.WarehouseId.ToString(), _client, this.UserDto);
                    Wms_warehouse       warehouse = proxy.Warehouse;
                    try
                    {
                        RouteData <OutsideStockInQueryResult> result = await proxy.QueryStockIn(stockin.StockInId);

                        result.Data.WarehouseName = warehouse.WarehouseName;
                        totalResult.Add(result.Data);
                    }
                    catch (Exception ex) {
                        this._logger.LogError(ex, $"查询入库信息失败,WarhouseId={stockin.WarehouseId},StockInId={stockin.StockInId}");
                        OutsideStockInQueryResult resultData = new OutsideStockInQueryResult()
                        {
                            WarehouseName   = warehouse.WarehouseName,
                            StockInId       = stockin.StockInId.ToString(),
                            StockInNo       = stockin.StockInNo,
                            StockInTypeName = stockin.StockInTypeName,
                            StockInStatus   = (StockInStatus)stockin.StockInStatus,
                            MesTaskId       = stockin.MesTaskId.ToString(),
                            OrderNo         = stockin.OrderNo,
                            Remark          = "详细信息查询失败,仅显示本地信息"
                        };
                        totalResult.Add(resultData);
                    }
                }
                return(JsonConvert.SerializeObject(Bootstrap.GridData(totalResult, totalResult.Count)));
            }
            else if (mesTaskType == MESTaskTypes.StockOut)
            {
                List <Wms_stockout> stockOuts = await _client.Queryable <Wms_stockout>().Where(x => x.MesTaskId == searchMesId).ToListAsync();

                List <OutsideStockOutQueryResult> totalResult = new List <OutsideStockOutQueryResult>();
                foreach (Wms_stockout stockout in stockOuts)
                {
                    IWMSBaseApiAccessor proxy     = WMSApiManager.GetBaseApiAccessor(stockout.WarehouseId.ToString(), _client, this.UserDto);
                    Wms_warehouse       warehouse = proxy.Warehouse;
                    try
                    {
                        RouteData <OutsideStockOutQueryResult> result = await proxy.QueryStockOut(stockout.StockOutId);

                        result.Data.WarehouseName = warehouse.WarehouseName;
                        totalResult.Add(result.Data);
                    }
                    catch (Exception ex) {
                        this._logger.LogError(ex, $"查询出库信息失败,WarhouseId={stockout.WarehouseId},StockOutId={stockout.StockOutId}");
                        OutsideStockOutQueryResult resultData = new OutsideStockOutQueryResult()
                        {
                            WarehouseName    = warehouse.WarehouseName,
                            StockOutId       = stockout.StockOutId.ToString(),
                            StockOutNo       = stockout.StockOutNo,
                            StockOutTypeName = stockout.StockOutTypeName,
                            StockOutStatus   = (StockOutStatus)stockout.StockOutStatus.Value,
                            BatchNumber      = stockout.BatchNumber,
                            BatchPlanId      = stockout.BatchPlanId,
                            MesTaskId        = stockout.MesTaskId.ToString(),
                            WorkNo           = stockout.WorkNo,
                            WorkAreaName     = stockout.WorkAreaName,
                            WorkStationId    = stockout.WorkStationId,
                            OrderNo          = stockout.OrderNo,
                            Remark           = "详细信息查询失败,仅显示本地信息"
                        };
                        totalResult.Add(resultData);
                    }
                }
                return(Bootstrap.GridData(totalResult, totalResult.Count).JilToJson());
            }
            else
            {
                return("");
            }
        }