[update] 收入合同关联新建普通项目表单修改;新建工作组候选工作组列表修改

This commit is contained in:
zhaoxiao
2021-09-07 17:11:26 +08:00
parent 273519b189
commit 00676798ea
7 changed files with 199 additions and 169 deletions
+3 -3
View File
@@ -18,8 +18,8 @@ const getAssociatedProject = (param) => getAction('/contract/payIncomeContract/g
const cancelAssociatedProject = (param) => postAction('/contract/payIncomeContract/cancelAssociated', param)
// 收入合同提交审核
const submitAudit = (param) => postAction('/contract/payIncomeContract/submitAudit', param)
// 获取全部工作组信息
const getWorkingGroupAllList = (param) => getAction('/project/payWorkingGroup/listAll', param)
// 获取不存在成员单位的工作组信息
const getWorkingGroupListByNotCompany = (param) => getAction('/project/payWorkingGroup/queryListByNotCompany', param)
// 收入合同存档
const archiveRevenueContract = (param) => postAction('contract/payIncomeContract/archive', param)
@@ -33,6 +33,6 @@ export {
getAssociatedProject,
cancelAssociatedProject,
submitAudit,
getWorkingGroupAllList,
getWorkingGroupListByNotCompany,
archiveRevenueContract
}
@@ -91,8 +91,8 @@
<template slot="projectName" slot-scope="text, record">
<j-ellipsis
@click="toRevenueContractDetail(record.id, record.contractNum)"
v-if="record.status === 2 || record.status === 4"
value="text"
v-if="record.chargeStatus === 1"
:value="text"
:length="20"></j-ellipsis>
<j-ellipsis
class="primary-color"
@@ -186,32 +186,38 @@ export default {
title: '合同名称',
align: 'center',
dataIndex: 'contractName',
width: 250
width: 250,
scopedSlots: { customRender: 'text' }
}, {
title: '关联项目',
align: 'center',
dataIndex: '',
width: 250
dataIndex: 'associatedProject',
width: 250,
scopedSlots: { customRender: 'text' }
}, {
title: '签订单位',
align: 'center',
dataIndex: 'signedCompanyTemporaryName',
width: 250
width: 250,
scopedSlots: { customRender: 'text' }
}, {
title: '签订联系人',
align: 'center',
dataIndex: 'signedContactsTemporaryName',
width: 250
width: 250,
scopedSlots: { customRender: 'text' }
}, {
title: '合同总金额',
align: 'center',
dataIndex: 'contractAmount',
width: 250
width: 250,
scopedSlots: { customRender: 'text' }
}, {
title: '状态',
align: 'center',
dataIndex: 'status_dictText',
width: 250
width: 250,
scopedSlots: { customRender: 'text' }
}, {
title: '创建时间',
align: 'center',
@@ -574,6 +574,9 @@ export default {
handleSignedCompanyChange(value) {
this.selectedCompany = value
this.model.signedContactsId = undefined
this.$nextTick(() => {
this.form.setFieldsValue(pick(this.model, 'signedContactsId'))
})
},
/**
* 负责人变化获取部门信息回显至部门名称
@@ -99,6 +99,7 @@
<general-project-module ref="generalProjectForm"
v-bind="$attrs"
:disabled-charge-company="true"
:default-charge-way="2"
@ok="modalFormOk"></general-project-module>
<!-- 工作组项目新增-->
<working-group-member-unit-module ref="workingGroupMemberForm"
@@ -105,8 +105,9 @@
</a-row>
<a-row>
<a-col :xl="12" :sm="24">
<a-form-item label="来款方式" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-radio-group v-decorator="['chargeWay',validatorRules.chargeWay]" @change="handlechargeWayChange">
<a-form-item label="来款方式" :labelCol="labelCol" :wrapperCol="wrapperCol" >
<span v-if="defaultChargeWay === 2 && chargeWayType === 2">合同</span>
<a-radio-group v-decorator="['chargeWay',validatorRules.chargeWay]" @change="handlechargeWayChange" v-else>
<a-radio :value="1"></a-radio>
<a-radio :value="2">合同</a-radio>
<a-radio :value="3">收费通知</a-radio>
@@ -185,7 +186,13 @@ export default {
type: Boolean,
required: false,
default: false
}
},
// 默认来款方式(收入合同新增工作组项目,来款方式默认为2--合同)
defaultChargeWay: {
type: Number,
required: false,
default: null
},
},
data() {
return {
@@ -274,7 +281,9 @@ export default {
methods: {
add() {
this.edit({})
console.log(this.defaultChargeCompany, '============')
if (this.defaultChargeWay === 2) {
this.chargeWayType = 2
}
},
edit(record) {
if (this.defaultChargeCompany.hasOwnProperty.call(this.defaultChargeCompany, 'id')) {
@@ -321,6 +330,10 @@ export default {
if (!err) {
values.chargeCompanyName = values.chargeCompany.companyName
values.chargeCompanyId = values.chargeCompany.id
// 收入合同新建项目手动赋值
if (this.defaultChargeWay === 2) {
values.chargeWay = 2
}
let httpurl = ''
let method = 'post'
if (!this.model.id) {
@@ -197,7 +197,7 @@ import { httpAction } from '@api/manage'
import JUpload from '@comp/jero/JUpload'
import CompanySelect from '@comp/company/CompanySelect'
import SelectContacts from '@comp/company/SelectContacts'
import { getWorkingGroupAllList } from '../../../api/incomePaymentsApi'
import { getWorkingGroupListByNotCompany } from '../../../api/incomePaymentsApi'
export default {
name: 'WorkingGroupMemberUnitModule',
@@ -311,7 +311,10 @@ export default {
}
},
loadWorkingGroupList() {
getWorkingGroupAllList().then(res => {
let param = {
companyId: this.defaultChargeCompany.id
}
getWorkingGroupListByNotCompany(param).then(res => {
if (res.success) {
this.workingGroupList = res.result
} else {
+155 -151
View File
@@ -19,7 +19,7 @@
</a-form-item>
</a-col>
<a-col :md="6" :sm="10">
<a-col :md="10" :sm="10">
<a-form-item label="创建时间" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-range-picker
v-model="queryParam.createTimeRange"
@@ -37,9 +37,10 @@
</a-col>
<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" @click="searchReset" icon="reload" style="margin-left: 8px;left: 10px">重置</a-button>
<a-col :md="6" :sm="24">
<a-button type="primary" style="left: 10px" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload"
style="margin-left: 8px;left: 10px">重置</a-button>
</a-col>
</span>
@@ -59,10 +60,10 @@
:loading="loading"
@change="handleTableChange">
<!-- <div v-show="queryParam.logType==2" slot="expandedRowRender" slot-scope="record" style="margin: 0">-->
<!-- <div style="margin-bottom: 5px"><a-badge status="success" style="vertical-align: middle;"/><span style="vertical-align: middle;">请求方法:{{ record.method }}</span></div>-->
<!-- <div><a-badge status="processing" style="vertical-align: middle;"/><span style="vertical-align: middle;">请求参数:{{ record.requestParam }}</span></div>-->
<!-- </div>-->
<!-- <div v-show="queryParam.logType==2" slot="expandedRowRender" slot-scope="record" style="margin: 0">-->
<!-- <div style="margin-bottom: 5px"><a-badge status="success" style="vertical-align: middle;"/><span style="vertical-align: middle;">请求方法:{{ record.method }}</span></div>-->
<!-- <div><a-badge status="processing" style="vertical-align: middle;"/><span style="vertical-align: middle;">请求参数:{{ record.requestParam }}</span></div>-->
<!-- </div>-->
<!-- 字符串超长截取省略号显示-->
<span slot="logContent" slot-scope="text, record">
<j-ellipsis :value="text" :length="40"/>
@@ -73,162 +74,165 @@
</template>
<script>
import { filterObj } from '@/utils/util'
import { JeroListMixin } from '@/mixins/JeroListMixin'
import JEllipsis from '@/components/jero/JEllipsis'
import { filterObj } from '@/utils/util'
import { JeroListMixin } from '@/mixins/JeroListMixin'
import JEllipsis from '@/components/jero/JEllipsis'
export default {
name: 'LogList',
mixins:[JeroListMixin],
components: {
JEllipsis
},
data () {
return {
description: '这是日志管理页面',
// 查询条件
queryParam: {
ipInfo:'',
createTimeRange:[],
logType:'1',
keyWord:'',
},
tabKey: '1',
// 表头
columns: [
{
title: '序号',
dataIndex: '',
key:'rowIndex',
align:'center',
customRender:function (t,r,index) {
return parseInt(index)+1
}
},
{
title: '日志内容',
align:'left',
dataIndex: 'logContent',
scopedSlots: { customRender: 'logContent' },
sorter: true
},
{
title: '操作人ID',
dataIndex: 'userid',
align:'center',
sorter: true
},
{
title: '操作人名称',
dataIndex: 'username',
align:'center',
sorter: true
},
{
title: 'IP',
dataIndex: 'ip',
align:'center',
sorter: true
},
{
title: '耗时(毫秒)',
dataIndex: 'costTime',
align:'center',
sorter: true
},
{
title: '日志类型',
dataIndex: 'logType_dictText',
/*customRender:function (text) {
if(text==1){
return "登录日志";
}else if(text==2){
return "操作日志";
}else{
return text;
}
},*/
align:'center',
},
{
title: '创建时间',
dataIndex: 'createTime',
align:'center',
sorter: true
export default {
name: 'LogList',
mixins: [JeroListMixin],
components: {
JEllipsis
},
data() {
return {
description: '这是日志管理页面',
// 查询条件
queryParam: {
ipInfo: '',
createTimeRange: [],
logType: '1',
keyWord: ''
},
tabKey: '1',
// 表头
columns: [
{
title: '序号',
dataIndex: '',
key: 'rowIndex',
align: 'center',
customRender: function (t, r, index) {
return parseInt(index) + 1
}
],
operateColumn:
}, {
title: '操作人名称',
dataIndex: 'username',
align: 'center',
sorter: true
}, {
title: '角色',
dataIndex: 'roleName',
align: 'center',
sorter: true
},
{
title: '日志内容',
align: 'center',
dataIndex: 'logContent',
scopedSlots: { customRender: 'logContent' },
sorter: true
}, {
title: '创建时间',
dataIndex: 'createTime',
align: 'center',
sorter: true
},
// {
// title: '操作人ID',
// dataIndex: 'userid',
// align:'center',
// sorter: true
// },
//
// {
// title: 'IP',
// dataIndex: 'ip',
// align:'center',
// sorter: true
// },
// {
// title: '耗时(毫秒)',
// dataIndex: 'costTime',
// align:'center',
// sorter: true
// },
{
title: '日志类型',
dataIndex: 'logType_dictText',
/*customRender:function (text) {
if(text==1){
return "登录日志";
}else if(text==2){
return "操作日志";
}else{
return text;
}
},*/
align: 'center'
}
],
operateColumn:
{
title: '操作类型',
dataIndex: 'operateType_dictText',
align:'center',
},
labelCol: {
xs: { span: 1 },
sm: { span: 2 },
},
wrapperCol: {
xs: { span: 10 },
sm: { span: 16 },
},
url: {
list: '/sys/log/page',
align: 'center'
},
labelCol: {
xs: { span: 1 },
sm: { span: 2 }
},
wrapperCol: {
xs: { span: 10 },
sm: { span: 16 }
},
url: {
list: '/sys/log/page'
}
}
},
methods: {
getQueryParams() {
var param = Object.assign({}, this.lastQueryParam, this.isorter, { logType: this.tabKey })
param.field = this.getQueryField()
param.pageNo = this.ipagination.current
param.pageSize = this.ipagination.pageSize
delete param.createTimeRange // 时间参数不传递后台
if (this.superQueryParams) {
param['superQueryParams'] = encodeURI(this.superQueryParams)
param['superQueryMatchType'] = this.superQueryMatchType
}
return filterObj(param)
},
methods: {
getQueryParams(){
var param = Object.assign({}, this.lastQueryParam,this.isorter,{logType:this.tabKey})
param.field = this.getQueryField()
param.pageNo = this.ipagination.current
param.pageSize = this.ipagination.pageSize
delete param.createTimeRange // 时间参数不传递后台
if (this.superQueryParams) {
param['superQueryParams'] = encodeURI(this.superQueryParams)
param['superQueryMatchType'] = this.superQueryMatchType
}
return filterObj(param)
},
// 重置
searchReset(){
var that = this
var logType = that.queryParam.logType
that.queryParam = {} //清空查询区域参数
that.queryParam.logType = logType
that.lastQueryParam = Object.assign({},this.queryParam)
that.loadData(1)
},
// 日志类型
callback(key){
// 重置
searchReset() {
var that = this
var logType = that.queryParam.logType
that.queryParam = {} //清空查询区域参数
that.queryParam.logType = logType
that.lastQueryParam = Object.assign({}, this.queryParam)
that.loadData(1)
},
// 日志类型
callback(key) {
// 动态添加操作类型列
if (key == 2) {
this.tabKey = '2'
this.columns.splice(7, 0, this.operateColumn)
}else if(this.columns.length == 9)
{
this.tabKey = '1'
this.columns.splice(7,1)
}
// 动态添加操作类型列
if (key == 2) {
this.tabKey = '2'
this.columns.splice(7, 0, this.operateColumn)
} else if (this.columns.length == 9) {
this.tabKey = '1'
this.columns.splice(7, 1)
}
let that=this
that.queryParam = {}
that.queryParam.logType=key
that.lastQueryParam =Object.assign({},this.queryParam)
that.loadData()
},
onDateChange: function (value, dateString) {
console.log(dateString[0],dateString[1])
this.queryParam.createTime_begin=dateString[0]
this.queryParam.createTime_end=dateString[1]
},
onDateOk(value) {
console.log(value)
},
let that = this
that.queryParam = {}
that.queryParam.logType = key
that.lastQueryParam = Object.assign({}, this.queryParam)
that.loadData()
},
onDateChange: function (value, dateString) {
console.log(dateString[0], dateString[1])
this.queryParam.createTime_begin = dateString[0]
this.queryParam.createTime_end = dateString[1]
},
onDateOk(value) {
console.log(value)
}
}
}
</script>
<style scoped>
@import '~@assets/less/common.less';
@import '~@assets/less/common.less';
</style>