Beispiel #1
0
        public async Task <ActionResultResponse> InsertOrUpdateWarehouseLimit(string tenantId, string warehouseId, string creatorId, string creatorFullName,
                                                                              string creatorAvatar, WarehouseLimitMeta warehouseLimitMeta)
        {
            var isWarehouseExists = await _warehouseRepository.CheckExists(warehouseId, tenantId);

            if (!isWarehouseExists)
            {
                return(new ActionResultResponse <string>(-1, _warehouseResourceService.GetString("Warehouse does not exists.")));
            }

            var info = await _warehouseLimitRepository.GetInfo(warehouseId, warehouseLimitMeta.ProductId, warehouseLimitMeta.UnitId, tenantId);

            if (info == null)
            {
                //insert
                var warehouseLimit = new WarehouseLimit
                {
                    TenantId        = tenantId,
                    WarehouseId     = warehouseId,
                    ProductId       = warehouseLimitMeta.ProductId.Trim(),
                    UnitId          = warehouseLimitMeta.UnitId.Trim(),
                    Quantity        = warehouseLimitMeta.Quantity,
                    CreatorId       = creatorId,
                    CreatorFullName = creatorFullName
                };
                var result = await _warehouseLimitRepository.Insert(warehouseLimit);

                if (result <= 0)
                {
                    return(new ActionResultResponse(result,
                                                    _sharedResourceService.GetString(ErrorMessage.SomethingWentWrong)));
                }
            }
            else
            {
                //update
                if (info.TenantId != tenantId)
                {
                    return(new ActionResultResponse(-2,
                                                    _warehouseResourceService.GetString(ErrorMessage.NotHavePermission)));
                }

                if (info.WarehouseId != warehouseId)
                {
                    return(new ActionResultResponse <string>(-4,
                                                             _warehouseResourceService.GetString(ErrorMessage.NotHavePermission)));
                }

                info.Quantity           = warehouseLimitMeta.Quantity;
                info.LastUpdateTime     = DateTime.Now;
                info.LastUpdateUserId   = creatorId;
                info.LastUpdateFullName = creatorFullName;
                await _warehouseLimitRepository.Update(info);
            }

            return(new ActionResultResponse <string>(1, _warehouseResourceService.GetString("Update warehouse limit successful.")));
        }
Beispiel #2
0
 public async Task <int> Update(WarehouseLimit warehouseLimit)
 {
     return(await Context.SaveChangesAsync());
 }
Beispiel #3
0
 public async Task <int> Insert(WarehouseLimit warehouseLimit)
 {
     _warehouseLimitRepository.Create(warehouseLimit);
     return(await Context.SaveChangesAsync());
 }