/// <summary> /// 增加代办记录 /// </summary> /// <param name="model"></param> /// <returns></returns> public Result <int> AddApproverRecord(Epm_ApproverRecord model) { Result <int> result = new Result <int>(); try { model.CrtCompanyId = CurrentCompanyID.ToLongReq(); model.CrtCompanyName = CurrentCompanyName; model.CreateUserId = CurrentUserID.ToLongReq(); model.CreateUserName = CurrentUserName; model.CreateTime = DateTime.Now; model.OperateUserId = CurrentUserID.ToLongReq(); model.OperateUserName = CurrentUserName; model.OperateTime = DateTime.Now; model.IsDelete = false; var rows = DataOperateBusiness <Epm_ApproverRecord> .Get().Add(model); result.Data = rows; result.Flag = EResultFlag.Success; WriteLog(BusinessType.Approver.GetText(), SystemRight.Add.GetText(), "新增: " + model.Id); } catch (Exception ex) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(ex, "AddApproverRecord"); } return(result); }
/// <summary> /// 添加问题关联模型 /// </summary> /// <param name="model"></param> /// <param name="componentIds"></param> /// <returns></returns> public Result <int> AddQuestionBIM(Epm_QuestionBIM model, string componentIds) { Result <int> result = new Result <int>(); try { if (!string.IsNullOrEmpty(componentIds)) { //首先删除同一模型同一检查详情下的所有模型组件 var componentList = DataOperateBusiness <Epm_QuestionBIM> .Get().GetList(i => i.QuestionId == model.QuestionId && i.BIMId == model.BIMId).ToList(); if (componentList.Count > 0) { foreach (var item in componentList) { item.OperateUserId = CurrentUserID.ToLongReq(); item.OperateUserName = CurrentUserName; item.OperateTime = DateTime.Now; item.DeleteTime = DateTime.Now; } DataOperateBusiness <Epm_QuestionBIM> .Get().DeleteRange(componentList); } //获取组件ID集合 var componentIdList = componentIds.SplitString(","); List <Epm_QuestionBIM> dataList = new List <Epm_QuestionBIM>(); foreach (var item in componentIdList) { Epm_QuestionBIM temp = new Epm_QuestionBIM(); temp = base.SetCurrentUser(temp); temp.CrtCompanyId = CurrentCompanyID.ToLongReq(); temp.CrtCompanyName = CurrentCompanyName; temp.QuestionId = model.QuestionId; temp.BIMId = model.BIMId; temp.BIMName = model.BIMName; temp.ComponentId = item; dataList.Add(temp); } //批量添加问题管理关联模型 var rows = DataOperateBusiness <Epm_QuestionBIM> .Get().AddRange(dataList); result.Data = rows; result.Flag = EResultFlag.Success; WriteLog(BusinessType.Plan.GetText(), SystemRight.Add.GetText(), "新增:添加问题关联模型 " + model.Id); } else { throw new Exception("没有选择关联组件,请选择要关联的组件!"); } } catch (Exception ex) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(ex, "AddQuestionBIM"); } return(result); }
private void ViewToEmp(TrainView view, out Epm_Train model, out List <Epm_TrainCompany> companys) { model = new Epm_Train(); model = SetCurrentUser(model); model.CrtCompanyId = CurrentCompanyID.ToLongReq(); model.CrtCompanyName = CurrentCompanyName; model.CompanyId = CurrentCompanyID.ToLongReq(); model.CompanyName = CurrentCompanyName; model.Id = view.Id; model.CompanyId = view.CompanyId; model.CompanyName = view.CompanyName; model.Content = view.Content; model.CrtCompanyId = view.CrtCompanyId; model.CrtCompanyName = view.CrtCompanyName; model.ProjectId = view.ProjectId; model.ProjectName = view.ProjectName; model.Remark = view.Remark; model.StartTime = view.StartTime; model.State = view.State; model.Title = view.Title; model.TrainCompanyId = view.TrainCompanyId; model.TrainCompanyName = view.TrainCompanyName; model.TrainTypeName = view.TrainTypeName; model.TrainTypeNo = view.TrainTypeNo; model.TrainUserId = view.TrainUserId; model.TrainUserName = view.TrainUserName; model.EndTime = view.EndTime; model.CreateUserId = view.CreateUserId; model.CreateUserName = view.CreateUserName; model.CreateTime = view.CreateTime; companys = new List <Epm_TrainCompany>(); if (!string.IsNullOrWhiteSpace(view.CompanyIds)) { var Ids = view.CompanyIds.Split(',').ToLongList(); var list = DataOperateBasic <Base_Company> .Get().GetList(t => Ids.Contains(t.Id)); foreach (var item in list) { var comany = new Epm_TrainCompany(); base.SetCurrentUser(comany); comany.CrtCompanyId = CurrentCompanyID.ToLongReq(); comany.CrtCompanyName = CurrentCompanyName; comany.CompanyId = item.Id; comany.CompanyName = item.Name; comany.TrainId = view.Id; comany.CompanyCode = item.Code; comany.CompanyType = item.Type; companys.Add(comany); } } }
private void ViewToEmp(ChangeView view, out Epm_Change change, out List <Epm_ChangeCompany> companys) { change = new Epm_Change(); base.SetCurrentUser(change); change.CrtCompanyId = CurrentCompanyID.ToLongReq(); change.CrtCompanyName = CurrentCompanyName; change.Id = view.Id; change.ChangeAmount = view.ChangeAmount; change.ChangeContent = view.ChangeContent; change.ChangeDays = view.ChangeDays; change.ChangeEndTime = view.ChangeEndTime; change.ChangeName = view.ChangeName; change.ChangeNo = view.ChangeNo; change.ChangeReason = view.ChangeReason; change.ChangeStartTime = view.ChangeStartTime; change.ProjectId = view.ProjectId; change.ProjectName = view.ProjectName; change.Remark = view.Remark; change.State = view.State; change.SubmitUserId = view.SubmitUserId; change.SubmitUserName = view.SubmitUserName; change.CreateTime = view.CreateTime; change.CrtCompanyName = view.CrtCompanyName; change.AddAmount = view.AddAmount; change.TotalAmount = view.TotalAmount; change.ReduceAmount = view.ReduceAmount; companys = new List <Epm_ChangeCompany>(); if (view.Epm_ChangeCompany != null) { foreach (var item in view.Epm_ChangeCompany) { var comany = new Epm_ChangeCompany(); base.SetCurrentUser(comany); comany.CrtCompanyId = CurrentCompanyID.ToLongReq(); comany.CrtCompanyName = CurrentCompanyName; comany.CompanyId = item.CompanyId; comany.CompanyName = item.CompanyName; comany.ChangeId = view.Id; comany.CompanyType = item.CompanyType; companys.Add(comany); } } }
private void ViewToEmp(VisaView view, out Epm_Visa visa, out List<Epm_VisaCompany> companys) { visa = new Epm_Visa(); base.SetCurrentUser(visa); visa.ChangeId = view.ChangeId ?? 0; visa.ChangeName = view.ChangeName ?? ""; visa.CrtCompanyId = CurrentCompanyID.ToLongReq(); visa.CrtCompanyName = CurrentCompanyName ?? ""; visa.Id = view.Id; visa.VisaAmount = view.VisaAmount ?? 0; visa.VisaTitle = view.VisaTitle ?? ""; visa.VisaContent = view.VisaContent ?? ""; visa.VisaDays = view.VisaDays ?? 0; visa.VisaEndTime = view.VisaEndTime; visa.VisaNo = view.VisaNo ?? ""; visa.VisaResean = view.VisaResean ?? ""; visa.VisaStartTime = view.VisaStartTime; visa.ProjectId = view.ProjectId ?? 0; visa.ProjectName = view.ProjectName ?? ""; visa.Remark = view.Remark ?? ""; visa.State = view.State; visa.SubmitUserId = view.SubmitUserId; visa.SubmitUserName = view.SubmitUserName ?? ""; visa.VisaTypeName = view.VisaTypeName ?? ""; companys = new List<Epm_VisaCompany>(); if (view.Epm_VisaCompany != null) { foreach (var item in view.Epm_VisaCompany) { var comany = new Epm_VisaCompany(); base.SetCurrentUser(comany); comany.CrtCompanyId = CurrentCompanyID.ToLongReq(); comany.CrtCompanyName = CurrentCompanyName; comany.CompanyId = item.CompanyId; comany.CompanyName = item.CompanyName; comany.VisaId = view.Id; comany.CompanyType = item.CompanyType; companys.Add(comany); } } }
public Result <int> AddApproverBatch(List <Epm_Approver> list) { Result <int> result = new Result <int>(); try { foreach (var item in list) { item.IsApprover = false; item.CrtCompanyId = CurrentCompanyID.ToLongReq(); item.CrtCompanyName = CurrentCompanyName; item.CreateUserId = CurrentUserID.ToLongReq(); item.CreateUserName = CurrentUserName; item.CreateTime = DateTime.Now; item.OperateUserId = CurrentUserID.ToLongReq(); item.OperateUserName = CurrentUserName; item.OperateTime = DateTime.Now; item.IsDelete = false; } var rows = DataOperateBusiness <Epm_Approver> .Get().AddRange(list); Epm_ApproverRecord record = new Epm_ApproverRecord(); record.BusinessId = list[0].BusinessId; record.BusinessType = list[0].BusinessTypeNo; record.BusinessName = list[0].BusinessTypeName; record.BusinessState = list[0].BusinessState.ToString(); record.HandleUserId = CurrentUserID.ToLongReq(); record.HandleUserName = CurrentUserName; AddApproverRecord(record); result.Data = rows; result.Flag = EResultFlag.Success; WriteLog(BusinessType.Approver.GetText(), SystemRight.Add.GetText(), "新增: " + rows + "条待办"); } catch (Exception ex) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(ex, "AddApprover"); } return(result); }
public bool drawingToDraw(Epm_TzConDrawing model, List <Base_Files> fileListFile) { Epm_Draw ed = new Epm_Draw(); SetCreateUser(ed); ed.ProjectId = model.ProjectId; ed.ProjectName = model.ProjectName; // ed.Name = model.; //ed.Desciption = model. //ed.VersionOrder = model.Desciption; ed.VersionNo = "FirstVersion"; ed.VersionName = "首版本"; ed.SubmitUserId = CurrentUser.Id; ed.SubmitUserName = CurrentUser.UserName; ed.SubmitCompanyId = CurrentCompanyID.ToLongReq(); ed.SubmitCompanyName = CurrentCompanyName; ed.SubmitDate = DateTime.Now; ed.DesignCompanyId = model.CompanyId; ed.DesignCompanyName = model.CompanyName; ed.IsNew = true; ed.State = (int)ApprovalState.ApprSuccess; //设置状态为已审核 ed.Remark = model.Remark; ed.CrtCompanyId = model.CompanyId; ed.CrtCompanyName = model.CompanyName; ed.IsDelete = false; ed.OperateTime = DateTime.Now; ed.OperateUserId = CurrentUser.Id; ed.OperateUserName = CurrentUser.UserName; ed.IsValidate = false; ed.CrtCompanyId = CurrentCompanyID.ToLongReq(); ed.CrtCompanyName = CurrentCompanyName; var result = AddDraw(ed, fileListFile);//调用图纸管理新增服务-同步数据 if (result.Data < 1) { return(false); } return(true); }
///<summary> ///修改: ///</summary> /// <param name="model">要修改的model</param> /// <returns>受影响的行数</returns> public Result <int> UpdateMaterial(MaterialView model) { Result <int> result = new Result <int>(); try { var oldModel = DataOperateBusiness <Epm_Material> .Get().GetModel(model.Epm_Material.Id); if (oldModel == null) { throw new Exception("该材料设备验收不存在或已被删除"); } model.Epm_Material = FiterUpdate(oldModel, model.Epm_Material); model.Epm_Material.CompanyId = oldModel.CompanyId; model.Epm_Material.CompanyName = oldModel.CompanyName; var row = DataOperateBusiness <Epm_Material> .Get().Update(model.Epm_Material); if (model.MaterialDetails.Count > 0) { //先删除 var detaileList = DataOperateBusiness <Epm_MaterialDetails> .Get().GetList(p => p.MaterialCheckId == model.Epm_Material.Id); if (detaileList.Any()) { DataOperateBusiness <Epm_MaterialDetails> .Get().DeleteRange(detaileList); } model.MaterialDetails.ForEach(item => { item.MaterialCheckId = model.Epm_Material.Id; item.CrtCompanyId = CurrentCompanyID.ToLongReq(); item.CrtCompanyName = CurrentCompanyName; item.CreateUserId = CurrentUserID.ToLongReq(); item.CreateUserName = CurrentUserName; item.CreateTime = DateTime.Now; item.State = 0; item = SetCurrentUser(item); item = SetCreateUser(item); }); DataOperateBusiness <Epm_MaterialDetails> .Get().AddRange(model.MaterialDetails); } //上传模型 if (model.FileList != null) { //删除之前的附件 DeleteFilesByTable(model.GetType().Name, new List <long>() { model.Epm_Material.Id }); //新增附件 AddFilesByTable(model.Epm_Material, model.FileList); } result.Data = row; result.Flag = EResultFlag.Success; WriteLog(BusinessType.Equipment.GetText(), SystemRight.Add.GetText(), "修改: " + model.Epm_Material.Id); //处理待办 var tempApp = DataOperateBusiness <Epm_Approver> .Get().GetList(t => t.BusinessId == model.Epm_Material.Id && t.IsApprover == false).FirstOrDefault(); if (tempApp != null) { ComplateApprover(tempApp.Id); } if (model.Epm_Material.State == (int)ConfirmState.WaitConfirm) { #region 生成待办 var project = DataOperateBusiness <Epm_Project> .Get().GetModel(model.Epm_Material.ProjectId.Value); List <Epm_Approver> list = new List <Epm_Approver>(); Epm_Approver app = new Epm_Approver(); app.Title = CurrentUserName + "提报了工器具机械验收单,待审核"; app.Content = CurrentUserName + "提报了工器具机械验收单,待审核"; app.SendUserId = CurrentUserID.ToLongReq(); app.SendUserName = CurrentUserName; app.SendTime = DateTime.Now; app.LinkURL = string.Empty; app.BusinessTypeNo = BusinessType.Equipment.ToString(); app.Action = SystemRight.Add.ToString(); app.BusinessTypeName = BusinessType.Equipment.GetText(); app.BusinessState = (int)(ConfirmState.WaitConfirm); app.BusinessId = model.Epm_Material.Id; app.ApproverId = project.ContactUserId; app.ApproverName = project.ContactUserName; app.ProjectId = model.Epm_Material.ProjectId; app.ProjectName = project.Name; list.Add(app); AddApproverBatch(list); WriteLog(BusinessType.Equipment.GetText(), SystemRight.Add.GetText(), "提交工器具机械验收生成待办: " + model.Epm_Material.Id); #endregion #region 消息 Epm_Massage modelMsg = new Epm_Massage(); modelMsg.ReadTime = null; modelMsg.RecId = project.ContactUserId.Value; modelMsg.RecName = project.ContactUserName; modelMsg.RecTime = DateTime.Now; modelMsg.SendId = CurrentUserID.ToLongReq(); modelMsg.SendName = CurrentUserName; modelMsg.SendTime = DateTime.Now; modelMsg.Title = CurrentUserName + "提报了工器具机械验收单,待审核"; modelMsg.Content = CurrentUserName + "提报了工器具机械验收单,待审核"; modelMsg.Type = 2; modelMsg.IsRead = false; modelMsg.BussinessId = model.Epm_Material.Id; modelMsg.BussinesType = BusinessType.Equipment.ToString(); modelMsg.ProjectId = model.Epm_Material.ProjectId.Value; modelMsg.ProjectName = model.Epm_Material.ProjectName; modelMsg = base.SetCurrentUser(modelMsg); modelMsg = base.SetCreateUser(modelMsg); DataOperateBusiness <Epm_Massage> .Get().Add(modelMsg); #endregion #region 发送短信 //Dictionary<string, string> parameters = new Dictionary<string, string>(); //parameters.Add("UserName", CurrentUserName); //WriteSMS(project.ContactUserId.Value, project.CompanyId, MessageStep.MaterialAdd, parameters); #endregion } } catch (Exception e) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(e, "UpdateMaterial"); } return(result); }
///<summary> ///添加: ///</summary> /// <param name="model">要添加的model</param> /// <returns>受影响的行数</returns> public Result <int> AddMaterial(MaterialView model) { Result <int> result = new Result <int>(); try { model.Epm_Material = SetCurrentUser(model.Epm_Material); model.Epm_Material = SetCreateUser(model.Epm_Material); model.Epm_Material.CompanyId = CurrentCompanyID.ToLongReq(); model.Epm_Material.CompanyName = CurrentCompanyName; DataOperateBusiness <Epm_Material> .Get().Add(model.Epm_Material); model.MaterialDetails.ForEach(item => { item.MaterialCheckId = model.Epm_Material.Id; item.CrtCompanyId = CurrentCompanyID.ToLongReq(); item.CrtCompanyName = CurrentCompanyName; item.CreateUserId = CurrentUserID.ToLongReq(); item.CreateUserName = CurrentUserName; item.CreateTime = DateTime.Now; item.State = 0; item = SetCurrentUser(item); item = SetCreateUser(item); }); DataOperateBusiness <Epm_MaterialDetails> .Get().AddRange(model.MaterialDetails); if (model.FileList.Count > 0) { AddFilesByTable(model.Epm_Material, model.FileList); //上传附件 } result.Data = 1; result.Flag = EResultFlag.Success; WriteLog(BusinessType.Equipment.GetText(), SystemRight.Add.GetText(), "新增: " + model.Epm_Material.Id); if (model.Epm_Material.State == (int)ConfirmState.WaitConfirm) { #region 生成待办 var project = DataOperateBusiness <Epm_Project> .Get().GetModel(model.Epm_Material.ProjectId.Value); List <Epm_Approver> list = new List <Epm_Approver>(); Epm_Approver app = new Epm_Approver(); app.Title = CurrentUserName + "提报了工器具机械验收单,待审核"; app.Content = CurrentUserName + "提报了工器具机械验收单,待审核"; app.SendUserId = CurrentUserID.ToLongReq(); app.SendUserName = CurrentUserName; app.SendTime = DateTime.Now; app.LinkURL = string.Empty; app.BusinessTypeNo = BusinessType.Equipment.ToString(); app.Action = SystemRight.Add.ToString(); app.BusinessTypeName = BusinessType.Equipment.GetText(); app.BusinessState = (int)(ConfirmState.WaitConfirm); app.BusinessId = model.Epm_Material.Id; app.ApproverId = project.ContactUserId; app.ApproverName = project.ContactUserName; app.ProjectId = model.Epm_Material.ProjectId; app.ProjectName = project.Name; list.Add(app); AddApproverBatch(list); WriteLog(BusinessType.Equipment.GetText(), SystemRight.Add.GetText(), "提交工器具机械验收生成待办: " + model.Epm_Material.Id); #endregion #region 消息 var waitSend = GetWaitSendMessageList(model.Epm_Material.ProjectId.Value); foreach (var send in waitSend) { Epm_Massage modelMsg = new Epm_Massage(); modelMsg.ReadTime = null; modelMsg.RecId = send.Key; modelMsg.RecName = send.Value; modelMsg.RecTime = DateTime.Now; modelMsg.SendId = CurrentUserID.ToLongReq(); modelMsg.SendName = CurrentUserName; modelMsg.SendTime = DateTime.Now; modelMsg.Title = CurrentUserName + "提报了工器具机械验收单,待审核"; modelMsg.Content = CurrentUserName + "提报了工器具机械验收单,待审核"; modelMsg.Type = 2; modelMsg.IsRead = false; modelMsg.BussinessId = model.Epm_Material.Id; modelMsg.BussinesType = BusinessType.Equipment.ToString(); modelMsg.ProjectId = model.Epm_Material.ProjectId.Value; modelMsg.ProjectName = model.Epm_Material.ProjectName; modelMsg = base.SetCurrentUser(modelMsg); modelMsg = base.SetCreateUser(modelMsg); DataOperateBusiness <Epm_Massage> .Get().Add(modelMsg); } #endregion #region 发送短信 //Dictionary<string, string> parameterSms = new Dictionary<string, string>(); //parameterSms.Add("UserName", CurrentUserName); //WriteSMS(project.ContactUserId.Value, project.CompanyId, MessageStep.MaterialAdd, parameterSms); #endregion } } catch (Exception e) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(e, "AddMaterial"); } return(result); }
///<summary> ///添加: ///</summary> /// <param name="model">要添加的model</param> /// <returns>受影响的行数</returns> public Result <int> AddQuestion(QuestionView model) { Result <int> result = new Result <int>(); try { List <int> statelist = new List <int>() { (int)ApprovalState.WaitAppr, (int)ApprovalState.ApprSuccess }; try { var completion = DataOperateBusiness <Epm_CompletionAcceptance> .Get().GetList(t => t.ProjectId == model.ProjectId && statelist.Contains(t.State.Value)).FirstOrDefault(); if (completion != null) { throw new Exception("沟通项目已发起完工验收,不可操作!"); } if (model == null) { throw new Exception("请填写问题相关内容!"); } if (model.ProjectId <= 0) { throw new Exception("请选择问题项目名称!"); } } catch (Exception ex) { WriteLog(BusinessType.Question.GetText(), SystemRight.Add.GetText(), "字符串截取位置1: " + model.ProjectId); } model.BusinessTypeNo = GetString(model.BusinessTypeNo); var BusinessTypeName = ((BusinessType)Enum.Parse(typeof(BusinessType), model.BusinessTypeNo)).GetText(); Epm_Question question = new Epm_Question() { ProjectId = model.ProjectId, ProjectName = model.ProjectName, Title = model.Title, Description = model.Description, Proposal = model.Proposal, IsAccident = model.IsAccident, BusinessTypeNo = model.BusinessTypeNo, BusinessTypeName = BusinessTypeName, BusinessId = model.BusinessId, SubmitUserId = CurrentUserID.ToLongReq(), SubmitUserName = CurrentUserName, SubmitCompanyId = CurrentCompanyID.ToLongReq(), SubmitCompanyName = CurrentCompanyName, SubmitTime = DateTime.Now, RecCompanyId = model.RecCompanyId, RecCompanyName = model.RecCompanyName, RecUserId = model.RecUserId, RecUserName = model.RecUserName, State = 1, CrtCompanyId = CurrentCompanyID.ToLongReq(), CrtCompanyName = CurrentCompanyName, CreateTime = DateTime.Now, IsDelete = false, ProblemTypeName = model.ProblemTypeName, ProblemTypeNo = model.ProblemTypeNo }; question = SetCurrentUser(question); if (question == null) { throw new Exception("问题沟通!"); } #region 问题关联模型 if (model.QuestionBims != null && model.QuestionBims.Any()) { model.QuestionBims.ForEach(p => { p.Sort = p.Sort ?? 0; p.State = p.State ?? 0; p.CrtCompanyId = question.CrtCompanyId; p.CrtCompanyName = question.CrtCompanyName; p.CreateTime = DateTime.Now; p.CreateUserId = question.CreateUserId; p.CreateUserName = question.CreateUserName; p.OperateUserId = question.OperateUserId; p.OperateUserName = question.OperateUserName; p.OperateTime = DateTime.Now; p.IsDelete = false; }); } #endregion #region 问题协助人员 if (model.QuestionUsers != null && model.QuestionUsers.Any()) { model.QuestionUsers.ForEach(p => { p.State = p.State ?? 0; p.CrtCompanyId = question.CrtCompanyId; p.CrtCompanyName = question.CrtCompanyName; p.CreateTime = DateTime.Now; p.CreateUserId = question.CreateUserId; p.CreateUserName = question.CreateUserName; p.OperateUserId = question.OperateUserId; p.OperateUserName = question.OperateUserName; p.OperateTime = DateTime.Now; p.IsDelete = false; }); } #endregion try { int rows = DataOperateBusiness <Epm_Question> .Get().Add(question); if (model.QuestionBims != null && model.QuestionBims.Any()) { try { model.QuestionBims.ForEach(p => { p.QuestionId = question.Id; p.BIMId = p.ComponentId.Split('_')[0].ToLongReq(); }); DataOperateBusiness <Epm_QuestionBIM> .Get().AddRange(model.QuestionBims); } catch (Exception ex) { WriteLog(BusinessType.Question.GetText(), SystemRight.Add.GetText(), "字符串截取位置2: " + model.QuestionBims[0].ComponentId.Split('_')[0].ToLongReq()); } } if (model.QuestionUsers != null && model.QuestionUsers.Any()) { model.QuestionUsers.ForEach(p => p.QuestionId = question.Id); DataOperateBusiness <Epm_QuestionUser> .Get().AddRange(model.QuestionUsers); } //transaction.Commit(); if (model.Attachs.Any()) { AddFilesByTable(question, model.Attachs); } result.Data = rows; result.Flag = EResultFlag.Success; WriteLog(BusinessType.Question.GetText(), SystemRight.Add.GetText(), "新增: " + model.Id); // TODO:需要处理替换消息模板以及消息类型 #region 生成待办 List <Epm_Approver> list = new List <Epm_Approver>(); Epm_Approver app = new Epm_Approver(); try { var recCompany = DataOperateBusiness <Epm_ProjectCompany> .Get().GetList(t => t.ProjectId == model.ProjectId && t.CompanyId == question.RecCompanyId).FirstOrDefault(); var project = DataOperateBusiness <Epm_Project> .Get().GetModel(model.ProjectId.Value); if (recCompany == null) { if (project != null) { app.ApproverId = project.ContactUserId; app.ApproverName = project.ContactUserName; } } else { if (recCompany != null && recCompany.LinkManId.HasValue) { app.ApproverId = recCompany.LinkManId; app.ApproverName = recCompany.LinkMan; } } } catch (Exception ex) { WriteLog(BusinessType.Question.GetText(), SystemRight.Add.GetText(), "字符串截取位置3: " + model.ProjectId); } app.Title = CurrentUserName + "对" + app.ApproverName + "发起了问题沟通"; app.Content = CurrentUserName + "对" + app.ApproverName + "发起了问题沟通"; app.SendUserId = CurrentUserID.ToLongReq(); app.SendUserName = CurrentUserName; app.SendTime = DateTime.Now; app.LinkURL = string.Empty; app.BusinessTypeNo = BusinessType.Question.ToString(); app.Action = SystemRight.Add.ToString(); app.BusinessTypeName = BusinessType.Question.GetText(); app.BusinessState = (int)(EnumState.Normal); app.BusinessId = question.Id; app.ProjectId = question.ProjectId; app.ProjectName = question.ProjectName; list.Add(app); AddApproverBatch(list); WriteLog(BusinessType.Question.GetText(), SystemRight.Add.GetText(), "提交问题生成待办: " + question.Id); #endregion #region 消息 var waitSend = GetWaitSendMessageList(model.ProjectId.Value); foreach (var send in waitSend) { Epm_Massage modelMsg = new Epm_Massage(); modelMsg.ReadTime = null; modelMsg.RecId = send.Key; modelMsg.RecName = send.Value; modelMsg.RecTime = DateTime.Now; modelMsg.SendId = CurrentUserID.ToLongReq(); modelMsg.SendName = CurrentUserName; modelMsg.SendTime = DateTime.Now; modelMsg.Title = CurrentUserName + "对" + app.ApproverName + "发起了问题沟通"; modelMsg.Content = CurrentUserName + "对" + app.ApproverName + "发起了问题沟通"; modelMsg.Type = 2; modelMsg.IsRead = false; modelMsg.BussinessId = question.Id; modelMsg.BussinesType = BusinessType.Question.ToString(); modelMsg.ProjectId = model.ProjectId.Value; modelMsg.ProjectName = model.ProjectName; modelMsg = base.SetCurrentUser(modelMsg); modelMsg = base.SetCreateUser(modelMsg); DataOperateBusiness <Epm_Massage> .Get().Add(modelMsg); } #endregion } catch (Exception e) { throw new Exception(e.Message); } } catch (Exception ex) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(ex, "AddQuestion"); } return(result); }
///<summary> ///添加: ///</summary> /// <param name="model">要添加的model</param> /// <returns>受影响的行数</returns> public Result <int> AddCompletionAcceptance(Epm_CompletionAcceptance model, List <Base_Files> fileListFile) { Result <int> result = new Result <int>(); try { model = base.SetCurrentUser(model); model.CrtCompanyId = CurrentCompanyID.ToLongReq(); model.CrtCompanyName = CurrentCompanyName; var rows = DataOperateBusiness <Epm_CompletionAcceptance> .Get().Add(model); if (fileListFile != null) { AddFilesByTable(model, fileListFile); } result.Data = rows; result.Flag = EResultFlag.Success; #region 竣工验收协同接口 var XtWorkFlow = System.Configuration.ConfigurationManager.AppSettings.Get("XtWorkFlow"); if (model.State == (int)PreProjectState.WaitApproval && XtWorkFlow == "1") { XtCompletionAcceptanceView view = new XtCompletionAcceptanceView(); var project = DataOperateBusiness <Epm_Project> .Get().GetModel(model.ProjectId.Value); var baseUser = DataOperateBasic <Base_User> .Get().GetModel(model.CreateUserId); if (baseUser == null) { throw new Exception("未找到申请人相关信息!"); } else { view.hr_sqr = baseUser.ObjeId; } view.Name = model.ProjectName; view.SubjectName = project.SubjectName; view.StartDate = string.Format("{0:yyyy-MM-dd}", project.StartDate); view.Remark = project.Remark; view.CompanyName = project.CompanyName; view.ProjectTypeName = project.ProjectTypeName; view.ProjectSubjectName = project.ProjectSubjectName; view.ProjectNatureName = project.ProjectNatureName; view.PMName = project.PMName; view.EndDate = string.Format("{0:yyyy-MM-dd}", project.EndDate); view.Description = project.Description; view.CrtCompanyName = project.CrtCompanyName; view.ContactUserName = project.ContactUserName; view.Address = project.Address; ////上传附件 //if (model.TzAttachs != null && model.TzAttachs.Any()) //{ // string baseFaleUrl = System.Configuration.ConfigurationManager.AppSettings.Get("XtDownloadUrl"); // foreach (var item in model.TzAttachs) // { // string fileUrl = string.Format("{0}?fileId={1}&type={2}", baseFaleUrl, item.Id, item.TypeNo); // view.Temp_TzAttachs = fileUrl + '|' + view.Temp_TzAttachs; // } // if (view.Temp_TzAttachs != null) // { // view.Temp_TzAttachs = view.Temp_TzAttachs.Substring(0, view.Temp_TzAttachs.Length - 1); // } //} //model.WorkFlowId = XtWorkFlowService.CreateTzProjectProposalWorkFlow(view); } #endregion WriteLog(BusinessType.Completed.GetText(), SystemRight.Add.GetText(), "新增: " + model.Id); } catch (Exception ex) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(ex, "AddCompletionAcceptance"); } return(result); }
///<summary> ///添加: ///</summary> /// <param name="model">要添加的model</param> /// <returns>受影响的行数</returns> public Result <int> AddMateriel(MaterielView model) { Result <int> result = new Result <int>(); try { model.Epm_Materiel = SetCurrentUser(model.Epm_Materiel); model.Epm_Materiel.CompanyId = CurrentCompanyID.ToLongReq(); model.Epm_Materiel.CompanyName = CurrentCompanyName; if (model.MaterielDetails.Count > 0) { model.Epm_Materiel.SupplierName = model.MaterielDetails[0].Unit; DataOperateBusiness <Epm_Materiel> .Get().Add(model.Epm_Materiel); foreach (var item in model.MaterielDetails) { item.MaterielReceiveId = model.Epm_Materiel.Id; item.UseSum = Convert.ToInt32(item.Qty) - item.UseSum - item.StayUseSum; item.SupMatApplyId = model.Epm_Materiel.SupMatApplyId; SetCreateUser(item); //修改甲供物资申请详情数据 var tzSupMatApplyList = DataOperateBusiness <Epm_TzSupMatApplyList> .Get().GetModel(item.SupMatApplyListId.Value); if (tzSupMatApplyList != null) { tzSupMatApplyList.UseSum = tzSupMatApplyList.UseSum + item.UseSum; tzSupMatApplyList.StayUseSum = item.StayUseSum; if (tzSupMatApplyList.StayUseSum == 0) { tzSupMatApplyList.UseType = true; } DataOperateBusiness <Epm_TzSupMatApplyList> .Get().Update(tzSupMatApplyList); } } DataOperateBusiness <Epm_MaterielDetails> .Get().AddRange(model.MaterielDetails); var stayList = DataOperateBusiness <Epm_MaterielDetails> .Get().GetList(p => p.SupMatApplyId == model.Epm_Materiel.SupMatApplyId).ToList(); foreach (var temp in stayList) { var tzSupMatApply = DataOperateBusiness <Epm_TzSupMatApplyList> .Get().GetModel(temp.SupMatApplyListId.Value); temp.StayUseSum = tzSupMatApply.StayUseSum; } DataOperateBusiness <Epm_MaterielDetails> .Get().UpdateRange(stayList); //修改甲供物资申请验收状态 var tzSupplyMaterialApply = DataOperateBusiness <Epm_TzSupplyMaterialApply> .Get().GetModel(model.Epm_Materiel.SupMatApplyId.Value); if (tzSupplyMaterialApply != null) { int count = DataOperateBusiness <Epm_TzSupMatApplyList> .Get().GetList(t => t.SupMatApplyId == tzSupplyMaterialApply.Id && t.UseType == false).Count(); if (count == 0) { tzSupplyMaterialApply.UseType = true; DataOperateBusiness <Epm_TzSupplyMaterialApply> .Get().Update(tzSupplyMaterialApply); } } if (model.FileList != null) { AddFilesByTable(model.Epm_Materiel, model.FileList);//上传附件 } result.Data = 1; result.Flag = EResultFlag.Success; if (model.Epm_Materiel.State == (int)ConfirmState.WaitConfirm) { #region 生成待办 var project = DataOperateBusiness <Epm_Project> .Get().GetModel(model.Epm_Materiel.ProjectId.Value); List <Epm_Approver> list = new List <Epm_Approver>(); Epm_Approver app = new Epm_Approver(); app.Title = CurrentUserName + "提报了材料设备验收单,待审核"; app.Content = CurrentUserName + "提报了材料设备验收单,待审核"; app.SendUserId = CurrentUserID.ToLongReq(); app.SendUserName = CurrentUserName; app.SendTime = DateTime.Now; app.LinkURL = string.Empty; app.BusinessTypeNo = BusinessType.Track.ToString(); app.Action = SystemRight.Add.ToString(); app.BusinessTypeName = BusinessType.Track.GetText(); app.BusinessState = (int)(ConfirmState.WaitConfirm); app.BusinessId = model.Epm_Materiel.Id; app.ApproverId = project.ContactUserId; app.ApproverName = project.ContactUserName; app.ProjectId = model.Epm_Materiel.ProjectId; app.ProjectName = project.Name; list.Add(app); AddApproverBatch(list); WriteLog(BusinessType.Track.GetText(), SystemRight.Add.GetText(), "提交物料验收生成待办: " + model.Epm_Materiel.Id); #endregion #region 消息 var waitSend = GetWaitSendMessageList(model.Epm_Materiel.ProjectId.Value); foreach (var send in waitSend) { Epm_Massage modelMsg = new Epm_Massage(); modelMsg.ReadTime = null; modelMsg.RecId = send.Key; modelMsg.RecName = send.Value; modelMsg.RecTime = DateTime.Now; modelMsg.SendId = CurrentUserID.ToLongReq(); modelMsg.SendName = CurrentUserName; modelMsg.SendTime = DateTime.Now; modelMsg.Title = CurrentUserName + "提报了材料设备验收单,待审核"; modelMsg.Content = CurrentUserName + "提报了材料设备验收单,待审核"; modelMsg.Type = 2; modelMsg.IsRead = false; modelMsg.BussinessId = model.Epm_Materiel.Id; modelMsg.BussinesType = BusinessType.Track.ToString(); modelMsg.ProjectId = model.Epm_Materiel.ProjectId; modelMsg.ProjectName = model.Epm_Materiel.ProjectName; modelMsg = base.SetCurrentUser(modelMsg); modelMsg = base.SetCreateUser(modelMsg); DataOperateBusiness <Epm_Massage> .Get().Add(modelMsg); } #endregion #region 发送短信 //Dictionary<string, string> parametersms = new Dictionary<string, string>(); //parametersms.Add("UserName", CurrentUserName); //WriteSMS(project.ContactUserId.Value, project.CompanyId, MessageStep.MaterielAdd, parametersms); #endregion } } } catch (Exception e) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(e, "AddMateriel"); } return(result); }
///<summary> ///添加: ///</summary> /// <param name="model">要添加的model</param> /// <returns>受影响的行数</returns> public Result <int> AddDangerousWork(Epm_DangerousWork model, List <Base_Files> files) { Result <int> result = new Result <int>(); try { model = SetCurrentUser(model); model.SubmitCompanyId = CurrentCompanyID.ToLongReq(); model.SubmitCompanyName = CurrentCompanyName; model.SubmitUserId = CurrentUserID.ToLongReq(); model.SubmitUserName = CurrentUserName; model.CrtCompanyId = CurrentCompanyID.ToLongReq(); model.CrtCompanyName = CurrentCompanyName; var rows = DataOperateBusiness <Epm_DangerousWork> .Get().Add(model); QueryCondition qc = new QueryCondition() { PageInfo = new PageListInfo() { isAllowPage = false } }; qc.ConditionList.Add(new ConditionExpression() { ExpName = "ProjectId", ExpValue = model.ProjectId, ExpOperater = eConditionOperator.Equal, ExpLogical = eLogicalOperator.And }); qc.ConditionList.Add(new ConditionExpression() { ExpName = "UploadTime", ExpValue = DateTime.Today, ExpOperater = eConditionOperator.Equal, ExpLogical = eLogicalOperator.And }); // 关联危险作业实景 var workRealScenenResult = GetWorkRealSceneList(qc); if (workRealScenenResult.Flag == EResultFlag.Success && workRealScenenResult.Data != null) { List <Epm_SupervisorLogWork> workList = workRealScenenResult.Data.Select(p => new Epm_SupervisorLogWork { WorkId = p.WorkId, LogId = model.Id, WorkUploadId = p.Id, State = p.State }).ToList(); workList.ForEach(p => { SetCurrentUser(p); SetCreateUser(p); }); DataOperateBusiness <Epm_SupervisorLogWork> .Get().AddRange(workList); } AddFilesByTable(model, files); result.Data = rows; result.Flag = EResultFlag.Success; WriteLog(BusinessType.Dangerous.GetText(), SystemRight.Add.GetText(), "新增: " + model.Id); if (model.State == (int)ApprovalState.WaitAppr) { #region 生成待办 var project = DataOperateBusiness <Epm_Project> .Get().GetModel(model.ProjectId.Value); List <Epm_Approver> list = new List <Epm_Approver>(); Epm_Approver app = new Epm_Approver(); app.Title = CurrentUserName + "提报了危险作业单,待审核"; app.Content = CurrentUserName + "提报了危险作业单,待审核"; app.SendUserId = CurrentUserID.ToLongReq(); app.SendUserName = CurrentUserName; app.SendTime = DateTime.Now; app.LinkURL = string.Empty; app.BusinessTypeNo = BusinessType.Dangerous.ToString(); app.Action = SystemRight.Add.ToString(); app.BusinessTypeName = BusinessType.Dangerous.GetText(); app.BusinessState = (int)(ApprovalState.WaitAppr); app.BusinessId = model.Id; app.ApproverId = project.ContactUserId; app.ApproverName = project.ContactUserName; app.ProjectId = model.ProjectId; app.ProjectName = project.Name; list.Add(app); AddApproverBatch(list); WriteLog(BusinessType.Dangerous.GetText(), SystemRight.Add.GetText(), "提交危险作业生成待办: " + model.Id); #endregion #region 消息 //var waitSend = GetWaitSendMessageList(model.ProjectId.Value); //foreach (var send in waitSend) //{ // Epm_Massage modelMsg = new Epm_Massage(); // modelMsg.ReadTime = null; // modelMsg.RecId = send.Key; // modelMsg.RecName = send.Value; // modelMsg.RecTime = DateTime.Now; // modelMsg.SendId = CurrentUserID.ToLongReq(); // modelMsg.SendName = CurrentUserName; // modelMsg.SendTime = DateTime.Now; // modelMsg.Title = CurrentUserName + "提报了危险作业单,待审核"; // modelMsg.Content = CurrentUserName + "提报了危险作业单,待审核"; // modelMsg.Type = 2; // modelMsg.IsRead = false; // modelMsg.BussinessId = model.Id; // modelMsg.BussinesType = BusinessType.Dangerous.ToString(); // modelMsg.ProjectId = model.ProjectId.Value; // modelMsg.ProjectName = model.ProjectName; // modelMsg = base.SetCurrentUser(modelMsg); // modelMsg = base.SetCreateUser(modelMsg); // DataOperateBusiness<Epm_Massage>.Get().Add(modelMsg); //} #endregion #region 发送短信 //Dictionary<string, string> parameterSms = new Dictionary<string, string>(); //parameterSms.Add("UserName", CurrentUserName); //WriteSMS(project.ContactUserId.Value, project.CompanyId, MessageStep.WorkAdd, parameterSms); #endregion } } catch (Exception ex) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(ex, "AddDangerousWork"); } return(result); }
///<summary> ///添加: ///</summary> /// <param name="model">要添加的model</param> /// <returns>受影响的行数</returns> public Result <int> AddBim(Epm_Bim model, List <Base_Files> fileListFile) { Result <int> result = new Result <int>(); try { model = base.SetCurrentUser(model); model.CrtCompanyId = CurrentCompanyID.ToLongReq(); model.CrtCompanyName = CurrentCompanyName; //bool dConfig = DataOperateBusiness<Epm_Bim>.Get().Count(i => i.Name == model.Name) > 0; //if (dConfig) //{ // throw new Exception("该模型名称已经存在"); //} var rows = DataOperateBusiness <Epm_Bim> .Get().Add(model); //上传模型 if (fileListFile != null) { AddFilesByTable(model, fileListFile); } //生成代办消息 if ((ApprovalState)model.State == ApprovalState.WaitAppr) { #region 生成待办 var project = DataOperateBusiness <Epm_Project> .Get().GetModel(model.ProjectId.Value); List <Epm_Approver> list = new List <Epm_Approver>(); Epm_Approver app = new Epm_Approver(); app.Title = CurrentUserName + "上传了BIM模型,待审核"; app.Content = CurrentUserName + "上传了BIM模型,待审核"; app.SendUserId = CurrentUserID.ToLongReq(); app.SendUserName = CurrentUserName; app.SendTime = DateTime.Now; app.LinkURL = string.Empty; app.BusinessTypeNo = BusinessType.Model.ToString(); app.Action = SystemRight.Add.ToString(); app.BusinessTypeName = BusinessType.Model.GetText(); app.BusinessState = (int)(ApprovalState.WaitAppr); app.BusinessId = model.Id; app.ApproverId = project.ContactUserId; app.ApproverName = project.ContactUserName; app.ProjectId = model.ProjectId; app.ProjectName = project.Name; list.Add(app); AddApproverBatch(list); WriteLog(BusinessType.Model.GetText(), SystemRight.Add.GetText(), "提交模型生成待办: " + model.Id); #endregion #region 消息 var waitSend = GetWaitSendMessageList(model.ProjectId.Value); foreach (var send in waitSend) { Epm_Massage modelMsg = new Epm_Massage(); modelMsg.ReadTime = null; modelMsg.RecId = send.Key; modelMsg.RecName = send.Value; modelMsg.RecTime = DateTime.Now; modelMsg.SendId = CurrentUserID.ToLongReq(); modelMsg.SendName = CurrentUserName; modelMsg.SendTime = DateTime.Now; modelMsg.Title = CurrentUserName + "上传了BIM模型,待审核"; modelMsg.Content = CurrentUserName + "上传了BIM模型,待审核"; modelMsg.Type = 2; modelMsg.IsRead = false; modelMsg.BussinessId = model.Id; modelMsg.BussinesType = BusinessType.Model.ToString(); modelMsg.ProjectId = model.ProjectId.Value; modelMsg.ProjectName = model.ProjectName; modelMsg = base.SetCurrentUser(modelMsg); modelMsg = base.SetCreateUser(modelMsg); DataOperateBusiness <Epm_Massage> .Get().Add(modelMsg); } #endregion #region 发送短信 //Dictionary<string, string> parameterSms = new Dictionary<string, string>(); //parameterSms.Add("UserName", CurrentUserName); //WriteSMS(project.ContactUserId.Value, project.CompanyId, MessageStep.ModelAdd, parameterSms); #endregion } result.Data = rows; result.Flag = EResultFlag.Success; WriteLog(BusinessType.Model.GetText(), SystemRight.Add.GetText(), "新增: " + model.Id); } catch (Exception ex) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(ex, "AddBim"); } return(result); }
/// <summary> /// 获取当前登录用户待办事项 /// </summary> /// <param name="qc"></param> /// <returns></returns> public Result <List <Epm_Approver> > GetCurrUserApproverList(QueryCondition qc) { var currCompanyId = CurrentCompanyID.ToLongReq(); qc = AddDefault(qc); //qc.ConditionList.Add(new ConditionExpression() //{ // ExpName = "ApproverId", // ExpValue = CurrentUser.Id, // ExpOperater = eConditionOperator.Equal, // ExpLogical = eLogicalOperator.And //}); //qc.ConditionList.Add(new ConditionExpression() //{ // ExpName = "ApproverId", // ExpValue = currCompanyId, // ExpOperater = eConditionOperator.Equal, // ExpLogical = eLogicalOperator.And //}); ConditionExpression ce4 = new ConditionExpression(); ConditionExpression ce41 = new ConditionExpression(); ce41.ConditionList.Add(new ConditionExpression() { ExpName = "ApproverId", ExpValue = CurrentUserID, ExpOperater = eConditionOperator.Equal, }); ce4.ConditionList.Add(ce41); ConditionExpression ce42 = new ConditionExpression(); ce42.ConditionList.Add(new ConditionExpression() { ExpName = "ApproverId", ExpValue = currCompanyId, ExpOperater = eConditionOperator.Equal }); ce42.ExpLogical = eLogicalOperator.Or; ce4.ExpLogical = eLogicalOperator.And; ce4.ConditionList.Add(ce42); qc.ConditionList.Add(ce4); qc.ConditionList.Add(new ConditionExpression() { ExpName = "IsApprover", ExpValue = false, ExpOperater = eConditionOperator.Equal, ExpLogical = eLogicalOperator.And }); qc.SortList.Add(new SortExpression() { SortName = "SendTime", SortType = eSortType.Desc }); Result <List <Epm_Approver> > result = new Result <List <Epm_Approver> >(); try { result = hc.Plat.Common.Service.DataOperate.QueryListSimple <Epm_Approver>(context, qc); } catch (Exception ex) { result.Data = null; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(ex, "GetApproverList"); } return(result); }
///<summary> ///添加: ///</summary> /// <param name="model">要添加的model</param> /// <returns>受影响的行数</returns> public Result <int> AddContract(Epm_Contract model, List <Base_Files> fileList = null) { Result <int> result = new Result <int>(); try { base.SetCurrentUser(model); model.CrtCompanyId = CurrentCompanyID.ToLongReq(); model.CrtCompanyName = CurrentCompanyName; model.ProjectId = model.ProjectId ?? 0; //bool dConfig = DataOperateBusiness<Epm_Contract>.Get().Count(i => i.Name == model.Name) > 0; //if (dConfig) //{ // throw new Exception("该合同名称已经存在"); //} //dConfig = DataOperateBusiness<Epm_Contract>.Get().Count(i => i.Code == model.Code) > 0; //if (dConfig) //{ // throw new Exception("该合同编码已经存在"); //} var rows = DataOperateBusiness <Epm_Contract> .Get().Add(model); //新增附件 AddFilesByTable(model, fileList); result.Data = rows; result.Flag = EResultFlag.Success; WriteLog(BusinessType.Contract.GetText(), SystemRight.Add.GetText(), "新增: " + model.Id); if ((ApprovalState)Enum.ToObject(typeof(ApprovalState), model.State) == ApprovalState.WaitAppr) { bool isApprSuccess = false; //判断是否工程处提交,如果是直接通过 if (IsAgencyUser(CurrentUserID.ToLongReq())) { isApprSuccess = true; model.State = (int)ApprovalState.ApprSuccess; DataOperateBusiness <Epm_Contract> .Get().Update(model); } if (!isApprSuccess && model.ProjectId.Value != 0) { #region 生成待办 var project = DataOperateBusiness <Epm_Project> .Get().GetModel(model.ProjectId.Value); List <Epm_Approver> list = new List <Epm_Approver>(); Epm_Approver app = new Epm_Approver(); app.Title = CurrentUserName + "上传了项目合同,待审核"; app.Content = CurrentUserName + "上传了项目合同,待审核"; app.SendUserId = CurrentUserID.ToLongReq(); app.SendUserName = CurrentUserName; app.SendTime = DateTime.Now; app.LinkURL = string.Empty; app.BusinessTypeNo = BusinessType.Contract.ToString(); app.Action = SystemRight.Add.ToString(); app.BusinessTypeName = BusinessType.Contract.GetText(); app.BusinessState = (int)(ApprovalState.WaitAppr); app.BusinessId = model.Id; app.ApproverId = project.PMId; app.ApproverName = project.PMName; app.ProjectId = model.ProjectId; app.ProjectName = project.Name; list.Add(app); AddApproverBatch(list); WriteLog(BusinessType.Contract.GetText(), SystemRight.Add.GetText(), "提交合同生成待办: " + model.Id); #endregion #region 消息 var waitSend = GetWaitSendMessageList(model.ProjectId.Value); foreach (var send in waitSend) { Epm_Massage modelMsg = new Epm_Massage(); modelMsg.ReadTime = null; modelMsg.RecId = send.Key; modelMsg.RecName = send.Value; modelMsg.RecTime = DateTime.Now; modelMsg.SendId = CurrentUserID.ToLongReq(); modelMsg.SendName = CurrentUserName; modelMsg.SendTime = DateTime.Now; modelMsg.Title = CurrentUserName + "上传了项目合同,待审核"; modelMsg.Content = CurrentUserName + "上传了项目合同,待审核"; modelMsg.Type = 2; modelMsg.IsRead = false; modelMsg.BussinessId = model.Id; modelMsg.BussinesType = BusinessType.Contract.ToString(); modelMsg.ProjectId = model.ProjectId.Value; modelMsg.ProjectName = model.ProjectName; modelMsg = base.SetCurrentUser(modelMsg); modelMsg = base.SetCreateUser(modelMsg); DataOperateBusiness <Epm_Massage> .Get().Add(modelMsg); } #endregion #region 发送短信 //Dictionary<string, string> parameterSms = new Dictionary<string, string>(); //parameterSms.Add("UserName", CurrentUserName); //WriteSMS(project.PMId.Value, 0, MessageStep.ContractAdd, parameterSms); #endregion } } } catch (Exception ex) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(ex, "AddContract"); } return(result); }
/// <summary> /// 新增完工验收 /// </summary> /// <param name="view"></param> /// <returns></returns> public Result <int> AddCompletionAcceptanceNew(CompletionAcceptanceView view) { Result <int> result = new Result <int>(); try { var completionAcceptance = view.CompletionAcceptance; var completionRectifyCompanys = view.CompletionRectifyCompanys; completionAcceptance = base.SetCurrentUser(completionAcceptance); completionAcceptance.CrtCompanyId = CurrentCompanyID.ToLongReq(); completionAcceptance.CrtCompanyName = CurrentCompanyName; completionAcceptance.RecUserId = CurrentUser.Id; completionAcceptance.RecUserName = CurrentUserName; var rows = DataOperateBusiness <Epm_CompletionAcceptance> .Get().Add(completionAcceptance); if (completionRectifyCompanys != null && completionRectifyCompanys.Any()) { completionRectifyCompanys.ForEach(p => { SetCreateUser(p); SetCurrentUser(p); p.AcceptanceId = completionAcceptance.Id; }); DataOperateBusiness <Epm_CompletionRectifyCompany> .Get().AddRange(completionRectifyCompanys); } if (view.BaseFiles != null) { AddFilesByTable(completionAcceptance, view.BaseFiles); } //生成代办消息 if ((PreCompletionScceptanceState)completionAcceptance.State == PreCompletionScceptanceState.WaitApproval) { #region 生成待办 var project = DataOperateBusiness <Epm_Project> .Get().GetModel(completionAcceptance.ProjectId.Value); List <Epm_Approver> list = new List <Epm_Approver>(); Epm_Approver app = new Epm_Approver(); app.Title = CurrentUserName + "提交了" + project.Name + "完工验收申请,待审核"; app.Content = CurrentUserName + "提交了" + project.Name + "完工验收申请,待审核"; app.SendUserId = CurrentUserID.ToLongReq(); app.SendUserName = CurrentUserName; app.SendTime = DateTime.Now; app.LinkURL = string.Empty; app.BusinessTypeNo = BusinessType.Completed.ToString(); app.Action = SystemRight.Add.ToString(); app.BusinessTypeName = BusinessType.Completed.GetText(); app.BusinessState = (int)(PreCompletionScceptanceState.WaitApproval); app.BusinessId = completionAcceptance.Id; app.ApproverId = project.PMId; app.ApproverName = project.PMName; app.ProjectId = completionAcceptance.ProjectId; app.ProjectName = project.Name; list.Add(app); AddApproverBatch(list); WriteLog(BusinessType.Completed.GetText(), SystemRight.Add.GetText(), "提交完工验收生成待办: " + completionAcceptance.Id); #endregion #region 消息 var waitSend = GetWaitSendMessageList(completionAcceptance.ProjectId.Value); foreach (var send in waitSend) { Epm_Massage modelMsg = new Epm_Massage(); modelMsg.ReadTime = null; modelMsg.RecId = send.Key; modelMsg.RecName = send.Value; modelMsg.RecTime = DateTime.Now; modelMsg.SendId = CurrentUserID.ToLongReq(); modelMsg.SendName = CurrentUserName; modelMsg.SendTime = DateTime.Now; modelMsg.Title = CurrentUserName + "提交了" + project.Name + "完工验收申请,待审核"; modelMsg.Content = CurrentUserName + "提交了" + project.Name + "完工验收申请,待审核"; modelMsg.Type = 2; modelMsg.IsRead = false; modelMsg.BussinessId = completionAcceptance.Id; modelMsg.BussinesType = BusinessType.Completed.ToString(); modelMsg.ProjectId = completionAcceptance.ProjectId.Value; modelMsg.ProjectName = completionAcceptance.ProjectName; modelMsg = base.SetCurrentUser(modelMsg); modelMsg = base.SetCreateUser(modelMsg); DataOperateBusiness <Epm_Massage> .Get().Add(modelMsg); } #endregion #region 发送短信 //Dictionary<string, string> parameters = new Dictionary<string, string>(); //parameters.Add("UserName", CurrentUserName); //WriteSMS(project.PMId.Value, 0, MessageStep.ComplationAdd, parameters); #endregion } result.Data = rows; result.Flag = EResultFlag.Success; WriteLog(BusinessType.Completed.GetText(), SystemRight.Add.GetText(), "新增: " + completionAcceptance.Id); } catch (Exception ex) { result.Data = -1; result.Flag = EResultFlag.Failure; result.Exception = new ExceptionEx(ex, "AddCompletionAcceptanceNew"); } return(result); }