Merge branch 'dev_2nd_period_test' into 'feature_dev_20221010_extend'
# Conflicts: # jero-web/src/common/lang/en-us.js # jero-web/src/common/lang/zh-cn.js
This commit is contained in:
@@ -1360,4 +1360,5 @@ module.exports = {
|
||||
cancelTopping:'Cancel Topping',
|
||||
relatedProjectVersion:'Related project version',
|
||||
Importfailure:'Import failure',
|
||||
CuiBan:'CuiBan',
|
||||
}
|
||||
@@ -1461,4 +1461,5 @@ module.exports = {
|
||||
cancelTopping:'取消置顶',
|
||||
relatedProjectVersion:'相关项目版本',
|
||||
Importfailure:'导入失败',
|
||||
CuiBan:'催办',
|
||||
}
|
||||
@@ -21,11 +21,11 @@
|
||||
<!-- <span v-if="ol.text==$t('check')">-->
|
||||
<!-- {{record.resultContent=='转换成功'&&record.syncState=='未同步'?ol.text:''}}-->
|
||||
<!-- </span>-->
|
||||
<span v-if="ol.text==$t('download') && record.createBy == userData.username"
|
||||
<span v-if="ol.text==$t('download') && (record.createBy == userData.username || administrators)"
|
||||
v-has="'ocr:ocrRestful:downFile'">
|
||||
{{record.resultContent=='转换成功'?ol.text:''}}
|
||||
</span>
|
||||
<span v-if="ol.text==$t('delete') && record.createBy == userData.username" v-has="'ocr:ocrRecord:delete'">
|
||||
<span v-if="ol.text==$t('delete') && (record.createBy == userData.username || administrators)" v-has="'ocr:ocrRecord:delete'">
|
||||
{{ol.text}}
|
||||
</span>
|
||||
</a>
|
||||
@@ -105,7 +105,8 @@
|
||||
searchParmes: {},
|
||||
loading: false,
|
||||
orderBy: '1',
|
||||
orderByField: ''
|
||||
orderByField: '',
|
||||
administrators:false
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@@ -131,6 +132,14 @@
|
||||
this.getData()
|
||||
this.getTableList()
|
||||
this.userData = this.userInfo()
|
||||
this.administrators = false
|
||||
if (this.userInfo().userRoleList && this.userInfo().userRoleList.length > 0) {
|
||||
this.userInfo().userRoleList.forEach(res => {
|
||||
if (res.roleCode == 'admin') {
|
||||
this.administrators = true
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
beforeDestroy(){
|
||||
eventBUs.$off('searchQuery')
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<!-- <span class="text">-->
|
||||
<!-- {{ol.text}}-->
|
||||
<!-- </span>-->
|
||||
<span v-if="ol.text==$t('backDocument')&&record.flag==0 && record.createBy == userData.username"
|
||||
<span v-if="ol.text==$t('backDocument') && record.flag==0 && (record.createBy == userData.username || administrators)"
|
||||
class="text"
|
||||
v-has="'split:sarFileSplitInfo:bind'">
|
||||
{{ol.text}}
|
||||
@@ -27,7 +27,7 @@
|
||||
v-has="'split:sarFileSplitItems:page'">
|
||||
{{ol.text}}
|
||||
</span>
|
||||
<span v-if="ol.text==$t('delete') && record.createBy == userData.username"
|
||||
<span v-if="ol.text==$t('delete') && (record.createBy == userData.username || administrators)"
|
||||
v-has="'split:sarFileSplitInfo:delete'">
|
||||
{{ol.text}}
|
||||
</span>
|
||||
@@ -109,7 +109,8 @@
|
||||
loading: false,
|
||||
orderBy: '1',
|
||||
userData: {},
|
||||
orderByField: ''
|
||||
orderByField: '',
|
||||
administrators:false,
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@@ -141,6 +142,14 @@
|
||||
this.getData()
|
||||
this.getTableList()
|
||||
this.userData = this.userInfo()
|
||||
this.administrators = false
|
||||
if (this.userInfo().userRoleList && this.userInfo().userRoleList.length > 0) {
|
||||
this.userInfo().userRoleList.forEach(res => {
|
||||
if (res.roleCode == 'admin') {
|
||||
this.administrators = true
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
beforeDestroy() {
|
||||
eventBUs.$off('searchQuery')
|
||||
|
||||
@@ -639,8 +639,7 @@
|
||||
}
|
||||
let params = {
|
||||
paramsManifestId: paramsManifestid,
|
||||
flag: '7',
|
||||
userType: userType
|
||||
flag: '7'
|
||||
}
|
||||
getAction(url, params).then((res) => {
|
||||
if (res.success) {
|
||||
|
||||
@@ -15,7 +15,10 @@
|
||||
<a-list-item :key="index" v-for="(record, index) in announcement1" v-if="index <= 4">
|
||||
<div style="margin-left: 5%;width: 80%;">
|
||||
<p style="overflow: hidden; text-overflow: ellipsis;white-space: nowrap;color:#00B3BE">
|
||||
<a :title="record.msgContent" @click="showAnnouncement(record)">{{ record.msgContent }}</a>
|
||||
<a :title="language == 'zh-cn'?record.msgContentCn:record.msgContent"
|
||||
@click="showAnnouncement(record)">
|
||||
{{ language == 'zh-cn'?record.msgContentCn:record.msgContent }}
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</a-list-item>
|
||||
@@ -50,6 +53,7 @@
|
||||
data() {
|
||||
return {
|
||||
loadding: false,
|
||||
language: '',
|
||||
url: {
|
||||
listCementByUser: '/sys/sysAnnouncementSend/getMessageUnreadList',
|
||||
editCementSend: '/sys/sysAnnouncementSend/editByAnntIdAndUserId',
|
||||
@@ -91,6 +95,7 @@
|
||||
},
|
||||
created() {
|
||||
this.loadData()
|
||||
this.language = localStorage.getItem('language') || ''
|
||||
// this.initWebSocket()
|
||||
if (store.getters.userInfo) {
|
||||
this.$socketPublic.dispatch('webSocketInit')//初始化ws
|
||||
@@ -139,7 +144,11 @@
|
||||
showAnnouncement(record) {
|
||||
getAction(this.url.readAllMsg, { ids: record.id }).then((res) => {
|
||||
})
|
||||
localStorage.setItem('msgContent', record.msgContent)
|
||||
if (this.language == 'zh-cn') {
|
||||
localStorage.setItem('msgContent', record.msgContentCn)
|
||||
} else {
|
||||
localStorage.setItem('msgContent', record.msgContent)
|
||||
}
|
||||
this.$router.push({
|
||||
path: '/isps/userAnnouncement',
|
||||
query: {
|
||||
|
||||
+13
-9
@@ -32,10 +32,10 @@
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text"
|
||||
:title="$t('problemClassification')">{{$t('problemClassification')}}</span>
|
||||
:title="$t('classification')">{{$t('classification')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel itemModel-multi" prop="problemType">
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('problemClassification')"
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('classification')"
|
||||
@change="problemTypeChange"
|
||||
mode="multiple"
|
||||
v-model="formInline.problemType">
|
||||
@@ -125,14 +125,16 @@
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
<a-button class="box-button-index"
|
||||
:title="$t('addStandardInformation')"
|
||||
type="primary" @click="bringInDocumentInformationClick">
|
||||
{{$t('addStandardInformation')}}
|
||||
</a-button>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="8">
|
||||
<a-button class="box-button-index"
|
||||
:title="$t('addStandardInformation')"
|
||||
type="primary" @click="bringInDocumentInformationClick">
|
||||
{{$t('addStandardInformation')}}
|
||||
</a-button>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24" style="height: 380px">
|
||||
@@ -799,8 +801,9 @@
|
||||
width: 120px;
|
||||
overflow: hidden;
|
||||
padding: 0 0;
|
||||
float: right;
|
||||
/*float: right;*/
|
||||
text-align: center;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
::v-deep .box-button-index span {
|
||||
@@ -843,8 +846,9 @@
|
||||
}
|
||||
|
||||
.box-input-index {
|
||||
width: calc(100% - 130px);
|
||||
/*width: calc(100% - 130px);*/
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
height: 48px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
<div class="myNews-box-content-box" v-for="(item,index) in dataSource" :key="index" @click="magClick(item)">
|
||||
<img src="../../../assets/wdxx.png" alt="">
|
||||
<div class="content-box">
|
||||
<div class="top" :title="item.msgContent">
|
||||
{{item.msgContent}}
|
||||
<div class="top" :title="language == 'zh-cn'?item.msgContentCn:item.msgContent">
|
||||
{{language == 'zh-cn'?item.msgContentCn:item.msgContent}}
|
||||
</div>
|
||||
<div class="botton">
|
||||
{{item.sendTime}}
|
||||
@@ -44,11 +44,13 @@
|
||||
loading: false,
|
||||
pageNo: 1,
|
||||
pageSize: 4,
|
||||
dataSource: []
|
||||
dataSource: [],
|
||||
language: ''
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getList()
|
||||
this.language = localStorage.getItem('language') || ''
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
@@ -69,7 +71,11 @@
|
||||
magClick(row) {
|
||||
getAction(this.url.readAllMsg, { ids: row.id }).then((res) => {
|
||||
})
|
||||
localStorage.setItem('msgContent', row.msgContent)
|
||||
if (this.language == 'zh-cn'){
|
||||
localStorage.setItem('msgContent', row.msgContentCn)
|
||||
}else{
|
||||
localStorage.setItem('msgContent', row.msgContent)
|
||||
}
|
||||
this.$router.push({
|
||||
path: '/isps/userAnnouncement',
|
||||
query: {
|
||||
|
||||
@@ -65,16 +65,16 @@
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<a class="text-operation" @click="edit(record)"
|
||||
v-has="'dummyInventoryBase:deleteBatch'"
|
||||
v-if="record.createBy == userData.username"
|
||||
v-if="record.createBy == userData.username || administrators"
|
||||
:disabled="record.state == 1?true:false">{{$t('edit')}}</a>
|
||||
<a class="text-operation"
|
||||
v-if="record.createBy == userData.username"
|
||||
v-if="record.createBy == userData.username || administrators"
|
||||
v-has="'dummyInventoryBase:issue'"
|
||||
@click="withdraw(record)">
|
||||
{{record.state == 2 ? $t('release') : $t('withdraw')}}
|
||||
</a>
|
||||
<a class="text-operation" :disabled="record.state == 1?true:false"
|
||||
v-if="record.createBy == userData.username"
|
||||
v-if="record.createBy == userData.username || administrators"
|
||||
v-has="'dummyInventoryBase:deleteBatch'"
|
||||
@click="maintenanceList(record)">{{$t('maintenanceList')}}</a>
|
||||
<a class="text-operation"
|
||||
@@ -84,7 +84,7 @@
|
||||
</a>
|
||||
<a class="text-operation" :disabled="record.state == 1?true:false"
|
||||
v-has="'dummyInventoryBase:deleteBatch'"
|
||||
v-if="record.createBy == userData.username"
|
||||
v-if="record.createBy == userData.username || administrators"
|
||||
@click="deleteLib(record)">{{$t('deleteLib')}}</a>
|
||||
</span>
|
||||
</a-table>
|
||||
@@ -244,13 +244,21 @@
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
queryParam: {}
|
||||
|
||||
queryParam: {},
|
||||
administrators:false,
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getList()
|
||||
this.userData = this.userInfo()
|
||||
this.administrators = false
|
||||
if (this.userInfo().userRoleList && this.userInfo().userRoleList.length > 0) {
|
||||
this.userInfo().userRoleList.forEach(res => {
|
||||
if (res.roleCode == 'admin') {
|
||||
this.administrators = true
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
...mapGetters(['userInfo']),
|
||||
|
||||
@@ -107,7 +107,7 @@
|
||||
line-height: 40px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
@@ -8,24 +8,24 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="header-content">
|
||||
<div class="operator-text"
|
||||
v-if="$route.query.TaskKey == 'zrrclrw' && this.$route.query.isDisplay"
|
||||
@click="distributionEngineerClick($t('distributionEngineer'),1)">
|
||||
<a-icon type="audit"/>
|
||||
{{ $t('distributionEngineer') }}
|
||||
</div>
|
||||
<div class="operator-text"
|
||||
v-if="$route.query.TaskKey == 'zrrclrw' && this.$route.query.isDisplay"
|
||||
@click="reminderHandling()">
|
||||
<a-icon type="sound"/>
|
||||
{{ $t('reminderHandling') }}
|
||||
</div>
|
||||
<div class="operator-text"
|
||||
v-if="$route.query.TaskKey == 'zrrclrw' && this.$route.query.isDisplay"
|
||||
@click="distributionEngineerClick($t('addFeedback'),2)">
|
||||
<a-icon type="plus-circle"/>
|
||||
{{ $t('addFeedback') }}
|
||||
</div>
|
||||
<a-button class="header-btn submit"
|
||||
v-if="$route.query.TaskKey == 'zrrclrw' && this.$route.query.isDisplay"
|
||||
@click="distributionEngineerClick($t('distributionEngineer'),1)"
|
||||
type="primary">
|
||||
{{$t('distributionEngineer')}}
|
||||
</a-button>
|
||||
<a-button class="header-btn submit"
|
||||
v-if="$route.query.TaskKey == 'zrrclrw' && this.$route.query.isDisplay"
|
||||
@click="distributionEngineerClick($t('addFeedback'),2)"
|
||||
type="primary">
|
||||
{{$t('addFeedback')}}
|
||||
</a-button>
|
||||
<!-- <div class="operator-text"-->
|
||||
<!-- v-if="$route.query.TaskKey == 'zrrclrw' && this.$route.query.isDisplay"-->
|
||||
<!-- @click="reminderHandling()">-->
|
||||
<!-- <a-icon type="sound"/>-->
|
||||
<!-- {{ $t('reminderHandling') }}-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
<a-table
|
||||
ref="table"
|
||||
@@ -74,6 +74,11 @@
|
||||
@click="deleted(result)">
|
||||
{{$t('deleteLib')}}
|
||||
</a>
|
||||
<a class="text"
|
||||
@click="reminderClick(result)"
|
||||
v-if="$route.query.TaskKey == 'zrrclrw' && !result.createUser">
|
||||
{{ $t('reminderHandling') }}
|
||||
</a>
|
||||
</span>
|
||||
</a-table>
|
||||
<a-modal
|
||||
@@ -279,31 +284,31 @@
|
||||
</div>
|
||||
<JLoading :loading="pageLoading">{{$t('dataLoading')}}</JLoading>
|
||||
</a-modal>
|
||||
<a-modal
|
||||
:title="$t('reminderHandling')"
|
||||
:width="800"
|
||||
:visible="visibleTable"
|
||||
:maskClosable="false"
|
||||
@cancel="visibleTable = false"
|
||||
>
|
||||
<template slot="footer">
|
||||
<a-button key="back" @click="visibleTable = false">
|
||||
{{$t('cancel')}}
|
||||
</a-button>
|
||||
</template>
|
||||
<a-table
|
||||
ref="table"
|
||||
:loading="loadingTable"
|
||||
:pagination="false"
|
||||
:scroll="{x: true,y:400}"
|
||||
:data-source="dataSourceTable"
|
||||
:columns="columnsTable"
|
||||
>
|
||||
<span slot="operationTable" slot-scope="result">
|
||||
<a @click="reminderClick(result)">{{$t('reminder')}}</a>
|
||||
</span>
|
||||
</a-table>
|
||||
</a-modal>
|
||||
<!-- <a-modal-->
|
||||
<!-- :title="$t('reminderHandling')"-->
|
||||
<!-- :width="800"-->
|
||||
<!-- :visible="visibleTable"-->
|
||||
<!-- :maskClosable="false"-->
|
||||
<!-- @cancel="visibleTable = false"-->
|
||||
<!-- >-->
|
||||
<!-- <template slot="footer">-->
|
||||
<!-- <a-button key="back" @click="visibleTable = false">-->
|
||||
<!-- {{$t('cancel')}}-->
|
||||
<!-- </a-button>-->
|
||||
<!-- </template>-->
|
||||
<!-- <a-table-->
|
||||
<!-- ref="table"-->
|
||||
<!-- :loading="loadingTable"-->
|
||||
<!-- :pagination="false"-->
|
||||
<!-- :scroll="{x: true,y:400}"-->
|
||||
<!-- :data-source="dataSourceTable"-->
|
||||
<!-- :columns="columnsTable"-->
|
||||
<!-- >-->
|
||||
<!-- <span slot="operationTable" slot-scope="result">-->
|
||||
<!-- <a @click="reminderClick(result)">{{$t('reminder')}}</a>-->
|
||||
<!-- </span>-->
|
||||
<!-- </a-table>-->
|
||||
<!-- </a-modal>-->
|
||||
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"/>
|
||||
<viewFileModel ref="viewFileModelRef"/>
|
||||
</div>
|
||||
@@ -436,7 +441,7 @@
|
||||
{
|
||||
title: this.$t('operation'),
|
||||
align: 'left',
|
||||
width: 160,
|
||||
width: 190,
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
@@ -722,7 +727,7 @@
|
||||
_this.formInline.userId.splice(num, 1)
|
||||
_this.formInline.userId = _this.formInline.userId.join(',')
|
||||
_this.formInline = { ..._this.formInline }
|
||||
if (id){
|
||||
if (id) {
|
||||
deleteAction('/project/projectTaskInventoryDetailEO/delete', { id: id }).then((res) => {
|
||||
if (res.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
@@ -829,7 +834,7 @@
|
||||
line-height: 80px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
@@ -960,4 +965,9 @@
|
||||
line-height: 200px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.header-btn {
|
||||
height: 38px;
|
||||
margin-left: 16px;
|
||||
}
|
||||
</style>
|
||||
@@ -384,7 +384,7 @@
|
||||
line-height: 40px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
@@ -478,7 +478,7 @@
|
||||
line-height: 40px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
@@ -223,7 +223,7 @@
|
||||
line-height: 40px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
@@ -238,7 +238,7 @@
|
||||
line-height: 40px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
line-height: 80px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
@@ -127,7 +127,7 @@
|
||||
line-height: 40px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
@@ -325,7 +325,7 @@
|
||||
line-height: 40px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
@@ -116,7 +116,7 @@
|
||||
line-height: 40px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
line-height: 40px;
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-size: 18px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
@@ -339,7 +339,7 @@
|
||||
})
|
||||
} else {
|
||||
this.loading = false
|
||||
this.$message.warning(this.$t('operationFailed'))
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -268,7 +268,7 @@
|
||||
}
|
||||
} else {
|
||||
this.loading = false
|
||||
this.$message.warning(this.$t('operationFailed'))
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
@@ -209,7 +209,7 @@
|
||||
})
|
||||
} else {
|
||||
this.loading = false
|
||||
this.$message.warning(this.$t('operationFailed'))
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -367,7 +367,7 @@
|
||||
this.edit()
|
||||
} else {
|
||||
this.loading = false
|
||||
this.$message.warning(this.$t('operationFailed'))
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
{{$t('basicInformationOfParameters')}}
|
||||
</div>
|
||||
<div class="header-tight">
|
||||
<a-button v-if="this.$route.query.studioEngineer == this.userInfo().id" class="box-button"
|
||||
<a-button v-if="this.$route.query.studioEngineer == this.userInfo().id || administrators" class="box-button"
|
||||
style="line-height: 32px" @click="edit">
|
||||
{{$t('edit')}}
|
||||
</a-button>
|
||||
@@ -115,7 +115,8 @@
|
||||
{{$t('regulatoryCertificationTaskPlan')}}
|
||||
</div>
|
||||
<div class="header-tight">
|
||||
<a-button class="box-button" v-if="this.$route.query.studioEngineer == this.userInfo().id"
|
||||
<a-button class="box-button"
|
||||
v-if="this.$route.query.studioEngineer == this.userInfo().id || administrators"
|
||||
style="line-height: 32px"
|
||||
@click="settingClick">{{$t('setting')}}
|
||||
</a-button>
|
||||
@@ -183,6 +184,7 @@
|
||||
data() {
|
||||
return {
|
||||
queryForm: {},
|
||||
administrators:false,
|
||||
activeKey: this.$t('CurrentStatusOfTheProject'),
|
||||
url: {
|
||||
queryById: 'project/projectLibraryBase/queryById',
|
||||
@@ -199,6 +201,14 @@
|
||||
mounted() {
|
||||
this.getForm()
|
||||
this.getSetting()
|
||||
this.administrators = false
|
||||
if (this.userInfo().userRoleList && this.userInfo().userRoleList.length > 0) {
|
||||
this.userInfo().userRoleList.forEach(res => {
|
||||
if (res.roleCode == 'admin') {
|
||||
this.administrators = true
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
...mapGetters(['userInfo']),
|
||||
|
||||
@@ -76,10 +76,10 @@
|
||||
</a-form>
|
||||
</div>
|
||||
<div class="table-operator">
|
||||
<!-- <div class="operator-text" @click="batSettingClick">-->
|
||||
<!-- <a-icon type="setting"/>-->
|
||||
<!-- {{ $t('batSetting') }}-->
|
||||
<!-- </div>-->
|
||||
<div class="operator-text" @click="cuibanClick">
|
||||
<a-icon type="sound"/>
|
||||
{{ $t('CuiBan') }}
|
||||
</div>
|
||||
<div @click="BatchMaintenanceProgress" class="operator-text">
|
||||
<a-icon type="setting"/>
|
||||
{{$t('BatchMaintenanceProgress')}}
|
||||
@@ -190,6 +190,7 @@
|
||||
<taskBatSetting @taskBatSettingForm="taskBatSettingForm" ref="taskBatSettingRef"></taskBatSetting>
|
||||
<batchChangeModel @batchChangeModel="batchChangeModel" ref="batchChangeModelRef"/>
|
||||
<batchModel @batchModel="batchModel" ref="batchModelRef"/>
|
||||
<cuibanModel @cibanModel="cibanModel" ref="cModelRef"/>
|
||||
<!-- 错误数据提示-->
|
||||
<a-modal
|
||||
:title="$t('operationFailed')"
|
||||
@@ -222,6 +223,7 @@
|
||||
import batchModel from './batchModel'
|
||||
import TaskListModel from './TaskListModel'
|
||||
import taskBatSetting from './taskBatSetting'
|
||||
import cuibanModel from './cuibanModel'
|
||||
import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage'
|
||||
import { mapGetters } from 'vuex'
|
||||
import store from '@/store/'
|
||||
@@ -233,6 +235,7 @@
|
||||
TaskListModel,
|
||||
batchChangeModel,
|
||||
batchModel,
|
||||
cuibanModel,
|
||||
taskBatSetting
|
||||
},
|
||||
props: ['isDisplayNum', 'areaOfResponsibility'],
|
||||
@@ -536,6 +539,17 @@
|
||||
let item = JSON.parse(JSON.stringify(val))
|
||||
this.$refs.TaskListModelRef.getData(item, this.$t('CurrentStatus'))
|
||||
},
|
||||
// 催办
|
||||
cuibanClick(){
|
||||
if(this.selectionRowsArray.length <1){
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
}else{
|
||||
this.$refs.cModelRef.getData(this.selectionRowsArray)
|
||||
}
|
||||
},
|
||||
cibanModel(){
|
||||
this.getList()
|
||||
},
|
||||
//批量维护进度
|
||||
|
||||
BatchMaintenanceProgress() {
|
||||
|
||||
@@ -0,0 +1,189 @@
|
||||
<!--催办-->
|
||||
<template>
|
||||
<a-modal
|
||||
:title="title"
|
||||
:width="700"
|
||||
:visible="visible"
|
||||
:confirm-loading="confirmLoading"
|
||||
:maskClosable="false"
|
||||
@ok="handleOk"
|
||||
@cancel="visible = false"
|
||||
>
|
||||
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('taskType')">{{$t('taskType')}}</span>
|
||||
</div>
|
||||
<!-- mode="multiple"-->
|
||||
<a-form-model-item class="itemModel" prop="type">
|
||||
<a-select v-model="formInline.type"
|
||||
class='box-input'
|
||||
:placeholder="$t('PleaseSelect') + $t('taskType')"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
allowClear>
|
||||
<a-select-option v-for="(item, key) in cuibanList" :key="key" :value="item.value">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.label ">
|
||||
{{ item.label }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
|
||||
</a-row>
|
||||
</a-form-model>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { postAction, putAction, getAction } from '@/api/manage'
|
||||
|
||||
export default {
|
||||
name: 'TaskListModel',
|
||||
data() {
|
||||
return {
|
||||
formInline: {},
|
||||
selectionRowsArray:[],
|
||||
rules: {
|
||||
type: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('PleaseSelect') + this.$t('taskType'),
|
||||
trigger: 'change'
|
||||
}
|
||||
]
|
||||
},
|
||||
title:'',
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
studioList: [],
|
||||
cuibanList:[
|
||||
{ label: this.$t('confirmationOfDesignConformity'), value: '2' },
|
||||
{ label: this.$t('PrehomoConfirmation'), value: '3' },
|
||||
{ label: this.$t('verificationAndConformityconfirmation'), value: '4' },
|
||||
],
|
||||
ids:'',
|
||||
disabled: false,
|
||||
url: {
|
||||
edit: '/project/projectTaskInventoryEO/edit',
|
||||
addOrUpdate: '/project/projectTaskInventoryConditionAssessmentEO/addOrUpdate',
|
||||
list: '/project/projectTaskInventoryConditionAssessmentEO/list'
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
getData(val) {
|
||||
this.visible = true
|
||||
this.title = this.$t('CuiBan')
|
||||
this.selectionRowsArray = val
|
||||
this.$nextTick(() => {
|
||||
this.formInline = {}
|
||||
this.$refs.ruleForm.clearValidate()
|
||||
})
|
||||
},
|
||||
getList(val) {
|
||||
getAction(this.url.list, { projectLawsInventoryId: val.projectLawsInventoryId }).then((res) => {
|
||||
if (res.success) {
|
||||
this.studioList = res.result || []
|
||||
} else {
|
||||
this.studioList = []
|
||||
}
|
||||
})
|
||||
},
|
||||
handleInput(value) {
|
||||
this.$nextTick(() => {
|
||||
this.formInline = { ...this.formInline }
|
||||
this.$refs.ruleForm.validateField([value])
|
||||
})
|
||||
},
|
||||
handleOk() {
|
||||
if (this.disabled) {
|
||||
this.visible = false
|
||||
return
|
||||
}
|
||||
this.$refs.ruleForm.validate(valid => {
|
||||
if (valid) {
|
||||
let ProjectTaskUrgVo = {}
|
||||
let projectLawsInventoryId = []
|
||||
this.selectionRowsArray.forEach((item) => {
|
||||
if(item.projectLawsInventoryId){
|
||||
projectLawsInventoryId.push(item.projectLawsInventoryId)
|
||||
}
|
||||
})
|
||||
ProjectTaskUrgVo = {
|
||||
projectLawsInventoryIds: projectLawsInventoryId.join(','),
|
||||
type: this.formInline.type,
|
||||
}
|
||||
this.confirmLoading = true
|
||||
postAction('/project/projectLawsInventoryEO/taskUrg', ProjectTaskUrgVo).then((res) => {
|
||||
if (res.success) {
|
||||
this.visible = false
|
||||
this.confirmLoading = false
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.$emit('cibanModel')
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.box-title-text {
|
||||
line-height: 1.4;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.Required {
|
||||
color: red;
|
||||
margin-right: 4px;
|
||||
}
|
||||
|
||||
.title-text {
|
||||
width: 134px;
|
||||
text-align: right;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
margin-right: 16px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
}
|
||||
|
||||
.box-input {
|
||||
display: inline-block;
|
||||
height: 38px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.itemModel {
|
||||
width: calc(100% - 130px);
|
||||
display: inline-block;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.title-text-text {
|
||||
margin-top: 9px;
|
||||
}
|
||||
|
||||
.headerText {
|
||||
margin-left: 30px;
|
||||
color: #040B29;
|
||||
font-weight: 400;
|
||||
}
|
||||
</style>
|
||||
@@ -173,7 +173,8 @@
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="!isDisplay" style="float: right;margin-top: 1px;margin-bottom: 0px">
|
||||
<div @click="handleExport" v-has="'projectLawsInventory:exportData'" v-if="isRoleSwitching"
|
||||
<div @click="handleExport" v-has="'projectLawsInventory:exportData'"
|
||||
v-if="isRoleSwitching || formInlineRoleSwitching.roleSwitchingCode == '12'"
|
||||
class="operator-text">
|
||||
<a-icon type="export" :rotate="-90"/>
|
||||
{{ $t('export') }}
|
||||
|
||||
@@ -83,14 +83,14 @@
|
||||
</div>
|
||||
<div class="operator-text"
|
||||
v-has="'projectRelatedPersonnel:importExcel'"
|
||||
v-if="this.$route.query.studioEngineer == this.userInfo().id">
|
||||
v-if="this.$route.query.studioEngineer == this.userInfo().id || administrators">
|
||||
<ImportFile :url="url" :projectId="$route.query.id" :isTrue="true" :accept="'.xls'"
|
||||
@getList="getPersonnelList"/>
|
||||
</div>
|
||||
<div class="operator-text"
|
||||
@click="batSettingClick"
|
||||
v-has="'projectRelatedPersonnel:setting'"
|
||||
v-if="this.$route.query.studioEngineer == this.userInfo().id">
|
||||
v-if="this.$route.query.studioEngineer == this.userInfo().id || administrators">
|
||||
<a-icon type="setting"/>
|
||||
{{$t('batSetting')}}
|
||||
</div>
|
||||
@@ -388,13 +388,15 @@
|
||||
queryCertificationEngineer: '/project/projectRelatedPersonnel/queryCertificationEngineer'
|
||||
},
|
||||
selectedRowKeys: [],
|
||||
dictOptionsValue: []
|
||||
dictOptionsValue: [],
|
||||
administrators: false
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
columns() {
|
||||
let columnResult = JSON.parse(JSON.stringify(this.columnsAll))
|
||||
if (this.$route.query.studioEngineer != this.userInfo().id) {
|
||||
if (this.$route.query.studioEngineer == this.userInfo().id || this.administrators) {
|
||||
} else {
|
||||
for (var i = 0; i < columnResult.length; i++) {
|
||||
if (columnResult[i].title === this.$t('operation')) {
|
||||
columnResult.splice(i, 1)
|
||||
@@ -441,6 +443,14 @@
|
||||
getData() {
|
||||
this.visible = true
|
||||
this.queryParam = {}
|
||||
this.administrators = false
|
||||
if (this.userInfo().userRoleList && this.userInfo().userRoleList.length > 0) {
|
||||
this.userInfo().userRoleList.forEach(res => {
|
||||
if (res.roleCode == 'admin') {
|
||||
this.administrators = true
|
||||
}
|
||||
})
|
||||
}
|
||||
this.getList()
|
||||
this.queryCertificationEngineer()
|
||||
},
|
||||
|
||||
@@ -139,7 +139,7 @@
|
||||
</a>
|
||||
<a class="text-operation"
|
||||
v-has="'projectLibraryBase:delete'"
|
||||
v-if="record.createBy == userInfoQuery.username"
|
||||
v-if="record.createBy == userInfoQuery.username || administrators"
|
||||
@click="deleteLib(record)">{{$t('deleteLib')}}</a>
|
||||
<!-- <a class="text-operation" @click="entryNameClick(record)">{{$t('see')}}</a>-->
|
||||
</span>
|
||||
@@ -264,12 +264,21 @@
|
||||
}
|
||||
],
|
||||
userInfoQuery: {},
|
||||
queryParam: {}
|
||||
queryParam: {},
|
||||
administrators: false
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getList()
|
||||
this.userInfoQuery = this.userInfo()
|
||||
this.administrators = false
|
||||
if (this.userInfo().userRoleList && this.userInfo().userRoleList.length > 0) {
|
||||
this.userInfo().userRoleList.forEach(res => {
|
||||
if (res.roleCode == 'admin') {
|
||||
this.administrators = true
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
...mapGetters(['userInfo']),
|
||||
|
||||
@@ -126,6 +126,13 @@
|
||||
description: '定时任务在线管理',
|
||||
// 查询条件
|
||||
queryParam: {},
|
||||
ipagination: {
|
||||
total: 0,
|
||||
pageSize: 20,//每页中显示10条数据
|
||||
showSizeChanger: true,
|
||||
pageSizeOptions: ["10", "20", "50", "100"],//每页中显示的数据
|
||||
showTotal: total => `共有 ${total} 条数据`, //分页中显示总的数据
|
||||
},
|
||||
// 表头
|
||||
columns: [
|
||||
{
|
||||
|
||||
@@ -71,8 +71,9 @@
|
||||
@change="handleTableChange">
|
||||
<span slot="msgTitile" slot-scope="text,scope">
|
||||
<!-- @click="msgContentClick(scope)"-->
|
||||
<a :style="{'color':scope.readFlag == 0 ? 'red':'#00A0E9'}" :title="text">
|
||||
{{text}}
|
||||
<a :style="{'color':scope.readFlag == 0 ? 'red':'#00A0E9'}"
|
||||
:title="language == 'zh-cn' ? scope.msgContentCn : scope.msgContent">
|
||||
{{language == 'zh-cn' ? scope.msgContentCn : scope.msgContent}}
|
||||
</a>
|
||||
</span>
|
||||
<span slot="msgCategory" slot-scope="text,scope">
|
||||
@@ -82,7 +83,7 @@
|
||||
</span>
|
||||
</span>
|
||||
<p slot="expandedRowRender" slot-scope="record" style="margin: 0;padding-left: 58px;">
|
||||
<span v-html="record.msgContentInfo">
|
||||
<span v-html="language == 'zh-cn' ? record.msgContentInfoCn : record.msgContentInfo">
|
||||
</span>
|
||||
</p>
|
||||
</a-table>
|
||||
@@ -163,10 +164,10 @@
|
||||
dataIndex: 'sendTime'
|
||||
},
|
||||
{
|
||||
title:'',
|
||||
title: '',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 50,
|
||||
width: 50
|
||||
}
|
||||
],
|
||||
url: {
|
||||
@@ -177,7 +178,8 @@
|
||||
},
|
||||
loading: false,
|
||||
openPath: '',
|
||||
formData: ''
|
||||
formData: '',
|
||||
language: ''
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
@@ -186,16 +188,25 @@
|
||||
this.loadData()
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.language = localStorage.getItem('language') || ''
|
||||
},
|
||||
methods: {
|
||||
expandIcon(props) {
|
||||
if (props.expanded) {
|
||||
return <a-icon type='down' onClick={e => {
|
||||
props.onExpand(props.record, e);
|
||||
}}/>;
|
||||
return <a-icon type = 'down'onClick = { e=>
|
||||
{
|
||||
props.onExpand(props.record, e)
|
||||
}
|
||||
}
|
||||
/>;
|
||||
} else {
|
||||
return <a-icon type='right' onClick={e => {
|
||||
props.onExpand(props.record, e);
|
||||
}}/>;
|
||||
return <a-icon type = 'right' onClick = { e =>
|
||||
{
|
||||
props.onExpand(props.record, e)
|
||||
}
|
||||
}
|
||||
/>;
|
||||
}
|
||||
},
|
||||
getQueryParams() {
|
||||
@@ -359,8 +370,9 @@
|
||||
height: 38px;
|
||||
/*margin-top: 2px;*/
|
||||
}
|
||||
::v-deep .ant-table .ant-table-row-indent + .ant-table-row-expand-icon{
|
||||
margin-right: 0;
|
||||
|
||||
::v-deep .ant-table .ant-table-row-indent + .ant-table-row-expand-icon {
|
||||
margin-right: 0;
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
|
||||
@@ -21,29 +21,32 @@
|
||||
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form :form="form">
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- v-if="!disabled"-->
|
||||
<a-form-item :label="$t('userAccount')" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input :placeholder="$t('enterUserAccount')" v-decorator.trim="[ 'username', validatorRules.username]" :disabled='isdisabled'
|
||||
<a-input :placeholder="$t('enterUserAccount')" v-decorator.trim="[ 'username', validatorRules.username]"
|
||||
:disabled='isdisabled'
|
||||
:readOnly="!!model.id"/>
|
||||
</a-form-item>
|
||||
<!-- v-if="!model.id && !disabled"-->
|
||||
<!-- v-if="!model.id && !disabled"-->
|
||||
<template>
|
||||
<!-- <a-form-item :label="$t('LoginPassword')" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
<!-- <a-input type="password" :placeholder="$t('enterLoginPassword')" autocomplete='new-password'-->
|
||||
<!-- v-decorator="[ 'password',validatorRules.password]"/>-->
|
||||
<!-- </a-form-item>-->
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- <a-form-item :label="$t('ConfirmPassword')" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
<!-- <a-input type="password" @blur="handleConfirmBlur" :placeholder="$t('reenterLoginPassword')"-->
|
||||
<!-- v-decorator="[ 'confirmpassword', validatorRules.confirmpassword]"/>-->
|
||||
<!-- </a-form-item>-->
|
||||
<!-- <a-form-item :label="$t('LoginPassword')" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
<!-- <a-input type="password" :placeholder="$t('enterLoginPassword')" autocomplete='new-password'-->
|
||||
<!-- v-decorator="[ 'password',validatorRules.password]"/>-->
|
||||
<!-- </a-form-item>-->
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- <a-form-item :label="$t('ConfirmPassword')" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
<!-- <a-input type="password" @blur="handleConfirmBlur" :placeholder="$t('reenterLoginPassword')"-->
|
||||
<!-- v-decorator="[ 'confirmpassword', validatorRules.confirmpassword]"/>-->
|
||||
<!-- </a-form-item>-->
|
||||
</template>
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- v-if="!disabled"-->
|
||||
<a-form-item :label="$t('userName')" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input :placeholder="$t('enterUserName')" :disabled='isdisabled' v-decorator.trim="[ 'realname', validatorRules.realname]"/>
|
||||
<a-input :placeholder="$t('enterUserName')" :disabled='isdisabled'
|
||||
v-decorator.trim="[ 'realname', validatorRules.realname]"/>
|
||||
</a-form-item>
|
||||
<a-form-item :label="$t('position')" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input type="textarea" style='height: 100px' :placeholder="$t('pleaseEnter')+$t('position')" :disabled='isdisabled' v-decorator.trim="[ 'jobTitle', validatorRules.jobTitle]"/>
|
||||
<a-input type="textarea" style='height: 100px' :placeholder="$t('pleaseEnter')+$t('position')"
|
||||
:disabled='isdisabled' v-decorator.trim="[ 'jobTitle', validatorRules.jobTitle]"/>
|
||||
</a-form-item>
|
||||
|
||||
<!--<a-form-item label="工号" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
@@ -53,9 +56,9 @@
|
||||
<!--<a-form-item label="职务" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
<!--<j-select-position placeholder="请选择职务" :multiple="false" v-decorator="['post', {}]"/>-->
|
||||
<!--</a-form-item>-->
|
||||
<!-- v-show="!roleDisabled"-->
|
||||
<!-- v-show="!roleDisabled"-->
|
||||
<a-form-item :label="$t('RoleAssignment')" :labelCol="labelCol" :wrapperCol="wrapperCol"
|
||||
>
|
||||
>
|
||||
<a-select
|
||||
mode="multiple"
|
||||
style="width: 100%"
|
||||
@@ -63,7 +66,7 @@
|
||||
:placeholder="$t('selectUserRole')"
|
||||
optionFilterProp="children"
|
||||
v-model="selectedRole"
|
||||
:disabled='isdisabled'
|
||||
:disabled='false'
|
||||
:getPopupContainer="(target) => target.parentNode">
|
||||
<a-select-option v-for="(role,roleindex) in roleList" :key="roleindex.toString()" :value="role.id">
|
||||
{{ role.roleName }}
|
||||
@@ -72,9 +75,9 @@
|
||||
</a-form-item>
|
||||
|
||||
<!--部门分配-->
|
||||
<!-- v-show="!departDisabled && !disabled"-->
|
||||
<!-- v-show="!departDisabled && !disabled"-->
|
||||
<a-form-item :label="$t('DepartmentAllocation')" :labelCol="labelCol" :wrapperCol="wrapperCol"
|
||||
>
|
||||
>
|
||||
<a-input-search
|
||||
:placeholder="$t('ClickSelectDepartment')"
|
||||
v-model="checkedDepartNameString"
|
||||
@@ -101,34 +104,34 @@
|
||||
<!--</a-form-item>-->
|
||||
|
||||
<!-- update--begin--autor:wangshuai-----date:20200108------for:新增身份和负责部门------ -->
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- <a-form-item :label="$t('identity')" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
<!-- <a-radio-group-->
|
||||
<!-- v-model="identity"-->
|
||||
<!-- @change="identityChange">-->
|
||||
<!-- <a-radio value="1">{{$t('OrdinaryUsers')}}</a-radio>-->
|
||||
<!-- <a-radio value="2">{{$t('superior')}}</a-radio>-->
|
||||
<!-- </a-radio-group>-->
|
||||
<!-- </a-form-item>-->
|
||||
<!-- v-if="departIdShow==true && !disabled"-->
|
||||
<!-- <a-form-item :label="$t('ResponsibleDepartment')" :labelCol="labelCol" :wrapperCol="wrapperCol"-->
|
||||
<!-- >-->
|
||||
<!-- <a-select-->
|
||||
<!-- :disabled="disabled"-->
|
||||
<!-- mode="multiple"-->
|
||||
<!-- style="width: 100%"-->
|
||||
<!-- :placeholder="$t('selectResponsibleDepartment')"-->
|
||||
<!-- v-model="departIds"-->
|
||||
<!-- optionFilterProp="children"-->
|
||||
<!-- :getPopupContainer="(target) => target.parentNode"-->
|
||||
<!-- :dropdownStyle="{maxHeight:'200px',overflow:'auto'}"-->
|
||||
<!-- >-->
|
||||
<!-- <a-select-option v-for="item in resultDepartOptions" :key="item.key" :value="item.key"-->
|
||||
<!-- >{{item.title}}-->
|
||||
<!-- </a-select-option-->
|
||||
<!-- >-->
|
||||
<!-- </a-select>-->
|
||||
<!-- </a-form-item>-->
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- <a-form-item :label="$t('identity')" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
<!-- <a-radio-group-->
|
||||
<!-- v-model="identity"-->
|
||||
<!-- @change="identityChange">-->
|
||||
<!-- <a-radio value="1">{{$t('OrdinaryUsers')}}</a-radio>-->
|
||||
<!-- <a-radio value="2">{{$t('superior')}}</a-radio>-->
|
||||
<!-- </a-radio-group>-->
|
||||
<!-- </a-form-item>-->
|
||||
<!-- v-if="departIdShow==true && !disabled"-->
|
||||
<!-- <a-form-item :label="$t('ResponsibleDepartment')" :labelCol="labelCol" :wrapperCol="wrapperCol"-->
|
||||
<!-- >-->
|
||||
<!-- <a-select-->
|
||||
<!-- :disabled="disabled"-->
|
||||
<!-- mode="multiple"-->
|
||||
<!-- style="width: 100%"-->
|
||||
<!-- :placeholder="$t('selectResponsibleDepartment')"-->
|
||||
<!-- v-model="departIds"-->
|
||||
<!-- optionFilterProp="children"-->
|
||||
<!-- :getPopupContainer="(target) => target.parentNode"-->
|
||||
<!-- :dropdownStyle="{maxHeight:'200px',overflow:'auto'}"-->
|
||||
<!-- >-->
|
||||
<!-- <a-select-option v-for="item in resultDepartOptions" :key="item.key" :value="item.key"-->
|
||||
<!-- >{{item.title}}-->
|
||||
<!-- </a-select-option-->
|
||||
<!-- >-->
|
||||
<!-- </a-select>-->
|
||||
<!-- </a-form-item>-->
|
||||
<!-- update--end--autor:wangshuai-----date:20200108------for:新增身份和负责部门------ -->
|
||||
<!-- <a-form-item label="头像" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
<!-- <j-image-upload class="avatar-uploader" text="上传" v-model="fileList" ></j-image-upload>-->
|
||||
@@ -141,20 +144,21 @@
|
||||
<!--v-decorator="['birthday', {initialValue:!model.birthday?null:moment(model.birthday,dateFormat)}]"-->
|
||||
<!--:getCalendarContainer="node => node.parentNode"/>-->
|
||||
<!--</a-form-item>-->
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- <a-form-item :label="$t('Gender')" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
<!-- <a-select v-decorator="[ 'sex', {}]" :placeholder="$t('selectGender')"-->
|
||||
<!-- :getPopupContainer="(target) => target.parentNode">-->
|
||||
<!-- <a-select-option :value="1">{{$t('male')}}</a-select-option>-->
|
||||
<!-- <a-select-option :value="2">{{$t('female')}}</a-select-option>-->
|
||||
<!-- </a-select>-->
|
||||
<!-- </a-form-item>-->
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- <a-form-item :label="$t('Gender')" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
|
||||
<!-- <a-select v-decorator="[ 'sex', {}]" :placeholder="$t('selectGender')"-->
|
||||
<!-- :getPopupContainer="(target) => target.parentNode">-->
|
||||
<!-- <a-select-option :value="1">{{$t('male')}}</a-select-option>-->
|
||||
<!-- <a-select-option :value="2">{{$t('female')}}</a-select-option>-->
|
||||
<!-- </a-select>-->
|
||||
<!-- </a-form-item>-->
|
||||
<!-- v-if="!disabled"-->
|
||||
<a-form-item :label="$t('mailbox')" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input :placeholder="$t('enterEmailAddress')" v-decorator="[ 'email', validatorRules.email]" :disabled='isdisabled'/>
|
||||
<a-input :placeholder="$t('enterEmailAddress')" v-decorator="[ 'email', validatorRules.email]"
|
||||
:disabled='isdisabled'/>
|
||||
</a-form-item>
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- :disabled="isDisabledAuth('user:form:phone')"-->
|
||||
<!-- v-if="!disabled"-->
|
||||
<!-- :disabled="isDisabledAuth('user:form:phone')"-->
|
||||
<a-form-item :label="$t('phoneNumber')" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||
<a-input :placeholder="$t('enterMobileNumber')" :disabled='isdisabled'
|
||||
v-decorator="[ 'telephone', validatorRules.telephone]"/>
|
||||
@@ -173,11 +177,11 @@
|
||||
<depart-window ref="departWindow" @ok="modalFormOk"></depart-window>
|
||||
|
||||
<div class="drawer-bootom-button" v-show="!disableSubmit">
|
||||
<!-- <a-popconfirm :title="$t('AreYouWantDiscardEditing')" @confirm="handleCancel" :okText="$t('determine')"-->
|
||||
<!-- :cancelText="$t('cancel')">-->
|
||||
<a-button style="margin-right: .8rem" @click="handleSubmit">{{$t('cancel')}}</a-button>
|
||||
<!-- </a-popconfirm>-->
|
||||
<!-- <a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>-->
|
||||
<!-- <a-popconfirm :title="$t('AreYouWantDiscardEditing')" @confirm="handleCancel" :okText="$t('determine')"-->
|
||||
<!-- :cancelText="$t('cancel')">-->
|
||||
<a-button style="margin-right: .8rem" @click="handleSubmit">{{$t('cancel')}}</a-button>
|
||||
<!-- </a-popconfirm>-->
|
||||
<a-button @click="handleSubmitOk" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
|
||||
</div>
|
||||
</a-drawer>
|
||||
</template>
|
||||
@@ -189,7 +193,7 @@
|
||||
// 引入搜索部门弹出框的组件
|
||||
import departWindow from './DepartWindow'
|
||||
import { ACCESS_TOKEN } from '@/store/mutation-types'
|
||||
import { getAction } from '@/api/manage'
|
||||
import { getAction, postAction } from '@/api/manage'
|
||||
import { addUser, editUser, queryUserRole, queryall } from '@/api/api'
|
||||
import { disabledAuthFilter } from '@/utils/authFilter'
|
||||
import { duplicateCheck } from '@/api/api'
|
||||
@@ -347,6 +351,25 @@
|
||||
}
|
||||
})
|
||||
},
|
||||
handleSubmitOk() {
|
||||
this.confirmLoading = true
|
||||
let selectedRole = JSON.parse(JSON.stringify(this.selectedRole))
|
||||
let param = {
|
||||
ids: this.userId,
|
||||
selectedroles: selectedRole.join(',')
|
||||
}
|
||||
postAction('/sys/user/setRole', param).then((res) => {
|
||||
if (res.success) {
|
||||
this.$emit('ok')
|
||||
this.confirmLoading = false
|
||||
this.visible = false
|
||||
this.$message.success(res.message)
|
||||
} else {
|
||||
this.confirmLoading = false
|
||||
this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
},
|
||||
refresh() {
|
||||
this.selectedDepartKeys = []
|
||||
this.checkedDepartKeys = []
|
||||
@@ -383,7 +406,7 @@
|
||||
that.visible = true
|
||||
that.model = Object.assign({}, record)
|
||||
that.$nextTick(() => {
|
||||
that.form.setFieldsValue(pick(this.model, 'username', 'sex', 'realname', 'jobTitle','email', 'phone', 'activitiSync', 'workNo', 'telephone', 'post'))
|
||||
that.form.setFieldsValue(pick(this.model, 'username', 'sex', 'realname', 'jobTitle', 'email', 'phone', 'activitiSync', 'workNo', 'telephone', 'post'))
|
||||
})
|
||||
//身份为上级显示负责部门,否则不显示
|
||||
if (this.model.userIdentity == '2') {
|
||||
@@ -728,7 +751,7 @@
|
||||
.drawer-bootom-button {
|
||||
position: absolute;
|
||||
bottom: -8px;
|
||||
z-index:100;
|
||||
z-index: 100;
|
||||
width: 100%;
|
||||
border-top: 1px solid #e8e8e8;
|
||||
padding: 10px 16px;
|
||||
@@ -740,6 +763,6 @@
|
||||
</style>
|
||||
<style>
|
||||
.selectUserRole .ant-select-selection--multiple {
|
||||
height: 100px!important;
|
||||
height: 100px !important;
|
||||
}
|
||||
</style>
|
||||
@@ -18,7 +18,7 @@
|
||||
<span>{{$t('standardInformation')}}</span>
|
||||
</div>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('standardInformation')"
|
||||
v-model="queryParam.serialNumber"></a-input>
|
||||
v-model="queryParam.standardInfo"></a-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
||||
@@ -104,7 +104,7 @@
|
||||
{
|
||||
title: this.$t('standardInformation'),
|
||||
align: 'center',
|
||||
dataIndex: 'serialNumber',
|
||||
dataIndex: 'standardInfo',
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'standardInformation' },
|
||||
width: 170
|
||||
|
||||
Reference in New Issue
Block a user