예제 #1
0
        getDetailsListByDataTable(DataTable dt)
        {
            List <WarningResultDetail> list = new
                                              List <WarningResultDetail>();

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                WarningResultDetail ent = new WarningResultDetail
                {
                    Id =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.ID].ToString(),
                    WarningId =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.WARNING_ID].ToString(),
                    HandleStatus =
                        dt.Rows[i][PreWarningResultDBConstNames.HANDLE_STATUS].ToString(),
                    DateTime =
                        dt.Rows[i][PreWarningResultDBConstNames.DATA_TIME].ToString(),
                    WarningType =
                        dt.Rows[i][PreWarningResultDBConstNames.WARNING_TYPE].ToString(),
                    WarningLevel =
                        dt.Rows[i][PreWarningRulesDbConstNames.WARNING_LEVEL].ToString(),
                    RuleCode =
                        dt.Rows[i][PreWarningRulesDbConstNames.RULE_CODE].ToString(),
                    RuleType =
                        dt.Rows[i][PreWarningRulesDbConstNames.RULE_TYPE].ToString(),
                    RuleDescription =
                        dt.Rows[i][PreWarningRulesDbConstNames.RULE_DESCRIPTION].ToString(),
                    Threshold =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.THRESHOLD].ToString(),
                    ActualValue =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.ACTUAL_VALUE].ToString(),
                    Actions =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.ACTIONS].ToString(),
                    ActionsPerson =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.ACTIONS_PERSON].ToString(),
                    ActionsDateTime =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.ACTIONS_DATE_TIME].ToString(),
                    Comments =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.COMMENTS].ToString(),
                    CommentsPerson =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.COMMENTS_PERSON].ToString(),
                    CommentsDateTime =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.COMMENTS_DATE_TIME].ToString(),
                    LiftPerson =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.LIFT_PERSON].ToString(),
                    LiftDateTime =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.LIFT_DATE_TIME].ToString(),
                    RuleId =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.RULE_ID].ToString(),
                    DataId =
                        dt.Rows[i][PreWarningDetailsViewDbConstName.DATA_ID].ToString()
                };
                list.Add(ent);
            }
            return(list);
        }
