company/.env.development | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
company/src/components/business/OperaPolicyListWindow.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
company/src/components/business/dispatchReview.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
company/src/components/business/dispatchUnitReviewDetails.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
company/src/components/business/policyListDetails.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
company/src/components/common/Menu.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
company/src/views/business/dispatchUnitReview.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
company/src/views/business/policyList.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
company/.env.development
@@ -1,6 +1,6 @@ # å¼åç¯å¢é ç½® NODE_ENV = 'development' VUE_APP_API = 'http://192.168.0.156:10023/' VUE_APP_API = 'http://192.168.0.104:10023/' # VUE_APP_API = 'http://192.168.0.134:10023/' company/src/components/business/OperaPolicyListWindow.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,449 @@ <template> <GlobalWindow :title="title" width="80%" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm" > <div class="desc"> <div class="desc_item"> <div class="desc_item_label"> <div class="desc_item_label_left"> <span>æä¿ä¼ä¸ï¼å®å¾½å¹³å®äººåèµæºæéå ¬å¸</span> <span>ä¿åç¶æï¼å¾ åºå</span> <span>æäº¤æ¶é´ï¼2023-09-11 00:00:00</span> </div> <div class="desc_item_label_right"> <el-button type="primary" @click="$refs.policyListDetails.open('æä¿è¯¦æ å')">导åºè¯¦å</el-button> <el-button type="primary">æ¥çæä¿å</el-button> <el-button type="primary">æ¥çä¿é©å</el-button> <el-button type="danger" @click="visible4 = true">ä¿®æ¹ä¿é©å</el-button> </div> </div> <div class="desc_item_from"> <el-table :data="tableData" border style="width: 100%"> <el-table-column prop="date" label="ä¿åå·"> </el-table-column> <el-table-column prop="name" label="ä¿é©æ¹æ¡" width="180"> </el-table-column> <el-table-column prop="address" label="ä¿é©çæèµ·æ"> </el-table-column> <el-table-column prop="address" label="ä¿é©çææ¢æ"> </el-table-column> <el-table-column prop="address" label="æä¿äººæ°"> </el-table-column> <el-table-column prop="address" label="å¨ä¿æ¶é¿ï¼å¤©ï¼"> </el-table-column> <el-table-column prop="address" label="å½åè´¹ç¨"> </el-table-column> <el-table-column prop="address" label="æ»è´¹ç¨"> </el-table-column> </el-table> </div> <div class="desc_item_cate"> <el-tabs v-model="activeName" @tab-click="handleClick"> <el-tab-pane label="å¨ä¿äººå" name="first"></el-tab-pane> <el-tab-pane label="å /åä¿è®°å½" name="second"></el-tab-pane> <el-tab-pane label="æ¢åè®°å½" name="third"></el-tab-pane> </el-tabs> </div> <div class="desc_item_search"> <el-form :inline="true" :model="formInline" class="demo-form-inline"> <el-form-item label="å¨ä¿ç¶æ" prop="region"> <el-select v-model="formInline.region" placeholder="è¯·éæ©"> <el-option label="ä¿éä¸" value="1"></el-option> <el-option label="ä¸å¨ä¿" value="2"></el-option> </el-select> </el-form-item> <el-form-item label="æ´¾é£åä½" prop="region"> <el-select v-model="formInline.region" placeholder="è¯·éæ©"> <el-option label="ä¿éä¸" value="1"></el-option> <el-option label="ä¸å¨ä¿" value="2"></el-option> </el-select> </el-form-item> <el-form-item label="æå±å·¥ç§" prop="region"> <el-select v-model="formInline.region" placeholder="è¯·éæ©"> <el-option label="ä¿éä¸" value="1"></el-option> <el-option label="ä¸å¨ä¿" value="2"></el-option> </el-select> </el-form-item> <el-form-item label="åå·¥å§å" prop="user"> <el-input v-model="formInline.user" placeholder="请è¾å ¥"></el-input> </el-form-item> <el-form-item label="ä¿é©çæèµ·æ" prop="user"> <el-date-picker v-model="formInline.user" type="daterange" range-separator="è³" start-placeholder="å¼å§æ¥æ" end-placeholder="ç»ææ¥æ"> </el-date-picker> </el-form-item> <el-form-item label="ä¿é©çæèµ·æ" prop="user"> <el-date-picker v-model="formInline.user" type="daterange" range-separator="è³" start-placeholder="å¼å§æ¥æ" end-placeholder="ç»ææ¥æ"> </el-date-picker> </el-form-item> <section> <el-button type="primary" @click="onSubmit">æ¥è¯¢</el-button> <el-button>éç½®</el-button> <el-button type="primary">导åºåå</el-button> </section> </el-form> </div> <div class="desc_item_from"> <el-table :data="tableData" border style="width: 100%"> <el-table-column label="åºå·"> <template slot-scope="scope"> <span>{{scope.$index + 1}}</span> </template> </el-table-column> <el-table-column prop="date" label="åå·¥å§å"> </el-table-column> <el-table-column prop="name" label="æ§å«" width="180"> </el-table-column> <el-table-column prop="address" label="身份è¯å·"> </el-table-column> <el-table-column prop="address" label="æ´¾é£åä½"> </el-table-column> <el-table-column prop="address" label="æå±å·¥ç§"> </el-table-column> <el-table-column prop="address" label="ä¿é©çæèµ·æ"> </el-table-column> <el-table-column prop="address" label="ä¿é©çææ¢æ"> </el-table-column> <el-table-column prop="address" label="产çè´¹ç¨ï¼å ï¼"> </el-table-column> </el-table> <div class="desc_item_from_page"> <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage" :page-sizes="[100, 200, 300, 400]" :page-size="100" layout="total, sizes, prev, pager, next, jumper" :total="400"> </el-pagination> </div> </div> <div class="desc_item_review"> <div class="desc_item_review_label">å®¡æ ¸æµç¨</div> <el-timeline :reverse="reverse"> <el-timeline-item v-for="(activity, index) in activities" :key="index" :timestamp="activity.timestamp"> {{activity.content}} </el-timeline-item> </el-timeline> </div> </div> </div> <policyListDetails ref="policyListDetails" @success="successEvent" /> <!-- ä¿®æ¹ä¿é©å --> <el-dialog title="ä¿®æ¹ä¿é©å" :visible.sync="visible4" :show-close="false" :close-on-click-modal="false" width="30%" center> <div class="form"> <div class="form_item"> <div class="form_item_label"><span>*</span>ä¿é©çæèµ·æï¼</div> <div class="form_item_val"> <el-date-picker v-model="value1" type="date" placeholder="éæ©æ¥æ"> </el-date-picker> </div> </div> <div class="form_item"> <div class="form_item_label"><span>*</span>ä¿åå·ï¼</div> <div class="form_item_val"> <el-input placeholder="请è¾å ¥"></el-input> </div> </div> <div class="form_item"> <div class="form_item_label"><span>*</span>ä¸ä¼ ä¿é©åï¼</div> <div class="form_item_val"> <el-upload class="upload-demo" action="https://jsonplaceholder.typicode.com/posts/" :on-preview="handlePreview" :on-remove="handleRemove" :before-remove="beforeRemove" multiple :limit="1" :on-exceed="handleExceed" :file-list="fileList"> <el-button size="small" type="primary">ç¹å»ä¸ä¼ </el-button> <div slot="tip" class="el-upload__tip">åªè½ä¸ä¼ pdfæä»¶ï¼ä¸ä¸è¶ è¿5mb</div> </el-upload> </div> </div> <div class="form_item"> <div class="form_item_label"><span>*</span>ä¿®æ¹åå ï¼</div> <div class="form_item_val"> <el-input placeholder="请è¾å ¥"></el-input> </div> </div> </div> <span slot="footer" class="dialog-footer"> <el-button @click="visible4 = false">å æ¶</el-button> <el-button type="primary" @click="visible4 = false">ç¡® å®</el-button> </span> </el-dialog> </GlobalWindow> </template> <script> import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' import policyListDetails from '@/components/business/policyListDetails' export default { name: 'OperaPolicyListWindow', extends: BaseOpera, components: { GlobalWindow, policyListDetails }, data () { return { // è¡¨åæ°æ® form: { id: null, editDate: '' }, // éªè¯è§å rules: { }, formInline: { user: '', region: '' }, visible1: false, visible2: false, visible3: false, visible4: false, visible5: false, reverse: true, radio: 0, fileList: [ {name: 'food.pdf', url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100'} ], activities: [{ content: 'æ´»å¨ææå¼å§', timestamp: '2018-04-15' }, { content: 'éè¿å®¡æ ¸', timestamp: '2018-04-13' }, { content: 'å建æå', timestamp: '2018-04-11' }], tableData: [], activeName: 'first', currentPage: 1 } }, created () { this.config({ api: '/business/insuranceApply', 'field.id': 'id' }) }, methods: { handleRemove(file, fileList) { console.log(file, fileList); }, handlePreview(file) { console.log(file); }, handleExceed(files, fileList) { this.$message.warning(`å½åéå¶éæ© 3 个æä»¶ï¼æ¬æ¬¡éæ©äº ${files.length} 个æä»¶ï¼å ±éæ©äº ${files.length + fileList.length} 个æä»¶`); }, beforeRemove(file, fileList) { return this.$confirm(`ç¡®å®ç§»é¤ ${ file.name }ï¼`); }, successEvent() { }, handleSizeChange(val) { console.log(`æ¯é¡µ ${val} æ¡`); }, handleCurrentChange(val) { console.log(`å½å页: ${val}`); }, handleClick(tab, event) { console.log(tab, event); }, onSubmit() { } } } </script> <style> .v-modal { z-index: 2000 !important; } </style> <style lang="scss" scoped> .form { width: 100%; display: flex; align-items: center; flex-direction: column; .form_span { width: 100%; display: flex; align-items: start; flex-direction: column; margin-bottom: 20px; span { font-size: 14px; &:nth-child(1) { color: black; margin-bottom: 5px; } &:nth-child(2) { color: #8c939d; } } } .form_item { width: 100%; display: flex; align-items: center; margin-bottom: 20px; &:last-child { margin: 0 !important; } .form_item_label { flex-shrink: 0; width: 170px; color: black; font-size: 14px; span { color: red; font-size: 14px; } } .form_item_val { flex: 1; /*height: 40px;*/ margin-left: 20px; textarea { width: 100%; height: 70px; border: 1px solid #cbcbcb; padding: 10px; outline: none; box-sizing: border-box; } input { width: 100%; height: 40px; outline: none; border-radius: 5px; border: 1px solid #cbcbcb; padding: 0 20px; box-sizing: border-box; } } } } .desc { width: 100%; .desc_item { width: 100%; display: flex; flex-direction: column; .desc_item_label { width: 100%; display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; span { font-size: 14px; color: black; margin-right: 30px; } } .desc_item_from { width: 100%; margin-bottom: 10px; .desc_item_from_page { width: 100%; display: flex; align-items: center; justify-content: end; margin-top: 10px; } } .desc_item_cate { width: 100%; margin-bottom: 10px; } .desc_item_search { width: 100%; margin-bottom: 20px; } .desc_item_review { width: 100%; .desc_item_review_label { font-size: 20px; color: black; font-weight: bold; margin-bottom: 15px; } } } } </style> company/src/components/business/dispatchReview.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,163 @@ <template> <GlobalWindow :title="title" width="50%" :visible.sync="visible" :confirm-working="isWorking" > <div class="box"> <div class="box_label">ä¿é©æ¹æ¡ï¼å¹³å®ä¿é©é主责任é©Bç</div> <el-table :data="tableData" border style="width: 100%"> <el-table-column prop="date" label="æ¥æ"> </el-table-column> <el-table-column prop="name" label="å§å"> </el-table-column> <el-table-column prop="address" label="å°å"> </el-table-column> </el-table> </div> <!-- 驳åéåç³è¯· --> <el-dialog title="å®¡æ ¸ç¡®è®¤" :visible.sync="visible5" :show-close="false" :close-on-click-modal="false" width="30%" center> <div class="form"> <div class="form_item"> <div class="form_item_label"><span>*</span>å®¡æ ¸è¯´æï¼</div> <div class="form_item_val"> <el-input type="textarea" :rows="2" placeholder="请è¾å ¥"></el-input> </div> </div> </div> <span slot="footer" class="dialog-footer"> <el-button @click="visible5 = false">å æ¶</el-button> <el-button type="primary" @click="visible5 = false">ç¡® å®</el-button> </span> </el-dialog> <template v-slot:footer> <el-button type="primary" @click="visible5 = true">å®¡æ ¸éè¿</el-button> <el-button @click="visible5 = true">å®¡æ ¸éå</el-button> </template> </GlobalWindow> </template> <script> import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' export default { name: 'dispatchReview', extends: BaseOpera, components: { GlobalWindow }, data () { return { // è¡¨åæ°æ® form: { id: null, editDate: '' }, // éªè¯è§å rules: { }, tableData: [], visible5: false } }, created () { this.config({ api: '/business/insuranceApply', 'field.id': 'id' }) }, methods: { } } </script> <style lang="scss" scoped> .box { width: 100%; .box_label { width: 100%; color: black; font-size: 14px; margin-bottom: 15px; } } .form { width: 100%; display: flex; align-items: center; flex-direction: column; .form_span { width: 100%; display: flex; align-items: start; flex-direction: column; margin-bottom: 20px; span { font-size: 14px; &:nth-child(1) { color: black; margin-bottom: 5px; } &:nth-child(2) { color: #8c939d; } } } .form_item { width: 100%; display: flex; align-items: center; margin-bottom: 20px; &:last-child { margin: 0 !important; } .form_item_label { flex-shrink: 0; width: 170px; color: black; font-size: 14px; span { color: red; font-size: 14px; } } .form_item_val { flex: 1; /*height: 40px;*/ margin-left: 20px; textarea { width: 100%; height: 70px; border: 1px solid #cbcbcb; padding: 10px; outline: none; box-sizing: border-box; } input { width: 100%; height: 40px; outline: none; border-radius: 5px; border: 1px solid #cbcbcb; padding: 0 20px; box-sizing: border-box; } } } } </style> company/src/components/business/dispatchUnitReviewDetails.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,296 @@ <template> <GlobalWindow :title="title" width="80%" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm" > <div class="info"> <div class="info_head"> <span>æå±ä¼ä¸ï¼èæ¹æ ¼åç²¾å¯å¶é æéå ¬å¸</span> <el-button type="primary" @click="visible5 = true">å®¡æ ¸</el-button> <el-button type="primary" @click="$refs.dispatchReview.open('å®¡æ ¸å·¥ç§')">å®¡æ ¸å·¥ç§</el-button> </div> <div class="info_list"> <div class="info_list_item">æ´¾é£åä½ï¼èæ¹æ ¼åç²¾å¯å¶é æéå ¬å¸</div> <div class="info_list_item">æ´¾é£åä½ä¿¡ç¨ä»£ç ï¼913401000900000001</div> <div class="info_list_item">æ´¾é£åä½ç¶æï¼å¾ å®¡æ ¸</div> <div class="info_list_item">æ´¾é£åä½è¯¦è¿°ï¼æ </div> </div> <div class="info_x"></div> <div class="info_form"> <div class="info_form_label">ä¿é©æ¹æ¡ï¼å¹³å®ä¿é©é主责任é©Bç</div> <el-table :data="tableData" border style="width: 100%"> <el-table-column prop="date" label="æ¥æ"> </el-table-column> <el-table-column prop="name" label="å§å"> </el-table-column> <el-table-column prop="address" label="å°å"> </el-table-column> </el-table> </div> <div class="info_form"> <div class="info_form_label">ä¿é©æ¹æ¡ï¼å¹³å®ä¿é©é主责任é©Bç</div> <el-table :data="tableData" border style="width: 100%"> <el-table-column prop="date" label="æ¥æ"> </el-table-column> <el-table-column prop="name" label="å§å"> </el-table-column> <el-table-column prop="address" label="å°å"> </el-table-column> </el-table> </div> <div class="desc_label"> <div class="desc_label_left"> <span class="desc_label_left_title"> æ¡ä»¶è¿åº¦ </span> </div> </div> <div class="desc_times"> <el-timeline :reverse="reverse"> <el-timeline-item v-for="(activity, index) in activities" :key="index" :timestamp="activity.timestamp"> {{activity.content}} </el-timeline-item> </el-timeline> </div> <!-- 驳åéåç³è¯· --> <el-dialog title="å®¡æ ¸ç¡®è®¤" :visible.sync="visible5" :show-close="false" :close-on-click-modal="false" width="30%" center> <div class="form"> <div class="form_item"> <div class="form_item_label"><span>*</span>å®¡æ ¸è¯´æï¼</div> <div class="form_item_val"> <el-input type="textarea" :rows="2" placeholder="请è¾å ¥"></el-input> </div> </div> </div> <span slot="footer" class="dialog-footer"> <el-button @click="visible5 = false">å æ¶</el-button> <el-button type="primary" @click="visible5 = false">ç¡® å®</el-button> </span> </el-dialog> <!-- å®¡æ ¸ --> <dispatchReview ref="dispatchReview" /> </div> </GlobalWindow> </template> <script> import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' import dispatchReview from '@/components/business/dispatchReview' export default { name: 'dispatchUnitReviewDetails', extends: BaseOpera, components: { GlobalWindow, dispatchReview }, data () { return { // è¡¨åæ°æ® form: { id: null, editDate: '' }, // éªè¯è§å rules: { }, tableData: [], visible5: false, reverse: true, activities: [{ content: 'æ´»å¨ææå¼å§', timestamp: '2018-04-15' }, { content: 'éè¿å®¡æ ¸', timestamp: '2018-04-13' }, { content: 'å建æå', timestamp: '2018-04-11' }], } }, created () { this.config({ api: '/business/insuranceApply', 'field.id': 'id' }) }, methods: { } } </script> <style> .v-modal { z-index: 2000 !important; } </style> <style lang="scss" scoped> .info { width: 100%; .form { width: 100%; display: flex; align-items: center; flex-direction: column; .form_span { width: 100%; display: flex; align-items: start; flex-direction: column; margin-bottom: 20px; span { font-size: 14px; &:nth-child(1) { color: black; margin-bottom: 5px; } &:nth-child(2) { color: #8c939d; } } } .form_item { width: 100%; display: flex; align-items: center; margin-bottom: 20px; &:last-child { margin: 0 !important; } .form_item_label { flex-shrink: 0; width: 170px; color: black; font-size: 14px; span { color: red; font-size: 14px; } } .form_item_val { flex: 1; /*height: 40px;*/ margin-left: 20px; textarea { width: 100%; height: 70px; border: 1px solid #cbcbcb; padding: 10px; outline: none; box-sizing: border-box; } input { width: 100%; height: 40px; outline: none; border-radius: 5px; border: 1px solid #cbcbcb; padding: 0 20px; box-sizing: border-box; } } } } .info_head { width: 100%; display: flex; align-items: center; justify-content: space-between; span { color: black; font-size: 14px; } } .info_list { width: 100%; display: flex; align-items: center; flex-wrap: wrap; margin-top: 15px; .info_list_item { width: 33.3%; color: black; font-size: 14px; margin-bottom: 15px; } } .info_x { width: 100%; height: 1px; background: #eeeeee; margin-bottom: 15px; } .info_form { width: 100%; margin-bottom: 15px; .info_form_label { color: black; font-size: 14px; margin-bottom: 15px; } } .desc_label { width: 100%; display: flex; align-items: center; justify-content: space-between; .desc_label_left { flex: 1; display: flex; align-items: center; .desc_label_left_title { font-size: 20px; font-weight: bold; color: black; } .desc_label_left_time { font-size: 14px; color: rgba(249, 86, 1, 0.996); margin-left: 10px; } .desc_label_left_code { font-size: 15px; color: black; margin-left: 30px; } } .desc_label_right { flex-shrink: 0; } } .desc_times { width: 100%; margin-top: 20px; } } </style> company/src/components/business/policyListDetails.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,242 @@ <template> <GlobalWindow :title="title" width="50%" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm" > <div class="box"> <div class="box_header"> <div class="box_header_item"> <div class="box_header_item_label">æä¿ä¼ä¸</div> <div class="box_header_item_val">å®å¾½æ ¼åæºæ¢°å¶é å</div> </div> <div class="box_header_item"> <div class="box_header_item_label">ä¿é©æ¹æ¡</div> <div class="box_header_item_val">å¹³å®ä¿é©é主责任é©Aç</div> </div> <div class="box_header_item"> <div class="box_header_item_label">ä¿é©çæèµ·æ</div> <div class="box_header_item_val">2023-09-11 00:00:00</div> </div> <div class="box_header_item"> <div class="box_header_item_label">ä¿é©çææ¢æ</div> <div class="box_header_item_val">2023-10-11 23:59:59</div> </div> <div class="box_header_item"> <div class="box_header_item_label">æä¿äººæ°</div> <div class="box_header_item_val">50</div> </div> <div class="box_header_item"> <div class="box_header_item_label">æ»è´¹ç¨</div> <div class="box_header_item_val">15000</div> </div> </div> <div class="box_table"> <div class="box_table_head"> <div class="box_table_head_item">åºå·</div> <div class="box_table_head_item">åå·¥å§å</div> <div class="box_table_head_item">身份è¯å·</div> <div class="box_table_head_item">æ´¾é£åä½</div> <div class="box_table_head_item">æå±å·¥ç§</div> </div> <div class="box_table_content" v-for="(item, index) in 6" :key="index"> <div class="box_table_content_item">{{index + 1}}</div> <div class="box_table_content_item">çææ</div> <div class="box_table_content_item">340411190001010011</div> <div class="box_table_content_item">å®å¾½æ ¼åæºæ¢°å¶é å</div> <div class="box_table_content_item">4ç±» æºæ¢°å å·¥/å¶é </div> </div> </div> <div class="box_footer"> <div class="box_footer_label">夿³¨</div> <div class="box_footer_val"> <el-input placeholder="请è¾å ¥"></el-input> </div> </div> </div> <template v-slot:footer> <el-button type="primary">ä¼ä¸è¯ä»¶</el-button> <el-button type="primary">导åºè¯¦å</el-button> <el-button @click="visible = false">åæ¶</el-button> </template> </GlobalWindow> </template> <script> import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' export default { name: 'policyListDetails', extends: BaseOpera, components: { GlobalWindow }, data () { return { // è¡¨åæ°æ® form: { id: null, editDate: '' }, // éªè¯è§å rules: { }, formInline: { user: '', region: '' }, reverse: true, activities: [{ content: 'æ´»å¨ææå¼å§', timestamp: '2018-04-15' }, { content: 'éè¿å®¡æ ¸', timestamp: '2018-04-13' }, { content: 'å建æå', timestamp: '2018-04-11' }], tableData: [], activeName: 'first', currentPage: 1 } }, created () { this.config({ api: '/business/insuranceApply', 'field.id': 'id' }) }, methods: { handleSizeChange(val) { console.log(`æ¯é¡µ ${val} æ¡`); }, handleCurrentChange(val) { console.log(`å½å页: ${val}`); }, handleClick(tab, event) { console.log(tab, event); }, onSubmit() { } } } </script> <style lang="scss" scoped> .box { width: 100%; .box_header { width: 100%; display: flex; align-items: center; flex-wrap: wrap; border-top: 1px solid #b4bbc5; border-left: 1px solid #b4bbc5; .box_header_item { width: 50%; height: 50px; display: flex; align-items: center; border-right: 1px solid #b4bbc5; border-bottom: 1px solid #b4bbc5; box-sizing: border-box; .box_header_item_label { flex: 1; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 14px; color: black; background: #f2f2f2; border-right: 1px solid #b4bbc5; } .box_header_item_val { flex: 1; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 14px; color: black; } } } .box_table { width: 100%; border-left: 1px solid #b4bbc5; box-sizing: border-box; .box_table_head { width: 100%; display: flex; align-items: center; .box_table_head_item { flex: 1; height: 50px; background: #f2f2f2; display: flex; align-items: center; justify-content: center; font-size: 14px; color: black; border-right: 1px solid #b4bbc5; border-bottom: 1px solid #b4bbc5; box-sizing: border-box; &:nth-child(1) { flex: 0.5; } } } .box_table_content { width: 100%; display: flex; align-items: center; .box_table_content_item { flex: 1; height: 50px; background: #ffffff; display: flex; align-items: center; justify-content: center; font-size: 14px; color: black; border-right: 1px solid #b4bbc5; border-bottom: 1px solid #b4bbc5; box-sizing: border-box; &:nth-child(1) { flex: 0.5; } } } } .box_footer { width: 100%; height: 50px; border-left: 1px solid #b4bbc5; border-bottom: 1px solid #b4bbc5; border-right: 1px solid #b4bbc5; display: flex; align-items: center; .box_footer_label { width: 200px; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 14px; color: black; background: #f2f2f2; } .box_footer_val /deep/ { width: calc(100% - 200px); height: 100%; input { width: 100%; height: 50px; } } } } </style> company/src/components/common/Menu.vue
@@ -5,13 +5,14 @@ <h1 :class="{ hidden: menuData.collapse }">äºæä¿</h1> </div> <scrollbar> <!-- :default-openeds="defaultOpeneds"--> <el-menu ref="menu" :unique-opened="true" :default-active="activeIndex" text-color="#fff" active-text-color="#fff" :collapse="menuData.collapse" :default-openeds="defaultOpeneds" :collapse-transition="false" @select="handleSelect" > company/src/views/business/dispatchUnitReview.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,104 @@ <template> <TableLayout :permissions="['business:dispatchunit:query']"> <!-- æç´¢è¡¨å --> <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> <el-form-item label="æå±ä¼ä¸" prop="companyId"> <el-select v-model="searchForm.companyId" placeholder="è¯·éæ©" @change="search"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="æ´¾é£åä½" prop="name"> <el-select v-model="searchForm.name" placeholder="è¯·éæ©" @change="search"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <section> <el-button type="primary" @click="search">æç´¢</el-button> <el-button @click="reset">éç½®</el-button> <el-button @click="$refs.dispatchUnitReviewDetails.open('æ´¾é£åä½è¯¦æ ')">详æ </el-button> </section> </el-form> <!-- è¡¨æ ¼åå页 --> <template v-slot:table-wrap> <el-table v-loading="isWorking.search" :data="tableData.list" stripe > <el-table-column label="åºå·" width="80px"> <template slot-scope="scope"> <span>{{scope.$index + 1}}</span> </template> </el-table-column> <el-table-column prop="companyId" label="æå±ä¼ä¸" min-width="100px"></el-table-column> <el-table-column prop="name" label="æ´¾é£åä½" min-width="100px"></el-table-column> <el-table-column label="æ´¾é£åä½ç¶æ" min-width="100px"> <template slot-scope="{row}"> <span v-if="row.unitStatus === 0">å¾ å®¡æ ¸</span> <span v-if="row.unitStatus === 1">å®¡æ ¸éè¿</span> <span v-if="row.unitStatus === 2">å®¡æ ¸ä¸éè¿</span> </template> </el-table-column> <el-table-column prop="createDate" label="æäº¤æ¥æ" min-width="100px"></el-table-column> <el-table-column v-if="containPermissions(['business:dispatchunit:update', 'business:dispatchunit:delete'])" label="æä½" min-width="120" fixed="right" > <template slot-scope="{row}"> <el-button type="text" @click="$refs.operaDispatchUnitWindow.open('ç¼è¾æ´¾é£åä½ä¿¡æ¯è¡¨', row)" icon="el-icon-edit" v-permissions="['business:dispatchunit:update']">æ¥ç详æ </el-button> </template> </el-table-column> </el-table> <pagination @size-change="handleSizeChange" @current-change="handlePageChange" :pagination="tableData.pagination" > </pagination> </template> <!-- æ°å»º/ä¿®æ¹ --> <dispatchUnitReviewDetails ref="dispatchUnitReviewDetails" @success="handlePageChange"/> </TableLayout> </template> <script> import BaseTable from '@/components/base/BaseTable' import TableLayout from '@/layouts/TableLayout' import Pagination from '@/components/common/Pagination' import dispatchUnitReviewDetails from '@/components/business/dispatchUnitReviewDetails' export default { name: 'dispatchUnitReview', extends: BaseTable, components: { TableLayout, Pagination, dispatchUnitReviewDetails }, data () { return { // æç´¢ searchForm: { name: '', companyId: '' } } }, created () { this.config({ module: 'æ´¾é£åä½ä¿¡æ¯è¡¨', api: '/business/dispatchUnit', 'field.id': 'id', 'field.main': 'id' }) this.search() } } </script> company/src/views/business/policyList.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,122 @@ <template> <TableLayout :permissions="['business:insuranceapply:query']"> <!-- æç´¢è¡¨å --> <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> <el-form-item label="ä¿åå·" prop="status"> <el-input v-model="searchForm.status" placeholder="请è¾å ¥"></el-input> </el-form-item> <el-form-item label="ä¿é©æ¹æ¡" prop="solutionId"> <el-select v-model="searchForm.solutionId" placeholder="è¯·éæ©" @change="search"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="ç¶æ" prop="status"> <el-select v-model="searchForm.status" placeholder="è¯·éæ©" @keypress.enter.native="search"> <el-option label="ä¿éä¸" value="5"></el-option> </el-select> </el-form-item> <el-form-item label="æä¿ä¼ä¸" prop="companyId"> <el-select v-model="searchForm.companyId" placeholder="è¯·éæ©" @change="search"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <section> <el-button type="primary" @click="search">æç´¢</el-button> <el-button @click="reset">éç½®</el-button> <el-button @click="$refs.OperaPolicyListWindow.open('æä¿è¯¦æ ')">æä¿è¯¦æ </el-button> </section> </el-form> <!-- è¡¨æ ¼åå页 --> <template v-slot:table-wrap> <el-table v-loading="isWorking.search" :data="tableData.list" stripe > <el-table-column label="åºå·" width="80px"> <template slot-scope="scope"> <span>{{scope.$index + 1}}</span> </template> </el-table-column> <el-table-column prop="status" label="æä¿ç¶æ" min-width="100px"> <template slot-scope="{row}"> <span v-if="row.status === 0">å¾ å®¡æ ¸</span> <span v-if="row.status === 3">å¾ åºå</span> <span v-if="row.status === 5">ä¿éä¸</span> <span v-if="row.status === 8">å·²è¿æ</span> <span v-if="row.status === 7">å·²éå</span> </template> </el-table-column> <el-table-column prop="companyId" label="æä¿ä¼ä¸" min-width="100px"></el-table-column> <el-table-column prop="solutionId" label="ä¿é©æ¹æ¡" min-width="100px"></el-table-column> <el-table-column prop="solutionId" label="ä¿åå·" min-width="100px"></el-table-column> <el-table-column prop="createDate" label="æä¿äººæ°" min-width="100px"></el-table-column> <el-table-column prop="createDate" label="å¨ä¿æ¶é¿ï¼å¤©ï¼" min-width="100px"></el-table-column> <el-table-column prop="createDate" label="产çè´¹ç¨ï¼å ï¼" min-width="100px"></el-table-column> <el-table-column prop="createDate" label="æ»è´¹ç¨ï¼å ï¼" min-width="100px"></el-table-column> <el-table-column prop="createDate" label="ä¿é©çæèµ·æ" min-width="100px"></el-table-column> <el-table-column prop="createDate" label="ä¿é©çææ¢æ" min-width="100px"></el-table-column> <el-table-column v-if="containPermissions(['business:insuranceapply:update', 'business:insuranceapply:delete'])" label="æä½" min-width="120" fixed="right" > <template slot-scope="{row}"> <el-button type="text" @click="$refs.operaInsuranceApplyWindow.open('ç¼è¾æä¿ç³è¯·ä¿¡æ¯è¡¨', row)" icon="el-icon-edit" v-permissions="['business:insuranceapply:update']">æ¥ç详æ </el-button> </template> </el-table-column> </el-table> <pagination @size-change="handleSizeChange" @current-change="handlePageChange" :pagination="tableData.pagination" > </pagination> </template> <!-- æ°å»º/ä¿®æ¹ --> <OperaPolicyListWindow ref="OperaPolicyListWindow" @success="handlePageChange"/> </TableLayout> </template> <script> import BaseTable from '@/components/base/BaseTable' import TableLayout from '@/layouts/TableLayout' import Pagination from '@/components/common/Pagination' import OperaPolicyListWindow from '@/components/business/OperaPolicyListWindow' export default { name: 'policyList', extends: BaseTable, components: { TableLayout, Pagination, OperaPolicyListWindow }, data () { return { // æç´¢ searchForm: { createDate: '', solutionId: '', companyId: '', status: '' } } }, created () { this.config({ module: 'æä¿ç³è¯·ä¿¡æ¯è¡¨', api: '/business/insuranceApply', 'field.id': 'id', 'field.main': 'id' }) this.search() } } </script>