///<summary>
        ///获取详情:
        ///</summary>
        /// <param name="id">数据Id</param>
        /// <returns>数据详情model</returns>
        public Result <ProjectApprovalView> GetProjectApprovalModel(long id)
        {
            Result <ProjectApprovalView> result = new Result <ProjectApprovalView>();

            try
            {
                ProjectApprovalView view = new ProjectApprovalView();
                var model = DataOperateBusiness <Epm_TzProjectPolit> .Get().GetModel(id);

                if (model != null)
                {
                    var attachs = DataOperateBusiness <Epm_TzAttachs> .Get().GetList(i => i.DataId == id && i.TableName == "Epm_TzProjectPolit").OrderBy(p => p.Sort).ToList();

                    model.TzAttachs = attachs;
                }
                view.ProjectPolit           = model;
                view.ProjectAuditRecordList = DataOperateBusiness <Epm_ProjectAuditRecord> .Get().GetList(t => t.ApprovalId == id).ToList();

                view.FileList = DataOperateBasic <Base_Files> .Get().GetList(i => i.TableId == id && i.TableName == "Epm_TzProjectPolit").ToList();

                result.Data = view;
                result.Flag = EResultFlag.Success;
            }
            catch (Exception ex)
            {
                result.Data      = null;
                result.Flag      = EResultFlag.Failure;
                result.Exception = new ExceptionEx(ex, "GetProjectApprovalModel");
            }
            return(result);
        }
