<template>
  <div class="app-container">
    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true">
      <el-form-item label="案件状态" prop="caseFlowId">
        <el-select
          v-model="queryParams.caseFlowId"
          placeholder="请选择"
          clearable
        >
          <el-option
            v-for="dict in caseStausArr"
            :key="dict.id"
            :label="dict.caseStatusName"
            :value="dict.id"
            @keyup.enter.native="handleQuery"
          ></el-option>
        </el-select>
      </el-form-item>
      <!-- <el-form-item label="申请机构" prop="applicationOrganId">
                <el-select v-model="queryParams.applicationOrganId" placeholder="请选择" clearable>
                    <el-option v-for="dict in deptList" :key="dict.deptId" :label="dict.deptName" :value="dict.deptId"
                        @keyup.enter.native="handleQuery"></el-option>
                </el-select>
            </el-form-item> -->
      <!-- <el-form-item label="批号" prop="batchNumber">
                <el-input v-model="queryParams.batchNumber" placeholder="请输入案件批号" clearable style="width: 240px"
                    @keyup.enter.native="handleQuery" />
            </el-form-item> -->
      <el-form-item label="案件编号" prop="caseNum">
        <el-input
          v-model="queryParams.caseNum"
          placeholder="请输入案件编号"
          clearable
          style="width: 240px"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="创建时间" prop="caseTime">
        <el-date-picker
          v-model="caseTime"
          type="daterange"
          align="right"
          unlink-panels
          range-separator="至"
          start-placeholder="开始日期"
          end-placeholder="结束日期"
          clearable
          style="width: 240px"
          @change="caseTimeChange"
        >
        </el-date-picker>
      </el-form-item>
      <el-form-item>
        <el-button
          type="primary"
          icon="el-icon-search"
          size="mini"
          @click="handleQuery"
          >搜索</el-button
        >
        <!-- <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> -->
      </el-form-item>
    </el-form>
    <el-row :gutter="10" class="mb8">
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-plus"
          v-hasPermi="['caseManagement:list:add']"
          size="mini"
          @click="addCase()"
          >新增案件</el-button
        >
      </el-col>
      <!-- TODO 后期可能加上-->
      <!-- <el-col :span="1.5">
                <el-button type="primary" plain icon="el-icon-plus" size="mini"
                    @click="compressedPackages">案件压缩包上传</el-button>
            </el-col> -->
    </el-row>
    <el-table v-loading="loading" :data="dataList" style="width: 100%">
      <el-table-column label="序号" type="index" align="center">
        <template slot-scope="scope">
          <span>{{
            (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
          }}</span>
        </template>
      </el-table-column>
      <!-- <el-table-column label="批号" align="center" prop="batchNumber" :show-overflow-tooltip="true" /> -->
      <el-table-column
        label="案件编号"
        align="center"
        prop="caseNum"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="申请人"
        align="center"
        prop="applicationName"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="被申请人"
        align="center"
        prop="respondentName"
        :show-overflow-tooltip="true"
      />
      <!-- <el-table-column label="案件标的" align="center" prop="caseSubjectAmount" :show-overflow-tooltip="true" /> -->
      <el-table-column
        label="调解员"
        align="center"
        prop="mediatorName"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="调解方式"
        align="center"
        prop="mediationMethodName"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="调解时间"
        align="center"
        prop="hearDate"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="案件状态"
        align="center"
        prop="caseStatusName"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="创建时间"
        align="center"
        prop="createTime"
        :show-overflow-tooltip="true"
      />
      <el-table-column
        label="操作"
        align="center"
        class-name="small-padding fixed-width"
      >
        <template slot-scope="scope">
          <el-button
            size="mini"
            @click="eidtNodeprocess(scope.row)"
            type="text"
            icon="el-icon-edit"
            v-hasPermi="['caseManagement:list:edit']"
            v-if="scope.row.caseFlowId <= 1"
            >修改</el-button
          >
          <el-button
            size="mini"
            @click="checkDetail(scope.row)"
            type="text"
            icon="el-icon-view"
            >查看详情</el-button
          >
          <el-button
            size="mini"
            @click="caseFlow(scope.row)"
            type="text"
            icon="el-icon-zoom-in"
            >查看流程</el-button
          >
          <el-button
            size="mini"
            @click="caseLog(scope.row)"
            type="text"
            icon="el-icon-edit-outline"
            >案件日志</el-button
          >
          <el-button
            size="mini"
            @click="viewpaymentformRow(scope.row)"
            type="text"
            icon="el-icon-edit"
            >查看缴费单</el-button
          >
          <el-button
            size="mini"
            type="text"
            icon="el-icon-edit"
            @click="evidenceUpload(scope.row)"
            v-hasPermi="['caseManagement:list:evidenceEdit']"
            v-if="scope.row.caseFlowId <= 9"
            >上传证据</el-button
          >
          <el-button
            size="mini"
            type="text"
            icon="el-icon-edit"
            v-if="
              scope.row.caseFlowId == 15 ||
              scope.row.caseFlowId == 16 ||
              scope.row.caseFlowId == 17
            "
            @click="caseFilingDetails(scope.row)"
            >归档详情</el-button
          >
          <el-button
            size="mini"
            type="text"
            icon="el-icon-tickets"
            v-for="item in buttonList"
            :key="item.id"
            @click="caseClick(scope.row, item.id)"
            v-if="
              item.id == scope.row.caseFlowId &&
              checkPermi([item.buttonAuthFlag]) &&
              scope.row.signButtonFlag != 1
            "
            >{{ item.nodeName }}</el-button
          >
        </template>
      </el-table-column>
    </el-table>
    <pagination
      v-show="total > 0"
      :total="total"
      :page.sync="queryParams.pageNum"
      :limit.sync="queryParams.pageSize"
      @pagination="getList(queryParams)"
    />
    <!-- 新增编辑详情 -->
    <addCase
      :addVisable="addVisable"
      :queryParams="queryParams"
      @cancelCaseAdd="cancelCaseAdd"
      @getList="getList"
      :caseData="caseData"
      :caseDisabled="caseDisabled"
      :tabFlag="tabFlag"
      :addModifyData="addModifyData"
    ></addCase>
    <!-- 压缩包导入     -->
    <caseCompressionPackage
      :openCompressedPackages="openCompressedPackages"
      :queryParams="queryParams"
      @cancelCompreess="cancelCompreess"
      :getList="getList"
    >
    </caseCompressionPackage>
    <!-- 案件详情 -->
    <mediationCaseDetails
      :processVisable="processVisable"
      @cancelViewProcess="cancelViewProcess"
      :caseFlowNumber="caseFlowNumber"
    >
    </mediationCaseDetails>
    <!-- 案件日志 -->
    <mediationCaseLog
      :showcaseLog="showcaseLog"
      @cancelcaseLog="cancelcaseLog"
      :caselogDataArr="caselogDataArr"
      :flagLoading="flagLoading"
    ></mediationCaseLog>
    <!-- 证据修改 -->
    <evidenceDialog
      :evidenceVisable="evidenceVisable"
      @cancelEvidence="cancelEvidence"
      :evidenceData="evidenceData"
    >
    </evidenceDialog>
    <!-- 缴费 -->
    <payDialog
      :openPay="openPay"
      :payTitle="payTitle"
      :formPayDetail="formPayDetail"
      :payId="payId"
      :payForm="payForm"
      :queryParams="queryParams"
      @getList="getList"
      @paycancelRow="paycancelRow"
      :formPayDetailAffiliate="formPayDetailAffiliate"
    ></payDialog>
    <!-- 缴费确认查看详情 -->
    <paymentdetailsDialog
      :openDialog="openDialog"
      @cancelpaymentdetails="cancelpaymentdetails"
      :title="payTitle"
      :detailform="detailform"
      :queryParams="queryParams"
      :flag="flag"
      :paymentConfirma="paymentConfirma"
      :isapplicant="isapplicant"
      @getList="getList"
    >
    </paymentdetailsDialog>
    <!-- 案件受理 -->
    <caseAcceptance
      :showAcceptance="showAcceptance"
      @cancelAcceptance="cancelAcceptance"
      :caseAcceptanceData="caseAcceptanceData"
      @getList="getList"
    ></caseAcceptance>
    <!-- 被申请人缴费 -->
    <respondentPay
      :openResPay="openResPay"
      :resPayTitle="resPayTitle"
      :formResPayDetail="formResPayDetail"
      :resPayId="resPayId"
      :resPayForm="resPayForm"
      :queryParams="queryParams"
      @getList="getList"
      @paycancelRes="paycancelRes"
      :formResPay="formResPay"
    ></respondentPay>
    <!-- 调解员弹窗 -->
    <selectMediator
      @cancelMediator="cancelMediator"
      :mediatorVisable="mediatorVisable"
      :mediatorData="mediatorData"
      @getList="getList"
      :queryParams="queryParams"
    ></selectMediator>
    <!-- 秘书确认 -->
    <confirmMediator
      @cancelConfirm="cancelConfirm"
      :confirmVisable="confirmVisable"
      :confirmData="confirmData"
      @getList="getList"
      :queryParams="queryParams"
    ></confirmMediator>
    <!-- 部门长确认 -->
    <departmentMediator
      @cancelDepartment="cancelDepartment"
      :departmentVisable="departmentVisable"
      :departmentData="departmentData"
      @getList="getList"
      :queryParams="queryParams"
    ></departmentMediator>
    <!-- 秘书确认时间 -->
    <timeConfirm
      @cancelTimeConfirm="cancelTimeConfirm"
      :timeConfirmVisable="timeConfirmVisable"
      :timeConfirmData="timeConfirmData"
      @getList="getList"
      :queryParams="queryParams"
    ></timeConfirm>
    <!-- 待调解     -->
    <mediation
      @cancelMediation="cancelMediation"
      :mediationVisable="mediationVisable"
      :mediationData="mediationData"
      @getList="getList"
      :queryParams="queryParams"
    ></mediation>
    <confirmMediation
      @cancelConfirmTion="cancelConfirmTion"
      :confirmTionVisable="confirmTionVisable"
      :confirmTionData="confirmTionData"
      @getList="getList"
      :queryParams="queryParams"
    ></confirmMediation>
    <!-- 归档详情 -->
    <caseFilingDetailsPage
      :showarchiveDetails="showarchiveDetails"
      :caseFilingData="caseFilingData"
      @cancelDetail="cancelDetail"
      :detailsAwardNum="detailsAwardNum"
      :flagLoadingS="flagLoadingS"
    ></caseFilingDetailsPage>
  </div>
</template>

<script>
import {
  caseApplicationList,
  caseApplicationSelectById,
  submitCaseApply,
  selectPaymentDetail,
  sealApply,
  selectSealUrl,
  listCaseLogRecord,
  msCaseFile,
  msCaseSign,
  listDeptApplied,
  msCaseSignUrlApplyPC,
} from "@/api/caseManagement/caseManagement.js";
import { listDept } from "@/api/system/dept.js";
import { queryCaseFlowInfo } from "@/api/caseprocessManagement/caseprocessManagement.js";
import moment from "moment";
import addCase from "./components/addCase.vue";
import evidenceDialog from "./components/evidenceDialog.vue";
import caseCompressionPackage from "./components/caseCompressionPackage.vue";
import mediationCaseDetails from "./components/mediationCaseDetails.vue";
import mediationCaseLog from "./components/mediationCaseLog.vue";
import payDialog from "./components/payDialog.vue";
import respondentPay from "./components/respondentPay.vue";
import paymentdetailsDialog from "./components/paymentdetailsDialog.vue";
import caseAcceptance from "./components/caseAcceptance.vue";
import selectMediator from "./components/selectMediator.vue";
import confirmMediator from "./components/confirmMediator.vue";
import departmentMediator from "./components/departmentMediator.vue";
import timeConfirm from "./components/timeConfirm.vue";
import mediation from "./components/mediation.vue";
import confirmMediation from "./components/confirmMediation.vue";
import caseFilingDetailsPage from "./components/caseFilingDetailsPage.vue";
export default {
  name: "caseList",
  dicts: ["case_flow_node"],
  components: {
    addCase,
    caseCompressionPackage,
    mediationCaseDetails,
    mediationCaseLog,
    evidenceDialog,
    payDialog,
    paymentdetailsDialog,
    caseAcceptance,
    selectMediator, //调解员弹窗
    confirmMediator,
    departmentMediator,
    timeConfirm,
    mediation,
    confirmMediation,
    caseFilingDetailsPage,
    respondentPay,
  },
  data() {
    return {
      queryParams: {
        pageNum: 1,
        pageSize: 10,
      },
      // 遮罩层
      loading: false,
      // 总条数
      total: 0,
      // 表格数据
      form: {},
      // 校验表单
      rules: {},
      dataList: [],
      addVisable: false, //新增弹窗
      openPay: false, //缴费弹框
      openResPay: false, //被申请人缴费弹窗
      formPayDetail: {},
      formResPayDetail: {},
      payId: null,
      resPayId: null,
      payForm: {},
      resPayForm: {},
      openCompressedPackages: false, //压缩包导入弹窗
      processVisable: false, //案件详情
      showcaseLog: false, //案件日志
      openDialog: false, //确认缴费和缴费详情
      detailform: {}, //缴费详情数据
      evidenceVisable: false, //证据修改弹窗
      mediationVisable: false, //待调解弹窗
      mediationData: {},
      payTitle: "", //缴费标题
      resPayTitle: "", //被申请人缴费标题
      paymentConfirma: {}, //缴费确认
      showAcceptance: false, //案件受理弹框
      caseAcceptanceData: {}, //案件受理数据
      mediatorVisable: false, //选择调解员弹窗
      timeVisable: false, //预约时间弹窗
      confirmVisable: false, //确认时间/调解员
      caseFlowNumber: {}, //案件流程数据
      caselogDataArr: [], //案件日志数据
      flagLoading: true, //案件日志弹框loading
      confirmTionVisable: false, //确认调解书弹窗
      addModifyData: null, //新增修改传的参数
      showarchiveDetails: false, //归档详情弹窗
      detailsAwardNum: {},
      flagLoadingS: true,
      formPayDetailAffiliate: {},
      formResPay: {},
      mediatorData: {},
      flag: null,
      caseData: {},
      evidenceData: {},
      caseDisabled: false,
      caseTime: "",
      deptList: [],
      payTitle: "",
      tabFlag: false,
      confirmData: {},
      departmentVisable: false,
      departmentData: {},
      timeConfirmVisable: false,
      timeConfirmData: {},
      confirmTionData: {},
      buttonList: [],
      caseStausArr: [], //案件状态
      isapplicant: true, //判断角色申请人或非申请人
      caseFilingData: {},
    };
  },
  created() {
    // this.getList(this.queryParams);
    this.listDeptFn();
    // this.getButtonList()
    queryCaseFlowInfo({
      pageNum: 1,
      pageSize: 100000,
    }).then((res) => {
      res.rows.forEach((item) => {
        if (item.id != 17) {
          this.buttonList.push(item);
        }
        this.caseStausArr.push(item);
      });
      if (this.$route.query.caseFlowId) {
        let querydata = Number(this.$route.query.caseFlowId);
        if (querydata > 0) {
        this.$set(this.queryParams,'caseFlowId',querydata)
        }
      }
      this.getList(this.queryParams);
    });
  },
  methods: {
    /**所有按钮事件 */
    caseClick(val, type) {
      if (type == 1) {
        // 提交案件
        this.onsubmitRow(val);
      } else if (type == 2) {
        // 缴费
        this.payStatus(val);
      } else if (type == 3 || type == 45) {
        // 确认缴费
        this.paymentconfirmationRow(val, type);
      } else if (type == 4) {
        // 受理分配
        this.caseAccep(val);
      } else if (type == 5) {
        // 选择调解员
        this.selectMediator(val);
      } else if (type == 6) {
        // 核实调解员
        this.secretaryConfirm(val);
      } else if (type == 7) {
        // 确认调解员
        this.department(val);
      } else if (type == 8) {
        // 确定调解时间
        this.timeConfirm(val);
      } else if (type == 9) {
        // 调解
        this.mediationClick(val);
      } else if (type == 10) {
        // 确认调解书
        this.confirmMediation(val);
      } else if (type == 11) {
        // 签名
        this.msCaseSignUrlApplyPCFn(val);
      } else if (type == 12) {
        // 用印申请
        this.consultantApplica(val);
      } else if (type == 13) {
        // 用印
        this.departmentApplica(val);
      } else if (type == 14) {
        // 归档
        this.caseFiling(val);
      } else if (type == 15) {
        // 申请人签收
        this.signMediation(val);
      } else if (type == 16) {
        // 被申请人签收
        this.receivedMediation(val);
      } else if (type == 17) {
        //结束
      } else if (type == 44) {
        // 被申请人缴费
        this.resPayStatus(val);
      }
    },
    /**查询按钮列表 */
    getButtonList() {},
    /** 新增案件 */
    addCase() {
      this.addModifyData = 1;
      this.addVisable = true;
      this.caseData = {};
      this.caseDisabled = false;
      this.tabFlag = false;
    },
    /** 查看详情 */
    checkDetail(val) {
      this.addModifyData = 2;
      this.addVisable = true;
      this.caseData = val;
      this.caseDisabled = true;
      this.tabFlag = true;
    },
    /** 修改案件 */
    eidtNodeprocess(row) {
      this.addModifyData = 3;
      this.addVisable = true;
      this.caseData = row;
      this.$set(this.caseData, "flag", 2);
      this.caseDisabled = false;
      this.tabFlag = false;
    },
    /** 案件导入压缩包 */
    compressedPackages() {
      this.openCompressedPackages = true;
    },
    /** 缴费 */
    payStatus(val) {
      this.getDetail({ id: val.id });
      this.payTitle = "申请人缴费";
      this.payId = val.id;
      this.openPay = true;
    },
    /** 被申请人缴费 */
    resPayStatus(val) {
      this.getResDetail({ id: val.id });
      this.resPayTitle = "被申请人缴费";
      this.resPayId = val.id;
      this.openResPay = true;
    },
    /** 列表提交立案 */
    onsubmitRow(row) {
      this.$modal
        .confirm("是否提交调解申请？")
        .then(function () {
          return submitCaseApply({ id: row.id, caseFlowId: row.caseFlowId });
        })
        .then(() => {
          this.getList(this.queryParams);
          this.$modal.msgSuccess("调解申请成功");
        })
        .catch(() => {});
    },
    /** 签名 */
    msCaseSignUrlApplyPCFn(row) {
      // this.$modal
      //     .confirm("是否")
      //     .then(function () {
      //         return msCaseSignUrlApplyPC({ caseId: row.id });
      //     })
      //     .then(() => {
      //         this.getList(this.queryParams);
      //         this.$modal.msgSuccess("立案申请成功");
      //     })
      //     .catch(() => { });
      msCaseSignUrlApplyPC({ caseId: row.id }).then((res) => {
        console.log(res, "PPPPPPPPPPPPPPPPPPPP");
        window.open(res.data.sealUrl);
      });
    },
    /** 选择调解员 */
    selectMediator(val) {
      this.mediatorVisable = true;
      this.mediatorData = val;
    },
    /** 预约时间 */
    selectTime(val) {
      this.timeVisable = true;
    },
    /** 调解 */
    mediationClick(val) {
      this.mediationVisable = true;
      this.mediationData = val;
    },
    /** 确认调解书 */
    confirmMediation(val) {
      this.confirmTionVisable = true;
      this.confirmTionData = val;
    },
    getDetail(parms) {
      caseApplicationSelectById(parms).then((res) => {
        this.formPayDetail = res.data;
        this.formPayDetailAffiliate = res.data.affiliate;
        this.payForm.feePayable = res.data.feePayable;
        this.payForm.caseId = res.data.id;
      });
    },
    getResDetail(parms) {
      caseApplicationSelectById(parms).then((res) => {
        this.formResPayDetail = res.data;
        this.formResPay = res.data.affiliate;
        this.resPayForm.feePayable = res.data.feePayable;
        this.resPayForm.caseId = res.data.id;
      });
    },
    /** 确认调解员 */
    secretaryConfirm(val) {
      this.confirmVisable = true;
      this.confirmData = val;
    },
    /** 部门长确认调解员 */
    department(val) {
      this.departmentVisable = true;
      this.departmentData = val;
    },
    /**确认时间 */
    timeConfirm(val) {
      this.timeConfirmVisable = true;
      this.timeConfirmData = val;
    },
    /** 时间改变处理 */
    caseTimeChange() {
      if (this.caseTime) {
        this.queryParams.startTime = moment(this.caseTime[0]).format(
          "YYYY-MM-DD HH:mm:ss"
        );
        this.queryParams.endTime = moment(this.caseTime[1]).format(
          "YYYY-MM-DD HH:mm:ss"
        );
      } else {
        this.queryParams.startTime = "";
        this.queryParams.endTime = "";
      }
    },
    /** 获取所有部门 */
    listDeptFn() {
      listDeptApplied().then((res) => {
        this.deptList = res.data;
      });
    },
    /** 修改证据 */
    evidenceUpload(row) {
      this.evidenceData = row;
      this.evidenceVisable = true;
    },
    /** 取消弹窗（证据弹窗） */
    cancelEvidence() {
      this.evidenceVisable = false;
    },
    /** 关闭新增弹窗 */
    cancelCaseAdd() {
      this.addVisable = false;
    },
    /** 关闭压缩包导入弹窗 */
    cancelCompreess() {
      this.openCompressedPackages = false;
    },
    /**取消缴费*/
    paycancelRow(row) {
      this.openPay = false;
    },
    /**被申请人取消缴费*/
    paycancelRes(row) {
      this.openResPay = false;
    },
    /** 取消调解员弹窗 */
    cancelMediator() {
      this.mediatorVisable = false;
    },
    /** 取消预约时间弹窗 */
    cancelTime() {
      this.timeVisable = false;
    },
    /**取消调解 */
    cancelMediation() {
      this.timeConfirmVisable = false;
    },
    /** 取消确认调解弹窗 */
    cancelConfirmTion() {
      this.confirmTionVisable = false;
    },
    cancelMediation() {
      this.mediationVisable = false;
    },
    cancelConfirm() {
      this.confirmVisable = false;
    },
    cancelDepartment() {
      this.departmentVisable = false;
    },
    cancelTimeConfirm() {
      this.timeConfirmVisable = false;
    },
    /** 搜索按钮操作 */
    handleQuery() {
      this.queryParams.pageNum = 1;
      this.getList(this.queryParams);
    },
    /** 重置按钮操作 */
    // resetQuery() {
    //     this.resetForm("queryForm");
    //     this.handleQuery();
    // },
    // 查询列表数据
    getList(parms) {
      this.loading = true;
      caseApplicationList(parms).then((response) => {
        this.dataList = response.rows;
        this.total = response.total;
        this.loading = false;
      });
    },
    // 法律顾问用印申请
    consultantApplica(row) {
      let paramsValue = {
        caseId: row.id,
        batchNumber: "",
        caseFlowId: row.caseFlowId,
      };
      this.$modal
        .confirm("你确定要用印申请吗？")
        .then((res) => {
          sealApply(paramsValue).then((res) => {
            this.getList(this.queryParams);
            this.$modal.msgSuccess("用印申请成功");
          });
        })
        .catch(() => {});
    },
    // 部门长用印申请
    departmentApplica(row) {
      this.$modal
        .confirm("你确定要用印确认吗？")
        .then((res) => {
          let paramsValue = {
            caseId: row.id,
          };
          selectSealUrl(paramsValue).then((res) => {
            window.open(res.data.sealUrl);
            this.$modal
              .confirm("你确认用印了吗？")
              .then((res) => {
                this.getList(this.queryParams);
              })
              .catch(() => {});
          });
        })
        .catch(() => {});
    },
    // 案件受理
    caseAccep(row) {
      this.caseAcceptanceData = row;
      this.showAcceptance = true;
    },
    cancelAcceptance() {
      this.showAcceptance = false;
    },
    // 缴费确认
    paymentconfirmationRow(row, type) {
      this.paymentConfirma = row;
      console.log(this.paymentConfirma);
      this.paymentDetails({
        id: row.id,
      });
      this.openDialog = true;
      this.payTitle = "缴费确认";
      this.flag = 0;
      this.detailform = {};
      if (type == 3) {
        // 申请人
        this.isapplicant = true;
      } else {
        this.isapplicant = false;
      }
    },
    cancelpaymentdetails() {
      this.openDialog = false;
    },
    // 查看缴费确认
    viewpaymentformRow(row) {
      this.paymentDetails({
        id: row.id,
      });
      this.payTitle = "缴费单详情";
      this.flag = 1;
      this.detailform = {};
      this.openDialog = true;
    },
    // 缴费详情
    paymentDetails(val) {
      selectPaymentDetail(val).then((res) => {
        this.detailform = res.data;
      });
    },
    //案件流程
    caseFlow(row) {
      this.caseFlowNumber = row;
      this.processVisable = true;
    },
    cancelViewProcess() {
      this.processVisable = false;
    },
    //案件日志
    caseLog(row) {
      this.caseLogNumber = row;
      this.showcaseLog = true;
      this.flagLoading = true;
      listCaseLogRecord({ caseId: row.id }).then((res) => {
        this.caselogDataArr = res.data;
        this.flagLoading = false;
      });
    },
    cancelcaseLog() {
      this.showcaseLog = false;
    },
    // 案件送达
    caseFiling(row) {
      console.log(row.id);
      let paramValues = {
        ids: [row.id],
      };
      this.$modal
        .confirm("你确定要案件送达吗？")
        .then((res) => {
          msCaseFile(paramValues).then((res) => {
            this.$modal.msgSuccess("案件送达成功");
            this.getList(this.queryParams);
          });
        })
        .catch(() => {});
    },
    //申请人签收调解书
    signMediation(row) {
      this.$modal
        .confirm("你确定要签收调解书吗？")
        .then((res) => {
          this.signingMediationAgreement({ caseId: row.id, isSignApply: 1 });
        })
        .catch(() => {});
    },
    //被申请人签收调解书
    receivedMediation(row) {
      this.$modal
        .confirm("你确定要签收调解书吗？")
        .then((res) => {
          this.signingMediationAgreement({ caseId: row.id, isSignRespon: 1 });
        })
        .catch(() => {});
    },
    // 申请人和被申请人签收调解书接口
    signingMediationAgreement(val) {
      console.log(val);
      msCaseSign(val).then((res) => {
        this.$modal.msgSuccess("签收成功");
        this.getList(this.queryParams);
      });
    },
    //归档详情
    caseFilingDetails(val) {
      this.showarchiveDetails = true;
      this.caseFilingData = val;
      let vals = { id: val.id };
      caseApplicationSelectById(vals).then((res) => {
        res.data.affiliate.respondentSex = Number(
          res.data.affiliate.respondentSex
        );
        this.detailsAwardNum = res.data;
        console.log(this.detailsAwardNum);
        this.flagLoadingS = false;
      });
    },
    cancelDetail() {
      this.showarchiveDetails = false;
    },
  },
};
</script>

<style lang="scss" scoped></style>