From a01d637e9ff2bf26aa44c65a239413a38bd8b1fe Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 04 六月 2025 09:39:13 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1
---
company/src/views/index.vue | 334 ++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 291 insertions(+), 43 deletions(-)
diff --git a/company/src/views/index.vue b/company/src/views/index.vue
index 0e23f2a..2ee998d 100644
--- a/company/src/views/index.vue
+++ b/company/src/views/index.vue
@@ -1,4 +1,4 @@
-<template>
+ <template>
<div class="home">
<div class="home_inlet">
<div class="home_inlet_label">蹇嵎鍏ュ彛</div>
@@ -22,16 +22,16 @@
<div class="home_content_left_item" ref="picture3"></div>
</div>
<div class="home_content_right">
- <div class="home_content_right_label" v-if="tabs && tabs.length>0" >浠e姙浜嬮」</div>
+ <div class="home_content_right_label" v-if="tabs && tabs.length>0" >寰呭姙浜嬮」</div>
<el-tabs v-model="activeName" @tab-click="handleClick" >
<el-tab-pane v-for="a in tabs" :key="a.path" :name="a.name" >
- <span slot="label"> {{a.label }}
- <el-badge v-if="(a.name==0?totalPage0:(a.name==1?totalPage1:totalPage2)) >0" :value="(a.name==0?totalPage0:(a.name==1?totalPage1:totalPage2)) " class="item"></el-badge>
+ <span slot="label" title="鐐瑰嚮鍒锋柊"> {{a.label }}
+ <el-badge v-if="getTotalNoticeCount(a) >0" :value="getTotalNoticeCount(a) " class="item"></el-badge>
</span>
</el-tab-pane>
</el-tabs>
<div v-if="activeName === '0'" v-permissions="['business:notice:insurance']" >
- <div class="home_content_right_list">
+ <div class="home_content_right_list" v-if="tableData0 && tableData0.length">
<div class="list_item" v-for="(item, index) in tableData0" :key="index">
<div class="list_item_left">
<span>{{item.title}}锛坽{ item.typeDetail }}锛�</span>
@@ -46,6 +46,11 @@
</div>
</div>
</div>
+ <div class="home_content_right_list" v-else>
+ <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
+ 鏆傛棤娑堟伅
+ </div>
+ </div>
<div class="home_content_right_page">
<el-pagination
@current-change="handleCurrentChange0"
@@ -57,7 +62,7 @@
</div>
</div>
<div v-if="activeName === '1'" v-permissions="['business:notice:tax']">
- <div class="home_content_right_list">
+ <div class="home_content_right_list" v-if="tableData1 && tableData1.length">
<div class="list_item" v-for="(item, index) in tableData1" :key="index">
<div class="list_item_left">
<span>{{item.title}}锛坽{ item.typeDetail }}锛�</span>
@@ -72,6 +77,11 @@
</div>
</div>
</div>
+ <div class="home_content_right_list" v-else>
+ <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
+ 鏆傛棤娑堟伅
+ </div>
+ </div>
<div class="home_content_right_page">
<el-pagination
@current-change="handleCurrentChange1"
@@ -83,11 +93,14 @@
</div>
</div>
<div v-if="activeName === '2'" v-permissions="['business:notice:settle']">
- <div class="home_content_right_list">
+ <div class="home_content_right_list" v-if="tableData2 && tableData2.length">
<div class="list_item" v-for="(item, index) in tableData2" :key="index">
<div class="list_item_left">
<span>{{item.title}}锛坽{ item.typeDetail }}锛�</span>
<span>{{item.info}}锛坽{item.content}}锛�</span>
+<!--
+ <span style="font-size: 12px;color: #8c939d;margin-top: 10px">{{item.createDate}}</span>
+-->
</div>
<div class="list_item_center">
<span>{{item.companyName}}</span>
@@ -96,6 +109,11 @@
<div class="list_item_right">
<span @click="detail(item)">鏌ョ湅</span>
</div>
+ </div>
+ </div>
+ <div class="home_content_right_list" v-else>
+ <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
+ 鏆傛棤娑堟伅
</div>
</div>
<div class="home_content_right_page">
@@ -108,14 +126,110 @@
</el-pagination>
</div>
</div>
+
+ <div v-if="activeName === '6'">
+ <div class="home_content_right_list" v-if="tableData6 && tableData6.length">
+ <div class="list_item" v-for="(item, index) in tableData6" :key="index">
+ <div class="list_item_left">
+ <span>{{item.title}}锛坽{ item.typeDetail }}锛�</span>
+ <span>{{item.content}}</span>
+ </div>
+ <div class="list_item_center">
+ <span>{{item.companyName}}</span>
+ <span>鎻愪氦鏃堕棿 {{item.createDate}}</span>
+ </div>
+ <div class="list_item_right">
+ <span @click="jump('/business/contract')">鏌ョ湅</span>
+ </div>
+ </div>
+ </div>
+ <div class="home_content_right_list" v-else>
+ <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
+ 鏆傛棤娑堟伅
+ </div>
+ </div>
+ <div class="home_content_right_page">
+ <el-pagination
+ @current-change="handleCurrentChange6"
+ :current-page="page6"
+ :page-size="5"
+ layout="total, prev, pager, next, jumper"
+ :total="totalPage6">
+ </el-pagination>
+ </div>
+ </div>
+ <div v-if="activeName === '7'">
+ <div class="home_content_right_list" v-if="tableData7 && tableData7.length">
+ <div class="list_item" v-for="(item, index) in tableData7" :key="index">
+ <div class="list_item_left">
+ <span>{{item.title}}锛坽{ item.typeDetail }}锛�</span>
+ <span>{{item.content}}</span>
+ </div>
+ <div class="list_item_center">
+ <span>{{item.companyName}}</span>
+ <span>鎻愪氦鏃堕棿 {{item.createDate}}</span>
+ </div>
+ <div class="list_item_right">
+ <span @click="jump('/business/solutions')">鏌ョ湅</span>
+ </div>
+ </div>
+ </div>
+ <div class="home_content_right_list" v-else>
+ <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
+ 鏆傛棤娑堟伅
+ </div>
+ </div>
+ <div class="home_content_right_page">
+ <el-pagination
+ @current-change="handleCurrentChange7"
+ :current-page="page7"
+ :page-size="5"
+ layout="total, prev, pager, next, jumper"
+ :total="totalPage7">
+ </el-pagination>
+ </div>
+ </div>
+ <div v-if="activeName === '8'">
+ <div class="home_content_right_list" v-if="tableData8 && tableData8.length">
+ <div class="list_item" v-for="(item, index) in tableData8" :key="index">
+ <div class="list_item_left">
+ <span>{{item.title}}锛堝緟瀹℃牳锛�</span>
+ <span>{{item.info}}锛坽{item.content}}锛�</span>
+ </div>
+ <div class="list_item_center">
+ <span>{{item.companyName}}</span>
+ <span>鎻愪氦鏃堕棿 {{item.createDate}}</span>
+ </div>
+ <div class="list_item_right">
+ <span @click="jump('/business/companyUserApply')">鏌ョ湅</span>
+ </div>
+ </div>
+ </div>
+ <div class="home_content_right_list" v-else>
+ <div class="list_item" style="width: 100%;font-size: 12px;display:block;color: #8c939d;text-align: center; padding: 20px">
+ 鏆傛棤娑堟伅
+ </div>
+ </div>
+ <div class="home_content_right_page">
+ <el-pagination
+ @current-change="handleCurrentChange8"
+ :current-page="page8"
+ :page-size="5"
+ layout="total, prev, pager, next, jumper"
+ :total="totalPage8">
+ </el-pagination>
+ </div>
+ </div>
+
</div>
</div>
- <OperaInsuranceApplyWindow ref="operaInsuranceApplyWindow" @success="backDo"/>
- <dispatchUnitDetailsPlat ref="dispatchUnitDetailsPlat" @success="backDo"/>
- <OperaSettleClaimsWindow ref="operaSettleClaimsWindow" @success="backDo"/>
- <OperaApplyChangeUnitDetailWindow ref="operaApplyChangeUnitDetailWindow" @success="backDo"/>
- <OperaApplyChangeDetailWindow ref="operaApplyChangeDetailWindow" @success="backDo"/>
- <OperaTaxesWindow ref="OperaTaxesWindow" @success="backDo"/>
+ <OperaInsuranceApplyWindow ref="operaInsuranceApplyWindow" @success="handleCurrentChange0()"/>
+ <OperaWtbApplyShopWindow ref="OperaWatbApplyShopWindow" @success="handleCurrentChange0()"/>
+ <dispatchUnitDetailsPlat ref="dispatchUnitDetailsPlat" @success="handleCurrentChange0()"/>
+ <OperaSettleClaimsWindow ref="operaSettleClaimsWindow" @success="handleCurrentChange2()"/>
+ <OperaApplyChangeUnitDetailWindow ref="operaApplyChangeUnitDetailWindow" @success="handleCurrentChange0()"/>
+ <OperaApplyChangeDetailWindow ref="operaApplyChangeDetailWindow" @success="handleCurrentChange0()"/>
+ <OperaTaxesWindow ref="OperaTaxesWindow" @success="handleCurrentChange1()"/>
</div>
</template>
@@ -128,9 +242,13 @@
import OperaSettleClaimsWindow from '@/components/business/OperaSettleClaimsWindow'
import OperaApplyChangeDetailWindow from '@/components/business/OperaApplyChangeDetailWindow'
import OperaTaxesWindow from '@/components/business/OperaTaxesWindow'
-import { fetchList as noticeList } from '@/api/business/notices'
+import { fetchList as noticeList, deleById } from '@/api/business/notices'
+import { getChangeDetail, getDetail } from '@/api/business/insuranceApply'
+import OperaWtbApplyShopWindow from '@/components/business/OperaWtbApplyShopWindow'
export default {
- components: { OperaInsuranceApplyWindow ,
+ components: {
+ OperaWtbApplyShopWindow,
+ OperaInsuranceApplyWindow,
dispatchUnitDetailsPlat,
OperaTaxesWindow,
OperaSettleClaimsWindow,
@@ -145,12 +263,21 @@
page0: 1,
page1: 1,
page2: 1,
+ page6: 1,
+ page7: 1,
+ page8: 1,
+ totalPage8: 0,
+ totalPage7: 0,
+ totalPage6: 0,
totalPage2: 0,
totalPage1: 0,
totalPage0: 0,
tableData0: [],
tableData1: [],
tableData2: [],
+ tableData6: [],
+ tableData7: [],
+ tableData8: [],
cate: [
{
name: '鎶曚繚鐢宠',
@@ -168,15 +295,20 @@
icon: require('../assets/icons/company/dipatch_unit.png')
},
{
- name: '鐩翠繚寮�绁�',
- url: '/enterprise/directInvoicing',
- icon: require('../assets/icons/company/tax.png')
- },
- {
- name: '濮旀墭淇濆紑绁�',
- url: '/enterprise/entrustedInvoicing',
- icon: require('../assets/icons/company/tax.png')
+ name: '鍛樺伐绠$悊',
+ url: '/business/member',
+ icon: require('../assets/icons/company/image.png')
}
+ // {
+ // name: '鐩翠繚寮�绁�',
+ // url: '/enterprise/directInvoicing',
+ // icon: require('../assets/icons/company/tax.png')
+ // },
+ // {
+ // name: '濮旀墭淇濆紑绁�',
+ // url: '/enterprise/entrustedInvoicing',
+ // icon: require('../assets/icons/company/tax.png')
+ // }
],
catePlat: [
{
@@ -215,25 +347,88 @@
this.setPicture2()
this.setPicture3()
this.initPanel()
+ this.setLoadTimer()
},
methods: {
+ getTotalNoticeCount (a) {
+ if (a.name == 0) {
+ return this.totalPage0
+ } else if (a.name == 1) {
+ return this.totalPage1
+ } else if (a.name == 2) {
+ return this.totalPage2
+ } else if (a.name == 6) {
+ return this.totalPage6
+ } else if (a.name == 7) {
+ return this.totalPage7
+ } else if (a.name == 8) {
+ return this.totalPage8
+ }
+
+ return 0
+ },
detail (obj) {
if (obj.objType === 0) {
- this.$refs.operaInsuranceApplyWindow.open('鎶曚繚鐢宠璇︽儏', {id:obj.objId})
+ getDetail(obj.objId).then(res => {
+ if (res.solutionType == 0) {
+ this.$refs.operaInsuranceApplyWindow.open('鎶曚繚鐢宠璇︽儏', { id: obj.objId })
+ } else {
+ this.$refs.OperaWtbApplyShopWindow.open('濮旀墭鎶曚繚鐢宠璇︽儏', { id: obj.objId })
+ }
+ }).catch(err => {
+ })
} else if (obj.objType === 1) {
- this.$refs.operaApplyChangeDetailWindow.open('鍔犲噺淇濊鎯�', {id:obj.objId,applyId:obj.param1})
+ getChangeDetail(obj.objId).then(res => {
+ this.$refs.operaApplyChangeDetailWindow.open('鍔犲噺淇濊鎯�', { id: obj.objId, applyId: res.applyId })
+ }).catch(err => {
+ })
} else if (obj.objType === 2) {
- this.$refs.operaApplyChangeUnitDetailWindow.open('鎹㈠巶鐢宠璇︽儏', {id:obj.objId,applyId:obj.param1})
+ getChangeDetail(obj.objId).then(res => {
+ this.$refs.operaApplyChangeUnitDetailWindow.open('鏇存崲娲鹃仯鍗曚綅鐢宠璇︽儏', { id: obj.objId, applyId: res.applyId })
+ }).catch(err => {
+ })
} else if (obj.objType === 3) {
- this.$refs.dispatchUnitDetailsPlat.open('娲鹃仯鍗曡鎯�', {id:obj.objId})
+ this.$refs.dispatchUnitDetailsPlat.open('娲鹃仯鍗曡鎯�', { id: obj.objId })
} else if (obj.objType === 4) {
- this.$refs.OperaTaxesWindow.open('寮�绁ㄧ敵璇疯鎯�', {id:obj.objId})
+ this.$refs.OperaTaxesWindow.open('寮�绁ㄧ敵璇疯鎯�', { id: obj.objId })
} else if (obj.objType === 5) {
- this.$refs.operaSettleClaimsWindow.open('鐞嗚禂璇︽儏', {id:obj.objId})
+ this.$refs.operaSettleClaimsWindow.open('鎶ユ鐞嗚禂璇︽儏', obj.objId)
+ if ([1,4, 7,13, 14, 15, 16, 17, 18].includes(obj.type)) {
+ // 濡傛灉鏄彁閱掔疮娑堟伅锛屽垹闄ら�氱煡
+ deleById(obj.id)
+ .then(res => {
+ this.tableData2.forEach((item, index) => {
+ if (item.id === obj.id) {
+ this.tableData2.splice(index, 1)
+ this.totalPage2 = this.totalPage2 - 1
+ }
+ })
+ // this.$refs.operaSettleClaimsWindow.open('鎶ユ鐞嗚禂璇︽儏', obj.objId)
+ })
+ }
}
},
- backDo(){
-
+ setLoadTimer () {
+ var that = this
+ this.initLoadData()
+ if (window.timer) {
+ clearInterval(window.timer)
+ }
+ window.timer = setInterval(() => {
+ that.initLoadData()
+ }, 60000)
+ },
+ initLoadData () {
+ var pemissons = this.userInfo.permissions
+ if (pemissons.includes('business:notice:insurance')) {
+ this.handleCurrentChange0(0)
+ }
+ if (pemissons.includes('business:notice:tax')) {
+ this.handleCurrentChange1(0)
+ }
+ if (pemissons.includes('business:notice:settle')) {
+ this.handleCurrentChange2(0)
+ }
},
getNoticeList (type, page) {
noticeList({
@@ -250,9 +445,22 @@
if (type === 1) {
this.tableData1 = response.records
this.totalPage1 = response.total
- } if (type === 2) {
+ }
+ if (type === 2) {
this.tableData2 = response.records
this.totalPage2 = response.total
+ }
+ if (type === 6) {
+ this.tableData6 = response.records
+ this.totalPage6 = response.total
+ }
+ if (type === 7) {
+ this.tableData7 = response.records
+ this.totalPage7 = response.total
+ }
+ if (type === 8) {
+ this.tableData8 = response.records
+ this.totalPage8 = response.total
}
})
.catch(e => {
@@ -263,15 +471,25 @@
var pemissons = this.userInfo.permissions
if (pemissons.includes('business:notice:insurance')) {
- this.tabs.push({ name: '0', label: '鎶曚繚浠e姙' })
+ this.tabs.push({ name: '0', label: '鎶曚繚寰呭姙' })
+ // this.handleCurrentChange0(0);
}
- if (pemissons.includes('business:notice:tax')) {
- this.tabs.push({ name: '1', label: '鍙戠エ浠e姙' })
+ if (pemissons.includes('business:notice:tax') && this.userInfo.type !== 1) {
+ this.tabs.push({ name: '1', label: '鍙戠エ寰呭姙' })
+ // this.handleCurrentChange1(0);
}
if (pemissons.includes('business:notice:settle')) {
- this.tabs.push({ name: '2', label: '鐞嗚禂浠e姙' })
+ this.tabs.push({ name: '2', label: '鎶ユ鐞嗚禂' })
+ // this.handleCurrentChange2(0);
}
- if (pemissons.includes('business:notice:insurance')) {
+ if (this.userInfo.type === 1) {
+ this.tabs.push({ name: '7', label: '鏂规绛剧讲鎻愰啋' })
+ }
+ this.tabs.push({ name: '6', label: '鍚堝悓绛剧讲鎻愰啋' })
+ if (this.userInfo.type === 0) {
+ this.tabs.push({ name: '8', label: '闆嗗洟鐢宠鎻愰啋' })
+ }
+ /* if (pemissons.includes('business:notice:insurance')) {
this.getNoticeList(0, this.page0)
}
if (pemissons.includes('business:notice:tax')) {
@@ -279,10 +497,23 @@
}
if (pemissons.includes('business:notice:settle')) {
this.getNoticeList(2, this.page2)
- }
+ } */
},
handleClick (e) {
this.activeName = e.name
+ if (this.activeName === '0') {
+ this.handleCurrentChange0(0)
+ } else if (this.activeName === '1') {
+ this.handleCurrentChange1(0)
+ } else if (this.activeName === '2') {
+ this.handleCurrentChange2(0)
+ } else if (this.activeName === '6') {
+ this.handleCurrentChange6(0)
+ } else if (this.activeName === '7') {
+ this.handleCurrentChange7(0)
+ } else if (this.activeName === '8') {
+ this.handleCurrentChange8(0)
+ }
},
handleCurrentChange0 (page) {
this.page0 = page
@@ -295,6 +526,18 @@
handleCurrentChange2 (page) {
this.page2 = page
this.getNoticeList(2, this.page2)
+ },
+ handleCurrentChange6 (page) {
+ this.page6 = page
+ this.getNoticeList(6, this.page6)
+ },
+ handleCurrentChange7 (page) {
+ this.page7 = page
+ this.getNoticeList(7, this.page7)
+ },
+ handleCurrentChange8 (page) {
+ this.page8 = page
+ this.getNoticeList(8, this.page8)
},
jump (url) {
if (!url) return
@@ -467,22 +710,25 @@
}
.home_content {
width: 100%;
- height: calc(100% - 170px);
+ /*height: calc(100% - 170px);*/
margin-top: 10px;
display: flex;
- align-items: center;
- justify-content: space-between;
+ /*align-items: center;*/
+ /*justify-content: space-between;*/
.home_content_left {
width: 350px;
- height: 100%;
+ /*height: 100%;*/
+ height: auto;
flex-shrink: 0;
display: flex;
flex-direction: column;
justify-content: space-between;
.home_content_left_item {
width: 100%;
- height: 32%;
+ /*height: 32%;*/
+ height: 200px;
background: #ffffff;
+ margin-bottom: 10px;
}
}
.home_content_right {
@@ -507,6 +753,7 @@
box-sizing: border-box;
width: 100%;
display: flex;
+ align-items: center;
justify-content: space-between;
border: 1px solid #ececec;
margin-bottom: 15px;
@@ -542,6 +789,7 @@
}
}
.list_item_right {
+ flex-shrink: 0;
height: 100%;
display: flex;
align-items: center;
--
Gitblit v1.9.3