| | |
| | | module.exports = { |
| | | NODE_ENV: "development", |
| | | baseUrl: 'http://192.168.0.41:8086', |
| | | baseUrl: 'http://192.168.0.47:8086', |
| | | // baseUrl: 'http://121.239.169.30:13001', |
| | | } |
| | | }; |
| | |
| | | const t = this |
| | | const res = await getResponseRecord(this.search) |
| | | if(res.data.code == 100){ |
| | | t.lists = res.data.data |
| | | if(res.data.data && res.data.data.length>0){ |
| | | t.lists = res.data.data |
| | | }else{ |
| | | t.lists = [] |
| | | } |
| | | }else{ |
| | | this.$message.error(res.data.msg) |
| | | } |
对比新文件 |
| | |
| | | import preventReClick from './preventReclick' |
| | | |
| | | const install = function(Vue) { |
| | | Vue.directive('preventReClick', preventReClick) |
| | | } |
| | | |
| | | if (window.Vue) { |
| | | window['preventReClick'] = preventReClick |
| | | Vue.use(install); // eslint-disable-line |
| | | } |
| | | |
| | | export default install |
对比新文件 |
| | |
| | | // 自定义指令防止按钮重复点击 v-preventReClick |
| | | export default { |
| | | inserted(el, binding, vnode) { |
| | | el.addEventListener('click', () => { |
| | | // 是否可见 |
| | | if (!el.disabled) { |
| | | el.disabled = true |
| | | el.style.display = 'none' |
| | | setTimeout(() => { |
| | | el.disabled = false |
| | | el.style.display = '' |
| | | }, binding.value || 1500) |
| | | // 不设置默认则为1500 |
| | | } |
| | | }) |
| | | }, |
| | | } |
| | |
| | | import './util/AntDesign' |
| | | import 'ant-design-vue/dist/antd.css' |
| | | import moment from 'moment' |
| | | |
| | | //设置组件默认中文 |
| | | import 'moment/locale/zh-cn'; |
| | | import '@/util/permission' |
| | | import {message,Modal} from "ant-design-vue"; |
| | | moment.locale('zh-cn'); |
| | | |
| | | import prevent from './directive/index'//你的文件路径 |
| | | Vue.use(prevent) |
| | | Vue.config.productionTip = false |
| | | |
| | | Vue.filter('filterTime', (value) => { |
对比新文件 |
| | |
| | | export function debounce(func, delay) { |
| | | let timeoutId; |
| | | |
| | | return function() { |
| | | const context = this; |
| | | const args = arguments; |
| | | |
| | | clearTimeout(timeoutId); |
| | | |
| | | timeoutId = setTimeout(function() { |
| | | func.apply(context, args); |
| | | }, delay); |
| | | }; |
| | | } |
| | |
| | | if (error.message.indexOf('timeout') != -1) { |
| | | message.error('网络超时'); |
| | | setTimeout(() => { |
| | | Session.clear(); |
| | | Session.clear() |
| | | window.location.href = '/'; |
| | | }, 1000); |
| | | } else if (error.message == 'Network Error') { |
| | |
| | | // 弱:纯数字,纯字母,纯特殊字符 |
| | | if (/^(?:\d+|[a-zA-Z]+|[!@#$%^&\.*]+){6,16}$/.test(val)) v = '弱'; |
| | | // 中:字母+数字,字母+特殊字符,数字+特殊字符 |
| | | if (/^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&\.*]+$)[a-zA-Z\d!@#$%^&\.*]{6,16}$/.test(val)) v = '中'; |
| | | if ( /^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&\.*]+$)[a-zA-Z\d!@#$%^&\.*]{6,16}$/.test(val) ) v = '中'; |
| | | // 强:字母+数字+特殊字符 |
| | | if (/^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&\.*]+$)(?![a-zA-z\d]+$)(?![a-zA-z!@#$%^&\.*]+$)(?![\d!@#$%^&\.*]+$)[a-zA-Z\d!@#$%^&\.*]{6,16}$/.test(val)) v = '强'; |
| | | // 返回结果 |
| | |
| | | /> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-button type="primary" @click="searchData()">查询</a-button> |
| | | <a-button type="primary" @click="searchData()" v-preventReClick="1500">查询</a-button> |
| | | <a-button style="margin-left: 12px" @click="resetSearch">重置</a-button> |
| | | </a-col> |
| | | </a-row> |
| | |
| | | </a-tag> |
| | | </template> |
| | | <template #operation="text, record, index"> |
| | | <a-button type="primary" v-if="record.reviewStatus == 2" @click="confirmPost(record.id)">确认发布</a-button> |
| | | <a-button type="primary" v-if="record.reviewStatus == 2" @click="confirmPost(record.id)" v-preventReClick="1500">确认发布</a-button> |
| | | <a-button type="link" @click="openMod('view',record)">查看信息详情</a-button> |
| | | <a-button class="del" type="link" @click="delData(record.id)">删除</a-button> |
| | | <a-button v-if="record.reviewStatus == 1 || record.reviewStatus == 3" @click="openMod('edit',record)">修改</a-button> |
| | |
| | | }, |
| | | methods:{ |
| | | async getData(){ |
| | | console.log(111) |
| | | const t = this |
| | | const res = await getReviewRecord(this.search) |
| | | if(res.data.code == 100){ |
| | |
| | | > |
| | | <a-form-model ref="ruleForm" :rules="rules" :model="form" :label-col="labelCol" :wrapper-col="wrapperCol" :colon="false"> |
| | | <a-form-model-item label="姓名" prop="name"> |
| | | <a-input v-model="form.name"/> |
| | | <a-input v-model.trim="form.name"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item label="手机号码" prop="phone"> |
| | | <a-input v-model="form.phone"/> |
| | |
| | | </a-button> |
| | | </a-col> |
| | | <a-col :span="12" style="text-align: right" v-if="title=='信息修改'"> |
| | | <a-button type="primary" style="min-width: 140px;margin-right: 12px" @click="confirmSend(4)" :disabled="userInfo.role.id==1?true:false"> |
| | | <a-button type="primary" style="min-width: 140px;margin-right: 12px" @click="confirmSend(4)" :disabled="userInfo.role.id==1?true:false" v-preventReClick="1500"> |
| | | 确认并提交审核 |
| | | </a-button> |
| | | </a-col> |
| | |
| | | :afterClose="clearMod" |
| | | > |
| | | <a-form-model ref="ruleForm" :rules="rules" :model="form" :label-col="labelCol" :wrapper-col="wrapperCol" :colon="false"> |
| | | <a-form-model-item label="原密码" prop="oldPwd"> |
| | | <a-form-model-item label="原密码" prop="oldPwd" v-if="form.uid == id"> |
| | | <!-- <a-input v-model="form.oldPwd"/>--> |
| | | <a-input-password v-model="form.oldPwd" placeholder="请输入原密码" /> |
| | | </a-form-model-item> |
| | |
| | | import {verifyPasswordPowerful, verifyPhone, verifyTelPhone} from "@/util/validate"; |
| | | import { updatePwd } from '@/api/user' |
| | | import {loginOut} from "@/api/login"; |
| | | import {Session} from "@/util/storage"; |
| | | import {getUserInfo, Session} from "@/util/storage"; |
| | | export default { |
| | | name: 'pwdMod', |
| | | data () { |
| | |
| | | newPwd: '', |
| | | reNewPwd: '' |
| | | }, |
| | | id: getUserInfo().uid, |
| | | rules: { |
| | | // oldPwd: [{ required: true, validator: validatePwd, trigger: 'blur'}], |
| | | // newPwd: [{ required: true, validator: validatePwd, trigger: 'blur'}], |
| | |
| | | }, |
| | | created() { |
| | | const t = this |
| | | console.log(t.id,t.form.uid,'id') |
| | | }, |
| | | methods:{ |
| | | clearMod(){ |
| | |
| | | > |
| | | <a-form-model ref="ruleForm" :rules="rules" :model="form" :label-col="labelCol" :wrapper-col="wrapperCol" :colon="false"> |
| | | <a-form-model-item label="姓名" prop="realName"> |
| | | <a-input v-model="form.realName"/> |
| | | <a-input v-model.trim="form.realName"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item label="手机号码" prop="phone"> |
| | | <a-input v-model="form.phone"/> |
| | | <a-input v-model.trim="form.phone"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item label="用户名" prop="name"> |
| | | <a-input v-model="form.name"/> |
| | | <a-input v-model.trim="form.name"/> |
| | | </a-form-model-item> |
| | | <a-form-model-item label="密码" v-if="title== '新增用户'" prop="pwd"> |
| | | <a-input v-model="form.pwd"/> |
| | |
| | | this.$message.error('单位层级和所属地区不匹配,请重新选择') |
| | | return |
| | | } |
| | | // this.form.realName = this.form.realName.trim() |
| | | // this.form.name = this.form.name.trim() |
| | | if(this.title == '新增用户'){ |
| | | const { id,...data } = this.form |
| | | addUser(data).then((res)=>{ |
| | |
| | | />
|
| | | </a-col>
|
| | | <a-col :span="6">
|
| | | <a-button type="primary" @click="searchData">查询</a-button>
|
| | | <a-button type="primary" @click="searchData" v-preventReClick="1000">查询</a-button>
|
| | | <a-button style="margin-left: 12px" @click="resetSearch">重置</a-button>
|
| | | </a-col>
|
| | | </a-row>
|
| | |
| | | import axios from "axios";
|
| | | import Cookies from "js-cookie";
|
| | | import {getUserInfo} from "@/util/storage";
|
| | | import {debounce} from "@/util/debounce";
|
| | |
|
| | | export default {
|
| | | name: 'list',
|
| | |
| | | t.getData()
|
| | | },
|
| | | methods: {
|
| | | async getData(){
|
| | | getData: debounce(async function(){
|
| | | const t = this
|
| | | const res = await getMsgRecord(this.search)
|
| | | if(res.data.code == 100){
|
| | |
| | | }else{
|
| | | this.$message.error(res.data.msg)
|
| | | }
|
| | | },
|
| | | },1000),
|
| | |
|
| | | onPageChange(page, pageSize) {
|
| | | const t= this
|
| | |
| | | <!-- </a-select>--> |
| | | <!-- </div>--> |
| | | <div style="display: flex;justify-content: right"> |
| | | <a-button type="primary" style="width: 250px;" @click="confirmSend()" :disabled="userInfo.role.id==1?true:false"> |
| | | <a-button type="primary" style="width: 250px;" @click="confirmSend()" :disabled="userInfo.role.id==1?true:false" v-preventReClick="1500"> |
| | | 确认发送 |
| | | </a-button> |
| | | </div> |
| | |
| | | /> |
| | | </a-col> |
| | | <a-col :span="4"> |
| | | <a-button type="primary" @click="getData">查询</a-button> |
| | | <a-button type="primary" @click="getData" v-preventReClick="1500">查询</a-button> |
| | | <a-button style="margin-left: 12px" @click="resetSearch">重置</a-button> |
| | | </a-col> |
| | | </a-row> |
| | |
| | | </a-form-model-item>
|
| | | </a-col>
|
| | | <a-col :span="12" style="text-align: right">
|
| | | <a-button type="primary" style="width: 250px;" @click="confirmSend()"
|
| | | <a-button type="primary" style="width: 250px;" @click="confirmSend()" v-preventReClick="1500"
|
| | | :disabled="userInfo.role.id==1?true:false">
|
| | | 确认并提交审核
|
| | | </a-button>
|
| | |
| | | {{ getRiskName(type) }} |
| | | </template> |
| | | <template #action="action,row"> |
| | | <a-button type="link" @click="editData('edit',row)">编辑</a-button> |
| | | <a-button type="link" @click="editData('edit',row)" v-preventReClick="1500">编辑</a-button> |
| | | <a-button type="link" class="delBtn" @click="delData(row)">删除</a-button> |
| | | </template> |
| | | </a-table> |
| | |
| | | import axios from "axios"; |
| | | import Cookies from "js-cookie"; |
| | | import {getUserInfo} from "@/util/storage"; |
| | | import {debounce} from "@/util/debounce"; |
| | | const columns = [{ |
| | | title: '序号', |
| | | dataIndex: 'index', |
| | |
| | | t.getData() |
| | | }, |
| | | methods: { |
| | | async getData(){ |
| | | getData: debounce(async function(){ |
| | | const t = this |
| | | const res = await getPublishRecord(this.search) |
| | | if(res.data.code == 100){ |
| | |
| | | }else{ |
| | | this.$message.error(res.data.msg) |
| | | } |
| | | }, |
| | | },1000), |
| | | |
| | | openList(id){ |
| | | const t = this |
| | |
| | | <a-cascader :options="areaData" v-model="areaVal" placeholder="所属区域" expandTrigger="hover" :fieldNames="fieldNames" changeOnSelect @change="onChange" style="width: 100%"/> |
| | | </a-col> |
| | | <a-col :span="6"> |
| | | <a-button type="primary" @click="getUserList">查询</a-button> |
| | | <a-button type="primary" @click="getUserList" v-preventReClick="1500">查询</a-button> |
| | | <a-button style="margin-left: 12px" @click="resetSearch">重置</a-button> |
| | | </a-col> |
| | | </a-row> |
| | |
| | | <a-cascader :options="areaData" v-model="areaVal" placeholder="行政规划" expandTrigger="hover" :fieldNames="fieldNames" changeOnSelect @change="onChange" style="width: 100%"/> |
| | | </a-col> |
| | | <a-col :span="4"> |
| | | <a-select v-model="search.searchParams.unittype" placeholder="监管层级" style="width: 100%"> |
| | | <a-select v-model="search.searchParams.unittype" placeholder="监管层级" style="width: 100%" clearable> |
| | | <a-select-option :value="1"> |
| | | 省级 |
| | | </a-select-option> |
| | |
| | | created() { |
| | | const t = this |
| | | t.unittype = getUserInfo().unittype |
| | | console.log(t.unittype,'unit') |
| | | t.getUserList() |
| | | t.getDistrictInfo() |
| | | }, |
| | |
| | | <router-view ref="tabContent"></router-view>
|
| | | </keep-alive>
|
| | | <div style="height: 30px;text-align: center;line-height: 30px">
|
| | | 技术支持:中国科学院
|
| | | 技术支持:技术保障部
|
| | | </div>
|
| | | </a-layout-content>
|
| | | </a-layout>
|
| | |
| | | size="large" |
| | | @click="handleSubmit" |
| | | :loading="isLoading" |
| | | v-preventReClick="1500" |
| | | > |
| | | 登录 |
| | | </a-button> |
| | | </a-form-item> |
| | | <center><p>技术支持:中国科学院</p></center> |
| | | <center><p>技术支持:技术保障部</p></center> |
| | | </a-form-model> |
| | | </div> |
| | | </div> |