Beispiel #1
0
        public async Task <IActionResult> Put([FromRoute] int id, [FromBody] TProjects project)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != project.Id)
            {
                return(BadRequest());
            }
            try
            {
                await _projectsRepository.Update(project);
            }
            catch (DbUpdateConcurrencyException ex)
            {
                if (!await _projectsRepository.Exist(Convert.ToInt32(project.Id)))
                {
                    return(NotFound());
                }
                else
                {
                    log.WriteLog(ex.ToString(), "ProjectsController.txt");
                    return(BadRequest());
                }
            }

            return(Ok(project));
        }
Beispiel #2
0
        public TProjects CreateProject(ProjectModel projectModel, out string message)
        {
            message = string.Empty;

            //Map the project model to entity model
            TProjects projectEntity     = null;
            bool      isExisitngProject = (projectModel.Projectid != null && projectModel.Projectid != 0);

            if (isExisitngProject)
            {
                projectEntity = _projectRepository.Get(projectModel.Projectid.Value);
                if (projectEntity == null)
                {
                    message = "No projects found for update! Please enter a valid project id";
                    return(null);
                }
            }
            else
            {
                projectEntity = new TProjects();
            }

            //Map the model to entity
            projectEntity.Customerid   = projectModel.Customerid;
            projectEntity.Projectdesc  = projectModel.Projectdesc;
            projectEntity.Startdate    = projectModel.Startdate;
            projectEntity.Enddate      = projectModel.Enddate;
            projectEntity.Companyid    = projectModel.Companyid;
            projectEntity.Workflowid   = projectModel.Workflowid;
            projectEntity.Salesmanid   = projectModel.Salesmanid;
            projectEntity.Handymanid   = projectModel.Handymanid;
            projectEntity.Materialcost = projectModel.Materialcost;
            projectEntity.Laborcost    = projectModel.Laborcost;

            projectEntity.Isactive = true;


            if (!isExisitngProject)
            {
                _projectRepository.Insert(projectEntity);
                message = "Project added successfully. Generated project Id is " + projectEntity.Projectid;
            }
            else
            {
                //Its an existing project, update it
                _projectRepository.Update(projectEntity);
                message = "Project details updated successfully";
            }

            return(projectEntity);
        }
Beispiel #3
0
        public async Task <TProjects> Update(TProjects project)
        {
            try
            {
                _unitofWork.ProjectsRepository.Update(project);
                await _unitofWork.Save();

                return(project);
            }
            catch (DbUpdateConcurrencyException ex)
            {
                log.WriteLog(ex.ToString(), "ProjectsRepository.txt");
                return(null);
            }
        }
Beispiel #4
0
        public async Task <IActionResult> Post([FromBody] TProjects project)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            try
            {
                await _projectsRepository.Add(project);

                return(Ok());
            }
            catch (DbUpdateConcurrencyException ex)
            {
                log.WriteLog(ex.ToString(), "ProjectsController.txt");
                return(BadRequest());
            }
        }