权限、统计接口、默认密码登录
This commit is contained in:
@@ -62,6 +62,8 @@ const distributeMemberList = (param) => getAction('/project/payWorkingGroupDistr
|
||||
const dunningReminder = (param) => postAction('/project/payWorkingGroupSubitem/reminders', param)
|
||||
// 复制工作组
|
||||
const copyWorkingGroup = (param) => postAction('/project/payWorkingGroup/copy', param)
|
||||
// 校验登陆人是否可以操作工作组
|
||||
const checkoutWorkingGroupPrincipal = (param) => getAction('/project/payWorkingGroup/checkoutOperation', param)
|
||||
|
||||
export {
|
||||
getWorkingGroupById,
|
||||
@@ -94,5 +96,6 @@ export {
|
||||
batchDistribute,
|
||||
distributeMemberList,
|
||||
dunningReminder,
|
||||
copyWorkingGroup
|
||||
copyWorkingGroup,
|
||||
checkoutWorkingGroupPrincipal
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<a-col :span="20">
|
||||
<a-input @click="chooseBusiness" :value="value[valueKey]" v-bind="$attrs" :readOnly="true"></a-input>
|
||||
</a-col>
|
||||
<a-col :span="4" class="form-btn">
|
||||
<a-col :span="4" class="form-btn" v-if="canAdd">
|
||||
<a-button icon="plus" @click="addCompany"></a-button>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -38,6 +38,12 @@ export default {
|
||||
valueKey: {
|
||||
type: String,
|
||||
default: 'companyName'
|
||||
},
|
||||
// 是否可以新增:true--可以;false--不可以(组件作为查询条件时不可新增)
|
||||
canAdd: {
|
||||
type: Boolean,
|
||||
required: false,
|
||||
default: true
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -75,9 +81,9 @@ export default {
|
||||
* @param value
|
||||
*/
|
||||
addCompanyOk(value) {
|
||||
let {id, companyName} = value
|
||||
console.log({id, companyName})
|
||||
this.$emit('change', {id, companyName})
|
||||
let { id, companyName } = value
|
||||
console.log({ id, companyName })
|
||||
this.$emit('change', { id, companyName })
|
||||
}
|
||||
},
|
||||
//2.2新增 在组件内定义 指定父组件调用时候的传值属性和事件类型
|
||||
@@ -89,6 +95,7 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
a-input:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
@@ -69,6 +69,7 @@ const user = {
|
||||
Login({ commit }, userInfo) {
|
||||
return new Promise((resolve, reject) => {
|
||||
login(userInfo).then(response => {
|
||||
console.log(response, '================')
|
||||
if(response.code =='200'){
|
||||
const result = response.result
|
||||
const userInfo = result.userInfo
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'company:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -29,14 +29,14 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'company:add'">新增</a-button>
|
||||
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
|
||||
@change="handleImportExcel">
|
||||
@change="handleImportExcel" v-has="'company:import'">
|
||||
<a-button type="primary" icon="import">导入</a-button>
|
||||
</a-upload>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('企业管理')">导出</a-button>
|
||||
<a-button type="primary" icon="download" @click="downTemplate('企业管理导入模板')">下载模板</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('企业管理')" v-has="'company:export'">导出</a-button>
|
||||
<a-button type="primary" icon="download" @click="downTemplate('企业管理导入模板')" v-has="'company:downTemplate'">下载模板</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'company:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -61,9 +61,9 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="handleAudit(record.id)" v-if="record.dataSource===2 && record.status===2">确认</a>
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleAudit(record.id)" v-if="record.dataSource===2 && record.status===2" v-has="'company:confirm'">确认</a>
|
||||
<a @click="handleEdit(record)" v-has="'company:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'company:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'contact:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -34,14 +34,14 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'contact:add'">新增</a-button>
|
||||
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
|
||||
@change="handleImportExcel">
|
||||
@change="handleImportExcel" v-has="'contact:import'">
|
||||
<a-button type="primary" icon="import">导入</a-button>
|
||||
</a-upload>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('联系人管理')">导出</a-button>
|
||||
<a-button type="primary" icon="download" @click="downTemplate('联系人管理导入模板')">下载模板</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('联系人管理')" v-has="'contact:export'">导出</a-button>
|
||||
<a-button type="primary" icon="download" @click="downTemplate('联系人管理导入模板')" v-has="'contact:downTemplate'">下载模板</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'contact:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -66,8 +66,8 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleEdit(record)" v-has="'contact:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'contact:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="4" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'expenditureContract:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -48,14 +48,14 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'expenditureContract:add'">新增</a-button>
|
||||
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
|
||||
@change="handleImportExcel">
|
||||
@change="handleImportExcel" v-has="'expenditureContract:import'">
|
||||
<a-button type="primary" icon="import">导入</a-button>
|
||||
</a-upload>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('支出合同')">导出</a-button>
|
||||
<a-button type="primary" icon="download" @click="downTemplate('支出合同导入模板')">下载模板</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('支出合同')" v-has="'expenditureContract:export'">导出</a-button>
|
||||
<a-button type="primary" icon="download" @click="downTemplate('支出合同导入模板')" v-has="'expenditureContract:downTemplate'">下载模板</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'expenditureContract:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -80,8 +80,8 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="handleEdit(record.id)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleEdit(record.id)" v-has="'expenditureContract:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'expenditureContract:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -322,6 +322,10 @@ export default {
|
||||
pack: {
|
||||
rules: [{ required: true, message: '请选择是否打包' }],
|
||||
validateTrigger: 'change'
|
||||
},
|
||||
packYear: {
|
||||
rules: [{ required: true, message: '请选择打包年份' }],
|
||||
validateTrigger: 'change'
|
||||
}
|
||||
},
|
||||
url: {
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="4" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'revenueContract:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -64,9 +64,9 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('收入合同')">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'revenueContract:add'">新增</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('收入合同')" v-has="'revenueContract:export'">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'revenueContract:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -107,12 +107,13 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="handleAudit(record.id)" v-if="record.status === 2">审核</a>
|
||||
<a @click="handleAudit(record.id)" v-if="record.status === 2" v-has="'revenueContract:aduit'">审核</a>
|
||||
<!-- v-has="'revenueContract:edit'"-->
|
||||
<a @click="handleEdit(record.id, record.contractNum)"
|
||||
v-if="record.status === 1 || record.status === 4">编辑</a>
|
||||
<a @click="handleArchive(record.id)" v-if="record.status === 3">存档</a>
|
||||
<a @click="handleArchive(record.id)" v-if="record.status === 3" v-has="'revenueContract:archive'">存档</a>
|
||||
<a @click="handleDelete(record.id)"
|
||||
v-if="record.status === 1 || record.status === 2 || record.status === 4">删除</a>
|
||||
v-if="record.status === 1 || record.status === 2 || record.status === 4" v-has="'revenueContract:delete'">删除</a>
|
||||
<a :disabled="true" v-if="record.status === 5">已存档</a>
|
||||
</span>
|
||||
</a-table>
|
||||
@@ -230,14 +231,6 @@ export default {
|
||||
width: 200,
|
||||
scopedSlots: { customRender: 'action' }
|
||||
}
|
||||
],
|
||||
dataSource: [
|
||||
{
|
||||
id: 1,
|
||||
status: 1,
|
||||
contractNum: '1346',
|
||||
createTime: '2020-09-02 11:11:11'
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record" v-if="canOperate">
|
||||
<a @click="unlinkProject(record)">取消关联</a>
|
||||
</span>
|
||||
<a @click="unlinkProject(record)" v-has="'revenueContractModule:unlinkProject'">取消关联</a>
|
||||
</span>
|
||||
</a-table>
|
||||
|
||||
<a-button type="primary" @click="submitAduit" :loading="associatedProjectLoading" v-if="canOperate" v-preventclick>提交审核</a-button>
|
||||
|
||||
@@ -245,7 +245,7 @@
|
||||
<a-card :bordered="false" v-if="isSaved" class="associated-project">
|
||||
<div class="part-title">
|
||||
<div class="part-title-text">关联项目</div>
|
||||
<a-button type="link" @click="chooseProject">选择项目
|
||||
<a-button type="link" @click="chooseProject" v-has="'revenueContractModule:chooseProject'">选择项目
|
||||
<a-icon type="right"></a-icon>
|
||||
</a-button>
|
||||
</div>
|
||||
@@ -414,7 +414,7 @@ export default {
|
||||
departId: null, // 部门id普通项目列表查询
|
||||
projectType: null, //项目类型
|
||||
signedContactId: null, //签订联系人正式id,用于新增工作组项目回显
|
||||
newFormData:{} // 传入的数据
|
||||
newFormData: {} // 传入的数据
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@@ -434,7 +434,7 @@ export default {
|
||||
this.$refs.installmentForm.initInstallmentList([])
|
||||
// 税率默认为6
|
||||
this.$nextTick(() => {
|
||||
this.form.setFieldsValue({rate: 6})
|
||||
this.form.setFieldsValue({ rate: 6 })
|
||||
})
|
||||
this.rateNum = 6 / 100
|
||||
},
|
||||
@@ -447,7 +447,7 @@ export default {
|
||||
// 通过id获取合同信息
|
||||
getRevenueContractById(param).then(res => {
|
||||
// 这是会员跟会议要传的参数
|
||||
this.newFormData = Object.assign({},res.result)
|
||||
this.newFormData = Object.assign({}, res.result)
|
||||
let record
|
||||
record = res.result
|
||||
this.isSaved = true
|
||||
@@ -473,6 +473,8 @@ export default {
|
||||
// 获取应收金额和已收金额
|
||||
this.accountsReceivableNum = record.accountsReceivableAmount
|
||||
this.amountReceivedNum = record.amountReceived
|
||||
// 将pack值改为数字,解决控制台报错
|
||||
record.pack = Number(record.pack)
|
||||
this.model = Object.assign({}, record)
|
||||
this.temporaryModel = Object.assign({}, record)
|
||||
this.$nextTick(() => {
|
||||
@@ -609,7 +611,7 @@ export default {
|
||||
* @param e
|
||||
*/
|
||||
noTaxChange(e) {
|
||||
e.target.value = (e.target.value.replace(/[^0-9.]/g,'')).trim()
|
||||
e.target.value = (e.target.value.replace(/[^0-9.]/g, '')).trim()
|
||||
this.inputNoTaxAmount = Number(e.target.value)
|
||||
this.calculateContractAmount()
|
||||
},
|
||||
@@ -635,7 +637,7 @@ export default {
|
||||
}
|
||||
let contractNum = this.inputNoTaxAmount * (1 + this.rateNum)
|
||||
contractNum = contractNum.toFixed(2)
|
||||
this.form.setFieldsValue({contractAmount: contractNum})
|
||||
this.form.setFieldsValue({ contractAmount: contractNum })
|
||||
},
|
||||
/**
|
||||
* 应收金额输入
|
||||
@@ -797,9 +799,9 @@ export default {
|
||||
// 会议项目
|
||||
case 3:
|
||||
// 打包为是不能选择关联会议项目
|
||||
if(this.newFormData.pack === 1){
|
||||
if (this.newFormData.pack === 1) {
|
||||
this.$message.warn('打包不可选择会议项目')
|
||||
}else {
|
||||
} else {
|
||||
// 传入合同信息
|
||||
this.$refs.selectMeetingProjectModule.open(this.newFormData)
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
</a-form>
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'memberProject:add'">新增</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'generalProject:add'">新增</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
|
||||
+1
-1
@@ -35,7 +35,7 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'workingGroupMember:add'">新增</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'committee:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -34,9 +34,9 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增分标委</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('分标委维护')">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'committee:add'">新增分标委</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('分标委维护')" v-has="'committee:export'">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'committee:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -56,11 +56,11 @@
|
||||
</template>
|
||||
|
||||
<span slot="operation" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="handleMaintainData(record)">资料维护</a>
|
||||
<a @click="handleMaintainMeeting(record)">会议维护</a>
|
||||
<a @click="handleAddCommitteeMember(record)">新增成员</a>
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleMaintainData(record)" v-has="'committee:fileMaintenance'">资料维护</a>
|
||||
<a @click="handleMaintainMeeting(record)" v-has="'committee:meetingMaintenance'">会议维护</a>
|
||||
<a @click="handleAddCommitteeMember(record)" v-has="'committee:addMember'">新增成员</a>
|
||||
<a @click="handleEdit(record)" v-has="'committee:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'committee:delete'">删除</a>
|
||||
</span>
|
||||
|
||||
<a-table
|
||||
@@ -77,7 +77,7 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, itemRecord">
|
||||
<a @click="handleDeleteMember(itemRecord.childrenId)">删除</a>
|
||||
<a @click="handleDeleteMember(itemRecord.childrenId)" v-has="'committee:member:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</a-table>
|
||||
|
||||
@@ -208,6 +208,7 @@ export default {
|
||||
* @param value
|
||||
*/
|
||||
handleContactChange(value) {
|
||||
console.log(value)
|
||||
const param = {
|
||||
id: value.key
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'incomePaymentAndInvoiving:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -46,8 +46,8 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('到账开票')">导出</a-button>
|
||||
<a-button type="primary" icon="file-text" @click="batchInvoicing">合并开票</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('到账开票')" v-has="'incomePaymentAndInvoiving:export'">导出</a-button>
|
||||
<a-button type="primary" icon="file-text" @click="batchInvoicing" v-has="'incomePaymentAndInvoiving:batchInvoicing'">合并开票</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -87,8 +87,8 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="incomePayment(record)">来款</a>
|
||||
<a @click="invoicing(record)" :disabled="record.needInvoice === 0">开票</a>
|
||||
<a @click="incomePayment(record)" v-has="'incomePaymentAndInvoiving:incomePayment'">来款</a>
|
||||
<a @click="invoicing(record)" :disabled="record.needInvoice === 0" v-has="'incomePaymentAndInvoiving:invoicing'">开票</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -123,10 +123,11 @@
|
||||
dictCode="signup_status"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<!-- 只有工作组会议与分标委会议才有审核信息-->
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24" v-show="currentMeetingInfo.meetingType === '1' || currentMeetingInfo.meetingType === '5' ">
|
||||
<!-- 只有工作组会议与分标委会议才有审核信息-->
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24"
|
||||
v-show="currentMeetingInfo.meetingType === '1' || currentMeetingInfo.meetingType === '5' ">
|
||||
<a-form-item label="审核报名信息">
|
||||
<j-dict-select-tag v-model="queryParam.checkSingInResult" placeholder="请选择"
|
||||
<j-dict-select-tag v-model="queryParam.checkSingInResult" placeholder="请选择"
|
||||
dictCode="signup_status"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
@@ -158,7 +159,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'attendance:search'">查询</a-button>
|
||||
<a-button @click="searchReset" icon="reload" class="reset-button" style="margin-left: 8px">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -171,14 +172,17 @@
|
||||
<div class="table-operator">
|
||||
<!-- 变更去掉了此功能 暂时注释 2021-09-16 -->
|
||||
<!-- <a-button type="primary" icon="import" @click="importParticipant">导入参会人</a-button>-->
|
||||
<a-button type="primary" icon="plus" @click="addParticipant">添加参会人</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('会员项目')">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="plus" @click="addParticipant" v-has="'attendance:add'">添加参会人</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('会员项目')" v-has="'attendance:export'">导出
|
||||
</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'attendance:batchDel'">批量删除</a-button>
|
||||
<!--当会议费用为0不需要合并开票 -->
|
||||
<!-- 变更将此功能添加到到账开票了 暂时注释 2021-09-16 -->
|
||||
<!-- <a-button type="primary" @click="batchInvoice" v-show="currentMeetingInfo.meetingCosts !== 0">合并开票</a-button>-->
|
||||
<!--只有国际研讨会才会有设置对接人-->
|
||||
<a-button type="primary" @click="batchSetDocker" v-if="currentMeetingInfo.meetingType === '3' ">设置对接人</a-button>
|
||||
<a-button type="primary" @click="batchSetDocker" v-if="currentMeetingInfo.meetingType === '3' "
|
||||
v-has="'attendance:batchSetDocker'">设置对接人
|
||||
</a-button>
|
||||
</div>
|
||||
|
||||
<!-- table区域-begin -->
|
||||
@@ -221,12 +225,15 @@
|
||||
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<!-- 只有缴费方式为汇款并且上传了汇款凭证的的才会有审核按钮-->
|
||||
<a @click="handleAudit(record)" v-if="record.payMode === 1 && record.paymentRecord">审核凭证</a>
|
||||
<a @click="handleAudit(record)" v-if="record.payMode === 1 && record.paymentRecord"
|
||||
v-has="'attendance:auditCredentials'">审核凭证</a>
|
||||
<!-- 只有工作组会议与分标委会议才有审核报名信息-->
|
||||
<a @click="handleAuditSignUp(record)" v-show="(currentMeetingInfo.meetingType === '1' || currentMeetingInfo.meetingType === '5') && record.registerCheckResult !== 1 ">审核报名信息</a>
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleAuditSignUp(record)"
|
||||
v-show="(currentMeetingInfo.meetingType === '1' || currentMeetingInfo.meetingType === '5') && record.registerCheckResult !== 1 "
|
||||
v-has="'attendance:auditSignUp'">审核报名信息</a>
|
||||
<a @click="handleEdit(record)" v-has="'attendance:edit'">编辑</a>
|
||||
<!--删除参会人需要判断改参会人是否与合同关联-->
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'attendance:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
@@ -245,9 +252,9 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {JeroListMixin} from '@/mixins/JeroListMixin'
|
||||
import {mixinDevice} from '@/utils/mixin'
|
||||
import {getMeetInfoById, createQcCode} from '@api/incomeMeetingApi'
|
||||
import { JeroListMixin } from '@/mixins/JeroListMixin'
|
||||
import { mixinDevice } from '@/utils/mixin'
|
||||
import { getMeetInfoById, createQcCode } from '@api/incomeMeetingApi'
|
||||
import JYearDate from '@comp/jero/JYearDate'
|
||||
import JDictSelectTag from '@comp/dict/JDictSelectTag'
|
||||
import ImportParticipantModal from '@views/incomePayments/meetManage/modules/ImportParticipantModal'
|
||||
@@ -295,8 +302,8 @@ export default {
|
||||
title: '参会单位',
|
||||
align: 'center',
|
||||
dataIndex: 'companyName',
|
||||
scopedSlots: {customRender: 'htmlSlot'},
|
||||
width: 180,
|
||||
scopedSlots: { customRender: 'htmlSlot' },
|
||||
width: 180
|
||||
},
|
||||
{
|
||||
title: '参会人员',
|
||||
@@ -309,60 +316,60 @@ export default {
|
||||
title: '应收金额',
|
||||
align: 'center',
|
||||
dataIndex: 'amountReceivable',
|
||||
width: 100,
|
||||
width: 100
|
||||
},
|
||||
{
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
dataIndex: 'paidAmount',
|
||||
width: 120,
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
title: '缴费方式',
|
||||
align: 'center',
|
||||
dataIndex: 'payMode_dictText',
|
||||
width: 120,
|
||||
width: 120
|
||||
},
|
||||
{
|
||||
title: '是否签到',
|
||||
align: 'center',
|
||||
dataIndex: 'checkIn_dictText',
|
||||
width: 100,
|
||||
width: 100
|
||||
},
|
||||
{
|
||||
title: '打包',
|
||||
align: 'center',
|
||||
dataIndex: 'pack',
|
||||
width: 100,
|
||||
scopedSlots: {customRender: 'status-pack'}
|
||||
scopedSlots: { customRender: 'status-pack' }
|
||||
},
|
||||
{
|
||||
title: '需要发票',
|
||||
align: 'center',
|
||||
dataIndex: 'needInvoice',
|
||||
width: 100,
|
||||
scopedSlots: {customRender: 'status-pack'}
|
||||
scopedSlots: { customRender: 'status-pack' }
|
||||
},
|
||||
{
|
||||
title: '到账',
|
||||
align: 'center',
|
||||
width: 100,
|
||||
dataIndex: 'inAccount',
|
||||
scopedSlots: {customRender: 'status'}
|
||||
scopedSlots: { customRender: 'status' }
|
||||
},
|
||||
{
|
||||
title: '开票',
|
||||
align: 'center',
|
||||
width: 100,
|
||||
dataIndex: 'makeInvoice',
|
||||
scopedSlots: {customRender: 'status'}
|
||||
scopedSlots: { customRender: 'status' }
|
||||
},
|
||||
{
|
||||
title: '邮寄',
|
||||
align: 'center',
|
||||
width: 100,
|
||||
dataIndex: 'mail',
|
||||
scopedSlots: {customRender: 'status'}
|
||||
scopedSlots: { customRender: 'status' }
|
||||
},
|
||||
{
|
||||
title: '对接人',
|
||||
@@ -374,8 +381,8 @@ export default {
|
||||
align: 'center',
|
||||
fixed: 'right',
|
||||
width: 300,
|
||||
scopedSlots: {customRender: 'action'}
|
||||
},
|
||||
scopedSlots: { customRender: 'action' }
|
||||
}
|
||||
],
|
||||
disableMixinCreated: true,
|
||||
url: {
|
||||
@@ -383,7 +390,7 @@ export default {
|
||||
delete: '/meeting/payMeetingSituation/delete',
|
||||
deleteBatch: '/meeting/payMeetingSituation/deleteBatch',
|
||||
exportXlsUrl: '/meeting/payMeetingSituation/exportXls',
|
||||
importExcelUrl: '/meeting/payMeetingSituation/importExcel',
|
||||
importExcelUrl: '/meeting/payMeetingSituation/importExcel'
|
||||
},
|
||||
// 当前的会议信息详情
|
||||
currentMeetingInfo: {},
|
||||
@@ -395,7 +402,7 @@ export default {
|
||||
// 收款二维码
|
||||
payMentQRCode: '',
|
||||
// 会议费用
|
||||
meetingCostBool:false
|
||||
meetingCostBool: false
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -415,7 +422,7 @@ export default {
|
||||
this.columns.splice(index,1)
|
||||
}
|
||||
// 计算会议费用 会议费用为0 添加参会人不显示邮寄信息与缴费信息 标协会议
|
||||
if(this.currentMeetingInfo.meetingType === '2' && this.currentMeetingInfo.meetingCostsVip){
|
||||
if (this.currentMeetingInfo.meetingType === '2' && this.currentMeetingInfo.meetingCostsVip) {
|
||||
// 标协会员的费用
|
||||
let vipCost = this.currentMeetingInfo.meetingCostsVip
|
||||
// 判断标协会员的费用是否是0
|
||||
@@ -423,21 +430,21 @@ export default {
|
||||
let cost = this.currentMeetingInfo.meetingCosts
|
||||
// 判断普通会员的费用是否是0
|
||||
let flag = cost === 0 || cost === '0.00'
|
||||
if(flag && flagVip){
|
||||
if (flag && flagVip) {
|
||||
// 说明会议费用为0
|
||||
this.meetingCostBool = true
|
||||
}else {
|
||||
} else {
|
||||
this.meetingCostBool = false
|
||||
}
|
||||
// 其他会议值判断一个费用
|
||||
}else if(this.currentMeetingInfo.meetingCosts){
|
||||
} else if (this.currentMeetingInfo.meetingCosts) {
|
||||
// 判断其他会议
|
||||
let cost = this.currentMeetingInfo.meetingCosts
|
||||
// 判断普通会员的费用是否是0
|
||||
let flag = cost === 0 || cost === '0.00'
|
||||
if(flag){
|
||||
if (flag) {
|
||||
this.meetingCostBool = true
|
||||
}else {
|
||||
} else {
|
||||
this.meetingCostBool = false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'memberProject:search'">查询</a-button>
|
||||
<a-button @click="searchReset" icon="reload" class="reset-button" style="margin-left: 8px">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -30,9 +30,9 @@
|
||||
|
||||
<!-- 操作按钮区域 -->
|
||||
<div class="table-operator">
|
||||
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('会员项目')">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button @click="handleAdd" type="primary" icon="plus" v-has="'memberProject:add'">新增</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('会员项目')" v-has="'memberProject:export'">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'memberProject:batchDel'">批量删除</a-button>
|
||||
<!-- <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"-->
|
||||
<!-- @change="handleImportExcel">-->
|
||||
<!-- <a-button type="primary" icon="import">导入</a-button>-->
|
||||
@@ -66,8 +66,8 @@
|
||||
<span v-else></span>
|
||||
</template>
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleEdit(record)" v-has="'memberProject:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'memberProject:delete'">删除</a>
|
||||
</span>
|
||||
|
||||
</a-table>
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'safeguardMember:search'">查询</a-button>
|
||||
<a-button @click="searchReset" icon="reload" class="reset-button" style="margin-left: 8px">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -60,14 +60,14 @@
|
||||
|
||||
<!-- 操作按钮区域 -->
|
||||
<div class="table-operator">
|
||||
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
|
||||
<a-button @click="handleAdd" type="primary" icon="plus" v-has="'safeguardMember:add'">新增</a-button>
|
||||
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
|
||||
@change="handleImportExcel">
|
||||
@change="handleImportExcel" v-has="'safeguardMember:import'">
|
||||
<a-button type="primary" icon="import">导入</a-button>
|
||||
</a-upload>
|
||||
<a-button type="primary" icon="download" @click="downTemplate('会员项目成员导入模板文件')">下载模板</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('会员项目成员')">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="download" @click="downTemplate('会员项目成员导入模板文件')" v-has="'safeguardMember:downTemplate'">下载模板</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('会员项目成员')" v-has="'safeguardMember:export'">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'safeguardMember:batchDel'">批量删除</a-button>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -104,8 +104,8 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleEdit(record)" v-has="'safeguardMember:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'safeguardMember:delete'">删除</a>
|
||||
</span>
|
||||
|
||||
</a-table>
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
style="float: left; overflow: hidden"
|
||||
class="table-page-search-submitButtons"
|
||||
>
|
||||
<a-button type="primary" @click="searchQuery" icon="search"
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'safeguardStardsMember:search'"
|
||||
>查询</a-button
|
||||
>
|
||||
<a-button
|
||||
@@ -43,6 +43,7 @@
|
||||
type="primary"
|
||||
icon="download"
|
||||
@click="handleExportXls('标协会员')"
|
||||
v-has="'safeguardStardsMember:export'"
|
||||
>导出</a-button
|
||||
>
|
||||
<!-- <a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>-->
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'stardsMember:search'">查询</a-button>
|
||||
<a-button @click="searchReset" icon="reload" class="reset-button" style="margin-left: 8px">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -55,7 +55,7 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<a @click="handleStandardMeeting(record)">会议维护</a>
|
||||
<a @click="handleStandardMeeting(record)" v-has="'stardsMember:meetingMaintenance'">会议维护</a>
|
||||
</span>
|
||||
|
||||
</a-table>
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'billMail:search'">查询</a-button>
|
||||
<a-button @click="searchReset" icon="reload" class="reset-button" style="margin-left: 8px">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -56,7 +56,7 @@
|
||||
|
||||
<!-- 操作按钮区域 -->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="download" @click="handleExportXls">导出</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls" v-has="'billMail:export'">导出</a-button>
|
||||
</div>
|
||||
|
||||
<!-- table区域-begin -->
|
||||
@@ -89,9 +89,9 @@
|
||||
<a-button type="primary" :disabled="record.sendMethod === 1 ? false : true">打印</a-button>
|
||||
</span>
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<a @click="handleAdd(record)" v-if="record.postStatus === 0">邮寄</a>
|
||||
<a @click="handleEdit(record)" v-if="record.postStatus === 1">修改</a>
|
||||
<a @click="goLogistics(record)" v-if="record.postStatus === 1">查看物流</a>
|
||||
<a @click="handleAdd(record)" v-if="record.postStatus === 0" v-has="'billMail:mail'">邮寄</a>
|
||||
<a @click="handleEdit(record)" v-if="record.postStatus === 1" v-has="'billMail:edit'">修改</a>
|
||||
<a @click="goLogistics(record)" v-if="record.postStatus === 1" v-has="'billMail:checkLogistics'">查看物流</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="4" :lg="7" :md="8" :sm="24">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'contractMail:search'">查询</a-button>
|
||||
<a-button @click="searchReset" icon="reload" class="reset-button" style="margin-left: 8px">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -40,7 +40,7 @@
|
||||
|
||||
<!-- 操作按钮区域 -->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="download" @click="handleExportXls">导出</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls" v-has="'contractMail:export'">导出</a-button>
|
||||
</div>
|
||||
|
||||
<!-- table区域-begin -->
|
||||
@@ -68,9 +68,9 @@
|
||||
<a-button type="primary" :disabled="record.sendMethod === '1' ? false : true">打印</a-button>
|
||||
</span>
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<a @click="handleAdd(record.id)" v-if="record.postStatus === '0'">邮寄</a>
|
||||
<a @click="handleEdit(record)" v-if="record.postStatus === '1'">修改</a>
|
||||
<a @click="goLogistics(record)" v-if="record.postStatus === '1'">查看物流</a>
|
||||
<a @click="handleAdd(record.id)" v-if="record.postStatus === '0'" v-has="'contractMail:mail'">邮寄</a>
|
||||
<a @click="handleEdit(record)" v-if="record.postStatus === '1'" v-has="'contractMail:edit'">修改</a>
|
||||
<a @click="goLogistics(record)" v-if="record.postStatus === '1'" v-has="'contractMail:checkLogistics'">查看物流</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'packCompany:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -30,9 +30,9 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('打包企业列表')">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'packCompany:add'">新增</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('打包企业列表')" v-has="'packCompany:export'">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'packCompany:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -63,8 +63,8 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleEdit(record)" v-has="'packCompany:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'packCompany:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'packProject:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -64,11 +64,11 @@
|
||||
<!-- /查询区域-->
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handlePack">打包</a-button>
|
||||
<a-button type="danger" icon="close-circle" @click="batchCancelPack">批量取消打包</a-button>
|
||||
<a-button type="primary" icon="pay-circle" @click="batchIncomePayment">批量来款</a-button>
|
||||
<a-button type="primary" icon="file-text" @click="batchInvoicing">批量开票</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('打包项目列表')">导出</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handlePack" v-has="'packProject:pack'">打包</a-button>
|
||||
<a-button type="danger" icon="close-circle" @click="batchCancelPack" v-has="'packProject:batchCancelPack'">批量取消打包</a-button>
|
||||
<a-button type="primary" icon="pay-circle" @click="batchIncomePayment" v-has="'packProject:batchIncomePayment'">批量来款</a-button>
|
||||
<a-button type="primary" icon="file-text" @click="batchInvoicing" v-has="'packProject:batchInvoicing'">批量开票</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('打包项目列表')" v-has="'packProject:export'">导出</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -108,9 +108,9 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="incomePayment(record)" :disabled="Number(record.receivableAmount) === 0">来款</a>
|
||||
<a @click="cancelPack(record.id)">取消打包</a>
|
||||
<a @click="invoicing(record)" :disabled="record.needInvoice === 0 || Number(record.receivableAmount) === 0">开票</a>
|
||||
<a @click="incomePayment(record)" :disabled="Number(record.receivableAmount) === 0" v-has="'packProject:incomePayment'">来款</a>
|
||||
<a @click="cancelPack(record.id)" v-has="'packProject:cancelPack'">取消打包</a>
|
||||
<a @click="invoicing(record)" :disabled="record.needInvoice === 0 || Number(record.receivableAmount) === 0" v-has="'packProject:invoicing'">开票</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'committeeMeeting:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -73,11 +73,11 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('工作组会议维护')">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'committeeMeeting:add'">新增</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('工作组会议维护')" v-has="'committeeMeeting:export'">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'committeeMeeting:batchDel'">批量删除</a-button>
|
||||
<!--只有工作会议与分标委会议才有-->
|
||||
<a-button type="primary" @click="publishRemind" v-if="meetingType === '5' ">发布</a-button>
|
||||
<a-button type="primary" @click="publishRemind" v-if="meetingType === '5' " v-has="'committeeMeeting:publish'">发布</a-button>
|
||||
</div>
|
||||
<!-- /操作按钮区域-end-->
|
||||
|
||||
@@ -108,10 +108,10 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="uploadFile(record)">上传文件</a>
|
||||
<a @click="uploadFile(record)" v-has="'committeeMeeting:upload'">上传文件</a>
|
||||
<!-- <a @click="applyMsg">报名信息</a>-->
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleEdit(record)" v-has="'committeeMeeting:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'committeeMeeting:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -66,7 +66,8 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery"
|
||||
v-has="'workingGroupConference:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -77,10 +78,12 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('工作组会议维护')">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" @click="publishRemind">发布</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'workingGroupConference:add'" v-if="canOperate">新增</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('工作组会议维护')"
|
||||
v-has="'workingGroupConference:export'">导出
|
||||
</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'workingGroupConference:batchDel'" v-if="canOperate">批量删除</a-button>
|
||||
<a-button type="primary" @click="publishRemind" v-has="'workingGroupConference:publish'" v-if="canOperate">发布</a-button>
|
||||
</div>
|
||||
<!-- /操作按钮区域-end-->
|
||||
|
||||
@@ -102,18 +105,19 @@
|
||||
|
||||
<!-- 会议名称 点击去参会情况-->
|
||||
<template slot="htmlSlot" slot-scope="text, record">
|
||||
<j-ellipsis v-if="!!text" class="primary-color" :value="text" :length="20" @click="toAttendance(record)"></j-ellipsis>
|
||||
<j-ellipsis v-if="!!text" class="primary-color" :value="text" :length="20"
|
||||
@click="toAttendance(record)"></j-ellipsis>
|
||||
</template>
|
||||
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis :value="text" :length="20"></j-ellipsis>
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="uploadFile(record)">上传文件</a>
|
||||
<!-- <a @click="applyMsg">报名信息</a>-->
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record" v-if="canOperate">
|
||||
<a @click="uploadFile(record)" v-has="'workingGroupConference:upload'">上传文件</a>
|
||||
<!-- <a @click="applyMsg">报名信息</a>-->
|
||||
<a @click="handleEdit(record)" v-has="'workingGroupConference:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'workingGroupConference:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
@@ -123,8 +127,8 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {JeroListMixin} from '@/mixins/JeroListMixin'
|
||||
import {RangeDateMixin} from '@/mixins/RangeDateMixin'
|
||||
import { JeroListMixin } from '@/mixins/JeroListMixin'
|
||||
import { RangeDateMixin } from '@/mixins/RangeDateMixin'
|
||||
import JYearDate from '@comp/jero/JYearDate'
|
||||
import JDate from '@comp/tools/JDate'
|
||||
import moment from 'moment'
|
||||
@@ -150,12 +154,12 @@ export default {
|
||||
disableMixinCreated: true,
|
||||
list: [],
|
||||
labelCol: {
|
||||
xs: {span: 24},
|
||||
sm: {span: 5}
|
||||
xs: { span: 24 },
|
||||
sm: { span: 5 }
|
||||
},
|
||||
wrapperCol: {
|
||||
xs: {span: 24},
|
||||
sm: {span: 10}
|
||||
xs: { span: 24 },
|
||||
sm: { span: 10 }
|
||||
},
|
||||
dateKeyObj: {
|
||||
beginKey: 'meetingStartTime',
|
||||
@@ -176,7 +180,7 @@ export default {
|
||||
title: '会议名称',
|
||||
align: 'center',
|
||||
dataIndex: 'meetingName',
|
||||
scopedSlots: {customRender: 'htmlSlot'},
|
||||
scopedSlots: { customRender: 'htmlSlot' },
|
||||
width: 160,
|
||||
|
||||
},
|
||||
@@ -185,55 +189,57 @@ export default {
|
||||
align: 'center',
|
||||
dataIndex: 'meetingType_dictText',
|
||||
width: 100,
|
||||
scopedSlots: {customRender: 'text'}
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '负责人',
|
||||
align: 'center',
|
||||
dataIndex: 'directorName',
|
||||
width: 160,
|
||||
scopedSlots: {customRender: 'text'}
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '召开时间',
|
||||
align: 'center',
|
||||
dataIndex: 'startTime',
|
||||
width: 160,
|
||||
customRender: (text, record) => (<j-ellipsis value={record.startTime + record.endTime} length={20}></j-ellipsis>)
|
||||
customRender: (text, record) => (
|
||||
<j-ellipsis value={ record.startTime + record.endTime } length={ 20 }></j-ellipsis>)
|
||||
},
|
||||
{
|
||||
title: '召开地点',
|
||||
align: 'center',
|
||||
dataIndex: 'venue',
|
||||
width: 160,
|
||||
customRender: (text, record) => (<j-ellipsis value={text + '/' + record.address} length={20}></j-ellipsis>)
|
||||
customRender: (text, record) => (
|
||||
<j-ellipsis value={ text + '/' + record.address } length={ 20 }></j-ellipsis>)
|
||||
},
|
||||
{
|
||||
title: '年份',
|
||||
align: 'center',
|
||||
dataIndex: 'particularYear',
|
||||
width: 100,
|
||||
scopedSlots: {customRender: 'text'}
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '已提醒',
|
||||
align: 'center',
|
||||
dataIndex: 'remind_dictText',
|
||||
width: 100,
|
||||
scopedSlots: {customRender: 'text'}
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '创建时间',
|
||||
align: 'center',
|
||||
dataIndex: 'createTime',
|
||||
scopedSlots: {customRender: 'text'}
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
align: 'center',
|
||||
fixed: 'right',
|
||||
width: 160,
|
||||
scopedSlots: {customRender: 'action'}
|
||||
scopedSlots: { customRender: 'action' }
|
||||
},
|
||||
],
|
||||
url: {
|
||||
@@ -241,12 +247,14 @@ export default {
|
||||
delete: '/meeting/payMeeting/delete',
|
||||
deleteBatch: '/meeting/payMeeting/deleteBatch',
|
||||
exportXlsUrl: '/meeting/payMeeting/exportXls',
|
||||
}
|
||||
},
|
||||
canOperate: true, // 是否可操作(负责人B不可操作)
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.workingGroupProject = this.$route.query.workingGroupProject
|
||||
this.workingGroupProjectId = this.$route.query.workingGroupProjectId
|
||||
this.canOperate = this.$route.query.canOperate === 'true' ? true : false
|
||||
this.filters.workingGroupId = this.workingGroupProjectId
|
||||
this.loadData(1)
|
||||
},
|
||||
@@ -322,7 +330,7 @@ export default {
|
||||
path: '/incomePayments/meetManage/Attendance',
|
||||
query: {
|
||||
id: record.id,
|
||||
meetingName:record.meetingName
|
||||
meetingName: record.meetingName
|
||||
}
|
||||
})
|
||||
},
|
||||
@@ -354,7 +362,7 @@ export default {
|
||||
this.queryParam.meetingEndTime = this.queryParam.meetingEndTime ? this.queryParam.meetingEndTime + ' ' + '23:59:59' : undefined
|
||||
this.queryParam.createTime_begin = this.queryParam.createTime_begin ? this.queryParam.createTime_begin + ' ' + '00:00:00' : undefined
|
||||
this.queryParam.createTime_end = this.queryParam.createTime_end ? this.queryParam.createTime_end + ' ' + '23:59:59' : undefined
|
||||
this.lastQueryParam = {...this.queryParam}
|
||||
this.lastQueryParam = { ...this.queryParam }
|
||||
this.loadData(1)
|
||||
},
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'generalProject:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -54,8 +54,8 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'generalProject:add'">新增</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'generalProject:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -95,8 +95,8 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleEdit(record)" v-has="'generalProject:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'generalProject:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'internationalSeminar:search'">查询</a-button>
|
||||
<a-button @click="searchReset" icon="reload" class="reset-button" style="margin-left: 8px">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -63,9 +63,9 @@
|
||||
|
||||
<!-- 操作按钮区域 -->
|
||||
<div class="table-operator">
|
||||
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('会议管理')">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button @click="handleAdd" type="primary" icon="plus" v-has="'internationalSeminar:add'">新增</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('会议管理')" v-has="'internationalSeminar:export'">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'internationalSeminar:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
|
||||
<!-- table区域-begin -->
|
||||
@@ -96,10 +96,10 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<a @click="handleUploadFile(record)">上传文件</a>
|
||||
<a @click="handleUploadFile(record)" v-has="'internationalSeminar:upload'">上传文件</a>
|
||||
<!-- <a @click="handleSignup(record)">报名信息</a>-->
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleEdit(record)" v-has="'internationalSeminar:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'internationalSeminar:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'otherMeeting:search'">查询</a-button>
|
||||
<a-button @click="searchReset" icon="reload" class="reset-button" style="margin-left: 8px">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -63,9 +63,9 @@
|
||||
|
||||
<!-- 操作按钮区域 -->
|
||||
<div class="table-operator">
|
||||
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('会议管理')">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button @click="handleAdd" type="primary" icon="plus" v-has="'otherMeeting:add'">新增</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('会议管理')" v-has="'otherMeeting:export'">导出</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'otherMeeting:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
|
||||
<!-- table区域-begin -->
|
||||
@@ -94,10 +94,10 @@
|
||||
<span v-else></span>
|
||||
</template>
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<a @click="handleUploadFile(record)">上传文件</a>
|
||||
<a @click="handleUploadFile(record)" v-has="'otherMeeting:upload'">上传文件</a>
|
||||
<!-- <a @click="handleSignup(record)">报名信息</a>-->
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleEdit(record)" v-has="'otherMeeting:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'otherMeeting:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
@@ -46,7 +46,8 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款状态" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-dict-select-tag v-model="queryParam.chargeStatus " placeholder="请选择来款状态" dictCode="work_group_charge_status"/>
|
||||
<j-dict-select-tag v-model="queryParam.chargeStatus " placeholder="请选择来款状态"
|
||||
dictCode="work_group_charge_status"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
@@ -56,7 +57,8 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery"
|
||||
v-has="'workingGroupMember:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -67,16 +69,21 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">添加成员</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'workingGroupMember:add'" v-if="canOperate">添加成员</a-button>
|
||||
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :data="importParam"
|
||||
:action="importExcelUrl" @change="handleImportExcel">
|
||||
:action="importExcelUrl" @change="handleImportExcel" v-has="'workingGroupMember:import'" v-if="canOperate">
|
||||
<a-button type="primary" icon="import">导入</a-button>
|
||||
</a-upload>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('工作组成员')">导出</a-button>
|
||||
<a-button type="primary" icon="download" @click="downTemplate('工作组成员导入模板')">下载模板</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" @click="setChargeNotic">设置收费通知</a-button>
|
||||
<a-button type="primary" @click="setDunningReminder">催款提醒</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('工作组成员')" v-has="'workingGroupMember:export'">
|
||||
导出
|
||||
</a-button>
|
||||
<a-button type="primary" icon="download" @click="downTemplate('工作组成员导入模板')"
|
||||
v-has="'workingGroupMember:downTemplate'" v-if="canOperate">下载模板
|
||||
</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'workingGroupMember:batchDel'" v-if="canOperate">批量删除</a-button>
|
||||
<a-button type="primary" @click="setChargeNotic" v-has="'workingGroupMember:setChargeNotic'" v-if="canOperate">设置收费通知</a-button>
|
||||
<a-button type="primary" @click="setDunningReminder" v-has="'workingGroupMember:setDunningReminder'" v-if="canOperate">催款提醒
|
||||
</a-button>
|
||||
</div>
|
||||
<!-- /操作按钮区域-end-->
|
||||
|
||||
@@ -117,9 +124,9 @@
|
||||
<j-ellipsis :value="text" :length="18"></j-ellipsis>
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record" v-if="canOperate">
|
||||
<a @click="handleEdit(record)" v-has="'workingGroupMember:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'workingGroupMember:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
@@ -141,10 +148,10 @@ import StatusSlot from '../../components/tools/StatusSlot'
|
||||
import ProjectDetailModal from '../../components/ProjectDetailModal'
|
||||
import WorkingGroupMemberUnitModule from './modules/WorkingGroupMemberUnitModule'
|
||||
import WorkingGroupMemberSetChargeNotice from './modules/WorkingGroupMemberSetChargeNotice'
|
||||
import { getFileInfo } from '../../api/api'
|
||||
import Vue from 'vue'
|
||||
import { ACCESS_TOKEN } from '../../store/mutation-types'
|
||||
import PreviewFile from '../../components/jero/PreviewFile'
|
||||
|
||||
const Base64 = require('js-base64').Base64
|
||||
|
||||
export default {
|
||||
@@ -297,7 +304,8 @@ export default {
|
||||
],
|
||||
workingGroupDetail: {},
|
||||
chargeNoticeList: [], // 收费通知号选项
|
||||
importParam: {}
|
||||
importParam: {},
|
||||
canOperate: true, // 是否可操作(负责人B不可操作)
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -312,6 +320,7 @@ export default {
|
||||
this.spinning = true
|
||||
this.workingGroupProject = this.$route.query.workingGroupProject
|
||||
this.workingGroupProjectId = this.$route.query.workingGroupProjectId
|
||||
this.canOperate = this.$route.query.canOperate === 'true' ? true : false
|
||||
this.filters.workingGroupId = this.workingGroupProjectId
|
||||
this.importParam.workGroupId = this.workingGroupProjectId
|
||||
this.loadData()
|
||||
@@ -436,8 +445,8 @@ export default {
|
||||
previewFile(file) {
|
||||
console.log(file)
|
||||
if (file && file.url) {
|
||||
const fileFullUrl = `${window._CONFIG['domianWebSocketURL']}/sys/common/download/${file.id}?token=${Vue.ls.get(ACCESS_TOKEN)}&fullfilename=${file.fileName}`
|
||||
let url = `${window._CONFIG['onlinePreviewDomainURL']}?url=${encodeURIComponent(Base64.encode(fileFullUrl))}`
|
||||
const fileFullUrl = `${ window._CONFIG['domianWebSocketURL'] }/sys/common/download/${ file.id }?token=${ Vue.ls.get(ACCESS_TOKEN) }&fullfilename=${ file.fileName }`
|
||||
let url = `${ window._CONFIG['onlinePreviewDomainURL'] }?url=${ encodeURIComponent(Base64.encode(fileFullUrl)) }`
|
||||
// let url = `${window._CONFIG['onlinePreviewDomainURL']}?url=${encodeURIComponent(fileFullUrl)}`
|
||||
window.open(url)
|
||||
}
|
||||
|
||||
@@ -12,21 +12,21 @@
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'fileMaintenance:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
<!-- /查询区域-end-->
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">上传</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" @click="batchDistribute">批量分发</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('资料维护列表')">导出</a-button>
|
||||
<div class="table-operator" v-if="canOperate">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'fileMaintenance:add'">上传</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'fileMaintenance:batchDel'">批量删除</a-button>
|
||||
<a-button type="primary" @click="batchDistribute" v-has="'fileMaintenance:batchDistribute'">批量分发</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('资料维护列表')" v-has="'fileMaintenance:export'">导出
|
||||
</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -56,9 +56,9 @@
|
||||
<j-ellipsis :value="text" :length="20"></j-ellipsis>
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="handleDistribute(record.id)">分发</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record" v-if="canOperate">
|
||||
<a @click="handleDistribute(record.id)" v-has="'fileMaintenance:distribute'">分发</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'fileMaintenance:delete'">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
@@ -155,13 +155,15 @@ export default {
|
||||
projectType: null, // 1--工作组;2--分标委
|
||||
distributeModalVisible: false,
|
||||
isBatchDistribute: false,
|
||||
dataId: '' // 资料id,传给分发
|
||||
dataId: '', // 资料id,传给分发
|
||||
canOperate: true // 是否可操作(负责人B不可操作)
|
||||
}
|
||||
},
|
||||
created() {
|
||||
// 工作组
|
||||
if (this.$route.query.hasOwnProperty.call(this.$route.query, 'workingGroupId')) {
|
||||
this.filters.projectId = this.$route.query.workingGroupId
|
||||
this.canOperate = this.$route.query.canOperate === 'true' ? true : false
|
||||
this.projectType = 1
|
||||
this.filters.projectType = 1
|
||||
} else if (this.$route.query.hasOwnProperty.call(this.$route.query, 'id')) {
|
||||
|
||||
@@ -23,7 +23,8 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery"
|
||||
v-has="'workingGroupProject:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -34,8 +35,8 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="plus" @click="handleAdd">新增</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel">批量删除</a-button>
|
||||
<a-button type="primary" icon="plus" @click="handleAdd" v-has="'workingGroupProject:add'">新增</a-button>
|
||||
<a-button type="danger" icon="delete" @click="batchDel" v-has="'workingGroupProject:batchDel'">批量删除</a-button>
|
||||
|
||||
<!-- 进度条tooltip-->
|
||||
<div class="tooltip">
|
||||
@@ -59,18 +60,18 @@
|
||||
<!-- table表格区域-->
|
||||
<div>
|
||||
<a-table
|
||||
ref="table"
|
||||
size="middle"
|
||||
bordered
|
||||
rowKey="id"
|
||||
:columns="columns"
|
||||
:scroll="{x: 1300}"
|
||||
:dataSource="dataSource"
|
||||
:pagination="ipagination"
|
||||
:loading="loading"
|
||||
:rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
|
||||
@change="handleTableChange"
|
||||
class="j-table-force-nowrap">
|
||||
ref="table"
|
||||
size="middle"
|
||||
bordered
|
||||
rowKey="id"
|
||||
:columns="columns"
|
||||
:scroll="{x: 1300}"
|
||||
:dataSource="dataSource"
|
||||
:pagination="ipagination"
|
||||
:loading="loading"
|
||||
:rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
|
||||
@change="handleTableChange"
|
||||
class="j-table-force-nowrap">
|
||||
|
||||
<!-- 工作组名称-->
|
||||
<template slot="projectName" slot-scope="text, record">
|
||||
@@ -91,11 +92,11 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="goFilesMaintenance(record)">文件维护</a>
|
||||
<a @click="goConferenceMaintenance(record)">会议维护</a>
|
||||
<a @click="copyWorkGroup(record.id)">复制</a>
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="goFilesMaintenance(record)" v-has="'workingGroupProject:fileMaintenance'">文件维护</a>
|
||||
<a @click="goConferenceMaintenance(record)" v-has="'workingGroupProject:meetingMaintenance'">会议维护</a>
|
||||
<a @click="copyWorkGroup(record.id)" v-has="'workingGroupProject:copy'" v-if="record.canOperate">复制</a>
|
||||
<a @click="handleEdit(record)" v-has="'workingGroupProject:edit'" v-if="record.canOperate">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'workingGroupProject:delete'" v-if="record.canOperate">删除</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</div>
|
||||
@@ -113,7 +114,7 @@ import SelectPrincipal from '@comp/company/SelectPrincipal'
|
||||
import ProgressBar from '@comp/ProgressBar'
|
||||
import PageHeaderTitle from '@comp/layouts/PageHeaderTitle'
|
||||
import IconWorkingGruop from '@/assets/imgs/icon/icon_working_group.png'
|
||||
import { copyWorkingGroup } from '../../api/incomePaymentsApi'
|
||||
import { copyWorkingGroup, checkoutWorkingGroupPrincipal } from '../../api/incomePaymentsApi'
|
||||
|
||||
export default {
|
||||
name: 'WorkingGroupProjectManagement',
|
||||
@@ -171,6 +172,27 @@ export default {
|
||||
]
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
// 监听dataSource校验登录人信息
|
||||
dataSource: {
|
||||
handler(val) {
|
||||
let arr = val
|
||||
arr.forEach((item, index) => {
|
||||
// (负责人B不可操作)
|
||||
checkoutWorkingGroupPrincipal({ id: item.id }).then(res => {
|
||||
// 不可操作则置否
|
||||
if (res.success) {
|
||||
item.canOperate = true
|
||||
} else {
|
||||
item.canOperate = false
|
||||
}
|
||||
this.$set(this.dataSource, index, item)
|
||||
})
|
||||
})
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 文件维护
|
||||
@@ -182,6 +204,7 @@ export default {
|
||||
path: '/projectManagement/WorkingGroupProjectDataMaintenance',
|
||||
query: {
|
||||
workingGroupId: record.id,
|
||||
canOperate: record.canOperate
|
||||
}
|
||||
})
|
||||
},
|
||||
@@ -194,7 +217,8 @@ export default {
|
||||
path: '/projectManagement/ConferenceMaintenance',
|
||||
query: {
|
||||
workingGroupProject: record.workingGroupProject,
|
||||
workingGroupProjectId: record.id
|
||||
workingGroupProjectId: record.id,
|
||||
canOperate: record.canOperate
|
||||
}
|
||||
})
|
||||
},
|
||||
@@ -203,7 +227,7 @@ export default {
|
||||
* @param id
|
||||
*/
|
||||
copyWorkGroup(id) {
|
||||
copyWorkingGroup({id: id}).then(res => {
|
||||
copyWorkingGroup({ id: id }).then(res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
} else {
|
||||
@@ -222,7 +246,8 @@ export default {
|
||||
path: '/projectManagement/WorkingGroupMemberUnitMaintenance',
|
||||
query: {
|
||||
workingGroupProject: record.workingGroupProject,
|
||||
workingGroupProjectId: record.id
|
||||
workingGroupProjectId: record.id,
|
||||
canOperate: record.canOperate
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -259,7 +284,7 @@ export default {
|
||||
}
|
||||
|
||||
&-partial-payment {
|
||||
background: linear-gradient(0deg,#0075a9 0%, #0096d8 100%);
|
||||
background: linear-gradient(0deg, #0075a9 0%, #0096d8 100%);
|
||||
}
|
||||
|
||||
&-non-payment {
|
||||
|
||||
@@ -29,7 +29,8 @@
|
||||
style="width:100%"
|
||||
:dropdownStyle="{ maxHeight: '200px',maxWidth:'100px','overflow-x':'hidden',' overflow-y': 'auto' }"
|
||||
:treeData="treeDepartData"
|
||||
v-model="queryParam.departId"
|
||||
:replaceFields="replaceFields"
|
||||
v-model="queryParam.departCode"
|
||||
placeholder="请选择科室">
|
||||
</a-tree-select>
|
||||
</a-form-item>
|
||||
@@ -67,7 +68,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="4" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'wholeInstituteStatistics:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -78,7 +79,7 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('全所统计')">导出</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('全所统计')" v-has="'wholeInstituteStatistics:export'">导出</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -90,7 +91,7 @@
|
||||
bordered
|
||||
rowKey="id"
|
||||
:columns="columns"
|
||||
:scroll="{x: 1200}"
|
||||
:scroll="{x: 1300}"
|
||||
:dataSource="dataSource"
|
||||
:pagination="ipagination"
|
||||
:loading="loading"
|
||||
@@ -116,7 +117,7 @@
|
||||
ref="footTable"
|
||||
rowKey="id"
|
||||
:columns="columnsFooter"
|
||||
:scroll="{x: 1200}"
|
||||
:scroll="{x: 1300}"
|
||||
:dataSource="footerDataSource"
|
||||
:showHeader="false"
|
||||
:pagination="false"
|
||||
@@ -166,6 +167,9 @@ export default {
|
||||
sm: { span: 10 }
|
||||
},
|
||||
treeDepartData: [],
|
||||
replaceFields: {
|
||||
value: 'orgCode'
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
title: '序号',
|
||||
@@ -197,13 +201,15 @@ export default {
|
||||
}, {
|
||||
title: '应收金额',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'allMoney'
|
||||
width: 200,
|
||||
dataIndex: 'allMoney',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'comeAllMoney'
|
||||
width: 200,
|
||||
dataIndex: 'comeAllMoney',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '来款用途',
|
||||
align: 'center',
|
||||
@@ -239,13 +245,15 @@ export default {
|
||||
}, {
|
||||
title: '应收金额',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'allMoney'
|
||||
width: 200,
|
||||
dataIndex: 'allMoney',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'comeAllMoney'
|
||||
width: 200,
|
||||
dataIndex: 'comeAllMoney',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '来款用途',
|
||||
align: 'center',
|
||||
@@ -254,6 +262,7 @@ export default {
|
||||
}
|
||||
],
|
||||
footerDataSource: [],
|
||||
// 给定当年作为来款年份默认查询条件
|
||||
queryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
@@ -323,7 +332,7 @@ export default {
|
||||
this.loading = true
|
||||
getAction(this.url.list, params).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataSource = res.result.records
|
||||
this.dataSource = res.result.pageList.records
|
||||
// this.dataSource = res.result.pageList.records
|
||||
let obj = {
|
||||
id: '1',
|
||||
@@ -332,8 +341,8 @@ export default {
|
||||
comeAllMoney: res.result.sumOfReallyMoney.toString()
|
||||
}
|
||||
this.footerDataSource = [obj]
|
||||
if (res.result.total) {
|
||||
this.ipagination.total = res.result.total
|
||||
if (res.result.pageList.total) {
|
||||
this.ipagination.total = res.result.pageList.total
|
||||
//清空列表选中
|
||||
this.onClearSelected()
|
||||
} else {
|
||||
@@ -395,6 +404,7 @@ export default {
|
||||
.footer-table {
|
||||
/deep/ .ant-table-tbody > tr > td {
|
||||
border: none;
|
||||
background-color: #F5F5F5;
|
||||
}
|
||||
|
||||
/deep/ .ant-table-fixed-right table {
|
||||
|
||||
+74
-11
@@ -9,7 +9,7 @@
|
||||
<a-row>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款项目" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入来款项目" v-model="queryParam.contractName"></a-input>
|
||||
<a-input placeholder="请输入来款项目" v-model="queryParam.projectName"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
@@ -19,21 +19,21 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款年份" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-year-date style="width:100%" placeholder="请选择来款年份" v-model="queryParam.paymentDate"></j-year-date>
|
||||
<j-year-date style="width:100%" placeholder="请选择来款年份" v-model="queryParam.year"></j-year-date>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="付款状态" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-dict-select-tag v-model="queryParam.pack"
|
||||
<j-dict-select-tag v-model="queryParam.inAccountStatue"
|
||||
placeholder="请选择付款状态"
|
||||
dictCode="yn"/>
|
||||
dictCode="pay_statistics_status"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="10" :lg="11" :md="12" :sm="24">
|
||||
<a-form-item label="应收款项" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.contractName" class="query-group-cust"></a-input>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.allMoney" class="query-group-cust"></a-input>
|
||||
<span class="query-group-split-cust"></span>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.contractName" class="query-group-cust"></a-input>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.allMoneyTwo" class="query-group-cust"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="4" :lg="7" :md="8" :sm="24">
|
||||
@@ -49,7 +49,7 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('全所统计')">导出</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('个人来款详情')">导出</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -117,6 +117,7 @@
|
||||
import PageHeaderTitle from '../../../components/layouts/PageHeaderTitle'
|
||||
import { JeroListMixin } from '../../../mixins/JeroListMixin'
|
||||
import JYearDate from '../../../components/jero/JYearDate'
|
||||
import { getAction } from '@api/manage'
|
||||
|
||||
export default {
|
||||
name: 'IndividualPaymentStatisticsDetail',
|
||||
@@ -133,7 +134,15 @@ export default {
|
||||
sm: { span: 10 }
|
||||
},
|
||||
url: {
|
||||
list: ''
|
||||
list: '/statistics/principalPeople/listForDetail',
|
||||
exportXlsUrl: '/statistics/principalPeople/excelDetail'
|
||||
},
|
||||
// 给定当年作为来款年份默认查询条件
|
||||
queryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
lastQueryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
@@ -149,7 +158,7 @@ export default {
|
||||
title: '来款项目',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'workGroup',
|
||||
dataIndex: 'projectName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '应收金额',
|
||||
@@ -167,7 +176,7 @@ export default {
|
||||
title: '来款用途',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'chargeUse_dictText',
|
||||
dataIndex: 'chargeUse_text',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}
|
||||
],
|
||||
@@ -228,7 +237,61 @@ export default {
|
||||
},
|
||||
true
|
||||
)
|
||||
}
|
||||
},
|
||||
loadData(arg) {
|
||||
if (!this.url.list) {
|
||||
this.$message.error('请设置url.list属性!')
|
||||
return
|
||||
}
|
||||
//加载数据 若传入参数1则加载第一页的内容
|
||||
if (arg === 1) {
|
||||
this.ipagination.current = 1
|
||||
}
|
||||
let params = this.getQueryParams()//查询条件
|
||||
// 负责人id
|
||||
params.principalNameId = this.$route.query.principalId
|
||||
this.loading = true
|
||||
getAction(this.url.list, params).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataSource = res.result.pageList.records
|
||||
// this.dataSource = res.result.pageList.records
|
||||
let obj = {
|
||||
id: '1',
|
||||
title: '总计',
|
||||
allMoney: res.result.sumOfMoney.toString(),
|
||||
comeAllMoney: res.result.sumOfReallyMoney.toString()
|
||||
}
|
||||
this.footerDataSource = [obj]
|
||||
if (res.result.pageList.total) {
|
||||
this.ipagination.total = res.result.pageList.total
|
||||
//清空列表选中
|
||||
this.onClearSelected()
|
||||
} else {
|
||||
this.ipagination.total = 0
|
||||
}
|
||||
}
|
||||
if (this.dataSource.length > 0) {
|
||||
this.$nextTick(() => {
|
||||
this.setScroll()
|
||||
})
|
||||
}
|
||||
if (res.code === 510) {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
this.loading = false
|
||||
}).finally(() => {
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
searchReset() {
|
||||
this.lastQueryParam = {
|
||||
year: new Date().getFullYear().toString()
|
||||
}
|
||||
this.queryParam = {
|
||||
year: new Date().getFullYear().toString()
|
||||
}
|
||||
this.loadData(1)
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
+100
-82
@@ -7,66 +7,38 @@
|
||||
<div class="table-page-search-wrapper">
|
||||
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||
<a-row>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款单位" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入来款单位" v-model="queryParam.contractNum"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款项目" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入来款项目" v-model="queryParam.contractName"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="项目负责人" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<select-principal placeholder="请选择项目负责人" v-model="queryParam.principalId"></select-principal>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款年份" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-year-date style="width:100%" placeholder="请选择来款年份" v-model="queryParam.year"></j-year-date>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="10" :lg="11" :md="12" :sm="24">
|
||||
<a-form-item label="应收款项" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.allMoney" class="query-group-cust"></a-input>
|
||||
<span class="query-group-split-cust"></span>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.allMoneyTwo" class="query-group-cust"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="所属科室" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-tree-select
|
||||
style="width:100%"
|
||||
:dropdownStyle="{ maxHeight: '200px',maxWidth:'100px','overflow-x':'hidden',' overflow-y': 'auto' }"
|
||||
:treeData="treeDepartData"
|
||||
v-model="queryParam.departId"
|
||||
:replaceFields="replaceFields"
|
||||
v-model="queryParam.departCode"
|
||||
placeholder="请选择科室">
|
||||
</a-tree-select>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款用途" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-dict-select-tag v-model="queryParam.chargeUse" placeholder="请选择来款用途" dictCode="payment_charge_use"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="10" :lg="11" :md="12" :sm="24">
|
||||
<a-form-item label="应收款项" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.contractName" class="query-group-cust"></a-input>
|
||||
<span class="query-group-split-cust"></span>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.contractName" class="query-group-cust"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款年份" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-year-date style="width:100%" placeholder="请选择来款年份" v-model="queryParam.paymentDate"></j-year-date>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="是否打包" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-dict-select-tag v-model="queryParam.pack"
|
||||
placeholder="请选择是否打包"
|
||||
dictCode="yn"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="付款状态" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-dict-select-tag v-model="queryParam.pack"
|
||||
placeholder="请选择付款状态"
|
||||
dictCode="yn"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="4" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'individualPaymentStatistics:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -77,7 +49,9 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('全所统计')">导出</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('个人来款统计')"
|
||||
v-has="'individualPaymentStatistics:export'">导出
|
||||
</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -140,6 +114,7 @@ import { JeroListMixin } from '../../../mixins/JeroListMixin'
|
||||
import JYearDate from '../../../components/jero/JYearDate'
|
||||
import SelectPrincipal from '../../../components/company/SelectPrincipal'
|
||||
import { queryDepartTreeList } from '../../../api/api'
|
||||
import { getAction } from '@api/manage'
|
||||
|
||||
export default {
|
||||
name: 'IndividualPaymentStatisticsList',
|
||||
@@ -157,6 +132,9 @@ export default {
|
||||
sm: { span: 10 }
|
||||
},
|
||||
treeDepartData: [],
|
||||
replaceFields: {
|
||||
value: 'orgCode'
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
title: '序号',
|
||||
@@ -168,37 +146,25 @@ export default {
|
||||
return parseInt(index) + 1
|
||||
}
|
||||
}, {
|
||||
title: '项目名称',
|
||||
align: 'center',
|
||||
// width: 200,
|
||||
dataIndex: 'chargeProject',
|
||||
scopedSlots: { customRender: 'projectName' }
|
||||
}, {
|
||||
title: '负责人',
|
||||
title: '项目负责人',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'principalName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '所属科室',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'departId',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
scopedSlots: { customRender: 'projectName' }
|
||||
}, {
|
||||
title: '应收金额',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'receivableAmount'
|
||||
dataIndex: 'allMoney'
|
||||
}, {
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'paidAmount'
|
||||
dataIndex: 'comeAllMoney'
|
||||
}, {
|
||||
title: '来款用途',
|
||||
title: '个人完成率',
|
||||
align: 'center',
|
||||
dataIndex: 'chargeUse_dictText',
|
||||
dataIndex: 'finishRate',
|
||||
width: 140
|
||||
}
|
||||
],
|
||||
@@ -207,46 +173,42 @@ export default {
|
||||
title: '序号',
|
||||
dataIndex: 'title',
|
||||
key: 'rowIndex',
|
||||
width: 120,
|
||||
width: 60,
|
||||
align: 'center'
|
||||
}, {
|
||||
title: '项目名称',
|
||||
align: 'center',
|
||||
// width: 200,
|
||||
dataIndex: 'chargeProject',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '负责人',
|
||||
title: '项目负责人',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'principalName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '所属科室',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'departId',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '应收金额',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'receivableAmount'
|
||||
dataIndex: 'allMoney'
|
||||
}, {
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
width: 140,
|
||||
dataIndex: 'paidAmount'
|
||||
dataIndex: 'comeAllMoney'
|
||||
}, {
|
||||
title: '来款用途',
|
||||
title: '个人完成率',
|
||||
align: 'center',
|
||||
dataIndex: 'chargeUse_dictText',
|
||||
width: 140
|
||||
}
|
||||
],
|
||||
footerDataSource: [],
|
||||
// 给定当年作为来款年份默认查询条件
|
||||
queryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
lastQueryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
url: {
|
||||
list: ''
|
||||
list: '/statistics/principalPeople/list',
|
||||
exportXlsUrl: '/statistics/principalPeople/excel'
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -274,9 +236,12 @@ export default {
|
||||
true
|
||||
)
|
||||
},
|
||||
goDetail(id) {
|
||||
goDetail(record) {
|
||||
this.$router.push({
|
||||
path: '/statisticalReport/departmentStatistics/IndividualPaymentStatisticsDetail'
|
||||
path: '/statisticalReport/departmentStatistics/IndividualPaymentStatisticsDetail',
|
||||
query: {
|
||||
principalId: record.principalId
|
||||
}
|
||||
})
|
||||
},
|
||||
/**
|
||||
@@ -296,6 +261,58 @@ export default {
|
||||
console.log(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
loadData(arg) {
|
||||
if (!this.url.list) {
|
||||
this.$message.error('请设置url.list属性!')
|
||||
return
|
||||
}
|
||||
//加载数据 若传入参数1则加载第一页的内容
|
||||
if (arg === 1) {
|
||||
this.ipagination.current = 1
|
||||
}
|
||||
let params = this.getQueryParams()//查询条件
|
||||
this.loading = true
|
||||
getAction(this.url.list, params).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataSource = res.result.pageList.records
|
||||
// this.dataSource = res.result.pageList.records
|
||||
let obj = {
|
||||
id: '1',
|
||||
title: '总计',
|
||||
allMoney: res.result.sumOfMoney.toString(),
|
||||
comeAllMoney: res.result.sumOfReallyMoney.toString()
|
||||
}
|
||||
this.footerDataSource = [obj]
|
||||
if (res.result.pageList.total) {
|
||||
this.ipagination.total = res.result.pageList.total
|
||||
//清空列表选中
|
||||
this.onClearSelected()
|
||||
} else {
|
||||
this.ipagination.total = 0
|
||||
}
|
||||
}
|
||||
if (this.dataSource.length > 0) {
|
||||
this.$nextTick(() => {
|
||||
this.setScroll()
|
||||
})
|
||||
}
|
||||
if (res.code === 510) {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
this.loading = false
|
||||
}).finally(() => {
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
searchReset() {
|
||||
this.lastQueryParam = {
|
||||
year: new Date().getFullYear().toString()
|
||||
}
|
||||
this.queryParam = {
|
||||
year: new Date().getFullYear().toString()
|
||||
}
|
||||
this.loadData(1)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -330,6 +347,7 @@ export default {
|
||||
.footer-table {
|
||||
/deep/ .ant-table-tbody > tr > td {
|
||||
border: none;
|
||||
background-color: #F5F5F5;
|
||||
}
|
||||
|
||||
/deep/ .ant-table-fixed-right table {
|
||||
|
||||
+150
-31
@@ -7,9 +7,14 @@
|
||||
<div class="table-page-search-wrapper">
|
||||
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||
<a-row>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款单位" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入来款单位" v-model="queryParam.chargeCompanyTemporaryName"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款项目" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入来款项目" v-model="queryParam.contractName"></a-input>
|
||||
<a-input placeholder="请输入来款项目" v-model="queryParam.projectName"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
@@ -19,26 +24,37 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款年份" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-year-date style="width:100%" placeholder="请选择来款年份" v-model="queryParam.paymentDate"></j-year-date>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="付款状态" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-dict-select-tag v-model="queryParam.pack"
|
||||
placeholder="请选择付款状态"
|
||||
dictCode="yn"/>
|
||||
<j-year-date style="width:100%" placeholder="请选择来款年份" v-model="queryParam.year"></j-year-date>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="10" :lg="11" :md="12" :sm="24">
|
||||
<a-form-item label="应收款项" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.contractName" class="query-group-cust"></a-input>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.allMoney" class="query-group-cust"></a-input>
|
||||
<span class="query-group-split-cust"></span>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.contractName" class="query-group-cust"></a-input>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.allMoneyTwo" class="query-group-cust"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="项目负责人" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<select-principal placeholder="请选择项目负责人" v-model="queryParam.principalNameId"></select-principal>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="所属科室" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-tree-select
|
||||
style="width:100%"
|
||||
:dropdownStyle="{ maxHeight: '200px',maxWidth:'100px','overflow-x':'hidden',' overflow-y': 'auto' }"
|
||||
:treeData="treeDepartData"
|
||||
:replaceFields="replaceFields"
|
||||
v-model="queryParam.departCode"
|
||||
placeholder="请选择科室">
|
||||
</a-tree-select>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="4" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery"
|
||||
v-has="'projectPaymentStatistics:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -49,7 +65,9 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('全所统计')">导出</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('全所统计')"
|
||||
v-has="'projectPaymentStatistics:export'">导出
|
||||
</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -79,12 +97,7 @@
|
||||
<j-ellipsis :value="text" :length="18"></j-ellipsis>
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="goDetail(record.id)">详情</a>
|
||||
</span>
|
||||
|
||||
<template slot="footer" v-if="dataSource.length > 0">
|
||||
|
||||
<a-table
|
||||
size="middle"
|
||||
ref="footTable"
|
||||
@@ -96,12 +109,6 @@
|
||||
:scroll="{x: 1100}"
|
||||
class="j-table-force-nowrap footer-table">
|
||||
|
||||
<!-- 项目名称-->
|
||||
<template slot="projectName" slot-scope="text, record">
|
||||
<j-ellipsis :value="text" :length="18" class="primary-color"
|
||||
@click="openDetailModal(record)"></j-ellipsis>
|
||||
</template>
|
||||
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis :value="text" :length="18"></j-ellipsis>
|
||||
</template>
|
||||
@@ -118,10 +125,13 @@ import IconImg from '@/assets/imgs/icon/icon_statistical_report.png'
|
||||
import PageHeaderTitle from '../../../components/layouts/PageHeaderTitle'
|
||||
import { JeroListMixin } from '../../../mixins/JeroListMixin'
|
||||
import JYearDate from '../../../components/jero/JYearDate'
|
||||
import { getAction } from '@api/manage'
|
||||
import SelectPrincipal from '@comp/company/SelectPrincipal'
|
||||
import { queryDepartTreeList } from '@api/api'
|
||||
|
||||
export default {
|
||||
name: 'ProjectPaymentStatisticsList',
|
||||
components: { PageHeaderTitle, JYearDate },
|
||||
components: { PageHeaderTitle, JYearDate, SelectPrincipal },
|
||||
mixins: [JeroListMixin],
|
||||
data() {
|
||||
return {
|
||||
@@ -135,7 +145,8 @@ export default {
|
||||
sm: { span: 10 }
|
||||
},
|
||||
url: {
|
||||
list: ''
|
||||
list: '/statistics/allProjectStatistics/list',
|
||||
exportXlsUrl: '/statistics/allProjectStatistics/statistics/excel'
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
@@ -147,11 +158,23 @@ export default {
|
||||
customRender: function (t, r, index) {
|
||||
return parseInt(index) + 1
|
||||
}
|
||||
}, {
|
||||
title: '项目负责人',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'principalName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '来款项目',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'workGroup',
|
||||
dataIndex: 'projectName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '来款单位',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'chargeCompanyTemporaryName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '应收金额',
|
||||
@@ -169,7 +192,7 @@ export default {
|
||||
title: '来款用途',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'chargeUse_dictText',
|
||||
dataIndex: 'chargeUse_text',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}
|
||||
],
|
||||
@@ -180,11 +203,23 @@ export default {
|
||||
dataIndex: 'title',
|
||||
width: 100,
|
||||
align: 'center'
|
||||
}, {
|
||||
title: '项目负责人',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'principalName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '来款项目',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'workGroup',
|
||||
dataIndex: 'projectName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '来款单位',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'chargeCompanyTemporaryName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '应收金额',
|
||||
@@ -202,18 +237,50 @@ export default {
|
||||
title: '来款用途',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'chargeUse_dictText',
|
||||
dataIndex: 'chargeUse_text',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}
|
||||
],
|
||||
// 总计数据
|
||||
footerDataSource: []
|
||||
footerDataSource: [],
|
||||
// 给定当年作为来款年份默认查询条件
|
||||
queryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
lastQueryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
treeDepartData: [], // 部门数据
|
||||
replaceFields: {
|
||||
value: 'orgCode'
|
||||
},
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.loadDepartTreeData()
|
||||
},
|
||||
mounted() {
|
||||
this.setScroll()
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 获取科室(部门)数据
|
||||
*/
|
||||
loadDepartTreeData() {
|
||||
queryDepartTreeList().then((res) => {
|
||||
if (res.success) {
|
||||
this.treeDepartData = []
|
||||
let treeList = res.result
|
||||
for (let a = 0; a < treeList.length; a++) {
|
||||
let temp = treeList[a]
|
||||
temp.isLeaf = temp.leaf
|
||||
this.treeDepartData.push(temp)
|
||||
}
|
||||
} else {
|
||||
console.log(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 同步表与footer滚动,保留底部滚动条
|
||||
setScroll() {
|
||||
if (this.dataSource.length === 0) {
|
||||
@@ -230,6 +297,58 @@ export default {
|
||||
},
|
||||
true
|
||||
)
|
||||
},
|
||||
loadData(arg) {
|
||||
if (!this.url.list) {
|
||||
this.$message.error('请设置url.list属性!')
|
||||
return
|
||||
}
|
||||
//加载数据 若传入参数1则加载第一页的内容
|
||||
if (arg === 1) {
|
||||
this.ipagination.current = 1
|
||||
}
|
||||
let params = this.getQueryParams()//查询条件
|
||||
this.loading = true
|
||||
getAction(this.url.list, params).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataSource = res.result.pageList.records
|
||||
// this.dataSource = res.result.pageList.records
|
||||
let obj = {
|
||||
id: '1',
|
||||
title: '总计',
|
||||
allMoney: res.result.sumOfMoney.toString(),
|
||||
comeAllMoney: res.result.sumOfReallyMoney.toString()
|
||||
}
|
||||
this.footerDataSource = [obj]
|
||||
if (res.result.pageList.total) {
|
||||
this.ipagination.total = res.result.pageList.total
|
||||
//清空列表选中
|
||||
this.onClearSelected()
|
||||
} else {
|
||||
this.ipagination.total = 0
|
||||
}
|
||||
}
|
||||
if (this.dataSource.length > 0) {
|
||||
this.$nextTick(() => {
|
||||
this.setScroll()
|
||||
})
|
||||
}
|
||||
if (res.code === 510) {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
this.loading = false
|
||||
}).finally(() => {
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
searchReset() {
|
||||
this.lastQueryParam = {
|
||||
year: new Date().getFullYear().toString()
|
||||
}
|
||||
this.queryParam = {
|
||||
year: new Date().getFullYear().toString()
|
||||
}
|
||||
this.loadData(1)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+82
-18
@@ -9,7 +9,7 @@
|
||||
<a-row>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款项目" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入来款项目" v-model="queryParam.contractName"></a-input>
|
||||
<a-input placeholder="请输入来款项目" v-model="queryParam.projectName"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
@@ -19,21 +19,21 @@
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="来款年份" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-year-date style="width:100%" placeholder="请选择来款年份" v-model="queryParam.paymentDate"></j-year-date>
|
||||
<j-year-date style="width:100%" placeholder="请选择来款年份" v-model="queryParam.year"></j-year-date>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="6" :lg="7" :md="8" :sm="24">
|
||||
<a-form-item label="付款状态" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<j-dict-select-tag v-model="queryParam.pack"
|
||||
<j-dict-select-tag v-model="queryParam.inAccountStatue"
|
||||
placeholder="请选择付款状态"
|
||||
dictCode="yn"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="10" :lg="11" :md="12" :sm="24">
|
||||
<a-form-item label="应收款项" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.contractName" class="query-group-cust"></a-input>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.allMoney" class="query-group-cust"></a-input>
|
||||
<span class="query-group-split-cust"></span>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.contractName" class="query-group-cust"></a-input>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.allMoneyTwo" class="query-group-cust"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="4" :lg="7" :md="8" :sm="24">
|
||||
@@ -118,6 +118,7 @@
|
||||
import PageHeaderTitle from '../../../components/layouts/PageHeaderTitle'
|
||||
import { JeroListMixin } from '../../../mixins/JeroListMixin'
|
||||
import JYearDate from '../../../components/jero/JYearDate'
|
||||
import { getAction } from '@api/manage'
|
||||
|
||||
export default {
|
||||
name: 'EnterprisePaymentStatisticsDetail',
|
||||
@@ -134,7 +135,8 @@ export default {
|
||||
sm: { span: 10 }
|
||||
},
|
||||
url: {
|
||||
list: ''
|
||||
list: '/statistics/companyComeMoney/listForDetail',
|
||||
exportXlsUrl: '/statistics/companyComeMoney/excelDetail'
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
@@ -149,31 +151,31 @@ export default {
|
||||
}, {
|
||||
title: '项目负责人',
|
||||
align: 'center',
|
||||
dataIndex: 'workGroup',
|
||||
dataIndex: 'principalName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '来款单位',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'allMoney',
|
||||
dataIndex: 'chargeCompanyName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '应收金额',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'comeAllMoney',
|
||||
dataIndex: 'allMoney',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'moneyRate',
|
||||
dataIndex: 'comeAllMoney',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '来款用途',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'chargeUse_dictText',
|
||||
dataIndex: 'chargeUse_text',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}
|
||||
],
|
||||
@@ -187,36 +189,43 @@ export default {
|
||||
}, {
|
||||
title: '项目负责人',
|
||||
align: 'center',
|
||||
dataIndex: 'workGroup',
|
||||
dataIndex: 'principalName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '来款单位',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'allMoney',
|
||||
dataIndex: 'chargeCompanyName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '应收金额',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'comeAllMoney',
|
||||
dataIndex: 'allMoney',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '实收金额',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'moneyRate',
|
||||
dataIndex: 'comeAllMoney',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '来款用途',
|
||||
align: 'center',
|
||||
width: 160,
|
||||
dataIndex: 'chargeUse_dictText',
|
||||
dataIndex: 'chargeUse_text',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}
|
||||
],
|
||||
// 总计数据
|
||||
footerDataSource: []
|
||||
footerDataSource: [],
|
||||
// 给定当年作为来款年份默认查询条件
|
||||
queryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
lastQueryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@@ -239,7 +248,61 @@ export default {
|
||||
},
|
||||
true
|
||||
)
|
||||
}
|
||||
},
|
||||
loadData(arg) {
|
||||
if (!this.url.list) {
|
||||
this.$message.error('请设置url.list属性!')
|
||||
return
|
||||
}
|
||||
//加载数据 若传入参数1则加载第一页的内容
|
||||
if (arg === 1) {
|
||||
this.ipagination.current = 1
|
||||
}
|
||||
let params = this.getQueryParams()//查询条件
|
||||
// 企业id
|
||||
params.chargeCompanyTemporaryId = this.$route.query.chargeCompanyId
|
||||
this.loading = true
|
||||
getAction(this.url.list, params).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataSource = res.result.pageList.records
|
||||
// this.dataSource = res.result.pageList.records
|
||||
let obj = {
|
||||
id: '1',
|
||||
title: '总计',
|
||||
allMoney: res.result.sumOfMoney.toString(),
|
||||
comeAllMoney: res.result.sumOfReallyMoney.toString()
|
||||
}
|
||||
this.footerDataSource = [obj]
|
||||
if (res.result.pageList.total) {
|
||||
this.ipagination.total = res.result.pageList.total
|
||||
//清空列表选中
|
||||
this.onClearSelected()
|
||||
} else {
|
||||
this.ipagination.total = 0
|
||||
}
|
||||
}
|
||||
if (this.dataSource.length > 0) {
|
||||
this.$nextTick(() => {
|
||||
this.setScroll()
|
||||
})
|
||||
}
|
||||
if (res.code === 510) {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
this.loading = false
|
||||
}).finally(() => {
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
searchReset() {
|
||||
this.lastQueryParam = {
|
||||
year: new Date().getFullYear().toString()
|
||||
}
|
||||
this.queryParam = {
|
||||
year: new Date().getFullYear().toString()
|
||||
}
|
||||
this.loadData(1)
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -273,6 +336,7 @@ export default {
|
||||
.footer-table {
|
||||
/deep/ .ant-table-tbody > tr > td {
|
||||
border: none;
|
||||
background-color: #F5F5F5;
|
||||
}
|
||||
|
||||
/deep/ .ant-table-fixed-right table {
|
||||
|
||||
+87
-15
@@ -8,8 +8,8 @@
|
||||
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||
<a-row>
|
||||
<a-col :xxl="4" :xl="10" :lg="12" :md="12" :sm="24">
|
||||
<a-form-item label="来款企业" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入来款企业" v-model="queryParam.workGroup"></a-input>
|
||||
<a-form-item label="来款企业" :labelCol="labelCol" :wrapperCol="wrapperCol" style="margin-bottom: -1px">
|
||||
<company-select :can-add="false" placeholder="请选择来款企业" v-model="queryParam.chargeCompany"></company-select>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xxl="4" :xl="10" :lg="12" :md="12" :sm="24">
|
||||
@@ -19,14 +19,14 @@
|
||||
</a-col>
|
||||
<a-col :xl="10" :lg="11" :md="12" :sm="24">
|
||||
<a-form-item label="应收款项" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.contractName" class="query-group-cust"></a-input>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.allMoney" class="query-group-cust"></a-input>
|
||||
<span class="query-group-split-cust"></span>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.contractName" class="query-group-cust"></a-input>
|
||||
<a-input placeholder="请输入应收款项" v-model="queryParam.allMoneyTwo" class="query-group-cust"></a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xl="4" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'companyPaymentStatistics:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('全所统计')">导出</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('企业来款统计')" v-has="'companyPaymentStatistics:export'">导出</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="goDetail(record.id)">详情</a>
|
||||
<a @click="goDetail(record)" v-has="'companyPaymentStatistics:detail'">详情</a>
|
||||
</span>
|
||||
|
||||
<template slot="footer" v-if="dataSource.length > 0">
|
||||
@@ -93,6 +93,7 @@
|
||||
<template slot="text" slot-scope="text">
|
||||
<j-ellipsis :value="text" :length="18"></j-ellipsis>
|
||||
</template>
|
||||
|
||||
</a-table>
|
||||
</template>
|
||||
|
||||
@@ -107,10 +108,12 @@ import IconImg from '@/assets/imgs/icon/icon_statistical_report.png'
|
||||
import PageHeaderTitle from '../../../components/layouts/PageHeaderTitle'
|
||||
import { JeroListMixin } from '../../../mixins/JeroListMixin'
|
||||
import JYearDate from '../../../components/jero/JYearDate'
|
||||
import { getAction } from '@api/manage'
|
||||
import CompanySelect from '@comp/company/CompanySelect'
|
||||
|
||||
export default {
|
||||
name: 'EnterprisePaymentStatisticsList',
|
||||
components: { PageHeaderTitle, JYearDate },
|
||||
components: { PageHeaderTitle, JYearDate, CompanySelect },
|
||||
mixins: [JeroListMixin],
|
||||
data() {
|
||||
return {
|
||||
@@ -124,7 +127,8 @@ export default {
|
||||
sm: { span: 10 }
|
||||
},
|
||||
url: {
|
||||
list: ''
|
||||
list: '/statistics/companyComeMoney/list',
|
||||
exportXlsUrl: ''
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
@@ -139,7 +143,7 @@ export default {
|
||||
}, {
|
||||
title: '来款企业',
|
||||
align: 'center',
|
||||
dataIndex: 'workGroup',
|
||||
dataIndex: 'chargeCompanyTemporaryName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '应收总金额',
|
||||
@@ -172,7 +176,7 @@ export default {
|
||||
}, {
|
||||
title: '来款企业',
|
||||
align: 'center',
|
||||
dataIndex: 'workGroup',
|
||||
dataIndex: 'chargeCompanyTemporaryName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
}, {
|
||||
title: '应收总金额',
|
||||
@@ -195,17 +199,26 @@ export default {
|
||||
}
|
||||
],
|
||||
// 总计数据
|
||||
footerDataSource: []
|
||||
footerDataSource: [],
|
||||
// 给定当年作为来款年份默认查询条件
|
||||
queryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
lastQueryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.setScroll()
|
||||
},
|
||||
methods: {
|
||||
goDetail(id) {
|
||||
console.log(id)
|
||||
goDetail(record) {
|
||||
this.$router.push({
|
||||
path: '/statisticalReport/enterprisePaymentStatistics/EnterprisePaymentStatisticsDetail'
|
||||
path: '/statisticalReport/enterprisePaymentStatistics/EnterprisePaymentStatisticsDetail',
|
||||
query: {
|
||||
chargeCompanyId: record.chargeCompanyTemporaryId
|
||||
}
|
||||
})
|
||||
},
|
||||
// 同步表与footer滚动,保留底部滚动条
|
||||
@@ -224,6 +237,64 @@ export default {
|
||||
},
|
||||
true
|
||||
)
|
||||
},
|
||||
loadData(arg) {
|
||||
if (!this.url.list) {
|
||||
this.$message.error('请设置url.list属性!')
|
||||
return
|
||||
}
|
||||
//加载数据 若传入参数1则加载第一页的内容
|
||||
if (arg === 1) {
|
||||
this.ipagination.current = 1
|
||||
}
|
||||
let params = this.getQueryParams()//查询条件
|
||||
if (params.chargeCompany) {
|
||||
params.chargeCompanyId = params.chargeCompany.id
|
||||
}
|
||||
// 将企业信息对象从查询参数中去掉
|
||||
delete params.chargeCompany
|
||||
console.log(params)
|
||||
this.loading = true
|
||||
getAction(this.url.list, params).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataSource = res.result.pageList.records
|
||||
// this.dataSource = res.result.pageList.records
|
||||
let obj = {
|
||||
id: '1',
|
||||
title: '总计',
|
||||
allMoney: res.result.sumOfMoney.toString(),
|
||||
comeAllMoney: res.result.sumOfReallyMoney.toString()
|
||||
}
|
||||
this.footerDataSource = [obj]
|
||||
if (res.result.pageList.total) {
|
||||
this.ipagination.total = res.result.pageList.total
|
||||
//清空列表选中
|
||||
this.onClearSelected()
|
||||
} else {
|
||||
this.ipagination.total = 0
|
||||
}
|
||||
}
|
||||
if (this.dataSource.length > 0) {
|
||||
this.$nextTick(() => {
|
||||
this.setScroll()
|
||||
})
|
||||
}
|
||||
if (res.code === 510) {
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
this.loading = false
|
||||
}).finally(() => {
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
searchReset() {
|
||||
this.lastQueryParam = {
|
||||
year: new Date().getFullYear().toString()
|
||||
}
|
||||
this.queryParam = {
|
||||
year: new Date().getFullYear().toString()
|
||||
}
|
||||
this.loadData(1)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -258,6 +329,7 @@ export default {
|
||||
.footer-table {
|
||||
/deep/ .ant-table-tbody > tr > td {
|
||||
border: none;
|
||||
background-color: #F5F5F5;
|
||||
}
|
||||
|
||||
/deep/ .ant-table-fixed-right table {
|
||||
|
||||
+1
@@ -343,6 +343,7 @@ export default {
|
||||
.footer-table {
|
||||
/deep/ .ant-table-tbody > tr > td {
|
||||
border: none;
|
||||
background-color: #F5F5F5;
|
||||
}
|
||||
|
||||
/deep/ .ant-table-fixed-right table {
|
||||
|
||||
+5
-3
@@ -26,7 +26,7 @@
|
||||
</a-col>
|
||||
<a-col :xl="4" :lg="7" :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
|
||||
<a-button type="primary" icon="search" @click="searchQuery" v-has="'workingGroupPaymentStatistics:search'">查询</a-button>
|
||||
<a-button icon="reload" @click="searchReset" class="reset-button">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
<!-- 操作按钮区域-->
|
||||
<div class="table-operator">
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('工作组来款统计')">导出</a-button>
|
||||
<a-button type="primary" icon="export" @click="handleExportXls('工作组来款统计')" v-has="'workingGroupPaymentStatistics:export'">导出</a-button>
|
||||
</div>
|
||||
<!-- 操作按钮区域-end-->
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
</template>
|
||||
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="goDetail(record.id)">详情</a>
|
||||
<a @click="goDetail(record.id)" v-has="'workingGroupPaymentStatistics:detail'">详情</a>
|
||||
</span>
|
||||
|
||||
<template slot="footer" v-if="dataSource.length > 0">
|
||||
@@ -210,6 +210,7 @@ export default {
|
||||
width: 160
|
||||
}
|
||||
],
|
||||
// 给定当年作为来款年份默认查询条件
|
||||
queryParam: {
|
||||
year: new Date().getFullYear().toString()
|
||||
},
|
||||
@@ -332,6 +333,7 @@ export default {
|
||||
.footer-table {
|
||||
/deep/ .ant-table-tbody > tr > td {
|
||||
border: none;
|
||||
background-color: #F5F5F5;
|
||||
}
|
||||
|
||||
/deep/ .ant-table-fixed-right table {
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
<a-card :bordered="false" style="padding: 12px 0;">
|
||||
<!-- 按钮操作区域 -->
|
||||
<a-row style="margin-left: 14px" class="table-operator">
|
||||
<a-button @click="handleAdd(1)" type="primary">新增</a-button>
|
||||
<a-button @click="handleAdd(2)" type="primary">添加下级</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('部门信息')">导出</a-button>
|
||||
<a-button @click="handleAdd(1)" type="primary" v-has="'sys:depart:add'">新增</a-button>
|
||||
<a-button @click="handleAdd(2)" type="primary" v-has="'sys:depart:addLowerLevel'">添加下级</a-button>
|
||||
<a-button type="primary" icon="download" @click="handleExportXls('部门信息')" v-has="'sys:depart:export'">导出</a-button>
|
||||
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader"
|
||||
:action="importExcelUrl" @change="handleImportExcel">
|
||||
:action="importExcelUrl" @change="handleImportExcel" v-has="'sys:depart:import'">
|
||||
<a-button type="primary" icon="import">导入</a-button>
|
||||
</a-upload>
|
||||
<a-button @click="batchDel" type="danger" icon="delete">批量删除</a-button>
|
||||
<a-button @click="batchDel" type="danger" icon="delete" v-has="'sys:depart:batchDel'">批量删除</a-button>
|
||||
<!--<a-button @click="refresh" type="default" icon="reload" :loading="loading">刷新</a-button>-->
|
||||
</a-row>
|
||||
<div style="background: #fff;padding-left:16px;height: 100%; margin-top: 5px">
|
||||
@@ -45,8 +45,8 @@
|
||||
</span>
|
||||
<!--新增右键点击事件,和增加添加和删除功能-->
|
||||
<a-menu slot="overlay">
|
||||
<a-menu-item @click="handleAdd(3)" key="1">添加</a-menu-item>
|
||||
<a-menu-item @click="handleDelete" key="2">删除</a-menu-item>
|
||||
<a-menu-item @click="handleAdd(3)" key="1" v-has="'sys:depart:add'">添加</a-menu-item>
|
||||
<a-menu-item @click="handleDelete" key="2" v-has="'sys:depart:del'">删除</a-menu-item>
|
||||
<a-menu-item @click="closeDrop" key="3">取消</a-menu-item>
|
||||
</a-menu>
|
||||
</a-dropdown>
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
</a-row>
|
||||
<a-row>
|
||||
<a-col :md="2" :sm="24">
|
||||
<a-button style="margin-bottom: 10px" type="primary" @click="handleAdd">新增</a-button>
|
||||
<a-button style="margin-bottom: 10px" type="primary" @click="handleAdd" v-has="'dic:item:add'">新增</a-button>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form>
|
||||
@@ -63,11 +63,11 @@
|
||||
>
|
||||
|
||||
<span slot="action" slot-scope="text, record" class="action-span-cell">
|
||||
<a @click="handleEdit(record)">编辑</a>
|
||||
<a @click="handleEdit(record)" v-has="'dic:item:edit'">编辑</a>
|
||||
<!-- <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">-->
|
||||
<!-- -->
|
||||
<!-- </a-popconfirm>-->
|
||||
<a @click="handleDelete(record.id)">删除</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'dic:item:delete'">删除</a>
|
||||
</span>
|
||||
<template slot="text" slot-scope="text">
|
||||
<span v-if="!text"></span>
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
</a-col>
|
||||
<a-col :md="7" :sm="8">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'sys:dict:search'">查询</a-button>
|
||||
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -35,9 +35,9 @@
|
||||
v-has="'sys:dict:import'" @change="handleImportExcel">
|
||||
<a-button type="primary" icon="import">导入</a-button>
|
||||
</a-upload>
|
||||
<a-button type="primary" icon="sync" @click="refleshCache()">刷新缓存</a-button>
|
||||
<a-button type="primary" icon="sync" @click="refleshCache()" v-has="'sys:dict:refleshCache'">刷新缓存</a-button>
|
||||
|
||||
<a-button type="primary" icon="hdd" @click="openDeleteList">回收站</a-button>
|
||||
<a-button type="primary" icon="hdd" @click="openDeleteList" v-has="'sys:dict:deleteList'">回收站</a-button>
|
||||
</div>
|
||||
|
||||
<a-table
|
||||
@@ -55,7 +55,7 @@
|
||||
<a-icon type="edit"/>
|
||||
编辑
|
||||
</a>
|
||||
<a @click="editDictItem(record)"><a-icon type="setting"/> 字典配置</a>
|
||||
<a @click="editDictItem(record)" v-has="'sys:dict:editDictItem'"><a-icon type="setting"/> 字典配置</a>
|
||||
<!-- <a-popconfirm title="确定删除吗?" @confirm="() =>handleDelete(record.id)">-->
|
||||
|
||||
<!-- </a-popconfirm>\-->
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-col :md="6" :sm="24">
|
||||
<a-button type="primary" style="left: 10px" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" style="left: 10px" @click="searchQuery" icon="search" v-has="'sys:log:search'">查询</a-button>
|
||||
<a-button type="primary" @click="searchReset" icon="reload"
|
||||
style="margin-left: 8px;left: 10px">重置</a-button>
|
||||
</a-col>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
</a-col>
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-col :md="12" :sm="24">
|
||||
<a-button type="primary" @click="searchQuery" icon="search" style="margin-left: 21px">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" style="margin-left: 21px" v-has="'sys:role:search'">查询</a-button>
|
||||
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
|
||||
</a-col>
|
||||
</span>
|
||||
@@ -24,8 +24,8 @@
|
||||
<!-- 操作按钮区域 -->
|
||||
<div class="table-operator" style="margin: 5px 0 10px 2px">
|
||||
<a-button @click="handleAdd" type="primary" icon="plus" v-has="'sys:role:add'">新增</a-button>
|
||||
<a-button @click="handleAddLowerLevel" type="primary" icon="plus">添加下级</a-button>
|
||||
<a-button @click="batchDel" type="danger" icon="delete">批量删除</a-button>
|
||||
<a-button @click="handleAddLowerLevel" type="primary" icon="plus" v-has="'sys:role:addLowerLevel'">添加下级</a-button>
|
||||
<a-button @click="batchDel" type="danger" icon="delete" v-has="'sys:role:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
<div style="margin-top: 15px">
|
||||
<a-table
|
||||
@@ -43,7 +43,7 @@
|
||||
@expandedRowsChange="handleExpandedRowsChange"
|
||||
@change="handleTableChange">
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<a @click="handlePerssion(record.id)">授权</a>
|
||||
<a @click="handlePerssion(record.id)" v-has="'sys:role:perssion'">授权</a>
|
||||
<a @click="handleEdit(record)" v-has="'sys:role:edit'">编辑</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'sys:role:del'">删除</a>
|
||||
</span>
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
|
||||
<a-col :md="6" :sm="8">
|
||||
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
|
||||
<a-button type="primary" @click="searchQuery" icon="search" v-has="'user:search'">查询</a-button>
|
||||
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
@@ -57,13 +57,13 @@
|
||||
<!-- 操作按钮区域 -->
|
||||
<div class="table-operator" style="border-top: 5px">
|
||||
<a-button @click="handleAdd" type="primary" icon="plus" v-has="'user:add'">新增</a-button>
|
||||
<a-button @click="downTemplate('用户导入模板')" type="primary" icon="download">下载模板</a-button>
|
||||
<a-button @click="downTemplate('用户导入模板')" type="primary" icon="download" v-has="'user:downTemplate'">下载模板</a-button>
|
||||
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
|
||||
@change="handleImportExcel">
|
||||
@change="handleImportExcel" v-has="'sys:user:import'">
|
||||
<a-button type="primary" icon="import">导入</a-button>
|
||||
</a-upload>
|
||||
<a-button @click="handleExportXls('用户列表')" type="primary" icon="export">导出</a-button>
|
||||
<a-button @click="batchDel" type="danger" icon="delete">批量删除</a-button>
|
||||
<a-button @click="handleExportXls('用户列表')" type="primary" icon="export" v-has="'sys:user:export'">导出</a-button>
|
||||
<a-button @click="batchDel" type="danger" icon="delete" v-has="'user:batchDel'">批量删除</a-button>
|
||||
</div>
|
||||
|
||||
<!-- table区域-begin -->
|
||||
@@ -86,9 +86,10 @@
|
||||
<span slot="action" class="action-span-cell" slot-scope="text, record">
|
||||
<!-- 1是启用 2是禁用 按钮需要反着来-->
|
||||
<a @click="handleEnable(record)"
|
||||
:class="{'color-red':record.status === 1}">{{ record.status === 1 ? '禁用' : '启用' }}</a>
|
||||
:class="{'color-red':record.status === 1}"
|
||||
v-has="'user:enable'">{{ record.status === 1 ? '禁用' : '启用' }}</a>
|
||||
<a @click="handleEdit(record)" v-has="'user:edit'">编辑</a>
|
||||
<a @click="resetPassword(record)">重置密码</a>
|
||||
<a @click="resetPassword(record)" v-has="'user:resetPassword'">重置密码</a>
|
||||
<a @click="handleDelete(record.id)" v-has="'sys:user:del'">删除</a>
|
||||
</span>
|
||||
<template slot="text" slot-scope="text">
|
||||
|
||||
@@ -154,7 +154,6 @@ export default {
|
||||
that.loginBtn = true
|
||||
that.form.validateFields([ 'username', 'password','inputCode', 'rememberMe' ], { force: true }, (err, values) => {
|
||||
if (!err) {
|
||||
|
||||
loginParams.remember_me = values.rememberMe
|
||||
loginParams.captcha = that.inputCodeContent
|
||||
loginParams.checkKey = that.currdatetime
|
||||
@@ -169,6 +168,16 @@ export default {
|
||||
that.Login(loginParams).then(() => {
|
||||
this.loginSuccess()
|
||||
}).catch((err) => {
|
||||
if (err.message === 'updatePassword') {
|
||||
this.$notification.error({
|
||||
message: '登录失败',
|
||||
description: '不能使用默认密码登录,请修改密码后登录!'
|
||||
})
|
||||
that.$router.push({
|
||||
path: '/user/alteration'
|
||||
})
|
||||
return
|
||||
}
|
||||
if (err.code === 500) {
|
||||
// 刷新验证码
|
||||
this.handleChangeCheckCode()
|
||||
|
||||
@@ -10,6 +10,22 @@
|
||||
<div class='alteration-content'>
|
||||
<a-form :form="form">
|
||||
<span class='setPassword'>设置密码</span>
|
||||
<a-row>
|
||||
<a-col :span='22'>
|
||||
<a-form-item
|
||||
label="用户名"
|
||||
:labelCol="{span: 5}"
|
||||
:wrapperCol="{span: 19}"
|
||||
>
|
||||
<a-input
|
||||
type="text"
|
||||
v-decorator="['username',{ rules: validatorRules.username.rules}]"
|
||||
placeholder="请输入用户名">
|
||||
</a-input>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span='6'></a-col>
|
||||
</a-row>
|
||||
<a-row>
|
||||
<a-col :span='22'>
|
||||
<a-form-item
|
||||
@@ -36,7 +52,7 @@
|
||||
<a-input
|
||||
v-decorator="['captcha', { rules: validatorRules.captcha.rules}]"
|
||||
type="text"
|
||||
placeholder="验证码">
|
||||
placeholder="请输入验证码">
|
||||
</a-input>
|
||||
<a-button
|
||||
tabindex="-1"
|
||||
@@ -55,7 +71,7 @@
|
||||
:labelCol="{span: 5}"
|
||||
:wrapperCol="{span: 19}">
|
||||
<a-input
|
||||
placeholder="新密码"
|
||||
placeholder="请输入新密码"
|
||||
v-decorator="['password', { rules: validatorRules.password.rules}]"
|
||||
type="password">
|
||||
</a-input>
|
||||
@@ -70,7 +86,7 @@
|
||||
:labelCol="{span: 5}"
|
||||
:wrapperCol="{span: 19}">
|
||||
<a-input
|
||||
placeholder="确认密码"
|
||||
placeholder="请输入确认密码"
|
||||
v-decorator="['confirmPassword', { rules: validatorRules.confirmPassword.rules}]"
|
||||
type="password"
|
||||
autocomplete="false">
|
||||
@@ -99,20 +115,25 @@
|
||||
import { getAction, postAction } from '@/api/manage'
|
||||
|
||||
export default {
|
||||
name: "Alteration",
|
||||
name: 'Alteration',
|
||||
components: {},
|
||||
data() {
|
||||
return {
|
||||
form: this.$form.createForm(this),
|
||||
loading: false,
|
||||
validatorRules: {
|
||||
username: {
|
||||
rules: [
|
||||
{ required: true, message: '请输入用户名!' }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
phone: {
|
||||
rules: [
|
||||
{required: true, message: '请输入手机号码!'},{validator: this.validatePhone}],
|
||||
{ required: true, message: '请输入手机号码!' }, { validator: this.validatePhone }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
captcha: {
|
||||
rules: [{required: true, message: '请输入短信验证码!'}],
|
||||
rules: [{ required: true, message: '请输入短信验证码!' }],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
password: {
|
||||
@@ -127,15 +148,15 @@ export default {
|
||||
},
|
||||
confirmPassword: {
|
||||
rules: [
|
||||
{required: true, message: '密码不能为空!'},
|
||||
{validator: this.handlePasswordCheck}
|
||||
{ required: true, message: '密码不能为空!' },
|
||||
{ validator: this.handlePasswordCheck }
|
||||
],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
}
|
||||
},
|
||||
state: {
|
||||
time: 60,
|
||||
smsSendBtn: false,
|
||||
smsSendBtn: false
|
||||
},
|
||||
userList: {}
|
||||
}
|
||||
@@ -148,16 +169,16 @@ export default {
|
||||
if (!err) {
|
||||
let params = {}
|
||||
console.log(values, '======values')
|
||||
params.phone = values.phone;
|
||||
params.password = values.password;
|
||||
params.captcha = values.captcha;
|
||||
params.confirmPassword = values.confirmPassword;
|
||||
getAction("/sys/user/passwordChange", params).then((res) => {
|
||||
params.phone = values.phone
|
||||
params.password = values.password
|
||||
params.captcha = values.captcha
|
||||
params.confirmPassword = values.confirmPassword
|
||||
getAction('/sys/user/passwordChange', params).then((res) => {
|
||||
if (res.success) {
|
||||
that.loading = false
|
||||
that.$router.go(-1)
|
||||
} else {
|
||||
this.passwordFailed(res.message);
|
||||
this.passwordFailed(res.message)
|
||||
that.loading = false
|
||||
}
|
||||
})
|
||||
@@ -170,25 +191,25 @@ export default {
|
||||
this.$router.go(-1)
|
||||
},
|
||||
passwordFailed(err) {
|
||||
this.$notification[ 'error' ]({
|
||||
message: "更改密码失败",
|
||||
description:err,
|
||||
duration: 4,
|
||||
});
|
||||
this.$notification['error']({
|
||||
message: '更改密码失败',
|
||||
description: err,
|
||||
duration: 4
|
||||
})
|
||||
},
|
||||
validatePhone(rule,value,callback){
|
||||
if(value){
|
||||
var myreg=/^[1][3,4,5,7,8][0-9]{9}$/;
|
||||
if(!myreg.test(value)){
|
||||
callback("请输入正确的手机号")
|
||||
}else{
|
||||
callback();
|
||||
validatePhone(rule, value, callback) {
|
||||
if (value) {
|
||||
var myreg = /^[1][3,4,5,7,8][0-9]{9}$/
|
||||
if (!myreg.test(value)) {
|
||||
callback('请输入正确的手机号')
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
}else{
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
},
|
||||
handlePasswordCheck (rule, value, callback) {
|
||||
handlePasswordCheck(rule, value, callback) {
|
||||
let password = this.form.getFieldValue('password')
|
||||
if (value && password && value.trim() !== password.trim()) {
|
||||
callback(new Error('两次密码不一致'))
|
||||
@@ -196,70 +217,74 @@ export default {
|
||||
callback()
|
||||
},
|
||||
getCaptcha(e) {
|
||||
e.preventDefault();
|
||||
let that = this;
|
||||
let phone=that.form.getFieldValue("phone")
|
||||
if(!phone){
|
||||
this.cmsFailed("手机号不能为空!");
|
||||
return;
|
||||
e.preventDefault()
|
||||
let that = this
|
||||
let phone = that.form.getFieldValue('phone')
|
||||
if (!phone) {
|
||||
this.cmsFailed('手机号不能为空!')
|
||||
return
|
||||
}
|
||||
this.state.smsSendBtn = true;
|
||||
this.state.smsSendBtn = true
|
||||
let interval = window.setInterval(() => {
|
||||
if (that.state.time-- <= 0) {
|
||||
that.state.time = 60;
|
||||
that.state.smsSendBtn = false;
|
||||
window.clearInterval(interval);
|
||||
that.state.time = 60
|
||||
that.state.smsSendBtn = false
|
||||
window.clearInterval(interval)
|
||||
}
|
||||
}, 1000);
|
||||
}, 1000)
|
||||
|
||||
const hide = this.$message.loading('验证码发送中..', 0);
|
||||
const hide = this.$message.loading('验证码发送中..', 0)
|
||||
let smsParams = {
|
||||
mobile: phone,
|
||||
smsmode: "2"
|
||||
};
|
||||
postAction("/sys/sms", smsParams).then(res => {
|
||||
smsmode: '2'
|
||||
}
|
||||
postAction('/sys/sms', smsParams).then(res => {
|
||||
if (!res.success) {
|
||||
setTimeout(hide, 1);
|
||||
this.cmsFailed(res.message);
|
||||
setTimeout(hide, 1)
|
||||
this.cmsFailed(res.message)
|
||||
}
|
||||
setTimeout(hide, 500);
|
||||
setTimeout(hide, 500)
|
||||
})
|
||||
},
|
||||
cmsFailed(err) {
|
||||
this.$notification['error']({
|
||||
message: "验证错误",
|
||||
message: '验证错误',
|
||||
description: err,
|
||||
duration: 4,
|
||||
});
|
||||
duration: 4
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
/deep/.ant-card{
|
||||
/deep/ .ant-card {
|
||||
width: 100%;
|
||||
}
|
||||
/deep/.ant-card-body{
|
||||
|
||||
/deep/ .ant-card-body {
|
||||
padding: 0 !important;
|
||||
height: 100%;
|
||||
background: #F0F2F5;
|
||||
}
|
||||
.alteration-center{
|
||||
|
||||
.alteration-center {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
background: #F0F2F5;
|
||||
}
|
||||
.alteration-content{
|
||||
|
||||
.alteration-content {
|
||||
margin: auto;
|
||||
width: 1000px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
background: #fff;
|
||||
.setPassword{
|
||||
|
||||
.setPassword {
|
||||
font-size: 26px;
|
||||
display: block;
|
||||
background: #fff;
|
||||
@@ -268,28 +293,33 @@ export default {
|
||||
margin-top: 30px;
|
||||
}
|
||||
}
|
||||
/deep/.ant-form{
|
||||
|
||||
/deep/ .ant-form {
|
||||
width: 500px;
|
||||
height: 500px;
|
||||
}
|
||||
.alteration-head{
|
||||
|
||||
.alteration-head {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
background: #069F99;
|
||||
height: 60px;
|
||||
}
|
||||
|
||||
.logo {
|
||||
box-shadow: none !important;
|
||||
transition: background 300ms;
|
||||
height: 60px;
|
||||
line-height: 60px;
|
||||
padding-left: 12px;
|
||||
|
||||
a {
|
||||
color: white;
|
||||
|
||||
&:hover {
|
||||
color: rgba(255, 255, 255, 0.8);
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin-left: 12px;
|
||||
color: #fff;
|
||||
@@ -299,35 +329,42 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
.alteration-content{
|
||||
.alteration-content {
|
||||
|
||||
}
|
||||
/deep/.ant-row{
|
||||
|
||||
/deep/ .ant-row {
|
||||
margin-bottom: 20px !important;
|
||||
height: 60px;
|
||||
}
|
||||
/deep/.ant-form-item-label{
|
||||
|
||||
/deep/ .ant-form-item-label {
|
||||
height: 50px;
|
||||
line-height: 50px;
|
||||
}
|
||||
/deep/.ant-input{
|
||||
|
||||
/deep/ .ant-input {
|
||||
border-radius: 30px;
|
||||
height: 50px;
|
||||
border: 1px solid #E6E3E3;
|
||||
}
|
||||
.btn{
|
||||
/deep/button{
|
||||
|
||||
.btn {
|
||||
/deep/ button {
|
||||
border-radius: 30px;
|
||||
margin: 0 20px;
|
||||
}
|
||||
.ant-btn-primary{
|
||||
|
||||
.ant-btn-primary {
|
||||
background: #069F99;
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
.captcha{
|
||||
|
||||
.captcha {
|
||||
position: relative;
|
||||
/deep/button{
|
||||
|
||||
/deep/ button {
|
||||
border: none;
|
||||
color: #069F99;
|
||||
position: absolute;
|
||||
|
||||
Reference in New Issue
Block a user