<template>
    <div class="eContainer">
      <c-page title="">
        <!-- <div class="eContainer"> -->
        <c-content :height="120">
          <div class="eibs-tab">
            <el-form
              :model="model"
              ref="modelForm"
              tokenKey="modelForm"
              :validate-on-rule-change="false"
              label-width="150px"
              size="small"
            >
              <c-content>
                <!-- <c-col :span="24" style="margin:0 0 5px 0"> -->
                <c-col :span="12" style="height: 24px">
                  <el-form-item label="基本信息" class="messageLabel">
                  </el-form-item>
                </c-col>
                <c-col :span="11" style="text-align: right">
                  <c-button
                    size="small"
                    type="primary"
                    style="margin-left: 0"
                    @click="display(trn.inr)"
                    >交易快照</c-button
                  >
                  <c-button size="small" type="primary" style="margin-left: 0"
                    >智能提示</c-button
                  >
                  <c-button
                    size="small"
                    @click="exit"
                    type="primary"
                    style="margin-left: 0"
                    >返回</c-button
                  >
                </c-col>
                <!-- </c-col> -->
                <c-col :span="24" style="height: 10px; margin-bottom: 10px">
                  <el-divider></el-divider>
                </c-col>
    
                <!-- -------------------基础信息------------------- -->
    
                <!-- ========================= Left ========================= -->
              <c-col :span="11"> 
                  <c-col :span="24">
                      <c-col :span="22">
                          <el-form-item label="业务编号">
                              <c-input  v-model="trn.ownref" maxlength="16" disabled  placeholder="请输入业务编号"></c-input>
                          </el-form-item>
                      </c-col>             
                      <c-col :span="2" style="text-align: right">
                          <c-button
                              style="margin:0;padding: 0 14px;"
                              size="small"
                              type="primary"
                          >
                          <i class="el-icon-info" style="font-size:15px"></i>
                          </c-button>
                      </c-col>
                  </c-col>

                  <c-col :span="24">
                      <c-col :span="22">
                          <el-form-item label="交易代码">
                              <c-input  v-model="trn.inifrm" maxlength="6" disabled placeholder="请输入交易代码"></c-input>
                          </el-form-item>
                      </c-col> 
                      <c-col :span="2" style="text-align: right">
                          <c-button
                              style="margin:0;padding: 0 14px;"
                              size="small"
                              type="primary"
                          >
                          <i class="el-icon-info" style="font-size:15px"></i>
                          </c-button>
                      </c-col>
                  </c-col>

                  <c-col :span="24">
                    <c-col :span="13">
                      <el-form-item label="相关金额">
                        <c-input
                          v-model="trn.reloricur"
                          maxlength="3"
                          disabled
                          placeholder="请输入"
                        ></c-input>
                      </el-form-item>
                    </c-col>
                    <c-col :span="11">
                      <el-form-item label="" label-width="8px">
                        <c-input
                          v-model="trn.reloriamt"
                          disabled
                          placeholder="请输入"
                        ></c-input>
                      </el-form-item>
                    </c-col>
                  </c-col>
    
                  <c-col :span="24">
                    <c-col :span="13">
                      <el-form-item label="经办柜员">
                        <c-input
                          v-model="trn.usr"
                          maxlength="8"
                          disabled
                          placeholder="请输入经办柜员"
                        ></c-input>
                      </el-form-item>
                    </c-col>
    
                    <c-col :span="11">
                      <el-form-item label-width="40%" label="责任小组">
                        <!-- <c-input  v-model="trn.usg" maxlength="6" disabled  placeholder="请输入责任小组"></c-input> -->
                        <el-select
                          v-model="trn.usg"
                          style="width: 100%"
                          disabled
                        >
                          <el-option
                            v-for="item in codes.usgtxt"
                            :key="item.value"
                            :label="item.label"
                            :value="item.value"
                          />
                        </el-select>
                      </el-form-item>
                    </c-col>
                  </c-col>
    
                  <c-col :span="24">
                    <c-col :span="24">
                      <el-form-item label="根据识别号">
                        <c-input
                          v-model="trn.cortrninr"
                          maxlength="8"
                          disabled
                          placeholder="请输入根据识别号"
                        ></c-input>
                      </el-form-item>
                    </c-col>
    
                    <c-col :span="24">
                      <el-form-item label="执行日期">
                        <c-date-picker
                          type="date"
                          v-model="trn.exedat"
                          style="width: 100%"
                          disabled
                          placeholder="请选择执行日期"
                        ></c-date-picker>
                      </el-form-item>
                    </c-col>
                  </c-col>
    
                  <c-col :span="24">
                    <c-col :span="22">
                      <el-form-item label="信息文本">
                        <c-input
                          type="textarea"
                          v-model="trn.inftxt"
                          maxlength="65"
                          :rows="3"
                          show-word-limit
                          placeholder="请输入信息文本"
                        ></c-input>
                      </el-form-item>
                    </c-col>
                    <c-col :span="2" style="text-align: right">
                      <c-button
                        style="margin: 0; padding: 0 12px"
                        size="small"
                        icon="el-icon-search"
                        type="primary"
                      ></c-button>
                    </c-col>
                  </c-col>
                </c-col>
    
                <!-- ========================= Right ========================= -->
                <c-col :span="11" :offset="1">
                  <c-col :span="24">
                          <c-col :span="22">
                      <el-form-item label="TRN主键">
                              <c-input  v-model="trn.inr" disabled placeholder="请输入TRN主键"></c-input>
                      </el-form-item>
                          </c-col>
                          <c-col :span="2" style="text-align: right">
                              <c-button
                                  style="margin:0;padding: 0 14px;"
                                  size="small"
                                  type="primary"
                              >
                              <i class="el-icon-info" style="font-size:15px"></i>
                              </c-button>
                          </c-col>
                  </c-col>
    
                  <c-col :span="24">
                    <el-form-item label="交易名">
                      <c-input
                        v-model="trn.ininam"
                        maxlength="6"
                        disabled
                        placeholder="请输入交易名"
                      ></c-input>
                    </el-form-item>
                  </c-col>
    
                  <c-col :span="24">
                    <el-form-item label="摘要信息">
                      <c-input
                        v-model="trn.objnam"
                        maxlength="40"
                        disabled
                        placeholder="请输入"
                      ></c-input>
                    </el-form-item>
                  </c-col>
    
                  <c-col :span="24">
                    <el-form-item label="发布状态">
                      <el-select
                        v-model="trn.relflg"
                        style="width: 100%"
                        disabled
                      >
                        <el-option
                          v-for="item in codes.relstaEN"
                          :key="item.value"
                          :label="item.label"
                          :value="item.value"
                        />
                      </el-select>
                    </el-form-item>
                  </c-col>
    
                  <c-col :span="24">
                    <c-col :span="24">
                      <el-form-item label="经办柜员">
                        <c-input
                          v-model="trn.iniusr"
                          maxlength="8"
                          disabled
                          placeholder="请输入经办人"
                        ></c-input>
                      </el-form-item>
                    </c-col>
    
                    <c-col :span="24">
                      <el-form-item label="时间戳">
                        <c-input
                          v-model="trn.inidattim"
                          disabled
                          placeholder="请输入时间戳"
                        ></c-input>
                      </el-form-item>
                    </c-col>
                  </c-col>
    
                  <c-col :span="24">
                    <el-form-item label="信息标志">
                      <el-select v-model="trn.infdsp" style="width: 100%">
                        <el-option
                          v-for="item in codes.infdsp"
                          :key="item.value"
                          :label="item.label"
                          :value="item.value"
                        />
                      </el-select>
                    </el-form-item>
                  </c-col>
    
                  <c-col :span="24">
                    <el-form-item label="发送退回至">
                      <c-input
                        v-model="trn.etyextkey"
                        disabled
                        style="width: 100%"
                        placeholder=""
                      >
                      </c-input>
                    </el-form-item>
                  </c-col>
                </c-col>
    
                <!-- -------------------document------------------- -->
                <c-col :span="24" style="height: 24px">
                  <el-form-item label="面函/报文" class="messageLabel">
                  </el-form-item>
                </c-col>
                <c-col :span="24" style="height: 0px; margin-top: -5px">
                  <el-divider></el-divider>
                </c-col>
                <c-col :span="24">
                  <el-table
                    :data="documentsData.data"
                    :columns="documentsData.columns"
                    :showButtonFlg="true"
                  >
                    <el-table-column
                      v-for="(item, key) in documentsData.columns"
                      :key="key"
                      :label="item.label"
                      :prop="item.prop"
                    >
                    <template slot-scope="scope">
                      <div>{{ scope.row[item.prop] }}</div>
                    </template>
                    </el-table-column>
                    <!-- <el-table-column label="介质" width="110px">
                      <template slot-scope="scope">
                        <el-form-item
                          label-width="0"
                          :prop="'trnmod.trndoc.doceot.' + scope.$index + '.cortyp'"
                        >
                          <c-select
                            v-model="scope.row.extkey"
                            style="width: 100%"
                            disabled
                            placeholder="请选择"
                          >
                            <el-option
                              v-for="item in codes.doceotCortyp"
                              :key="item.value"
                              :label="item.label"
                              :value="item.value"
                            >
                            </el-option>
                          </c-select>
                        </el-form-item>
                      </template>
                    </el-table-column>
                    <el-table-column label="报文格式" width="150px">
                      <template slot-scope="scope">
                        <c-select
                          v-model="scope.row.docsnf"
                          style="width: 100%"
                          placeholder="请选择"
                          @change="executeDefault('trnmod.trndoc.doccur.docsnf')"
                        >
                          <el-option
                            v-for="item in codes.docsnf"
                            :key="item.value"
                            :label="item.label"
                            :value="item.value"
                          >
                          </el-option>
                        </c-select>
                      </template>
                    </el-table-column>
                    <el-table-column label="语言" width="150px">
                      <template slot-scope="scope">
                        <c-select
                          v-model="scope.row.docuil"
                          style="width: 100%"
                          placeholder="请选择"
                        >
                          <el-option
                            v-for="item in codes.uiltxt"
                            :key="item.value"
                            :label="item.label"
                            :value="item.value"
                          >
                          </el-option>
                        </c-select>
                      </template>
                    </el-table-column>
                    <el-table-column label="传送方式" width="110px">
                      <template slot-scope="scope">
                        <el-form-item
                          label-width="0"
                          :prop="'trnmod.trndoc.doceot.' + scope.$index + '.apf'"
                        >
                          <c-select
                            v-model="scope.row.apf"
                            disabled
                            style="width: 100%"
                            placeholder="请选择"
                          >
                            <el-option
                              v-for="item in codes.apftxt"
                              :key="item.value"
                              :label="item.label"
                              :value="item.value"
                            >
                            </el-option>
                          </c-select>
                        </el-form-item>
                      </template>
                    </el-table-column>
                    <el-table-column label="发送份数" width="70">
                      <template slot-scope="scope">
                        <c-input
                          v-model="scope.row.apfcpy1"
                          :readonly="true"
                          style="width: 100%"
                          placeholder="请选择"
                        >
                        </c-input>
                      </template>
                    </el-table-column>
                    <el-table-column label="抄送份数" width="70">
                      <template slot-scope="scope">
                        <c-input
                          v-model="scope.row.apfcpy2"
                          style="width: 100%"
                          placeholder="请选择"
                        >
                        </c-input>
                      </template>
                    </el-table-column>
                    <el-table-column label="" width="110px">
                      <template slot-scope="scope">
                        <el-form-item
                          label-width="0"
                          :prop="'trnmod.trndoc.doceot.' + scope.$index + '.staflg'"
                        >
                          <c-select
                            v-model="scope.row.staflg"
                            style="width: 100%"
                            placeholder="请选择"
                          >
                            <el-option
                              v-for="item in codes.swttlx"
                              :key="item.value"
                              :label="item.label"
                              :value="item.value"
                            >
                            </el-option>
                          </c-select>
                        </el-form-item>
                      </template>
                    </el-table-column> -->
                    <el-table-column label="操作" width="200px" fixed="right">
                      <template slot-scope="scope">
                        <c-button
                          type="primary"
                          size="small"
                          :disabled="
                            (scope.row.pandsc == 'MT799' &&
                              model.didgrp &&
                              model.didgrp.rec &&
                              model.didgrp.rec.elcflg == 'Y') ||
                            suppress
                          "
                          @click="show(scope.$index, scope.row)"
                          style="margin-right: 10px"
                          >预览</c-button
                        >
                        <c-button
                          size="small"
                          type="primary"
                          style="margin-left: 0"
                          @click="handleDetail(scope.row.index, scope.row)"
                          >详情</c-button
                        >
                      </template>
                    </el-table-column>
                  </el-table>
                </c-col>
                <!-- 经办复核 -->
                <c-col :span="24" style="height: 24px; margin-top: 20px">
                  <el-form-item label="经办/复核" class="messageLabel">
                  </el-form-item>
                </c-col>
                <c-col :span="24" style="height: 0px; margin-top: -5px">
                  <el-divider></el-divider>
                </c-col>
                <c-col :span="24">
                  <c-col :span="24" :offset="0">
                    <el-table
                      :columns="SignaturesData.columns"
                      :paginationShow="false"
                      style="width: 100%"
                      :data="SignaturesData.data"
                      :showButtonFlg="true"
                    >
                      <el-table-column
                        v-for="(item, key) in SignaturesData.columns"
                        :key="key"
                        :label="item.label"
                        :prop="item.prop"
                      >
                      </el-table-column>
                      <!-- <template slot-scope="scope">
                        <div>{{ scope.row[item.prop] }}</div>
                      </template> -->
                      <!-- <el-table-column label="行为" width="auto">
                        <template slot-scope="scope">
                          <span>{{ flg[scope.row.IDX] }}</span>
                        </template>
                      </el-table-column> -->
                    </el-table>
                  </c-col>
                </c-col>
    
                <!-- -------------------workflow------------------- -->
                <c-col :span="24" style="height: 24px; margin-top: 20px">
                  <el-form-item label="工作流服务" class="messageLabel">
                  </el-form-item>
                </c-col>
                <c-col :span="24" style="height: 0px; margin-top: -5px">
                  <el-divider></el-divider>
                </c-col>
                <c-col :span="24">
                  <c-col :span="24" :offset="0">
                    <el-table
                      :data="stmData.data"
                      :columns="stmData.columns"
                      :paginationShow="false"
                      style="width: 100%"
                    >
                      <el-table-column
                        v-for="(item, key) in stmData.columns"
                        :key="key"
                        :label="item.label"
                        :prop="item.prop"
                      >
                      <template slot-scope="scope">
                        <div>{{ scope.row[item.prop] }}</div>
                      </template>
                        <!-- <template slot-scope="scope"> -->
                          <!-- <span> -->
                            <!-- {{ formatter(scope.row[scope.column.property]) }} -->
                            <!-- {{ scope.column.renderCell(scope.row[scope.column.property]) }} -->
                            <!-- {{!item.formatter ? socpe.row[item.prop] : item.formatter(scope.row[item.prop])}} -->
                          <!-- </span> -->
                        <!-- </template> -->
                      </el-table-column>
                    </el-table>
                  </c-col>
                </c-col>
              </c-content>
            </el-form>
          </div>
          <!-- </div> -->
        </c-content>
      </c-page>
      </div>
    </template>
    
    <script>
    import Trnrel from "../model";
    import Api from "~/service/Api";
    import commonApi from "~/mixin/commonApi";
    import CodeTable from "~/config/CodeTable";
    import event from "../event";
    
    export default {
      name: "InftrnpsDetail",
      mixins: [commonApi, event],
      data() {
        return {
          model: new Trnrel().data,
          trn: {},
          documentsData: {
            columns: [
              // { label: '收报人', prop: 'cortyp' },
              // { label: '描述', prop: 'extkey' },
              { label: 'Type', prop: 'cortyp' },
              { label: 'External key', prop: 'extkey' },
              { label: 'Document', prop: 'nam' },
            ],
            data: [],
          },
          SignaturesData: {
            columns: [
              { label: '类型', prop: 'sigidx' },
              { label: '用户', prop: 'nam' },
              { label: '日期/时间', prop: 'dattim' },
              { label: '行为', prop: 'IDX' },
            ],
            data: [],
          },
          codes: {
            infdsp: CodeTable.infdsp,
            flg: CodeTable.flg,
            atptxt: CodeTable.atptxt,
            relstaEN: CodeTable.relstaEN,
            usgtxt: CodeTable.usgtxt,
            wfetrssta: CodeTable.wfetrssta,
          },
          stmData: {
            columns: [
              { label: '编号', prop: 'wfssub' },
              { label: '服务', prop: 'srv' },
              {
                index: 3,
                position: 3,
                width: 100,
                pattern: "code",
                label: "交易状态",
                code: CodeTable.wfetrssta,
                prop: 'sta',
                renderCell: (h, val) => {
                  let label;
                  for(let i of CodeTable.wfetrssta) {
                    if(i.value === val) {
                      label = i.label;
                      break;
                    }
                  }
                  return label
                }
              },
              { label: '最新更新', prop: 'dattim' },
              { label: '重试', prop: 'retdur' },
              { label: '文本', prop: 'txt' },
              { label: '相反文本', prop: 'txt2' },
              {
                index: 8,
                position: 8,
                width: "auto",
                pattern: "dateFormat",
                label: "目标时间",
                prop: 'tardattim'
              },

            ],
            data: [],
          },
          flg: [],
          atptxt: "",
          relstaEN: "",
          usgtxt: "",
        };
      },
      mounted() {
        this.loadData();
      },
      methods: {
        formatter(val) {
          let label;
          for(let i of CodeTable.wfetrssta) {
            if(i.value === val) {
              label = i.label;
              break;
            }
          }
          return label
        },
        async handleDetail(index, row) {
          const params = {
            index: row.idx,
          };
          let rtnmsg = await Api.post(
            `${this.requestPrefix}/executeDocpanDetail`,
            this.wrapper(params)
          );
          if (rtnmsg.respCode == SUCCESS) {
            this.title = row.pandsc;
            (this.centerDialogVisible = true), this.updateModel(rtnmsg.data);
            this.dialog = this.trnmod.trndoc.doceot[row.idx];
            this.index = row.idx;
          }
        },
        //加载数据
        loadData() {
          let model = JSON.parse(sessionStorage.getItem("InftrnpsDetail"));
          this.trn = model.trn;
          this.documentsData.data = model.smh;
          this.SignaturesData.data = model.trs;
          this.stmData.data = model.wfe;
        },
        exit() {
          this.$store.dispatch("TagsView/delView", this.$route);
          this.$router.history.push("/taskList");
        },
        async show(idx, row) {
          var params = {
            selDst: "recpan.smhstm",
            selIds: [idx + 1],
            selBtnId: "A",
          };
          let rtnmsg = await Api.post(
            `/business/trnrel/executeRule/recpan.smhstm`,
            this.wrapper(params)
          );
          if (rtnmsg.respCode == SUCCESS) {
            this.title = "面函";
            let viewurl = "/#/docpan/show";
            let XMLdata;
            if (row.类型 == "LET") {
              window.sessionStorage.docTXT = "";
              window.sessionStorage.docXML = rtnmsg.data.docimm_xmldocblk;
            } else if (row.pandsc == "MT799") {
              window.sessionStorage.docTXT = "";
              XMLdata = rtnmsg.data.litbenl1blk;
            }
            window.open(
              viewurl,
              "newwindow",
              "height=1200,width=800,top=100,left=100,toolbar=no,resizable=no,menubar=no,location=no, status=no"
            );
          } else {
            const h = this.$createElement;
            const msg = rtnmsg.respMsg || "请求执行失败!";
            this.$notify.error({
              title: "错误",
              message: h("p", { style: "word-break:break-all;" }, msg),
            });
          }
        },
      },
    };
    </script>
    <style scoped>
    .el-col >>> .el-divider--horizontal {
      margin-top: 10px;
    }
    .formItemLabel >>> .el-form-item__label {
      text-align: left;
      font-weight: bold;
    }
    .el-col >>> .el-divider--horizontal {
      margin-top: 5px;
    }
    .messageLabel >>> .el-form-item__label {
      text-align: left;
      font-weight: bold;
      font-size: 15px;
      color:#B31C2A;
      width: auto!important;
    }
    </style>