/// <summary> /// /// </summary> /// <param name="id">id == wg_jobtemlate - jobid</param> /// <returns></returns> public ActionResult EditList(string id) { MeasuresBLL mbll = new MeasuresBLL(); var meetingjoblist = workmeetingbll.GetJobs("", "", "", "", "").Where(x => x.TemplateId == id).Select(x => x.JobId).ToList(); var dangers = new DangerService().GetList("").ToList().Where(x => meetingjoblist.Contains(x.JobId)).ToList(); foreach (DangerEntity d in dangers) { var measures = mbll.GetMeasureList(d.Id).OrderBy(x => x.DangerSource); var dangertemplates = workmeetingbll.getdangertemplate(id).OrderBy(x => x.Dangerous); int i = 1; foreach (MeasuresEntity m in measures) { d.newdanger += "(" + i + ")." + m.DangerSource + "<br />"; d.newmeasure += "(" + i + ")." + m.Measure + "<br />"; i++; } i = 1; foreach (DangerTemplateEntity t in dangertemplates) { d.olddanger += "(" + i + ")." + t.Dangerous + "<br />"; d.oldmeasure += "(" + i + ")." + t.Measure + "<br />"; i++; } } ViewData["dangers"] = dangers; return(View()); }
public void Down(string keyValue) { HazardsourceBLL hazardsourcebll = new HazardsourceBLL(); //查询数据 var entity = hazardsourcebll.GetEntity(keyValue); //数据合并 string[] text = new string[] { }; if (entity.Way == "DEC") { text = new string[] { "DistrictName", "DangerSource", "AccidentName", "DeptName", "JdglzrrFullName", "Way", "ItemDecQ", "ItemDecQ1", "ItemDecB", "ItemDecB1", "ItemDecR", "IsDanger", "Grade", "MeaSure" } } ; else { text = new string[] { "DistrictName", "DangerSource", "AccidentName", "DeptName", "JdglzrrFullName", "Way", "ItemA", "ItemB", "ItemC", "ItemR", "IsDanger", "Grade", "MeaSure" } };; MeasuresBLL measuresbll = new MeasuresBLL(); var data = measuresbll.GetList(" and riskId='" + keyValue + "'"); var MeaSureShow = ""; int i = 1; foreach (var item in data) { MeaSureShow += i + "、" + item.Content + "\r\n"; i++; } //if (!string.IsNullOrEmpty(entity.MeaSure)) //{ // var arr = entity.MeaSure.Split(';'); // int i = 1; // foreach (var item in arr) // { // MeaSureShow += i + "、" + item + "\r\n"; // i++; // } //} string[] value = new string[] { }; var tempPath = Server.MapPath("~/Resource/Temp/辨识分级记录.doc"); var outputPath = Server.MapPath("~/Resource/ExcelTemplate/辨识分级记录.doc"); if (entity.Way == "DEC") { value = new string[] { entity.DistrictName, entity.DangerSource, entity.AccidentName, entity.DeptName, entity.JdglzrrFullName, entity.Way == "DEC" ? "危险化学品重大危险源辨识" : "LEC法风险辨识", entity.ItemDecQ, entity.ItemDecQ1, entity.ItemDecB.ToString(), entity.ItemDecB1, entity.ItemDecR.ToString(), entity.IsDanger == 1 ? "是" : "否", entity.GradeVal > 0 ? entity.Grade : "未定级", MeaSureShow }; } else { tempPath = Server.MapPath("~/Resource/Temp/辨识分级记录2.doc"); outputPath = Server.MapPath("~/Resource/ExcelTemplate/辨识分级记录2.doc"); value = new string[] { entity.DistrictName, entity.DangerSource, entity.AccidentName, entity.DeptName, entity.JdglzrrFullName, entity.Way == "DEC" ? "危险化学品重大危险源辨识" : "法风险辨识", entity.ItemA.ToString(), entity.ItemB.ToString(), entity.ItemC.ToString(), entity.ItemR.ToString(), entity.IsDanger == 1 ? "是" : "否", entity.GradeVal > 0 ? entity.Grade : "未定级", MeaSureShow }; } Aspose.Words.Document doc = new Aspose.Words.Document(tempPath); //数据合并 doc.MailMerge.Execute(text, value); doc.Save(outputPath); //调用导出方法 var docStream = new MemoryStream(); doc.Save(docStream, SaveOptions.CreateSaveOptions(Aspose.Words.SaveFormat.Doc)); Response.ContentType = "application/msword"; Response.AddHeader("content-disposition", "attachment;filename=辨识分级记录.doc"); Response.BinaryWrite(docStream.ToArray()); Response.End(); }
public string ImportHazardsource() { //if (OperatorProvider.Provider.Current().IsSystem) //{ // return "超级管理员无此操作权限"; //} string orgId = OperatorProvider.Provider.Current().OrganizeId;//所属公司 int error = 0; string message = "请选择格式正确的文件再导入!"; string falseMessage = ""; int count = HttpContext.Request.Files.Count; if (count > 0) { HttpPostedFileBase file = HttpContext.Request.Files[0]; if (string.IsNullOrEmpty(file.FileName)) { return(message); } if (!(file.FileName.Substring(file.FileName.IndexOf('.')).Contains("xls") || file.FileName.Substring(file.FileName.IndexOf('.')).Contains("xlsx"))) { return(message); } string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + System.IO.Path.GetExtension(file.FileName); file.SaveAs(Server.MapPath("~/Resource/temp/" + fileName)); DataTable dt = ExcelHelper.ExcelImport(Server.MapPath("~/Resource/temp/" + fileName)); int order = 1; for (int i = 1; i < dt.Rows.Count; i++) { order = i; // 所属区域 var districtname = dt.Rows[i][0].ToString(); var district = bis_districtbll.GetList().Where(e => e.DistrictName == districtname).FirstOrDefault(); if (district == null) { falseMessage += "第" + (i) + "行导入失败,所属区域不存在!</br>"; error++; continue; } // 危险源名称/场所 var dangersource = dt.Rows[i][1].ToString(); //可能导致的事故类型 var accidentname = dt.Rows[i][2].ToString(); var accidenttype = ""; //int checkacc = 0; //var listaccident = accidentname.Split(','); //foreach (var item in listaccident) //{ // var datarow = didbll.GetListByCode("AccidentType").Select(" ItemName='" + item + "'"); // if (datarow == null || datarow.Count() == 0) // { // checkacc++; // } // else // { // if (accidenttype == "") // accidenttype = datarow[0]["itemvalue"].ToString(); // else // accidenttype += "," + datarow[0]["itemvalue"].ToString(); // } //} //if (checkacc > 0) //{ // falseMessage += "第" + (i) + "行导入失败,可能导致的事故类型不存在!</br>"; // error++; // continue; //} //危险源风险等级 string grade = dt.Rows[i][3].ToString(); var gradeval = grade == "一级" ? "1" : (grade == "二级" ? "2" : (grade == "三级" ? "3" : "4")); //安全控制措施 var measure = dt.Rows[i][4].ToString(); var listmeasure = measure.Split('&'); //责任部门 string departname = dt.Rows[i][5].ToString(); var depart = departBLL.GetList().Where(e => e.FullName == departname && e.OrganizeId == orgId).FirstOrDefault(); var org = orgBLL.GetList().Where(e => e.FullName == departname).FirstOrDefault(); if (depart == null && org == null) { falseMessage += "第" + (i) + "行导入失败,责任部门不存在!</br>"; error++; continue; } //监督管理责任人 string fullname = dt.Rows[i][6].ToString(); Expression <Func <UserEntity, bool> > condition = e => e.RealName == fullname && e.OrganizeId == orgId; var user = userBLL.GetListForCon(condition).FirstOrDefault(); if (user == null) { falseMessage += "第" + (i) + "行导入失败,监督管理责任人不存在!</br>"; error++; continue; } //风险评价 L,E,C,D string L = dt.Rows[i][7].ToString(); string E = dt.Rows[i][8].ToString(); string C = dt.Rows[i][9].ToString(); string D = dt.Rows[i][10].ToString(); //是否重大危险源 string isdangername = dt.Rows[i][11].ToString(); int? isdanger = isdangername == "是" ? 1 : 0; try { var item = new HazardsourceEntity { ID = Guid.NewGuid().ToString(), MeaSureNum = listmeasure.Count(), DistrictName = districtname, DistrictId = district.DistrictID, DangerSource = dangersource, AccidentName = accidentname, AccidentType = accidenttype, Grade = grade, GradeVal = Convert.ToInt32(gradeval), DeptName = departname, DeptCode = depart.EnCode, JdglzrrFullName = fullname, JdglzrrUserId = user.UserId, ItemA = decimal.Parse(L), ItemB = decimal.Parse(E), ItemC = decimal.Parse(C), ItemR = decimal.Parse(D), IsDanger = isdanger, Way = "LEC", Status = 1 }; item.ID = Guid.NewGuid().ToString(); hazardsourcebll.SaveForm("", item); var list = new List <MeasuresEntity>(); foreach (var item2 in listmeasure) { if (string.IsNullOrEmpty(item2)) { continue; } list.Add(new MeasuresEntity { RiskId = item.ID, Content = item2 }); } var mbll = new MeasuresBLL(); mbll.SaveForm("", list); } catch { error++; } } count = dt.Rows.Count - 1; message = "共有" + count + "条记录,成功导入" + (count - error) + "条,失败" + error + "条"; message += "</br>" + falseMessage; } return(message); }