company/src/components/business/OperaCompanyWindow.vue
@@ -1,7 +1,7 @@ <template> <GlobalWindow :title="title" width="50%" width="60%" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm" company/src/components/business/OperaInsuranceApplyCheckWindow.vue
@@ -7,109 +7,65 @@ @confirm="confirm" > <!-- 退回投保 --> <div v-if="visible1==true" class="form"> <div class="form_item"> <div class="form_item_label"><span>*</span>填写退回说明:</div> <div class="form_item_val"> <textarea v-model="form.backCheckInfo" placeholder="请输入"></textarea> </div> </div> </div> <!-- 上传投保单 --> <div v-if="visible2==true" class="form"> <div class="form_item"> <div class="form_item_label">上传投保单:</div> <div class="form_item_val"> <el-form v-if="visible1==true" :model="form" ref="form1" :rules="rules1" style="width: 100%;"> <el-form-item label="填写退回说明:" prop="backCheckInfo"> <el-input type="textarea" v-model="form.backCheckInfo" placeholder="请输入" v-trim/> </el-form-item> </el-form> <el-form v-if="visible2==true" :model="form" ref="form2" :rules="rules2" style="width: 100%;"> <el-form-item label="上传投保单:" prop="toubaodanFile"> <UploadFile :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList" @uploadSuccess="toubaoFileUploaded" /> </div> </div> </div> </el-form-item> </el-form> <!-- 上传保险单 --> <div v-if="visible3==true" class="form"> <div class="form_item"> <div class="form_item_label">客户期望保险生效起期:</div> <div class="form_item_val">{{ model.applyStartTime }}</div> </div> <div class="form_item"> <div class="form_item_label">保险生效起期是否一致:</div> <div class="form_item_val"> <el-form v-if="visible3==true" :model="form" ref="form3" :rules="rules3" style="width: 100%;"> <el-form-item label="客户期望保险生效起期:"> {{ model.applyStartTime }} </el-form-item> <el-form-item label="" > <el-radio-group v-model="form.selectRadio" @change="selectChange"> <el-radio :label="0" >与保单一致</el-radio> <el-radio :label="1" >与保单不一致</el-radio> </el-radio-group> </div> </div> <div class="form_item"> <div class="form_item_label"><span>*</span>保险生效起期:</div> <div class="form_item_val"> </el-form-item> <el-form-item label="保险生效起期:" prop="startTime" > <el-date-picker v-model="form.startTime" type="date" value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择日期"> </el-date-picker> </div> </div> <div class="form_item"> <div class="form_item_label">保险生效起期:</div> <div class="form_item_val">{{ form.startTime }}</div> </div> <div class="form_item"> <div class="form_item_label"><span>*</span>保单号:</div> <div class="form_item_val" > <el-input v-model="form.code" placeholder="请输入"></el-input> </div> </div> <div class="form_item"> <div class="form_item_label">上传保险单:</div> <div class="form_item_val"> </el-form-item> <el-form-item label="保险生效起期:"> {{ form.startTime }} </el-form-item> <el-form-item label="保单号:" prop="code"> <el-input v-model="form.code" placeholder="请输入" v-trim/> </el-form-item> <el-form-item label="上传保险单:" prop="baoxianFile"> <UploadFile :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="baoxianFileUploaded" /> </div> </div> </div> </el-form-item> </el-form> <!-- 修改保险单 --> <div v-if="visible4==true" class="form"> <div class="form_item"> <div class="form_item_label">保险生效起期:</div> <div class="form_item_val">{{ model.startTime }}</div> </div> <div class="form_item"> <div class="form_item_label"><span>*</span>保单号:</div> <div class="form_item_val"> <el-input v-model="form.editCode" placeholder="请输入"></el-input> </div> </div> <div class="form_item"> <div class="form_item_label"><span>*</span>上传保险单:</div> <div class="form_item_val"> <UploadFile :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList2" @uploadSuccess="editBaoxianFileUploaded" /> </div> </div> <div class="form_item"> <div class="form_item_label"><span>*</span>修改原因:</div> <div class="form_item_val"> <el-input placeholder="请输入" v-model="form.editCheckInfo" ></el-input> </div> </div> </div> <!-- 驳回退回申请 --> <div v-if="visible5==true" class="form"> <div class="form_item"> <div class="form_item_label"><span>*</span>填写说明:</div> <div class="form_item_val"> <textarea v-model="form.dealBackInfo" placeholder="请输入"></textarea> </div> </div> </div> <!-- 同意退回申请 --> <div v-if="visible6==true" class="form"> <div class="form_item"> <div class="form_item_label"><span>*</span>同意退回说明:</div> <div class="form_item_val"> <textarea v-model="form.dealBackInfo" placeholder="请输入"></textarea> </div> </div> </div> <el-form v-if="visible4==true" :model="form" ref="form4" :rules="rules4" style="width: 100%;"> <el-form-item label="保险生效起期:"> {{ model.startTime }} </el-form-item> <el-form-item label="保单号:" prop="editCode"> <el-input v-model="form.editCode" placeholder="请输入" v-trim/> </el-form-item> <el-form-item label="上传保险单:" prop="editBaoxianFile"> <UploadFile :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="editBaoxianFileUploaded" /> </el-form-item> <el-form-item label="修改原因:" prop="editCheckInfo"> <el-input type="textarea" v-model="form.editCheckInfo" placeholder="请输入" v-trim/> </el-form-item> </el-form> <el-form v-if="visible5==true || visible6==true" :model="form" ref="form5" :rules="rules5" style="width: 100%;"> <el-form-item label="填写说明:" prop="dealBackInfo"> <el-input type="textarea" v-model="form.dealBackInfo" placeholder="请输入" v-trim/> </el-form-item> </el-form> <template v-slot:footer> <el-button type="primary" @click="doSubmit">确 定</el-button> <el-button @click="visible=false">取消</el-button> @@ -129,6 +85,7 @@ check } from "@/api/business/insuranceApply"; import UploadFile from "@/components/common/UploadFile"; import {remark} from "@/api/business/settleClaims"; export default { name: 'OperaChangeApplyCheckWindow', extends: BaseOpera, @@ -138,6 +95,43 @@ // 表单数据 model: {}, falg :0, rules1: { backCheckInfo: [ { required: true, message: '请完善信息' } ] }, rules2: { toubaodanFile: [ { required: true, message: '请完善信息' } ] }, rules3: { code: [ { required: true, message: '请完善信息' } ], startTime: [ { required: true, message: '请完善信息' } ], baoxianFile: [ { required: true, message: '请完善信息' } ], }, rules5: { dealBackInfo: [ { required: true, message: '请完善信息' } ] }, rules4: { editCode: [ { required: true, message: '请完善信息' } ], editBaoxianFile: [ { required: true, message: '请完善信息' } ], editCheckInfo: [ { required: true, message: '请完善信息' } ], }, form: { id: null, backCheckInfo:'', @@ -221,17 +215,53 @@ }, doSubmit(){ if (this.flag == 1) { this.$refs.form1.validate((valid) => { // debugger if (!valid) { return } this.backDo() }) } else if (this.flag == 2) { this.$refs.form2.validate((valid) => { // debugger if (!valid) { return } this.uploadToubaodan() }) } else if (this.flag == 3) { this.$refs.form3.validate((valid) => { // debugger if (!valid) { return } this.uploadBaoxiandan() }) } else if (this.flag == 4) { this.$refs.form4.validate((valid) => { // debugger if (!valid) { return } this.editBaoxiandan() }) } else if (this.flag == 5) { this.$refs.form5.validate((valid) => { // debugger if (!valid) { return } this.dealBackApply(1) }) } else if (this.flag == 6) { this.$refs.form5.validate((valid) => { // debugger if (!valid) { return } this.dealBackApply(0) }) } }, selectChange(){ company/src/components/business/OperaInsuranceApplyWindow.vue
@@ -38,6 +38,7 @@ <el-button v-if="model.status == 10" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('上传投保单',model,2)">上传投保单</el-button> <el-button v-if="model.status == 3" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('上传保险单',model,3)">上传保险单</el-button> <el-button v-if="model.status == 6 || model.status == 7|| model.status == 8" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('驳回退回申请',model,5)">驳回退回申请</el-button> <el-button v-if="model.status == 0" type="primary" @click="$refs.InsuranceDetails.open('投保审核',model,1)">投保审核</el-button> <el-button v-if="model.status != 5 && model.status != 4 && model.status != 1" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('退回投保',model,1)">退回投保</el-button> <el-button v-if="model.status == 5" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('修改保险单',model,4)">修改保险单</el-button> </template> company/src/components/business/OperaSettleClaimsCheckWindow.vue
@@ -6,92 +6,51 @@ :confirm-working="isWorking" @confirm="confirm" > <div v-if="visible1==true" class="form"> <div class="form_item"> <div class="form_item_label"> <span>*</span>报案号: </div> <div class="form_item_val"> <input type="text" v-model="form.reportNum" placeholder="请输入"> </div> </div> </div> <div v-if="visible2==true" class="form"> <div class="form_item"> <div class="form_item_label"> <span>*</span>处理进展: </div> <div class="form_item_val"> <textarea v-model="form.bizInfo" placeholder="请输入"></textarea> </div> </div> </div> <div v-if="visible3==true" class="form"> <div class="form_item"> <div class="form_item_label"> <span>*</span>填写撤销说明: </div> <div class="form_item_val"> <textarea v-model="form.backInfo" placeholder="请输入"></textarea> </div> </div> </div> <div v-if="visible4==true" class="form"> <div class="form_item"> <div class="form_item_label"> <span>*</span>结案内容: </div> <div class="form_item_val"> <textarea v-model="form.doneInfo" placeholder="请输入"></textarea> </div> </div> <div class="form_item"> <div class="form_item_label"> 医疗理赔: </div> <div class="form_item_val"> <input v-model="form.ylClaimAccount" placeholder="请输入" /> </div> </div> <div class="form_item"> <div class="form_item_label"> 误工理赔: </div> <div class="form_item_val"> <input v-model="form.wgClaimAccount" placeholder="请输入" /> </div> </div> <div class="form_item"> <div class="form_item_label"> 伤残理赔: </div> <div class="form_item_val"> <input v-model="form.scClaimAccount" placeholder="请输入" /> </div> </div> <div class="form_item"> <div class="form_item_label"> 死亡理赔: </div> <div class="form_item_val"> <input v-model="form.swClaimAccount" placeholder="请输入" /> </div> </div> </div> <el-form v-if="visible1==true" :model="form" ref="form1" :rules="rules1" style="width: 100%;"> <el-form-item label="报案号:" prop="reportNum"> <el-input v-model="form.reportNum" placeholder="请输入" v-trim/> </el-form-item> </el-form> <el-form v-if="visible2==true" :model="form" ref="form2" :rules="rules2" style="width: 100%;"> <el-form-item label="处理进展:" prop="bizInfo"> <el-input type="textarea" v-model="form.bizInfo" placeholder="请输入" v-trim/> </el-form-item> </el-form> <el-form v-if="visible3==true" :model="form" ref="form3" :rules="rules3" style="width: 100%;"> <el-form-item label="撤销说明:" prop="backInfo"> <el-input type="textarea" v-model="form.backInfo" placeholder="请输入" v-trim/> </el-form-item> </el-form> <el-form v-if="visible4==true" :model="form" ref="form4" :rules="rules4" style="width: 100%;"> <el-form-item label="结案内容:" prop="doneInfo"> <el-input type="textarea" v-model="form.doneInfo" @change="changeAccount" placeholder="请输入" v-trim/> </el-form-item> <el-form-item label="医疗理赔(元):" prop="ylClaimAccount"> <el-input type="number" v-model="form.ylClaimAccount" @change="changeAccount" placeholder="请输入" v-trim/> </el-form-item> <el-form-item label="误工理赔(元):" prop="wgClaimAccount"> <el-input type="number" v-model="form.wgClaimAccount" @change="changeAccount" placeholder="请输入" v-trim/> </el-form-item> <el-form-item label="伤残理赔(元):" prop="scClaimAccount"> <el-input type="number" v-model="form.scClaimAccount" @change="changeAccount" placeholder="请输入" v-trim/> </el-form-item> <el-form-item label="死亡理赔(元):" prop="swClaimAccount"> <el-input type="number" v-model="form.swClaimAccount" @change="changeAccount" placeholder="请输入" v-trim/> </el-form-item> <el-form-item label="总金额:" > <el-input type="number" readonly v-model="form.totalAccount" placeholder="请输入" v-trim/> </el-form-item> </el-form> <div v-if="visible5 ==true" class="form"> <div class="form_span" v-for="(item,index) in remarkLogList" :key="index"> <span>理赔员-{{ item.creatorName }} {{item.createDate }}</span> <span>{{item.content }}</span> </div> <div class="form_item"> <div class="form_item_label"> <span>*</span>填写备注标签: </div> <div class="form_item_val"> <textarea v-model="form.remarkInfo" placeholder="请输入"></textarea> </div> </div> <el-form :model="form" ref="form5" :rules="rules5" style="width: 100%;"> <el-form-item label="填写备注标签:" prop="remarkInfo"> <el-input type="textarea" v-model="form.remarkInfo" placeholder="请输入" v-trim/> </el-form-item> </el-form> </div> <template v-slot:footer> <el-button type="primary" @click="doSubmit">确定</el-button> @@ -103,7 +62,7 @@ <script> import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' import {addCode, back, dealBiz,doneCommit, remark} from "@/api/business/settleClaims"; import { addCode, back, dealBiz, doneCommit, remark } from '@/api/business/settleClaims' export default { name: 'OperaSettleClaimsCheckWindow', extends: BaseOpera, @@ -120,11 +79,12 @@ doneInfo: null, backInfo: null, remarkInfo: null, ylClaimAccount: null, wgClaimAccount: null, swClaimAccount: null, scClaimAccount: null, ylClaimAccount: 0, wgClaimAccount: 0, swClaimAccount: 0, scClaimAccount: 0, reportNum: null, totalAccount:0 }, model:{}, activeName: 'first', @@ -134,7 +94,32 @@ visible2: false, visible3: false, visible4: false, visible5: false visible5: false, rules1: { reportNum: [ { required: true, message: '请输入' } ] }, rules2: { bizInfo: [ { required: true, message: '请输入' } ] }, rules3: { backInfo: [ { required: true, message: '请输入' } ] }, rules5: { remarkInfo: [ { required: true, message: '请输入' } ] }, rules4: { doneInfo: [ { required: true, message: '请输入' } ] } } }, created () { @@ -164,11 +149,12 @@ remarkInfo: null, bizInfo: null, backInfo: null, ylClaimAccount: null, wgClaimAccount: null, swClaimAccount: null, scClaimAccount: null, ylClaimAccount: 0, wgClaimAccount: 0, swClaimAccount: 0, scClaimAccount: 0, reportNum: null, totalAccount:0 } if(type==1){ this.visible1=true @@ -186,10 +172,23 @@ this.visible5=true } }, changeAccount(){ this.form.swClaimAccount = parseFloat(this.form.swClaimAccount).toFixed(2) this.form.scClaimAccount = parseFloat(this.form.scClaimAccount).toFixed(2) this.form.wgClaimAccount = parseFloat(this.form.wgClaimAccount).toFixed(2) this.form.ylClaimAccount = parseFloat(this.form.ylClaimAccount).toFixed(2) this.form.totalAccount = parseFloat( this.form.scClaimAccount || 0) + parseFloat( this.form.swClaimAccount || 0) + parseFloat( this.form.wgClaimAccount|| 0) + parseFloat( this.form.ylClaimAccount|| 0) }, doSubmit(type) { var that =this if(this.type ===5){ // this.isWorking = true this.$refs.form5.validate((valid) => { // debugger if (!valid) { return } remark({id:that.model.id,checkInfo:that.form.remarkInfo}) .then(response => { this.visible=false @@ -197,20 +196,33 @@ }).catch(err => { this.$tip.apiFailed(err) }) }) }else if(this.type === 4){ // this.isWorking = true doneCommit({id: that.model.id, checkInfo: that.form.doneInfo, this.$refs.form4.validate((valid) => { // debugger if (!valid) { return } doneCommit({ id: that.model.id, checkInfo: that.form.doneInfo, ylClaimAccount: that.form.ylClaimAccount, wgClaimAccount: that.form.wgClaimAccount, swClaimAccount: that.form.swClaimAccount, scClaimAccount: that.form.scClaimAccount}) .then(response => { scClaimAccount: that.form.scClaimAccount }).then(response => { this.visible=false this.$emit('success') }).catch(err => { this.$tip.apiFailed(err) }) }) }else if(this.type===2){ this.$refs.form2.validate((valid) => { // debugger if (!valid) { return } //理赔处理 dealBiz({ id: that.model.id, checkInfo:that.form.bizInfo }) .then(response => { @@ -222,8 +234,13 @@ }).finally(() => { this.isWorking = false }) }) }else if(this.type===3){ //理赔处理 this.$refs.form3.validate((valid) => { // debugger if (!valid) { return } back({ id: that.model.id, checkInfo:that.form.backInfo }) .then(response => { this.visible=false @@ -234,8 +251,14 @@ }).finally(() => { this.isWorking = false }) }) }else if(this.type===1){ //添加备案号 this.$refs.form1.validate((valid) => { // debugger if (!valid) { return } addCode({ id: that.model.id, reportNum:that.form.reportNum }) .then(response => { this.visible=false @@ -246,6 +269,7 @@ }).finally(() => { this.isWorking = false }) }) } } } company/src/views/business/taxes.vue
@@ -70,7 +70,7 @@ </el-table-column> <el-table-column prop="type" label="发票电子版" min-width="100px"> <template slot-scope="{row}"> <img v-if="row.imgurlFull!=null" :src="row.imgurlFull" style="width: 90px;height: 90px"> <img v-if="row.imgurlFull!=null" :src="row.imgurlFull" style="width: 40px;height: 40px"> </template> </el-table-column> <el-table-column label="操作" min-width="180px"> server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java
@@ -95,9 +95,9 @@ @ApiModelProperty(value = "期望保险生效起期") @ExcelColumn(name="期望保险生效起期") //入参 @DateTimeFormat(pattern = "yyyy-MM-dd") //出参 @JsonFormat(pattern="yyyy-MM-dd") // @DateTimeFormat(pattern = "yyyy-MM-dd") // //出参 // @JsonFormat(pattern="yyyy-MM-dd") private Date validTime; @ApiModelProperty(value = "批单号") server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java
@@ -71,26 +71,26 @@ @ApiModelProperty(value = "期望保险生效止期") @ExcelColumn(name="期望保险生效止期") @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern="yyyy-MM-dd") // @DateTimeFormat(pattern = "yyyy-MM-dd") // @JsonFormat(pattern="yyyy-MM-dd") private Date applyEndTime; @ApiModelProperty(value = "期望保险生效起期") @ExcelColumn(name="期望保险生效起期") @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern="yyyy-MM-dd") // @DateTimeFormat(pattern = "yyyy-MM-dd") // @JsonFormat(pattern="yyyy-MM-dd") private Date applyStartTime; @ApiModelProperty(value = "实际保险生效止期") @ExcelColumn(name="实际保险生效止期") @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern="yyyy-MM-dd") // @DateTimeFormat(pattern = "yyyy-MM-dd") // @JsonFormat(pattern="yyyy-MM-dd") private Date endTime; @ApiModelProperty(value = "实际保险生效起期") @ExcelColumn(name="实际保险生效起期") @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern="yyyy-MM-dd") // @DateTimeFormat(pattern = "yyyy-MM-dd") // @JsonFormat(pattern="yyyy-MM-dd") private Date startTime; @ApiModelProperty(value = "最近操作时间") server/service/src/main/java/com/doumee/service/business/impl/SettleClaimsServiceImpl.java
@@ -196,7 +196,7 @@ Constants.SettleClaimsLogType applyLogType = Constants.SettleClaimsLogType.PLATFORM_REMARK; String info =applyLogType.getInfo(); info = info.replace("${param}", update.getCheckInfo()); info = info.replace("${param}", param.getCheckInfo()); SettleClaimsLog log = new SettleClaimsLog(update,applyLogType.getName(), info,update.getId(),applyLogType.getKey(), JSONObject.toJSONString(model), JSONObject.toJSONString(update)); settleClaimsLogMapper.insert(log); return 1;