Exemplo n.º 1
0
        public void ProcessRequest(HttpContext context)
        {
            string             url             = context.Request.QueryString["Url"];
            string             urlParams       = context.Request.QueryString["Url_params"];
            var                jsonParams      = JsonConvert.DeserializeObject <AlarmModel>(urlParams);
            string             json            = AlarmSupport.HttpPost(url, context, jsonParams);
            StructWarn         structWarnLists = JsonConvert.DeserializeObject <StructWarn>(json);
            List <Warn>        structWarn      = structWarnLists.warnings;
            List <WarningInfo> warnList        = new List <WarningInfo>();

            foreach (Warn warn in structWarn)
            {
                WarningInfo warnInfo = new WarningInfo();
                warnInfo.warning_source      = warn.source;
                warnInfo.warning_level       = warn.level.ToString();
                warnInfo.warning_time        = warn.time.ToString();
                warnInfo.warning_reason      = warn.reason;
                warnInfo.warning_information = warn.content;
                switch (warn.dealFlag)
                {
                case WarningSupportUnprocessed:
                    warnInfo.warning_dealFlag    = "未处理";
                    warnInfo.warning_confirmInfo = "N/A";
                    warnInfo.warning_send        = "确认 | 下发至用户";
                    break;

                case WarningSupportProcessed:
                    warnInfo.warning_dealFlag    = "已确认";
                    warnInfo.warning_confirmInfo = "确认人:" + warn.confirmor + "  确认信息: " + warn.suggestion + "  确认时间: " +
                                                   warn.confirmTime.ToString();
                    warnInfo.warning_send = "下发至用户";
                    break;

                case  WarningClientProcessed:
                case  WarningClientUnprocessed:
                    warnInfo.warning_dealFlag    = "已下发";
                    warnInfo.warning_confirmInfo = "N/A";
                    warnInfo.warning_send        = "N/A";
                    break;

                default:
                    warnInfo.warning_dealFlag    = "";
                    warnInfo.warning_confirmInfo = "";
                    warnInfo.warning_send        = "";
                    break;
                }
                warnList.Add(warnInfo);
            }

            var ListToJson = new JArray(
                warnList.Select(
                    d => new JObject(
                        new JProperty("告警源", d.warning_source),
                        new JProperty("等级", d.warning_level),
                        new JProperty("产生时间", d.warning_time),
                        new JProperty("可能原因", d.warning_reason),
                        new JProperty("告警信息", d.warning_information),
                        new JProperty("状态", d.warning_dealFlag),
                        new JProperty("确认信息", d.warning_confirmInfo),
                        new JProperty("操作", d.warning_send)
                        )));

            JsonToCsv(ListToJson.ToString());
        }
Exemplo n.º 2
0
        public List <Warning> SupportHandleStructWarnings(string json)
        {
            StructWarn structWarnLists = JsonConvert.DeserializeObject <StructWarn>(json);

            List <Warning> listWanings = new List <Warning>();

            for (int j = 0; j < structWarnLists.warnings.Count; j++)
            {
                Warning warn = new Warning();
                warn.warning_source = structWarnLists.warnings[j].source;
                switch (structWarnLists.warnings[j].level)
                {
                case 1:
                    warn.warning_level = "<span class='label label-red'>一级</span>";
                    break;

                case 2:
                    warn.warning_level = "<span class='label label-orange'>二级</span>";
                    break;

                case 3:
                    warn.warning_level = "<span class='label label-purple'>三级</span>";
                    break;

                default:
                    warn.warning_level = "<span class='label label-blue'>四级</span>";
                    break;
                }
                warn.warning_time        = structWarnLists.warnings[j].time.ToString();
                warn.warning_reason      = structWarnLists.warnings[j].reason;
                warn.warning_information = structWarnLists.warnings[j].content;
                var dealFlag = structWarnLists.warnings[j].dealFlag;
                switch (dealFlag)
                {
                case WarningSupportProcessed:
                    warn.warning_dealFlag = "<span style='color: green;'>已确认</span>";
                    if (structWarnLists.warnings[j].confirmor != "")
                    {
                        warn.warning_confirmInfo = "确认人:" + structWarnLists.warnings[j].confirmor
                                                   + "; 确认内容:" + structWarnLists.warnings[j].suggestion
                                                   + "; 确认时间:" + Convert.ToString(structWarnLists.warnings[j].confirmTime);
                    }
                    else
                    {
                        warn.warning_confirmInfo = "N/A";
                    }
                    warn.warning_send = "<a style='cursor:pointer; white-space: nowrap;text-decoration: none;' onclick='issueAlert(" + structWarnLists.warnings[j].warningId + ")'>下发至用户</a>";
                    break;

                case WarningSupportUnprocessed:
                    warn.warning_dealFlag    = "<span style='color: red;'>未确认</span>";
                    warn.warning_confirmInfo = "N/A";
                    warn.warning_send        = "<a style='cursor:pointer; white-space: nowrap;text-decoration: none;' onclick='confirmAlert(" + structWarnLists.warnings[j].warningId + ")'>确认</a>";
                    warn.warning_send       += "&nbsp;|&nbsp; ";
                    warn.warning_send       += "<a style=' cursor:pointer; white-space: nowrap;text-decoration: none;' onclick='issueAlert(" + structWarnLists.warnings[j].warningId + ")'>下发至用户</a>";
                    break;

                case WarningClientProcessed:
                case WarningClientUnprocessed:
                    warn.warning_dealFlag    = "<span style='color: blue;'>已下发</span>";
                    warn.warning_confirmInfo = "N/A";
                    warn.warning_send        = "N/A";
                    break;

                default:
                    warn.warning_dealFlag = "<a></a>";
                    break;
                }
                listWanings.Add(warn);
            }
            return(listWanings);
        }