From 9852b16ec51c85fd808dc68b75eadfebd117a27e Mon Sep 17 00:00:00 2001 From: doum <doum> Date: 星期三, 15 十月 2025 18:27:06 +0800 Subject: [PATCH] 最新版本541200007 --- admin/src/components/common/CommonHeader.vue | 208 ++++++++++++++++++++++++++++++++++----------------- 1 files changed, 137 insertions(+), 71 deletions(-) diff --git a/admin/src/components/common/CommonHeader.vue b/admin/src/components/common/CommonHeader.vue index bae0e5b..2857921 100644 --- a/admin/src/components/common/CommonHeader.vue +++ b/admin/src/components/common/CommonHeader.vue @@ -4,16 +4,10 @@ <div class="logo"> <div class="title">{{ title }}</div> <div class="list"> - <div class="item active"> - <div>鏈嶅姟涓績</div> - <div class="linellae"></div> - </div> - <div class="item" @click="getHeaderNav('0')">瀹夐槻涓績</div> - <div class="item" @click="getHeaderNav('1')">娑堟帶涓績</div> - <div class="item" @click="getHeaderNav('2')">鑳界涓績</div> - <div class="item" @click="getHeaderNav('3')">椹鹃┒鑸�</div> + <div :class="index==currentIndex?'item active':'item'" v-for="(item,index) in topMenuList.list" :key="item.id" @click="getHeaderNav(item,index)" :index="index">{{item.label}} + <div v-if="index==currentIndex" class="linellae"></div> + </div> </div> - <!-- <div class="title-en">Diagnosis of Intelligent Manufacturing Integrated Service Platfrom</div> --> </div> <div class="user"> <el-dropdown v-if="isLogined" trigger="click"> @@ -31,29 +25,26 @@ </div> </div> <!-- 淇敼瀵嗙爜 --> - <template v-if="editPsd"> - <GlobalAlertWindow title="淇敼瀵嗙爜" :visible.sync="visible.changePwd" - :showClose="!userInfo.needChangePwd || userInfo.needChangePwd == '0'" - :showCancel="!userInfo.needChangePwd || userInfo.needChangePwd == '0'" @confirm="confirmChangePwd" - @close="visible.changePwd = false"> - <el-form :model="changePwdData.form" ref="changePwdDataForm" :rules="changePwdData.rules"> - <el-form-item label="鍘熷瀵嗙爜" prop="oldPwd" required> - <el-input v-model="changePwdData.form.oldPwd" type="password" placeholder="璇疯緭鍏ュ師濮嬪瘑鐮�" maxlength="30" - show-password></el-input> - </el-form-item> - <el-form-item label="鏂板瘑鐮�" prop="newPwd" required> - <el-input v-model="changePwdData.form.newPwd" type="password" placeholder="璇疯緭鍏ユ柊瀵嗙爜锛屽瘑鐮侀渶鍖呭惈瀛楁瘝銆佹暟瀛楀強鐗规畩瀛楃涓殑鑷冲皯涓ょ" - maxlength="20" show-password></el-input> - </el-form-item> - <!-- <div style="font-size: 12px;color:#999999">瀵嗙爜闇�鍖呭惈瀛楁瘝銆佹暟瀛楀強鐗规畩瀛楃涓殑鑷冲皯涓ょ</div> --> - <el-form-item label="纭鏂板瘑鐮�" prop="confirmPwd" required> - <el-input v-model="changePwdData.form.confirmPwd" type="password" placeholder="璇峰啀娆¤緭鍏ユ柊瀵嗙爜" maxlength="20" - show-password></el-input> - </el-form-item> - </el-form> - </GlobalAlertWindow> - </template> - + <GlobalAlertWindow title="淇敼瀵嗙爜" :visible.sync="visible.changePwd" + :showClose="userInfo && (!userInfo.needChangePwd || userInfo.needChangePwd == '0')" + :showCancel="userInfo && (!userInfo.needChangePwd || userInfo.needChangePwd == '0')" @confirm="confirmChangePwd" + @close="visible.changePwd = false"> + <el-form :model="changePwdData.form" ref="changePwdDataForm" :rules="changePwdData.rules"> + <el-form-item label="鍘熷瀵嗙爜" prop="oldPwd" required> + <el-input v-model="changePwdData.form.oldPwd" type="password" placeholder="璇疯緭鍏ュ師濮嬪瘑鐮�" maxlength="30" + show-password></el-input> + </el-form-item> + <el-form-item label="鏂板瘑鐮�" prop="newPwd" required> + <el-input v-model="changePwdData.form.newPwd" type="password" placeholder="璇疯緭鍏ユ柊瀵嗙爜锛屽瘑鐮侀渶鍖呭惈瀛楁瘝銆佹暟瀛楀強鐗规畩瀛楃涓殑鑷冲皯涓ょ" + maxlength="20" show-password></el-input> + </el-form-item> + <!-- <div style="font-size: 12px;color:#999999">瀵嗙爜闇�鍖呭惈瀛楁瘝銆佹暟瀛楀強鐗规畩瀛楃涓殑鑷冲皯涓ょ</div> --> + <el-form-item label="纭鏂板瘑鐮�" prop="confirmPwd" required> + <el-input v-model="changePwdData.form.confirmPwd" type="password" placeholder="璇峰啀娆¤緭鍏ユ柊瀵嗙爜" maxlength="20" + show-password></el-input> + </el-form-item> + </el-form> + </GlobalAlertWindow> </div> </template> @@ -71,11 +62,11 @@ default: true } }, - data() { + data () { return { title: process.env.VUE_APP_TITLE, headerNavData: {}, - editPsd: false, + currentIndex: 0, visible: { // 淇敼瀵嗙爜 changePwd: false @@ -98,7 +89,7 @@ ], newPwd: [ { required: true, message: '璇疯緭鍏ュ瘑鐮�', trigger: 'blur' }, - { validator: this.validatePassword, trigger: 'blur' }, + { validator: this.validatePassword, trigger: 'blur' } ], confirmPwd: [ { required: true, message: '璇峰啀娆¤緭鍏ユ柊瀵嗙爜' } @@ -108,23 +99,23 @@ } }, computed: { - ...mapState(['menuData', 'userInfo']), + ...mapState(['menuData', 'userInfo', 'topMenuList']) // title () { // return this.$route.meta.title // } }, - created() { + created () { }, - mounted() { - // console.log('userInfo',this.userInfo); - if (!this.userInfo.needChangePwd || this.userInfo.needChangePwd == '0') { + mounted () { + // needChangePwd 0 : 榛樿瀵嗙爜闇�瑕佷慨鏀癸紝1 涓嶉渶瑕� + if (this.userInfo && (!this.userInfo.needChangePwd || this.userInfo.needChangePwd == '0')) { this.visible.changePwd = true } }, filters: { // 灞曠ず鍚嶇О - displayName(userInfo) { + displayName (userInfo) { if (userInfo == null) { return '' } @@ -135,17 +126,15 @@ } }, methods: { - ...mapMutations(['setUserInfo', 'switchCollapseMenu', 'clearUserInfo']), + ...mapMutations(['setUserInfo', 'switchCollapseMenu', 'clearUserInfo', 'setTopMenuCurrent']), // 淇敼瀵嗙爜 - changePwd() { - this.$set(this.userInfo, 'needChangePwd', this.$store.state.userInfo.needChangePwd) - this.editPsd = true + changePwd () { this.visible.changePwd = true this.$nextTick(() => { this.$refs.changePwdDataForm.resetFields() }) }, - validatePassword(rule, value, callback) { + validatePassword (rule, value, callback) { if (!value) { callback(new Error('璇疯緭鍏ュ瘑鐮�')) } else { @@ -165,13 +154,87 @@ } } }, - getHeaderNav(type) { + getHeaderNav (item,index) { + this.currentIndex = index + if(item.linkType === 0){ + this.setTopMenuCurrent(item) + }else{ + if (item.url && item.url === 'goHKAF' && item.params != null) { + this.getHKAFHeaderNav(item.params) + } else if (item.url && item.url.indexOf('http') === 0) { + window.open(item.url, '_blank') + } + } + }, + getHKAFHeaderNav (type) { getAppHeaderNav(type).then(res => { - window.open(res, "_blank") + window.open(res, '_blank') }) }, + handleTest () { + const myWindow = window.open('https://10.50.250.253/portal/ui/index?componentId=dfe&componentMenuId=process_apply') + setTimeout(() => { + const params = { + componentId: 'dfe', + componentMenuId: 'process_apply', + callback: { + method: 'dealTlncMsg', + argument: { + msgId: '98c256b9-aaff-11ef-8347-fa163ee2c57c', + moduleId: 'dfeFlowTodoModuleId', + msgTitle: '璇峰強鏃跺鐞�13856591439鍙戣捣鐨勮鍋囩敵璇�', + msgStatus: '0', + msgCreateTime: '浠婂ぉ 15:33', + msgCreateTimeIso: '2024-11-25T15:33:42.000+08:00', + serverTime: 1732531014591, + menuCode: 'process_apply', + msgStatusStr: '寰呭鐞�', + comId: 'dfe', + userId: '13856591439', + extendNoShow: '{"processInstanceId":"98a57fe0-aaff-11ef-8347-fa163ee2c57c","processId":"process_dabcfdd39f1b6f46d36a9f4ff6ce1080","param":{"sourceType":"todo","modelCode":"tb_leave_dfe_for_dfe_runtime","processNodeId":"UserTask_dde7d83377343a2d5fa1f60c23b023ef","taskId":"98c256b9-aaff-11ef-8347-fa163ee2c57c"},"process.param.appId":"32ca8770-6f85-11ec-b5a3-991864da52a6","appId":"32ca8770-6f85-11ec-b5a3-991864da52a6","name":"璇峰亣鐢宠","taskId":"98c256b9-aaff-11ef-8347-fa163ee2c57c","taskNodeId":"UserTask_dde7d83377343a2d5fa1f60c23b023ef","url":"/dfe-form/process/tlnc/apply"}', + targetComId: 'dfe', + moduleName: '娴佺▼寰呭姙', + tid: '99cad778-aaff-11ef-9dbf-ff08ba71965c', + msgEndTime: null, + msgEndTimeIso: '', + picUrl: '', + extendJson: '{"key1":"璇峰強鏃跺鐞嗛檲楦块鍙戣捣鐨勮鍋囩敵璇�"}', + extendParam: null, + extendCascade: null, + createUser: '13856591439', + webCascadeUrl: null, + h5CascadeUrl: null, + cascadeTodoOpenType: null, + cascadeSourceConfigId: null, + h5Url: '/h5/pages/form-page/form-page?returnPath=-1&appId=32ca8770-6f85-11ec-b5a3-991864da52a6&taskId=98c256b9-aaff-11ef-8347-fa163ee2c57c&processNodeId=UserTask_dde7d83377343a2d5fa1f60c23b023ef&modelCode=tb_leave_dfe_for_dfe_runtime&type=flowHandle&component=form-apply&_sn=true', + segmentId: 'dfe-form', + lastUsers: '闄堥缚椋�', + currentUsers: '闄堥缚椋�', + todoTypeCode: 'dfe@@tlnc_placeholder_tlnc@@dfeFlowTodoModuleId', + currentUserIds: '13856591439', + lastUserIds: '13856591439', + msgDesc: null, + widgetUrl: null, + detailType: null, + widgetWidth: null, + widgetHeight: null, + userIdList: null, + statusName: null, + arriveTime: null, + stayTime: null, + todoType: null, + cascadePort: null, + openMode: null + } + }, + msgType: 'tlnc' + } + const argus = JSON.stringify(params) + myWindow.postMessage('{"method":"goToApp","argument":' + argus + '}', '*') + }, 8000) + }, // 纭畾淇敼瀵嗙爜 - confirmChangePwd() { + confirmChangePwd () { if (this.isWorking.changePwd) { return } @@ -192,6 +255,7 @@ }) .then(() => { this.$tip.apiSuccess('淇敼鎴愬姛') + this.$store.commit('setUserInfo', { needChangePwd: 1 }) this.visible.changePwd = false }) .catch(e => { @@ -203,7 +267,7 @@ }) }, // 閫�鍑虹櫥褰� - logout() { + logout () { logout() .then(() => { this.clearUserInfo() @@ -228,31 +292,32 @@ .list { flex: 1; - display: flex; - align-items: center; margin-left: 60px; - - .item { - margin-right: 40px; - font-size: 16px; - font-weight: 400; + margin-top: 10px; display: flex; - flex-direction: column; align-items: center; - justify-content: flex-start; - height: 40px; - cursor: pointer; + .item { + margin-right: 40px; + font-size: 16px; + font-weight: 400; + display: flex; + flex-direction: column; + align-items: center; + justify-content: flex-start; + height: 40px; + cursor: pointer; - .linellae { - width: 64px; - height: 2px; - background: #FFFFFF; + .linellae { + width: 64px; + height: 2px; + background: #FFFFFF; + } } - } - .active { - font-weight: 500; - } + .active { + font-weight: 500; + } + } .header { @@ -277,7 +342,8 @@ align-items: center; .title { - width: 240px; + font-size: 18px; + width: 320px; } // display: inline; @@ -289,7 +355,7 @@ } .user { - width: 212px; + width: 152px; box-sizing: border-box; height: 56px; padding-right: 25px; -- Gitblit v1.9.3