jiangping
2025-05-27 3d6a8e384d31432a23f5a8c1a3135a58cbe617b5
company/src/components/business/OperaSettleClaimsWindow.vue
@@ -22,7 +22,7 @@
            <div class="box_dk" v-if="[13].includes(info.status)">
                <div class="box_dk_title">
                    <i class="el-icon-success"></i>
                    <span>已打款</span>
                    <span style="font-weight: bold">已打款</span>
                </div>
                <div class="box_dk_list">
                    <div class="box_dk_list_row">
@@ -161,7 +161,7 @@
                    <div class="box_desc_title">
                        <span class="box_desc_title_val">报案详情</span>
                        <div class="box_desc_title_zt" v-if="info.statusName">{{info.statusName}}</div>
                        <div class="box_desc_title_tips" v-if="info.isRisk === 1">
                        <div class="box_desc_title_tips" @click="$refs.riskCaseReminder.open('风险案件提醒', info.riskContent)" v-if="info.isRisk === 1">
                            <i class="el-icon-warning"></i>
                            <span>风险案件</span>
                        </div>
@@ -183,7 +183,7 @@
                            <el-button type="primary" @click="register" v-if="[1,2].includes(info.status)">立案</el-button>
                            <el-button type="primary" @click="$refs.acceptance.open('案件受理', info.id)" v-if="[3,5].includes(info.status)">受理</el-button>
                            <el-button type="primary" @click="addRemark" v-if="![0,1,2,4,13,14].includes(info.status)">备注</el-button>
                            <el-button type="primary" @click="addReport(1)" v-if="[3].includes(info.status) && info.reportNumStatus === 0">添加报案号</el-button>
                            <el-button type="primary" @click="addReport(1)" v-if="[3,7,9].includes(info.status) && info.reportNumStatus === 0">添加报案号</el-button>
                            <el-button type="primary" @click="addReport(2)" v-if="[9].includes(info.status) && info.reportNumStatus === 1">编辑报案号</el-button>
                            <el-button type="primary" @click="$refs.adjustment.open('理算', info.id, 1)" v-if="[9].includes(info.status)">理算</el-button>
                            <el-button type="primary" @click="$refs.adjustment.open('重新理算', info.id, 1)" v-if="[10].includes(info.status)">重新理算</el-button>
@@ -193,7 +193,7 @@
                            <el-button type="primary" @click="supplementaryMaterials" v-if="[9].includes(info.status)">补充材料</el-button>
                            <el-button type="primary" @click="$refs.additionMaterial_ba.open('添加材料', info.id)" v-if="[9,10].includes(info.status)">添加材料</el-button>
                        </template>
                        <el-button icon="el-icon-refresh-left" type="primary" circle @click="$refs.caseProgress.open('案件进度', info.settleClaimsLogList)" v-if="![0,13,14].includes(info.status)"></el-button>
                        <el-button icon="el-icon-refresh-left" type="primary" title="查看案件进度" circle @click="$refs.caseProgress.open('案件进度', info.settleClaimsLogList)" v-if="![0].includes(info.status)"></el-button>
                    </div>
                </div>
                <div class="box_desc_list">
@@ -215,13 +215,13 @@
                    <div class="box_desc_list_zw"></div>
                </div>
            </div>
            <div class="box_fx" v-if="info.isRisk === 1">
            <div class="box_fx" v-if="info.isRisk === 1 && showIsRisk ===true ">
                <div class="box_fx_left">
                    <i class="el-icon-warning"></i>
                    <span class="box_fx_left_a">注意,该案件有{{info.riskContent.length}}条风险信息</span>
                    <span class="box_fx_left_b" @click="$refs.riskCaseReminder.open('风险案件提醒', info.riskContent)">查看详情</span>
                </div>
                <i class="el-icon-close" @click="info.isRisk = 0"></i>
                <i class="el-icon-close" @click="closeRiskTip"></i>
            </div>
            <div class="box_desc">
                <div class="box_desc_head">
@@ -240,7 +240,7 @@
                        出险人姓名:{{info.memberName}}
                    </div>
                    <div class="box_desc_list_row">
                        出险人身份证号:{{info.memberIdcard}}
                        出险人身份证号:{{info.idcardNo}}
                    </div>
                    <div style="width: 33%; height: 0;"></div>
                </div>
@@ -281,7 +281,10 @@
                        事故类型:{{returnType(info.type)}}
                    </div>
                    <div class="box_desc_list_row">
                        是否有医疗保险:{{returnName(info.medicalInsurance)}}
                        是否伤残:{{returnName(info.hurtType)}}
                    </div>
                    <div class="box_desc_list_row">
                        是否有医保:{{returnName(info.medicalInsurance)}}
                    </div>
                    <div class="box_desc_list_row">
                        就诊类型:{{returnInHospital(info.inHospital)}}
