예제 #1
0
        public object GetCompactProtocol([FromBody] JObject json)
        {
            try
            {
                string  res      = json.Value <string>("json");
                dynamic dy       = JsonConvert.DeserializeObject <ExpandoObject>(res);
                string  keyValue = dy.keyValue;
                var     data     = new CompactBLL().GetLastCompactProtocol(keyValue);
                //dynamic getdate = JsonConvert.DeserializeObject<ExpandoObject>(Newtonsoft.Json.JsonConvert.SerializeObject(data));


                dynamic dataSource              = JsonConvert.DeserializeObject <ExpandoObject>(Newtonsoft.Json.JsonConvert.SerializeObject(data));
                IList <CompactEntity>  compact  = JsonConvert.DeserializeObject <IList <CompactEntity> >(JsonConvert.SerializeObject(dataSource.Compact));
                IList <ProtocolEntity> protocol = JsonConvert.DeserializeObject <IList <ProtocolEntity> >(JsonConvert.SerializeObject(dataSource.Protocol));
                string CompactID = "";
                if (compact.Count > 0)
                {
                    CompactID = compact[0].ID;
                }
                else
                {
                    CompactID = "";
                }
                var filelist01 = new FileInfoBLL().GetFileList(Newtonsoft.Json.JsonConvert.SerializeObject(CompactID));
                var ProtocolID = "";
                if (protocol.Count > 0)
                {
                    ProtocolID = protocol[0].ID;
                }
                else
                {
                    ProtocolID = "";
                }

                var filelist02 = new FileInfoBLL().GetFileList(Newtonsoft.Json.JsonConvert.SerializeObject(ProtocolID));

                return(new { Code = 0, Count = 1, Info = "操作成功", data = data, filelist01 = filelist01, filelist02 = filelist02 });
            }
            catch (Exception ex)
            {
                return(new { Code = -1, Count = 0, Info = ex.Message });
            }
        }
