protected bool ImportFromExcelToDelete(DataSet ds) { try { System.Data.DataTable dt = ds.Tables[0]; int nAll = dt.Rows.Count; int nDelete = 0; int nEmpty = 0; foreach (System.Data.DataRow dr in dt.Rows) { if (dr["SelectX"].ToString().ToLower() == "x") { string RealCode = dr["RealCode"].ToString().Trim(); //判断是否存在 if (!KPI_RealTagDal.CodeExist(RealCode, "")) { //MessageBox.popupClientMessage(this.Page, " 该机组的输出标签已存在!", "call();"); nEmpty += 1; continue; } else { //main tag //string RealID = KPI_RealTagDal.GetRealID(RealCode); KPI_RealTagEntity mEntity = new KPI_RealTagEntity(); mEntity.RealID = KPI_RealTagDal.GetID(RealCode); KPI_RealTagDal.Delete(mEntity); nDelete += 1; } } } string strInfor = "标签点总数为:{0}个, 删除成功:{1}个,空标签点: {2}个。"; strInfor = string.Format(strInfor, nAll, nDelete, nEmpty); MessageBox.popupClientMessage(this.Page, strInfor, "call();"); return(true); } catch (Exception ee) { // MessageBox.popupClientMessage(this.Page, ee.Message, "call();"); return(false); } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { //btnApply.Attributes.Add("onclick", "setDivPos('Lay1');Lay1.style.visibility='';progress_update();"); //数据信息 DataTable dt = KPI_RealTagDal.GetRealXYZLists(); ddl_ECXLineXRealTag.Items.Add(new ListItem("默认机组负荷", "NULLDATA")); ddl_ECXLineYRealTag.Items.Add(new ListItem("默认机组负荷", "NULLDATA")); foreach (DataRow dr in dt.Rows) { ddl_ECXLineXRealTag.Items.Add(new ListItem(dr["Name"].ToString(), dr["ID"].ToString())); ddl_ECXLineYRealTag.Items.Add(new ListItem(dr["Name"].ToString(), dr["ID"].ToString())); } //初始化列表 dtCurve = CurveTagDal.GetCurvesByGroup(); foreach (DataRow dr in dtCurve.Rows) { rblCurveTags.Items.Add(new ListItem(dr["Name"].ToString(), dr["Group"].ToString())); } //初始化 dtScore = ECTagDal.GetInitScore(); //判断是否新建或编辑 if (Request.QueryString["ecid"] != null) { ViewState["ecid"] = Request.QueryString["ecid"].ToString(); btnAddScore.Enabled = true; BindValues(); } else { //添加 ViewState["ecid"] = ""; btnAddScore.Enabled = false; } tbxXLineXYZ.Text = "0.00"; gvXLine.ShowHeader = false; BindXLine(true); } }
/// <summary> /// //设备信息 /// </summary> void BindReal() { string UnitID = ddlUnitID.SelectedValue.Trim(); if (UnitID == "ALL") { UnitID = ""; } //信息 DataTable dtReal = KPI_RealTagDal.GetTagLists(UnitID); gvReal.DataSource = dtReal; gvReal.DataBind(); }
protected void btnApply_Click(object sender, EventArgs e) { if (gvTable.Rows.Count <= 0) { return; } for (int i = 0; i < gvTable.Rows.Count; i++) { KPI_RealTagEntity csE = new KPI_RealTagEntity(); csE.RealID = gvTable.Rows[i]["RealID"].ToString(); csE.RealDisplay = (10 + i).ToString(); KPI_RealTagDal.Update(csE); } MessageBox.popupClientMessage(this.Page, "排序成功!", "call();"); }
public override void DataBind() { TagRepeater.DataSource = KPI_RealTagDal.GetRealTags(UnitID); base.DataBind(); Literal lblRealID; CheckBox chkSelected; using (SATagMapDataAccess DataAccess = new SATagMapDataAccess()) { List <String> TagIDList = DataAccess.GetSATagMaps(SAID).Select(p => p.RealID).ToList <String>(); RepeaterItemCollection Items = TagRepeater.Items; foreach (RepeaterItem Item in Items) { lblRealID = (Literal)Item.FindControl("lblRealID"); chkSelected = (CheckBox)Item.FindControl("chkSelected"); chkSelected.Checked = TagIDList.Contains(lblRealID.Text); } } }
protected void gvReal_RowCommand(object sender, GridViewCommandEventArgs e) { string keyid = e.CommandArgument.ToString(); if (e.CommandName == "dataDelete") { if (KPI_RealTagDal.DeleteTag(keyid)) { MessageBox.popupClientMessage(this.Page, "删除成功!", "call();"); BindReal(); } else { MessageBox.popupClientMessage(this.Page, "删除错误!", "call();"); } } }
////////////////////////////////////////////////////////////////////////////// #region Define Functions /// <summary> /// /// </summary> /// <returns></returns> public bool KPIInitialVar() { try { //是否取服务器时间 bTimeMode = KPI_SystemDal.GetKPITimeMode() == 1 ? true : false; //偏置时间 nOffset = KPI_SystemDal.GetKPIOffset(); //初始所有List<> ltUnits = KPI_UnitDal.GetValidEntity(); ltSeqs = KPI_SeqDal.GetValidEntity(); ltKpis = KpiDal.GetValidEntity(); //实时、手录、曲线指标 ltReals = KPI_RealTagDal.GetAllEntity(); ltInputs = KPI_InputTagDal.GetAllEntity(); ltCurves = CurveTagDal.GetAllEntity(); //计算周期 List <CycleEntity> ltCYs = CycleDal.GetAllEntity(); dicCYs = new Dictionary <string, CycleEntity>(); foreach (CycleEntity cye in ltCYs) { dicCYs[cye.CycleID] = cye; } //经济指标 ltECs = ECTagDal.GetValidEntity(); ltXLines = ECTagDal.GetAllXLineEntity(); ltScores = ECTagDal.GetAllScoreEntity(); ///////////////////////////////////////////////////////////////// //安全指标 dicUnitStatus = new Dictionary <string, bool>(); dicUnitPEs = new Dictionary <string, double>(); dicTags = new Dictionary <string, double>(); dicRealTag = new Dictionary <string, RealTag>(); } catch (Exception ex) { LogUtil.LogMessage(ex.ToString()); return(false); } return(true); }
protected void btnAddReal_Click(object sender, EventArgs e) { if (ddlUnitID.SelectedValue == "ALL") { MessageBox.popupClientMessage(this.Page, "请选择具体机组!", "call();"); return; } string UnitID = ddlUnitID.SelectedValue.Trim(); int index = KPI_RealTagDal.IDCounts(UnitID); string sID = PageControl.GetGuid(); KPI_RealTagEntity ote = new KPI_RealTagEntity(); ote.RealID = sID; ote.UnitID = UnitID; ote.RealCode = "InputCode"; ote.RealDesc = "Input DEsc"; ote.RealEngunit = "Input Engunit"; ote.RealSnapshot = "0"; ote.RealSort = "1"; ote.RealDisplay = "0"; ote.RealXYZ = "0"; ote.RealNote = ""; ote.RealCreateTime = DateTime.Now.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss"); ote.RealModifyTime = ote.RealCreateTime; if (KPI_RealTagDal.Insert(ote)) { //MessageBox.popupClientMessage(this.Page, "添加成功!", "call();"); } else { MessageBox.popupClientMessage(this.Page, "添加错误!", "call();"); } gvReal.EditIndex = index; BindReal(); }
//导出 protected void btnExcelExport_Click(object sender, EventArgs e) { string strExcelFile = "KPI_RealTag"; try { System.Data.DataTable dt = KPI_RealTagDal.GetRealTagListForExcel(); if (dt == null) { return; } ExportToSpreadsheet(dt, strExcelFile); } catch (Exception ee) { MessageBox.popupClientMessage(this.Page, "导出信息错误!" + ee.Message, "call();"); return; } return; }
protected bool ImportFromExcelToModify(DataSet ds) { try { System.Data.DataTable dt = ds.Tables[0]; int nAll = dt.Rows.Count; int nModify = 0; int nNoExist = 0; foreach (System.Data.DataRow dr in dt.Rows) { if (dr["SelectX"].ToString().ToLower() == "x") { string RealCode = dr["RealCode"].ToString().Trim(); //判断是否存在 if (!KPI_RealTagDal.CodeExist(RealCode, "")) { //MessageBox.popupClientMessage(this.Page, " 该机组的输出标签已存在!", "call();"); nNoExist += 1; continue; } //main tag string keyid = KPI_RealTagDal.GetID(RealCode); KPI_RealTagEntity mEntity = new KPI_RealTagEntity(); mEntity.RealID = keyid; mEntity.UnitID = KPI_UnitDal.GetUnitID(dr["UnitName"].ToString().Trim()); mEntity.RealCode = RealCode; mEntity.RealDesc = dr["RealDesc"].ToString().Trim(); mEntity.RealEngunit = dr["RealEngunit"].ToString().Trim(); string sv = dr["RealMaxValue"].ToString().Trim(); if (sv != "") { mEntity.RealMaxValue = decimal.Parse(sv); } sv = dr["RealMinValue"].ToString().Trim(); if (sv != "") { mEntity.RealMinValue = decimal.Parse(sv); } mEntity.RealSnapshot = dr["RealSnapshot"].ToString().Trim(); mEntity.RealSort = dr["RealSort"].ToString().Trim(); mEntity.RealDisplay = dr["RealDisplay"].ToString().Trim(); mEntity.RealXYZ = dr["RealXYZ"].ToString().Trim(); mEntity.RealNote = dr["RealNote"].ToString().Trim(); KPI_RealTagDal.Update(mEntity); nModify += 1; } } string strInfor = "标签点总数为:{0}个, 修改成功:{1}个,不存在标签点: {2}个。"; strInfor = string.Format(strInfor, nAll, nModify, nNoExist); MessageBox.popupClientMessage(this.Page, strInfor, "call();"); return(true); } catch (Exception ee) { // MessageBox.popupClientMessage(this.Page, ee.Message, "call();"); return(false); } }
protected void btnCheck_Click(object sender, EventArgs e) { lbxInfor.Items.Clear(); lerror.Clear(); ////////////////////////////////////////////////////////////////////////////// //指标 Dictionary <string, double> dicTags = new Dictionary <string, double>(); ////////////////////////////////////////////////////////////////////////////// //经济指标 List <ECTagEntity> lts = ECTagDal.GetAllEntity(); lbxInfor.Items.Add("查询所有的经济指标!"); foreach (ECTagEntity ltone in lts) { //lbxInfor.Items.Add("开始校验:" + ltone.ECCode + "--" + ltone.ECName ); //有就不变,没有就添加; string strTagCode = "'" + ltone.ECCode.ToUpper().Trim() + "'"; dicTags[strTagCode] = 0.0; //校验计算公式 if (cbxCheckForEcTag.Items[0].Selected && (ltone.ECCalcExp.Replace("'", "''").Length - ltone.ECCalcExp.Length) % 2 != 0) { lbxInfor.Items.Add(ltone.ECCode + "--" + ltone.ECName + ": 计算公式解析失败! " + ltone.ECCalcExp); lerror.Add(ltone.ECCalcExp); } ///////////////////////////////////////////////////////////////// //校验Xline曲线 if (cbxCheckForEcTag.Items[1].Selected && !ECTagDal.CheckEntityForXline(ltone)) { //相同X不能存在。 lbxInfor.Items.Add(ltone.ECCode + "--" + ltone.ECName + ": 曲线解析失败! " + ltone.ECXLineType.ToString() + "--" + ltone.ECXLineXYZ); lerror.Add(ltone.ECXLineXYZ); } //////////////////////////////////////////////////////////////// //校验ScoreExp if (cbxCheckForEcTag.Items[2].Selected && !ECTagDal.CheckEntityForScore(ltone)) { lbxInfor.Items.Add(ltone.ECCode + "--" + ltone.ECName + ": 得分计算解析失败! " + ltone.ECScoreExp); lerror.Add(ltone.ECScoreExp); } //////////////////////////////////////////////////////////////// //校验Optimal if (cbxCheckForEcTag.Items[2].Selected && !ECTagDal.CheckEntityForOptimal(ltone)) { lbxInfor.Items.Add(ltone.ECCode + "--" + ltone.ECName + ": 最优区间数量不等于1! " + ltone.ECScoreExp); lerror.Add(ltone.ECScoreExp); } } ////////////////////////////////////////////////////////// //实时指标 List <KPI_RealTagEntity> rls = KPI_RealTagDal.GetAllEntity(); lbxInfor.Items.Add("查询所有的实时指标!"); foreach (KPI_RealTagEntity ltone in rls) { //有就不变,没有就添加; string strTagCode = "'" + ltone.RealCode.ToUpper().Trim() + "'"; dicTags[strTagCode] = 0.0; if (cbxCheckForRealTag.Items[0].Selected) { //lbxInfor.Items.Add("开始校验:" + ltone.RealCode + "--" + ltone.RealDesc); string strtag = ltone.RealCode; if (!DBAccess.GetRealTime().ExistPoint(strtag)) { lbxInfor.Items.Add(ltone.RealCode + "--" + ltone.RealDesc + ": 不存在! "); lerror.Add(ltone.RealCode); } } } ////////////////////////////////////////////// //所有指标 lbxInfor.Items.Add("校验经济指标的标签引用!"); foreach (ECTagEntity ltone in lts) { //lbxInfor.Items.Add("开始校验:" + ltone.ECCode + "--" + ltone.ECName ); //////////////////////////////////////////////////////////////// //校验Calc Tag Dictionary <String, double> dic1 = new Dictionary <String, double>(); string expression = ltone.ECCalcExp.Trim(); if (expression == "") { lbxInfor.Items.Add(ltone.ECCode + "--" + ltone.ECName + " 计算表达式为空!"); continue; } ExpDone parser = new ExpDone(); if (parser.ExpEvaluate(expression, ref dic1) != 0) { lbxInfor.Items.Add(ltone.ECCode + "--" + ltone.ECName + " 指标解析错误:" + ltone.ECCalcExp); lerror.Add(ltone.ECCalcExp); continue; } foreach (KeyValuePair <string, double> kvp in dic1) { string tagcode = kvp.Key.ToUpper().Trim(); if (!dicTags.ContainsKey(tagcode)) { lbxInfor.Items.Add(ltone.ECCode + "--" + ltone.ECName + ": 的标签点引用失败! " + kvp.Key); lerror.Add(kvp.Key); } } } }
protected void gvReal_RowUpdating(object sender, GridViewUpdateEventArgs e) { HtmlInputHidden key = (HtmlInputHidden)gvReal.Rows[e.RowIndex].Cells[0].FindControl("realid"); string sID = key.Value; string sCode = ((TextBox)(gvReal.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim(); string sDesc = ((TextBox)(gvReal.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim(); string sEngunit = ((TextBox)(gvReal.Rows[e.RowIndex].Cells[4].Controls[0])).Text.ToString().Trim(); string sMax = ((TextBox)(gvReal.Rows[e.RowIndex].Cells[5].Controls[0])).Text.ToString().Trim(); string sMin = ((TextBox)(gvReal.Rows[e.RowIndex].Cells[6].Controls[0])).Text.ToString().Trim(); string sSnapshot = ((DropDownList)(gvReal.Rows[e.RowIndex].Cells[7].FindControl("ddlSnapshot"))).SelectedValue; string sSort = ((DropDownList)(gvReal.Rows[e.RowIndex].Cells[8].FindControl("ddlSort"))).SelectedValue; string sDisplay = ((DropDownList)(gvReal.Rows[e.RowIndex].Cells[9].FindControl("ddlDisplay"))).SelectedValue; string sXYZ = ((DropDownList)(gvReal.Rows[e.RowIndex].Cells[10].FindControl("ddlXYZ"))).SelectedValue; string sNote = ((TextBox)(gvReal.Rows[e.RowIndex].Cells[11].Controls[0])).Text.ToString().Trim(); string msg = ""; if (sCode == "") { msg += "名称不能为空!\r\n"; } //判断double格式 if (sMax != "" && !Regex.IsMatch(sMax, @"^\d*[.]?\d*$")) { msg += "最值只能为空或数字组成!\r\n"; } //判断double格式 if (sMin != "" && !Regex.IsMatch(sMin, @"^\d*[.]?\d*$")) { msg += "最值只能为空或数字组成!\r\n"; } if (msg != "") { MessageBox.popupClientMessage(this.Page, msg); return; } //代码是否重复 if (KPI_RealTagDal.CodeExist(sCode, sID) || ALLDal.CodeExist(sCode, sID)) { MessageBox.popupClientMessage(this.Page, "已存在相同的标签!"); return; } //更新 KPI_RealTagEntity ote = new KPI_RealTagEntity(); ote.RealID = sID; ote.RealCode = sCode; ote.RealDesc = sDesc; ote.RealEngunit = sEngunit; if (sMax != "") { ote.RealMaxValue = decimal.Parse(sMax); } if (sMin != "") { ote.RealMinValue = decimal.Parse(sMin); } ote.RealSnapshot = sSnapshot; ote.RealSort = sSort; //if (sDisplay == "0") ote.RealDisplay = sDisplay; ote.RealXYZ = sXYZ; ote.RealNote = sNote; ote.RealModifyTime = DateTime.Now.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss"); if (KPI_RealTagDal.Update(ote)) { MessageBox.popupClientMessage(this.Page, "编辑成功!", "call();"); } else { MessageBox.popupClientMessage(this.Page, "编辑错误!", "call();"); } gvReal.EditIndex = -1; BindReal(); }