k94314517
2025-07-04 50fb58286ed3b718c39a97e0987ee7561a295651
company/src/components/business/OpearaCaseEntryWindow.vue
@@ -11,8 +11,8 @@
                <div class="box_item">
                    <div class="box_item_title">
                        <span>出险人信息</span>
                        <el-select v-model="ruleForm.status" style="width: 100px;" placeholder="请选择">
                            <el-option label="待立案" :value="2"></el-option>
                        <el-select v-model="ruleForm.status" style="width: 100px;" placeholder="请选择案件状态">
                            <el-option label="已报案" :value="1"></el-option>
                            <el-option label="已退回" :value="4"></el-option>
                            <el-option label="待受理" :value="5"></el-option>
                            <el-option label="已拒绝" :value="6"></el-option>
@@ -51,6 +51,7 @@
                                <el-date-picker
                                    v-model="ruleForm.extData.memberBirthday"
                                    type="date"
                                    @change="changeMemberBirthday"
                                    placeholder="选择日期"
                                    format="yyyy 年 MM 月 dd 日"
                                    value-format="yyyy-MM-dd">
@@ -185,7 +186,7 @@
                            <el-form-item label="报案时间" prop="reportDate">
                                <el-date-picker
                                    v-model="ruleForm.extData.reportDate"
                                    type="date"
                                    type="datetime"
                                    placeholder="选择日期"
                                    format="yyyy-MM-dd HH:mm:ss"
                                    value-format="yyyy-MM-dd HH:mm:ss">
@@ -198,8 +199,8 @@
                                    v-model="ruleForm.happenTime"
                                    type="datetime"
                                    placeholder="选择日期"
                                    format="yyyy-MM-dd hh:mm:ss"
                                    value-format="yyyy-MM-dd hh:mm:ss">
                                    format="yyyy-MM-dd HH:mm:ss"
                                    value-format="yyyy-MM-dd HH:mm:ss">
                                </el-date-picker>
                            </el-form-item>
                        </div>
@@ -603,7 +604,7 @@
                                        <span>{{ item.name }}</span>
                                    </div>
                                </div>
                                <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 1)" />
                                <uploadProgress width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 1)" />
                            </div>
                        </div>
                        <div class="box_item_list_row" style="width: 100%; margin-bottom: 30px;">
@@ -627,7 +628,7 @@
                                        <span>{{ item.name }}</span>
                                    </div>
                                </div>
                                <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 2)" />
                                <uploadProgress width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 2)" />
                            </div>
                        </div>
                        <div class="box_item_list_row" style="width: 100%; margin-bottom: 30px;">
@@ -651,7 +652,7 @@
                                        <span>{{ item.name }}</span>
                                    </div>
                                </div>
                                <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 3)" />
                                <uploadProgress width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 3)" />
                            </div>
                        </div>
                        <div class="box_item_list_row" style="width: 100%; margin-bottom: 30px;">
@@ -675,7 +676,7 @@
                                        <span>{{ item.name }}</span>
                                    </div>
                                </div>
                                <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 4)" />
                                <uploadProgress width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 4)" />
                            </div>
                        </div>
                        <div class="box_item_list_row" style="width: 100%; margin-bottom: 30px;">
@@ -699,7 +700,7 @@
                                        <span>{{ item.name }}</span>
                                    </div>
                                </div>
                                <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 5)" />
                                <uploadProgress width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel,.zip,.war" folder="settle" @success="claimsUploadFile($event, 5)" />
                            </div>
                        </div>
                    </div>
@@ -712,6 +713,7 @@
<script>
import BaseOpera from '@/components/base/BaseOpera'
import GlobalWindow from '@/components/common/GlobalWindow'
import uploadProgress from '@/components/common/uploadProgress'
import upload from '@/components/common/upload'
import { getCompensation } from '@/api/business/settleRisk'
import { createSys } from '@/api/business/settleClaims'
@@ -719,7 +721,7 @@
export default {
  name: 'OpearaCaseEntryWindow',
  extends: BaseOpera,
  components: { GlobalWindow, upload },
  components: { GlobalWindow, upload, uploadProgress },
  data () {
    return {
      ruleForm: {
@@ -822,31 +824,10 @@
        'extData.memberIdcard': [
          { required: true, message: '不能为空', trigger: 'blur' }
        ],
        'extData.memberSex': [
          { required: true, message: '不能为空', trigger: 'blur' }
        ],
        'extData.memberPhone': [
          { required: true, message: '不能为空', trigger: 'blur' }
        ],
        'extData.bxName': [
          { required: true, message: '不能为空', trigger: 'blur' }
        ],
        'extData.bxCode': [
          { required: true, message: '不能为空', trigger: 'blur' }
        ],
        'extData.bxDate': [
          { required: true, message: '不能为空', trigger: 'blur' }
        ],
        'extData.bxTbName': [
          { required: true, message: '不能为空', trigger: 'blur' }
        ],
        'extData.bxBbName': [
          { required: true, message: '不能为空', trigger: 'blur' }
        ],
        'extData.bxOrg': [
          { required: true, message: '不能为空', trigger: 'blur' }
        ],
        informantPhone: [
          { required: true, message: '不能为空', trigger: 'blur' }
        ]
      },
@@ -982,9 +963,30 @@
      }
      this.getCompensations()
    },
      changeMemberBirthday(e) {
          if (!e) {
              this.ruleForm.extData.memberAge = ''
          } else {
              this.ruleForm.extData.memberAge = this.calculateAge(e)
          }
      },
      calculateAge(birthDate) {
          const today = new Date();
          const birthDateObject = new Date(birthDate);
          let age = today.getFullYear() - birthDateObject.getFullYear();
          const monthDiff = today.getMonth() - birthDateObject.getMonth();
          if (monthDiff < 0 || (monthDiff === 0 && today.getDate() < birthDateObject.getDate())) {
              age--;
          }
          return age;
      },
    confirm () {
      this.$refs.ruleForm.validate((valid) => {
        if (!valid) return
        if (!this.ruleForm.status) return this.$message.warning('请选择案件状态!')
        this.isWorking = true
        const obj = JSON.parse(JSON.stringify(this.ruleForm))
        obj.accountList = [...this.list1, ...this.list2, ...this.list3]
@@ -1064,7 +1066,7 @@
    getCompensations () {
      getCompensation({ type: 1 })
        .then(res => {
          console.log(res)
          // console.log(res)
          this.list1 = res.filter(item => item.type === 0)
          this.list2 = res.filter(item => item.type === 1)
          this.list3 = res.filter(item => item.type === 2)