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 }); } }
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)); }
/// <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("导出成功!")); }