public ProjectResponse InsertProjectConvert(ProjectEntity project) { var response = new ProjectResponse { Acknowledge = AcknowledgeType.Success }; try { var projects = ProjectDao.GetProjectsByProjectCodeObjectType(project.ProjectCode, project.ObjectType); if (projects != null) { response.Acknowledge = AcknowledgeType.Failure; switch (project.ObjectType) { case 1: response.Message = @"Mã CTMT " + project.ProjectCode + @" đã tồn tại!"; break; case 2: response.Message = @"Mã dự án " + project.ProjectCode + @" đã tồn tại!"; break; case 3: response.Message = @"Mã HMCT " + project.ProjectCode + @" đã tồn tại!"; break; } return(response); } if (!project.Validate()) { foreach (string error in project.ValidationErrors) { response.Message += error + Environment.NewLine; } response.Acknowledge = AcknowledgeType.Failure; return(response); } response.Message = ProjectDao.InsertProject(project); if (!string.IsNullOrEmpty(response.Message)) { response.Acknowledge = AcknowledgeType.Failure; return(response); } response.ProjectId = project.ProjectId; return(response); } catch (Exception ex) { response.Message = ex.Message; return(response); } }
/// <summary> /// Inserts the project. /// </summary> /// <param name="project">The project.</param> /// <returns></returns> public ProjectResponse InsertProject(ProjectEntity project) { var response = new ProjectResponse { Acknowledge = AcknowledgeType.Success }; try { var projects = ProjectDao.GetProjectsByProjectCodeObjectType(project.ProjectCode, project.ObjectType); if (projects != null) { response.Acknowledge = AcknowledgeType.Failure; switch (project.ObjectType) { case 1: response.Message = @"Mã CTMT " + project.ProjectCode + @" đã tồn tại!"; break; case 2: response.Message = @"Mã dự án " + project.ProjectCode + @" đã tồn tại!"; break; case 3: response.Message = @"Mã HMCT " + project.ProjectCode + @" đã tồn tại!"; break; } return(response); } if (!project.Validate()) { foreach (string error in project.ValidationErrors) { response.Message += error + Environment.NewLine; } response.Acknowledge = AcknowledgeType.Failure; return(response); } project.ProjectId = Guid.NewGuid().ToString(); response.Message = ProjectDao.InsertProject(project); #region insert bank if (project.ProjectBanks.Count() > 0) { project.ProjectBanks.ForEach(item => { var bank = new BankEntity() { BankId = Guid.NewGuid().ToString(), BankAccount = item.BankAccount, BankName = item.BankName, IsActive = true, ProjectId = project.ProjectId, IsOpenInBank = true }; BankDAO.InsertBank(bank); }); } #endregion if (!string.IsNullOrEmpty(response.Message)) { response.Acknowledge = AcknowledgeType.Failure; return(response); } response.ProjectId = project.ProjectId; return(response); } catch (Exception ex) { response.Message = ex.Message; return(response); } }
/// <summary> /// Updates the project. /// </summary> /// <param name="project">The project.</param> /// <returns></returns> public ProjectResponse UpdateProject(ProjectEntity project, bool editBank = false) { var response = new ProjectResponse { Acknowledge = AcknowledgeType.Success }; try { var projects = ProjectDao.GetProjectsByProjectCodeObjectType(project.ProjectCode.Trim(), project.ObjectType); if ((projects != null) && projects.ProjectId != project.ProjectId) { response.Acknowledge = AcknowledgeType.Failure; switch (project.ObjectType) { case 1: response.Message = @"Mã CTMT " + project.ProjectCode.Trim() + @" đã tồn tại!"; break; case 2: response.Message = @"Mã dự án " + project.ProjectCode.Trim() + @" đã tồn tại!"; break; case 3: response.Message = @"Mã HMCT " + project.ProjectCode.Trim() + @" đã tồn tại!"; break; } return(response); } if (!project.Validate()) { foreach (string error in project.ValidationErrors) { response.Message += error + Environment.NewLine; } response.Acknowledge = AcknowledgeType.Failure; return(response); } response.Message = ProjectDao.UpdateProject(project); // lay ra danh sach bank cu if (editBank) { var oldBanks = BankDAO.GetProjectBank(project.ProjectId); oldBanks = oldBanks.Where(o => project.ProjectBanks.Count() == 0 || !project.ProjectBanks.Any(pb => o.BankId == pb.BankId)).ToList(); if (oldBanks.Count() > 0) { for (var i = 0; i < oldBanks.Count(); i++) { var bank = oldBanks[i]; response.Message = BankDAO.DeleteBank(bank); if (!string.IsNullOrEmpty(response.Message)) { if (response.Message.Contains("FK")) { response.Message = @"Bạn không thể xóa tài khoản " + bank.BankAccount + " vì đã có phát sinh trong chứng từ hoặc danh mục liên quan!"; } response.Acknowledge = AcknowledgeType.Failure; return(response); } } } ; #region insert bank if (project.ProjectBanks.Count() > 0) { project.ProjectBanks.ForEach(item => { if (item.BankId == null || item.BankId == Guid.Empty.ToString()) { var bank = new BankEntity() { BankId = Guid.NewGuid().ToString(), BankAccount = item.BankAccount, BankName = item.BankName, IsActive = true, ProjectId = project.ProjectId, IsOpenInBank = true, SortBank = item.SortBank, }; BankDAO.InsertBank(bank); } else { var bank = new BankEntity() { BankId = item.BankId, BankAccount = item.BankAccount, BankName = item.BankName, IsActive = true, ProjectId = project.ProjectId, IsOpenInBank = true, SortBank = item.SortBank, }; BankDAO.UpdateBank(bank); } }); } } #endregion if (!string.IsNullOrEmpty(response.Message)) { response.Acknowledge = AcknowledgeType.Failure; return(response); } response.ProjectId = project.ProjectId; return(response); } catch (Exception ex) { response.Message = ex.Message; return(response); } }