private ProductionLinesModel GetProductionLine(int lineId)
        {
            ProductionLinesModel model = new ProductionLinesModel();

            using (ProductionLineService service = new ProductionLineService())
            {
                var dto = service.Get(lineId);
                model = Mapper.Map <ProductionLinesDto, ProductionLinesModel>(dto);
            }
            return(model);
        }
        private ProductionLinesModel GetProductionLine(int prodLineId)
        {
            ProductionLinesModel productionLine = new ProductionLinesModel();

            using (ProductionLineService service = new ProductionLineService())
            {
                var dto = service.Get(prodLineId);
                productionLine = Mapper.Map <ProductionLinesDto, ProductionLinesModel>(dto);
            }
            return(productionLine);
        }
        public JsonResult UpdateProdLineResult(ProductionLineManagementModel model)
        {
            TPO.Web.Core.ResponseMessage responseMessage;

            try
            {
                using (ProductionLineService svc = new ProductionLineService())
                {
                    var dto = svc.Get(model.Id);
                    dto = AutoMapper.Mapper.Map <ProductionLineManagementModel, ProductionLinesDto>(model, dto);

                    using (ProdLineTypeService typeSvc = new ProdLineTypeService())
                    {
                        ProdLineTypeDto typeDto = typeSvc.Get(dto.LineTypeID);
                        if (typeDto != null)
                        {
                            switch (typeDto.ProdLineTypeCode)
                            {
                            case "TPO":
                            case "RW":
                            {
                                switch (typeDto.ProdLineTypeCode)
                                {
                                case "TPO":
                                {
                                    dto.TPOMorC = model.TPOLineRolls;
                                }
                                break;

                                case "RW":
                                {
                                    dto.TPOMorC = model.RollsProcessed;
                                }
                                break;
                                }
                                dto.RCComp = "NA";
                            }
                            break;

                            case "RC":
                            case "CO":
                            {
                                switch (typeDto.ProdLineTypeCode)
                                {
                                case "RC":
                                {
                                    dto.RCComp = model.Compatibilizer;
                                }
                                break;

                                case "CO":
                                {
                                    dto.RCComp = model.Adhesive;
                                }
                                break;
                                }
                                dto.TPOMorC = "NA";
                            }
                            break;

                            default:
                            {
                                dto.TPOMorC = "NA";
                                dto.RCComp  = "NA";
                            }
                            break;
                            }
                        }
                    }

                    dto.ModifiedBy   = CurrentUser;
                    dto.LastModified = DateTime.Now;

                    if (dto.ID > 0)
                    {
                        svc.Update(dto);
                    }
                    else
                    {
                        dto.RepOrder = 1;

                        dto.DateEntered = DateTime.Now;
                        dto.EnteredBy   = CurrentUser;
                        dto.PlantID     = CurrentPlantId;
                        dto.ID          = svc.Add(dto);
                    }

                    model = AutoMapper.Mapper.Map <ProductionLinesDto, ProductionLineManagementModel>(dto);
                }

                responseMessage = SetResponseMesssage(ActionTypeMessage.SuccessfulSave);
            }
            catch (Exception exc)
            {
                responseMessage = SetResponseMesssage(ActionTypeMessage.FailedSave, exc.Message);
            }

            model.ResponseMessage = responseMessage;

            return(Json(model, JsonRequestBehavior.AllowGet));
        }
Example #4
0
        public JsonResult GridByType(int lineID, int?rows, int?page)
        {
            rows = rows ?? DefaultPageSize;
            page = page ?? DefaultPage;

            int lineDescription;

            List <CurrentScrimViewModel>    list          = new List <CurrentScrimViewModel>();
            List <TPOCurrentRawMaterialDto> materialslist = new List <TPOCurrentRawMaterialDto>();

            if (lineID != null)
            {
                using (var service = new ProductionLineService())
                {
                    lineDescription = service.Get(lineID).ID;
                }

                using (var service = new TPOCurrentRawMaterialService())
                {
                    materialslist = service.GetAll().Where(q => q.LineID == lineDescription).ToList();
                }

                foreach (var dto in materialslist)
                {
                    RawMaterialReceivedDto rawMaterialReceivedDto = new RawMaterialReceivedDto();
                    RawMaterialDto         rawMaterialDto         = new RawMaterialDto();

                    CurrentScrimViewModel csvm = new CurrentScrimViewModel();

                    csvm.Id      = dto.ID;
                    csvm.PlantId = CurrentPlantId;

                    using (var service = new RawMaterialReceivedService())
                    {
                        rawMaterialReceivedDto = service.Get(dto.RawMaterialReceivedID ?? 0);
                        csvm.LotNumber         = rawMaterialReceivedDto.LotNumber;
                        csvm.RawMaterialID     = rawMaterialReceivedDto.Id;
                    }

                    using (var service = new RawMaterialService())
                    {
                        rawMaterialDto       = service.Get(Convert.ToInt32(rawMaterialReceivedDto.RawMaterialId));
                        csvm.RawMaterialCode = rawMaterialDto.Code;
                    }

                    csvm.EnteredBy    = dto.EnteredBy;
                    csvm.ModifiedBy   = dto.ModifiedBy;
                    csvm.DateEntered  = dto.DateEntered;
                    csvm.LastModified = dto.LastModified;

                    list.Add(csvm);
                }
            }

            int total;

            total = list.Count();
            List <CurrentScrimViewModel> currentPageDtos = new List <CurrentScrimViewModel>();

            if (rows.HasValue)
            {
                currentPageDtos.AddRange(list.OrderByDescending(r => r.DateEntered).Skip((page.Value - 1) * rows.Value).Take(rows.Value).ToList());
            }
            else
            {
                currentPageDtos.AddRange(list);
            }

            return(BuildJsonResult(currentPageDtos, total));
        }
