| | |
| | | # VUE_APP_API = 'https://dmtest.ahapp.net/yyb_admin_api/' |
| | | |
| | | # 任康 |
| | | VUE_APP_API = 'http://192.168.0.140:10030/' |
| | | VUE_APP_API = 'http://192.168.0.143:10030/' |
| | |
| | | |
| | | # VUE_APP_API = 'https://dmtest.ahapp.net/yyb_web_api/' |
| | | |
| | | VUE_APP_API = 'http://192.168.0.140:10031/' |
| | | VUE_APP_API = 'http://192.168.0.143:10031/' |
| | | |
| | | # VUE_APP_API = 'https://www.yyb.red/yyb_web_api/' |
| | |
| | | }) |
| | | } |
| | | |
| | | // çèµæ¥æ¡ |
| | | export function saveSettleClaims (data) { |
| | | return request.post('/business/settleRisk/saveSettleClaims', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | |
| | | // æ¤éæ¥æ¡ |
| | | export function returnSettle (data) { |
| | | return request.post('/business/settleRisk/returnSettle', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | |
| | | // å¹³å°ç«æ¡æéå |
| | | export function register (data) { |
| | | return request.post('/business/settleRisk/register', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | |
| | | // å¹³å°åçä¸å¡ |
| | | export function acceptance (data) { |
| | | return request.post('/business/settleRisk/acceptance', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | |
| | | // æ·»å æ¥æ¡å· |
| | | export function addReportNum (data) { |
| | | return request.post('/business/settleRisk/addReportNum', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | |
| | | // æ·»å 夿³¨ |
| | | export function addRemark (data) { |
| | | return request.post('/business/settleRisk/addRemark', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | |
| | | // è·å详æ
|
| | | export function getRiskConfig () { |
| | | return request.get('/business/settleRisk/getRiskConfig') |
| | | } |
| | | |
| | | // åçä¸å¡ |
| | | export function getDiscussProblemType () { |
| | | return request.get('/business/settleRisk/getDiscussProblemType') |
| | | } |
| | | |
| | | // è¡¥å
说æ |
| | | export function saveSupplementDescribe (data) { |
| | | return request.post('/business/settleRisk/saveSupplementDescribe', data) |
| | | } |
| | | |
| | | // ä¿®æ¹æ¡ä»¶ç±»å |
| | | export function updCaseType (data) { |
| | | return request.post('/business/settleRisk/updCaseType', data) |
| | | } |
| | | |
| | | // æ·»å ææ |
| | | export function saveSupplementFile (data) { |
| | | return request.post('/business/settleRisk/saveSupplementFile', data) |
| | | } |
| | | |
| | | // çèµ |
| | | export function compensation (data) { |
| | | return request.post('/business/settleRisk/compensation', data) |
| | | } |
| | | |
| | | // æ ¸èµ |
| | | export function nuclearCompensation (data) { |
| | | return request.post('/business/settleRisk/nuclearCompensation', data) |
| | | } |
| | |
| | | <span>{{ item.name }}</span> |
| | | </div> |
| | | </div> |
| | | <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="SETTLE_FILE" @success="claimsUploadFile($event, 7)" /> |
| | | <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 7)" /> |
| | | </div> |
| | | </el-form-item> |
| | | </div> |
| | |
| | | <span>{{ item.name }}</span> |
| | | </div> |
| | | </div> |
| | | <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="SETTLE_FILE" @success="claimsUploadFile($event, 6)" /> |
| | | <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 6)" /> |
| | | </div> |
| | | </el-form-item> |
| | | </div> |
| | |
| | | <span>{{ item.name }}</span> |
| | | </div> |
| | | </div> |
| | | <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="SETTLE_FILE" @success="claimsUploadFile($event, 1)" /> |
| | | <upload 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;"> |
| | |
| | | <span>{{ item.name }}</span> |
| | | </div> |
| | | </div> |
| | | <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="SETTLE_FILE" @success="claimsUploadFile($event, 2)" /> |
| | | <upload 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;"> |
| | |
| | | <span>{{ item.name }}</span> |
| | | </div> |
| | | </div> |
| | | <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="SETTLE_FILE" @success="claimsUploadFile($event, 3)" /> |
| | | <upload 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;"> |
| | |
| | | <span>{{ item.name }}</span> |
| | | </div> |
| | | </div> |
| | | <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="SETTLE_FILE" @success="claimsUploadFile($event, 4)" /> |
| | | <upload 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;"> |
| | |
| | | <span>{{ item.name }}</span> |
| | | </div> |
| | | </div> |
| | | <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="SETTLE_FILE" @success="claimsUploadFile($event, 5)" /> |
| | | <upload width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @success="claimsUploadFile($event, 5)" /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | { required: true, message: 'ä¸è½ä¸ºç©º', trigger: 'blur' } |
| | | ] |
| | | }, |
| | | uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/public/upload?folder=SETTLE_FILE', |
| | | uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/public/upload?folder=settle', |
| | | totalPrice: 0, |
| | | list1: [], |
| | | list2: [], |
| | |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <div class="box"> |
| | | <div class="box" v-if="info"> |
| | | <div class="box_status"> |
| | | <div class="box_status_row" v-for="(item, index) in statusList" :key="index"> |
| | | <div v-if="statusList.length - 1 !== index" :class="item.date ? 'box_status_row_xian statusColor2' : 'box_status_row_xian'"></div> |
| | | <div :class="item.date ? 'box_status_row_icon statusColor1' : statusList[index - 1].date ? 'box_status_row_icon statusColor2 statusColor3' : 'box_status_row_icon'"> |
| | | <span v-if="!item.date">{{index + 1}}</span> |
| | | <i class="el-icon-check" v-else></i> |
| | | </div> |
| | | <div class="box_status_row" v-for="(item, index) in info.parentStatusVOList" :key="index"> |
| | | <div v-if="info.parentStatusVOList.length - 1 !== index" :class="item.optDate ? 'box_status_row_xian statusColor1' : 'box_status_row_xian'"></div> |
| | | <div :class="item.optDate ? 'box_status_row_icon statusColor1' : info.parentStatusVOList[index - 1].optDate ? 'box_status_row_icon statusColor2 statusColor3' : 'box_status_row_icon'"></div> |
| | | <div class="box_status_row_info"> |
| | | <div class="title">{{item.name}}</div> |
| | | <div class="info" v-if="item.info">{{item.info}}</div> |
| | | <div class="info" v-if="item.date">{{item.date}}</div> |
| | | <div class="title">{{item.parentTitle}}</div> |
| | | <div class="info" v-if="item.childTitle">{{item.childTitle}}</div> |
| | | <div class="info" v-if="item.optDate">{{item.optDate}}</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc"> |
| | | <div class="box_desc_head"> |
| | | <div class="box_desc_title"> |
| | | <i class="el-icon-success"></i> |
| | | <span class="box_desc_title_val">çç®å®æ</span> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc_ls"> |
| | | <span>çç®èµä»éé¢å计ï¼</span> |
| | | <span>Â¥{{info.claimAccount + info.otherAccount}}</span> |
| | | </div> |
| | | <div class="box_desc_lslist"> |
| | | <div class="box_desc_lslist_title">èµä»è¯¦æ
</div> |
| | | <div class="box_desc_lslist_l"> |
| | | <div class="box_desc_lslist_l_row" v-for="(item, index) in JSON.parse(info.accountContent).filter(row => row.type === 0)" :key="index"> |
| | | <span>{{item.name}}</span> |
| | | <span>{{item.fee}}</span> |
| | | <span>{{item.describe}}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="box_desc_head"> |
| | | <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"> |
| | | <i class="el-icon-warning"></i> |
| | | <span>é£é©æ¡ä»¶</span> |
| | | </div> |
| | | <el-select v-model="info.caseType" @change="setCaseType" style="width: 100px;" placeholder="æ¡ä»¶ç±»å" v-if="[9,10,11].includes(info.status)"> |
| | | <el-option label="å»ç" :value="1"></el-option> |
| | | <el-option label="伤æ®" :value="2"></el-option> |
| | | <el-option label="æ»äº¡" :value="3"></el-option> |
| | | </el-select> |
| | | </div> |
| | | <div class="box_desc_btns"> |
| | | <el-button type="danger" @click="show = true">éå</el-button> |
| | | <el-button type="primary">ç«æ¡</el-button> |
| | | <el-button icon="el-icon-refresh-left" type="primary" circle></el-button> |
| | | <div class="box_desc_btns_operate"> |
| | | <i class="el-icon-arrow-down"></i> |
| | | <span>æ¶èµ·</span> |
| | | </div> |
| | | <template v-if="userInfo.type === 1"> |
| | | <el-button type="danger" @click="revoke()" v-if="[1,2,3,4,5,9,7,10,11].includes(info.status)">æ¤éæ¥æ¡</el-button> |
| | | </template> |
| | | <template v-if="userInfo.type === 0"> |
| | | <el-button type="danger" @click="returnCase" v-if="[1,2].includes(info.status)">éå</el-button> |
| | | <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,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(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> |
| | | <el-button type="primary" @click="$refs.adjustment.open('æ ¸èµ', info.id, 2)" v-if="[10].includes(info.status)">æ ¸èµ</el-button> |
| | | <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,14].includes(info.status)"></el-button> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc_list"> |
| | | <div class="box_desc_list_row"> |
| | | æ¥æ¡æ¶é´ï¼2024-09-12 03:50 |
| | | æ¥æ¡æ¶é´ï¼{{info.createDate}} |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | æ¥æ¡å·ï¼YYBLP-2025010101 |
| | | æ¥æ¡å·ï¼{{info.reportNum}} |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | æå±ä¿åï¼2984719842130 <el-button type="text">ä¸è½½ä¿å</el-button> |
| | | æå±ä¿åï¼{{info.applyCode}} |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | æ¥æ¡äººï¼å°¹æå¤ |
| | | æ¥æ¡äººï¼{{info.informantName}} |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | æ¥æ¡äººèç³»æ¹å¼ï¼15556970338 |
| | | æ¥æ¡äººèç³»æ¹å¼ï¼{{info.informantPhone}} |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | ä¿å¸æ¥æ¡å·ï¼- |
| | | <div class="box_desc_list_zw"></div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="box_fx"> |
| | | <div class="box_fx" v-if="info.isRisk === 1"> |
| | | <div class="box_fx_left"> |
| | | <i class="el-icon-warning"></i> |
| | | <span class="box_fx_left_a">注æï¼è¯¥æ¡ä»¶æ5æ¡é£é©ä¿¡æ¯</span> |
| | | <span class="box_fx_left_b">æ¥ç详æ
</span> |
| | | <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"></i> |
| | | <i class="el-icon-close" @click="info.isRisk = 0"></i> |
| | | </div> |
| | | <div class="box_desc"> |
| | | <div class="box_desc_head"> |
| | | <div class="box_desc_title"> |
| | | <span class="box_desc_title_val">åºé©äººä¿¡æ¯</span> |
| | | </div> |
| | | <div class="box_desc_btns"> |
| | | <div class="box_desc_btns_operate"> |
| | | <i class="el-icon-arrow-down"></i> |
| | | <span>æ¶èµ·</span> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="box_desc_btns">--> |
| | | <!-- <div class="box_desc_btns_operate">--> |
| | | <!-- <i class="el-icon-arrow-down"></i>--> |
| | | <!-- <span>æ¶èµ·</span>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | </div> |
| | | <div class="box_desc_list"> |
| | | <div class="box_desc_list_row"> |
| | | åºé©äººå§åï¼æé |
| | | åºé©äººå§åï¼{{info.memberName}} |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | åºé©äººèº«ä»½è¯å·ï¼340122200603251924 |
| | | åºé©äººèº«ä»½è¯å·ï¼{{info.memberIdcard}} |
| | | </div> |
| | | <div style="width: 33%; height: 0;"></div> |
| | | </div> |
| | |
| | | </div> |
| | | <div class="box_desc_f"> |
| | | <div class="box_desc_fa"> |
| | | <div class="box_desc_fa_title">工伤æå¤é©-Bç±»</div> |
| | | <div class="box_desc_fa_row">ä¿åå·ï¼20241225133229</div> |
| | | <div class="box_desc_fa_row">ä¿éæéï¼2025-01-01ï½2025-12-31</div> |
| | | <div class="box_desc_fa_row">æä¿åä½ï¼XXXä¿¡æ¯ç§ææéå
¬å¸</div> |
| | | <div class="box_desc_fa_row">æ´¾é£åä½ï¼XXXä¿¡æ¯ç§ææéå
¬å¸</div> |
| | | <div class="box_desc_fa_row">æå±å·¥ç§ï¼çµå卿¢°å¶é å·¥</div> |
| | | <div class="box_desc_fa_title">{{info.solutionName}}</div> |
| | | <div class="box_desc_fa_row">ä¿åå·ï¼{{info.applyCode}}</div> |
| | | <div class="box_desc_fa_row">ä¿éæéï¼{{info.baoxianStartTime}}ï½{{info.baoxianEndTime}}</div> |
| | | <div class="box_desc_fa_row">æä¿åä½ï¼{{info.companyName}}</div> |
| | | <div class="box_desc_fa_row">æ´¾é£åä½ï¼{{info.duName}}</div> |
| | | <div class="box_desc_fa_row">æå±å·¥ç§ï¼{{info.worktypeName}}</div> |
| | | </div> |
| | | <div class="box_desc_fa"> |
| | | <div class="box_desc_fa_title">工伤æå¤é©-Bç±»</div> |
| | | <div class="box_desc_fa_row">ä¿åå·ï¼20241225133229</div> |
| | | <div class="box_desc_fa_row">ä¿éæéï¼2025-01-01ï½2025-12-31</div> |
| | | <div class="box_desc_fa_row">æä¿åä½ï¼XXXä¿¡æ¯ç§ææéå
¬å¸</div> |
| | | <div class="box_desc_fa_row">æ´¾é£åä½ï¼XXXä¿¡æ¯ç§ææéå
¬å¸</div> |
| | | <div class="box_desc_fa_row">æå±å·¥ç§ï¼çµå卿¢°å¶é å·¥</div> |
| | | </div> |
| | | <div style="width: 32%; height: 0;"></div> |
| | | </div> |
| | | <div class="box_desc_head"> |
| | | <div class="box_desc_title"> |
| | |
| | | </div> |
| | | <div class="box_desc_list"> |
| | | <div class="box_desc_list_row"> |
| | | åºé©æ¶é´ï¼2024-06-13 07:40:00 |
| | | åºé©æ¶é´ï¼{{info.happenTime}} |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | å°±è¯å»çæºæï¼åè¥ç¬¬äºäººæ°å»é¢ |
| | | å°±è¯å»çæºæï¼{{info.hospital}} |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | åºç°å°åºï¼å®å¾½çåè¥å¸è¥ä¸å¿ |
| | | åºé©å°åºï¼{{info.areaInfo}} |
| | | </div> |
| | | <div class="box_desc_list_row" style="width: 100%;"> |
| | | åºé©ç»è¿ï¼ä¸çæ¶é´éªè½¦è¢«æã头é¨éå°æå»CTè¿æ²¡åºæ¥ï¼ èè¸è¿æå·¦è¾¹å¤§è
¿å¤ä¾§ä¸¥éæ¦ä¼¤ã |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | äºæ
ç±»åï¼ä¸ä¸çéä¸å伤 |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | æ¯å¦ä½é¢ï¼æ¯ |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | æ¯å¦æå»çä¿é©ï¼æ¯ |
| | | åºé©ç»è¿ï¼{{info.content}} |
| | | </div> |
| | | <div class="box_desc_list_row" style="width: 100%;"> |
| | | å°±è¯ç±»åï¼ä½é¢ |
| | | äºæ
ç±»åï¼{{returnType(info.type)}} |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | æ¯å¦æå»çä¿é©ï¼{{returnName(info.medicalInsurance)}} |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | å°±è¯ç±»åï¼{{returnInHospital(info.inHospital)}} |
| | | </div> |
| | | <div class="box_desc_list_zw"></div> |
| | | <div class="box_desc_list_img"> |
| | | <span>äºæ
è§é¢/ç
§çï¼</span> |
| | | <div class="box_desc_list_img_files"> |
| | | <div class="box_desc_list_img_files_row"> |
| | | <img src="" alt="" /> |
| | | <div class="box_desc_list_img_files_row" v-for="(item, index) in info.reportFileList" :key="index"> |
| | | <img :src="item.fileurlFull" alt="img" /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="box_desc_title"> |
| | | <span class="box_desc_title_val">çèµææ</span> |
| | | </div> |
| | | <div class="box_desc_btns"> |
| | | <div class="box_desc_btns_operate"> |
| | | <i class="el-icon-arrow-down"></i> |
| | | <span>æ¶èµ·</span> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="box_desc_btns">--> |
| | | <!-- <div class="box_desc_btns_operate">--> |
| | | <!-- <i class="el-icon-arrow-down"></i>--> |
| | | <!-- <span>æ¶èµ·</span>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | </div> |
| | | <div class="box_desc_cailiao"> |
| | | <div class="box_desc_cailiao_title"> |
| | |
| | | <span>åå·¥å
³ç³»è¯æææ</span> |
| | | </div> |
| | | <div class="box_desc_cailiao_list"> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in 3" :key="index"> |
| | | <img src="" alt="" /> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in info.relationFileList" :key="index"> |
| | | <img :src="item.fileurlFull" alt="img" /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <span>é¨è¯</span> |
| | | </div> |
| | | <div class="box_desc_cailiao_list"> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in 3" :key="index"> |
| | | <img src="" alt="" /> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in info.outpatientFileList" :key="index"> |
| | | <img :src="item.fileurlFull" alt="img" /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <span>ä½é¢</span> |
| | | </div> |
| | | <div class="box_desc_cailiao_list"> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in 3" :key="index"> |
| | | <img src="" alt="" /> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in info.hospitalFileList" :key="index"> |
| | | <img :src="item.fileurlFull" alt="img" /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <span>伤æ®</span> |
| | | </div> |
| | | <div class="box_desc_cailiao_list"> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in 3" :key="index"> |
| | | <img src="" alt="" /> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in info.disabilityFileList" :key="index"> |
| | | <img :src="item.fileurlFull" alt="img" /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <span>å
¶ä»ææ</span> |
| | | </div> |
| | | <div class="box_desc_cailiao_list"> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in 3" :key="index"> |
| | | <img src="" alt="" /> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in info.otherFileList" :key="index"> |
| | | <img :src="item.fileurlFull" alt="img" /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <span>è¡¥å
ææ</span> |
| | | </div> |
| | | <div class="box_desc_cailiao_list"> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in 3" :key="index"> |
| | | <img src="" alt="" /> |
| | | <div class="box_desc_cailiao_list_img" v-for="(item, index) in info.supplementFileList" :key="index"> |
| | | <img :src="item.fileurlFull" alt="img" /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <el-button type="primary" @click="show = false">ç¡®å®éå</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <!-- é£é©æ¡ä»¶æé --> |
| | | <RiskCaseReminder ref="riskCaseReminder" /> |
| | | <!-- æ¡ä»¶è¿åº¦ --> |
| | | <CaseProgress ref="caseProgress" /> |
| | | <!-- åç --> |
| | | <Acceptance ref="acceptance" @success="getDetail" /> |
| | | <!-- æ·»å ææ --> |
| | | <AdditionMaterial_ba ref="additionMaterial_ba" @success="getDetail" /> |
| | | <!-- çç® --> |
| | | <adjustment ref="adjustment" @success="getDetail" /> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import { findById, returnSettle } from '@/api/business/settleClaims' |
| | | import { |
| | | register, |
| | | addReportNum, |
| | | addRemark, |
| | | saveSupplementDescribe, |
| | | updCaseType } from '@/api/business/settleRisk' |
| | | import RiskCaseReminder from '@/components/business/riskCaseReminder' |
| | | import CaseProgress from '@/components/business/caseProgress' |
| | | import Acceptance from '@/components/business/acceptance' |
| | | import AdditionMaterial_ba from '@/components/business/additionMaterial_ba' |
| | | import adjustment from '@/components/business/adjustment' |
| | | import { mapState } from 'vuex' |
| | | |
| | | export default { |
| | | name: 'OperaSettleClaimsWindow', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow }, |
| | | components: { GlobalWindow, RiskCaseReminder, CaseProgress, Acceptance, AdditionMaterial_ba, adjustment }, |
| | | data () { |
| | | return { |
| | | show: false, |
| | | statusList: [ |
| | | { |
| | | name: 'æ¥æ¡', |
| | | info: 'å·²æ¥æ¡', |
| | | date: '2025-03-03 12:31' |
| | | }, |
| | | { |
| | | name: 'ç«æ¡', |
| | | info: 'å¾
ç«æ¡', |
| | | date: '' |
| | | }, |
| | | { |
| | | name: 'åç', |
| | | info: '', |
| | | date: '' |
| | | }, |
| | | { |
| | | name: 'çç®', |
| | | info: '', |
| | | date: '' |
| | | }, |
| | | { |
| | | name: 'æ ¸èµ', |
| | | info: '', |
| | | date: '' |
| | | }, |
| | | { |
| | | name: 'ç»æ¡', |
| | | info: '', |
| | | date: '' |
| | | } |
| | | ] |
| | | info: null, |
| | | id: null |
| | | } |
| | | }, |
| | | computed: { |
| | |
| | | }) |
| | | }, |
| | | methods: { |
| | | open (title, id) { |
| | | this.title = title |
| | | this.id = id |
| | | this.getDetail() |
| | | }, |
| | | setCaseType(e) { |
| | | updCaseType({ id: this.id, caseType: e }) |
| | | .then(res => { |
| | | this.getDetail() |
| | | }) |
| | | }, |
| | | supplementaryMaterials() { |
| | | this.$prompt('è¡¥å
说æ', 'è¡¥å
ææ', { |
| | | confirmButtonText: 'æäº¤', |
| | | cancelButtonText: 'åæ¶', |
| | | inputPattern: /^(?:.|\n)+$/, |
| | | inputErrorMessage: 'è¡¥å
说æä¸è½ä¸ºç©ºï¼', |
| | | beforeClose: (action, instance, done) => { |
| | | if (action === 'confirm') { |
| | | instance.confirmButtonLoading = true; |
| | | saveSupplementDescribe({ id: this.id, describe: instance.inputValue }) |
| | | .finally(() => { |
| | | done(); |
| | | instance.confirmButtonLoading = false; |
| | | }) |
| | | } else { |
| | | done(); |
| | | } |
| | | } |
| | | }).then(({ value }) => { |
| | | this.getDetail() |
| | | }).catch(() => { |
| | | |
| | | }); |
| | | }, |
| | | addRemark() { |
| | | this.$prompt('夿³¨', 'æ·»å 夿³¨', { |
| | | confirmButtonText: 'æ·»å ', |
| | | cancelButtonText: 'åæ¶', |
| | | inputPattern: /^(?:.|\n)+$/, |
| | | inputErrorMessage: '夿³¨ä¸è½ä¸ºç©ºï¼', |
| | | beforeClose: (action, instance, done) => { |
| | | if (action === 'confirm') { |
| | | instance.confirmButtonLoading = true; |
| | | addRemark({ id: this.id, describe: instance.inputValue }) |
| | | .finally(() => { |
| | | done(); |
| | | instance.confirmButtonLoading = false; |
| | | }) |
| | | } else { |
| | | done(); |
| | | } |
| | | } |
| | | }).then(({ value }) => { |
| | | this.getDetail() |
| | | }).catch(() => { |
| | | |
| | | }); |
| | | }, |
| | | addReport(type) { |
| | | this.$prompt(`æ¥æ¡å·`, `${type === 1 ? 'æ·»å æ¥æ¡å·' : 'ç¼è¾æ¥æ¡å·'}`, { |
| | | confirmButtonText: 'æ·»å ', |
| | | cancelButtonText: 'åæ¶', |
| | | inputPattern: /^(?:.|\n)+$/, |
| | | inputErrorMessage: 'æ¥æ¡å·ä¸è½ä¸ºç©ºï¼', |
| | | beforeClose: (action, instance, done) => { |
| | | if (action === 'confirm') { |
| | | instance.confirmButtonLoading = true; |
| | | addReportNum({ id: this.id, reportNum: instance.inputValue }) |
| | | .finally(() => { |
| | | done(); |
| | | instance.confirmButtonLoading = false; |
| | | }) |
| | | } else { |
| | | done(); |
| | | } |
| | | } |
| | | }).then(({ value }) => { |
| | | this.getDetail() |
| | | }).catch(() => { |
| | | |
| | | }); |
| | | }, |
| | | register() { |
| | | this.$prompt('ç«æ¡è¯´æ', 'ç«æ¡', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | beforeClose: (action, instance, done) => { |
| | | if (action === 'confirm') { |
| | | instance.confirmButtonLoading = true; |
| | | register({ id: this.id, describe: instance.inputValue, registerStatus: 3 }) |
| | | .finally(() => { |
| | | done(); |
| | | instance.confirmButtonLoading = false; |
| | | }) |
| | | } else { |
| | | done(); |
| | | } |
| | | } |
| | | }).then(({ value }) => { |
| | | this.getDetail() |
| | | }).catch(() => { |
| | | |
| | | }); |
| | | }, |
| | | returnCase() { |
| | | this.$prompt('éå说æ', 'éå', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | inputPattern: /^(?:.|\n)+$/, |
| | | inputErrorMessage: 'éå说æä¸è½ä¸ºç©ºï¼', |
| | | beforeClose: (action, instance, done) => { |
| | | if (action === 'confirm') { |
| | | instance.confirmButtonLoading = true; |
| | | register({ id: this.id, describe: instance.inputValue, registerStatus: 4 }) |
| | | .finally(() => { |
| | | done(); |
| | | instance.confirmButtonLoading = false; |
| | | }) |
| | | } else { |
| | | done(); |
| | | } |
| | | } |
| | | }).then(({ value }) => { |
| | | this.getDetail() |
| | | }).catch(() => { |
| | | |
| | | }); |
| | | }, |
| | | getDetail() { |
| | | findById(this.id) |
| | | .then(res => { |
| | | res.riskContent = JSON.parse(res.riskContent) |
| | | this.info = res |
| | | this.visible = true |
| | | }) |
| | | }, |
| | | // æ¤é |
| | | revoke(id) { |
| | | this.$confirm('æ¤éåï¼æ¡ä»¶ç´æ¥ç»æï¼æ æ³ç»§ç»è¿è¡çèµæä½ï¼', 'æ¯å¦æ¤éæ¥æ¡ï¼', { |
| | | confirmButtonText: 'ç¡®å®æ¤é', |
| | | cancelButtonText: 'æåæ³æ³', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | returnSettle({ id: this.info.id }) |
| | | .then(res => { |
| | | this.getDetail() |
| | | }) |
| | | }).catch(() => { |
| | | |
| | | }); |
| | | }, |
| | | returnInHospital(type) { |
| | | switch (type) { |
| | | case 0: |
| | | return 'ä½é¢' |
| | | case 1: |
| | | return 'é¨è¯' |
| | | } |
| | | }, |
| | | returnName(type) { |
| | | switch (type) { |
| | | case 0: |
| | | return 'æ¯' |
| | | case 1: |
| | | return 'å¦' |
| | | } |
| | | }, |
| | | returnType(type) { |
| | | switch (type) { |
| | | case 0: |
| | | return '工使é´å伤' |
| | | case 1: |
| | | return 'ä¸ä¸çéä¸å伤' |
| | | case 2: |
| | | return 'é工使¶é´å伤' |
| | | case 3: |
| | | return 'æå¤å伤' |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | |
| | | .box_status_row { |
| | | width: 200px; |
| | | display: flex; |
| | | align-items: start; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | position: relative; |
| | | .box_status_row_xian { |
| | | position: absolute; |
| | | right: 30px; |
| | | top: 10px; |
| | | width: calc(100% - 110px); |
| | | right: -55px; |
| | | top: 5px; |
| | | width: calc(100% - 80px); |
| | | height: 1px; |
| | | background-color: #BEBEBE; |
| | | } |
| | | .statusColor1 { |
| | | background-color: #E8F4FF !important; |
| | | background-color: #165DFF !important; |
| | | } |
| | | .statusColor2 { |
| | | background-color: #165DFF !important; |
| | | border: 1px solid #0052D9 !important; |
| | | } |
| | | .statusColor3 { |
| | | span { |
| | |
| | | } |
| | | } |
| | | .box_status_row_icon { |
| | | width: 28px; |
| | | height: 28px; |
| | | background-color: rgba(242,243,245,1); |
| | | width: 8px; |
| | | height: 8px; |
| | | border: 1px solid #C5C5C5; |
| | | border-radius: 50%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | border-radius: 50%; |
| | | margin-right: 10px; |
| | | span { |
| | | color: rgba(78,89,105,1); |
| | | font-size: 14px; |
| | |
| | | } |
| | | .box_status_row_info { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | flex-direction: column; |
| | | margin-top: 10px; |
| | | .title { |
| | | color: rgba(78,89,105,1); |
| | | font-size: 16px; |
| | |
| | | .info { |
| | | color: rgba(154,154,154,1); |
| | | font-size: 14px; |
| | | margin-top: 5px; |
| | | margin-top: 10px; |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | } |
| | | } |
| | | .box_desc_ls { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 15px; |
| | | span { |
| | | &:nth-child(1) { |
| | | color: rgba(0,0,0,1); |
| | | font-size: 16px; |
| | | } |
| | | &:nth-child(2) { |
| | | color: rgba(255,162,63,1); |
| | | font-size: 16px; |
| | | } |
| | | } |
| | | } |
| | | .box_desc_lslist { |
| | | width: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | margin-bottom: 40px; |
| | | .box_desc_lslist_title { |
| | | color: rgba(0,0,0,1); |
| | | font-size: 16px; |
| | | margin-bottom: 15px; |
| | | } |
| | | .box_desc_lslist_l { |
| | | width: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | padding-left: 50px; |
| | | box-sizing: border-box; |
| | | .box_desc_lslist_l_row { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 13px; |
| | | &:last-child { |
| | | margin: 0 !important; |
| | | } |
| | | span { |
| | | &:nth-child(1) { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | } |
| | | &:nth-child(2) { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | margin: 0 30px; |
| | | } |
| | | &:nth-child(3) { |
| | | color: rgba(108,108,108,1); |
| | | font-size: 14px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .box_desc_head { |
| | | width: 100%; |
| | | display: flex; |
| | |
| | | .box_desc_title { |
| | | display: flex; |
| | | align-items: center; |
| | | .el-icon-success { |
| | | font-size: 20px; |
| | | color: #34C758; |
| | | margin-right: 10px; |
| | | } |
| | | .box_desc_title_val { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 18px; |
| | |
| | | align-items: center; |
| | | justify-content: center; |
| | | background-color: rgba(254,226,225,1); |
| | | margin-right: 20px; |
| | | .el-icon-warning { |
| | | color: #FF4D4F; |
| | | margin-right: 5px; |
| | | } |
| | | span { |
| | | color: #FF4D4F; |
| | | font-size: 12px; |
| | |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | flex-wrap: wrap; |
| | | .box_desc_list_zw { |
| | | width: 33%; |
| | | height: 0; |
| | | } |
| | | .box_desc_list_row { |
| | | width: 33%; |
| | | color: rgba(16,16,16,1); |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="500px" |
| | | text="åæåç" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <el-form :model="form" ref="form" :rules="form.status === 0 ? rules : rules1" label-position="top"> |
| | | <el-form-item label="" prop="status"> |
| | | <el-radio-group v-model="form.status" @change="changeStatus"> |
| | | <el-radio :label="0">åæ</el-radio> |
| | | <el-radio :label="1">æç»</el-radio> |
| | | <el-radio :label="2">å议审æ¹</el-radio> |
| | | <el-radio :label="3">åè®®ä¸å®¡æ¹</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="说æ" prop="describe"> |
| | | <el-input |
| | | type="textarea" |
| | | :rows="5" |
| | | placeholder="请è¾å
¥è¯´æ" |
| | | v-model="form.describe" /> |
| | | </el-form-item> |
| | | <el-form-item label="é®é¢ç±»å" prop="problem" v-if="[2,3].includes(form.status)"> |
| | | <el-checkbox-group v-model="form.problem" @change="changeProblem"> |
| | | <el-checkbox :label="item" v-for="(item, index) in problemList" :key="index"></el-checkbox> |
| | | </el-checkbox-group> |
| | | </el-form-item> |
| | | </el-form> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import { acceptance, getDiscussProblemType } from '@/api/business/settleRisk' |
| | | export default { |
| | | name: 'acceptance', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow }, |
| | | data () { |
| | | return { |
| | | form: { |
| | | id: null, |
| | | status: 0, |
| | | describe: '', |
| | | syProblemOpts: '', |
| | | problem: [] |
| | | }, |
| | | problemList: [], |
| | | rules: { |
| | | problem: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º', trigger: 'blur' } |
| | | ] |
| | | }, |
| | | rules1: { |
| | | problem: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º', trigger: 'blur' } |
| | | ], |
| | | describe: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º', trigger: 'blur' } |
| | | ] |
| | | } |
| | | } |
| | | }, |
| | | methods: { |
| | | open(title, id) { |
| | | this.title = title |
| | | this.form.id = id |
| | | getDiscussProblemType() |
| | | .then(res => { |
| | | console.log(res) |
| | | this.problemList = res |
| | | }) |
| | | this.visible = true |
| | | }, |
| | | changeStatus() { |
| | | this.$nextTick(() => { |
| | | this.$refs.form.clearValidate(); |
| | | }) |
| | | }, |
| | | changeProblem(e) { |
| | | if (!e || e.length === 0) { |
| | | this.form.syProblemOpts = '' |
| | | } else { |
| | | this.form.syProblemOpts = e.join(',') |
| | | } |
| | | }, |
| | | confirm() { |
| | | this.$refs.form.validate((valid) => { |
| | | if (!valid) { |
| | | return |
| | | } |
| | | this.isWorking = true |
| | | acceptance(this.form) |
| | | .then(() => { |
| | | this.visible = false |
| | | this.$tip.apiSuccess('åçæå') |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | | }) |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .a { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | } |
| | | .b { |
| | | color: rgba(154,154,154,1); |
| | | font-size: 14px; |
| | | margin: 10px 0; |
| | | } |
| | | .c { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | } |
| | | </style> |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="50%" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <div class="box"> |
| | | <el-form :model="form" :rules="rules" ref="form"> |
| | | <el-form-item label="ææ" prop="supplementFileList"> |
| | | <div class="box_item_list_row_l"> |
| | | <div class="desc_data_list_item" v-for="(item, index) in form.supplementFileList" :key="index"> |
| | | <div class="desc_data_list_item_dele" @click="delFile(index, 1)">å é¤</div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 0"> |
| | | <img :src="item.fileurlFull" alt="img"/> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 1"> |
| | | <video controls :src="item.fileurlFull" /> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 2"> |
| | | <i class="el-icon-folder-opened"></i> |
| | | </div> |
| | | <div class="desc_data_list_item_info"> |
| | | <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)" /> |
| | | </div> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import upload from '@/components/common/upload' |
| | | import { saveSupplementFile } from '@/api/business/settleRisk' |
| | | export default { |
| | | name: 'additionMaterial_ba', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow, upload }, |
| | | data () { |
| | | return { |
| | | form: { |
| | | id: null, |
| | | supplementFileList: [] |
| | | }, |
| | | rules: { |
| | | supplementFileList: [ |
| | | { required: true, message: 'è³å°ä¸ä¼ ä¸ä¸ªææ', trigger: 'blur' } |
| | | ] |
| | | } |
| | | } |
| | | }, |
| | | methods: { |
| | | open (title, id) { |
| | | this.title = title |
| | | this.form.id = id |
| | | this.form.supplementFileList = [] |
| | | this.visible = true |
| | | }, |
| | | delFile (index) { |
| | | this.form.supplementFileList.splice(index, 1) |
| | | }, |
| | | claimsUploadFile(file) { |
| | | file.fileurl = file.imgaddr |
| | | file.name = file.originname |
| | | file.fileurlFull = file.url |
| | | this.form.supplementFileList.push(file) |
| | | }, |
| | | confirm() { |
| | | this.$refs.form.validate((valid) => { |
| | | if (!valid) return |
| | | this.isWorking = true |
| | | saveSupplementFile(this.form) |
| | | .then(() => { |
| | | this.visible = false |
| | | this.$tip.apiSuccess('æ·»å æå') |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | | }) |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped lang="scss"> |
| | | .box { |
| | | width: 100%; |
| | | .box_item_list_row_l { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | .desc_data_list_item { |
| | | width: 100px; |
| | | height: 100px; |
| | | padding: 10px; |
| | | box-sizing: border-box; |
| | | border: 1px solid #e2e2e2; |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | position: relative; |
| | | margin-bottom: 10px; |
| | | margin-left: 10px; |
| | | &:first-child { |
| | | margin-left: 0 !important; |
| | | } |
| | | .desc_data_list_item_dele { |
| | | position: absolute; |
| | | top: 5px; |
| | | right: 5px; |
| | | font-size: 14px; |
| | | cursor: pointer; |
| | | color: rgba(249, 86, 1, 0.996078431372549); |
| | | } |
| | | .desc_data_list_item_upload { |
| | | flex: 1; |
| | | height: 80px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | .desc_data_list_item_img { |
| | | flex-shrink: 0; |
| | | width: 70px; |
| | | height: 70px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | overflow: hidden; |
| | | margin-right: 10px; |
| | | .el-icon-folder-opened { |
| | | font-size: 34px; |
| | | color: #666666; |
| | | } |
| | | .el-icon-plus { |
| | | font-size: 26px; |
| | | color: #ffffff; |
| | | } |
| | | img { |
| | | width: 100%; |
| | | } |
| | | video { |
| | | width: 100%; |
| | | } |
| | | } |
| | | .desc_data_list_item_info { |
| | | width: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | word-break: break-all; |
| | | span { |
| | | width: 100%; |
| | | white-space: nowrap; |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | font-size: 14px; |
| | | color: black; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="100%" |
| | | :text="`${type === 1 ? '宿çç®' : 'å®ææ ¸èµ'}`" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <div class="box"> |
| | | <el-form :model="form" ref="ruleForm" label-width="150px" class="demo-ruleForm"> |
| | | <div class="box_item"> |
| | | <div class="box_item_desc">主è¦èµä»é¡¹</div> |
| | | <div class="box_item_list"> |
| | | <div class="box_item_list_row" style="width: 100%;" v-for="(item, index) in list1" :key="index"> |
| | | <el-form-item :label="item.name"> |
| | | <div style="display: flex; flex-direction: column;"> |
| | | <el-input v-model="item.fee" @input="changeFee" type="number" placeholder="请è¾å
¥éé¢"></el-input> |
| | | <el-input v-model="item.describe" placeholder="请è¾å
¥è´¹ç¨è¯´æ"></el-input> |
| | | </div> |
| | | </el-form-item> |
| | | </div> |
| | | </div> |
| | | <div class="box_item_desc">å
¶ä»èµä»é¡¹</div> |
| | | <div class="box_item_list"> |
| | | <div class="box_item_list_row" style="width: 50%;" v-for="(item, index) in list2" :key="index"> |
| | | <el-form-item :label="item.name"> |
| | | <div style="display: flex; flex-direction: column;"> |
| | | <el-input v-model="item.fee" @input="changeFee" type="number" placeholder="请è¾å
¥éé¢"></el-input> |
| | | <el-input v-model="item.describe" placeholder="请è¾å
¥è´¹ç¨è¯´æ"></el-input> |
| | | </div> |
| | | </el-form-item> |
| | | </div> |
| | | </div> |
| | | <div class="price"> |
| | | <span>èµä»éé¢å计</span> |
| | | <span>Â¥{{totalPrice}}</span> |
| | | </div> |
| | | </div> |
| | | </el-form> |
| | | </div> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import { compensation, getCompensation, nuclearCompensation } from '@/api/business/settleRisk' |
| | | export default { |
| | | name: 'acceptance', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow }, |
| | | data () { |
| | | return { |
| | | form: { |
| | | id: null |
| | | }, |
| | | type: '', |
| | | list1: [], |
| | | list2: [], |
| | | totalPrice: 0 |
| | | } |
| | | }, |
| | | methods: { |
| | | open (title, id, type) { |
| | | this.type = type |
| | | this.title = title |
| | | this.form.id = id |
| | | getCompensation({ type, id: this.form.id }) |
| | | .then(res => { |
| | | res.forEach(item => { |
| | | if (!item.fee) { |
| | | item.fee = 0 |
| | | } |
| | | }) |
| | | this.list1 = res.filter(item => item.type === 0) |
| | | this.list2 = res.filter(item => item.type === 1) |
| | | this.changeFee() |
| | | this.visible = true |
| | | }) |
| | | }, |
| | | changeFee() { |
| | | let arr = [...this.list1, ...this.list2] |
| | | let price = 0 |
| | | arr.forEach(item => { |
| | | if (item.fee) { |
| | | price += Number(item.fee) |
| | | } |
| | | }) |
| | | this.totalPrice = price |
| | | }, |
| | | confirm() { |
| | | let arr = [...this.list1, ...this.list2] |
| | | for (let i = 0; i < arr.length; i++) { |
| | | if (!arr[i].fee && arr[i].fee !== 0) { |
| | | return this.$message.warning(`请å
å®å${arr[i].name}éé¢`) |
| | | } |
| | | } |
| | | this.isWorking = true |
| | | let compensationJson = JSON.stringify(arr) |
| | | if (this.type === 1) { |
| | | compensation({ id: this.form.id, compensationJson }) |
| | | .then(() => { |
| | | this.visible = false |
| | | this.$tip.apiSuccess('æä½æå') |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | | }) |
| | | } else if (this.type === 2) { |
| | | nuclearCompensation({ id: this.form.id, compensationJson }) |
| | | .then(() => { |
| | | this.visible = false |
| | | this.$tip.apiSuccess('æä½æå') |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | | }) |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped lang="scss"> |
| | | .box { |
| | | width: 100%; |
| | | .box_item { |
| | | width: 100%; |
| | | margin-bottom: 30px; |
| | | .box_item_title { |
| | | width: 100%; |
| | | margin-bottom: 15px; |
| | | span { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 16px; |
| | | margin-right: 10px; |
| | | } |
| | | } |
| | | .box_item_desc { |
| | | width: 100%; |
| | | padding-left: 50px; |
| | | box-sizing: border-box; |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | margin-bottom: 15px; |
| | | } |
| | | .price { |
| | | width: 100%; |
| | | height: 62px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | border-radius: 4px; |
| | | background-color: rgba(239,239,239,1); |
| | | margin-top: 50px; |
| | | padding: 0 20px; |
| | | box-sizing: border-box; |
| | | span { |
| | | &:nth-child(1) { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 18px; |
| | | } |
| | | &:nth-child(2) { |
| | | color: rgba(255,149,2,1); |
| | | font-size: 22px; |
| | | } |
| | | } |
| | | } |
| | | .button { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: end; |
| | | margin-top: 15px; |
| | | .button_submit { |
| | | width: 108px; |
| | | height: 38px; |
| | | line-height: 38px; |
| | | text-align: center; |
| | | border-radius: 4px; |
| | | color: rgba(255,255,255,1); |
| | | font-size: 14px; |
| | | background-color: rgba(31,99,255,1); |
| | | } |
| | | } |
| | | .box_item_list { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | justify-content: space-between; |
| | | .box_item_list_rowx { |
| | | width: 33.3%; |
| | | height: 0; |
| | | } |
| | | .box_item_list_row { |
| | | width: 33.3%; |
| | | .box_item_list_row_l { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | .desc_data_list_item { |
| | | width: 100px; |
| | | height: 100px; |
| | | padding: 10px; |
| | | box-sizing: border-box; |
| | | border: 1px solid #e2e2e2; |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | position: relative; |
| | | margin-bottom: 10px; |
| | | margin-left: 10px; |
| | | &:first-child { |
| | | margin-left: 0 !important; |
| | | } |
| | | .desc_data_list_item_dele { |
| | | position: absolute; |
| | | top: 5px; |
| | | right: 5px; |
| | | font-size: 14px; |
| | | cursor: pointer; |
| | | color: rgba(249, 86, 1, 0.996078431372549); |
| | | } |
| | | .desc_data_list_item_upload { |
| | | flex: 1; |
| | | height: 80px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | .desc_data_list_item_img { |
| | | flex-shrink: 0; |
| | | width: 70px; |
| | | height: 70px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | overflow: hidden; |
| | | margin-right: 10px; |
| | | .el-icon-folder-opened { |
| | | font-size: 34px; |
| | | color: #666666; |
| | | } |
| | | .el-icon-plus { |
| | | font-size: 26px; |
| | | color: #ffffff; |
| | | } |
| | | img { |
| | | width: 100%; |
| | | } |
| | | video { |
| | | width: 100%; |
| | | } |
| | | } |
| | | .desc_data_list_item_info { |
| | | width: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | word-break: break-all; |
| | | span { |
| | | width: 100%; |
| | | white-space: nowrap; |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | font-size: 14px; |
| | | color: black; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .box_item_list_row_title { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 20px; |
| | | .x { |
| | | width: 1px; |
| | | height: 14px; |
| | | background-color: rgba(255,255,255,1); |
| | | border: 4px solid rgba(22,93,255,1); |
| | | margin-right: 10px; |
| | | } |
| | | span { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="50%" |
| | | :withFooter="false" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | > |
| | | <el-timeline reverse> |
| | | <el-timeline-item v-for="(item, index) in list" :key="index" :hide-timestamp="true"> |
| | | <div style="display: flex; flex-direction: column;"> |
| | | <span class="a">{{item.title}}</span> |
| | | <span class="b">{{item.creatorName}} {{item.companyName || 'å¹³å°çèµå'}} {{item.createDate }}</span> |
| | | <span class="c">说æï¼{{item.content}}</span> |
| | | </div> |
| | | </el-timeline-item> |
| | | </el-timeline> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | export default { |
| | | name: 'caseProgress', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow }, |
| | | data () { |
| | | return { |
| | | list: [] |
| | | } |
| | | }, |
| | | methods: { |
| | | open(title, target) { |
| | | this.title = title |
| | | this.list = target |
| | | this.visible = true |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .a { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | } |
| | | .b { |
| | | color: rgba(154,154,154,1); |
| | | font-size: 14px; |
| | | margin: 10px 0; |
| | | } |
| | | .c { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | } |
| | | </style> |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="500px" |
| | | :withFooter="false" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <div class="box"> |
| | | <div class="box_row" v-for="(item, index) in list" :key="index"> |
| | | <div class="box_row_icon"> |
| | | <i class="el-icon-warning"></i> |
| | | </div> |
| | | <div class="box_row_content"> |
| | | <div class="box_row_content_title">{{item.title}}</div> |
| | | <div class="box_row_content_desc">{{item.info}}</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | |
| | | export default { |
| | | name: 'riskCaseReminder', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow }, |
| | | data () { |
| | | return { |
| | | list: [] |
| | | } |
| | | }, |
| | | methods: { |
| | | async open(title, target) { |
| | | this.title = title |
| | | this.list = target |
| | | this.visible = true |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .box { |
| | | width: 100%; |
| | | .box_row { |
| | | width: 100%; |
| | | padding: 15px; |
| | | box-sizing: border-box; |
| | | background-color: #ececec; |
| | | border-radius: 10px; |
| | | display: flex; |
| | | align-items: center; |
| | | background-color: rgba(239,239,239,1); |
| | | margin-bottom: 15px; |
| | | &:last-child { |
| | | margin: 0 !important; |
| | | } |
| | | .box_row_icon { |
| | | flex-shrink: 0; |
| | | width: 34px; |
| | | height: 34px; |
| | | border-radius: 50%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | margin-right: 17px; |
| | | background-color: rgba(251,115,115,0.29); |
| | | .el-icon-warning { |
| | | color: #FB7373; |
| | | font-size: 19px; |
| | | } |
| | | } |
| | | .box_row_content { |
| | | flex: 1; |
| | | .box_row_content_title { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 16px; |
| | | } |
| | | .box_row_content_desc { |
| | | color: rgba(154,154,154,1); |
| | | font-size: 12px; |
| | | margin-top: 9px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |
| | |
| | | <div v-if="withFooter" class="window__footer"> |
| | | <slot name="footer"> |
| | | <el-button @click="confirm" :loading="confirmWorking" type="primary">{{text}}</el-button> |
| | | <el-button @click="close">è¿å</el-button> |
| | | <el-button @click="close">{{goText}}</el-button> |
| | | </slot> |
| | | </div> |
| | | </el-drawer> |
| | |
| | | type: String, |
| | | default: 'ç¡®å®' |
| | | }, |
| | | goText: { |
| | | type: String, |
| | | default: 'è¿å' |
| | | }, |
| | | // 确认æé®loadingç¶æ |
| | | confirmWorking: { |
| | | type: Boolean, |
| | |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="100%" |
| | | :withFooter="false" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <el-form :model="form" ref="form" :rules="rules"> |
| | | <el-form-item label="åºé©äººå§å" prop="memberId" v-if="!form.id"> |
| | | <div class="box"> |
| | | <div class="box_status"> |
| | | <div class="box_status_row" v-for="(item, index) in statusList" :key="index"> |
| | | <div :class="index <= i ? 'box_status_row_icon statusColor2 statusColor3' : 'box_status_row_icon'"> |
| | | <span>{{index + 1}}</span> |
| | | </div> |
| | | <div class="box_status_row_info"> |
| | | <div class="title">{{item.name}}</div> |
| | | <div class="info">{{item.info}}</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <el-form :model="form" :rules="rules" ref="form" label-width="130px" class="demo-ruleForm"> |
| | | <template v-if="i === 0"> |
| | | <div class="box_desc"> |
| | | <div class="box_desc_head"> |
| | | <div class="box_desc_title"> |
| | | <span class="box_desc_title_val">åºé©äººä¿¡æ¯</span> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc_list"> |
| | | <div class="box_desc_list_row" style="margin: 0;"> |
| | | <el-form-item label="åºé©äºº" prop="memberId"> |
| | | <el-select v-model="form.memberId" filterable @change="getSolutions" placeholder="è¯·éæ©"> |
| | | <el-option |
| | | v-for="item in user" |
| | |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="ä¿é©æ¹æ¡" prop="solutionId" v-if="!form.id"> |
| | | <div style="display: flex; align-items: center;"> |
| | | <span>{{form.solutionName}}</span> |
| | | <el-button type="primary" @click="openS" style="margin-left: 10px;">éæ©æ¹æ¡</el-button> |
| | | </div> |
| | | <div class="box_desc_list_row" style="margin: 0;"> |
| | | <el-form-item label="è¯ä»¶å·ç " prop="idcardNo"> |
| | | <el-input v-model="form.idcardNo" disabled></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="æ´¾é£åä½" prop="duId" v-if="form.duName && !form.id"> |
| | | <span>{{form.duName}}</span> |
| | | </el-form-item> |
| | | <el-form-item label="æå±å·¥ç§" prop="worktypeId" v-if="form.worktypeName && !form.id"> |
| | | <span>{{form.worktypeName}}</span> |
| | | </el-form-item> |
| | | <el-form-item label="äºæ
åçæ¶é´" prop="happenTime" v-if="!form.id"> |
| | | </div> |
| | | <div class="box_desc_list_ZW"></div> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc"> |
| | | <div class="box_desc_head" v-if="solutionList.length > 0"> |
| | | <div class="box_desc_title"> |
| | | <span class="box_desc_title_val">ä¿é©æ¹æ¡</span> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc_f" v-if="solutionList.length > 0"> |
| | | <div class="box_desc_fa" v-for="(item, index) in solutionList" :key="index"> |
| | | <div class="box_desc_fa_title"> |
| | | <span @click="jumpSolutionDetail(item.applyId, item.solutionType)">{{item.solutionName}}</span> |
| | | <el-checkbox v-model="item.active" @change="changeSolution($event, index)"></el-checkbox> |
| | | </div> |
| | | <div class="box_desc_fa_row">ä¿åå·ï¼{{item.applyCode}}</div> |
| | | <div class="box_desc_fa_row">ä¿éæéï¼{{item.parentStartTime}}ï½{{item.parentEndTime}}</div> |
| | | <div class="box_desc_fa_row">æä¿åä½ï¼{{item.companyName}}</div> |
| | | <div class="box_desc_fa_row">æ´¾é£åä½ï¼{{item.duName}}</div> |
| | | <div class="box_desc_fa_row">æå±å·¥ç§ï¼{{item.workTypeName}}</div> |
| | | </div> |
| | | <div style="width: 32%; height: 0;"></div> |
| | | </div> |
| | | <div class="box_desc_head"> |
| | | <div class="box_desc_title"> |
| | | <span class="box_desc_title_val">åºé©ä¿¡æ¯</span> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc_list"> |
| | | <div class="box_desc_list_row"> |
| | | <el-form-item label="åºé©æ¶é´" prop="happenTime"> |
| | | <el-date-picker |
| | | v-model="form.happenTime" |
| | | type="datetime" |
| | | format="yyyy-MM-dd HH:mm:ss" |
| | | :disabled="!form.insuranceApplyId" |
| | | :picker-options="pickerOptions" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="éæ©æ¥ææ¶é´"> |
| | | placeholder="éæ©æ¥æ"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="å°±è¯å»çæºæ" prop="hospital" v-if="!form.id"> |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | <el-form-item label="å°±è¯å»çæºæ" prop="hospital"> |
| | | <el-input v-model="form.hospital" placeholder="请è¾å
¥"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | <el-form-item label="åºé©å°åº" prop="areaId"> |
| | | <div style="width: 100%; display: flex; align-items: center;"> |
| | | <el-cascader |
| | | v-model="form.areaId" |
| | | v-model="form.area" |
| | | :options="area" |
| | | :props="{ value: 'id', label: 'name', children: 'childAreasList' }" |
| | | @change="handleChange" /> |
| | | ref="cascader" |
| | | @change="changeArea" |
| | | :props="{ label: 'name', children: 'childAreasList', value: 'id' }"/> |
| | | <el-input v-model="form.address" placeholder="请è¾å
¥è¯¦ç»å°å"></el-input> |
| | | </div> |
| | | </el-form-item> |
| | | </div> |
| | | <div class="box_desc_list_row" style="width: 100%;"> |
| | | <el-form-item label="åºé©ç»è¿" prop="content"> |
| | | <el-input v-model="form.content" placeholder="请è¾å
¥" type="textarea" :autosize="{ minRows: 2, maxRows: 6}"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <div class="box_desc_list_row" style="width: 100%;"> |
| | | <el-form-item label="äºæ
ç±»å" prop="type"> |
| | | <el-radio-group v-model="form.type"> |
| | | <el-radio :label="0">工使é´å伤</el-radio> |
| | |
| | | <el-radio :label="3">æå¤å伤</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="æ¯å¦ä½é¢" prop="inHospital"> |
| | | </div> |
| | | <div class="box_desc_list_row" style="width: 100%;"> |
| | | <el-form-item label="å°±è¯ç±»å" prop="inHospital"> |
| | | <el-radio-group v-model="form.inHospital"> |
| | | <el-radio :label="0">æ¯</el-radio> |
| | | <el-radio :label="1">å¦</el-radio> |
| | | <el-radio :label="0">ä½é¢</el-radio> |
| | | <el-radio :label="1">é¨è¯</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="æ¯å¦æå»çä¿é©" prop="medicalInsurance"> |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | <el-form-item label="æ¯å¦ä¼¤æ®" prop="hurtType"> |
| | | <el-radio-group v-model="form.hurtType"> |
| | | <el-radio :label="0">æ¯</el-radio> |
| | | <el-radio :label="1">å¦</el-radio> |
| | | <el-radio :label="2">å¾
ç¡®å®</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | </div> |
| | | <div class="box_desc_list_row" style="width: 100%;"> |
| | | <el-form-item label="æ¯å¦æå»ä¿" prop="medicalInsurance"> |
| | | <el-radio-group v-model="form.medicalInsurance"> |
| | | <el-radio :label="0">æ¯</el-radio> |
| | | <el-radio :label="1">å¦</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="äºæ
æè¿°" prop="content" v-if="!form.id"> |
| | | <el-input type="textarea" :rows="5" placeholder="请è¾å
¥å
容" v-model="form.content"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="ä¸ä¼ äºæ
è§é¢/ç
§ç" prop="list" v-if="!form.id"> |
| | | <upload :list="form.list" :accept="'.mp4,.jpg,.png,.jpeg'" folder="settle" @dele="deleFile" @success="getData" /> |
| | | </el-form-item> |
| | | </div> |
| | | <div class="box_desc_list_img"> |
| | | <span>äºæ
è§é¢/ç
§çï¼</span> |
| | | <div class="box_item_list_row_l"> |
| | | <div class="desc_data_list_item" v-for="(item, index) in form.reportFileList" :key="index"> |
| | | <div class="desc_data_list_item_dele" @click="delFile(index, 6)">å é¤</div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 0"> |
| | | <img :src="item.fileurlFull" alt="img"/> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 1"> |
| | | <video controls :src="item.fileurlFull" /> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 2"> |
| | | <i class="el-icon-folder-opened"></i> |
| | | </div> |
| | | <div class="desc_data_list_item_info"> |
| | | <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, 6)" /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc"> |
| | | <div class="box_desc_head"> |
| | | <div class="box_desc_title"> |
| | | <span class="box_desc_title_val">æ¥æ¡äººä¿¡æ¯</span> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc_list"> |
| | | <div class="box_desc_list_row"> |
| | | <el-form-item label="æ¥æ¡äººå§å" prop="informantName"> |
| | | <el-input v-model="form.informantName" placeholder="请è¾å
¥"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="æ¥æ¡äººèç³»æ¹å¼" prop="informantPhone"> |
| | | <el-input maxlength="11" v-model="form.informantPhone" placeholder="请è¾å
¥"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | <!-- å¼¹çªæé --> |
| | | <el-dialog |
| | | title="温馨æç¤º" |
| | | :modal="false" |
| | | :close-on-click-modal="false" |
| | | :show-close="false" |
| | | :visible.sync="centerDialogVisible" |
| | | width="50%" |
| | | center> |
| | | <div class="fuwenben" style="font-size: 12px"> |
| | | å°æ¬ç客æ·ï¼ |
| | | |
| | | é¦å
æè°¢æ¨å¯¹äºæä»¬çä¿¡ä»»ä¸æ¯æï¼æä»¬å¾è£å¹¸æä¸ºè´µå¸çä¿é©å¨è¯¢æå¡åï¼ |
| | | |
| | | é´äºè¿æåºç°ä¸ªå«å®¢æ·åå¨ï¼å½å¤©æä¿å½å¤©åºé©ï¼å³å
åºå·¥ä¼¤ææå¤ãåè¿è¡æä¿æä½ï¼ç个å«è¯éªä¿é©éçæ¡ä¾ï¼é误使ç¨â峿¶çæâæ¡æ¬¾ãé对æ¤ç§æ
嵿¬å
¬å¸ééåç¥åä½å®¢æ·: |
| | | |
| | | 1.è¯éªä¿é©éçè¡ä¸ºå±äºè¿æ³è¡ä¸º,䏿¦åç°,æ¬å
¬å¸å°æäº¤å
¬å®æºå
³å¤çå¹¶ä¿ç追究æ³å¾è´£ä»»ï¼ |
| | | |
| | | 2.为äºé¡ºå©çèµç»æ¡,æç
§ä¿é©å
¬å¸ççèµå®¡æ¥è¦æ±,å½å¤©æä¿å½å¤©åºé©éè¦æä¾åºé©çæ§è§é¢æè
è½ä½è¯å
·ä½æ¶é´ç¹çä»»ä½è¯æ®ï¼ |
| | | |
| | | 3.è¯·æ¨æ·±å»çè§£ä¿é©ä¸âå¦å®åç¥âçæä¿äººä¹å¡ï¼æä»¬è´åäºä¸ºæ¨è½¬ç§»ç¨å·¥é£é©åæ³å¾é£é©ãä½è¿ä¸åçåææ¯ï¼åè§åæ³åçã |
| | | |
| | | éä»¶ä¸ï¼ |
| | | |
| | | ãä¸å人æ°å
±åå½åæ³ã第ä¸ç¾ä¹åå
«æ¡ ãä¿é©è¯éªç½ªãæä¸åæ
å½¢ä¹ä¸ï¼è¿è¡ä¿é©è¯éªæ´»å¨ï¼æ°é¢è¾å¤§çï¼å¤äºå¹´ä»¥ä¸ææå¾åæè
æå½¹ï¼ å¹¶å¤ä¸ä¸å
以ä¸åä¸å
以ä¸ç½éï¼æ°é¢å·¨å¤§æè
æå
¶ä»ä¸¥éæ
èçï¼å¤äºå¹´ä»¥ä¸å年以䏿æå¾åï¼å¹¶å¤äºä¸å
以ä¸äºåä¸å
以ä¸ç½éï¼æ°é¢ç¹å«å·¨å¤§æè
æå
¶ä»ç¹å«ä¸¥éæ
èçï¼å¤å年以䏿æå¾ åï¼å¹¶å¤äºä¸å
以ä¸äºåä¸å
以ä¸ç½éæè
没æ¶è´¢äº§ï¼ |
| | | |
| | | ï¼ä¸ï¼æä¿äººæ
æèæä¿é©æ çï¼éªåä¿é©éçï¼ |
| | | |
| | | ï¼äºï¼æä¿äººã被ä¿é©äººæè
åç人对åççä¿é©äºæ
ç¼é èåçåå æè
夸大æå¤±çç¨åº¦ï¼éªåä¿é©éçï¼ |
| | | |
| | | ï¼ä¸ï¼æä¿äººã被ä¿é©äººæè
åç人ç¼é æªæ¾åççä¿é©äºæ
ï¼éªåä¿é©éçï¼ |
| | | |
| | | ï¼åï¼æä¿äººã被ä¿é©äººæ
æé æè´¢äº§æå¤±çä¿é©äºæ
ï¼éªåä¿é©éçï¼ |
| | | |
| | | ï¼äºï¼æä¿äººãåç人æ
æé æè¢«ä¿é©äººæ»äº¡ãä¼¤æ®æè
ç¾ç
ï¼éªåä¿é©éçã |
| | | |
| | | æå款第å项ã第äºé¡¹æåè¡ä¸ºï¼åæ¶ææå
¶ä»ç¯ç½ªçï¼ä¾ç
§æ°ç½ªå¹¶ç½çè§å®å¤ç½ã åä½ç¯ç¬¬ä¸æ¬¾ç½ªçï¼å¯¹åä½å¤å¤ç½éï¼å¹¶å¯¹å
¶ç´æ¥è´è´£ç主管人åå å
¶ä»ç´æ¥è´£ä»»äººåï¼å¤äºå¹´ä»¥ä¸ææå¾åæè
æå½¹ï¼æ°é¢å·¨å¤§æè
æ å
¶ä»ä¸¥éæ
èçï¼å¤äºå¹´ä»¥ä¸å年以䏿æå¾åï¼æ°é¢ç¹å«å·¨å¤§æè
æå
¶ä»ç¹å«ä¸¥éæ
èçï¼å¤å年以䏿æå¾åã ä¿é©äºæ
çé´å®äººãè¯æäººã财产è¯ä¼°äººæ
ææä¾èåçè¯ææä»¶ï¼ä¸ºä»äººè¯éªæä¾æ¡ä»¶çï¼ä»¥ä¿é©è¯éªçå
±ç¯è®ºå¤ã |
| | | |
| | | éä»¶äºï¼ |
| | | |
| | | ãä¸å人æ°å
±åå½ä¿é©æ³ã第äºå䏿¡ æªåçä¿é©äºæ
ï¼è¢«ä¿é©äººæè
åç人è°ç§°åçäºä¿é©äºæ
ï¼åä¿é©äººæåºèµå¿æè
ç»ä»ä¿é©é请æ±çï¼ä¿é©äººææè§£é¤ååï¼å¹¶ä¸éè¿ä¿é©è´¹ã |
| | | |
| | | æä¿äººã被ä¿é©äººæ
æå¶é ä¿é©äºæ
çï¼ä¿é©äººææè§£é¤ååï¼ä¸æ¿æ
èµå¿æè
ç»ä»ä¿é©éç责任ï¼é¤æ¬æ³ç¬¬åå䏿¡è§å®å¤ï¼ä¸éè¿ä¿é©è´¹ã |
| | | |
| | | ä¿é©äºæ
åçåï¼æä¿äººã被ä¿é©äººæè
åç人以伪é ãåé çæå
³è¯æãèµææè
å
¶ä»è¯æ®ï¼ç¼é èåçäºæ
åå æè
夸大æå¤±ç¨åº¦çï¼ä¿é©äººå¯¹å
¶èæ¥çé¨å䏿¿æ
èµå¿æè
ç»ä»ä¿é©éç责任ã |
| | | |
| | | æä¿äººã被ä¿é©äººæè
åç人æå䏿¬¾è§å®è¡ä¸ºä¹ä¸ï¼è´ä½¿ä¿é© 人æ¯ä»ä¿é©éæè
æ¯åºè´¹ç¨çï¼åºå½æ¤éæè
èµå¿ã |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="centerDialogVisible = false">æå·²ç¥æ</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <!-- éæ©ä¿é©æ¹æ¡ --> |
| | | <selectSolutions ref="selectSolutions" @success="getVal" /> |
| | | <div class="box_desc_list_row"> |
| | | <el-form-item label="æ¥æ¡äººèç³»æ¹å¼" prop="informantPhone"> |
| | | <el-input v-model="form.informantPhone" placeholder="请è¾å
¥"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <div class="box_desc_list_ZW"></div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <template v-if="i === 1"> |
| | | <div class="box_info"> |
| | | <i class="el-icon-info"></i> |
| | | <div class="box_info_title"> |
| | | <span>éè¦æç¤º</span> |
| | | <span>⢠ä¸åä¿é©äº§åçèµææææä¸å</span> |
| | | <span>⢠ä¸ä¼ ææå注æä½¿ç¨çç« æä»¶æ¨¡ç忥ççèµææä¸è§è¡¨</span> |
| | | </div> |
| | | </div> |
| | | <div class="box_item"> |
| | | <div class="box_item_title"> |
| | | <span>çèµææ</span> |
| | | </div> |
| | | <div class="box_item_list"> |
| | | <div class="box_item_list_row" style="width: 100%; margin-bottom: 30px;"> |
| | | <div class="box_item_list_row_title"> |
| | | <div class="x"></div> |
| | | <span>åå·¥å
³ç³»è¯æææ</span> |
| | | </div> |
| | | <div class="box_item_list_row_info"> |
| | | <div class="label">æä»¶ä¸ä¼ 说æï¼</div> |
| | | <div class="content">éä¸ä¼ çæä»¶ï¼å³å¨ååå¤å°ä»¶ãå·¥èµæµæ°´ãèå¤è®°å½ãèº«ä»½è¯æ£åé¢ãï¼</div> |
| | | </div> |
| | | <div class="box_item_list_row_l"> |
| | | <div class="desc_data_list_item" v-for="(item, index) in form.relationFileList" :key="index"> |
| | | <div class="desc_data_list_item_dele" @click="delFile(index, 1)">å é¤</div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 0"> |
| | | <img :src="item.fileurlFull" alt="img"/> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 1"> |
| | | <video controls :src="item.fileurlFull" /> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 2"> |
| | | <i class="el-icon-folder-opened"></i> |
| | | </div> |
| | | <div class="desc_data_list_item_info"> |
| | | <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)" /> |
| | | </div> |
| | | </div> |
| | | <div class="box_item_list_row" style="width: 100%; margin-bottom: 30px;"> |
| | | <div class="box_item_list_row_title"> |
| | | <div class="x"></div> |
| | | <span>é¨è¯</span> |
| | | </div> |
| | | <div class="box_item_list_row_info"> |
| | | <div class="label">æä»¶ä¸ä¼ 说æï¼</div> |
| | | <div class="content">éä¸ä¼ çæä»¶ï¼å³å¨ååå¤å°ä»¶ãå·¥èµæµæ°´ãèå¤è®°å½ãèº«ä»½è¯æ£åé¢ãï¼</div> |
| | | </div> |
| | | <div class="box_item_list_row_l"> |
| | | <div class="desc_data_list_item" v-for="(item, index) in form.outpatientFileList" :key="index"> |
| | | <div class="desc_data_list_item_dele" @click="delFile(index, 2)">å é¤</div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 0"> |
| | | <img :src="item.fileurlFull" alt="img"/> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 1"> |
| | | <video controls :src="item.fileurlFull" /> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 2"> |
| | | <i class="el-icon-folder-opened"></i> |
| | | </div> |
| | | <div class="desc_data_list_item_info"> |
| | | <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)" /> |
| | | </div> |
| | | </div> |
| | | <div class="box_item_list_row" style="width: 100%; margin-bottom: 30px;"> |
| | | <div class="box_item_list_row_title"> |
| | | <div class="x"></div> |
| | | <span>ä½é¢</span> |
| | | </div> |
| | | <div class="box_item_list_row_info"> |
| | | <div class="label">æä»¶ä¸ä¼ 说æï¼</div> |
| | | <div class="content">éä¸ä¼ çæä»¶ï¼å³å¨ååå¤å°ä»¶ãå·¥èµæµæ°´ãèå¤è®°å½ãèº«ä»½è¯æ£åé¢ãï¼</div> |
| | | </div> |
| | | <div class="box_item_list_row_l"> |
| | | <div class="desc_data_list_item" v-for="(item, index) in form.hospitalFileList" :key="index"> |
| | | <div class="desc_data_list_item_dele" @click="delFile(index, 3)">å é¤</div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 0"> |
| | | <img :src="item.fileurlFull" alt="img"/> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 1"> |
| | | <video controls :src="item.fileurlFull" /> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 2"> |
| | | <i class="el-icon-folder-opened"></i> |
| | | </div> |
| | | <div class="desc_data_list_item_info"> |
| | | <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)" /> |
| | | </div> |
| | | </div> |
| | | <div class="box_item_list_row" style="width: 100%; margin-bottom: 30px;"> |
| | | <div class="box_item_list_row_title"> |
| | | <div class="x"></div> |
| | | <span>伤æ®</span> |
| | | </div> |
| | | <div class="box_item_list_row_info"> |
| | | <div class="label">æä»¶ä¸ä¼ 说æï¼</div> |
| | | <div class="content">éä¸ä¼ çæä»¶ï¼å³å¨ååå¤å°ä»¶ãå·¥èµæµæ°´ãèå¤è®°å½ãèº«ä»½è¯æ£åé¢ãï¼</div> |
| | | </div> |
| | | <div class="box_item_list_row_l"> |
| | | <div class="desc_data_list_item" v-for="(item, index) in form.disabilityFileList" :key="index"> |
| | | <div class="desc_data_list_item_dele" @click="delFile(index, 4)">å é¤</div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 0"> |
| | | <img :src="item.fileurlFull" alt="img"/> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 1"> |
| | | <video controls :src="item.fileurlFull" /> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 2"> |
| | | <i class="el-icon-folder-opened"></i> |
| | | </div> |
| | | <div class="desc_data_list_item_info"> |
| | | <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)" /> |
| | | </div> |
| | | </div> |
| | | <div class="box_item_list_row" style="width: 100%; margin-bottom: 30px;"> |
| | | <div class="box_item_list_row_title"> |
| | | <div class="x"></div> |
| | | <span>å
¶ä»</span> |
| | | </div> |
| | | <div class="box_item_list_row_info"> |
| | | <div class="label">æä»¶ä¸ä¼ 说æï¼</div> |
| | | <div class="content">éä¸ä¼ çæä»¶ï¼å³å¨ååå¤å°ä»¶ãå·¥èµæµæ°´ãèå¤è®°å½ãèº«ä»½è¯æ£åé¢ãï¼</div> |
| | | </div> |
| | | <div class="box_item_list_row_l"> |
| | | <div class="desc_data_list_item" v-for="(item, index) in form.otherFileList" :key="index"> |
| | | <div class="desc_data_list_item_dele" @click="delFile(index, 5)">å é¤</div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 0"> |
| | | <img :src="item.fileurlFull" alt="img"/> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 1"> |
| | | <video controls :src="item.fileurlFull" /> |
| | | </div> |
| | | <div class="desc_data_list_item_img" v-if="item.type === 2"> |
| | | <i class="el-icon-folder-opened"></i> |
| | | </div> |
| | | <div class="desc_data_list_item_info"> |
| | | <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)" /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc"> |
| | | <div class="box_desc_head"> |
| | | <div class="box_desc_title"> |
| | | <span class="box_desc_title_val">æ¶æ¬¾ä¿¡æ¯</span> |
| | | <div class="box_desc_title_tips1"> |
| | | <i class="el-icon-info"></i> |
| | | <span class="box_desc_title_tips_text">æ³¨ææ¶æ¬¾é¶è¡è¾å
¥å¼æ·æ¯è¡åç§°</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="box_desc_list"> |
| | | <div class="box_desc_list_row"> |
| | | <el-form-item label="æ¶æ¬¾é¶è¡" prop="receiveBank"> |
| | | <el-input v-model="form.receiveBank" placeholder="请è¾å
¥æ¶æ¬¾é¶è¡æ¯è¡åç§°"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | <el-form-item label="æ¶æ¬¾äºº" prop="receiveUserName"> |
| | | <el-input v-model="form.receiveUserName" placeholder="请è¾å
¥å¼æ·å§å"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | <div class="box_desc_list_row"> |
| | | <el-form-item label="æ¶æ¬¾è´¦å·" prop="receiveAccount"> |
| | | <el-input v-model="form.receiveAccount" placeholder="请è¾å
¥é¶è¡è´¦å·"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <template v-if="i === 2"> |
| | | <div class="box_success"> |
| | | <div class="box_success_icon"> |
| | | <i class="el-icon-check"></i> |
| | | </div> |
| | | <div class="box_success_title">æäº¤æå</div> |
| | | <div class="box_success_info">请çå¾
ç«æ¡</div> |
| | | <div class="box_success_btns"> |
| | | <el-button @click="continueReporting">ç»§ç»æ¥æ¡</el-button> |
| | | <el-button type="primary" @click="$refs.operaSettleClaimsWindow.open('æ¥æ¡è¯¦æ
', id)">æ¥ç详æ
</el-button> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | </el-form> |
| | | <div class="box_footer"> |
| | | <div class="box_footer_btns" v-if="i === 0"> |
| | | <el-button type="primary" @click="confirm(0)">æå</el-button> |
| | | <el-button type="primary" @click="next">ä¸ä¸æ¥</el-button> |
| | | </div> |
| | | <div class="box_footer_btns" v-if="i === 1"> |
| | | <el-button @click="i--">ä¸ä¸æ¥</el-button> |
| | | <el-button type="primary" @click="confirm(0)">æå</el-button> |
| | | <el-button type="primary" @click="confirm(1)">æäº¤</el-button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <OperaInsuranceApplyDetails ref="OperaInsuranceApplyDetails" /> |
| | | <OperaWtbApplyShopWindow ref="OperaWtbApplyShopWindow" /> |
| | | <!-- 详æ
--> |
| | | <OperaSettleClaimsWindow ref="operaSettleClaimsWindow"/> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import upload from '@/components/common/upload' |
| | | import selectSolutions from '@/components/enterprise/selectSolutions' |
| | | import { saveSettleClaims } from '@/api/business/settleRisk' |
| | | import { findById } from '@/api/business/settleClaims' |
| | | import { findListByDTO } from '@/api/business/member' |
| | | import { findList } from '@/api/business/applyChange' |
| | | import { findTreeList } from '@/api/system/common' |
| | | import { create, updateById } from '@/api/business/settleClaims' |
| | | import { findTreeList } from '@/api/business/knowledge' |
| | | import OperaWtbApplyShopWindow from '@/components/business/OperaWtbApplyShopWindow' |
| | | import OperaInsuranceApplyDetails from '@/components/business/OperaInsuranceApplyWindow' |
| | | import OperaSettleClaimsWindow from '@/components/business/OperaSettleClaimsWindow' |
| | | import { mapState } from 'vuex' |
| | | export default { |
| | | name: 'onlineReporting', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow, upload, selectSolutions }, |
| | | components: { GlobalWindow, upload, OperaSettleClaimsWindow, OperaWtbApplyShopWindow, OperaInsuranceApplyDetails }, |
| | | computed: { |
| | | ...mapState(['userInfo']) |
| | | }, |
| | | data () { |
| | | return { |
| | | i: 0, |
| | | id: null, |
| | | statusList: [ |
| | | { |
| | | name: 'å¡«ååºé©ä¿¡æ¯', |
| | | info: 'å®ææ¥æ¡åºç¡ä¿¡æ¯å¡«å' |
| | | }, |
| | | { |
| | | name: 'ä¸ä¼ çèµææ', |
| | | info: 'è¡¥å
éè¦çèµçç¸å
³èµæ' |
| | | }, |
| | | { |
| | | name: 'å®ææ¥æ¡', |
| | | info: 'æäº¤æ¥æ¡ä¿¡æ¯' |
| | | } |
| | | ], |
| | | form: { |
| | | id: null, |
| | | insuranceApplyId: '', |
| | | memberId: '', |
| | | solutionId: '', |
| | | solutionName: '', |
| | | duId: '', |
| | | duName: '', |
| | | worktypeId: '', |
| | | worktypeName: '', |
| | | idcardNo: '', |
| | | insuranceApplyId: '', |
| | | happenTime: '', |
| | | hospital: '', |
| | | area: [], |
| | | areaId: '', |
| | | address: '', |
| | | areaInfo: '', |
| | | content: '', |
| | | type: 0, |
| | | inHospital: 0, |
| | | hurtType: 0, |
| | | medicalInsurance: 0, |
| | | content: '', |
| | | reportFileList: [], |
| | | informantName: '', |
| | | informantPhone: '', |
| | | list: [], |
| | | reportFileList: [] |
| | | |
| | | relationFileList: [], |
| | | outpatientFileList: [], |
| | | hospitalFileList: [], |
| | | disabilityFileList: [], |
| | | otherFileList: [], |
| | | |
| | | applyDetailId: '', |
| | | solutionId: '', |
| | | worktypeId: '', |
| | | duId: '', |
| | | receiveBank: '', |
| | | receiveUserName: '', |
| | | receiveAccount: '' |
| | | }, |
| | | rules: { |
| | | receiveAccount: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | receiveUserName: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | receiveBank: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | memberId: [ |
| | | { required: true, message: 'è¯·éæ©åºé©äºº' } |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | solutionId: [ |
| | | { required: true, message: 'è¯·éæ©ä¿é©æ¹æ¡' } |
| | | ], |
| | | duId: [ |
| | | { required: true, message: 'è¯·éæ©æ´¾é£åä½' } |
| | | ], |
| | | worktypeId: [ |
| | | { required: true, message: 'è¯·éæ©æå±å·¥ç§' } |
| | | idcardNo: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | happenTime: [ |
| | | { required: true, message: 'è¯·éæ©äºæ
åçæ¶é´' } |
| | | ], |
| | | type: [ |
| | | { required: true, message: 'è¯·éæ©äºæ
ç±»å' } |
| | | ], |
| | | inHospital: [ |
| | | { required: true, message: 'è¯·éæ©æ¯å¦ä½é¢' } |
| | | ], |
| | | medicalInsurance: [ |
| | | { required: true, message: 'è¯·éæ©æ¯å¦æå»çä¿é©' } |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | content: [ |
| | | { required: true, message: '请è¾å
¥äºæ
æè¿°' } |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | type: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | inHospital: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | hurtType: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | medicalInsurance: [ |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | informantName: [ |
| | | { required: true, message: '请è¾å
¥æ¥æ¡äººå§å' } |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | informantPhone: [ |
| | | { required: true, message: '请è¾å
¥æ¥æ¡äººèç³»æ¹å¼' } |
| | | ] |
| | | { required: true, message: 'ä¸è½ä¸ºç©º' } |
| | | ], |
| | | }, |
| | | centerDialogVisible: false, |
| | | pickerOptions: {}, |
| | | area: [], |
| | | user: [], |
| | | options: [], |
| | | area: [] |
| | | solutionList: [] |
| | | } |
| | | }, |
| | | created () { |
| | |
| | | }) |
| | | }, |
| | | methods: { |
| | | open (title, target) { |
| | | open (title, id) { |
| | | this.title = title |
| | | this.visible = true |
| | | this.form.list = [] |
| | | this.form.reportFileList = [] |
| | | this.form.area = [] |
| | | this.i = 0 |
| | | this.solutionList = [] |
| | | this.area = [] |
| | | this.user = [] |
| | | this.getUser() |
| | | this.getArea() |
| | | // æ°å»º |
| | | if (target == null) { |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | this.form[this.configData['field.id']] = null |
| | | setTimeout(() => { |
| | | this.centerDialogVisible = true |
| | | }, 300) |
| | | }) |
| | | return |
| | | } |
| | | // ç¼è¾ |
| | | this.getCityTree() |
| | | if (id) { |
| | | findById(id) |
| | | .then(res => { |
| | | this.visible = true |
| | | this.$nextTick(() => { |
| | | for (const key in this.form) { |
| | | this.form[key] = target[key] |
| | | this.form[key] = res[key] |
| | | } |
| | | }) |
| | | }, |
| | | handleTreeData(data) { |
| | | for (var i = 0; i < data.length; i++) { |
| | | if (data[i].childAreasList.length < 1) { |
| | | data[i].childAreasList = undefined; // çå端è¿çæ¯childåæ®µè¿æ¯childrenåæ®µï¼èªè¡æ¹å |
| | | if (this.form.areaId) { |
| | | this.form.area = this.form.areaId.split(',').map(item => Number(item)) |
| | | } |
| | | findList({ memberId: this.form.memberId }) |
| | | .then(res1 => { |
| | | res1.forEach(item => { |
| | | if (item.id === res.applyDetailId) { |
| | | item.active = true |
| | | this.pickerOptions = { |
| | | disabledDate(time) { |
| | | return time.getTime() < new Date(item.parentStartTime).getTime() || time.getTime() > new Date(item.parentEndTime).getTime() |
| | | } |
| | | }; |
| | | } else { |
| | | this.handleTreeData(data[i].childAreasList) // childrenè¥ä¸ä¸ºç©ºæ°ç»ï¼åç»§ç» éå½è°ç¨ æ¬æ¹æ³ |
| | | item.active = false |
| | | } |
| | | }) |
| | | this.solutionList = res1 |
| | | }) |
| | | }) |
| | | }) |
| | | } else { |
| | | this.visible = true |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | this.form.informantName = this.userInfo.realname |
| | | }) |
| | | } |
| | | return data; |
| | | }, |
| | | __confirmEdit () { |
| | | this.$refs.form.validate((valid) => { |
| | | if (!valid) { |
| | | return |
| | | continueReporting() { |
| | | this.i = 0 |
| | | this.id = null |
| | | this.pickerOptions = {} |
| | | this.solutionList = [] |
| | | this.form = { |
| | | id: null, |
| | | memberId: '', |
| | | idcardNo: '', |
| | | insuranceApplyId: '', |
| | | happenTime: '', |
| | | hospital: '', |
| | | area: [], |
| | | areaId: '', |
| | | address: '', |
| | | areaInfo: '', |
| | | content: '', |
| | | type: 0, |
| | | inHospital: 0, |
| | | hurtType: 0, |
| | | medicalInsurance: 0, |
| | | reportFileList: [], |
| | | informantName: '', |
| | | informantPhone: '', |
| | | |
| | | relationFileList: [], |
| | | outpatientFileList: [], |
| | | hospitalFileList: [], |
| | | disabilityFileList: [], |
| | | otherFileList: [], |
| | | |
| | | applyDetailId: '', |
| | | solutionId: '', |
| | | worktypeId: '', |
| | | duId: '', |
| | | receiveBank: '', |
| | | receiveUserName: '', |
| | | receiveAccount: '' |
| | | } |
| | | // è°ç¨æ°å»ºæ¥å£ |
| | | this.isWorking = true |
| | | let obj = JSON.parse(JSON.stringify(this.form)) |
| | | obj.areaId = obj.areaId.join(',') |
| | | updateById(obj) |
| | | .then(() => { |
| | | this.visible = false |
| | | this.$tip.apiSuccess('ä¿®æ¹æå') |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | | }) |
| | | }) |
| | | }, |
| | | __confirmCreate () { |
| | | this.$refs.form.validate((valid) => { |
| | | if (!valid) { |
| | | return |
| | | changeArea(e) { |
| | | if (!e && e.length === 0) { |
| | | this.form.areaId = '' |
| | | this.form.areaInfo = '' |
| | | } else { |
| | | this.form.areaId = e.join(',') |
| | | this.form.areaInfo = this.$refs.cascader.getCheckedNodes()[0].pathLabels.join(',') |
| | | } |
| | | // è°ç¨æ°å»ºæ¥å£ |
| | | this.isWorking = true |
| | | let obj = JSON.parse(JSON.stringify(this.form)) |
| | | if (obj.areaId) { |
| | | obj.areaId = obj.areaId.join(',') |
| | | }, |
| | | async getCityTree() { |
| | | this.area = await findTreeList({}) |
| | | this.setSecondLevelChildrenToNullPrecise(this.area); |
| | | }, |
| | | setSecondLevelChildrenToNullPrecise(data, level = 1) { |
| | | if (!data || !data.length) return; |
| | | |
| | | data.forEach(item => { |
| | | if (item.childAreasList && item.childAreasList.length) { |
| | | if (level === 2) { |
| | | // è¿æ¯ç¬¬ä¸çº§èç¹ï¼å¤çå
¶åèç¹ï¼ç¬¬äºçº§ï¼ |
| | | item.childAreasList.forEach(child => { |
| | | child.childAreasList = null; |
| | | }); |
| | | } else { |
| | | // ç»§ç»éå½å¤çæ´æ·±å±çº§ |
| | | this.setSecondLevelChildrenToNullPrecise(item.childAreasList, level + 1); |
| | | } |
| | | create(obj) |
| | | .then(() => { |
| | | this.visible = false |
| | | this.$tip.apiSuccess('æ°å»ºæå') |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | | }) |
| | | }) |
| | | }, |
| | | // æ¥è¯¢åºåæ°æ® |
| | | getArea() { |
| | | findTreeList({}) |
| | | .then(res => { |
| | | this.area = this.handleTreeData(res) |
| | | }) |
| | | }, |
| | | getVal(e) { |
| | | console.log(e) |
| | | this.form.insuranceApplyId = e.applyId |
| | | this.form.solutionId = e.solutionId |
| | | this.form.solutionName = e.solutionName |
| | | this.form.duId = e.duId |
| | | this.form.duName = e.duName |
| | | this.form.worktypeId = e.worktypeId |
| | | this.form.worktypeName = e.worktypeName |
| | | }, |
| | | openS() { |
| | | if (!this.form.memberId) { |
| | | this.$message.warning('请å
éæ©åºé©äºº') |
| | | return |
| | | } |
| | | this.$refs.selectSolutions.open('éæ©ä¿é©æ¹æ¡', this.form.memberId) |
| | | }); |
| | | }, |
| | | getUser() { |
| | | findListByDTO({}) |
| | |
| | | this.user = res |
| | | }) |
| | | }, |
| | | delFile(index, type) { |
| | | if (type === 1) { |
| | | this.form.relationFileList.splice(index, 1) |
| | | } else if (type === 2) { |
| | | this.form.outpatientFileList.splice(index, 1) |
| | | } else if (type === 3) { |
| | | this.form.hospitalFileList.splice(index, 1) |
| | | } else if (type === 4) { |
| | | this.form.disabilityFileList.splice(index, 1) |
| | | } else if (type === 5) { |
| | | this.form.otherFileList.splice(index, 1) |
| | | } else if (type === 6) { |
| | | this.form.reportFileList.splice(index, 1) |
| | | } |
| | | }, |
| | | claimsUploadFile(file, type) { |
| | | file.fileurl = file.imgaddr |
| | | file.name = file.originname |
| | | file.fileurlFull = file.url |
| | | if (type === 1) { |
| | | this.form.relationFileList.push(file) |
| | | } else if (type === 2) { |
| | | this.form.outpatientFileList.push(file) |
| | | } else if (type === 3) { |
| | | this.form.hospitalFileList.push(file) |
| | | } else if (type === 4) { |
| | | this.form.disabilityFileList.push(file) |
| | | } else if (type === 5) { |
| | | this.form.otherFileList.push(file) |
| | | } else if (type === 6) { |
| | | this.form.reportFileList.push(file) |
| | | } |
| | | }, |
| | | getSolutions(id) { |
| | | let row = this.user.filter(item => item.id === id) |
| | | this.form.idcardNo = row[0].idcardNo |
| | | findList({ memberId: id }) |
| | | .then(res => { |
| | | this.form.solutionId = '' |
| | | this.form.worktypeId = '' |
| | | this.form.duId = '' |
| | | this.options = res |
| | | this.form.insuranceApplyId = '' |
| | | res.forEach(item => { |
| | | item.active = false |
| | | }) |
| | | this.solutionList = res |
| | | }) |
| | | }, |
| | | getTreeName(list, id){ |
| | | let _this = this |
| | | for (let i = 0; i < list.length; i++) { |
| | | let a = list[i] |
| | | if (a.id === id) { |
| | | return a.name |
| | | changeSolution(e, i) { |
| | | this.solutionList.forEach((item, index) => { |
| | | item.active = i === index |
| | | }) |
| | | let obj = this.solutionList.filter(item => item.active)[0] |
| | | this.form.insuranceApplyId = obj.applyId |
| | | this.form.solutionId = obj.solutionId |
| | | this.form.worktypeId = obj.worktypeId |
| | | this.form.duId = obj.duId |
| | | this.form.applyDetailId = obj.id |
| | | this.form.happenTime = '' |
| | | this.pickerOptions = { |
| | | disabledDate(time) { |
| | | return time.getTime() < new Date(obj.parentStartTime).getTime() || time.getTime() > new Date(obj.parentEndTime).getTime() |
| | | } |
| | | }; |
| | | }, |
| | | // æ¥çä¿å详æ
|
| | | jumpSolutionDetail(id, solutionType) { |
| | | if (solutionType === 1) { |
| | | this.$refs.OperaWtbApplyShopWindow.open('å§ææä¿è¯¦æ
', { id: id }) |
| | | } else { |
| | | if (a.childAreasList && a.childAreasList.length > 0) { |
| | | let res = _this.getTreeName(a.childAreasList, id) |
| | | if (res) { |
| | | return res |
| | | } |
| | | } |
| | | } |
| | | this.$refs.OperaInsuranceApplyDetails.open('æä¿è¯¦æ
', { id: id }) |
| | | } |
| | | }, |
| | | handleChange(value) { |
| | | let info = '' |
| | | value.forEach(item => { |
| | | info += this.getTreeName(this.area, item) |
| | | confirm(saveType) { |
| | | this.isWorking = true |
| | | saveSettleClaims({...this.form, saveType}) |
| | | .then(res => { |
| | | console.log(res) |
| | | if (saveType === 0) { |
| | | this.visible = false |
| | | } else { |
| | | this.id = res |
| | | this.i = 2 |
| | | } |
| | | this.$emit('success') |
| | | }) |
| | | this.form.areaInfo = info |
| | | }, |
| | | getData(data) { |
| | | this.form.list.push(data) |
| | | this.form.reportFileList.push({ |
| | | fileurl: data.imgaddr, |
| | | name: data.originname, |
| | | type: data.type |
| | | .finally(() => { |
| | | this.isWorking = false |
| | | }) |
| | | }, |
| | | deleFile(index) { |
| | | this.form.reportFileList.splice(index, 1) |
| | | this.form.list.splice(index, 1) |
| | | next() { |
| | | this.$refs.form.validate((valid) => { |
| | | if (!valid) return |
| | | this.i++ |
| | | // this.isWorking = true |
| | | // createSys(obj) |
| | | // .then(() => { |
| | | // this.visible = false |
| | | // this.$emit('success') |
| | | // }) |
| | | // .catch(e => { |
| | | // this.$tip.apiFailed(e) |
| | | // }) |
| | | // .finally(() => { |
| | | // this.isWorking = false |
| | | // }) |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .fuwenben { |
| | | .box { |
| | | width: 100%; |
| | | height: 400px; |
| | | .box_info { |
| | | width: 100%; |
| | | padding: 15px 21px; |
| | | box-sizing: border-box; |
| | | display: flex; |
| | | align-items: start; |
| | | margin-bottom: 30px; |
| | | background-color: rgba(240,246,254,1); |
| | | i { |
| | | color: #165DFF; |
| | | font-size: 18px; |
| | | margin-right: 8px; |
| | | } |
| | | .box_info_title { |
| | | width: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | span { |
| | | &:nth-child(1) { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | } |
| | | &:nth-child(2) { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | margin-top: 12px; |
| | | } |
| | | &:nth-child(3) { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | margin-top: 12px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .box_item { |
| | | width: 100%; |
| | | margin-bottom: 30px; |
| | | .box_item_title { |
| | | width: 100%; |
| | | margin-bottom: 15px; |
| | | span { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 16px; |
| | | color: black; |
| | | overflow-y: scroll; |
| | | margin-right: 10px; |
| | | } |
| | | } |
| | | .box_item_desc { |
| | | width: 100%; |
| | | padding-left: 50px; |
| | | box-sizing: border-box; |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | margin-bottom: 15px; |
| | | } |
| | | .price { |
| | | width: 100%; |
| | | height: 62px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | border-radius: 4px; |
| | | background-color: rgba(239,239,239,1); |
| | | margin-top: 50px; |
| | | padding: 0 20px; |
| | | box-sizing: border-box; |
| | | span { |
| | | &:nth-child(1) { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 18px; |
| | | } |
| | | &:nth-child(2) { |
| | | color: rgba(255,149,2,1); |
| | | font-size: 22px; |
| | | } |
| | | } |
| | | } |
| | | .button { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: end; |
| | | margin-top: 15px; |
| | | .button_submit { |
| | | width: 108px; |
| | | height: 38px; |
| | | line-height: 38px; |
| | | text-align: center; |
| | | border-radius: 4px; |
| | | color: rgba(255,255,255,1); |
| | | font-size: 14px; |
| | | background-color: rgba(31,99,255,1); |
| | | } |
| | | } |
| | | .box_item_list { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | justify-content: space-between; |
| | | .box_item_list_rowx { |
| | | width: 33.3%; |
| | | height: 0; |
| | | } |
| | | .box_item_list_row { |
| | | width: 33.3%; |
| | | .box_item_list_row_l { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | .desc_data_list_item { |
| | | width: 100px; |
| | | height: 100px; |
| | | padding: 10px; |
| | | box-sizing: border-box; |
| | | border: 1px solid #e2e2e2; |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | position: relative; |
| | | margin-bottom: 10px; |
| | | margin-left: 10px; |
| | | &:first-child { |
| | | margin-left: 0 !important; |
| | | } |
| | | .desc_data_list_item_dele { |
| | | position: absolute; |
| | | top: 5px; |
| | | right: 5px; |
| | | font-size: 14px; |
| | | cursor: pointer; |
| | | color: rgba(249, 86, 1, 0.996078431372549); |
| | | } |
| | | .desc_data_list_item_upload { |
| | | flex: 1; |
| | | height: 80px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | .desc_data_list_item_img { |
| | | flex-shrink: 0; |
| | | width: 70px; |
| | | height: 70px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | overflow: hidden; |
| | | margin-right: 10px; |
| | | .el-icon-folder-opened { |
| | | font-size: 34px; |
| | | color: #666666; |
| | | } |
| | | .el-icon-plus { |
| | | font-size: 26px; |
| | | color: #ffffff; |
| | | } |
| | | img { |
| | | width: 100%; |
| | | } |
| | | video { |
| | | width: 100%; |
| | | } |
| | | } |
| | | .desc_data_list_item_info { |
| | | width: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | word-break: break-all; |
| | | overflow-wrap: break-word; |
| | | span { |
| | | width: 100%; |
| | | white-space: nowrap; |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | font-size: 14px; |
| | | color: black; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .box_item_list_row_info { |
| | | width: 100%; |
| | | height: 46px; |
| | | border-radius: 4px; |
| | | padding: 0 11px; |
| | | box-sizing: border-box; |
| | | margin-bottom: 20px; |
| | | background-color: rgba(239,239,239,1); |
| | | border: 1px solid rgba(187,187,187,1); |
| | | display: flex; |
| | | align-items: center; |
| | | .label { |
| | | flex-shrink: 0; |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | } |
| | | .content { |
| | | flex: 1; |
| | | } |
| | | } |
| | | .box_item_list_row_title { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 20px; |
| | | .x { |
| | | width: 1px; |
| | | height: 14px; |
| | | background-color: rgba(255,255,255,1); |
| | | border: 4px solid rgba(22,93,255,1); |
| | | margin-right: 10px; |
| | | } |
| | | span { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .box_footer { |
| | | width: 100%; |
| | | margin-top: 30px; |
| | | .box_footer_btns { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: end; |
| | | } |
| | | } |
| | | .box_status { |
| | | width: 100%; |
| | | padding: 30px 0; |
| | | box-sizing: border-box; |
| | | display: flex; |
| | | align-items: start; |
| | | justify-content: center; |
| | | margin-bottom: 30px; |
| | | .box_status_row { |
| | | width: 250px; |
| | | display: flex; |
| | | align-items: start; |
| | | .statusColor1 { |
| | | background-color: #E8F4FF !important; |
| | | } |
| | | .statusColor2 { |
| | | background-color: #165DFF !important; |
| | | } |
| | | .statusColor3 { |
| | | span { |
| | | color: #ffffff !important; |
| | | } |
| | | } |
| | | .box_status_row_icon { |
| | | width: 28px; |
| | | height: 28px; |
| | | background-color: rgba(242,243,245,1); |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | border-radius: 50%; |
| | | margin-right: 10px; |
| | | span { |
| | | color: rgba(78,89,105,1); |
| | | font-size: 14px; |
| | | } |
| | | i { |
| | | color: #165DFF; |
| | | } |
| | | } |
| | | .box_status_row_info { |
| | | display: flex; |
| | | flex-direction: column; |
| | | .title { |
| | | color: rgba(78,89,105,1); |
| | | font-size: 16px; |
| | | font-weight: bold; |
| | | } |
| | | .info { |
| | | color: rgba(154,154,154,1); |
| | | font-size: 14px; |
| | | margin-top: 5px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .box_success { |
| | | width: 100%; |
| | | padding: 100px 0; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | flex-direction: column; |
| | | .box_success_icon { |
| | | width: 48px; |
| | | height: 48px; |
| | | border-radius: 50%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | background-color: rgba(232,255,234,1); |
| | | .el-icon-check { |
| | | color: #2DC24F; |
| | | font-size: 24px; |
| | | font-weight: bold; |
| | | } |
| | | } |
| | | .box_success_title { |
| | | color: rgb(29,33,41); |
| | | font-size: 16px; |
| | | margin-top: 16px; |
| | | } |
| | | .box_success_info { |
| | | color: rgb(134,144,156); |
| | | font-size: 12px; |
| | | margin-top: 5px; |
| | | } |
| | | .box_success_btns { |
| | | display: flex; |
| | | align-items: center; |
| | | margin-top: 20px; |
| | | } |
| | | } |
| | | .box_desc { |
| | | width: 100%; |
| | | margin-bottom: 15px; |
| | | .box_desc_cailiao { |
| | | width: 100%; |
| | | margin-bottom: 18px; |
| | | .box_desc_cailiao_title { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 15px; |
| | | .box_desc_cailiao_title_x { |
| | | width: 5px; |
| | | height: 14px; |
| | | background-color: #165DFF; |
| | | } |
| | | span { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | margin-left: 5px; |
| | | } |
| | | } |
| | | .box_desc_cailiao_list { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | .box_desc_cailiao_list_img { |
| | | width: 100px; |
| | | height: 100px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | overflow: hidden; |
| | | margin-right: 15px; |
| | | background-color: #E5E5E5; |
| | | &:last-child { |
| | | margin: 0; |
| | | } |
| | | img { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .box_desc_head { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | margin-bottom: 26px; |
| | | .box_desc_title { |
| | | display: flex; |
| | | align-items: center; |
| | | .box_desc_title_val { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 18px; |
| | | margin-right: 20px; |
| | | } |
| | | .box_desc_title_tips1 { |
| | | display: flex; |
| | | align-items: center; |
| | | .el-icon-info { |
| | | color: #FF7B74; |
| | | margin-right: 8px; |
| | | } |
| | | .box_desc_title_tips_text { |
| | | color: rgba(255,123,116,1); |
| | | font-size: 14px; |
| | | } |
| | | } |
| | | .box_desc_title_zt { |
| | | height: 25px; |
| | | padding: 0 15px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | box-sizing: border-box; |
| | | border-radius: 15px; |
| | | background-color: rgba(239,239,239,1); |
| | | color: rgba(16,16,16,1); |
| | | font-size: 12px; |
| | | margin-right: 20px; |
| | | } |
| | | .box_desc_title_tips { |
| | | width: 84px; |
| | | height: 25px; |
| | | border-radius: 15px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | background-color: rgba(254,226,225,1); |
| | | span { |
| | | color: #FF4D4F; |
| | | font-size: 12px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .box_desc_list { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | flex-wrap: wrap; |
| | | .box_desc_list_ZW { |
| | | width: 33%; |
| | | height: 0; |
| | | } |
| | | .box_desc_list_row { |
| | | width: 33%; |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | margin-bottom: 24px; |
| | | } |
| | | .box_desc_list_img { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: start; |
| | | .box_item_list_row_l { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | .desc_data_list_item { |
| | | width: 100px; |
| | | height: 100px; |
| | | padding: 10px; |
| | | box-sizing: border-box; |
| | | border: 1px solid #e2e2e2; |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | position: relative; |
| | | margin-bottom: 10px; |
| | | margin-left: 10px; |
| | | &:first-child { |
| | | margin-left: 0 !important; |
| | | } |
| | | .desc_data_list_item_dele { |
| | | position: absolute; |
| | | top: 5px; |
| | | right: 5px; |
| | | font-size: 14px; |
| | | cursor: pointer; |
| | | color: rgba(249, 86, 1, 0.996078431372549); |
| | | } |
| | | .desc_data_list_item_upload { |
| | | flex: 1; |
| | | height: 80px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | .desc_data_list_item_img { |
| | | flex-shrink: 0; |
| | | width: 70px; |
| | | height: 70px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | overflow: hidden; |
| | | margin-right: 10px; |
| | | .el-icon-folder-opened { |
| | | font-size: 34px; |
| | | color: #666666; |
| | | } |
| | | .el-icon-plus { |
| | | font-size: 26px; |
| | | color: #ffffff; |
| | | } |
| | | img { |
| | | width: 100%; |
| | | } |
| | | video { |
| | | width: 100%; |
| | | } |
| | | } |
| | | .desc_data_list_item_info { |
| | | width: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: space-between; |
| | | word-break: break-all; |
| | | span { |
| | | width: 100%; |
| | | white-space: nowrap; |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | font-size: 14px; |
| | | color: black; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | span { |
| | | flex-shrink: 0; |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | } |
| | | } |
| | | } |
| | | .box_desc_f { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: start; |
| | | flex-wrap: wrap; |
| | | margin-bottom: 30px; |
| | | justify-content: space-between; |
| | | .box_desc_fa { |
| | | width: 32%; |
| | | padding: 22px 25px; |
| | | box-sizing: border-box; |
| | | border-radius: 4px; |
| | | margin-bottom: 30px; |
| | | background-color: #ffffff; |
| | | border: 1px solid #ececec; |
| | | .box_desc_fa_title { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | margin-bottom: 10px; |
| | | span { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 18px; |
| | | font-weight: bold; |
| | | text-decoration: underline; |
| | | cursor: pointer; |
| | | } |
| | | } |
| | | .box_desc_fa_row { |
| | | color: rgba(16,16,16,1); |
| | | font-size: 14px; |
| | | margin-bottom: 10px; |
| | | &:last-child { |
| | | margin: 0; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="100%" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <el-form :model="form" ref="form" :rules="rules"> |
| | | <el-form-item label="åºé©äººå§å" prop="memberId" v-if="!form.id"> |
| | | <el-select v-model="form.memberId" filterable @change="getSolutions" placeholder="è¯·éæ©"> |
| | | <el-option |
| | | v-for="item in user" |
| | | :key="item.id" |
| | | :label="item.name + ' - ' + item.idcardNo" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="ä¿é©æ¹æ¡" prop="solutionId" v-if="!form.id"> |
| | | <div style="display: flex; align-items: center;"> |
| | | <span>{{form.solutionName}}</span> |
| | | <el-button type="primary" @click="openS" style="margin-left: 10px;">éæ©æ¹æ¡</el-button> |
| | | </div> |
| | | </el-form-item> |
| | | <el-form-item label="æ´¾é£åä½" prop="duId" v-if="form.duName && !form.id"> |
| | | <span>{{form.duName}}</span> |
| | | </el-form-item> |
| | | <el-form-item label="æå±å·¥ç§" prop="worktypeId" v-if="form.worktypeName && !form.id"> |
| | | <span>{{form.worktypeName}}</span> |
| | | </el-form-item> |
| | | <el-form-item label="äºæ
åçæ¶é´" prop="happenTime" v-if="!form.id"> |
| | | <el-date-picker |
| | | v-model="form.happenTime" |
| | | type="datetime" |
| | | format="yyyy-MM-dd HH:mm:ss" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="éæ©æ¥ææ¶é´"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="å°±è¯å»çæºæ" prop="hospital" v-if="!form.id"> |
| | | <el-input v-model="form.hospital" placeholder="请è¾å
¥"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="åºé©å°åº" prop="areaId"> |
| | | <el-cascader |
| | | v-model="form.areaId" |
| | | :options="area" |
| | | :props="{ value: 'id', label: 'name', children: 'childAreasList' }" |
| | | @change="handleChange" /> |
| | | </el-form-item> |
| | | <el-form-item label="äºæ
ç±»å" prop="type"> |
| | | <el-radio-group v-model="form.type"> |
| | | <el-radio :label="0">工使é´å伤</el-radio> |
| | | <el-radio :label="1">ä¸ä¸çéä¸å伤</el-radio> |
| | | <el-radio :label="2">é工使¶é´å伤</el-radio> |
| | | <el-radio :label="3">æå¤å伤</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="æ¯å¦ä½é¢" prop="inHospital"> |
| | | <el-radio-group v-model="form.inHospital"> |
| | | <el-radio :label="0">æ¯</el-radio> |
| | | <el-radio :label="1">å¦</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="æ¯å¦æå»çä¿é©" prop="medicalInsurance"> |
| | | <el-radio-group v-model="form.medicalInsurance"> |
| | | <el-radio :label="0">æ¯</el-radio> |
| | | <el-radio :label="1">å¦</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="äºæ
æè¿°" prop="content" v-if="!form.id"> |
| | | <el-input type="textarea" :rows="5" placeholder="请è¾å
¥å
容" v-model="form.content"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="ä¸ä¼ äºæ
è§é¢/ç
§ç" prop="list" v-if="!form.id"> |
| | | <upload :list="form.list" :accept="'.mp4,.jpg,.png,.jpeg'" folder="settle" @dele="deleFile" @success="getData" /> |
| | | </el-form-item> |
| | | <el-form-item label="æ¥æ¡äººå§å" prop="informantName"> |
| | | <el-input v-model="form.informantName" placeholder="请è¾å
¥"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="æ¥æ¡äººèç³»æ¹å¼" prop="informantPhone"> |
| | | <el-input maxlength="11" v-model="form.informantPhone" placeholder="请è¾å
¥"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | <!-- å¼¹çªæé --> |
| | | <el-dialog |
| | | title="温馨æç¤º" |
| | | :modal="false" |
| | | :close-on-click-modal="false" |
| | | :show-close="false" |
| | | :visible.sync="centerDialogVisible" |
| | | width="50%" |
| | | center> |
| | | <div class="fuwenben" style="font-size: 12px"> |
| | | å°æ¬ç客æ·ï¼ |
| | | |
| | | é¦å
æè°¢æ¨å¯¹äºæä»¬çä¿¡ä»»ä¸æ¯æï¼æä»¬å¾è£å¹¸æä¸ºè´µå¸çä¿é©å¨è¯¢æå¡åï¼ |
| | | |
| | | é´äºè¿æåºç°ä¸ªå«å®¢æ·åå¨ï¼å½å¤©æä¿å½å¤©åºé©ï¼å³å
åºå·¥ä¼¤ææå¤ãåè¿è¡æä¿æä½ï¼ç个å«è¯éªä¿é©éçæ¡ä¾ï¼é误使ç¨â峿¶çæâæ¡æ¬¾ãé对æ¤ç§æ
嵿¬å
¬å¸ééåç¥åä½å®¢æ·: |
| | | |
| | | 1.è¯éªä¿é©éçè¡ä¸ºå±äºè¿æ³è¡ä¸º,䏿¦åç°,æ¬å
¬å¸å°æäº¤å
¬å®æºå
³å¤çå¹¶ä¿ç追究æ³å¾è´£ä»»ï¼ |
| | | |
| | | 2.为äºé¡ºå©çèµç»æ¡,æç
§ä¿é©å
¬å¸ççèµå®¡æ¥è¦æ±,å½å¤©æä¿å½å¤©åºé©éè¦æä¾åºé©çæ§è§é¢æè
è½ä½è¯å
·ä½æ¶é´ç¹çä»»ä½è¯æ®ï¼ |
| | | |
| | | 3.è¯·æ¨æ·±å»çè§£ä¿é©ä¸âå¦å®åç¥âçæä¿äººä¹å¡ï¼æä»¬è´åäºä¸ºæ¨è½¬ç§»ç¨å·¥é£é©åæ³å¾é£é©ãä½è¿ä¸åçåææ¯ï¼åè§åæ³åçã |
| | | |
| | | éä»¶ä¸ï¼ |
| | | |
| | | ãä¸å人æ°å
±åå½åæ³ã第ä¸ç¾ä¹åå
«æ¡ ãä¿é©è¯éªç½ªãæä¸åæ
å½¢ä¹ä¸ï¼è¿è¡ä¿é©è¯éªæ´»å¨ï¼æ°é¢è¾å¤§çï¼å¤äºå¹´ä»¥ä¸ææå¾åæè
æå½¹ï¼ å¹¶å¤ä¸ä¸å
以ä¸åä¸å
以ä¸ç½éï¼æ°é¢å·¨å¤§æè
æå
¶ä»ä¸¥éæ
èçï¼å¤äºå¹´ä»¥ä¸å年以䏿æå¾åï¼å¹¶å¤äºä¸å
以ä¸äºåä¸å
以ä¸ç½éï¼æ°é¢ç¹å«å·¨å¤§æè
æå
¶ä»ç¹å«ä¸¥éæ
èçï¼å¤å年以䏿æå¾ åï¼å¹¶å¤äºä¸å
以ä¸äºåä¸å
以ä¸ç½éæè
没æ¶è´¢äº§ï¼ |
| | | |
| | | ï¼ä¸ï¼æä¿äººæ
æèæä¿é©æ çï¼éªåä¿é©éçï¼ |
| | | |
| | | ï¼äºï¼æä¿äººã被ä¿é©äººæè
åç人对åççä¿é©äºæ
ç¼é èåçåå æè
夸大æå¤±çç¨åº¦ï¼éªåä¿é©éçï¼ |
| | | |
| | | ï¼ä¸ï¼æä¿äººã被ä¿é©äººæè
åç人ç¼é æªæ¾åççä¿é©äºæ
ï¼éªåä¿é©éçï¼ |
| | | |
| | | ï¼åï¼æä¿äººã被ä¿é©äººæ
æé æè´¢äº§æå¤±çä¿é©äºæ
ï¼éªåä¿é©éçï¼ |
| | | |
| | | ï¼äºï¼æä¿äººãåç人æ
æé æè¢«ä¿é©äººæ»äº¡ãä¼¤æ®æè
ç¾ç
ï¼éªåä¿é©éçã |
| | | |
| | | æå款第å项ã第äºé¡¹æåè¡ä¸ºï¼åæ¶ææå
¶ä»ç¯ç½ªçï¼ä¾ç
§æ°ç½ªå¹¶ç½çè§å®å¤ç½ã åä½ç¯ç¬¬ä¸æ¬¾ç½ªçï¼å¯¹åä½å¤å¤ç½éï¼å¹¶å¯¹å
¶ç´æ¥è´è´£ç主管人åå å
¶ä»ç´æ¥è´£ä»»äººåï¼å¤äºå¹´ä»¥ä¸ææå¾åæè
æå½¹ï¼æ°é¢å·¨å¤§æè
æ å
¶ä»ä¸¥éæ
èçï¼å¤äºå¹´ä»¥ä¸å年以䏿æå¾åï¼æ°é¢ç¹å«å·¨å¤§æè
æå
¶ä»ç¹å«ä¸¥éæ
èçï¼å¤å年以䏿æå¾åã ä¿é©äºæ
çé´å®äººãè¯æäººã财产è¯ä¼°äººæ
ææä¾èåçè¯ææä»¶ï¼ä¸ºä»äººè¯éªæä¾æ¡ä»¶çï¼ä»¥ä¿é©è¯éªçå
±ç¯è®ºå¤ã |
| | | |
| | | éä»¶äºï¼ |
| | | |
| | | ãä¸å人æ°å
±åå½ä¿é©æ³ã第äºå䏿¡ æªåçä¿é©äºæ
ï¼è¢«ä¿é©äººæè
åç人è°ç§°åçäºä¿é©äºæ
ï¼åä¿é©äººæåºèµå¿æè
ç»ä»ä¿é©é请æ±çï¼ä¿é©äººææè§£é¤ååï¼å¹¶ä¸éè¿ä¿é©è´¹ã |
| | | |
| | | æä¿äººã被ä¿é©äººæ
æå¶é ä¿é©äºæ
çï¼ä¿é©äººææè§£é¤ååï¼ä¸æ¿æ
èµå¿æè
ç»ä»ä¿é©éç责任ï¼é¤æ¬æ³ç¬¬åå䏿¡è§å®å¤ï¼ä¸éè¿ä¿é©è´¹ã |
| | | |
| | | ä¿é©äºæ
åçåï¼æä¿äººã被ä¿é©äººæè
åç人以伪é ãåé çæå
³è¯æãèµææè
å
¶ä»è¯æ®ï¼ç¼é èåçäºæ
åå æè
夸大æå¤±ç¨åº¦çï¼ä¿é©äººå¯¹å
¶èæ¥çé¨å䏿¿æ
èµå¿æè
ç»ä»ä¿é©éç责任ã |
| | | |
| | | æä¿äººã被ä¿é©äººæè
åç人æå䏿¬¾è§å®è¡ä¸ºä¹ä¸ï¼è´ä½¿ä¿é© 人æ¯ä»ä¿é©éæè
æ¯åºè´¹ç¨çï¼åºå½æ¤éæè
èµå¿ã |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="centerDialogVisible = false">æå·²ç¥æ</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <!-- éæ©ä¿é©æ¹æ¡ --> |
| | | <selectSolutions ref="selectSolutions" @success="getVal" /> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import upload from '@/components/common/upload' |
| | | import selectSolutions from '@/components/enterprise/selectSolutions' |
| | | import { findListByDTO } from '@/api/business/member' |
| | | import { findList } from '@/api/business/applyChange' |
| | | import { findTreeList } from '@/api/system/common' |
| | | import { create, updateById } from '@/api/business/settleClaims' |
| | | export default { |
| | | name: 'onlineReporting', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow, upload, selectSolutions }, |
| | | data () { |
| | | return { |
| | | form: { |
| | | id: null, |
| | | insuranceApplyId: '', |
| | | memberId: '', |
| | | solutionId: '', |
| | | solutionName: '', |
| | | duId: '', |
| | | duName: '', |
| | | worktypeId: '', |
| | | worktypeName: '', |
| | | happenTime: '', |
| | | hospital: '', |
| | | areaId: '', |
| | | areaInfo: '', |
| | | type: 0, |
| | | inHospital: 0, |
| | | medicalInsurance: 0, |
| | | content: '', |
| | | informantName: '', |
| | | informantPhone: '', |
| | | list: [], |
| | | reportFileList: [] |
| | | }, |
| | | rules: { |
| | | memberId: [ |
| | | { required: true, message: 'è¯·éæ©åºé©äºº' } |
| | | ], |
| | | solutionId: [ |
| | | { required: true, message: 'è¯·éæ©ä¿é©æ¹æ¡' } |
| | | ], |
| | | duId: [ |
| | | { required: true, message: 'è¯·éæ©æ´¾é£åä½' } |
| | | ], |
| | | worktypeId: [ |
| | | { required: true, message: 'è¯·éæ©æå±å·¥ç§' } |
| | | ], |
| | | happenTime: [ |
| | | { required: true, message: 'è¯·éæ©äºæ
åçæ¶é´' } |
| | | ], |
| | | type: [ |
| | | { required: true, message: 'è¯·éæ©äºæ
ç±»å' } |
| | | ], |
| | | inHospital: [ |
| | | { required: true, message: 'è¯·éæ©æ¯å¦ä½é¢' } |
| | | ], |
| | | medicalInsurance: [ |
| | | { required: true, message: 'è¯·éæ©æ¯å¦æå»çä¿é©' } |
| | | ], |
| | | content: [ |
| | | { required: true, message: '请è¾å
¥äºæ
æè¿°' } |
| | | ], |
| | | informantName: [ |
| | | { required: true, message: '请è¾å
¥æ¥æ¡äººå§å' } |
| | | ], |
| | | informantPhone: [ |
| | | { required: true, message: '请è¾å
¥æ¥æ¡äººèç³»æ¹å¼' } |
| | | ] |
| | | }, |
| | | centerDialogVisible: false, |
| | | user: [], |
| | | options: [], |
| | | area: [] |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | api: '/business/settleClaims', |
| | | 'field.id': 'id' |
| | | }) |
| | | }, |
| | | methods: { |
| | | open (title, target) { |
| | | this.title = title |
| | | this.visible = true |
| | | this.form.list = [] |
| | | this.form.reportFileList = [] |
| | | this.getUser() |
| | | this.getArea() |
| | | // æ°å»º |
| | | if (target == null) { |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | this.form[this.configData['field.id']] = null |
| | | setTimeout(() => { |
| | | this.centerDialogVisible = true |
| | | }, 300) |
| | | }) |
| | | return |
| | | } |
| | | // ç¼è¾ |
| | | this.$nextTick(() => { |
| | | for (const key in this.form) { |
| | | this.form[key] = target[key] |
| | | } |
| | | }) |
| | | }, |
| | | handleTreeData(data) { |
| | | for (var i = 0; i < data.length; i++) { |
| | | if (data[i].childAreasList.length < 1) { |
| | | data[i].childAreasList = undefined; // çå端è¿çæ¯childåæ®µè¿æ¯childrenåæ®µï¼èªè¡æ¹å |
| | | } else { |
| | | this.handleTreeData(data[i].childAreasList) // childrenè¥ä¸ä¸ºç©ºæ°ç»ï¼åç»§ç» éå½è°ç¨ æ¬æ¹æ³ |
| | | } |
| | | } |
| | | return data; |
| | | }, |
| | | __confirmEdit () { |
| | | this.$refs.form.validate((valid) => { |
| | | if (!valid) { |
| | | return |
| | | } |
| | | // è°ç¨æ°å»ºæ¥å£ |
| | | this.isWorking = true |
| | | let obj = JSON.parse(JSON.stringify(this.form)) |
| | | obj.areaId = obj.areaId.join(',') |
| | | updateById(obj) |
| | | .then(() => { |
| | | this.visible = false |
| | | this.$tip.apiSuccess('ä¿®æ¹æå') |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | | }) |
| | | }) |
| | | }, |
| | | __confirmCreate () { |
| | | this.$refs.form.validate((valid) => { |
| | | if (!valid) { |
| | | return |
| | | } |
| | | // è°ç¨æ°å»ºæ¥å£ |
| | | this.isWorking = true |
| | | let obj = JSON.parse(JSON.stringify(this.form)) |
| | | if (obj.areaId) { |
| | | obj.areaId = obj.areaId.join(',') |
| | | } |
| | | create(obj) |
| | | .then(() => { |
| | | this.visible = false |
| | | this.$tip.apiSuccess('æ°å»ºæå') |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | | }) |
| | | }) |
| | | }, |
| | | // æ¥è¯¢åºåæ°æ® |
| | | getArea() { |
| | | findTreeList({}) |
| | | .then(res => { |
| | | this.area = this.handleTreeData(res) |
| | | }) |
| | | }, |
| | | getVal(e) { |
| | | console.log(e) |
| | | this.form.insuranceApplyId = e.applyId |
| | | this.form.solutionId = e.solutionId |
| | | this.form.solutionName = e.solutionName |
| | | this.form.duId = e.duId |
| | | this.form.duName = e.duName |
| | | this.form.worktypeId = e.worktypeId |
| | | this.form.worktypeName = e.worktypeName |
| | | }, |
| | | openS() { |
| | | if (!this.form.memberId) { |
| | | this.$message.warning('请å
éæ©åºé©äºº') |
| | | return |
| | | } |
| | | this.$refs.selectSolutions.open('éæ©ä¿é©æ¹æ¡', this.form.memberId) |
| | | }, |
| | | getUser() { |
| | | findListByDTO({}) |
| | | .then(res => { |
| | | this.user = res |
| | | }) |
| | | }, |
| | | getSolutions(id) { |
| | | findList({ memberId: id }) |
| | | .then(res => { |
| | | this.form.solutionId = '' |
| | | this.form.worktypeId = '' |
| | | this.form.duId = '' |
| | | this.options = res |
| | | }) |
| | | }, |
| | | getTreeName(list, id){ |
| | | let _this = this |
| | | for (let i = 0; i < list.length; i++) { |
| | | let a = list[i] |
| | | if (a.id === id) { |
| | | return a.name |
| | | } else { |
| | | if (a.childAreasList && a.childAreasList.length > 0) { |
| | | let res = _this.getTreeName(a.childAreasList, id) |
| | | if (res) { |
| | | return res |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | handleChange(value) { |
| | | let info = '' |
| | | value.forEach(item => { |
| | | info += this.getTreeName(this.area, item) |
| | | }) |
| | | this.form.areaInfo = info |
| | | }, |
| | | getData(data) { |
| | | this.form.list.push(data) |
| | | this.form.reportFileList.push({ |
| | | fileurl: data.imgaddr, |
| | | name: data.originname, |
| | | type: data.type |
| | | }) |
| | | }, |
| | | deleFile(index) { |
| | | this.form.reportFileList.splice(index, 1) |
| | | this.form.list.splice(index, 1) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .fuwenben { |
| | | width: 100%; |
| | | height: 400px; |
| | | font-size: 16px; |
| | | color: black; |
| | | overflow-y: scroll; |
| | | word-break: break-all; |
| | | overflow-wrap: break-word; |
| | | } |
| | | </style> |
| | |
| | | <span>{{scope.$index + 1}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="status" label="æ¡ä»¶ç¶æ" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span :class="'settle-status' + row.status" v-if="row.status === 0 || row.status === 2 || row.status === 3">å¤çä¸</span> |
| | | <span :class="'settle-status' + row.status" v-if="row.status === 1">å·²æ¤æ¡</span> |
| | | <span :class="'settle-status' + row.status" v-if="row.status === 4">å·²ç»æ¡</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="statusName" label="æ¡ä»¶ç¶æ" min-width="100px"></el-table-column> |
| | | <el-table-column prop="reportNum" label="æ¥æ¡å·" min-width="100px"></el-table-column> |
| | | <el-table-column prop="companyName" label="æ¥æ¡ä¼ä¸" min-width="100px"></el-table-column> |
| | | <el-table-column prop="memberName" label="åºé©äºº" min-width="100px"></el-table-column> |
| | |
| | | <el-table-column |
| | | v-if="containPermissions(['business:settleclaims:update', 'business:settleclaims:delete'])" |
| | | label="æä½" |
| | | min-width="120" |
| | | min-width="200" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaSettleClaimsWindow.open('æ¥æ¡è¯¦æ
', row)" v-permissions="['business:settleclaims:update']">æ¥ç详æ
</el-button> |
| | | <el-button |
| | | type="text" |
| | | @click="$refs.operaSettleClaimsWindow.open('æ¥æ¡è¯¦æ
', row.id)" |
| | | v-if="row.status !== 0"> |
| | | æ¥ç详æ
|
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | @click="$refs.onlineReporting.open('ç¼è¾æ¥æ¡', row.id)" |
| | | v-if="[0,1,2,4,5,7].includes(row.status) && userInfo.type === 1"> |
| | | ç¼è¾ |
| | | </el-button> |
| | | <el-button |
| | | type="text" |
| | | @click="revoke(row.id)" |
| | | v-if="[1,2,3,4,5,9,7,10,11].includes(row.status) && userInfo.type === 1"> |
| | | æ¤é |
| | | </el-button> |
| | | <el-button type="text" @click="deleRow(row.id)" v-if="row.status === 0">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | import OperaSettleClaimsWindow from '@/components/business/OperaSettleClaimsWindow' |
| | | import onlineReporting from '@/components/enterprise/onlineReporting' |
| | | import { all as solutionAll } from '@/api/business/solutions' |
| | | import { returnSettle } from '@/api/business/settleRisk' |
| | | import { pageAll as companyAll } from '@/api/business/company' |
| | | import { dele } from '@/api/business/settleClaims' |
| | | import { mapState } from 'vuex' |
| | | export default { |
| | | name: 'SettleClaims', |
| | |
| | | this.loadSelectList() |
| | | }, |
| | | methods: { |
| | | // handlePageChange() { |
| | | // this.search() |
| | | // }, |
| | | // æ¤é |
| | | revoke(id) { |
| | | this.$confirm('æ¤éåï¼æ¡ä»¶ç´æ¥ç»æï¼æ æ³ç»§ç»è¿è¡çèµæä½ï¼', 'æ¯å¦æ¤éæ¥æ¡ï¼', { |
| | | confirmButtonText: 'ç¡®å®æ¤é', |
| | | cancelButtonText: 'æåæ³æ³', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | returnSettle({ id }) |
| | | .then(res => { |
| | | this.search() |
| | | }) |
| | | }).catch(() => { |
| | | |
| | | }); |
| | | }, |
| | | loadSelectList () { |
| | | solutionAll({ dataType: 0 }).then(res => { |
| | | this.solutionList = res |
| | |
| | | this.companyList = res |
| | | }).catch(err => { |
| | | }) |
| | | }, |
| | | deleRow(id) { |
| | | this.$confirm('æ¤æä½å°æ°¸ä¹
å é¤è¯¥æ°æ®, æ¯å¦ç»§ç»?', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | dele(id) |
| | | .then(res => { |
| | | this.$message.success('å 餿å') |
| | | this.search() |
| | | }) |
| | | }).catch(() => { |
| | | |
| | | }); |
| | | } |
| | | |
| | | } |