예제 #2
0
        /// <summary>
        ///     向指定的FpSpread中添加一行
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="rowType"></param>
        private void addOneRowToFpSpread(int rowIdx, WarningResultDetail entity, FpSpread fp)
        {
            fp.ActiveSheet.Rows.Add(rowIdx, 1);
            fp.ActiveSheet.Rows[rowIdx].Height = 30;
            fp.ActiveSheet.Rows[rowIdx].Locked = true;

            sHandleStatus  = entity.HandleStatus;
            lblStatus.Text = getReadableHandleStatus(entity.HandleStatus); // 处理状态

            // 编号合并信息
            var idSpanInfo = new SpanCell(fp);

            idSpanInfo.RowIdx     = rowIdx;
            idSpanInfo.ColIdx     = COLUMN_INDEX_ID;
            idSpanInfo.SpanColCnt = 1;
            idSpanInfo.setText((rowIdx - 1).ToString());

            // 时间合并信息
            var dateSpanInfo = new SpanCell(fp);

            dateSpanInfo.RowIdx     = rowIdx;
            dateSpanInfo.ColIdx     = COLUMN_INDEX_DATE_TIME;
            dateSpanInfo.SpanColCnt = 1;

            //设置时间
            string time = null;

            if (entity.DateTime != null)
            {
                time = entity.DateTime.Split(' ')[1];
            }
            else
            {
                time = _txtDateTime.Text;
            }
            dateSpanInfo.setText(time);

            //预警类型合并信息
            var warningTypeSpanInfo = new SpanCell(fp);

            warningTypeSpanInfo.RowIdx     = rowIdx;
            warningTypeSpanInfo.ColIdx     = COLUMN_INDEX_WANRING_TYPE; //超限/突出
            warningTypeSpanInfo.SpanColCnt = 1;
            if (entity.WarningType == "0")
            {
                warningTypeSpanInfo.setText(WarningTypeCHN.超限预警.ToString());
            }
            if (entity.WarningType == "1")
            {
                warningTypeSpanInfo.setText(WarningTypeCHN.突出预警.ToString());
            }

            // 规则类型/预警依据:瓦斯,煤层赋存......
            var ruleTypeSpanInfo = new SpanCell(fp);

            ruleTypeSpanInfo.RowIdx     = rowIdx;
            ruleTypeSpanInfo.ColIdx     = COLUMN_INDEX_RULE_TYPE;
            ruleTypeSpanInfo.SpanColCnt = 1;
            ruleTypeSpanInfo.setText(entity.RuleType);

            // 预警级别/预警结果
            FpUtil.setCellImg(cells[rowIdx, COLUMN_INDEX_WARNING_LEVEL], getWarningLevel(entity.WarningLevel));

            //预警编号单元格样式
            cells[rowIdx, COLUMN_INDEX_ID].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_ID].VerticalAlignment   = CellVerticalAlignment.Center;

            //预警类型单元格样式
            cells[rowIdx, COLUMN_INDEX_WANRING_TYPE].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_WANRING_TYPE].VerticalAlignment   = CellVerticalAlignment.Center;

            //预警依据单元格样式
            cells[rowIdx, COLUMN_INDEX_RULE_TYPE].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_RULE_TYPE].VerticalAlignment   = CellVerticalAlignment.Center;

            // 规则编码
            cells[rowIdx, COLUMN_INDEX_RULE_CODE].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_RULE_CODE].Locked              = true;
            cells[rowIdx, COLUMN_INDEX_RULE_CODE].Text                = entity.RuleCode;
            cells[rowIdx, COLUMN_INDEX_RULE_CODE].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_RULE_CODE].VerticalAlignment   = CellVerticalAlignment.Center;

            // 时间
            cells[rowIdx, COLUMN_INDEX_DATE_TIME].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_DATE_TIME].Locked              = true;
            cells[rowIdx, COLUMN_INDEX_DATE_TIME].Text                = entity.DateTime;
            cells[rowIdx, COLUMN_INDEX_DATE_TIME].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_DATE_TIME].VerticalAlignment   = CellVerticalAlignment.Center;

            //规则描述
            cells[rowIdx, COLUMN_INDEX_RULE_DESCRIPTION].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_RULE_DESCRIPTION].Locked              = true;
            cells[rowIdx, COLUMN_INDEX_RULE_DESCRIPTION].Text                = entity.RuleDescription;
            cells[rowIdx, COLUMN_INDEX_RULE_DESCRIPTION].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_RULE_DESCRIPTION].VerticalAlignment   = CellVerticalAlignment.Center;

            //标准值
            cells[rowIdx, COLUMN_INDEX_STANDARD_VALUE].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_STANDARD_VALUE].Locked              = true;
            cells[rowIdx, COLUMN_INDEX_STANDARD_VALUE].Text                = entity.Threshold;
            cells[rowIdx, COLUMN_INDEX_STANDARD_VALUE].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_STANDARD_VALUE].VerticalAlignment   = CellVerticalAlignment.Center;

            //实际值
            cells[rowIdx, COLUMN_INDEX_ACTUAL_VALUE].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_ACTUAL_VALUE].Locked              = true;
            cells[rowIdx, COLUMN_INDEX_ACTUAL_VALUE].Text                = entity.ActualValue;
            cells[rowIdx, COLUMN_INDEX_ACTUAL_VALUE].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_ACTUAL_VALUE].VerticalAlignment   = CellVerticalAlignment.Center;

            // 解除措施
            cells[rowIdx, COLUMN_INDEX_ACTIONS].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_ACTIONS].Locked              = isHistory;
            cells[rowIdx, COLUMN_INDEX_ACTIONS].Text                = entity.Actions;
            cells[rowIdx, COLUMN_INDEX_ACTIONS].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_ACTIONS].VerticalAlignment   = CellVerticalAlignment.Center;

            // 解除措施录入人
            cells[rowIdx, COLUMN_INDEX_ACTIONS_PERSON].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_ACTIONS_PERSON].Locked              = true; //this.isHistory;
            cells[rowIdx, COLUMN_INDEX_ACTIONS_PERSON].Text                = entity.ActionsPerson;
            cells[rowIdx, COLUMN_INDEX_ACTIONS_PERSON].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_ACTIONS_PERSON].VerticalAlignment   = CellVerticalAlignment.Center;

            // 解除措施录入时间
            cells[rowIdx, COLUMN_INDEX_ACTIONS_DATE_TIME].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_ACTIONS_DATE_TIME].Locked              = true; //this.isHistory;
            cells[rowIdx, COLUMN_INDEX_ACTIONS_DATE_TIME].Text                = entity.ActionsDateTime;
            cells[rowIdx, COLUMN_INDEX_ACTIONS_DATE_TIME].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_ACTIONS_DATE_TIME].VerticalAlignment   = CellVerticalAlignment.Center;

            // 措施评价
            cells[rowIdx, COLUMN_INDEX_COMMENTS].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_COMMENTS].Locked              = isHistory;
            cells[rowIdx, COLUMN_INDEX_COMMENTS].Text                = entity.Comments;
            cells[rowIdx, COLUMN_INDEX_COMMENTS].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_COMMENTS].VerticalAlignment   = CellVerticalAlignment.Center;

            // 措施评价人
            cells[rowIdx, COLUMN_INDEX_COMMENTS_PERSON].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_COMMENTS_PERSON].Locked              = true; //this.isHistory;
            cells[rowIdx, COLUMN_INDEX_COMMENTS_PERSON].Text                = entity.CommentsPerson;
            cells[rowIdx, COLUMN_INDEX_COMMENTS_PERSON].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_COMMENTS_PERSON].VerticalAlignment   = CellVerticalAlignment.Center;

            // 措施评价日期
            cells[rowIdx, COLUMN_INDEX_COMMENTS_DATE_TIME].CellType            = new TextCellType();
            cells[rowIdx, COLUMN_INDEX_COMMENTS_DATE_TIME].Locked              = true; //this.isHistory;
            cells[rowIdx, COLUMN_INDEX_COMMENTS_DATE_TIME].Text                = entity.CommentsDateTime;
            cells[rowIdx, COLUMN_INDEX_COMMENTS_DATE_TIME].HorizontalAlignment = CellHorizontalAlignment.Center;
            cells[rowIdx, COLUMN_INDEX_COMMENTS_DATE_TIME].VerticalAlignment   = CellVerticalAlignment.Center;

            // DataId--此列隐藏
            cells[rowIdx, COLUMN_INDEX_HIDE_DATA_ID].Text    = entity.Id;
            cells[rowIdx, COLUMN_INDEX_HIDE_WARNING_ID].Text = entity.WarningId;

            ////合并预警类型, 设置预警依据
            //warningTypeSpanInfo.applyCellsSpan();
            //warningTypeSpanInfo.setText(entity.WarningType);

            ////合并时间
            //dateSpanInfo.SpanRowCnt = warningTypeSpanInfo.SpanRowCnt;
            //dateSpanInfo.applyCellsSpan();


            ////合并编号
            //idSpanInfo.SpanRowCnt = warningTypeSpanInfo.SpanRowCnt;
            //idSpanInfo.applyCellsSpan();
            ////设置编号
            //idSpanInfo.setText(entity.WirePointName.ToString());

            //背景色设置为淡绿
            //设置背景颜色,采取白与RGB(200, 250, 160)交替设置
            if (!_bChangeBackClolor)
            {
                for (var iRow = idSpanInfo.RowIdx; iRow < idSpanInfo.RowIdx + idSpanInfo.SpanRowCnt; iRow++)
                {
                    fp.ActiveSheet.Rows[iRow].BackColor = Color.FromArgb(200, 250, 160);
                }
                fp.ActiveSheet.Rows[rowIdx].BackColor = Color.FromArgb(200, 250, 160);
                _bChangeBackClolor = true;
            }
            else
            {
                _bChangeBackClolor = false;
            }
        }