Merge remote-tracking branch 'origin/master'

This commit is contained in:
liyawei
2022-05-25 12:34:03 +08:00
18 changed files with 122 additions and 68 deletions
+1
View File
@@ -708,6 +708,7 @@ module.exports = {
uploadTime: 'Upload time', uploadTime: 'Upload time',
enclosure: 'Enclosure', enclosure: 'Enclosure',
// 认证 // 认证
resetPassword: 'reset Password',
departmentAllocation: 'department Allocation', departmentAllocation: 'department Allocation',
ListTitle: 'List Title', ListTitle: 'List Title',
CopyProjectCollectionparameters: 'Copy Project Collection parameters', CopyProjectCollectionparameters: 'Copy Project Collection parameters',
+1
View File
@@ -718,6 +718,7 @@ module.exports = {
uploadTime: '上传时间', uploadTime: '上传时间',
enclosure: '附件', enclosure: '附件',
// 认证 // 认证
resetPassword: '重置密码',
departmentAllocation: '部门配置', departmentAllocation: '部门配置',
ListTitle: '清单标题', ListTitle: '清单标题',
CopyProjectCollectionparameters: '复制项目收集参数', CopyProjectCollectionparameters: '复制项目收集参数',
@@ -95,7 +95,6 @@
this.$route.path == '/handshakeProcess' || this.$route.path == '/handshakeProcess' ||
this.$route.path == '/historicalVersion' || this.$route.path == '/historicalVersion' ||
this.$route.path == '/dashboard/analysis' || this.$route.path == '/dashboard/analysis' ||
this.$route.path == '/customContentList' ||
this.$route.path == '/processDetails') { this.$route.path == '/processDetails') {
return false return false
} else { } else {
+19 -12
View File
@@ -57,7 +57,14 @@
}, },
methods: { methods: {
onSearch(value) { onSearch(value) {
console.log(value) if (value) {
this.$router.push({
path: '/docTools/searchCenter',
query: {
selectValue:value
}
})
}
} }
} }
} }
@@ -66,7 +73,7 @@
.box { .box {
width: 100%; width: 100%;
height: 100%; height: 100%;
padding: 32px; padding: 10px 20px 8px 20px;
box-sizing: border-box; box-sizing: border-box;
.header-search { .header-search {
@@ -85,9 +92,9 @@
.content-header { .content-header {
width: 100%; width: 100%;
height: 120px; height: 112px;
margin-top: 24px; margin-top: 10px;
padding: 24px; padding: 20px;
box-sizing: border-box; box-sizing: border-box;
border: 1px solid #CED0D8; border: 1px solid #CED0D8;
border-radius: 4px; border-radius: 4px;
@@ -95,11 +102,11 @@
.content-content { .content-content {
width: 100%; width: 100%;
height: 306px; height: 280px;
padding: 30px 25px 25px 25px; padding: 20px 24px;
box-sizing: border-box; box-sizing: border-box;
border: 1px solid #CED0D8; border: 1px solid #CED0D8;
margin-top: 20px; margin-top: 10px;
} }
.content-footer { .content-footer {
@@ -108,12 +115,12 @@
width: 100%; width: 100%;
.content-footer-box { .content-footer-box {
width: calc(33.3% - 14px); width: calc(33.3% - 7px);
height: 412px; height: 400px;
border: 1px solid #CED0D8; border: 1px solid #CED0D8;
padding: 30px 24px 24px 24px; padding: 20px 24px;
box-sizing: border-box; box-sizing: border-box;
margin-top: 20px; margin-top: 10px;
} }
} }
} }
@@ -143,7 +143,6 @@
.text { .text {
font-size: 16px; font-size: 16px;
font-family: Blue Sky Noto;
font-weight: 400; font-weight: 400;
color: #040B29; color: #040B29;
margin-top: 8px; margin-top: 8px;
@@ -176,7 +175,6 @@
.text { .text {
font-size: 16px; font-size: 16px;
font-family: Blue Sky Noto;
font-weight: 400; font-weight: 400;
color: #040B29; color: #040B29;
margin-top: 8px; margin-top: 8px;
@@ -3,7 +3,7 @@
<div class="header-text"> <div class="header-text">
<div class="header-text-left">{{this.$t('documentDynamics')}}</div> <div class="header-text-left">{{this.$t('documentDynamics')}}</div>
<div class="header-text-right" @click="moreClick"> <div class="header-text-right" @click="moreClick">
{{$t('more')}} more
<img src="../../../assets/gengduo.png" alt=""> <img src="../../../assets/gengduo.png" alt="">
</div> </div>
</div> </div>
@@ -13,13 +13,13 @@
@click="magClick(item)"> @click="magClick(item)">
<div class="yuan"></div> <div class="yuan"></div>
<div class="text">{{item.msgContent}}</div> <div class="text">{{item.msgContent}}</div>
<!-- <img src="../../../assets/new.png" alt="">--> <!-- <img src="../../../assets/new.png" alt="">-->
<div class="time">{{item.createTime}}</div> <div class="time">{{item.createTime}}</div>
</div> </div>
<div class="solid"></div> <div class="solid"></div>
</div> </div>
<div v-else style="height: 240px;position: relative"> <div v-else style="height: 240px;position: relative">
<JNoData /> <JNoData/>
</div> </div>
<JLoading :loading="loading">{{$t('dataLoading')}}</JLoading> <JLoading :loading="loading">{{$t('dataLoading')}}</JLoading>
</div> </div>
@@ -27,24 +27,25 @@
<script> <script>
import { getAction, putAction, deleteAction } from '@/api/manage' import { getAction, putAction, deleteAction } from '@/api/manage'
export default { export default {
name: 'documentDynamics', name: 'documentDynamics',
data(){ data() {
return{ return {
pageSize: 8, pageSize: 8,
pageNo: 1, pageNo: 1,
dataSource: [], dataSource: [],
loading:false, loading: false,
url: { url: {
list: '/home/homeDocumentDynamicEO/page', list: '/home/homeDocumentDynamicEO/page',
readAllMsg: 'sys/sysAnnouncementSend/read' readAllMsg: 'sys/sysAnnouncementSend/read'
}, }
} }
}, },
mounted() { mounted() {
this.getList() this.getList()
}, },
methods:{ methods: {
getList() { getList() {
let query = { let query = {
pageNo: this.pageNo, pageNo: this.pageNo,
@@ -61,8 +62,7 @@
}) })
}, },
magClick(row) { magClick(row) {
getAction(this.url.readAllMsg, { ids: row.id }).then((res) => { row.isCustomContentList = true
})
this.$router.push({ this.$router.push({
path: '/system/MessageDetails', path: '/system/MessageDetails',
query: row query: row
@@ -73,13 +73,14 @@
path: '/customContentList' path: '/customContentList'
}) })
} }
}, }
} }
</script> </script>
<style scoped lang="less"> <style scoped lang="less">
.documentDynamics-box { .documentDynamics-box {
width: 100%; width: 100%;
position: relative;
.header-text { .header-text {
width: 100%; width: 100%;
@@ -110,16 +111,16 @@
.solid { .solid {
width: 1px; width: 1px;
height: 210px; height: 200px;
background: #EFF1F3; background: #EFF1F3;
position: absolute; position: absolute;
left: 50%; left: 50%;
top: 120px; top: 100px;
transform: translate(-50%, -50%); transform: translate(-50%, -50%);
} }
.documentDynamics-text { .documentDynamics-text {
height: 51px; height: 49px;
width: calc(50% - 20px); width: calc(50% - 20px);
line-height: 51px; line-height: 51px;
border-bottom: 1px solid #EFF1F3; border-bottom: 1px solid #EFF1F3;
@@ -3,7 +3,7 @@
<div class="header-text"> <div class="header-text">
<div class="header-text-left">{{this.$t('monthlyReportRegulations')}}</div> <div class="header-text-left">{{this.$t('monthlyReportRegulations')}}</div>
<div class="header-text-right"> <div class="header-text-right">
{{$t('more')}} more
<img src="../../../assets/gengduo.png" alt=""> <img src="../../../assets/gengduo.png" alt="">
</div> </div>
</div> </div>
@@ -3,7 +3,7 @@
<div class="header-text"> <div class="header-text">
<div class="header-text-left">{{this.$t('myList')}}</div> <div class="header-text-left">{{this.$t('myList')}}</div>
<div class="header-text-right" @click="moreClick"> <div class="header-text-right" @click="moreClick">
{{$t('more')}} more
<img src="../../../assets/gengduo.png" alt=""> <img src="../../../assets/gengduo.png" alt="">
</div> </div>
</div> </div>
@@ -3,7 +3,7 @@
<div class="header-text"> <div class="header-text">
<div class="header-text-left">{{this.$t('myNews')}}</div> <div class="header-text-left">{{this.$t('myNews')}}</div>
<div class="header-text-right" @click="moreClick"> <div class="header-text-right" @click="moreClick">
{{$t('more')}} more
<img src="../../../assets/gengduo.png" alt=""> <img src="../../../assets/gengduo.png" alt="">
</div> </div>
</div> </div>
@@ -75,7 +75,7 @@
title: this.$t('NotificationTime'), title: this.$t('NotificationTime'),
align: 'center', align: 'center',
width: 200, width: 200,
dataIndex: 'sendTime' dataIndex: 'createTime'
} }
], ],
url: { url: {
@@ -92,8 +92,7 @@
this.selectedRowKeys = value this.selectedRowKeys = value
}, },
msgContentClick(row) { msgContentClick(row) {
getAction(this.url.readAllMsg, { ids: row.id }).then((res) => { row.isCustomContentList = true
})
this.$router.push({ this.$router.push({
path: '/system/MessageDetails', path: '/system/MessageDetails',
query: row query: row
@@ -106,13 +105,13 @@
content: that.$t('ConfirmBatchDeletion'), content: that.$t('ConfirmBatchDeletion'),
onOk: function() { onOk: function() {
let selectedRowKeys = JSON.parse(JSON.stringify(that.selectedRowKeys)) let selectedRowKeys = JSON.parse(JSON.stringify(that.selectedRowKeys))
deleteAction(that.url.deleteUrl, { ids: selectedRowKeys.join(',') }).then((res) => { getAction(that.url.deleteUrl, { ids: selectedRowKeys.join(',') }).then((res) => {
if (res.success) { if (res.success) {
that.selectedRowKeys = [] that.selectedRowKeys = []
that.$message.success(that.$t('OperationSuccessful')) that.$message.success(that.$t('OperationSuccessful'))
that.loadData() that.loadData()
} else { } else {
that.$message.success(that.$t('operationFailed')) that.$message.warning(that.$t('operationFailed'))
} }
}) })
} }
@@ -92,6 +92,14 @@
}, },
mounted() { mounted() {
this.getCondition() this.getCondition()
if (this.$route.query.selectValue) {
this.selectValueTwo = this.$route.query.selectValue
this.$nextTick(() => {
if (this.$refs.wholeRef) {
this.$refs.wholeRef.searchData(this.selectValueTwo)
}
})
}
}, },
methods: { methods: {
callback(key) { callback(key) {
@@ -154,7 +154,7 @@
}, },
handleSubmit() { handleSubmit() {
if (!this.formInline.directoryName && !this.formInline.lot && !this.formInline.directoryFile && if (!this.formInline.directoryName && !this.formInline.lot && !this.formInline.directoryFile &&
!this.formInline.experimentFile && !this.detectionReportLocation.lot && !this.formInline.explainInfo) { !this.formInline.experimentFile && !this.formInline.detectionReportLocation && !this.formInline.explainInfo) {
this.$message.warning(this.$t('dataCannotEmpty')) this.$message.warning(this.$t('dataCannotEmpty'))
} else { } else {
let Action let Action
+12 -6
View File
@@ -6,11 +6,11 @@
{{this.$route.query.msgContent}} {{this.$route.query.msgContent}}
</span> </span>
<span class="box-header-right-text"> <span class="box-header-right-text">
{{$t('NotificationTime')}}: {{this.$route.query.sendTime}} {{$t('NotificationTime')}}: {{this.$route.query.sendTime || this.$route.query.createTime}}
</span> </span>
</div> </div>
<div class="box-content" v-html="this.$route.query.msgContentInfo"> <div class="box-content" v-html="this.$route.query.msgContentInfo">
<!-- {{this.$route.query.msgContentInfo}}--> <!-- {{this.$route.query.msgContentInfo}}-->
</div> </div>
</div> </div>
</template> </template>
@@ -20,9 +20,15 @@
name: 'MessageDetails', name: 'MessageDetails',
methods: { methods: {
iconClick() { iconClick() {
this.$router.push({ if (this.$route.query.isCustomContentList) {
path: '/isps/userAnnouncement' this.$router.push({
}) path: '/customContentList'
})
} else {
this.$router.push({
path: '/isps/userAnnouncement'
})
}
} }
} }
} }
@@ -201,7 +201,7 @@
that.$message.success(that.$t('OperationSuccessful')) that.$message.success(that.$t('OperationSuccessful'))
that.loadData() that.loadData()
} else { } else {
that.$message.success(that.$t('operationFailed')) that.$message.warning(that.$t('operationFailed'))
} }
}) })
} }
+12 -3
View File
@@ -85,7 +85,7 @@
<!-- </a-upload>--> <!-- </a-upload>-->
<!-- <a-button type="primary" icon="hdd" @click="recycleBinVisible=true">{{$t('recycleBin')}}</a-button>--> <!-- <a-button type="primary" icon="hdd" @click="recycleBinVisible=true">{{$t('recycleBin')}}</a-button>-->
<a-button type="primary" icon="hdd" @click="RoleAssignment" v-has="'sys:user:role'">{{$t('RoleAssignment')}}</a-button> <a-button type="primary" icon="hdd" @click="RoleAssignment" v-has="'sys:user:role'">{{$t('RoleAssignment')}}</a-button>
<a-button type="primary" icon="hdd" @click="departmentAllocation" v-has="'sys:user:depart'">{{$t('departmentAllocation')}}</a-button> <a-button type="primary" icon="hdd" @click="departmentAllocation" v-has="'sys:user:depart'">{{$t('DepartmentAllocation')}}</a-button>
<!-- <div @click="handleExportXls($t('userInformation'))" class="operator-text">--> <!-- <div @click="handleExportXls($t('userInformation'))" class="operator-text">-->
<!-- <a-icon type="export" :rotate="-90"/>--> <!-- <a-icon type="export" :rotate="-90"/>-->
<!-- {{$t('export')}}--> <!-- {{$t('export')}}-->
@@ -110,7 +110,8 @@
</div> </div>
</template> </template>
<span slot="action" slot-scope="text, record"> <span slot="action" slot-scope="text, record">
<a @click="handleEdit(record)" >{{$t('edit')}}</a> <a @click="handleEdit(record)" style='margin-right: 10px' v-has="'sys:user:edit'">{{$t('edit')}}</a>
<a @click="resetPassword(record)" >{{$t('resetPassword')}}</a>
</span> </span>
</a-table> </a-table>
@@ -125,7 +126,7 @@
<user-recycle-bin-modal :visible.sync="recycleBinVisible" @ok="modalFormOk"/> <user-recycle-bin-modal :visible.sync="recycleBinVisible" @ok="modalFormOk"/>
<!-- 角色配置 --> <!-- 角色配置 -->
<a-modal v-model="rolevisible" :title="$t('RoleAssignment')" width='650px' :footer="null"> <a-modal v-model="rolevisible" :title="$t('RoleAssignment')" width='650px' :footer="null">
<role-assignment v-if='rolevisible' :selectedRowKeysArray='selectedRowKeys'></role-assignment> <role-assignment v-if='rolevisible' :selectedRowKeysArray='selectedRowKeys' @rolevisible='rolevisibleMethods'></role-assignment>
</a-modal> </a-modal>
<!-- 部门配置 --> <!-- 部门配置 -->
<a-modal v-model="departmentvisible" :title="$t('RoleAssignment')" width='650px' :footer="null"> <a-modal v-model="departmentvisible" :title="$t('RoleAssignment')" width='650px' :footer="null">
@@ -257,6 +258,10 @@
} }
}, },
methods: { methods: {
// 重置密码
resetPassword(val) {
console.log(val,'valll')
},
onSelectChange(val,value) { onSelectChange(val,value) {
this.selectedRowKeys = val this.selectedRowKeys = val
this.selectedRowKeysvalue = value this.selectedRowKeysvalue = value
@@ -277,6 +282,10 @@
this.rolevisible = true this.rolevisible = true
} }
}, },
rolevisibleMethods(val) {
this.rolevisible = val
this.selectedRowKeys = []
},
getAvatarView: function(avatar) { getAvatarView: function(avatar) {
return getFileAccessHttpUrl(avatar) return getFileAccessHttpUrl(avatar)
}, },
@@ -92,14 +92,14 @@ export default {
}) })
}, },
handleCancel() { handleCancel() {
this.$emit('areaVisibleTaskCutOffTimeflag', false) this.$emit('rolevisible', false)
}, },
//保存 //保存
handleSubmit() { handleSubmit() {
let param = {ids: this.selectedRowKeysArray.join(','), selectedroles: `${this.selectedRole.join(',')}` } let param = {ids: this.selectedRowKeysArray.join(','), selectedroles: `${this.selectedRole.join(',')}` }
postAction('/sys/user/setRole', param).then((res) => { postAction('/sys/user/setRole', param).then((res) => {
if (res.success) { if (res.success) {
this.$emit('areaVisibleTaskCutOffTimeflag', false) this.$emit('rolevisible', false)
this.$message.success(res.message) this.$message.success(res.message)
} else { } else {
this.$message.warning(res.message) this.$message.warning(res.message)
@@ -23,7 +23,7 @@
<a-form :form="form"> <a-form :form="form">
<!-- v-if="!disabled"--> <!-- v-if="!disabled"-->
<a-form-item :label="$t('userAccount')" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item :label="$t('userAccount')" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input :placeholder="$t('enterUserAccount')" v-decorator.trim="[ 'username', validatorRules.username]" disabled=true <a-input :placeholder="$t('enterUserAccount')" v-decorator.trim="[ 'username', validatorRules.username]" :disabled='isdisabled'
:readOnly="!!model.id"/> :readOnly="!!model.id"/>
</a-form-item> </a-form-item>
<!-- v-if="!model.id && !disabled"--> <!-- v-if="!model.id && !disabled"-->
@@ -40,7 +40,7 @@
</template> </template>
<!-- v-if="!disabled"--> <!-- v-if="!disabled"-->
<a-form-item :label="$t('userName')" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item :label="$t('userName')" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input :placeholder="$t('enterUserName')" disabled=true 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>
<!--<a-form-item label="工号" :labelCol="labelCol" :wrapperCol="wrapperCol">--> <!--<a-form-item label="工号" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
@@ -196,6 +196,7 @@
}, },
data() { data() {
return { return {
isdisabled: true,
departDisabled: false, //是否是我的部门调用该页面 departDisabled: false, //是否是我的部门调用该页面
roleDisabled: false, //是否是角色维护调用该页面 roleDisabled: false, //是否是角色维护调用该页面
modalWidth: 800, modalWidth: 800,
@@ -11,14 +11,24 @@
> >
<a-row :gutter='24'> <a-row :gutter='24'>
<a-col :span='24'> <a-col :span='24'>
<a-form-item :label="$t('RoleAssignment')" :labelCol="labelCol" :wrapperCol="wrapperCol"> <!-- <a-form-item :label="$t('RoleAssignment')" :labelCol="labelCol" :wrapperCol="wrapperCol">-->
<a-select mode="multiple" :placeholder="$t('PleaseSelect')+$t('controlVerification')" v-model:value="selectedRole"> <!-- <a-select mode="multiple" :placeholder="$t('PleaseSelect')+$t('controlVerification')" v-model:value="selectedRole">-->
<a-select-option v-for="(role,roleindex) in roleList" :key="role.id" :value="role.id"> <!-- <a-select-option v-for="(role,roleindex) in roleList" :key="role.id" :value="role.id">-->
<span style="display: inline-block;width: 100%"> <!-- <span style="display: inline-block;width: 100%">-->
{{ role.roleName }} <!-- {{ role.roleName }}-->
</span> <!-- </span>-->
</a-select-option> <!-- </a-select-option>-->
</a-select> <!-- </a-select>-->
<!-- </a-form-item>-->
<a-form-item :label="$t('DepartmentAllocation')" :labelCol="labelCol" :wrapperCol="wrapperCol"
>
<a-input-search
:placeholder="$t('ClickSelectDepartment')"
v-model="checkedDepartNameString"
readOnly
@search="onSearch">
<a-button slot="enterButton" icon="search">{{$t('choice')}}</a-button>
</a-input-search>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
@@ -28,6 +38,7 @@
<a-button style='margin-right: .8rem' @click='handleCancel'>{{ $t('cancel') }}</a-button> <a-button style='margin-right: .8rem' @click='handleCancel'>{{ $t('cancel') }}</a-button>
<a-button @click='handleSubmit' type='primary' :loading='confirmLoading'>{{ $t('determine') }}</a-button> <a-button @click='handleSubmit' type='primary' :loading='confirmLoading'>{{ $t('determine') }}</a-button>
</div> </div>
<depart-window ref="departWindow" @ok="modalFormOk"></depart-window>
</div> </div>
</template> </template>
@@ -38,11 +49,16 @@ import Vue from 'vue'
import { ACCESS_TOKEN } from '@/store/mutation-types' import { ACCESS_TOKEN } from '@/store/mutation-types'
import moment from 'moment' import moment from 'moment'
// import eventBUs from '../../common/event' // import eventBUs from '../../common/event'
// 引入搜索部门弹出框的组件
import departWindow from './DepartWindow'
export default { export default {
name: 'diolagArea', name: 'diolagArea',
components: {}, components: {
departWindow
},
data() { data() {
return { return {
checkedDepartNameString: '',
token:Vue.ls.get(ACCESS_TOKEN), token:Vue.ls.get(ACCESS_TOKEN),
title: this.$t('add'), title: this.$t('add'),
total: 0, total: 0,
@@ -81,6 +97,14 @@ export default {
this.loadData() this.loadData()
}, },
methods: { methods: {
modalFormOk(val,vauel) {
// console.log('pppppp')
console.log(val)
console.log(vauel,'vauelvauel')
},
onSearch() {
this.$refs.departWindow.add(this.checkedDepartKeys, this.userId)
},
loadData() { loadData() {
this.loading = true this.loading = true
getAction(`sys/role/queryall`, {}).then(res => { getAction(`sys/role/queryall`, {}).then(res => {