Example #1
0
        public GL_BuildPlanDTO AddOrUpdateBuildPlan(dynamic values)
        {
            GL_BuildPlanDTO dto          = JsonConvert.DeserializeObject <GL_BuildPlanDTO>(values.ToString());
            string          errorMessage = string.Empty;

            GoldenLine_BuildPlanUpdateType updateType = GoldenLine_BuildPlanUpdateType.None;

            switch (dto.UpdateType)
            {
            case 1:
                updateType = GoldenLine_BuildPlanUpdateType.PlanOutput;
                break;

            case 2:
                updateType = GoldenLine_BuildPlanUpdateType.PlanHC;
                break;

            case 3:
                updateType = GoldenLine_BuildPlanUpdateType.ActualHC;
                break;
            }

            dto = _goldenLineService.AddOrUpdateBuildPlan(dto, updateType, out errorMessage);
            if (string.IsNullOrEmpty(errorMessage))
            {
                return(dto);
            }
            else
            {
                return(null);
            }
        }
Example #2
0
        // Add or update build plan entity
        public GL_BuildPlanDTO AddOrUpdateBuildPlan(GL_BuildPlanDTO dto, GoldenLine_BuildPlanUpdateType updateType, out string errorMessage)
        {
            errorMessage = string.Empty;
            GL_BuildPlan entity = AutoMapper.Mapper.Map <GL_BuildPlan>(dto);
            // Query
            GL_BuildPlan foundBuildPlan = _buildPlanRepository.GetMany(x => x.LineID == entity.LineID && x.StartTime == entity.StartTime).FirstOrDefault();

            try
            {
                GL_BuildPlan entityContext;
                if (foundBuildPlan == null)
                {
                    entityContext = _buildPlanRepository.Add(entity);
                }
                else
                {
                    entityContext = foundBuildPlan;
                    switch (updateType)
                    {
                    case GoldenLine_BuildPlanUpdateType.PlanOutput:
                        entityContext.PlanOutput = entity.PlanOutput;
                        break;

                    case GoldenLine_BuildPlanUpdateType.PlanHC:
                        entityContext.PlanHC = entity.PlanHC;
                        break;

                    case GoldenLine_BuildPlanUpdateType.ActualHC:
                        entityContext.ActualHC = entity.ActualHC;
                        break;
                    }
                }
                var returnDto = AutoMapper.Mapper.Map <GL_BuildPlanDTO>(entityContext);
                return(returnDto);
            }
            catch (Exception ex)
            {
                errorMessage = ex.Message;
                return(null);
            }
        }