public bool SaveProductionStockInByProductionRequistion(long reqId, string status, long orgId, long userId)
        {
            var reqInfo   = _requsitionInfoBusiness.GetRequisitionById(reqId, orgId);
            var reqDetail = _requsitionDetailBusiness.GetRequsitionDetailByReqId(reqId, orgId).ToList();

            if (reqInfo != null && reqInfo.StateStatus == "Approved" && reqDetail.Count > 0)
            {
                List <ProductionStockDetailDTO> productionStockDetailDTOs = new List <ProductionStockDetailDTO>();
                foreach (var item in reqDetail)
                {
                    ProductionStockDetailDTO productionStockDetailDTO = new ProductionStockDetailDTO
                    {
                        WarehouseId      = reqInfo.WarehouseId,
                        ItemTypeId       = item.ItemTypeId,
                        ItemId           = item.ItemId,
                        OrganizationId   = orgId,
                        EUserId          = userId,
                        UnitId           = item.UnitId,
                        StockStatus      = "Stock-In",
                        Remarks          = item.Remarks,
                        Quantity         = (int)item.Quantity.Value,
                        RefferenceNumber = reqInfo.ReqInfoCode
                    };
                    productionStockDetailDTOs.Add(productionStockDetailDTO);
                }
                if (SaveProductionStockIn(productionStockDetailDTOs, userId, orgId) == true)
                {
                    return(_requsitionInfoBusiness.SaveRequisitionStatus(reqId, status, orgId));
                }
            }
            return(false);
        }
Exemple #2
0
        public bool SaveWarehouseStockOutByProductionRequistion(long reqId, string status, long orgId, long userId)
        {
            var reqInfo   = _requsitionInfoBusiness.GetRequisitionById(reqId, orgId);
            var reqDetail = _requsitionDetailBusiness.GetRequsitionDetailByReqId(reqId, orgId);

            if (reqInfo != null && reqDetail.Count() > 0)
            {
                List <WarehouseStockDetailDTO> stockDetailDTOs = new List <WarehouseStockDetailDTO>();
                foreach (var item in reqDetail)
                {
                    WarehouseStockDetailDTO stockDetailDTO = new WarehouseStockDetailDTO
                    {
                        WarehouseId      = reqInfo.WarehouseId,
                        ItemTypeId       = item.ItemTypeId.Value,
                        ItemId           = item.ItemId,
                        UnitId           = item.UnitId.Value,
                        OrganizationId   = item.OrganizationId,
                        Quantity         = (int)item.Quantity.Value,
                        EUserId          = userId,
                        EntryDate        = DateTime.Now,
                        Remarks          = "Stock Out By Production Requistion " + "(" + reqInfo.ReqInfoCode + ")",
                        RefferenceNumber = reqInfo.ReqInfoCode,
                        StockStatus      = "Stock-Out"
                    };

                    stockDetailDTOs.Add(stockDetailDTO);
                }
                if (SaveWarehouseStockOut(stockDetailDTOs, userId, orgId, "Production Requistion") == true)
                {
                    return(_requsitionInfoBusiness.SaveRequisitionStatus(reqId, status, orgId));
                }
            }
            return(false);
        }
        public ActionResult SaveRequisitionStatus(long reqId, string status)
        {
            bool IsSuccess = false;

            if (reqId > 0 && !string.IsNullOrEmpty(status) && status == "Accepted")
            {
                IsSuccess = _productionStockDetailBusiness.SaveProductionStockInByProductionRequistion(reqId, status, OrgId, UserId);
            }
            else
            {
                IsSuccess = _requsitionInfoBusiness.SaveRequisitionStatus(reqId, status, OrgId);
            }
            return(Json(IsSuccess));
        }
        public ActionResult SaveRequisitionStatus(long reqId, string status)
        {
            bool IsSuccess = false;

            if (reqId > 0 && !string.IsNullOrEmpty(status))
            {
                if (status == "Decline" || status == "Recheck")
                {
                    IsSuccess = _requsitionInfoBusiness.SaveRequisitionStatus(reqId, status, OrgId);
                }
                else
                {
                    IsSuccess = _warehouseStockDetailBusiness.SaveWarehouseStockOutByProductionRequistion(reqId, status, OrgId, UserId);
                }
            }
            return(Json(IsSuccess));
        }