Exemplo n.º 1
0
 /// <summary>
 /// 保存表单(新增、修改)
 /// </summary>
 /// <param name="keyValue">主键值</param>
 /// <param name="entity">实体对象</param>
 /// <returns></returns>
 public void SaveForm(string keyValue, HistoryTechDisclosureEntity entity)
 {
     try
     {
         service.SaveForm(keyValue, entity);
     }
     catch (Exception)
     {
         throw;
     }
 }
Exemplo n.º 2
0
        /// <summary>
        /// 审核表单
        /// </summary>
        /// <param name="keyValue"></param>
        /// <param name="entity"></param>
        /// <param name="aentity"></param>
        public void ApporveForm(string keyValue, TechDisclosureEntity entity, AptitudeinvestigateauditEntity aentity)
        {
            Operator curUser  = ERCHTMS.Code.OperatorProvider.Provider.Current();
            var      smEntity = GetEntity(keyValue);

            try
            {
                string state      = string.Empty;
                string moduleName = "";
                if (string.IsNullOrWhiteSpace(smEntity.PROJECTID))
                {
                    moduleName = "安全技术交底(手输工程)";
                    if (smEntity.ENGINEERLEVEL == "001")
                    {
                        moduleName += "_一级风险";
                    }
                    else if (smEntity.ENGINEERLEVEL == "002")
                    {
                        moduleName += "_二级风险";
                    }
                    else if (smEntity.ENGINEERLEVEL == "003")
                    {
                        moduleName += "_三级风险";
                    }
                }
                else
                {
                    moduleName = "安全技术交底(选择工程)";
                    if (smEntity.ENGINEERLEVEL == "001")
                    {
                        moduleName += "_一级风险";
                    }
                    else if (smEntity.ENGINEERLEVEL == "002")
                    {
                        moduleName += "_二级风险";
                    }
                    else if (smEntity.ENGINEERLEVEL == "003")
                    {
                        moduleName += "_三级风险";
                    }
                }

                string outengineerid           = smEntity.PROJECTID;
                ManyPowerCheckEntity mpcEntity = peoplereviewservice.CheckAuditPower(curUser, out state, moduleName, outengineerid, false, smEntity.FLOWID);


                #region                                                                                                                                 //审核信息表
                AptitudeinvestigateauditEntity aidEntity = new AptitudeinvestigateauditEntity();
                aidEntity.AUDITRESULT   = aentity.AUDITRESULT;                                                                                          //通过
                aidEntity.AUDITTIME     = Convert.ToDateTime(aentity.AUDITTIME.Value.ToString("yyyy-MM-dd") + " " + DateTime.Now.ToString("HH:mm:ss")); //审核时间
                aidEntity.AUDITPEOPLE   = aentity.AUDITPEOPLE;                                                                                          //审核人员姓名
                aidEntity.AUDITPEOPLEID = aentity.AUDITPEOPLEID;                                                                                        //审核人员id
                aidEntity.APTITUDEID    = keyValue;                                                                                                     //关联的业务ID
                aidEntity.AUDITDEPTID   = aentity.AUDITDEPTID;                                                                                          //审核部门id
                aidEntity.AUDITDEPT     = aentity.AUDITDEPT;                                                                                            //审核部门
                aidEntity.AUDITOPINION  = aentity.AUDITOPINION;                                                                                         //审核意见
                aidEntity.FlowId        = smEntity.FLOWID;
                aentity.AUDITSIGNIMG    = HttpUtility.UrlDecode(aentity.AUDITSIGNIMG);
                aidEntity.AUDITSIGNIMG  = string.IsNullOrWhiteSpace(aentity.AUDITSIGNIMG) ? "" : aentity.AUDITSIGNIMG.ToString().Replace("../..", "");
                if (null != mpcEntity)
                {
                    aidEntity.REMARK = (mpcEntity.AUTOID.Value - 1).ToString(); //备注 存流程的顺序号
                }
                else
                {
                    aidEntity.REMARK = "7";
                }
                aptitudeinvestigateauditservice.SaveForm(aidEntity.ID, aidEntity);
                #endregion

                #region  //保存安全技术交底

                //审核通过
                if (aentity.AUDITRESULT == "0")
                {
                    //0表示流程未完成,1表示流程结束
                    if (null != mpcEntity)
                    {
                        smEntity.STATUS = 1;
                        smEntity.FLOWID = mpcEntity.ID;
                    }
                    else
                    {
                        smEntity.STATUS = 3;
                        smEntity.FLOWID = "";
                    }
                }
                else //审核不通过
                {
                    smEntity.ISSUBMIT = 0;
                    smEntity.STATUS   = 0;
                    smEntity.FLOWID   = "";
                }

                #endregion

                #region    //审核不通过
                if (aentity.AUDITRESULT == "1")
                {
                    //添加历史记录
                    HistoryTechDisclosureEntity hsentity = new HistoryTechDisclosureEntity();
                    hsentity       = JsonConvert.DeserializeObject <HistoryTechDisclosureEntity>(JsonConvert.SerializeObject(smEntity));
                    hsentity.ID    = "";
                    hsentity.RecId = smEntity.ID;
                    historytechdisclosureservice.SaveForm(hsentity.ID, hsentity);

                    //获取当前业务对象的所有审核记录
                    var shlist = aptitudeinvestigateauditservice.GetAuditList(keyValue);
                    //批量更新审核记录关联ID
                    foreach (AptitudeinvestigateauditEntity mode in shlist)
                    {
                        mode.APTITUDEID = hsentity.ID; //对应新的ID
                        aptitudeinvestigateauditservice.SaveForm(mode.ID, mode);
                    }
                    //批量更新附件记录关联ID
                    var flist = fileinfoservice.GetImageListByObject(keyValue);
                    foreach (FileInfoEntity fmode in flist)
                    {
                        fmode.RecId = hsentity.ID; //对应新的ID
                        fileinfoservice.SaveForm("", fmode);
                    }
                }
                #endregion
                //更新安全技术交底基本状态信息
                smEntity.Modify(keyValue);
                this.BaseRepository().Update(smEntity);
                #region 更新工程流程状态
                if (smEntity.STATUS == 3 && smEntity.PROJECTID != "" && smEntity.PROJECTID != null)
                {
                    Repository <StartappprocessstatusEntity> proecss = new Repository <StartappprocessstatusEntity>(DbFactory.Base());
                    StartappprocessstatusEntity startProecss         = proecss.FindList(string.Format("select * from epg_startappprocessstatus t where t.outengineerid='{0}'", smEntity.PROJECTID)).ToList().FirstOrDefault();
                    startProecss.TECHNICALSTATUS = "1";
                    var res = DbFactory.Base().BeginTrans();
                    res.Update <StartappprocessstatusEntity>(startProecss);
                }
                #endregion
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }