Пример #1
0
        /// <summary>
        /// 保存表单(新增、修改)
        /// </summary>
        /// <param name="keyValue">主键值</param>
        /// <param name="model">实体对象</param>
        /// <returns></returns>
        public void SaveForm(string keyValue, FireWaterModel model)
        {
            var res = DbFactory.Base().BeginTrans();

            try
            {
                Repository <FireWaterEntity> repFire = new Repository <FireWaterEntity>(DbFactory.Base());
                FireWaterEntity entity = repFire.FindEntity(keyValue);
                //新增
                if (entity == null)
                {
                    entity    = new FireWaterEntity();
                    entity.Id = keyValue;
                    entity.Create();
                    //实体赋值
                    this.copyProperties(entity, model);
                    //生成编码
                    entity.ApplyNumber = this.GetMaxCode();
                    //添加操作
                    res.Insert(entity);
                }
                else
                {
                    //编辑
                    entity.Modify(keyValue);
                    //实体赋值
                    this.copyProperties(entity, model);
                    //更新操作
                    res.Update(entity);
                }
                //添加或更新作业安全分析 先删除再添加
                res.Delete <HighRiskRecordEntity>(t => t.WorkId == entity.Id);
                if (model.RiskRecord != null)
                {
                    var num = 0;
                    foreach (var risk in model.RiskRecord)
                    {
                        risk.CreateDate = DateTime.Now.AddSeconds(-num);
                        risk.Create();
                        res.Insert(risk);
                        num++;
                    }
                }

                res.Commit();
            }
            catch (Exception ex)
            {
                res.Rollback();
                throw ex;
            }
        }
Пример #2
0
        public ActionResult SaveForm(string keyValue, string jsonData)
        {
            try
            {
                FireWaterModel model = JsonConvert.DeserializeObject <FireWaterModel>(jsonData);
                firewaterbll.SaveForm(keyValue, model);
            }
            catch (Exception ex)
            {
                return(Error("操作出错,错误信息:" + ex.Message));
            }

            return(Success("操作成功。"));
        }
Пример #3
0
        /// <summary>
        /// 从源实体给目标实体属性赋值
        /// </summary>
        /// <param name="target">目标</param>
        /// <param name="source">源</param>
        private void copyProperties(FireWaterEntity target, FireWaterModel source)
        {
            target.ApplyDeptId     = source.ApplyDeptId;
            target.ApplyDeptCode   = source.ApplyDeptCode;
            target.ApplyDeptName   = source.ApplyDeptName;
            target.ApplyUserId     = source.ApplyUserId;
            target.ApplyUserName   = source.ApplyUserName;
            target.ApplyNumber     = source.ApplyNumber;
            target.SpecialtyType   = source.SpecialtyType;
            target.WorkDeptType    = source.WorkDeptType;
            target.WorkDeptId      = source.WorkDeptId;
            target.WorkDeptCode    = source.WorkDeptCode;
            target.WorkDeptName    = source.WorkDeptName;
            target.EngineeringId   = source.EngineeringId;
            target.EngineeringName = source.EngineeringName;
            target.WorkUserIds     = source.WorkUserIds;
            target.WorkUserNames   = source.WorkUserNames;
            target.WorkUse         = source.WorkUse;
            target.WorkStartTime   = source.WorkStartTime;
            target.WorkEndTime     = source.WorkEndTime;
            target.WorkAreaCode    = source.WorkAreaCode;
            target.WorkAreaName    = source.WorkAreaName;
            target.WorkPlace       = source.WorkPlace;
            target.WorkContent     = source.WorkContent;
            target.Measure         = source.Measure;
            target.CopyUserIds     = source.CopyUserIds;
            target.CopyUserNames   = source.CopyUserNames;
            target.IsMessage       = source.IsMessage;
            target.ApplyState      = source.ApplyState;

            //审核流程信息
            target.FlowId           = source.FlowId;
            target.FlowName         = source.FlowName;
            target.FlowRole         = source.FlowRole;
            target.FlowRoleName     = source.FlowRoleName;
            target.FlowDept         = source.FlowDept;
            target.FlowDeptName     = source.FlowDeptName;
            target.InvestigateState = source.InvestigateState;
            target.FlowRemark       = source.FlowRemark;
            target.Tool             = source.Tool;
            target.hdTool           = source.hdTool;
        }
