| | |
| | | |
| | | .component_view { |
| | | height: calc(100vh - 84px); |
| | | width: calc(100% - 52px); |
| | | padding: 0 26px; |
| | | width: calc(100% - 40px); |
| | | padding: 0 20px; |
| | | background: rgb(245, 247, 251); |
| | | } |
| | | |
| | |
| | | </div> |
| | | <div class="component_view"> |
| | | <component class="com_index" v-for="(com, index) in tabs" :is="com.u" :key="com.k" v-show="com.k == tabActive" |
| | | :ref="`com-${com.k}`"> |
| | | :ref="`com-${com.k}`" :param="param"> |
| | | </component> |
| | | </div> |
| | | </div> |
| | |
| | | <el-col :span="24"> |
| | | <el-card :body-style="{padding: '6px'}"> |
| | | <ul> |
| | | <li @click="removeTab(activeIndex)"><i class="el-icon-close"></i>关闭</li> |
| | | <li @click="allDel"><i class="el-icon-delete"></i>关闭所有</li> |
| | | <li @click="rightDel(activeIndex)"><i class="el-icon-d-arrow-right"></i>关闭右侧页签</li> |
| | | <li @click="removeTab(activeIndex)" v-show="menuId!=0" style="text-align: left;"><i class="el-icon-close"></i>关闭</li> |
| | | <li @click="allDel" style="text-align: left;"><i class="el-icon-delete"></i>关闭所有</li> |
| | | <li @click="rightDel(activeIndex)" style="text-align: left;"><i class="el-icon-d-arrow-right"></i>关闭右侧页签</li> |
| | | <el-divider></el-divider> |
| | | <li @click="refreshTable"><i class="el-icon-refresh"></i>刷新</li> |
| | | <li @click="refreshTable" style="text-align: left;"><i class="el-icon-refresh"></i>刷新</li> |
| | | </ul> |
| | | </el-card> |
| | | </el-col> |
| | |
| | | <el-button type="primary" @click="handleEdit">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <notice ref="notice" /> |
| | | <notice ref="notice" @goNoticeDetail="checkForUnreadData()" /> |
| | | <!-- <timer></timer> --> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | import menus from '../../static/js/menu.js' |
| | | import nullFace from '../view/404.vue' |
| | | import notice from './notice.vue' |
| | | import timer from './timer.vue'; |
| | | comObj['nullFace'] = nullFace |
| | | export default { |
| | | components: {...comObj,notice}, |
| | | components: {...comObj,notice,timer}, |
| | | data() { |
| | | return { |
| | | userName: "value", |
| | |
| | | query:{}, |
| | | newMsg:false, |
| | | timer:null, |
| | | menuId: 0, |
| | | param:null, |
| | | }; |
| | | }, |
| | | created() { |
| | | this.menu = menus.menu |
| | | if (this.PROJECT !== '装备电缆') { // 检测中心暂无'原材料检验下单'功能 |
| | | const index = this.menu.findIndex(item => item.v === '业务管理') |
| | | if (index > -1) { |
| | | const index2 = this.menu[index].c.findIndex(obj => obj.v === '原材料检验下单') |
| | | if (index2 > -1) { |
| | | this.menu[index].c.splice(index2, 1) |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.userName = JSON.parse(localStorage.getItem("user")).name; |
| | |
| | | } |
| | | this.getPower() |
| | | this.timer&&clearInterval(this.timer); |
| | | this.checkForUnreadData() |
| | | this.timer = setInterval(()=>{ |
| | | this.checkForUnreadData() |
| | | },20000) |
| | | },30000) |
| | | }, |
| | | methods: { |
| | | saveClick(){ |
| | |
| | | if (ob.u == "") ob.u = "nullFace" |
| | | this.tabs.push(ob); |
| | | } |
| | | if(ob.param){ |
| | | this.param = this.HaveJson(ob.param) |
| | | this.param.textNum = Math.random(100) |
| | | }else{ |
| | | this.param = null |
| | | } |
| | | this.$refs['popoverName'].forEach(a=>{ |
| | | a.doClose() |
| | | }) |
| | | this.saveClick() |
| | | }, |
| | | removeTab(index) { |
| | | let obj = this.$refs[`com-${this.tabs[index].k}`][0] |
| | | if(obj.state&&obj.state==1&&this.tabs[index].v=='检验任务'&&(obj.version===0||obj.version===1)){ |
| | | this.$confirm('请确认当前数据是否全部保存,是否关闭当前页面?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then( async () => { |
| | | if(await obj.$refs.Inspection.$refs.CircuitParameters.saveAll()){ |
| | | this.tabs.splice(index, 1); |
| | | let data = this.tabs[this.tabs.length - 1] |
| | | this.upTabActive(data.k) |
| | | } |
| | | }) |
| | | return |
| | | } |
| | | this.tabs.splice(index, 1); |
| | | let data = this.tabs[this.tabs.length - 1] |
| | | this.upTabActive(data.k) |
| | |
| | | }, |
| | | // 右键菜单 |
| | | rightKeyMenu(id, e) { |
| | | if (id == 0) return |
| | | // if (id == 0) return |
| | | this.menuId = id |
| | | this.activeIndex = id |
| | | var x = e.clientX + 'px' |
| | | var y = e.clientY + 'px' |
| | |
| | | this.editVisible = true; |
| | | }, |
| | | handleEdit(){ |
| | | const reg2 = |
| | | /^(?=.*?[a-z])(?=.*?[A-Z])(?=.*?\d)(?=.*?[~!#@$%^*&()_+{}\[\]|\\;:'",<.>\/?])[a-zA-Z\d~!#@$%^*&()_+{}\[\]|\\;:'",<.>\/?]*$/; |
| | | if (!this.query.oldPassword) { |
| | | this.$message.error('请填写旧密码') |
| | | return |
| | | }else if (!reg2.test(this.query.oldPassword)) { |
| | | this.$message.error('密码必须包括数字、大小写字母以及特殊字符') |
| | | return |
| | | } |
| | | if (!this.query.newPassWord) { |
| | | this.$message.error('请填写旧密码') |
| | | return |
| | | }else if (!reg2.test(this.query.newPassWord)) { |
| | | this.$message.error('密码必须包括数字、大小写字母以及特殊字符') |
| | | return |
| | | } |
| | | this.$axios.post(this.$api.user.upUserPassword, {...this.query}).then(res => { |
| | | if (res.code == 201) { |