/// <summary> /// 审核保存表单(新增、修改) /// </summary> /// <param name="keyValue">主表主键值</param> /// <param name="entity">实体对象</param> /// <returns></returns> public void CheckSaveForm(string keyValue, DangerousJobFlowDetailEntity entity) { JobSafetyCardApplyService jsService = new JobSafetyCardApplyService(); var jsEntity = jsService.GetEntity(keyValue);//获取工作证申请主表 //先处理当前步骤,获取流转表业务数据当前步骤 var entity1 = this.GetList().Where(x => x.BusinessId == keyValue && x.Status == 0 && x.ApplyNumber == jsEntity.ApplyNumber).ToList().FirstOrDefault(); if (entity1 != null) { entity1.Status = 1;//标记已处理 entity1.CheckResult = entity.CheckResult; entity1.ApproveTime = entity.ApproveTime; entity1.ApproveDeptName = entity.ApproveDeptName; entity1.ApproveDeptId = entity.ApproveDeptId; entity1.ApprovePerson = entity.ApprovePerson; entity1.ApprovePersonId = entity.ApprovePersonId; entity1.ApproveOpinion = entity.ApproveOpinion; entity1.SignUrl = string.IsNullOrWhiteSpace(entity.SignUrl) ? "" : entity.SignUrl.Replace("../..", ""); entity.Modify(entity1.Id); this.BaseRepository().Update(entity1);//更新当前步骤审核信息 if (entity1.CheckResult == "1") { int ApplyNumber = jsEntity.ApplyNumber + 1; ////审批不同意流程重新发起 //NextStep(keyValue, 1, ApplyNumber); //不同意更新主表状态 jsEntity.JobState = 2; jsEntity.ApplyNumber = ApplyNumber;//更新申请次数 jsService.SaveForm(keyValue, jsEntity); } else { if (entity1.NextStep != 0) { //不等于0标示流程未结束,继续执行下一步 NextStep(keyValue, (int)entity1.NextStep, jsEntity.ApplyNumber); } else { //标示流程已走完,更新主表状态 if (jsEntity.JobType == "Digging") { jsEntity.JobState = 5; //动土作业 审核通过进入备案中状态 } else { jsEntity.JobState = 8; //其他作业 审核通过进入开始作业状态 } jsService.SaveForm(keyValue, jsEntity); } } } }
public void UpdateGerOp(string keyValue, string ledgerType, string type, string worktime, string issendmessage, string conditioncontent, string conditionid = "", string iscomplete = "") { string title = string.Empty; string message = string.Empty; var time = Convert.ToDateTime(worktime); Operator curUser = OperatorProvider.Provider.Current(); var entity = service.GetEntity(keyValue); var pId = ""; if (entity != null) { if (!string.IsNullOrEmpty(entity.JobSafetyCardId)) { var list = entity.JobSafetyCardId.TrimEnd(',').Split(','); foreach (var item in list) { pId = Guid.NewGuid().ToString(); JobSafetyCardApplyService appluservise = new JobSafetyCardApplyService(); var aEntity = appluservise.GetEntity(item); string sql = ""; if (aEntity.JobType == "HeightWorking" || aEntity.JobType == "Lifting" || aEntity.JobType == "Digging" || aEntity.JobType == "OpenCircuit" || aEntity.JobType == "WhenHot" || aEntity.JobType == "BlindPlateWall" || aEntity.JobType == "LimitedSpace" || aEntity.JobType == "EquOverhaulClean") { //作业证已结束作业后,不记录执行信息( //送电中/验收中/已结束 危险作业不记录执行信息) if (aEntity.JobState != 11 && aEntity.JobState != 6 && aEntity.JobState != 7) { //开始作业 if (ledgerType == "0") { //关联的作业安全证已经有开始作业的,危险作业审批单开始作业的数据不覆盖作业安全证的开始作业数据 if (aEntity.JobState != 10) { sql = string.Format(@"update bis_jobsafetycardapply set realityjobstarttime=to_date('{1}','yyyy-mm-dd hh24:mi:ss')," + "jobstate=10,RealityJobEndTime='' where id='{0}'", aEntity.Id, time.ToString("yyyy-MM-dd HH:mm:ss")); service.UpdateData(sql); #region 添加执行情况信息 FireWaterCondition Conditionentity = new FireWaterCondition(); Conditionentity.Id = pId; Conditionentity.LedgerType = ledgerType; Conditionentity.ConditionTime = time; Conditionentity.ConditionContent = conditioncontent; Conditionentity.ConditionDept = curUser.DeptName; Conditionentity.ConditionDeptCode = curUser.DeptCode; Conditionentity.ConditionDeptId = curUser.DeptId; Conditionentity.ConditionPerson = curUser.UserName; Conditionentity.ConditionPersonId = curUser.UserId; Conditionentity.FireWaterId = aEntity.Id; firewaterbll.SubmitCondition(pId, Conditionentity); List <FileInfoEntity> filelist = new FileInfoBLL().GetFileList(conditionid); //现场图片 if (filelist.Count > 0) { foreach (var items in filelist) { FileInfoEntity fileInfoEntity = new FileInfoEntity(); string fileguid = Guid.NewGuid().ToString(); fileInfoEntity.Create(); fileInfoEntity.RecId = pId; //关联ID fileInfoEntity.FileName = items.FileName; fileInfoEntity.FilePath = items.FilePath; fileInfoEntity.FileSize = items.FileSize; fileInfoEntity.FileExtensions = items.FileExtensions; fileInfoEntity.FileType = items.FileType; fileInfoEntity.FolderId = items.FolderId; //TransportRemoteToServer(Server.MapPath("~/Resource//PeopleAudit/" + DateTime.Now.ToString("yyyyMMdd") + "/"), decompressionDirectory + item, fileguid + fileinfo.Extension); new FileInfoBLL().SaveForm("", fileInfoEntity); } } List <FileInfoEntity> filelist2 = new FileInfoBLL().GetFileList(conditionid + "_02"); if (filelist2.Count > 0) { foreach (var items in filelist2) { FileInfoEntity fileInfoEntity = new FileInfoEntity(); string fileguid = Guid.NewGuid().ToString(); fileInfoEntity.Create(); fileInfoEntity.RecId = pId + "_02"; //关联ID fileInfoEntity.FileName = items.FileName; fileInfoEntity.FilePath = items.FilePath; fileInfoEntity.FileSize = items.FileSize; fileInfoEntity.FileExtensions = items.FileExtensions; fileInfoEntity.FileType = items.FileType; fileInfoEntity.FolderId = items.FolderId; //TransportRemoteToServer(Server.MapPath("~/Resource//PeopleAudit/" + DateTime.Now.ToString("yyyyMMdd") + "/"), decompressionDirectory + item, fileguid + fileinfo.Extension); new FileInfoBLL().SaveForm("", fileInfoEntity); } } } #endregion } else if (ledgerType == "1") { int jobstate = 9; //作业中 -作业暂停 if (iscomplete == "0") { if (aEntity.JobState != 9) { jobstate = 9;//状态为作业暂停 sql = string.Format("update bis_jobsafetycardapply set jobstate={2},realityjobendtime=to_date('{1}','yyyy-mm-dd hh24:mi:ss') where id='{0}'", aEntity.Id, time.ToString("yyyy-MM-dd HH:mm:ss"), jobstate); service.UpdateData(sql); #region 添加执行情况信息 FireWaterCondition Conditionentity = new FireWaterCondition(); Conditionentity.Id = pId; Conditionentity.LedgerType = ledgerType; Conditionentity.ConditionTime = time; Conditionentity.ConditionContent = conditioncontent; Conditionentity.ConditionDept = curUser.DeptName; Conditionentity.ConditionDeptCode = curUser.DeptCode; Conditionentity.ConditionDeptId = curUser.DeptId; Conditionentity.ConditionPerson = curUser.UserName; Conditionentity.ConditionPersonId = curUser.UserId; Conditionentity.FireWaterId = aEntity.Id; firewaterbll.SubmitCondition(pId, Conditionentity); List <FileInfoEntity> filelist = new FileInfoBLL().GetFileList(conditionid); //现场图片 if (filelist.Count > 0) { foreach (var items in filelist) { FileInfoEntity fileInfoEntity = new FileInfoEntity(); string fileguid = Guid.NewGuid().ToString(); fileInfoEntity.Create(); fileInfoEntity.RecId = pId; //关联ID fileInfoEntity.FileName = items.FileName; fileInfoEntity.FilePath = items.FilePath; fileInfoEntity.FileSize = items.FileSize; fileInfoEntity.FileExtensions = items.FileExtensions; fileInfoEntity.FileType = items.FileType; fileInfoEntity.FolderId = items.FolderId; //TransportRemoteToServer(Server.MapPath("~/Resource//PeopleAudit/" + DateTime.Now.ToString("yyyyMMdd") + "/"), decompressionDirectory + item, fileguid + fileinfo.Extension); new FileInfoBLL().SaveForm("", fileInfoEntity); } } List <FileInfoEntity> filelist2 = new FileInfoBLL().GetFileList(conditionid + "_02"); if (filelist2.Count > 0) { foreach (var items in filelist2) { FileInfoEntity fileInfoEntity = new FileInfoEntity(); string fileguid = Guid.NewGuid().ToString(); fileInfoEntity.Create(); fileInfoEntity.RecId = pId + "_02"; //关联ID fileInfoEntity.FileName = items.FileName; fileInfoEntity.FilePath = items.FilePath; fileInfoEntity.FileSize = items.FileSize; fileInfoEntity.FileExtensions = items.FileExtensions; fileInfoEntity.FileType = items.FileType; fileInfoEntity.FolderId = items.FolderId; //TransportRemoteToServer(Server.MapPath("~/Resource//PeopleAudit/" + DateTime.Now.ToString("yyyyMMdd") + "/"), decompressionDirectory + item, fileguid + fileinfo.Extension); new FileInfoBLL().SaveForm("", fileInfoEntity); } } } #endregion } //作业中 -完成作业 else if (iscomplete == "1") { //作业证作业暂停 if (aEntity.JobState != 9) { if (aEntity.JobType == "OpenCircuit") { jobstate = 6; //断路作业 结束作业后下一步流程为验收 状态值改为验收中:6 } else if (aEntity.JobType == "EquOverhaulClean") { jobstate = 7; //设备检修清理作业 结束作业后下一步流程为送电 状态值改为送电中:7 } else { jobstate = 11; //其他作业 作业结束即为整个流程结束 状态值为11 } sql = string.Format("update bis_jobsafetycardapply set jobstate={2},realityjobendtime=to_date('{1}','yyyy-mm-dd hh24:mi:ss') where id='{0}'", aEntity.Id, time.ToString("yyyy-MM-dd HH:mm:ss"), jobstate); service.UpdateData(sql); #region 添加执行情况信息 FireWaterCondition Conditionentity = new FireWaterCondition(); Conditionentity.Id = pId; Conditionentity.LedgerType = ledgerType; Conditionentity.ConditionTime = time; Conditionentity.ConditionContent = conditioncontent; Conditionentity.ConditionDept = curUser.DeptName; Conditionentity.ConditionDeptCode = curUser.DeptCode; Conditionentity.ConditionDeptId = curUser.DeptId; Conditionentity.ConditionPerson = curUser.UserName; Conditionentity.ConditionPersonId = curUser.UserId; Conditionentity.FireWaterId = aEntity.Id; firewaterbll.SubmitCondition(pId, Conditionentity); #endregion List <FileInfoEntity> filelist = new FileInfoBLL().GetFileList(conditionid); //现场图片 if (filelist.Count > 0) { foreach (var items in filelist) { FileInfoEntity fileInfoEntity = new FileInfoEntity(); string fileguid = Guid.NewGuid().ToString(); fileInfoEntity.Create(); fileInfoEntity.RecId = pId; //关联ID fileInfoEntity.FileName = items.FileName; fileInfoEntity.FilePath = items.FilePath; fileInfoEntity.FileSize = items.FileSize; fileInfoEntity.FileExtensions = items.FileExtensions; fileInfoEntity.FileType = items.FileType; fileInfoEntity.FolderId = items.FolderId; //TransportRemoteToServer(Server.MapPath("~/Resource//PeopleAudit/" + DateTime.Now.ToString("yyyyMMdd") + "/"), decompressionDirectory + item, fileguid + fileinfo.Extension); new FileInfoBLL().SaveForm("", fileInfoEntity); } } List <FileInfoEntity> filelist2 = new FileInfoBLL().GetFileList(conditionid + "_02"); if (filelist2.Count > 0) { foreach (var items in filelist2) { FileInfoEntity fileInfoEntity = new FileInfoEntity(); string fileguid = Guid.NewGuid().ToString(); fileInfoEntity.Create(); fileInfoEntity.RecId = pId + "_02"; //关联ID fileInfoEntity.FileName = items.FileName; fileInfoEntity.FilePath = items.FilePath; fileInfoEntity.FileSize = items.FileSize; fileInfoEntity.FileExtensions = items.FileExtensions; fileInfoEntity.FileType = items.FileType; fileInfoEntity.FolderId = items.FolderId; //TransportRemoteToServer(Server.MapPath("~/Resource//PeopleAudit/" + DateTime.Now.ToString("yyyyMMdd") + "/"), decompressionDirectory + item, fileguid + fileinfo.Extension); new FileInfoBLL().SaveForm("", fileInfoEntity); } } } } } } } } } } }