예제 #2
0
        public object SaveCompact([FromBody] JObject json)
        {
            try
            {
                string  res = json.Value <string>("json");
                dynamic dy  = JsonConvert.DeserializeObject <ExpandoObject>(res);

                var o1 = JsonConvert.DeserializeAnonymousType(res, new
                {
                    keyValue = string.Empty,
                    data     = string.Empty,
                    file     = string.Empty
                });
                var o = JsonConvert.DeserializeObject <CompactEntity>(dy.data);
                o.CREATEDATE = DateTime.Now;
                o.ID         = dy.keyValue;

                //string str = JsonConvert.SerializeObject(dy.file);
                //IList<FileInfoEntity> filelist = JsonConvert.DeserializeObject<IList<FileInfoEntity>>(o1.file);
                CompactBLL compactbll = new CompactBLL();
                compactbll.SaveForm(dy.keyValue, o);
                FileInfoBLL FileInfoBLL = new FileInfoBLL();
                JArray      jlist       = JArray.Parse(dy.file);
                foreach (var item in jlist)
                {
                    var file = new FileInfoEntity();
                    file.RecId          = dy.keyValue;
                    file.FileName       = JObject.Parse(item.ToString())["FileName"].ToString();
                    file.FilePath       = JObject.Parse(item.ToString())["FilePath"].ToString();
                    file.FileType       = JObject.Parse(item.ToString())["FileType"].ToString();
                    file.FileSize       = JObject.Parse(item.ToString())["FileSize"].ToString();
                    file.FileExtensions = JObject.Parse(item.ToString())["FileExtensions"].ToString();
                    FileInfoBLL.SaveForm("", file);
                }
                return(new { Code = 0, Count = 1, Info = "保存成功" });
            }
            catch (Exception ex)
            {
                return(new { Code = -1, Count = 0, Info = ex.Message });
            }
        }
        private void ExportDataByCode(string keyValue, string tempPath, string fileName)
        {
            var userInfo = OperatorProvider.Provider.Current();  //获取当前用户
            string strDocPath = Server.MapPath(tempPath);
            Aspose.Words.Document doc = new Aspose.Words.Document(strDocPath);
            DataSet ds = new DataSet();
            DataTable dtPro = new DataTable("project");
            dtPro.Columns.Add("untilname");//单位名称
            dtPro.Columns.Add("legalperson");//法人代表
            dtPro.Columns.Add("projectname");//工程名称
            dtPro.Columns.Add("nowtime");
            dtPro.Columns.Add("itemopinion");
            dtPro.Columns.Add("itemhead");  //项目负责人
            dtPro.Columns.Add("techhead"); //生成技术负责人
            dtPro.Columns.Add("safehead"); //安全监督负责人

            dtPro.Columns.Add("contractperiod");//合同期限
            dtPro.Columns.Add("dutydept");//项目管理部门
            dtPro.Columns.Add("applyperson");//制表人
            dtPro.Columns.Add("applytime");//制表时间
            dtPro.Columns.Add("outhead"); 
            
            DataTable dt = new DataTable("people");
            dt.Columns.Add("no");
            dt.Columns.Add("name");
            dt.Columns.Add("sex");
            dt.Columns.Add("idcard");
            dt.Columns.Add("worktype");
            dt.Columns.Add("health");
            dt.Columns.Add("workyear");
            dt.Columns.Add("education");
            dt.Columns.Add("birthday");
            dt.Columns.Add("cardno");

            HttpResponse resp = System.Web.HttpContext.Current.Response;

            PeopleReviewEntity p = peoplereviewbll.GetEntity(keyValue);

            OutsouringengineerEntity eng = Outsouringengineernll.GetEntity(p.OUTENGINEERID);
            OutsourcingprojectEntity pro = Outsourcingprojectbll.GetOutProjectInfo(eng.OUTPROJECTID);

            DataRow row = dtPro.NewRow();
            var comList = new CompactBLL().GetComoactTimeByProjectId(eng.ID);
            if (comList.Rows.Count > 0)
            {
                var startTime = string.Empty;
                DateTime r = new DateTime();
                if (DateTime.TryParse(comList.Rows[0]["mintime"].ToString(), out r))
                {
                    startTime = r.ToString("yyyy年MM月dd日");
                }
                var endTime = string.Empty;
                DateTime e= new DateTime();
                if (DateTime.TryParse(comList.Rows[0]["maxtime"].ToString(), out e))
                {
                    endTime = e.ToString("yyyy年MM月dd日");
                }
                row["contractperiod"] = startTime + "至" + endTime;
            }
            row["untilname"] = pro.OUTSOURCINGNAME;
            row["legalperson"] = pro.LEGALREP;

            row["projectname"] = eng.ENGINEERNAME;
            row["nowtime"] = DateTime.Now.ToString("yyyy-MM-dd");
            row["dutydept"] = eng.ENGINEERLETDEPT;
            row["applyperson"] = p.CREATEUSERNAME;
            row["applytime"] = p.CREATEDATE.Value.ToString("yyyy年MM月dd日");
            var sendDeptid = eng.ENGINEERLETDEPTID;
            List<AptitudeinvestigateauditEntity> list = auditbll.GetAuditList(keyValue).OrderByDescending(x => x.AUDITTIME).ToList();
            if (list.Count > 0)
            {
                for (int i = 0; i < list.Count; i++)
                {
                    if (sendDeptid == list[i].AUDITDEPTID)
                    {
                        var person = new UserBLL().GetEntity(list[i].AUDITPEOPLEID);
                        if (person != null)
                        {
                            //if (person.RoleName.Contains("负责人"))
                            //{
                                row["itemopinion"] = list[i].AUDITOPINION;
                                row["itemhead"] = list[i].AUDITPEOPLE;
                            //}
                        }
                    }
                    if (eng.OUTPROJECTID == list[i].AUDITDEPTID)
                    {
                        var person = new UserBLL().GetEntity(list[i].AUDITPEOPLEID);
                        if (person != null)
                        {
                            if (person.RoleName.Contains("负责人"))
                            {
                                row["outhead"] = list[i].AUDITPEOPLE;
                            }
                        }
                    }
                    string val = new DataItemDetailBLL().GetItemValue(userInfo.OrganizeCode);

                    if (!string.IsNullOrEmpty(val))
                    {
                        var deptList = val.Split(',');
                        if (deptList.Length > 1)
                        {
                            if (list[i].AUDITDEPTID.ToString() == deptList[0])
                            {
                                row["techhead"] = list[i].AUDITPEOPLE;
                            }
                            if (list[i].AUDITDEPTID == deptList[1])
                            {
                                row["safehead"] = list[i].AUDITPEOPLE;
                            }
                        }
                    }
                }
            }
            dtPro.Rows.Add(row);
            List<AptitudeinvestigatepeopleEntity> PeopleList = new AptitudeinvestigatepeopleBLL().GetList("").Where(x => x.PEOPLEREVIEWID == keyValue).ToList();
            if (PeopleList.Count > 0)
            {
                for (int i = 0; i < PeopleList.Count; i++)
                {
                    DataRow dtrow = dt.NewRow();
                    dtrow["no"] = (i + 1);
                    dtrow["name"] = PeopleList[i].REALNAME;
                    dtrow["sex"] = PeopleList[i].GENDER;
                    dtrow["idcard"] = PeopleList[i].IDENTIFYID;
                    dtrow["worktype"] = PeopleList[i].WORKOFTYPE;
                    dtrow["health"] = PeopleList[i].STATEOFHEALTH;
                    dtrow["workyear"] = PeopleList[i].WORKYEAR;
                    dtrow["education"] = PeopleList[i].DEGREESID;
                    dtrow["birthday"] = PeopleList[i].BIRTHDAY == null ? "" : PeopleList[i].BIRTHDAY.Value.ToString("yyyy-MM-dd");
                    string queryJson = Newtonsoft.Json.JsonConvert.SerializeObject(new
                    {
                        UserId = PeopleList[i].ID
                    });
                    var cardlist = new CertificateinspectorsBLL().GetList(queryJson).ToList();
                    for (int j = 0; j < cardlist.Count; j++)
                    {
                        dtrow["cardno"] += cardlist[j].CREDENTIALSCODE + ",";
                    }
                    if (dtrow["cardno"].ToString().Length > 0) {
                        dtrow["cardno"] = dtrow["cardno"].ToString().Substring(0, dtrow["cardno"].ToString().Length - 1);
                    }
                    dt.Rows.Add(dtrow);
                }
            }
            ds.Tables.Add(dt);
            ds.Tables.Add(dtPro);
            doc.MailMerge.Execute(dtPro);
            doc.MailMerge.ExecuteWithRegions(dt);
            doc.MailMerge.DeleteFields();
            doc.Save(resp, Server.UrlEncode(fileName), ContentDisposition.Attachment, Aspose.Words.Saving.SaveOptions.CreateSaveOptions(SaveFormat.Doc));
        }
