Merge branch 'dev_2024325_BZSQ' into dev_2024325_LCZGF_39

This commit is contained in:
wxyclub
2024-04-02 17:46:29 +08:00
7 changed files with 247 additions and 218 deletions
+1 -1
View File
@@ -561,7 +561,7 @@
mounted () { mounted () {
this.$http.get('/lawss/standardApplyFor/queryPendingApprovalCount', '', { _this: this }, res => { this.$http.get('/lawss/standardApplyFor/queryPendingApprovalCount', '', { _this: this }, res => {
if (res.ok) { if (res.ok) {
this.$store.commit('SET_STANDARD_TRANSLATION_TODO', res.data) this.$store.commit('SET_STANDARD_TRANSLATION_TODO', res.data.pendingApprovalCount)
} }
}) })
}, },
@@ -173,7 +173,7 @@
<!-- </div>--> <!-- </div>-->
</el-form-item> </el-form-item>
<el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled"> <el-form-item label="历史版本" prop="LSBBBUSSName" class="add-form-item form-item-disabled">
<div v-if="isTrue"> <div v-if="isTrue || titleName == '企标编写'">
<div <div
v-for="(item,index) in LSBBBUSSFileList" v-for="(item,index) in LSBBBUSSFileList"
v-if="LSBBBUSSFileList.length > 0" v-if="LSBBBUSSFileList.length > 0"
@@ -190,7 +190,7 @@
<!-- </span>--> <!-- </span>-->
</div> </div>
</div> </div>
<div v-if="!isTrue"> <div v-else>
<div <div
v-for="(item,index) in LSBBBUSSFileList" v-for="(item,index) in LSBBBUSSFileList"
v-if="LSBBBUSSFileList.length > 0" v-if="LSBBBUSSFileList.length > 0"
@@ -696,6 +696,10 @@ export default {
type: Boolean, type: Boolean,
default: false default: false
}, },
titleName: {
type: String,
default: ''
}
}, },
data () { data () {
return { return {
@@ -145,6 +145,7 @@
<div style="flex: auto;" v-show="form.fsRejectStatus === 2 ? active === '2' : active === '1'"> <div style="flex: auto;" v-show="form.fsRejectStatus === 2 ? active === '2' : active === '1'">
<formList <formList
:form = "form" :form = "form"
:titleName="'企标编写'"
:FBGBUSSFileList = "FBGBUSSFileList" :FBGBUSSFileList = "FBGBUSSFileList"
:LSBBBUSSFileList = "LSBBBUSSFileList" :LSBBBUSSFileList = "LSBBBUSSFileList"
:BZSMBUSSFileList = "BZSMBUSSFileList" :BZSMBUSSFileList = "BZSMBUSSFileList"
@@ -185,6 +185,7 @@ export default {
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.addFormRef.clearValidate() this.$refs.addFormRef.clearValidate()
this.getDicTypeListCode() this.getDicTypeListCode()
this.standLbList = []
}) })
}, },
showModal (item) { showModal (item) {
@@ -31,7 +31,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="标准类型" label-width="100px" class="add-form-item"> <el-form-item label="标准类型" label-width="100px" class="add-form-item">
<div>{{ StandardApplyForEO.standTypeShow ? StandardApplyForEO.standTypeShow : '--' }}</div> <div class="content">{{ StandardApplyForEO.standTypeShow ? StandardApplyForEO.standTypeShow : '--' }}</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@@ -86,7 +86,7 @@
<el-row class="formLine"> <el-row class="formLine">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="理由" label-width="100px" class="add-form-item reasonContent"> <el-form-item label="理由" label-width="100px" class="add-form-item reasonContent">
<div class="contentLine">{{ StandardApplyForEO.reason ? StandardApplyForEO.reason : '--' }}</div> <div class="content">{{ StandardApplyForEO.reason ? StandardApplyForEO.reason : '--' }}</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@@ -104,7 +104,7 @@
</el-col> </el-col>
<el-col v-show="StandardApplyForEO.status !== 'pendingApproval' && StandardApplyForEO.status !== 'Staging' && StandardApplyForEO.status !== 'pass'" :span="24" class="formLine"> <el-col v-show="StandardApplyForEO.status !== 'pendingApproval' && StandardApplyForEO.status !== 'Staging' && StandardApplyForEO.status !== 'pass'" :span="24" class="formLine">
<el-form-item label="驳回原因" label-width="100px" class="add-form-item"> <el-form-item label="驳回原因" label-width="100px" class="add-form-item">
<div class="contentLine">{{ StandardApplyForEO.refuseCause ? StandardApplyForEO.refuseCause : '--' }}</div> <div class="content">{{ StandardApplyForEO.refuseCause ? StandardApplyForEO.refuseCause : '--' }}</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@@ -15,7 +15,7 @@
:on-error="importError" :on-error="importError"
:show-file-list="false" :show-file-list="false"
:multiple="false" :multiple="false"
accept=".xlsx,xls" accept=".xlsx,.xls"
> >
<el-button size="mini" type="primary">导入</el-button> <el-button size="mini" type="primary">导入</el-button>
</el-upload> </el-upload>
@@ -30,10 +30,11 @@
/> />
</el-form-item> </el-form-item>
<el-form-item class="el-form-item search-item" label="申请人"> <el-form-item class="el-form-item search-item" label="申请人">
<el-input v-model="applyForUserName" placeholder="选择请选择申请人" @click.native="choiceWSSMR('wssmr', '请选择申请人', StandardApplyForEOPage.applyForUserIds)" /> <el-input v-model="applyForUserName" placeholder="选择请选择申请人"
@click.native="choiceWSSMR('wssmr', '请选择申请人', StandardApplyForEOPage.applyForUserIds)"/>
</el-form-item> </el-form-item>
<el-form-item class="el-form-item search-item" label="需求时间"> <el-form-item class="el-form-item search-item" label="需求时间">
<el-input v-model="StandardApplyForEOPage.requiredTime" clearable placeholder="请输入需求时间" /> <el-input v-model="StandardApplyForEOPage.requiredTime" clearable placeholder="请输入需求时间"/>
</el-form-item> </el-form-item>
<el-form-item class="el-form-item search-item" label="申请状态"> <el-form-item class="el-form-item search-item" label="申请状态">
<el-select <el-select
@@ -57,22 +58,32 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
<div class="table-container">
<div class="operate-options"> <div class="operate-options">
<div> <div>
<el-button v-btn-permission="'34ea84f51eb01a166b7acfe4f7b02c8d'" size="mini" type="danger" @click="batchOverrule(selectedList)">批量驳回</el-button> <el-button v-btn-permission="'34ea84f51eb01a166b7acfe4f7b02c8d'" size="mini" type="danger"
<el-button v-btn-permission="'a8218ff15358a5265e5571e49acf1f4e'" size="mini" type="primary" @click="batchPass(selectedList)">批量通过</el-button> @click="batchOverrule(selectedList)">批量驳回
<el-button v-btn-permission="'b899c22e27baa561b8c2ecb0f35d7302'" size="mini" @click="exportList">列表导出</el-button> </el-button>
<el-button v-btn-permission="'a8218ff15358a5265e5571e49acf1f4e'" size="mini" type="primary"
@click="batchPass(selectedList)">批量通过
</el-button>
<el-button v-btn-permission="'b899c22e27baa561b8c2ecb0f35d7302'" size="mini" @click="exportList">列表导出
</el-button>
</div> </div>
<div> <div>
<el-button v-btn-permission="'33809866b2fda3f52058299b5e2584c3'" size="mini" type="primary" @click="standardsAndTranslationRequestShowModal">标准/译文获取申请</el-button> <el-button v-btn-permission="'33809866b2fda3f52058299b5e2584c3'" size="mini" type="primary"
@click="standardsAndTranslationRequestShowModal">标准/译文获取申请
</el-button>
</div> </div>
</div> </div>
<div class="content">
<div class="table-wrap">
<div style="position: absolute;height: calc(100% - 10px);width: 100%;">
<el-table <el-table
ref="selections" ref="selections"
v-loading="tableLoading" v-loading="tableLoading"
tooltip-effect="dark" tooltip-effect="dark"
style="width: 100%; flex: auto;" style="width: 100%;"
height="100%"
class="drag-table" class="drag-table"
row-key="id" row-key="id"
border border
@@ -143,8 +154,14 @@
<el-table-column label="操作" align="center" width="200" fixed="right"> <el-table-column label="操作" align="center" width="200" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="table-operate-btn" @click="toView(scope.row)">查看</div> <div class="table-operate-btn" @click="toView(scope.row)">查看</div>
<div v-show="scope.row.status ==='pendingApproval'" v-btn-permission="'3bc041e58bcb4b0510bcc1aad0b9ce89'" class="table-operate-btn" @click="batchPass([scope.row.id])">通过</div> <div v-show="scope.row.status ==='pendingApproval'"
<div v-show="scope.row.status ==='pendingApproval'" v-btn-permission="'92adace8c9a703b3b2472f684808db98'" class="table-operate-btn" @click="batchOverrule([scope.row.id])">驳回</div> v-btn-permission="'3bc041e58bcb4b0510bcc1aad0b9ce89'" class="table-operate-btn"
@click="batchPass([scope.row.id])">通过
</div>
<div v-show="scope.row.status ==='pendingApproval'"
v-btn-permission="'92adace8c9a703b3b2472f684808db98'" class="table-operate-btn"
@click="batchOverrule([scope.row.id])">驳回
</div>
<div <div
v-if="account === scope.row.createBy" v-if="account === scope.row.createBy"
v-show="scope.row.status ==='pendingApproval'" v-show="scope.row.status ==='pendingApproval'"
@@ -173,7 +190,7 @@
重新提交 重新提交
</div> </div>
<div <div
v-if="account === scope.row.createBy" v-if="account === scope.row.createBy || moduleAdmin"
v-show="scope.row.status === 'refuse' || scope.row.status === 'draft'" v-show="scope.row.status === 'refuse' || scope.row.status === 'draft'"
class="table-operate-btn" class="table-operate-btn"
@click="batchDelete (scope.row.id)" @click="batchDelete (scope.row.id)"
@@ -183,6 +200,9 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</div>
</div>
</div>
<pagination <pagination
style="position: relative;" style="position: relative;"
:page="StandardApplyForEOPage.page" :page="StandardApplyForEOPage.page"
@@ -190,11 +210,10 @@
@pageChange="pageChange" @pageChange="pageChange"
@pageSizeChange="pageSizeChange" @pageSizeChange="pageSizeChange"
/> />
</div> <standardsAndTranslationModal ref="standardsAndTranslationModalRef" @updateIndexList="getList"/>
<standardsAndTranslationModal ref="standardsAndTranslationModalRef" @updateIndexList="getList" /> <detailModal ref="detailModalRef"/>
<detailModal ref="detailModalRef" /> <addModal ref="addModalRef" @updateList="getList"/>
<addModal ref="addModalRef" @updateList="getList" /> <exportDialog ref="exportDialogRef" @exportData="exportName"/>
<exportDialog ref="exportDialogRef" @exportData="exportName" />
<Role-tree <Role-tree
:is-title="drawerTitle" :is-title="drawerTitle"
:is-visible.sync="modalShowRoleFlag" :is-visible.sync="modalShowRoleFlag"
@@ -226,8 +245,9 @@ export default {
exportDialog, exportDialog,
addModal addModal
}, },
data () { data() {
return { return {
moduleAdmin: false,
applyForUnitName: '', applyForUnitName: '',
modalShowDepFlag: false, modalShowDepFlag: false,
choiceTitle: '', // 人员选择 choiceTitle: '', // 人员选择
@@ -279,17 +299,17 @@ export default {
nodeListDep: [] nodeListDep: []
} }
}, },
mounted () { mounted() {
this.account = JSON.parse(window.localStorage.getItem('userInfo')).account this.account = JSON.parse(window.localStorage.getItem('userInfo')).account
if (this.$route.query && this.$route.query.tag === 'fromSearchCenter') { if (this.$route.query && this.$route.query.tag === 'fromSearchCenter') {
this.standardsAndTranslationRequestShowModal() this.standardsAndTranslationRequestShowModal()
this.$router.replace({ query: { ...this.$route.query, tag: undefined } }) this.$router.replace({query: {...this.$route.query, tag: undefined}})
} }
this.getList() this.getList()
this.getDicTypeListCode() this.getDicTypeListCode()
}, },
methods: { methods: {
batchDelete (id) { batchDelete(id) {
let ids = '' let ids = ''
let tipsText = '' let tipsText = ''
if (id) { if (id) {
@@ -303,17 +323,17 @@ export default {
type: 'warning', type: 'warning',
roundButton: false roundButton: false
}).then(() => { }).then(() => {
this.$http.postData(this.url.deleteUrl, { ids: ids }, { _this: this }, res => { this.$http.postData(this.url.deleteUrl, {ids: ids}, {_this: this}, res => {
if (res.ok) { if (res.ok) {
this.$message.success('操作成功') this.$message.success('操作成功')
this.getList() this.getList()
}else{ } else {
this.$message.warning(res.message) this.$message.warning(res.message)
} }
}) })
}) })
}, },
drawerCheckDep (data) { drawerCheckDep(data) {
let idList = '' let idList = ''
let nameList = '' let nameList = ''
data.forEach(item => { data.forEach(item => {
@@ -327,7 +347,7 @@ export default {
this.StandardApplyForEOPage.applyForUnitIds = idList; this.StandardApplyForEOPage.applyForUnitIds = idList;
this.applyForUnitName = nameList; this.applyForUnitName = nameList;
}, },
choiceZRBM (type, title, id = '') { choiceZRBM(type, title, id = '') {
this.nodeListDep = [] this.nodeListDep = []
if (id) { if (id) {
this.$set(this, 'nodeListDep', id.split(',')) this.$set(this, 'nodeListDep', id.split(','))
@@ -335,24 +355,24 @@ export default {
this.choiceTitle = title this.choiceTitle = title
this.modalShowDepFlag = true this.modalShowDepFlag = true
}, },
ResubmitOrWithdraw (id, status) { ResubmitOrWithdraw(id, status) {
const query = { const query = {
status: status ? status : '', status: status ? status : '',
ids: id ids: id
} }
this.$http.postData('/lawss/standardApplyFor/batchUpdateStatus', query, { _this: this }, res => { this.$http.postData('/lawss/standardApplyFor/batchUpdateStatus', query, {_this: this}, res => {
if (res.ok) { if (res.ok) {
this.$message.success('操作成功') this.$message.success('操作成功')
this.getList() this.getList()
}else{ } else {
this.$message.warning(res.message) this.$message.warning(res.message)
} }
}) })
}, },
edit (item) { edit(item) {
this.$refs.addModalRef.showModal(item) this.$refs.addModalRef.showModal(item)
}, },
checkedRole (data) { checkedRole(data) {
let idList = '' let idList = ''
let nameList = '' let nameList = ''
data.forEach(item => { data.forEach(item => {
@@ -366,9 +386,9 @@ export default {
this.StandardApplyForEOPage.applyForUserIds = idList this.StandardApplyForEOPage.applyForUserIds = idList
this.applyForUserName = nameList this.applyForUserName = nameList
}, },
choiceWSSMR (type, title, id) { choiceWSSMR(type, title, id) {
this.nodeList = [] this.nodeList = []
if(id) { if (id) {
const nameId = id.split(',') const nameId = id.split(',')
let idList = [] let idList = []
nameId.forEach(item => { nameId.forEach(item => {
@@ -381,7 +401,7 @@ export default {
this.drawerTitle = title this.drawerTitle = title
this.modalShowRoleFlag = true this.modalShowRoleFlag = true
}, },
getDicTypeListCode () { getDicTypeListCode() {
this.$http.get('sys/dictype/getDicTypeListCode', '', { this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this _this: this
}, res => { }, res => {
@@ -390,11 +410,11 @@ export default {
}, e => { }, e => {
}) })
}, },
searchData () { searchData() {
this.StandardApplyForEOPage.page = 1 this.StandardApplyForEOPage.page = 1
this.getList() this.getList()
}, },
clearSerach () { clearSerach() {
this.applyForUnitName = '' this.applyForUnitName = ''
this.applyForUserName = '' this.applyForUserName = ''
this.StandardApplyForEOPage = { this.StandardApplyForEOPage = {
@@ -403,7 +423,7 @@ export default {
} }
this.getList() this.getList()
}, },
getList () { getList() {
this.tableLoading = true this.tableLoading = true
this.$http.get(this.url.getList, { this.$http.get(this.url.getList, {
...this.StandardApplyForEOPage ...this.StandardApplyForEOPage
@@ -413,21 +433,22 @@ export default {
if (res.ok) { if (res.ok) {
this.StandardApplyForEO = res.data.records this.StandardApplyForEO = res.data.records
this.total = res.data.total this.total = res.data.total
}else { } else {
this.StandardApplyForEO = [] this.StandardApplyForEO = []
this.total = 0 this.total = 0
} }
this.selectedList = [] this.selectedList = []
this.$refs.selections.clearSelection() this.$refs.selections.clearSelection()
this.tableLoading = false this.tableLoading = false
this.$http.get('/lawss/standardApplyFor/queryPendingApprovalCount', '', { _this: this }, res => { this.$http.get('/lawss/standardApplyFor/queryPendingApprovalCount', '', {_this: this}, res => {
if (res.ok) { if (res.ok) {
this.$store.commit('SET_STANDARD_TRANSLATION_TODO', res.data) this.$store.commit('SET_STANDARD_TRANSLATION_TODO', res.data.pendingApprovalCount)
this.moduleAdmin = res.data.isStandardApplyForAdministrator
} }
}) })
}) })
}, },
batchPass (id) { batchPass(id) {
if (id.length === 0) { if (id.length === 0) {
this.$message({ this.$message({
message: '请选择至少一条数据', message: '请选择至少一条数据',
@@ -452,7 +473,7 @@ export default {
type: 'warning', type: 'warning',
roundButton: false roundButton: false
}).then(() => { }).then(() => {
this.$http.postData(this.url.updateState, { status: 'pass', ids: ids }, { _this: this }, res => { this.$http.postData(this.url.updateState, {status: 'pass', ids: ids}, {_this: this}, res => {
if (res.ok) { if (res.ok) {
this.$message.success('操作成功') this.$message.success('操作成功')
this.getList() this.getList()
@@ -465,7 +486,7 @@ export default {
this.$refs.selections.clearSelection() this.$refs.selections.clearSelection()
}) })
}, },
batchOverrule (id) { batchOverrule(id) {
if (id.length === 0) { if (id.length === 0) {
this.$message({ this.$message({
message: '请选择至少一条数据', message: '请选择至少一条数据',
@@ -501,8 +522,8 @@ export default {
} }
}, },
inputErrorMessage: '' inputErrorMessage: ''
}).then(({ value }) => { }).then(({value}) => {
this.$http.postData(this.url.updateState, { status: 'refuse', refuseCause: value, ids }, { _this: this }, res => { this.$http.postData(this.url.updateState, {status: 'refuse', refuseCause: value, ids}, {_this: this}, res => {
if (res.ok) { if (res.ok) {
this.$message.success('操作成功') this.$message.success('操作成功')
this.getList() this.getList()
@@ -515,7 +536,7 @@ export default {
this.$refs.selections.clearSelection() this.$refs.selections.clearSelection()
}) })
}, },
exportName (name) { exportName(name) {
const params = { const params = {
...this.StandardApplyForEOPage, ...this.StandardApplyForEOPage,
exportFileName: name ? name : '标准及译文获取申请', exportFileName: name ? name : '标准及译文获取申请',
@@ -527,7 +548,7 @@ export default {
responseType: 'blob', responseType: 'blob',
params: params params: params
}).then(res => { }).then(res => {
const blob = new Blob([ res ], { type: 'application/vnd.ms-excel' }); const blob = new Blob([res], {type: 'application/vnd.ms-excel'});
// 浏览器兼容,Google和火狐支持a标签的downloadIE不支持 // 浏览器兼容,Google和火狐支持a标签的downloadIE不支持
if (window.navigator && window.navigator.msSaveBlob) { if (window.navigator && window.navigator.msSaveBlob) {
// IE浏览器、微软浏览器 // IE浏览器、微软浏览器
@@ -546,24 +567,24 @@ export default {
} }
}) })
}, },
exportList () { exportList() {
this.$refs.exportDialogRef.openModel() this.$refs.exportDialogRef.openModel()
}, },
toView (id) { toView(id) {
this.$refs.detailModalRef.showModal(id) this.$refs.detailModalRef.showModal(id)
}, },
standardsAndTranslationRequestShowModal () { standardsAndTranslationRequestShowModal() {
this.$refs.standardsAndTranslationModalRef.showModal() this.$refs.standardsAndTranslationModalRef.showModal()
}, },
pageChange (page) { pageChange(page) {
this.StandardApplyForEOPage.page = page this.StandardApplyForEOPage.page = page
this.getList() this.getList()
}, },
pageSizeChange (pageSize) { pageSizeChange(pageSize) {
this.StandardApplyForEOPage.pageSize = pageSize this.StandardApplyForEOPage.pageSize = pageSize
this.getList() this.getList()
}, },
handleSelectionChange (value) { handleSelectionChange(value) {
const ids = [] const ids = []
value.forEach(item => { value.forEach(item => {
ids.push(item.id) ids.push(item.id)
@@ -572,7 +593,7 @@ export default {
this.selectedTag = false this.selectedTag = false
} }
}) })
this.selectedList = [ ...ids ] this.selectedList = [...ids]
} }
}, },
} }
@@ -583,23 +604,25 @@ export default {
height: 100%; height: 100%;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
.table-container {
background-color: white; background-color: white;
padding: 0 10px;
flex-grow: 1;
display: flex;
flex-direction: column;
.drag-table {
flex-grow: 1;
}
.operate-options { .operate-options {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
padding-bottom: 10px; padding: 10px;
}
.content {
flex: auto;
overflow: hidden;
display: flex;
flex-direction: column;
.table-wrap {
flex: auto;
overflow: hidden;
position: relative;
} }
} }