Compare commits

..

9 Commits
zm ... master

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

After

Width:  |  Height:  |  Size: 27 KiB

@ -4,5 +4,5 @@ const prodEnv = require('./prod.env')
module.exports = merge(prodEnv, { module.exports = merge(prodEnv, {
NODE_ENV: '"development"', NODE_ENV: '"development"',
BASE_API: '"http://localhost/index.php/"', BASE_API: '"/api/"',
}) })

@ -11,14 +11,15 @@ module.exports = {
assetsPublicPath: '/', assetsPublicPath: '/',
proxyTable: { proxyTable: {
'/api': { '/api': {
target: 'http://127.0.0.1/', target: 'http://192.168.50.40:8088',
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {
'^/api': '' '^/api': ''
} }
}, },
'/file': { '/file': {
target: 'http://127.0.0.1/', target: 'http://192.168.50.40:8088/',
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {
'^/file': '' '^/file': ''

@ -1,5 +1,5 @@
'use strict' 'use strict'
module.exports = { module.exports = {
NODE_ENV: '"production"', NODE_ENV: '"production"',
BASE_API: '"http://company6.dxbs.vip/index.php/"', BASE_API: '"http://web.lbschem.com:8088/index.php/"',
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 224 KiB

After

Width:  |  Height:  |  Size: 217 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 100 KiB

@ -11,12 +11,27 @@ import {
let loadAsyncRouter = false let loadAsyncRouter = false
const whiteList = ['/login', '/welcome'] // 不重定向白名单 const whiteList = ['/login', '/welcome'] // 不重定向白名单
// 获取参数
function getUrlKey(name, url) {
// eslint-disable-next-line no-sparse-arrays
return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(url) || [, ''])[1].replace(/\+/g, '%20')) || null
}
router.beforeEach((to, from, next) => { router.beforeEach((to, from, next) => {
if (to.meta.disabled) { if (to.meta.disabled) {
next(false) next(false)
return return
} }
NProgress.start() NProgress.start()
if (window.location.href.indexOf('authkey') >= 0) {
if (!getAuth()) {
store.commit('SET_AUTH', {
authKey: getUrlKey('authkey', window.location.href),
sessionId: getUrlKey('sessionid', window.location.href)
})
} else {
window.location.href = '/'
}
}
/** 请求头包含授权信息 并且 页面必须授权 直接进入 */ /** 请求头包含授权信息 并且 页面必须授权 直接进入 */
if (getAuth()) { if (getAuth()) {
if (whiteList.includes(to.path)) { if (whiteList.includes(to.path)) {

@ -3,6 +3,9 @@ import {
crmCustomerNumForC crmCustomerNumForC
} from '@/api/crm/message' } from '@/api/crm/message'
import {
adminUsersReadAPI
} from '@/api/user/personCenter'
/** /**
* 消息记录 * 消息记录
*/ */
@ -45,6 +48,16 @@ const app = {
commit commit
}) { }) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
adminUsersReadAPI().then(response => {
if (response.data.id == 1) {
crmCustomerNumForC().then(res => {
commit('SET_CUSTOMERNUM', res.data)
}).catch(() => {})
}
}).catch(error => {
reject(error)
})
crmMessagNumAPI() crmMessagNumAPI()
.then(response => { .then(response => {
commit('SET_MESSAGENUM', response.data) commit('SET_MESSAGENUM', response.data)
@ -54,9 +67,7 @@ const app = {
.catch(error => { .catch(error => {
reject(error) reject(error)
}) })
crmCustomerNumForC().then(res => {
commit('SET_CUSTOMERNUM', res.data)
}).catch(() => {})
}) })
} }

@ -49,11 +49,11 @@ if (window.location.href.indexOf('index.html') != -1) {
} else { } else {
hrefs = window.location.href.split('#') hrefs = window.location.href.split('#')
} }
const baseURL = hrefs.length > 0 ? hrefs[0] : window.location.href // const baseURL = hrefs.length > 0 ? hrefs[0] : window.location.href
// baseURL + 'index.php/' 默认请求地址 // baseURL + 'index.php/' 默认请求地址
// process.env.BASE_API 自定义请求地址 // process.env.BASE_API 自定义请求地址
window.BASE_URL = process.env.NODE_ENV === 'production' ? baseURL + 'index.php/' : process.env.BASE_API window.BASE_URL = process.env.BASE_API
const service = axios.create({ const service = axios.create({
baseURL: window.BASE_URL, // api 的 base_url baseURL: window.BASE_URL, // api 的 base_url

@ -28,7 +28,7 @@
<el-table <el-table
v-loading="loading" v-loading="loading"
:data="listData" :data="listData"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
border border
class="n-table--border" class="n-table--border"

@ -86,7 +86,7 @@
<el-table <el-table
id="task-set-table" id="task-set-table"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-style="cellStyle" :cell-style="cellStyle"
border border
header-align="center" header-align="center"

@ -11,7 +11,7 @@
<div class="business-table"> <div class="business-table">
<el-table <el-table
:data="businessData" :data="businessData"
:height="tableHeight" :height="tableHeight+300"
:header-cell-style="headerCellStyle" :header-cell-style="headerCellStyle"
style="width: 100%" style="width: 100%"
stripe> stripe>

@ -12,7 +12,7 @@
<el-table <el-table
v-loading="loading" v-loading="loading"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:header-cell-style="headerCellStyle" :header-cell-style="headerCellStyle"
style="width: 100%" style="width: 100%"
stripe> stripe>

@ -8,7 +8,7 @@
<el-table <el-table
v-loading="loading" v-loading="loading"
:data="tableList" :data="tableList"
:height="tableHeight" :height="tableHeight+300"
highlight-current-row highlight-current-row
style="width: 100%"> style="width: 100%">
<el-table-column <el-table-column

@ -46,8 +46,8 @@
<div class="row-label">客户类型</div> <div class="row-label">客户类型</div>
<div class="row-content"> <div class="row-content">
<el-select <el-select
v-model="baseFrom.customer_type" multiple filterable allow-create default-first-option v-model="baseFrom.customer_type" :placeholder="placeholderText" multiple filterable allow-create
placeholder="请选择客户类型" class="customer_select"> default-first-option class="customer_select">
<el-option v-for="item in options" :key="item.index" :label="item.index" :value="item" /> <el-option v-for="item in options" :key="item.index" :label="item.index" :value="item" />
</el-select> </el-select>
</div> </div>
@ -193,6 +193,7 @@ export default {
} }
return { return {
placeholderText: '',
options: [], options: [],
loading: false, loading: false,
baseFrom: null, baseFrom: null,
@ -275,6 +276,7 @@ export default {
item.type = 'user' item.type = 'user'
}) })
} }
this.placeholderText = data.customer_type
this.baseFrom = { this.baseFrom = {
pool_name: data.pool_name, pool_name: data.pool_name,
adminUsers: data.admin_user_info, adminUsers: data.admin_user_info,
@ -344,6 +346,7 @@ export default {
users: [], users: [],
strucs: [] strucs: []
}, },
customer_type: '',
before_owner_conf: 0, // 0 1 before_owner_conf: 0, // 0 1
before_owner_day: '', before_owner_day: '',
receive_conf: 0, // 0 1 receive_conf: 0, // 0 1
@ -524,7 +527,6 @@ export default {
params.customer_type = this.baseFrom.customer_type.map(item => { params.customer_type = this.baseFrom.customer_type.map(item => {
return item return item
}).join(',') }).join(',')
console.log(params.customer_type)
} else { } else {
params[key] = this.baseFrom[key] params[key] = this.baseFrom[key]
} }

@ -59,6 +59,12 @@
</flexbox> </flexbox>
<create-sections title="规则设置"> <create-sections title="规则设置">
<div class="rule"> <div class="rule">
<flexbox
align="stretch"
class="rule-item">
<div class="label">客户类型</div>
<div class="value">{{ detail.customer_type }}</div>
</flexbox>
<flexbox <flexbox
align="stretch" align="stretch"
class="rule-item"> class="rule-item">

@ -19,7 +19,7 @@
v-loading="loading" v-loading="loading"
id="examine-table" id="examine-table"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
class="main-table" class="main-table"
highlight-current-row highlight-current-row

@ -19,7 +19,7 @@
v-loading="loading" v-loading="loading"
id="examine-table" id="examine-table"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
class="main-table" class="main-table"
stripe stripe

@ -150,7 +150,7 @@
v-loading="loading" v-loading="loading"
id="depTable" id="depTable"
:data="tableData" :data="tableData"
:height="tableHeight" :height="tableHeight+300"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
@row-click="rowClick"> @row-click="rowClick">
<el-table-column <el-table-column

@ -16,7 +16,7 @@
v-loading="loading" v-loading="loading"
id="examine-table" id="examine-table"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
class="main-table" class="main-table"
highlight-current-row highlight-current-row

@ -46,7 +46,7 @@
<el-table <el-table
v-loading="loading" v-loading="loading"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
class="main-table" class="main-table"
highlight-current-row highlight-current-row
style="width: 100%"> style="width: 100%">

@ -27,7 +27,7 @@
<el-table <el-table
v-loading="loading" v-loading="loading"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
class="main-table" class="main-table"
highlight-current-row highlight-current-row

@ -38,7 +38,7 @@
<el-table <el-table
v-loading="loading" v-loading="loading"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
class="main-table" class="main-table"
highlight-current-row highlight-current-row
style="width: 100%"> style="width: 100%">

@ -11,7 +11,7 @@
v-loading="loading" v-loading="loading"
id="examine-table" id="examine-table"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
class="main-table" class="main-table"
stripe stripe

@ -19,7 +19,7 @@
v-loading="loading" v-loading="loading"
id="examine-table" id="examine-table"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
class="main-table" class="main-table"
highlight-current-row highlight-current-row
style="width: 100%" style="width: 100%"

@ -94,7 +94,7 @@
</flexbox> </flexbox>
<el-table <el-table
:data="tableData" :data="tableData"
:height="tableHeight" :height="tableHeight+300"
style="width: 100%"> style="width: 100%">
<el-table-column <el-table-column
v-for="(item, index) in tableList" v-for="(item, index) in tableList"

@ -21,7 +21,7 @@
<el-table <el-table
v-if="showTable" v-if="showTable"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
border border
highlight-current-row highlight-current-row

@ -21,7 +21,7 @@
<el-table <el-table
v-if="showTable" v-if="showTable"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
border border
highlight-current-row highlight-current-row

@ -17,7 +17,7 @@
<div class="table-content"> <div class="table-content">
<el-table <el-table
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
border border
highlight-current-row highlight-current-row

@ -17,7 +17,7 @@
<div class="table-content"> <div class="table-content">
<el-table <el-table
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
border border
highlight-current-row highlight-current-row

@ -18,7 +18,7 @@
<el-table <el-table
v-if="showTable" v-if="showTable"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-style="cellStyle" :cell-style="cellStyle"
stripe stripe
border border

@ -18,7 +18,7 @@
<el-table <el-table
v-if="showTable" v-if="showTable"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
border border
highlight-current-row highlight-current-row

@ -18,7 +18,7 @@
id="crm-table" id="crm-table"
ref="tableRef" ref="tableRef"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
:summary-method="getSummaries" :summary-method="getSummaries"
show-summary show-summary

@ -164,6 +164,32 @@
</flexbox> </flexbox>
</flexbox> </flexbox>
</div> </div>
<el-dialog
:visible.sync="dialogVisible"
:title="dialogTitle"
:modal="false"
width="30%">
<p>{{ dialogMessage }}</p>
<el-input
v-model="commentContent"
type="textarea"
rows="4"
autocomplete="off"
placeholder="请输入内容"/>
<p>审核人</p>
<el-select
v-model="selectValue"
:clearable="true"
:filterable="true"
placeholder="请选择"
>
<el-option v-for="(item) in userOptions" :key="item.id" :value="item.id" :label="item.username"/>
</el-select>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="dialogConfirm()"> </el-button>
</span>
</el-dialog>
<el-button <el-button
class="firse-button" class="firse-button"
@ -248,7 +274,13 @@ export default {
data() { data() {
return { return {
// loading // loading
dialogVisible: false,
dialogTitle: '',
dialogMessage: '',
dialogData: {},
commentContent: '',
userOptions: [], userOptions: [],
selectValue: '',
value: '', value: '',
inputValue: '', inputValue: '',
loading: false, loading: false,
@ -599,147 +631,34 @@ export default {
// //
return return
} }
this.dialogVisible = true
this.dialogData = item
/** 输单 和 无效 */ /** 输单 和 无效 */
if (item.type == 2 || item.type == 3) { if (item.type == 2 || item.type == 3) {
var message = '请填写' + item.name + '原因:' this.dialogTitle = item.name + '原因'
var title = item.name + '原因' this.dialogMessage = '请填写' + item.name + '原因:'
const h = this.$createElement
const msgBoxContent = h('div', [
h('p', message),
h('textarea', {
attrs: {
class: 'el-textarea__inner',
autocomplete: 'off',
rows: 4,
id: 'commentContent'
},
domProps: {
value: this.commentContent
},
on: { input: v => {
this.commentContent = v.target.value
} }
}),
h('p', '审核人:'),
h('el-select', {
ref: 'selectView',
props: {
clearable: true,
filterable: true,
placeholder: '请选择',
value: this.value
},
on: {
input: val => {
this.value = val
// console.log(val)
},
change: e => {
this.value = e
this.$refs['selectView'].value = e
}
}
}, this.userOptions.map(option => {
return h('el-option', {
props: {
value: option.id,
label: option.username
}
})
}))
])
this.$msgbox({
title: title,
message: msgBoxContent,
showCancelButton: true,
confirmButtonText: '确定',
cancelButtonText: '取消'
})
.then(({ value }) => {
this.loading = true
const commentContent = document.getElementById('commentContent').value
crmBusinessAdvanceAPI({
check_user_id: this.$refs['selectView'].value,
business_id: this.id,
status_id: item.status_id,
is_end: item.type,
statusRemark: commentContent
})
.then(res => {
this.loading = false
this.$message.success('操作成功')
this.getDetial()
})
.catch(() => {
this.loading = false
})
})
.catch(() => {})
} else { } else {
var title = item.name this.dialogTitle = item.name
const h = this.$createElement
const msgBoxContent = h('div', [
h('p', '审核人:'),
h('el-select', {
ref: 'selectView',
props: {
clearable: true,
filterable: true,
placeholder: '请选择',
value: this.value
},
on: {
input: val => {
this.value = val
// console.log(val)
},
change: e => {
this.value = e
this.$refs['selectView'].value = e
}
}
}, this.userOptions.map(option => {
return h('el-option', {
props: {
value: option.id,
label: option.username
} }
}) },
})) dialogConfirm() {
])
this.$msgbox({
title: title,
message: msgBoxContent,
showCancelButton: true,
confirmButtonText: '确定',
cancelButtonText: '取消'
})
.then(() => {
this.isContract = true
this.createClick()
this.loading = true this.loading = true
crmBusinessAdvanceAPI({ crmBusinessAdvanceAPI({
check_user_id: this.$refs['selectView'].value, check_user_id: this.selectValue,
business_id: this.id, business_id: this.id,
status_id: item.status_id, status_id: this.dialogData.status_id,
is_end: item.type is_end: this.dialogData.type,
statusRemark: this.commentContent
}) })
.then(res => { .then(res => {
this.loading = false this.loading = false
this.$message.success('操作成功') this.$message.success('操作成功')
this.dialogVisible = false
this.getDetial() this.getDetial()
}) })
.catch(() => { .catch(() => {
this.loading = false this.loading = false
}) })
// this.crmType = 'contract'
// this.action.type = 'save'
// this.createClick()
})
.catch(() => {})
}
}, },
/** /**
* 审核操作 * 审核操作

@ -27,7 +27,7 @@
id="crm-table" id="crm-table"
:row-height="40" :row-height="40"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
:header-cell-class-name="headerCellClassName" :header-cell-class-name="headerCellClassName"
class="n-table--border" class="n-table--border"

@ -48,7 +48,7 @@
</flexbox> </flexbox>
<el-table <el-table
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;" style="width: 100%;border: 1px solid #E6E6E6;"

@ -49,7 +49,7 @@
<el-table <el-table
v-show="fieldList.length > 0" v-show="fieldList.length > 0"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;" style="width: 100%;border: 1px solid #E6E6E6;"
@ -67,6 +67,10 @@
:prop="item.prop" :prop="item.prop"
:label="item.label" :label="item.label"
show-overflow-tooltip /> show-overflow-tooltip />
<el-table-column
label="微信账号"
prop="crm_lnxvis"
width="100" />
<el-table-column <el-table-column
label="操作" label="操作"
width="100"> width="100">
@ -248,7 +252,7 @@ export default {
label: '姓名' label: '姓名'
}) })
this.fieldList.push({ prop: 'mobile', width: '200', label: '手机' }) this.fieldList.push({ prop: 'mobile', width: '200', label: '手机' })
this.fieldList.push({ prop: 'post', width: '200', label: '职务' }) this.fieldList.push({ prop: 'crm_mlffgs', width: '200', label: '职务' })
}, },
/** /**

@ -17,7 +17,7 @@
</flexbox> </flexbox>
<el-table <el-table
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;" style="width: 100%;border: 1px solid #E6E6E6;"

@ -18,7 +18,7 @@
</flexbox> </flexbox>
<el-table <el-table
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
class="file-table" class="file-table"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;" style="width: 100%;border: 1px solid #E6E6E6;"

@ -12,7 +12,7 @@
</flexbox> </flexbox>
<el-table <el-table
:data="titleList" :data="titleList"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;"> style="width: 100%;border: 1px solid #E6E6E6;">
<el-table-column <el-table-column
@ -53,7 +53,7 @@
</flexbox> </flexbox>
<el-table <el-table
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;" style="width: 100%;border: 1px solid #E6E6E6;"

@ -8,7 +8,7 @@
<el-table <el-table
v-show="fieldList.length > 0" v-show="fieldList.length > 0"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;"> style="width: 100%;border: 1px solid #E6E6E6;">
<el-table-column <el-table-column

@ -10,7 +10,7 @@
direction="row-reverse"/> direction="row-reverse"/>
<el-table <el-table
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;" style="width: 100%;border: 1px solid #E6E6E6;"

@ -12,7 +12,7 @@
</flexbox> </flexbox>
<el-table <el-table
:data="palnList" :data="palnList"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;"> style="width: 100%;border: 1px solid #E6E6E6;">
<el-table-column <el-table-column
@ -51,7 +51,7 @@
</flexbox> </flexbox>
<el-table <el-table
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;" style="width: 100%;border: 1px solid #E6E6E6;"

@ -27,7 +27,7 @@
</flexbox> </flexbox>
<el-table <el-table
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;" style="width: 100%;border: 1px solid #E6E6E6;"
@selection-change="handleSelectionChange"> @selection-change="handleSelectionChange">

@ -17,7 +17,7 @@
<el-table <el-table
v-show="fieldList.length > 0" v-show="fieldList.length > 0"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
stripe stripe
style="width: 100%;border: 1px solid #E6E6E6;" style="width: 100%;border: 1px solid #E6E6E6;"

@ -18,7 +18,7 @@
<div class="scene-list-head-detail">{{ leftCheckItems.length + '/' + checkedLeftData.length }}</div> <div class="scene-list-head-detail">{{ leftCheckItems.length + '/' + checkedLeftData.length }}</div>
</flexbox> </flexbox>
<div class="scene-list-body"> <div class="scene-list-body">
<flexbox <!-- <flexbox
v-for="(item, index) in checkedLeftData" v-for="(item, index) in checkedLeftData"
v-if="item.type == 1" v-if="item.type == 1"
:key="index" :key="index"
@ -44,7 +44,7 @@
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
</flexbox> </flexbox> -->
<draggable <draggable
v-model="checkedLeftData" v-model="checkedLeftData"
:move="leftMove" :move="leftMove"
@ -53,7 +53,6 @@
@end="leftMoveEnd"> @end="leftMoveEnd">
<flexbox <flexbox
v-for="(item, index) in checkedLeftData" v-for="(item, index) in checkedLeftData"
v-if="item.type != 1"
:key="index" :key="index"
class="list-item"> class="list-item">
<div <div

@ -27,7 +27,7 @@
id="crm-table" id="crm-table"
:row-height="40" :row-height="40"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
:header-cell-class-name="headerCellClassName" :header-cell-class-name="headerCellClassName"
class="n-table--border" class="n-table--border"

@ -27,7 +27,7 @@
id="crm-table" id="crm-table"
:row-height="40" :row-height="40"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
:header-cell-class-name="headerCellClassName" :header-cell-class-name="headerCellClassName"
class="n-table--border" class="n-table--border"

@ -43,7 +43,7 @@
id="crm-table" id="crm-table"
:row-height="50" :row-height="50"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
class="n-table--border" class="n-table--border"
use-virtual use-virtual

@ -28,7 +28,7 @@
id="crm-table" id="crm-table"
:row-height="40" :row-height="40"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
:header-cell-class-name="headerCellClassName" :header-cell-class-name="headerCellClassName"
use-virtual use-virtual

@ -43,7 +43,7 @@
id="crm-table" id="crm-table"
:row-height="40" :row-height="40"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
class="n-table--border" class="n-table--border"
use-virtual use-virtual

@ -79,7 +79,7 @@
v-loading="loading" v-loading="loading"
id="crm-table" id="crm-table"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
class="n-table--border" class="n-table--border"
stripe stripe

@ -1,38 +1,19 @@
<template> <template>
<div style="height:100%;"> <div style="height:100%;">
<flexbox class="message-header"><img <flexbox class="message-header"><img src="@/assets/img/crm/todo.png" class="title-icon">
src="@/assets/img/crm/todo.png"
class="title-icon">
<span class="title">待办事项</span> <span class="title">待办事项</span>
</flexbox> </flexbox>
<div class="message-body"> <div class="message-body">
<div <div v-loading="loading" class="message-content">
v-loading="loading"
class="message-content">
<div class="message-body-side"> <div class="message-body-side">
<xr-menu-item <xr-menu-item v-for="(item, index) in showLeftSides" :key="index" :label="item.name" :num="item.num"
v-for="(item, index) in showLeftSides" :icon-class="item.iconClass" :icon-color="item.color" :select="leftType == item.infoType"
:key="index" @click.native="sideClick(item)" />
:label="item.name"
:num="item.num"
:icon-class="item.iconClass"
:icon-color="item.color"
:select="leftType==item.infoType"
@click.native="sideClick(item)"/>
</div> </div>
<div class="message-body-content"> <div class="message-body-content">
<c-r-m-message <c-r-m-message v-for="(item, index) in showLeftSides" v-show="leftType == item.infoType" :key="index"
v-for="(item, index) in showLeftSides" :crm-type="item.crmType" :info-type="item.infoType" :info-title="item.name" :info-tips="item.tips"
v-show="leftType==item.infoType" :model="item.model" :show="leftType == item.infoType" :icon-data="item" @on-handle="messageHandle" />
:key="index"
:crm-type="item.crmType"
:info-type="item.infoType"
:info-title="item.name"
:info-tips="item.tips"
:model="item.model"
:show="leftType==item.infoType"
:icon-data="item"
@on-handle="messageHandle"/>
</div> </div>
</div> </div>
</div> </div>
@ -62,17 +43,6 @@ export default {
* model 1今日需联系客户 2分配给我的线索 3分配给我的客户 4待进入公海的客户 5待审核合同 6待审核回款 7待回款提醒 8即将到期的合同 9待回访合同 10待审核发票 13待审核商机 14新商机 * model 1今日需联系客户 2分配给我的线索 3分配给我的客户 4待进入公海的客户 5待审核合同 6待审核回款 7待回款提醒 8即将到期的合同 9待回访合同 10待审核发票 13待审核商机 14新商机
*/ */
leftSides: [ leftSides: [
{
name: '今日需联系线索',
crmType: 'leads',
color: '#2362FB',
iconClass: 'wk wk-leads',
infoType: 'todayLeads',
model: 11,
num: 0,
tips: '下次跟进时间为今日的线索',
hidden: true
},
{ {
name: '今日需联系客户', name: '今日需联系客户',
crmType: 'customer', crmType: 'customer',
@ -95,17 +65,6 @@ export default {
tips: '下次跟进时间为今日的商机', tips: '下次跟进时间为今日的商机',
hidden: true hidden: true
}, },
{
name: '分配给我的线索',
crmType: 'leads',
color: '#704AFD',
iconClass: 'wk wk-leads',
infoType: 'followLeads',
model: 2,
num: 0,
tips: '转移之后未跟进的线索',
hidden: true
},
{ {
name: '分配给我的客户', name: '分配给我的客户',
crmType: 'customer', crmType: 'customer',
@ -128,6 +87,50 @@ export default {
tips: '', tips: '',
hidden: true hidden: true
}, },
{
name: '待回访合同',
crmType: 'contract',
color: '#ff9232',
iconClass: 'wk wk-house',
infoType: 'returnVisitRemind',
model: 9,
num: 0,
tips: '',
hidden: true
},
{
name: '新商机',
crmType: 'business',
color: '#704AFD',
iconClass: 'wk wk-business',
infoType: 'newBusiness',
model: 14,
num: 0,
tips: '',
hidden: true
},
{
name: '待审核商机',
crmType: 'business',
color: '#704AFD',
iconClass: 'wk wk-business',
infoType: 'checkBusiness',
model: 13,
num: 0,
tips: '',
hidden: true
},
{
name: '审批客户捞取',
crmType: 'customer',
color: '#704AFD',
iconClass: 'wk wk-customer',
infoType: 'checkCustomerCheck',
model: 15,
num: 0,
tips: '',
hidden: true
},
{ {
name: '待审核合同', name: '待审核合同',
crmType: 'contract', crmType: 'contract',
@ -139,6 +142,31 @@ export default {
tips: '', tips: '',
hidden: true hidden: true
}, },
{
name: '今日需联系线索',
crmType: 'leads',
color: '#2362FB',
iconClass: 'wk wk-leads',
infoType: 'todayLeads',
model: 11,
num: 0,
tips: '下次跟进时间为今日的线索',
hidden: true
},
{
name: '分配给我的线索',
crmType: 'leads',
color: '#704AFD',
iconClass: 'wk wk-leads',
infoType: 'followLeads',
model: 2,
num: 0,
tips: '转移之后未跟进的线索',
hidden: true
},
{ {
name: '待审核回款', name: '待审核回款',
crmType: 'receivables', crmType: 'receivables',
@ -161,28 +189,6 @@ export default {
tips: '', tips: '',
hidden: true hidden: true
}, },
{
name: '即将到期的合同',
crmType: 'contract',
color: '#FF7A38',
iconClass: 'wk wk-contract',
infoType: 'endContract',
model: 8,
num: 0,
tips: '根据“合同到期时间”及设置的“提前提醒天数”提醒',
hidden: true
},
{
name: '待回访合同',
crmType: 'contract',
color: '#ff9232',
iconClass: 'wk wk-house',
infoType: 'returnVisitRemind',
model: 9,
num: 0,
tips: '',
hidden: true
},
{ {
name: '待审核发票', name: '待审核发票',
crmType: 'invoice', crmType: 'invoice',
@ -195,36 +201,14 @@ export default {
hidden: true hidden: true
}, },
{ {
name: '待审核商机', name: '即将到期的合同',
crmType: 'business', crmType: 'contract',
color: '#704AFD', color: '#FF7A38',
iconClass: 'wk wk-business', iconClass: 'wk wk-contract',
infoType: 'checkBusiness', infoType: 'endContract',
model: 13, model: 8,
num: 0,
tips: '',
hidden: true
},
{
name: '新商机',
crmType: 'business',
color: '#704AFD',
iconClass: 'wk wk-business',
infoType: 'newBusiness',
model: 14,
num: 0,
tips: '',
hidden: true
},
{
name: '审批客户捞取',
crmType: 'customer',
color: '#704AFD',
iconClass: 'wk wk-customer',
infoType: 'checkCustomerCheck',
model: 15,
num: 0, num: 0,
tips: '', tips: '根据“合同到期时间”及设置的“提前提醒天数”提醒',
hidden: true hidden: true
} }
] ]
@ -318,6 +302,7 @@ export default {
.message-header { .message-header {
margin-left: 28px; margin-left: 28px;
height: 60px; height: 60px;
.title-icon { .title-icon {
width: 30px; width: 30px;
height: 30px; height: 30px;
@ -329,11 +314,13 @@ export default {
font-weight: 600; font-weight: 600;
} }
} }
.message-body { .message-body {
position: relative; position: relative;
height: calc(100% - 75px); height: calc(100% - 75px);
padding-left: 15px; padding-left: 15px;
} }
.message-content { .message-content {
position: relative; position: relative;
height: 100%; height: 100%;
@ -352,6 +339,7 @@ export default {
border: 1px solid $xr-border-line-color; border: 1px solid $xr-border-line-color;
border-radius: $xr-border-radius-base; border-radius: $xr-border-radius-base;
overflow-y: auto; overflow-y: auto;
.side-item { .side-item {
position: relative; position: relative;
height: 50px; height: 50px;
@ -359,11 +347,13 @@ export default {
padding: 0 20px; padding: 0 20px;
font-size: 13px; font-size: 13px;
cursor: pointer; cursor: pointer;
i { i {
color: #999; color: #999;
} }
} }
} }
.message-body-content { .message-body-content {
margin-left: 210px; margin-left: 210px;
height: 100%; height: 100%;
@ -372,5 +362,4 @@ export default {
border: 1px solid #e6e6e6; border: 1px solid #e6e6e6;
border-radius: $xr-border-radius-base; border-radius: $xr-border-radius-base;
} }
</style> </style>

@ -27,7 +27,7 @@
id="crm-table" id="crm-table"
:row-height="40" :row-height="40"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
class="n-table--border" class="n-table--border"
use-virtual use-virtual

@ -27,7 +27,7 @@
id="crm-table" id="crm-table"
:row-height="40" :row-height="40"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
:header-cell-class-name="headerCellClassName" :header-cell-class-name="headerCellClassName"
class="n-table--border" class="n-table--border"

@ -59,7 +59,7 @@
id="crm-table" id="crm-table"
:row-height="40" :row-height="40"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
class="n-table--border" class="n-table--border"
use-virtual use-virtual

@ -28,7 +28,7 @@
id="crm-table" id="crm-table"
:row-height="40" :row-height="40"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
:header-cell-class-name="headerCellClassName" :header-cell-class-name="headerCellClassName"
class="n-table--border" class="n-table--border"

@ -34,7 +34,7 @@
id="crm-table" id="crm-table"
ref="crmTable" ref="crmTable"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
stripe stripe
border border

@ -150,11 +150,11 @@ export default {
}, },
getWin() { getWin() {
console.log('aa' + this.dataList) console.log('aa' + this.dataList)
this.$emit('chart-click', [], this.dataList[4]) this.$emit('chart-click', [], this.dataList[2])
}, },
getLose() { getLose() {
console.log('aa' + this.dataList) console.log('aa' + this.dataList)
this.$emit('chart-click', [], this.dataList[5]) this.$emit('chart-click', [], this.dataList[3])
}, },
/** /**
* 获取统计数据 * 获取统计数据

@ -162,11 +162,6 @@ export default {
divided: false, divided: false,
label: '基本信息', label: '基本信息',
icon: 'wk wk-user' icon: 'wk wk-user'
}, {
command: 'help',
divided: true,
label: '帮助中心',
icon: 'wk wk-help'
}, { }, {
command: 'logOut', command: 'logOut',
divided: false, divided: false,

@ -55,9 +55,6 @@
:style="{ 'background-color':variables.menuBg }" :style="{ 'background-color':variables.menuBg }"
class="sidebar-bottom"> class="sidebar-bottom">
<div class="sidebar-bottom-content"> <div class="sidebar-bottom-content">
<div v-if="!collapse" class="copyright">
<img src="@/assets/img/favicon.png" width="20px" >
</div>
<img <img
:style="{ 'right': buttonCollapse ? '3px' : '0' }" :style="{ 'right': buttonCollapse ? '3px' : '0' }"
:class="{ 'is-close': collapse }" :class="{ 'is-close': collapse }"
@ -171,12 +168,14 @@ export default {
background-color: $menuBg; background-color: $menuBg;
overflow: auto; overflow: auto;
flex-shrink: 0; flex-shrink: 0;
padding: 0 5px;
.scrollbar-wrapper { .scrollbar-wrapper {
overflow-x: hidden !important; overflow-x: hidden !important;
} }
.el-scrollbar { .el-scrollbar {
margin: 0 5px;
height: 100%; height: 100%;
} }

@ -10,7 +10,7 @@
<el-table <el-table
id="crm-table" id="crm-table"
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
class="n-table--border" class="n-table--border"
stripe stripe
highlight-current-row highlight-current-row

@ -5,7 +5,7 @@
<div class="attachment-body"> <div class="attachment-body">
<el-table <el-table
:data="list" :data="list"
:height="tableHeight" :height="tableHeight+300"
:header-cell-style="headerRowStyle" :header-cell-style="headerRowStyle"
:cell-style="cellStyle" :cell-style="cellStyle"
align="center" align="center"

@ -28,7 +28,7 @@
v-loading="loading" v-loading="loading"
:data="list" :data="list"
:cell-class-name="cellClassName" :cell-class-name="cellClassName"
:height="tableHeight" :height="tableHeight+300"
stripe stripe
border border
highlight-current-row highlight-current-row

Loading…
Cancel
Save