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);
        }
Esempio n. 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 GetRequsitionDetails(long?reqId)
        {
            IEnumerable <RequsitionDetailDTO> requsitionDetailDTO = _requsitionDetailBusiness.GetAllReqDetailByOrgId(OrgId).Where(rqd => reqId == null || reqId == 0 || rqd.ReqInfoId == reqId).Select(d => new RequsitionDetailDTO
            {
                ReqDetailId  = d.ReqDetailId,
                ItemTypeId   = d.ItemTypeId.Value,
                ItemTypeName = (_itemTypeBusiness.GetItemType(d.ItemTypeId.Value, OrgId).ItemName),
                ItemId       = d.ItemId.Value,
                ItemName     = (_itemBusiness.GetItemOneByOrgId(d.ItemId.Value, OrgId).ItemName),
                Quantity     = d.Quantity.Value,
                UnitName     = (_unitBusiness.GetUnitOneByOrgId(d.UnitId.Value, OrgId).UnitSymbol)
            }).ToList();
            List <RequsitionDetailViewModel> requsitionDetailViewModels = new List <RequsitionDetailViewModel>();

            AutoMapper.Mapper.Map(requsitionDetailDTO, requsitionDetailViewModels);

            ViewBag.RequisitionStatus = _requsitionInfoBusiness.GetRequisitionById(reqId.Value, OrgId).StateStatus;

            return(PartialView("_GetRequsitionDetails", requsitionDetailViewModels));
        }