@@ -392,7 +395,8 @@
    addRemark,
    saveSupplementDescribe,
    updCaseType,
    confirmFee } from '@/api/business/settleRisk'
  confirmFee
} from '@/api/business/settleRisk'
import RiskCaseReminder from '@/components/business/riskCaseReminder'
import CaseProgress from '@/components/business/caseProgress'
import Acceptance from '@/components/business/acceptance'
@@ -411,7 +415,8 @@
  data () {
    return {
        info: null,
        id: null
      id: null,
      showIsRisk: true
    }
  },
  computed: {
@@ -429,6 +434,9 @@
          this.id = id
          this.getDetail()
      },
    closeRiskTip(){
      this.showIsRisk= false
    },
      setCaseType(e) {
          updCaseType({ id: this.id, caseType: e })
            .then(res => {
@@ -439,125 +447,155 @@
          this.$prompt('补充说明', '补充材料', {
              confirmButtonText: '提交',
              cancelButtonText: '取消',
        inputType: 'textarea',
              inputPattern: /^(?:.|\n)+$/,
              inputErrorMessage: '补充说明不能为空!',
              beforeClose: (action, instance, done) => {
                  if (action === 'confirm') {
                      instance.confirmButtonLoading = true;
            instance.confirmButtonLoading = true
                      saveSupplementDescribe({ id: this.id, describe: instance.inputValue })
                .then((res) => {
                  done()
                })
                .catch((data) => {
                  this.$message.error(data.message)
                })
                          .finally(() => {
                              done();
                              instance.confirmButtonLoading = false;
                  instance.confirmButtonLoading = false
                          })
                  } else {
                      done();
            done()
                  }
              }
          }).then(({ value }) => {
              this.getDetail()
          }).catch(() => {
          });
      })
      },
      addRemark() {
          this.$prompt('备注', '添加备注', {
              confirmButtonText: '添加',
              cancelButtonText: '取消',
        inputType: 'textarea',
              inputPattern: /^(?:.|\n)+$/,
              inputErrorMessage: '备注不能为空!',
              beforeClose: (action, instance, done) => {
                  if (action === 'confirm') {
                      instance.confirmButtonLoading = true;
            instance.confirmButtonLoading = true
                      addRemark({ id: this.id, describe: instance.inputValue })
                .then((res) => {
                  done()
                })
                .catch((data) => {
                  this.$message.error(data.message)
                })
                          .finally(() => {
                              done();
                              instance.confirmButtonLoading = false;
                  instance.confirmButtonLoading = false
                          })
                  } else {
                      done();
            done()
                  }
              }
          }).then(({ value }) => {
              this.getDetail()
          }).catch(() => {
          });
      })
      },
      addReport(type) {
          this.$prompt(`报案号`, `${type === 1 ? '添加报案号' : '编辑报案号'}`, {
      this.$prompt('报案号', `${type === 1 ? '添加报案号' : '编辑报案号'}`, {
              confirmButtonText: '添加',
              cancelButtonText: '取消',
              inputPattern: /^(?:.|\n)+$/,
              inputErrorMessage: '报案号不能为空!',
              beforeClose: (action, instance, done) => {
                  if (action === 'confirm') {
                      instance.confirmButtonLoading = true;
            instance.confirmButtonLoading = true
                      addReportNum({ id: this.id, reportNum: instance.inputValue })
              .then((res) => {
                done()
              })
              .catch((data) => {
                this.$message.error(data.message)
              })
                        .finally(() => {
                            done();
                            instance.confirmButtonLoading = false;
                instance.confirmButtonLoading = false
                        })
                  } else {
                      done();
            done()
                  }
              }
          }).then(({ value }) => {
              this.getDetail()
          }).catch(() => {
          });
      })
      },
      register() {
          this.$prompt('立案说明', '立案', {
              confirmButtonText: '确定',
              cancelButtonText: '取消',
        inputType: 'textarea',
              beforeClose: (action, instance, done) => {
                  if (action === 'confirm') {
                      instance.confirmButtonLoading = true;
            instance.confirmButtonLoading = true
                      register({ id: this.id, describe: instance.inputValue, registerStatus: 3 })
                .then((res) => {
                  done()
                })
                .catch((data) => {
                  this.$message.error(data.message)
                })
                          .finally(() => {
                              done();
                              instance.confirmButtonLoading = false;
                  instance.confirmButtonLoading = false
                          })
                  } else {
                      done();
            done()
                  }
              }
          }).then(({ value }) => {
              this.getDetail()
          }).catch(() => {
          });
      })
      },
      returnCase() {
          this.$prompt('退回说明', '退回', {
              confirmButtonText: '确定',
              cancelButtonText: '取消',
        inputType: 'textarea',
              inputPattern: /^(?:.|\n)+$/,
              inputErrorMessage: '退回说明不能为空!',
              beforeClose: (action, instance, done) => {
                  if (action === 'confirm') {
                      instance.confirmButtonLoading = true;
            instance.confirmButtonLoading = true
                      register({ id: this.id, describe: instance.inputValue, registerStatus: 4 })
                .then((res) => {
                  done()
                })
                .catch((data) => {
                  this.$message.error(data.message)
                })
                          .finally(() => {
                              done();
                              instance.confirmButtonLoading = false;
                  instance.confirmButtonLoading = false
                          })
                  } else {
                      done();
            done()
                  }
              }
          }).then(({ value }) => {
              this.getDetail()
          }).catch(() => {
          });
      })
      },
      getDetail() {
          findById(this.id)
              .then(res => {
                  res.riskContent = JSON.parse(res.riskContent)
                  this.info = res
          this.info.showIsRisk = true
                  this.visible = true
              })
      },
@@ -574,7 +612,7 @@
                  })
          }).catch(() => {
          });
      })
      },
      returnInHospital(type) {
          switch (type) {
@@ -590,6 +628,10 @@
                  return '是'
              case 1:
                  return '否'
      case 2:
        return '待确定'
      default:
        return ''
          }
      },
      returnType(type) {
@@ -616,14 +658,15 @@
                  })
          }).catch(() => {
          });
      },
      })
    }
  }
}
</script>
<style lang="scss" scoped>
    .box {
        //margin-left: 30px;
        width: 100%;
        .box_tui {
            width: 100%;
@@ -987,6 +1030,7 @@
            .box_desc_head {
                width: 100%;
                display: flex;
                font-weight: bold;
                align-items: center;
                justify-content: space-between;
                margin-bottom: 26px;
@@ -1017,6 +1061,7 @@
                        margin-right: 20px;
                    }
                    .box_desc_title_tips {
                      cursor: pointer;
                        width: 84px;
                        height: 25px;
                        border-radius: 15px;