Пример #4
0
        /// <summary>
        /// 保存表单(新增、修改)
        /// 适用于保存及修改时,处理业务数据及初始状态
        /// </summary>
        /// <param name="keyValue">主键值</param>
        /// <param name="model">实体对象</param>
        /// <param name="auditEntity">审核实体对象</param>
        /// <returns></returns>
        public void SaveForm(string keyValue, FireWaterModel model)
        {
            try
            {
                Operator             currUser  = ERCHTMS.Code.OperatorProvider.Provider.Current();
                ManyPowerCheckEntity mpcEntity = null;
                if (model.WorkDeptType == "0")
                {
                    mpcEntity = peopleReviwservice.CheckAuditForNextByWorkUnit(currUser, "消防水使用-内部审核", model.WorkDeptId, model.FlowId, false);
                }
                else
                {
                    mpcEntity = peopleReviwservice.CheckAuditForNextByOutsourcing(currUser, "消防水使用-外部审核", model.WorkDeptId, model.FlowId, false, true, model.EngineeringId);
                }
                if (model.ApplyState == "0")
                {
                    model.FlowName         = "申请中";
                    model.InvestigateState = "0";
                }
                if (model.ApplyState == "1")
                {
                    //如果审核步骤不为空,处理流程信息及状态
                    if (mpcEntity != null)
                    {
                        model.FlowDept         = mpcEntity.CHECKDEPTID;
                        model.FlowDeptName     = mpcEntity.CHECKDEPTNAME;
                        model.FlowRole         = mpcEntity.CHECKROLEID;
                        model.FlowRoleName     = mpcEntity.CHECKROLENAME;
                        model.FlowId           = mpcEntity.ID;
                        model.FlowName         = mpcEntity.FLOWNAME;
                        model.ApplyState       = "1";
                        model.InvestigateState = "2";
                        model.FlowRemark       = !string.IsNullOrEmpty(mpcEntity.REMARK) ? mpcEntity.REMARK : "";

                        //推送消息到有审批权限的人
                        string type = model.FlowRemark != "1" ? "0" : "1";
                        new ScaffoldBLL().SendMessage(model.FlowDept, model.FlowRole, "ZY100", model.Id, "", "", type, !string.IsNullOrEmpty(model.SpecialtyType) ? model.SpecialtyType : "");
                    }
                    else
                    {
                        model.FlowRemark       = "";
                        model.FlowDept         = " ";
                        model.FlowDeptName     = " ";
                        model.FlowRole         = " ";
                        model.FlowRoleName     = " ";
                        model.ApplyState       = "3";
                        model.FlowName         = "已完结";
                        model.InvestigateState = "3";

                        string     Content      = "作业内容:" + model.WorkContent + "&#10;作业时间:" + model.WorkStartTime.Value.ToString("yyyy年MM月dd日 HH时mm分") + " 到 " + model.WorkEndTime.Value.ToString("yyyy年MM月dd日 HH时mm分") + "&#10;作业地点:" + model.WorkPlace;
                        UserEntity userEntity   = userservice.GetEntity(model.CreateUserId);
                        string[]   workuserlist = model.WorkUserIds.Split(',');
                        DataTable  dutyuserDt   = new DataTable();
                        dutyuserDt = userservice.GetUserTable(workuserlist);
                        //推送给作业申请人
                        if (userEntity != null)
                        {
                            JPushApi.PushMessage(userEntity.Account, userEntity.RealName, "ZY020", "消防水使用许可申请已通过,请及时处理", Content, keyValue);
                        }
                        //推送给作业负责人/作业人
                        if (dutyuserDt.Rows.Count > 0)
                        {
                            string Account  = "";
                            string RealName = "";
                            foreach (DataRow item in dutyuserDt.Rows)
                            {
                                Account  += item["account"].ToString() + ",";
                                RealName += item["realname"].ToString() + ",";
                            }
                            if (!string.IsNullOrEmpty(Account))
                            {
                                Account  = Account.Substring(0, Account.Length - 1);
                                RealName = RealName.Substring(0, RealName.Length - 1);
                            }
                            JPushApi.PushMessage(Account, RealName, "ZY020", "您有一条新的消防水使用作业任务,请及时处理", Content, keyValue);
                        }
                    }
                }

                service.SaveForm(keyValue, model);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #5
0
        public object GetForm([FromBody] JObject json)
        {
            try
            {
                string res = json.Value <string>("json");
                var    dy  = JsonConvert.DeserializeAnonymousType(res, new
                {
                    userid = string.Empty,
                    data   = new
                    {
                        id = string.Empty
                    }
                });
                //获取用户Id
                OperatorProvider.AppUserId = dy.userid;  //设置当前用户
                Operator curUser = OperatorProvider.Provider.Current();
                if (null == curUser)
                {
                    return(new { code = -1, info = "请求失败,请登录!" });
                }
                if (dy.data == null)
                {
                    throw new ArgumentException("缺少参数:data为空");
                }
                if (string.IsNullOrEmpty(dy.data.id))
                {
                    throw new ArgumentException("缺少参数:id为空");
                }
                var fireWaterEntity = firewaterbll.GetEntity(dy.data.id);
                if (fireWaterEntity == null)
                {
                    throw new ArgumentException("未找到信息");
                }
                string         webUrl   = new DataItemDetailBLL().GetItemValue("imgUrl");
                string         jsondata = JsonConvert.SerializeObject(fireWaterEntity);
                FireWaterModel model    = JsonConvert.DeserializeObject <FireWaterModel>(jsondata);
                if (model.SpecialtyType != null)
                {
                    model.SpecialtyTypeName = scaffoldbll.getName(fireWaterEntity.SpecialtyType, "SpecialtyType");
                }
                model.FireWaterAudits = scaffoldauditrecordbll.GetList(fireWaterEntity.Id);
                foreach (var item in model.FireWaterAudits)
                {
                    item.AuditSignImg = string.IsNullOrWhiteSpace(item.AuditSignImg) ? "" : webUrl + item.AuditSignImg.ToString().Replace("../../", "/");
                }
                DataTable     cdt    = fileInfoBLL.GetFiles(model.Id);
                IList <Photo> cfiles = new List <Photo>();
                foreach (DataRow item in cdt.Rows)
                {
                    Photo p = new Photo();
                    p.fileid   = item[0].ToString();
                    p.filename = item[1].ToString();
                    p.fileurl  = dataitemdetailbll.GetItemValue("imgUrl") + item[2].ToString().Substring(1);
                    cfiles.Add(p);
                }
                model.cfiles = cfiles;
                DataTable     conditionfile  = fileInfoBLL.GetFiles(model.Id + "01");
                IList <Photo> conditionFiles = new List <Photo>();
                foreach (DataRow item in conditionfile.Rows)
                {
                    Photo p = new Photo();
                    p.fileid   = item[0].ToString();
                    p.filename = item[1].ToString();
                    p.fileurl  = dataitemdetailbll.GetItemValue("imgUrl") + item[2].ToString().Substring(1);
                    conditionFiles.Add(p);
                }
                model.conditionFiles = conditionFiles;

                model.conditionEntity = firewaterbll.GetConditionEntity(model.Id);

                model.RiskRecord = highriskrecordbll.GetList(model.Id).ToList();
                string moduleName = string.Empty;
                string projectid  = "";
                if (fireWaterEntity.WorkDeptType == "0")//单位内部
                {
                    moduleName = "消防水使用-内部审核";
                }
                else
                {
                    moduleName = "消防水使用-外部审核";
                    projectid  = fireWaterEntity.EngineeringId;
                }
                var nodelist = firewaterbll.GetAppFlowList(fireWaterEntity.Id, moduleName);
                model.CheckFlow = nodelist;

                #region 获取执行情况
                IList <FireWaterCondition> conditionlist = firewaterbll.GetConditionList(fireWaterEntity.Id).OrderBy(t => t.CreateDate).ToList();
                for (int i = 0; i < conditionlist.Count; i++)
                {
                    var item = conditionlist[i];
                    List <FileInfoEntity> piclist = fileInfoBLL.GetFileList(item.Id);
                    IList <ERCHTMS.Entity.HighRiskWork.ViewModel.Photo> temppiclist = new List <ERCHTMS.Entity.HighRiskWork.ViewModel.Photo>();
                    foreach (var temp in piclist)
                    {
                        ERCHTMS.Entity.HighRiskWork.ViewModel.Photo pic = new ERCHTMS.Entity.HighRiskWork.ViewModel.Photo();
                        pic.filename = temp.FileName;
                        pic.fileurl  = dataitemdetailbll.GetItemValue("imgUrl") + temp.FilePath.Substring(1);
                        pic.fileid   = temp.FileId;
                        temppiclist.Add(pic);
                    }
                    item.piclist = temppiclist;
                    List <FileInfoEntity> filelist = fileInfoBLL.GetFileList(item.Id + "_02");
                    IList <ERCHTMS.Entity.HighRiskWork.ViewModel.Photo> tempfilelist = new List <ERCHTMS.Entity.HighRiskWork.ViewModel.Photo>();
                    foreach (var temp in filelist)
                    {
                        ERCHTMS.Entity.HighRiskWork.ViewModel.Photo pic = new ERCHTMS.Entity.HighRiskWork.ViewModel.Photo();
                        pic.filename = temp.FileName;
                        pic.fileurl  = dataitemdetailbll.GetItemValue("imgUrl") + temp.FilePath.Substring(1);
                        pic.fileid   = temp.FileId;
                        tempfilelist.Add(pic);
                    }
                    item.filelist = tempfilelist;
                    item.num      = i / 2 + 1;
                }
                model.conditionlist = conditionlist;
                #endregion

                Dictionary <string, string> dict_props = new Dictionary <string, string>();
                JsonSerializerSettings      settings   = new JsonSerializerSettings
                {
                    ContractResolver = new LowercaseContractResolver(dict_props), //转小写,并对指定的列进行自定义名进行更换
                    DateFormatString = "yyyy-MM-dd HH:mm"
                };
                return(new { code = 0, info = "获取数据成功", data = JObject.Parse(JsonConvert.SerializeObject(model, Formatting.None, settings)) });
            }
            catch (Exception ex)
            {
                return(new { code = -1, data = "", info = ex.Message });
            }
        }