/// <summary>
 /// 审核保存表单(新增、修改)
 /// </summary>
 /// <param name="keyValue">主表主键值</param>
 /// <param name="entity">实体对象</param>
 /// <returns></returns>
 public void CheckSaveForm(string keyValue, DangerousJobFlowDetailEntity entity)
 {
     try
     {
         service.CheckSaveForm(keyValue, entity);
         JobSafetyCardApplyBLL bll = new JobSafetyCardApplyBLL();
         UserBLL userbll           = new UserBLL();
         var     data = bll.GetEntity(keyValue);
         if (data.JobState == 2)//审核不通过
         {
             JPushApi.PushMessage(userbll.GetEntity(data.CreateUserId).Account, data.CreateUserName, "ZYAQZ002", data.JobTypeName + "安全证申请审批未通过,请您知晓。", "您于" + data.CreateDate.Value.ToString("yyyy年MM月dd日") + "申请的" + data.JobTypeName + "安全证审批未通过,如您还需进行作业,请重新进行申请。", data.Id);
         }
         else if (data.JobState == 1)//下一步审批人
         {
             DangerousJobFlowDetailEntity flow = service.GetList().Where(t => t.BusinessId == keyValue && t.Status == 0).FirstOrDefault();
             string    userids = service.GetCurrentStepUser(keyValue, flow.Id);
             DataTable dt      = userbll.GetUserTable(userids.Split(','));
             JPushApi.PushMessage(string.Join(",", dt.AsEnumerable().Select(t => t.Field <string>("account")).ToArray()), string.Join(",", dt.AsEnumerable().Select(t => t.Field <string>("realname")).ToArray()), "ZYAQZ003", data.JobTypeName + "安全证申请待您审批,请您及时处理。", data.CreateUserName + "于" + data.CreateDate.Value.ToString("yyyy年MM月dd日") + "申请的" + data.JobTypeName + "安全证需要您进行审批,请您及时处理。", data.Id);
         }
         else
         {
             //审批通过
             DataTable dt = userbll.GetUserTable((data.CreateUserId + "," + data.JobPersonId).Split(','));
             JPushApi.PushMessage(string.Join(",", dt.AsEnumerable().Select(t => t.Field <string>("account")).ToArray()), string.Join(",", dt.AsEnumerable().Select(t => t.Field <string>("realname")).ToArray()), "ZYAQZ001", data.JobTypeName + "安全证申请已审批通过,请您查收。", "您于" + data.CreateDate.Value.ToString("yyyy年MM月dd日") + "申请的" + data.JobTypeName + "安全证已审批通过,请您合理安排作业时间。", data.Id);
             if (data.JobType == "Digging") //动土作业审批通过进行到备案状态 需要发送待备案消息
             {
                 DataTable dt1 = userbll.GetUserTable(data.RecordsPersonId.Split(','));
                 JPushApi.PushMessage(string.Join(",", dt1.AsEnumerable().Select(t => t.Field <string>("account")).ToArray()), data.RecordsPerson, "ZYAQZ005", data.JobTypeName + "安全证申请待您备案,请您及时处理。", data.CreateUserName + "于" + data.CreateDate.Value.ToString("yyyy年MM月dd日") + "申请的" + data.JobTypeName + "安全证需要您进行备案,请您及时处理。", data.Id);
             }
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
Beispiel #2
0
        /// <summary>
        /// 开始作业
        /// </summary>
        /// <param name="keyValue"></param>
        /// <param name="ledgerType"></param>
        /// <param name="type"></param>
        /// <param name="worktime"></param>
        /// <param name="issendmessage"></param>
        /// <param name="conditioncontent"></param>
        /// <param name="conditionid"></param>
        /// <param name="iscomplete"></param>
        public void LedgerOp(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();
            JobApprovalFormEntity entity = service.GetEntity(keyValue);

            string sql = "";

            if (type == "HeightWorking" || type == "Lifting" || type == "Digging" || type == "OpenCircuit" || type == "WhenHot" || type == "BlindPlateWall" || type == "LimitedSpace" || type == "EquOverhaulClean")
            {
                if (ledgerType == "0")
                {
                    sql = string.Format(@"update bis_jobsafetycardapply set realityjobstarttime=to_date('{1}','yyyy-mm-dd hh24:mi:ss')," +
                                        "jobstate=10,RealityJobEndTime='' where id='{0}'", keyValue, time.ToString("yyyy-MM-dd HH:mm:ss"));
                }
                else if (ledgerType == "1")
                {
                    int jobstate = 9;
                    if (iscomplete == "0")
                    {
                        jobstate = 9;//状态为作业暂停
                    }
                    else
                    {
                        UserBLL userbll = new UserBLL();
                        JobSafetyCardApplyBLL    JobSafetyCardApplyBLL = new JobSafetyCardApplyBLL();
                        JobSafetyCardApplyEntity data = JobSafetyCardApplyBLL.GetEntity(keyValue);
                        if (type == "OpenCircuit")
                        {
                            jobstate = 6; //断路作业 结束作业后下一步流程为验收   状态值改为验收中:6
                            DataTable dt = userbll.GetUserTable(data.CheckPersonId.Split(','));
                            JPushApi.PushMessage(string.Join(",", dt.AsEnumerable().Select(t => t.Field <string>("account")).ToArray()), data.CheckPerson, "ZYAQZ004", data.JobTypeName + "安全证待您进行作业后验收,请您及时处理。", data.CreateUserName + "于" + data.CreateDate.Value.ToString("yyyy年MM月dd日") + "申请的" + data.JobTypeName + "安全证需要您进行作业后验收,请您及时处理。", data.Id);
                        }
                        else if (type == "EquOverhaulClean")
                        {
                            jobstate = 7; //设备检修清理作业 结束作业后下一步流程为送电  状态值改为送电中:7
                            DataTable dt = userbll.GetUserTable(data.PowerGivePersonId.Split(','));
                            JPushApi.PushMessage(string.Join(",", dt.AsEnumerable().Select(t => t.Field <string>("account")).ToArray()), data.PowerGivePerson, "ZYAQZ010", data.JobTypeName + "已结束,待您进行送电,请您及时处理。", data.CreateUserName + "于" + data.CreateDate.Value.ToString("yyyy年MM月dd日") + "申请的" + data.JobTypeName + "已结束,需要您进行送电操作,请您及时处理。", data.Id);
                        }
                        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}'",
                                        keyValue, time.ToString("yyyy-MM-dd HH:mm:ss"), jobstate);
                }
            }
            else
            {
                if (ledgerType == "0")
                {
                    entity.RealityJobStartTime = time;

                    sql = string.Format(@"update BIS_JobApprovalForm set RealityJobStartTime=to_date('{1}','yyyy-mm-dd hh24:mi:ss')," +
                                        "WorkOperate='0',RealityJobEndTime='' where id='{0}'", keyValue, time.ToString("yyyy-MM-dd HH:mm:ss"));
                    entity.WorkOperate       = "0";
                    entity.RealityJobEndTime = null;
                }
                if (ledgerType == "1")
                {
                    entity.RealityJobEndTime = time;
                    if (iscomplete == "0")
                    {
                        entity.WorkOperate = "1";
                    }
                    sql = string.Format("update BIS_JobApprovalForm set WorkOperate='{2}',RealityJobEndTime=to_date('{1}','yyyy-mm-dd hh24:mi:ss') where id='{0}'",
                                        keyValue, time.ToString("yyyy-MM-dd HH:mm:ss"), entity.WorkOperate);
                }
                //更新作业安全证状态
                UpdateGerOp(keyValue, ledgerType, type, worktime, issendmessage, conditioncontent, conditionid, iscomplete);
            }
            service.UpdateData(sql);
            #region 添加执行情况信息
            FireWaterCondition Conditionentity = new FireWaterCondition();
            Conditionentity.Id                = !string.IsNullOrEmpty(conditionid) ? conditionid : "";
            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       = keyValue;
            firewaterbll.SubmitCondition(conditionid, Conditionentity);

            #endregion
        }