Example #5
0
        public JsonResult CurrentScrimAjaxCreate(string id, int lineId)
        {
            ResponseMessage responseMessage;

            try
            {
                CurrentScrimViewModel currentSrimViewModel = JsonConvert.DeserializeObject <CurrentScrimViewModel>(id);

                if (currentSrimViewModel != null)
                {
                    TPOCurrentRawMaterialDto tpoCurrentRawMaterialdto = new TPOCurrentRawMaterialDto();

                    if (currentSrimViewModel.Id > 0)
                    {
                        using (TPOCurrentRawMaterialService service = new TPOCurrentRawMaterialService())
                        {
                            tpoCurrentRawMaterialdto = service.Get(currentSrimViewModel.Id);
                        }

                        using (RawMaterialReceivedService service = new RawMaterialReceivedService())
                        {
                            RawMaterialReceivedDto rawMaterialDto = new RawMaterialReceivedDto();
                            rawMaterialDto =
                                service.GetAll()
                                .Where(q => q.Id == Convert.ToInt32(currentSrimViewModel.LotNumber))
                                .ToList()
                                .FirstOrDefault();

                            tpoCurrentRawMaterialdto.RawMaterialReceivedID = rawMaterialDto.Id;
                        }
                    }
                    else
                    {
                        tpoCurrentRawMaterialdto.PlantID = CurrentPlantId;

                        using (ProductionLineService service = new ProductionLineService())
                        {
                            tpoCurrentRawMaterialdto.LineID = service.Get(lineId).ID;
                        }

                        using (RawMaterialReceivedService service = new RawMaterialReceivedService())
                        {
                            RawMaterialReceivedDto rawMaterialDto = new RawMaterialReceivedDto();
                            rawMaterialDto =
                                service.GetAll()
                                .Where(q => q.Id == Convert.ToInt32(currentSrimViewModel.LotNumber))
                                .ToList()
                                .FirstOrDefault();

                            tpoCurrentRawMaterialdto.RawMaterialReceivedID = rawMaterialDto.Id;
                        }
                    }

                    using (TPOCurrentScrimService service = new TPOCurrentScrimService())
                    {
                        if (currentSrimViewModel.Id > 0)
                        {
                            service.UpdateTPOCurrentRawMaterial(tpoCurrentRawMaterialdto);
                        }
                        else
                        {
                            service.AddTPOCurrentRawMaterial(tpoCurrentRawMaterialdto);
                        }
                    }
                }
                responseMessage = SetResponseMesssage(ActionTypeMessage.SuccessfulSave);
            }
            catch (Exception exc)
            {
                responseMessage = SetResponseMesssage(ActionTypeMessage.FailedSave, exc.Message);
            }

            return(Json(responseMessage, JsonRequestBehavior.AllowGet));
        }