예제 #4
0
        /// <summary>
        /// 入厂许可审批表
        /// </summary>
        /// <param name="keyValue">入厂许可审批ID</param>
        /// <returns></returns>
        public ActionResult ExportWord(string keyValue)
        {
            HttpResponse resp = System.Web.HttpContext.Current.Response;
            //报告对象

            string fileName   = "入厂许可审批表_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".doc";
            var    user       = ERCHTMS.Code.OperatorProvider.Provider.Current();
            var    tempconfig = new TempConfigBLL().GetList("").Where(x => x.DeptCode == user.OrganizeCode && x.ModuleCode == "RCXK").ToList();
            var    tempEntity = tempconfig.FirstOrDefault();
            string tempPath   = "";

            if (tempconfig.Count > 0)
            {
                if (tempEntity != null)
                {
                    switch (tempEntity.ProessMode)
                    {
                    case "TY":    //通用处理方式
                        tempPath = "Resource\\ExcelTemplate\\入厂许可审批表.doc";
                        break;

                    case "HJB":
                        tempPath = "Resource\\ExcelTemplate\\黄金埠入厂许可审批表.doc";
                        break;

                    default:
                        break;
                    }
                }
            }
            else
            {
                tempPath = "Resource\\ExcelTemplate\\入厂许可审批表.doc";
            }
            string strDocPath = Request.PhysicalApplicationPath + tempPath;

            Aspose.Words.Document doc = new Aspose.Words.Document(strDocPath);
            DataTable             dt  = new DataTable("B");

            dt.Columns.Add("OutSourcingDept");    //外包单位
            dt.Columns.Add("OutSourcingProject"); //工程名称
            dt.Columns.Add("ApplyNo");            //申请编号
            dt.Columns.Add("ProjectManager");     //项目经理和电话
            dt.Columns.Add("ContractName");       //合同名称
            dt.Columns.Add("ContractNo");         //合同编号
            for (int i = 1; i < 16; i++)
            {
                dt.Columns.Add("Result" + i);
            }
            dt.Columns.Add("approveidea1");
            dt.Columns.Add("approveperson1");
            dt.Columns.Add("approvedate1");
            dt.Columns.Add("approveidea2");
            dt.Columns.Add("approveperson2");
            dt.Columns.Add("approvedate2");


            DataTable dt1 = new DataTable("A");

            dt1.Columns.Add("ApproveDate");
            dt1.Columns.Add("ApprovePerson");
            dt1.Columns.Add("ApproveIdea");
            dt1.Columns.Add("ApproveContent");
            DataRow row = dt.NewRow();
            //外包工程记录
            DataTable sdt = intromissionbll.GetOutSourcingProjectByIntromId(keyValue);

            if (sdt.Rows.Count == 1)
            {
                row["OutSourcingDept"]    = sdt.Rows[0]["fullname"].ToString();     //外包单位
                row["OutSourcingProject"] = sdt.Rows[0]["engineername"].ToString(); //工程名称
                row["ApplyNo"]            = sdt.Rows[0]["applyno"].ToString();
                row["ProjectManager"]     = sdt.Rows[0]["engineerletpeople"].ToString() + "    " + sdt.Rows[0]["engineerletpeoplephone"].ToString();
                row["ContractName"]       = sdt.Rows[0]["engineername"].ToString() + "合同";
                var engineer = Outsouringengineernll.GetEntity(sdt.Rows[0]["outengineerid"].ToString());
                var compact  = new CompactBLL().GetListByProjectId(sdt.Rows[0]["outengineerid"].ToString()).OrderByDescending(t => t.CREATEDATE).FirstOrDefault();
                row["ContractNo"] = compact == null ? "" : compact.COMPACTNO;
                //审核记录
                List <AptitudeinvestigateauditEntity> list = aptitudeinvestigateauditbll.GetAuditList(keyValue);
                int num = 1;
                for (int i = 0; i < list.Count; i++)
                {
                    DataRow row1     = dt1.NewRow();
                    var     filepath = (Server.MapPath("~/") + list[i].AUDITSIGNIMG.ToString().Replace("../../", "").ToString()).Replace(@"\/", "/").ToString();
                    if (System.IO.File.Exists(filepath))
                    {
                        row1["ApprovePerson"] = filepath;
                    }
                    else
                    {
                        row1["ApprovePerson"] = Server.MapPath("~/content/Images/no_1.png");
                    }
                    //row1["ApprovePerson"] = Server.MapPath("~/") + list[i].AUDITSIGNIMG.ToString().Replace("../../", "").ToString();

                    row1["ApproveIdea"] = !string.IsNullOrEmpty(list[i].AUDITOPINION) ? list[i].AUDITOPINION.ToString() : "";
                    DateTime ApproveDate = list[i].AUDITTIME.Value;
                    row1["ApproveDate"] = ApproveDate.Year.ToString() + "年" + ApproveDate.Month.ToString() + "月" + ApproveDate.Day.ToString() + "日";

                    if (i == 0)
                    {
                        row1["ApproveContent"] = "项目所在部门接收意见";
                    }
                    else if (i == list.Count - 1)
                    {
                        row1["ApproveContent"] = "分管领导意见";
                    }
                    else
                    {
                        row1["ApproveContent"] = list[i].AUDITDEPT + "审查意见";
                    }
                    dt1.Rows.Add(row1);
                }
                if (list.Count > 0)
                {
                    row["approveidea1"] = !string.IsNullOrEmpty(list[0].AUDITOPINION) ? list[0].AUDITOPINION.ToString() : "";
                    var filepath = (Server.MapPath("~/") + list[0].AUDITSIGNIMG.ToString().Replace("../../", "").ToString()).Replace(@"\/", "/").ToString();
                    if (System.IO.File.Exists(filepath))
                    {
                        row["approveperson1"] = filepath;
                    }
                    else
                    {
                        row["approveperson1"] = Server.MapPath("~/content/Images/no_1.png");
                    }
                    DateTime ApproveDate = list[0].AUDITTIME.Value;
                    row["approvedate1"] = ApproveDate.Year.ToString() + "年" + ApproveDate.Month.ToString() + "月" + ApproveDate.Day.ToString() + "日";
                }
                if (list.Count > 1)
                {
                    row["approveidea2"] = !string.IsNullOrEmpty(list[1].AUDITOPINION) ? list[1].AUDITOPINION.ToString() : "";
                    var filepath = (Server.MapPath("~/") + list[1].AUDITSIGNIMG.ToString().Replace("../../", "").ToString()).Replace(@"\/", "/").ToString();
                    if (System.IO.File.Exists(filepath))
                    {
                        row["approveperson2"] = filepath;
                    }
                    else
                    {
                        row["approveperson2"] = Server.MapPath("~/content/Images/no_1.png");
                    }
                    DateTime ApproveDate = list[1].AUDITTIME.Value;
                    row["approvedate2"] = ApproveDate.Year.ToString() + "年" + ApproveDate.Month.ToString() + "月" + ApproveDate.Day.ToString() + "日";
                }
                //foreach (AptitudeinvestigateauditEntity entity in list)
                //{
                //    DataRow row1 = dt1.NewRow();
                //    row1["ApprovePerson"] = Server.MapPath("~/") + entity.AUDITSIGNIMG.ToString().Replace("../../", "").ToString();

                //    row1["ApproveIdea"] = !string.IsNullOrEmpty(entity.AUDITOPINION) ? entity.AUDITOPINION.ToString() : "";
                //    DateTime ApproveDate = entity.AUDITTIME.Value;
                //    row1["ApproveDate"] = ApproveDate.Year.ToString() + "年" + ApproveDate.Month.ToString() + "月" + ApproveDate.Day.ToString() + "日";
                //    num++;

                //}
            }

            doc.MailMerge.ExecuteWithRegions(dt1);
            DataTable dtCert = intromissionbll.GetDtRecordList(keyValue);//人员证书信息

            for (int i = 0; i < dtCert.Rows.Count; i++)
            {
                if (dtCert.Rows[i]["investigateresult"].ToString() == "无此项")
                {
                    dtCert.Rows[i]["investigateresult"] = "/";
                    dtCert.Rows[i]["signpic"]           = Server.MapPath("~/content/Images/no_1.png");
                }
                else
                {
                    if (string.IsNullOrWhiteSpace(dtCert.Rows[i]["signpic"].ToString()))
                    {
                        dtCert.Rows[i]["signpic"] = Server.MapPath("~/content/Images/no_1.png");
                    }
                    else
                    {
                        if (System.IO.File.Exists((Server.MapPath("~/") + dtCert.Rows[i]["signpic"].ToString().Replace("../../", "").ToString()).Replace(@"\/", "/").ToString()))
                        {
                            dtCert.Rows[i]["signpic"] = (Server.MapPath("~/") + dtCert.Rows[i]["signpic"].ToString().Replace("../../", "").ToString()).Replace(@"\/", "/").ToString();
                        }
                        else
                        {
                            dtCert.Rows[i]["signpic"] = Server.MapPath("~/content/Images/no_1.png");
                        }
                    }
                }
                int temp = i + 1;
                if (dt.Columns.Contains("Result" + temp))
                {
                    row["Result" + temp] = dtCert.Rows[i]["investigateresult"].ToString() == "已完成" ? "有" : "无";
                }
            }
            dt.Rows.Add(row);
            doc.MailMerge.Execute(dt);
            dtCert.TableName = "Investigate";
            doc.MailMerge.ExecuteWithRegions(dtCert);
            doc.MailMerge.DeleteFields();
            doc.Save(resp, Server.UrlEncode(fileName), ContentDisposition.Attachment, Aspose.Words.Saving.SaveOptions.CreateSaveOptions(SaveFormat.Doc));
            return(Success("导出成功!"));
        }