示例#2
0
        public ActionResult Add(Epm_TzProjectPolit model)
        {
            ProjectApprovalView view = new ProjectApprovalView();

            view.ProjectPolit = model;
            Result <int> result       = new Result <int>();
            string       fileDataJson = Request.Form["fileDataJsonFile"];//获取上传文件json字符串

            if (!string.IsNullOrEmpty(fileDataJson))
            {
                view.FileList = JsonConvert.DeserializeObject <List <Base_Files> >(fileDataJson);//将文件信息json字符
            }
            using (ClientSiteClientProxy proxy = new ClientSiteClientProxy(ProxyEx(Request)))
            {
                result = proxy.AddProjectApproval(view);
            }
            return(Json(result.ToResultView()));
        }
        ///<summary>
        ///添加:
        ///</summary>
        /// <param name="model">要添加的model</param>
        /// <returns>受影响的行数</returns>
        public Result <int> AddProjectApproval(ProjectApprovalView model)
        {
            Result <int> result = new Result <int>();

            try
            {
                model.ProjectPolit = SetCreateUser(model.ProjectPolit);

                var XtWorkFlow = System.Configuration.ConfigurationManager.AppSettings.Get("XtWorkFlow");

                if (model.ProjectPolit.State == (int)PreProjectState.WaitApproval && XtWorkFlow == "1")
                {
                    ProjectApprovalApplyView view = new ProjectApprovalApplyView();
                    view.txt_xmmc = model.ProjectPolit.ProjectName;

                    if (model.ProjectPolit.CompanyId != null)
                    {
                        var company = DataOperateBasic <Base_Company> .Get().GetModel(model.ProjectPolit.CompanyId.Value);

                        if (company == null)
                        {
                            throw new Exception("未获取到申请单位信息!");
                        }
                        view.sub_sqdw = company.ObjeId;
                    }
                    else
                    {
                        throw new Exception("请选择申请单位!");
                    }

                    view.date_kgrq   = string.Format("{0:yyyy-MM-dd}", model.ProjectPolit.StartDate);
                    view.date_jgrq   = string.Format("{0:yyyy-MM-dd}", model.ProjectPolit.EndDate);
                    view.date_ysrq   = string.Format("{0:yyyy-MM-dd}", model.ProjectPolit.AcceptDate);
                    view.date_zgrq   = string.Format("{0:yyyy-MM-dd}", model.ProjectPolit.RectFinishDate);
                    view.date_jssj   = string.Format("{0:yyyy-MM-dd}", model.ProjectPolit.FinalDate);
                    view.date_sjsj   = string.Format("{0:yyyy-MM-dd}", model.ProjectPolit.AuditDate);
                    view.txts_zlsfqq = model.ProjectPolit.FullFiles;
                    view.txt_ysyj    = model.ProjectPolit.AcceptOpinion;
                    view.date_sqrq   = string.Format("{0:yyyy-MM-dd}", DateTime.Now);

                    var baseUser = DataOperateBasic <Base_User> .Get().GetModel(model.ProjectPolit.CreateUserId);

                    if (baseUser == null)
                    {
                        throw new Exception("未找到申请人相关信息!");
                    }

                    view.hr_sqr  = baseUser.ObjeId;
                    view.file_fj = "";

                    model.ProjectPolit       = SetCurrentUser(model.ProjectPolit);
                    model.ProjectPolit.State = 0;

                    if (model.FileList.Count > 0)
                    {
                        AddFilesByTable(model.ProjectPolit, model.FileList); //上传附件

                        foreach (var item in model.FileList)
                        {
                            switch (item.TableColumn)
                            {
                            case "SBJJ":            // 销售企业二级单位验收主要事项表
                                view.file_fj = XtWorkFlowService.GetXtAttachPaht(item.Url);
                                break;

                            case "SGSC":            // 施工转生产界面交接确认单
                                view.file_sgdw = XtWorkFlowService.GetXtAttachPaht(item.Url);
                                break;

                            case "GCJJ":            // 工程交接证书
                                view.file_gcjjzs = XtWorkFlowService.GetXtAttachPaht(item.Url);
                                break;

                            default:
                                break;
                            }
                        }
                    }

                    model.ProjectPolit.WorkFlowId = XtWorkFlowService.CreateApplyWorkFlow(view);
                }

                var rows = DataOperateBusiness <Epm_TzProjectPolit> .Get().Add(model.ProjectPolit);

                result.Data = rows;
                result.Flag = EResultFlag.Success;
                WriteLog(AdminModule.ProjectApproval.GetText(), SystemRight.Add.GetText(), "新增: " + model.ProjectPolit.Id);
            }
            catch (Exception ex)
            {
                result.Data      = -1;
                result.Flag      = EResultFlag.Failure;
                result.Exception = new ExceptionEx(ex, "AddProjectApproval");
            }
            return(result);
        }
        /// <summary>
        /// 修改验收状态
        /// </summary>
        /// <param name="id"></param>
        /// <param name="state"></param>
        /// <returns></returns>
        public Result <int> UpdateCompletionAcceptanceResUploadState(List <long> ids, string state)
        {
            Result <int> result = new Result <int>();

            try
            {
                foreach (var item in ids)
                {
                    //验收申请信息
                    var model = DataOperateBusiness <Epm_CompletionAcceptanceResUpload> .Get().GetModel(item);

                    if (model != null)
                    {
                        SetCurrentUser(model);
                        model.State = (int)state.ToEnumReq <PreProjectApprovalState>();
                        var rows = DataOperateBusiness <Epm_CompletionAcceptanceResUpload> .Get().Update(model);

                        #region 试运行申请
                        //如果状态是已经提交,生成数据
                        if (model.State == (int)PreProjectApprovalState.ApprovalSuccess)
                        {
                            ProjectApprovalView vi   = new ProjectApprovalView();
                            Epm_TzProjectPolit  polt = new Epm_TzProjectPolit();

                            polt.ProjectId = model.ProjectId;                            //项目ID
                            polt.State     = (int)PreProjectApprovalState.WaitSubmitted; //状态
                            polt.CompanyId = CurrentUser.CompanyId;;

                            polt.CompanyName = CurrentUser.CompanyName;
                            polt.ProjectName = model.ProjectName;
                            SetCurrentUser(polt);
                            SetCreateUser(polt);
                            vi.ProjectPolit = polt;

                            AddProjectApproval(vi);
                        }
                        #endregion

                        result.Data = rows;
                        result.Flag = EResultFlag.Success;

                        #region 更新RPA数据
                        var hostAddress = System.Configuration.ConfigurationManager.AppSettings.Get("RPAPath");
                        var rpaModel    = new RPA_CompletionInfo();
                        var omadsModel  = new OMADS_CompletionInfo();
                        var tempModel   = new TEMP_CompletionInfo();
                        #region rpaModel
                        rpaModel.CompletionDate = DateTime.Now;
                        rpaModel.Settlement     = 0;
                        rpaModel.IsSynchron     = "";
                        rpaModel.username       = "******";

                        rpaModel.WriteMark     = 0;
                        rpaModel.WriteResult   = 0;
                        rpaModel.FollowOperate = "";

                        SetCreateUser(rpaModel);
                        SetCurrentUser(rpaModel);


                        #endregion
                        #region omadsModel
                        omadsModel.CompletionDate = DateTime.Now;
                        omadsModel.Settlement     = 0;
                        omadsModel.IsSynchron     = "";
                        omadsModel.username       = "******";

                        omadsModel.WriteMark     = 0;
                        omadsModel.WriteResult   = 0;
                        omadsModel.FollowOperate = "";

                        SetCreateUser(rpaModel);
                        SetCurrentUser(rpaModel);

                        #endregion
                        #region tempModel
                        tempModel.CompletionDate = DateTime.Now;
                        tempModel.Settlement     = 0;
                        tempModel.IsSynchron     = "";
                        tempModel.username       = "******";
                        tempModel.WriteMark      = 0;
                        tempModel.WriteResult    = 0;
                        tempModel.FollowOperate  = "";

                        SetCreateUser(rpaModel);
                        SetCurrentUser(rpaModel);

                        #endregion

                        DataOperateBusiness <RPA_CompletionInfo> .Get().Add(rpaModel);

                        DataOperateBusiness <OMADS_CompletionInfo> .Get().Add(omadsModel);

                        DataOperateBusiness <TEMP_CompletionInfo> .Get().Add(tempModel);

                        #endregion
                    }
                    else
                    {
                        throw new Exception("该竣工验收信息不存在");
                    }
                }
            }
            catch (Exception ex)
            {
                result.Data      = -1;
                result.Flag      = EResultFlag.Failure;
                result.Exception = new ExceptionEx(ex, "UpdateCompletionAcceptanceResUploadState");
            }
            return(result);
        }