Example #6
0
        public JsonResult GetWorkOrderShiftData(int lineID, int shiftID, int workOrderID, DateTime prodDate)
        {
            WorkOrderShiftDataModel model = new WorkOrderShiftDataModel();

            //Set default units of measure
            using (UnitOfMeasureService svc = new UnitOfMeasureService())
            {
                var lengthDefault = svc.GetDefaultByTypeCode("L");
                if (lengthDefault != null)
                {
                    model.LengthUnitOfMeasure = lengthDefault.Code;
                }
                var weightDefault = svc.GetDefaultByTypeCode("W");
                if (weightDefault != null)
                {
                    model.WeightUnitOfMeasure = weightDefault.Code;
                }
            }

            //Get production line
            ProductionLinesDto lineDto = null;

            using (ProductionLineService lineSvc = new ProductionLineService())
            {
                lineDto = lineSvc.Get(lineID);
            }
            if (lineDto != null)
            {
                List <TPOCProductRollDto> rollDtos = new List <TPOCProductRollDto>();
                using (TPOCProductRollService rollSvc = new TPOCProductRollService())
                {
                    if (lineDto.TPOMorC == "M")
                    {
                        //Get master rolls
                        rollDtos.AddRange(rollSvc.GetMasterRollsByShift(lineID, shiftID, prodDate));
                    }
                    else
                    {
                        //Get child rolls
                        rollDtos.AddRange(rollSvc.GetChildRollsByShift(lineID, shiftID, prodDate));
                    }
                }
                //Filter for rolls specific to the work order
                var workOrderRolls = rollDtos.Where(r => r.WorkOrderID == workOrderID).ToList();
                model.RollCount1      = workOrderRolls.Count;
                model.Length1         = workOrderRolls.Sum(r => r.Length);
                model.Weight1         = workOrderRolls.Sum(r => r.Weight);
                model.ShiftRollWeight = rollDtos.Sum(r => r.Weight);

                //Get scraps
                List <TPOLineScrapDto> scrapDtos = new List <TPOLineScrapDto>();
                using (TPOLineScrapService scrapSvc = new TPOLineScrapService())
                {
                    scrapDtos.AddRange(scrapSvc.GetByShift(shiftID, prodDate));
                }
                //Filter for scraps specific to the work order
                var woScraps = scrapDtos.Where(s => s.WorkOrderID == workOrderID).ToList();
                for (int i = 0; i < woScraps.Count; i++)
                {
                    switch (woScraps[i].TPOLineScrapTypeDescription)
                    {
                    case "Second":
                    {
                        model.Length2 += woScraps[i].Length;
                        model.Weight2 += woScraps[i].Weight;
                    } break;

                    case "Third":
                    {
                        model.Length3 += woScraps[i].Length;
                        model.Weight3 += woScraps[i].Weight;
                    } break;

                    case "Fourth":
                    {
                        model.Length4 += woScraps[i].Length;
                        model.Weight4 += woScraps[i].Weight;
                    } break;
                    }
                }
                model.ShiftScrapWeight = scrapDtos.Sum(s => s.Weight);

                //Get downtime
                List <DownTimeDto> dtDtos = new List <DownTimeDto>();
                using (DownTimeService dtSvc = new DownTimeService())
                {
                    dtDtos.AddRange(dtSvc.GetByShift(lineID, shiftID, prodDate));
                }

                var woDowntime = dtDtos.Where(dt => dt.WorkOrderID == workOrderID).ToList();
                model.DownTimeMinutes      = woDowntime.Sum(dt => dt.DownTimeMinutes);
                model.ShiftDownTimeMinutes = dtDtos.Sum(dt => dt.DownTimeMinutes);

                //Get production line schedule
                List <ProductionLineScheduleDto> plSchedDtos = new List <ProductionLineScheduleDto>();
                using (ProductionLineScheduleService plSchedSvc = new ProductionLineScheduleService())
                {
                    plSchedDtos.AddRange(plSchedSvc.GetByShift(lineID, shiftID, prodDate));
                }

                model.ScheduledRunTime = plSchedDtos.Sum(s => s.MinutesScheduled);

                //Check if feeder entry forms need to be used
                if (lineDto.LineDescCode == "TPO")
                {
                    model.RMUse = true;
                    List <TPOFormulationLineProductDto> formDtos = new List <TPOFormulationLineProductDto>();
                    using (TPOFormulationLineProductService formSvc = new TPOFormulationLineProductService())
                    {
                        formDtos.AddRange(formSvc.GetByWorkOrder(lineID, workOrderID));
                    }
                    if (formDtos.Count > 0)
                    {
                        model.Form      = formDtos.First().TPOFormulationID;
                        model.Extruders = formDtos.First().TPOFormulationExtruders;
                    }

                    List <WorkOrderShiftDataDto> eorDtos = new List <WorkOrderShiftDataDto>();
                    using (WorkOrderShiftDataService eorSvc = new WorkOrderShiftDataService())
                    {
                        eorDtos.AddRange(eorSvc.GetByShift(lineID, shiftID, prodDate));

                        if (eorDtos.Count == 0)
                        {
                            eorSvc.Add(new WorkOrderShiftDataDto()
                            {
                                LineID         = lineID,
                                ProductionDate = prodDate,
                                ShiftID        = shiftID,
                                WorkOrderID    = workOrderID,
                                PlantID        = CurrentPlantId,
                                EnteredBy      = CurrentUser,
                                DateEntered    = DateTime.Now,
                                ModifiedBy     = CurrentUser,
                                LastModified   = DateTime.Now
                            });
                        }
                        else
                        {
                            model.ScrimA = eorDtos.First().ScrimAreaUsed;
                            model.ScrimW = eorDtos.First().ScrimWeightUsed;
                            model.Resin  = eorDtos.First().DrainedResin;
                        }
                    }
                }
            }
            return(Json(model, JsonRequestBehavior.AllowGet));
        }