Merge remote-tracking branch 'origin/branch20211008'
This commit is contained in:
+20
-1
@@ -18,8 +18,27 @@ window.addEventListener('message', function (event) {
|
||||
document.getElementsByClassName('tab-layout-tabs ant-tabs ant-tabs-top')[0].style.display = 'none'
|
||||
}, 1000)
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
document.onkeydown = keyDown
|
||||
|
||||
function keyDown(e) {
|
||||
console.log(navigator.userAgent)
|
||||
// 拦截backspace按钮,谷歌浏览器不需要拦截
|
||||
// 拦截仍然存在的问题:当input、textarea失去焦点后,仍然会后退页面
|
||||
if (e.keyCode === 8 && navigator.userAgent.indexOf('AppleWebKit') === -1 ) {
|
||||
// 判断是不是在input或textarea触发backspace按钮事件
|
||||
if (window.event.srcElement.tagName.toUpperCase() === 'INPUT' || window.event.srcElement.tagName.toUpperCase() === 'TEXTAREA') {
|
||||
// 判断输入框中是否还有值可删除
|
||||
if (window.event.srcElement.value.length === 1) {
|
||||
// 拦截事件
|
||||
e.keyCode=0
|
||||
e.returnValue=false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
|
||||
+1
-1
@@ -113,7 +113,7 @@ const getContactsByCompany = (params) => getAction('/company/payContactsManageme
|
||||
// 通过企业名称获取该企业下的联系人无权限接口
|
||||
const getContactsByCompanyNoLimit = (params) => getAction('/company/payContactsManagement/queryByCompanyMeeting', params)
|
||||
// 通过联系人id获取联系人信息
|
||||
const getContactsById = (param) => getAction('/company/payContactsManagement/queryByIdMeeting', param)
|
||||
const getContactsById = (param) => getAction('/company/payContactsManagement/queryByIdGetContract', param)
|
||||
|
||||
// 加密获取key 与 iv
|
||||
const getKeyIv = (param) => getAction('/sys/getEncryptedString',param)
|
||||
|
||||
@@ -160,7 +160,8 @@ export default {
|
||||
this.$refs.contactForm.disableSubmit = false
|
||||
return
|
||||
}
|
||||
this.$message.warn('请先选择来款企业再为该企业新建联系人')
|
||||
// 调用无权限的提示语修改
|
||||
this.$message.warn('请先选择企业再为该企业新建联系人')
|
||||
},
|
||||
addContactsOk(id) {
|
||||
this.getContactsList().then(() => {
|
||||
|
||||
+188
-181
@@ -4,7 +4,7 @@
|
||||
<a-dropdown>
|
||||
<span class="action action-full ant-dropdown-link user-dropdown-menu">
|
||||
<a-avatar class="avatar" size="small" :src="getAvatar()"/>
|
||||
<span v-if="isDesktop()">欢迎您,{{ nickname() }}</span>
|
||||
<span v-if="isDesktop()"><j-ellipsis :value="`欢迎您,${nickname()}`" :length="10"></j-ellipsis></span>
|
||||
</span>
|
||||
<a-menu slot="overlay" class="user-dropdown-menu-wrapper">
|
||||
<a-menu-item key="0">
|
||||
@@ -19,9 +19,9 @@
|
||||
<span>账户设置</span>
|
||||
</router-link>
|
||||
</a-menu-item>
|
||||
<a-menu-item key="3" @click="systemSetting">
|
||||
<a-icon type="tool"/>
|
||||
<span>系统设置</span>
|
||||
<a-menu-item key="3" @click="systemSetting">
|
||||
<a-icon type="tool"/>
|
||||
<span>系统设置</span>
|
||||
</a-menu-item>
|
||||
<a-menu-item key="4" @click="updatePassword">
|
||||
<a-icon type="setting"/>
|
||||
@@ -35,17 +35,17 @@
|
||||
<a-icon type="sync"/>
|
||||
<span>清理缓存</span>
|
||||
</a-menu-item>
|
||||
<!-- <a-menu-item key="2" disabled>
|
||||
<a-icon type="setting"/>
|
||||
<span>测试</span>
|
||||
</a-menu-item>
|
||||
<a-menu-divider/>
|
||||
<a-menu-item key="3">
|
||||
<a href="javascript:;" @click="handleLogout">
|
||||
<a-icon type="logout"/>
|
||||
<span>退出登录</span>
|
||||
</a>
|
||||
</a-menu-item>-->
|
||||
<!-- <a-menu-item key="2" disabled>
|
||||
<a-icon type="setting"/>
|
||||
<span>测试</span>
|
||||
</a-menu-item>
|
||||
<a-menu-divider/>
|
||||
<a-menu-item key="3">
|
||||
<a href="javascript:;" @click="handleLogout">
|
||||
<a-icon type="logout"/>
|
||||
<span>退出登录</span>
|
||||
</a>
|
||||
</a-menu-item>-->
|
||||
</a-menu>
|
||||
</a-dropdown>
|
||||
<span class="action">
|
||||
@@ -61,194 +61,201 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import HeaderNotice from './HeaderNotice'
|
||||
import UserPassword from './UserPassword'
|
||||
import SettingDrawer from '@/components/setting/SettingDrawer'
|
||||
import DepartSelect from './DepartSelect'
|
||||
import { mapActions, mapGetters,mapState } from 'vuex'
|
||||
import { mixinDevice } from '@/utils/mixin.js'
|
||||
import { getFileAccessHttpUrl,getAction } from '@/api/manage'
|
||||
import Vue from 'vue'
|
||||
import { UI_CACHE_DB_DICT_DATA } from '@/store/mutation-types'
|
||||
import HeaderNotice from './HeaderNotice'
|
||||
import UserPassword from './UserPassword'
|
||||
import SettingDrawer from '@/components/setting/SettingDrawer'
|
||||
import DepartSelect from './DepartSelect'
|
||||
import { mapActions, mapGetters, mapState } from 'vuex'
|
||||
import { mixinDevice } from '@/utils/mixin.js'
|
||||
import { getFileAccessHttpUrl, getAction } from '@/api/manage'
|
||||
import Vue from 'vue'
|
||||
import { UI_CACHE_DB_DICT_DATA } from '@/store/mutation-types'
|
||||
|
||||
export default {
|
||||
name: 'UserMenu',
|
||||
mixins: [mixinDevice],
|
||||
data(){
|
||||
return{
|
||||
// update-begin author:sunjianlei date:20200219 for: 头部菜单搜索规范命名 --------------
|
||||
searchMenuOptions:[],
|
||||
searchMenuComp: 'span',
|
||||
searchMenuVisible: false,
|
||||
// update-begin author:sunjianlei date:20200219 for: 头部菜单搜索规范命名 --------------
|
||||
export default {
|
||||
name: 'UserMenu',
|
||||
mixins: [mixinDevice],
|
||||
data() {
|
||||
return {
|
||||
// update-begin author:sunjianlei date:20200219 for: 头部菜单搜索规范命名 --------------
|
||||
searchMenuOptions: [],
|
||||
searchMenuComp: 'span',
|
||||
searchMenuVisible: false
|
||||
// update-begin author:sunjianlei date:20200219 for: 头部菜单搜索规范命名 --------------
|
||||
}
|
||||
},
|
||||
components: {
|
||||
HeaderNotice,
|
||||
UserPassword,
|
||||
DepartSelect,
|
||||
SettingDrawer
|
||||
},
|
||||
props: {
|
||||
theme: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: 'dark'
|
||||
}
|
||||
},
|
||||
/* update_begin author:zhaoxin date:20191129 for: 做头部菜单栏导航*/
|
||||
created() {
|
||||
let lists = []
|
||||
this.searchMenus(lists, this.permissionMenuList)
|
||||
this.searchMenuOptions = [...lists]
|
||||
},
|
||||
mounted() {
|
||||
//如果是单点登录模式
|
||||
if (process.env.VUE_APP_SSO == 'true') {
|
||||
let depart = this.userInfo().orgCode
|
||||
if (!depart) {
|
||||
this.updateCurrentDepart()
|
||||
}
|
||||
},
|
||||
components: {
|
||||
HeaderNotice,
|
||||
UserPassword,
|
||||
DepartSelect,
|
||||
SettingDrawer
|
||||
},
|
||||
props: {
|
||||
theme: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: 'dark'
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapState({
|
||||
// 后台菜单
|
||||
permissionMenuList: state => state.user.permissionList
|
||||
|
||||
})
|
||||
},
|
||||
/* update_end author:zhaoxin date:20191129 for: 做头部菜单栏导航*/
|
||||
watch: {
|
||||
// update-begin author:sunjianlei date:20200219 for: 菜单搜索改为动态组件,在手机端呈现出弹出框
|
||||
device: {
|
||||
immediate: true,
|
||||
handler() {
|
||||
this.searchMenuVisible = false
|
||||
this.searchMenuComp = this.isMobile() ? 'a-modules' : 'span'
|
||||
}
|
||||
},
|
||||
}
|
||||
// update-end author:sunjianlei date:20200219 for: 菜单搜索改为动态组件,在手机端呈现出弹出框
|
||||
},
|
||||
methods: {
|
||||
/* update_begin author:zhaoxin date:20191129 for: 做头部菜单栏导航*/
|
||||
created() {
|
||||
let lists = []
|
||||
this.searchMenus(lists,this.permissionMenuList)
|
||||
this.searchMenuOptions=[...lists]
|
||||
showClick() {
|
||||
this.searchMenuVisible = true
|
||||
},
|
||||
mounted() {
|
||||
//如果是单点登录模式
|
||||
if (process.env.VUE_APP_SSO == 'true') {
|
||||
let depart = this.userInfo().orgCode
|
||||
if (!depart) {
|
||||
this.updateCurrentDepart()
|
||||
}
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapState({
|
||||
// 后台菜单
|
||||
permissionMenuList: state => state.user.permissionList
|
||||
|
||||
})
|
||||
hiddenClick() {
|
||||
this.shows = false
|
||||
},
|
||||
/* update_end author:zhaoxin date:20191129 for: 做头部菜单栏导航*/
|
||||
watch: {
|
||||
// update-begin author:sunjianlei date:20200219 for: 菜单搜索改为动态组件,在手机端呈现出弹出框
|
||||
device: {
|
||||
immediate: true,
|
||||
handler() {
|
||||
this.searchMenuVisible = false
|
||||
this.searchMenuComp = this.isMobile() ? 'a-modules' : 'span'
|
||||
},
|
||||
},
|
||||
// update-end author:sunjianlei date:20200219 for: 菜单搜索改为动态组件,在手机端呈现出弹出框
|
||||
...mapActions(['Logout']),
|
||||
...mapGetters(['nickname', 'avatar', 'userInfo']),
|
||||
getAvatar() {
|
||||
return getFileAccessHttpUrl(this.avatar())
|
||||
},
|
||||
methods: {
|
||||
/* update_begin author:zhaoxin date:20191129 for: 做头部菜单栏导航*/
|
||||
showClick() {
|
||||
this.searchMenuVisible = true
|
||||
},
|
||||
hiddenClick(){
|
||||
this.shows = false
|
||||
},
|
||||
/* update_end author:zhaoxin date:20191129 for: 做头部菜单栏导航*/
|
||||
...mapActions(['Logout']),
|
||||
...mapGetters(['nickname', 'avatar','userInfo']),
|
||||
getAvatar(){
|
||||
return getFileAccessHttpUrl(this.avatar())
|
||||
},
|
||||
handleLogout() {
|
||||
const that = this
|
||||
handleLogout() {
|
||||
const that = this
|
||||
|
||||
this.$confirm({
|
||||
title: '提示',
|
||||
content: '真的要注销登录吗 ?',
|
||||
onOk() {
|
||||
return that.Logout({}).then(() => {
|
||||
// update-begin author:wangshuai date:20200601 for: 退出登录跳转登录页面
|
||||
that.$router.push({ path: '/user/login' })
|
||||
// update-end author:wangshuai date:20200601 for: 退出登录跳转登录页面
|
||||
//window.location.reload()
|
||||
}).catch(err => {
|
||||
that.$message.error({
|
||||
title: '错误',
|
||||
description: err.message
|
||||
})
|
||||
this.$confirm({
|
||||
title: '提示',
|
||||
content: '真的要注销登录吗 ?',
|
||||
onOk() {
|
||||
return that.Logout({}).then(() => {
|
||||
// update-begin author:wangshuai date:20200601 for: 退出登录跳转登录页面
|
||||
that.$router.push({ path: '/user/login' })
|
||||
// update-end author:wangshuai date:20200601 for: 退出登录跳转登录页面
|
||||
//window.location.reload()
|
||||
}).catch(err => {
|
||||
that.$message.error({
|
||||
title: '错误',
|
||||
description: err.message
|
||||
})
|
||||
},
|
||||
onCancel() {
|
||||
},
|
||||
})
|
||||
},
|
||||
updatePassword(){
|
||||
let username = this.userInfo().username
|
||||
this.$refs.userPassword.show(username)
|
||||
},
|
||||
updateCurrentDepart(){
|
||||
this.$refs.departSelect.show()
|
||||
},
|
||||
systemSetting(){
|
||||
this.$refs.settingDrawer.showDrawer()
|
||||
},
|
||||
/* update_begin author:zhaoxin date:20191129 for: 做头部菜单栏导航*/
|
||||
searchMenus(arr,menus){
|
||||
for(let i of menus){
|
||||
if(!i.hidden && 'layouts/RouteView'!==i.component){
|
||||
arr.push(i)
|
||||
}
|
||||
if(i.children&& i.children.length>0){
|
||||
this.searchMenus(arr,i.children)
|
||||
}
|
||||
})
|
||||
},
|
||||
onCancel() {
|
||||
}
|
||||
},
|
||||
filterOption(input, option) {
|
||||
return option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0
|
||||
},
|
||||
// update_begin author:sunjianlei date:20191230 for: 解决外部链接打开失败的问题
|
||||
searchMethods(value) {
|
||||
let route = this.searchMenuOptions.filter(item => item.id === value)[0]
|
||||
if (route.meta.internalOrExternal === true || route.component.includes('layouts/IframePageView')) {
|
||||
window.open(route.meta.url, '_blank')
|
||||
} else {
|
||||
this.$router.push({ path: route.path })
|
||||
})
|
||||
},
|
||||
updatePassword() {
|
||||
let username = this.userInfo().username
|
||||
this.$refs.userPassword.show(username)
|
||||
},
|
||||
updateCurrentDepart() {
|
||||
this.$refs.departSelect.show()
|
||||
},
|
||||
systemSetting() {
|
||||
this.$refs.settingDrawer.showDrawer()
|
||||
},
|
||||
/* update_begin author:zhaoxin date:20191129 for: 做头部菜单栏导航*/
|
||||
searchMenus(arr, menus) {
|
||||
for (let i of menus) {
|
||||
if (!i.hidden && 'layouts/RouteView' !== i.component) {
|
||||
arr.push(i)
|
||||
}
|
||||
if (i.children && i.children.length > 0) {
|
||||
this.searchMenus(arr, i.children)
|
||||
}
|
||||
this.searchMenuVisible = false
|
||||
},
|
||||
// update_end author:sunjianlei date:20191230 for: 解决外部链接打开失败的问题
|
||||
/*update_end author:zhaoxin date:20191129 for: 做头部菜单栏导航*/
|
||||
/*update_begin author:liushaoqian date:20200507 for: 刷新缓存*/
|
||||
clearCache(){
|
||||
getAction('sys/dict/refleshCache').then((res) => {
|
||||
if (res.success) {
|
||||
//重新加载缓存
|
||||
getAction('sys/dict/queryAllDictItems').then((res) => {
|
||||
if (res.success) {
|
||||
Vue.ls.remove(UI_CACHE_DB_DICT_DATA)
|
||||
Vue.ls.set(UI_CACHE_DB_DICT_DATA, res.result, 7 * 24 * 60 * 60 * 1000)
|
||||
}
|
||||
})
|
||||
this.$message.success('刷新缓存完成!')
|
||||
}
|
||||
}).catch(e=>{
|
||||
this.$message.warn('刷新缓存失败!')
|
||||
console.log('刷新失败',e)
|
||||
})
|
||||
}
|
||||
/*update_end author:liushaoqian date:20200507 for: 刷新缓存*/
|
||||
},
|
||||
filterOption(input, option) {
|
||||
return option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0
|
||||
},
|
||||
// update_begin author:sunjianlei date:20191230 for: 解决外部链接打开失败的问题
|
||||
searchMethods(value) {
|
||||
let route = this.searchMenuOptions.filter(item => item.id === value)[0]
|
||||
if (route.meta.internalOrExternal === true || route.component.includes('layouts/IframePageView')) {
|
||||
window.open(route.meta.url, '_blank')
|
||||
} else {
|
||||
this.$router.push({ path: route.path })
|
||||
}
|
||||
this.searchMenuVisible = false
|
||||
},
|
||||
// update_end author:sunjianlei date:20191230 for: 解决外部链接打开失败的问题
|
||||
/*update_end author:zhaoxin date:20191129 for: 做头部菜单栏导航*/
|
||||
/*update_begin author:liushaoqian date:20200507 for: 刷新缓存*/
|
||||
clearCache() {
|
||||
getAction('sys/dict/refleshCache').then((res) => {
|
||||
if (res.success) {
|
||||
//重新加载缓存
|
||||
getAction('sys/dict/queryAllDictItems').then((res) => {
|
||||
if (res.success) {
|
||||
Vue.ls.remove(UI_CACHE_DB_DICT_DATA)
|
||||
Vue.ls.set(UI_CACHE_DB_DICT_DATA, res.result, 7 * 24 * 60 * 60 * 1000)
|
||||
}
|
||||
})
|
||||
this.$message.success('刷新缓存完成!')
|
||||
}
|
||||
}).catch(e => {
|
||||
this.$message.warn('刷新缓存失败!')
|
||||
console.log('刷新失败', e)
|
||||
})
|
||||
}
|
||||
/*update_end author:liushaoqian date:20200507 for: 刷新缓存*/
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
/* update_begin author:zhaoxin date:20191129 for: 让搜索框颜色能随主题颜色变换*/
|
||||
/* update-begin author:sunjianlei date:20191220 for: 解决全局样式冲突问题 */
|
||||
.user-wrapper .search-input {
|
||||
width: 180px;
|
||||
color: inherit;
|
||||
/* update_begin author:zhaoxin date:20191129 for: 让搜索框颜色能随主题颜色变换*/
|
||||
/* update-begin author:sunjianlei date:20191220 for: 解决全局样式冲突问题 */
|
||||
.user-wrapper .search-input {
|
||||
width: 180px;
|
||||
color: inherit;
|
||||
|
||||
/deep/ .ant-select-selection {
|
||||
background-color: inherit;
|
||||
border: 0;
|
||||
border-bottom: 1px solid white;
|
||||
&__placeholder, &__field__placeholder {
|
||||
color: inherit;
|
||||
}
|
||||
/deep/ .ant-select-selection {
|
||||
background-color: inherit;
|
||||
border: 0;
|
||||
border-bottom: 1px solid white;
|
||||
|
||||
&__placeholder, &__field__placeholder {
|
||||
color: inherit;
|
||||
}
|
||||
}
|
||||
/* update-end author:sunjianlei date:20191220 for: 解决全局样式冲突问题 */
|
||||
/* update_end author:zhaoxin date:20191129 for: 让搜索框颜色能随主题颜色变换*/
|
||||
}
|
||||
|
||||
/* update-end author:sunjianlei date:20191220 for: 解决全局样式冲突问题 */
|
||||
/* update_end author:zhaoxin date:20191129 for: 让搜索框颜色能随主题颜色变换*/
|
||||
|
||||
.user-dropdown-menu-wrapper.ant-dropdown-menu .ant-dropdown-menu-item {
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
|
||||
<style scoped>
|
||||
.logout_title {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
.logout_title {
|
||||
color: inherit;
|
||||
text-decoration: none;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -502,6 +502,7 @@ export default {
|
||||
this.accountsReceivableNum = record.accountsReceivableAmount
|
||||
this.amountReceivedNum = record.amountReceived
|
||||
this.model = Object.assign({}, record)
|
||||
this.getUserDetailByUserId()
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue(pick(this.model, 'contractNum', 'contractName', 'signedCompany', 'signedContactsId', 'opening', 'principalId', 'departmentName', 'contractAmount', 'rate', 'noTaxAmount', 'contractDate', 'terminationDate', 'contractTimePoints', 'accountsReceivableAmount', 'amountReceived', 'outstandingAmount', 'accountStatus', 'contractPaymentTimes', 'pack', 'packYear'))
|
||||
this.confirmLoading = false
|
||||
@@ -806,21 +807,16 @@ export default {
|
||||
switch (type) {
|
||||
// 普通项目
|
||||
case 1:
|
||||
this.getUserDetailByUserId().then(res => {
|
||||
this.departId = res
|
||||
// 混入筛选条件
|
||||
this.$refs.selectProjectModule.filters = {
|
||||
chargeCompanyId: this.selectedCompany.id,
|
||||
contractId: this.contractId,
|
||||
departId: this.departId // 一个用户多部门情况下传给后端第一个部门id
|
||||
}
|
||||
// 获取负责人列表
|
||||
this.$refs.selectProjectModule.departChange(this.departId)
|
||||
// 打开弹窗
|
||||
this.$refs.selectProjectModule.open()
|
||||
}).catch((err) => {
|
||||
this.$message.warn(err)
|
||||
})
|
||||
// 混入筛选条件
|
||||
this.$refs.selectProjectModule.filters = {
|
||||
chargeCompanyId: this.selectedCompany.id,
|
||||
contractId: this.contractId
|
||||
// departId: this.departId // 一个用户多部门情况下传给后端第一个部门id
|
||||
}
|
||||
// 获取负责人列表
|
||||
this.$refs.selectProjectModule.departChange(this.departId)
|
||||
// 打开弹窗
|
||||
this.$refs.selectProjectModule.open()
|
||||
break
|
||||
// 工作组项目
|
||||
case 2:
|
||||
@@ -855,14 +851,12 @@ export default {
|
||||
let param = {
|
||||
id: this.model.principalId
|
||||
}
|
||||
return new Promise((resolve, reject) => {
|
||||
queryUserByDepartId(param).then(res => {
|
||||
if (res.success) {
|
||||
resolve(res.result[0].departIds)
|
||||
} else {
|
||||
reject(res.message)
|
||||
}
|
||||
})
|
||||
queryUserByDepartId(param).then(res => {
|
||||
if (res.success) {
|
||||
this.departId = res.result[0].departIds
|
||||
} else {
|
||||
console.log(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
/**
|
||||
|
||||
@@ -142,14 +142,14 @@ export default {
|
||||
title: '会议名称',
|
||||
align: 'center',
|
||||
dataIndex: 'meetingName',
|
||||
width: 160,
|
||||
width: 280,
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '参会单位',
|
||||
align: 'center',
|
||||
dataIndex: 'companyName',
|
||||
width: 260,
|
||||
width: 280,
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
// 合同里来款用途固定为会务费
|
||||
@@ -166,7 +166,7 @@ export default {
|
||||
title: '参会人员',
|
||||
align: 'center',
|
||||
dataIndex: 'companyContactName',
|
||||
width: 260,
|
||||
width: 280,
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
@@ -194,7 +194,7 @@ export default {
|
||||
title: '负责人',
|
||||
align: 'center',
|
||||
dataIndex: 'directorName',
|
||||
width: 200,
|
||||
width: 280,
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
|
||||
@@ -150,6 +150,7 @@ export default {
|
||||
requird: false,
|
||||
default: null
|
||||
},
|
||||
// 负责人id
|
||||
principal: {
|
||||
type: String,
|
||||
requird: false,
|
||||
@@ -261,7 +262,6 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
||||
/**
|
||||
* 运行年份变化
|
||||
*/
|
||||
@@ -278,7 +278,7 @@ export default {
|
||||
// 运行年份默认为当年
|
||||
this.queryParam.year = new Date().getFullYear().toString()
|
||||
this.lastQueryParam.year = new Date().getFullYear().toString()
|
||||
//
|
||||
// 默认科室、负责人
|
||||
this.queryParam.principalId = this.principal
|
||||
this.lastQueryParam.principalId = this.principal
|
||||
this.queryParam.departId = this.departId
|
||||
|
||||
@@ -95,7 +95,8 @@
|
||||
<label>签到二维码:</label><img class="qr-code" :src="signInQRCode" alt="签到二维码"/>
|
||||
<!-- <i class="copy primary-color" @click="copy(signUpHerfUrl)">复制</i>-->
|
||||
</a-col>
|
||||
<a-col :xxl="8" :xl="12" :sm="24" style="display:flex;">
|
||||
<!-- 会议费用为0 不显示 -->
|
||||
<a-col :xxl="8" :xl="12" :sm="24" style="display:flex;" v-if="currentMeetingInfo.meetingCosts !== '0.00' ">
|
||||
<label>收款二维码:</label>
|
||||
<j-image-upload :return-id="true" v-if="currentMeetingInfo.paymentQrCode"
|
||||
v-model="currentMeetingInfo.paymentQrCode" disabled></j-image-upload>
|
||||
|
||||
@@ -91,8 +91,8 @@
|
||||
</a-col>
|
||||
<!-- 选择嘉宾和内部企业、缴费方式为打包也不显示-->
|
||||
<a-col :xxl="8" :xl="12" :sm="24" v-if="identifyType === 2 && !payModeBool ">
|
||||
<a-form-item label="地址" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入地址"
|
||||
<a-form-item label="邮寄地址" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入邮寄地址"
|
||||
:maxLength='50'
|
||||
:disabled="isEditBool"
|
||||
v-decorator="[ 'postContactAddress']"></a-input>
|
||||
@@ -233,7 +233,6 @@ export default {
|
||||
* 清空邮寄联系人 地址 邮编
|
||||
* */
|
||||
clearFormItem(){
|
||||
// 选择企业清空 姓名 手机号
|
||||
this.form.resetFields(['postContactId','postContactAddress','postCode'])
|
||||
},
|
||||
|
||||
@@ -250,6 +249,9 @@ export default {
|
||||
* 选择联系人之后地址邮编复制
|
||||
* */
|
||||
changePost(val){
|
||||
if(val === undefined){
|
||||
this.clearFormItem()
|
||||
}
|
||||
getContactsById({id:val}).then(res => {
|
||||
if(res.success){
|
||||
this.setAddressVal(res.result)
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
</template>
|
||||
|
||||
<span slot="print" slot-scope="text, record" class="action-span-cell">
|
||||
<a-button type="primary" :disabled="record.sendMethod === 1 ? false : true">打印</a-button>
|
||||
<a-button type="primary" :disabled="record.sendMethod === 2">打印</a-button>
|
||||
</span>
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<a @click="handleAdd(record)" v-if="record.postStatus === 0" v-has="'billMail:mail'">邮寄</a>
|
||||
|
||||
@@ -110,8 +110,10 @@
|
||||
<a-col :xl="12" :sm="24">
|
||||
<a-form-item label="来款方式" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<span v-if="defaultChargeWay === 2 && chargeWayType === 2">合同</span>
|
||||
<a-radio-group v-decorator="['chargeWay',validatorRules.chargeWay]" @change="handlechargeWayChange"
|
||||
v-else :disabled="isAssociatedContract">
|
||||
<a-radio-group v-decorator="['chargeWay',validatorRules.chargeWay]"
|
||||
@change="handlechargeWayChange"
|
||||
v-else
|
||||
:disabled="isAssociatedContract">
|
||||
<a-radio :value="1">无</a-radio>
|
||||
<a-radio :value="2">合同</a-radio>
|
||||
<a-radio :value="3">收费通知</a-radio>
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
v-if="currentMeetingInfo.meetingFiles"></preview-file>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row type="flex">
|
||||
<a-row type="flex" v-if="currentMeetingInfo.meetingCosts !== '0.00' ">
|
||||
<label>收费二维码:</label>
|
||||
<j-image-upload :return-id="true" v-if="currentMeetingInfo.paymentQrCode"
|
||||
v-model="currentMeetingInfo.paymentQrCode" disabled></j-image-upload>
|
||||
@@ -223,7 +223,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {getMeetInfoById,validateStandard} from '@api/incomeMeetingApi'
|
||||
import {getMeetInfoById, validateStandard} from '@api/incomeMeetingApi'
|
||||
import SelectContacts from '@comp/company/SelectContacts'
|
||||
import OtherMeetingForm from '@views/incomePayments/meetManage/OtherMeetingForm'
|
||||
import SeminarVipForm from '@views/incomePayments/meetManage/modules/SeminarVipForm'
|
||||
@@ -332,7 +332,7 @@ export default {
|
||||
// 国际研讨会身份的控制
|
||||
identityBool: false,
|
||||
// 是否是标协成员
|
||||
isStandardBool:false,
|
||||
isStandardBool: false,
|
||||
// url是否有id字段 默认没有
|
||||
urlHaveIdBool: false,
|
||||
url: {
|
||||
@@ -531,26 +531,32 @@ export default {
|
||||
* 选择参会企业
|
||||
* */
|
||||
changeCompany(value) {
|
||||
|
||||
this.selectedCompany = value
|
||||
// 通过企业名称判断当前参会人
|
||||
if(this.currentMeetingInfo.meetingType +'' === '2' ){
|
||||
if (this.currentMeetingInfo.meetingType + '' === '2') {
|
||||
console.log('标协会议')
|
||||
validateStandard({companyName:this.selectedCompany.companyName}).then(res => {
|
||||
validateStandard({companyName: this.selectedCompany.companyName}).then(res => {
|
||||
this.isStandardBool = res.result
|
||||
if(this.isStandardBool){
|
||||
if (this.isStandardBool) {
|
||||
this.meetingCostSum = this.currentMeetingInfo.meetingCostsVip
|
||||
}
|
||||
})
|
||||
}
|
||||
// 选择企业清空 姓名 手机号
|
||||
this.form.resetFields(['companyContactId', 'phone'])
|
||||
if (this.$refs.formother) {
|
||||
this.$refs.formother.clearFormItem()
|
||||
}
|
||||
|
||||
},
|
||||
/*
|
||||
* 选择联系人获取信息
|
||||
* */
|
||||
changeContact(val) {
|
||||
// 监听删除联系人的时候 清除对应的表单赋值
|
||||
if(val === undefined){
|
||||
this.form.resetFields(['phone'])
|
||||
}
|
||||
const that = this
|
||||
getContactsById({id: val}).then(res => {
|
||||
const model = Object.assign({}, res.result)
|
||||
|
||||
@@ -13,13 +13,13 @@
|
||||
<!-- 查询区域 -->
|
||||
<div class="table-page-search-wrapper">
|
||||
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||
<a-row :gutter="24">
|
||||
<a-col :xl="9" :lg="8" :md="8" :sm="24">
|
||||
<a-row>
|
||||
<a-col :xxl="6" :xl="9" :lg="8" :md="8" :sm="24">
|
||||
<a-form-item label="搜索日志">
|
||||
<a-input placeholder="请输入搜索关键词" v-model="queryParam.keyWord" :maxLength="50"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="9" :lg="8" :md="8" :sm="24">
|
||||
<a-col :xxl="6" :xl="9" :lg="8" :md="8" :sm="24">
|
||||
<a-form-item label="创建时间" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-range-picker
|
||||
style="width: 100%"
|
||||
@@ -31,20 +31,19 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="9" :lg="8" :md="8" :sm="24" v-if="tabKey === '2' ">
|
||||
<a-form-item label="操作类型" style="left: 10px">
|
||||
<a-col :xxl="6" :xl="9" :lg="8" :md="8" :sm="24" v-if="tabKey === '2' ">
|
||||
<a-form-item label="操作类型">
|
||||
<j-dict-select-tag v-model="queryParam.operateType" placeholder="请选择操作类型" dictCode="operate_type"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-col :xl="4" :lg="8" :md="8" :sm="24">
|
||||
<a-button type="primary" style="left: 10px" @click="searchQuery" icon="search" v-has="'sys:log:search'">查询</a-button>
|
||||
|
||||
<a-col :xl="6" :lg="8" :md="8" :sm="24">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'sys:log:search'">查询</a-button>
|
||||
<a-button class="reset-button" @click="searchReset" icon="reload"
|
||||
style="margin-left: 8px;left: 10px">重置</a-button>
|
||||
|
||||
style="margin-left: 8px;">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
</span>
|
||||
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user