“dzb”
2022-10-09 fde4758dd43927cce678d99ffe71e05931616f26
创建车辆管理
19个文件已修改
1个文件已添加
11个文件已删除
671 ■■■■■ 已修改文件
src/components/dispatch/index.vue 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/helper.js 61 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/mydate.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/validate.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/layout/components/Menu/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/car/index.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/createUser/index.vue 195 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/ill/index.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/pool/createUser/ill/index.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/pool/createUser/vio/index.vue 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/pool/index.vue 133 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/fivepack/shop/components/createUser/index.vue 125 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/myWait/index.vue 54 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/图片管理 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/审核管理 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/执法管理 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/日志管理 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/消息管理 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/短信管理 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/算法模型管理 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/视频管理 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/调度管理 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/车辆管理 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/baseSetting/department/createUser/index.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/baseSetting/department/index.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/baseSetting/department/updateUser/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/systemSetting/baseSetting/role/viewRole/index.vue 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/dispatch/index.vue
@@ -63,7 +63,7 @@
        </div>
        <div class="footer">
            <el-button type="primary" @click="handleDispatch">确定</el-button>
            <el-button>返回</el-button>
            <el-button @click="handleBack">返回</el-button>
        </div>
    </div>
</template>
@@ -73,7 +73,7 @@
    components: {
        MyMap
    },
    props: ['id','changeDialog'],
    props: ['id','changeDialog','refresh'],
    created() {
        console.log(this.id);
    },
@@ -243,12 +243,17 @@
                            type: res.code === 200 ? 'success':'error',
                            message: res.code === 200 ? '调度成功':res.message,
                        })
                        this.$emit('changeDialog',{dialogView:false});
                        this.$emit('changeDialog',{flag:false});
                        this.refresh();
                    })
                } else {
                    return false;
                }
            })
        },
        // å–消调度
        handleBack(){
            this.$emit('changeDialog',{flag:false})
        }
    }
}
src/router/index.js
@@ -177,6 +177,14 @@
                component: () => import('@/views/operate/management/myIndex'),
              }
            ]
          },
          {
            path: 'car',
            name: 'car',
            component: () => import('@/views/operate/car'),
            children: [
            ]
          }
        ]
      },
src/utils/helper.js
@@ -1,17 +1,62 @@
import { hash } from "immutable";
// æ·±æ‹·è´
function deepClone(obj){
function deepClone(obj) {
    let objClone = Array.isArray(obj) ? [] : {};
    if(obj && typeof obj === 'object' && obj != null){
        for(let key in obj){
            if(obj.hasOwnProperty(key)){
                if(obj[key] && typeof obj[key] === 'object'){
    if (obj && typeof obj === 'object' && obj != null) {
        for (let key in obj) {
            if (obj.hasOwnProperty(key)) {
                if (obj[key] && typeof obj[key] === 'object') {
                    objClone[key] = deepClone(obj[key]);
                }else{
                } else {
                    objClone[key] = obj[key];
                }
            }
        }
    }
    return objClone;
}
export {deepClone};
}
// è®¡ç®—æ—¶é—´
function computeTime(time2) {
    const t1 = new Date();
    const t2 = new Date(time2);
    return filterTime(t2.getTime() - t1.getTime());
}
function filterTime(time) {
    if (time < 0) {
        return '已逾期';
    }
    let dd = Math.floor(time/24/60/60/1000),
        hh = Math.floor(time/60/60/1000-dd*24),
        mi = Math.floor(time/60/1000-dd*24*60-hh*60);
    console.log(dd, hh, mi)
    return addDay(fillTime(dd)) + addHour(fillTime(hh)) + addMin(fillTime(mi));
}
function fillTime(num) {
    if (num < 10) {
        return '0' + num;
    }
    return num;
}
function addDay(str) {
    str = parseFloat(str);
    if (str <= 0) {
        return;
    }
    return str + '天'
}
function addHour(str) {
    str = parseFloat(str);
    if (str <= 0) {
        return;
    }
    return str + '小时'
}
function addMin(str) {
    str = parseFloat(str);
    if (str <= 0) {
        return;
    }
    return str + '分钟'
}
export { deepClone, computeTime };
src/utils/mydate.js
@@ -1,3 +1,4 @@
// å¤„理时间
function filterTime(time){
    const result = new Date(time);
    let yy = result.getFullYear(),
src/utils/validate.js
@@ -9,5 +9,14 @@
  const urlregex = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/
  return urlregex.test(textval)
}
// æ ¡éªŒæ±‰å­—名
export function validateName(str){
}
// æ ¡éªŒæ‰‹æœºå·
export function validatePhone(str){
  const phoneRep = /(^1[3|4|5|7|8|9]\d{9}$)|(^09\d{8}$)/;
  return phoneRep.test(str);
}
src/views/layout/components/Menu/index.vue
@@ -109,7 +109,7 @@
              <el-menu-item index="/home/operate/fivepack/shop">店铺管理</el-menu-item>
            </el-submenu>
            <el-menu-item index="/home/operate/dasdas">算法模型管理</el-menu-item>
            <el-menu-item index="/home/operate/dasdas">车辆管理</el-menu-item>
            <el-menu-item index="/home/operate/car">车辆管理</el-menu-item>
            <el-menu-item index="/home/operate">图片管理</el-menu-item>
            <el-menu-item index="/home/operate">视频管理</el-menu-item>
            <el-menu-item index="/home/operate">消息管理</el-menu-item>
src/views/operate/car/index.vue
New file
@@ -0,0 +1,3 @@
<template>
<router-view></router-view>
</template>
src/views/operate/disposal/casepool/dispatch/createUser/index.vue
File was deleted
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue
@@ -104,7 +104,6 @@
            fileList: [],
        }
    },
    props:['getArrive'],
    methods: {
        handleSuccess(res, file, filelist) {
            const baseUrl = 'http://140.143.152.226:8410/';
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue
@@ -443,7 +443,6 @@
            ]
        }
    },
    props:['getEvidence'],
    methods: {
        handleSuccess2(res, file, filelist) {
            const baseUrl = 'http://140.143.152.226:8410/';
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/ill/index.vue
@@ -12,7 +12,7 @@
        <!-- åº•部按钮 -->
        <div class="footer">
            <el-button @click="handleSubmit" type="primary">确定</el-button>
            <el-button>返回</el-button>
            <el-button @click="handleBack">返回</el-button>
        </div>
    </div>
</template>
@@ -29,7 +29,7 @@
            // result:'',
        }
    },
    props: ['caseId'],
    props: ['caseId','closeDialog'],
    created() {
        console.log(this.caseId);
        this.getUserId();
@@ -152,6 +152,9 @@
            .then(res=>{
                console.log(res);
            })
        },
        handleBack(){
            this.$emit('closeDialog',{falg:false})
        }
    }
}
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
@@ -1,13 +1,13 @@
<template>
    <div class="vio">
        <!-- åˆ°è¾¾çŽ°åœºæƒ…å†µ -->
        <MyArrive ref="arrive" @getArrive="getArrive"></MyArrive>
        <MyArrive ref="arrive"></MyArrive>
        <!-- è°ƒæŸ¥å–证 -->
        <MyEvidence ref="evidence" @getEvidence="getEvidence"></MyEvidence>
        <MyEvidence ref="evidence"></MyEvidence>
        <!-- åº•部按钮 -->
        <div class="footer">
            <el-button @click="handleSubmit" type="primary">确定</el-button>
            <el-button>返回</el-button>
            <el-button @click="handleBack">返回</el-button>
        </div>
    </div>
</template>
@@ -100,13 +100,8 @@
                }
            })
        },
        // èŽ·å¾—arrive的信息
        getArrive(obj) {
            console.log(obj);
        },
        // èŽ·å¾—evidence对象
        getEvidence(obj) {
            console.log(obj);
        handleBack(){
            this.$emit('closeDialog',{flag:false});
        }
    }
}
src/views/operate/disposal/casepool/pool/createUser/ill/index.vue
@@ -362,7 +362,8 @@
                                            type: 'success',
                                            message: res.message
                                        })
                                        this.$emit('changeDialog', { dialogView: false });
                                        this.$emit('changeDialog', { flag: false });
                                        this.refresh();
                                    } else {
                                        this.$message({
                                            type: 'warning',
@@ -413,7 +414,7 @@
            this.ill.negative = baseUrl + res.data.url1;
        }
    },
    props: ['mytype', 'changeDialog']
    props: ['mytype', 'changeDialog','refresh']
}
</script>
<style lang="scss" scoped>
src/views/operate/disposal/casepool/pool/createUser/vio/index.vue
@@ -117,7 +117,7 @@
            </div>
            <div class="input-footer">
                <el-button type="primary" class="confirm" @click="handleSubmit">确定</el-button>
                <el-button class="back">返回</el-button>
                <el-button class="back" @click="handleBack">返回</el-button>
            </div>
        </div>
        <div class="map-area">
@@ -368,7 +368,8 @@
                                    type: 'success',
                                    message: res.message
                                })
                                this.$emit('changeDialog', { dialogView: false });
                                this.$emit('changeDialog', { flag: false });
                                this.refresh();
                            } else {
                                this.$message({
                                    type: 'warning',
@@ -380,9 +381,13 @@
                    return false;
                }
            })
        },
        // è¿”回
        handleBack(){
            this.$emit('changeDialog',{flag:false})
        }
    },
    props: ['mytype', 'changeDialog']
    props: ['mytype', 'changeDialog','refresh']
}
</script>
<style lang="scss" scoped>
src/views/operate/disposal/casepool/pool/index.vue
@@ -26,9 +26,10 @@
                    <el-dialog :before-close="handleClose" :visible.sync="dialogNewAdd"
                        :title="newAddType === 0 ? '违规事件登记' : '违建事件登记' " width="60%" v-if="dialogNewAdd">
                        <!-- è¿å»ºç™»è®° -->
                        <MyIll v-if="newAddType === 1" :mytype=newAddType @changeDialog=changeDialog />
                        <MyIll v-if="newAddType === 1" :refresh="getUserList" :mytype=newAddType
                            @changeDialog=changeDialog />
                        <!-- è¿è§„登记 -->
                        <myVio v-else :mytype=newAddType @changeDialog=changeDialog />
                        <myVio v-else :mytype=newAddType @changeDialog=changeDialog :refresh="getUserList" />
                    </el-dialog>
                </div>
            </div>
@@ -94,13 +95,13 @@
                <!-- è°ƒåº¦ -->
                <el-dialog :visible.sync="dialogDispatch" width="80%" title="调度信息" v-if="dialogDispatch"
                    :before-close="handleClose">
                    <MyDispatch :id="baseId" @changeDialog="changeDialog"></MyDispatch>
                    <MyDispatch :id="baseId" @changeDialog="changeDialog" :refresh="getUserList"></MyDispatch>
                </el-dialog>
                <!-- tools -->
                <div class="tools">
                    <div class="funs">
                        <div class="funsItem">
                            <el-checkbox v-model="all" @change="selectAll()">全选</el-checkbox>
                            <el-checkbox v-model="all" @change="selectAll()" :disabled="tableData.length !== 0 ? false : true">全选</el-checkbox>
                        </div>
                        <div class="funsItem">
                            <el-checkbox v-model="unsame" @change="disSame(tableData)">反选</el-checkbox>
@@ -152,7 +153,7 @@
            dialogCreate: false,
            dialogView: false,
            dialogNewAdd: false,
            dialogDispatch:false,
            dialogDispatch: false,
            newAddType: 0,
            totalNum: null,
            pageSize: 10,
@@ -223,7 +224,7 @@
            ],
            mystatus: '',
            statusArr: [],
            baseId:0
            baseId: 0
        }
    },
@@ -267,7 +268,7 @@
                .then(_ => {
                    this.$axios({
                        method: 'delete',
                        url: 'sccg/base-case/batch_deletion?ids=' + idArr + '&type=' + statusArr[1],
                        url: 'sccg/base_case/batch_deletion?ids=' + idArr + '&type=' + statusArr[1],
                    }).then(res => {
                        if (res.code === 200) {
                            this.getUserList();
@@ -305,7 +306,7 @@
        tableChange(list) {
            this.tempList = [];
            list.forEach(item => {
                this.tempList.push(item.code);
                this.tempList.push(item.id);
            })
            if (list.length === this.tableData.length) {
                this.all = true;
@@ -335,10 +336,10 @@
                this.tableData = res.data.records;
                console.log(res);
            })
            .catch(err=>{
                console.log(err)
                this.tableData = [];
            })
                .catch(err => {
                    console.log(err)
                    this.tableData = [];
                })
        },
        // è®¾ç½®è¡¨æ ¼æ–‘马纹
        tableRowClassName({ row, rowIndex }) {
@@ -369,12 +370,12 @@
            this.currentPage = page;
            this.getUserList();
        },
        changeDialog(val) {
            this.dialogNewAdd = val.dialogView;
            this.dialogCreate = val.dialogView;
            this.dialogView = val.dialogView;
            this.dialogDispatch = val.dialogView;
            this.getUserList();
        changeDialog({ flag }) {
            this.dialogNewAdd = flag;
            this.dialogCreate = flag;
            this.dialogView = flag;
            this.dialogDispatch = flag;
            // this.getUserList();
        },
        handleClose(done) {
            this.$confirm('确认关闭?')
@@ -431,62 +432,62 @@
                })
        },
        // åœ¨å­¦ä¹ 
        handleLearn({id}){
        handleLearn({ id }) {
            console.log(id);
            this.$axios({
                method:'put',
                url:'sccg/base_case/case_status_update?caseId='+id + '&state='+3
                method: 'put',
                url: 'sccg/base_case/case_status_update?caseId=' + id + '&state=' + 3
            })
            .then(res=>{
                console.log(res);
                if(res.code === 200){
                    this.$notify({
                        title:'温馨提示',
                        message:'此事件已忽略,返回系统在学习',
                        type:'success',
                        position: 'bottom-right'
                    })
                    // this.$message({
                    //     type:'success',
                    //     message:'操作成功',
                    // })
                    this.getUserList();
                }else{
                    this.$message({
                        type:'error',
                        message:'操作失败'
                    })
                }
            })
                .then(res => {
                    console.log(res);
                    if (res.code === 200) {
                        this.$notify({
                            title: '温馨提示',
                            message: '此事件已忽略,返回系统在学习',
                            type: 'success',
                            position: 'bottom-right'
                        })
                        // this.$message({
                        //     type:'success',
                        //     message:'操作成功',
                        // })
                        this.getUserList();
                    } else {
                        this.$message({
                            type: 'error',
                            message: '操作失败'
                        })
                    }
                })
        },
        // æš‚不处理
        handleNotDeal({id}){
        handleNotDeal({ id }) {
            console.log(id);
            this.$axios({
                method:'put',
                url:'sccg/base_case/case_status_update?caseId='+id + '&state='+4
                method: 'put',
                url: 'sccg/base_case/case_status_update?caseId=' + id + '&state=' + 4
            })
            .then(res=>{
                console.log(res);
                if(res.code === 200){
                    this.$notify({
                        title:'温馨提示',
                        message:'此事件暂不处理,请前往暂不处理界面查看详情',
                        type:'success',
                        position: 'bottom-right'
                    })
                    // this.$message({
                    //     type:'success',
                    //     message:'操作成功',
                    // })
                    this.getUserList();
                }else{
                    this.$message({
                        type:'error',
                        message:'操作失败'
                    })
                }
            })
                .then(res => {
                    console.log(res);
                    if (res.code === 200) {
                        this.$notify({
                            title: '温馨提示',
                            message: '此事件暂不处理,请前往暂不处理界面查看详情',
                            type: 'success',
                            position: 'bottom-right'
                        })
                        // this.$message({
                        //     type:'success',
                        //     message:'操作成功',
                        // })
                        this.getUserList();
                    } else {
                        this.$message({
                            type: 'error',
                            message: '操作失败'
                        })
                    }
                })
        }
    }
}
src/views/operate/fivepack/shop/components/createUser/index.vue
@@ -5,15 +5,15 @@
                <el-form ref="user" label-width="140px" autoComplete="on" :model="user" :rules="createUserRules"
                    label-position="right">
                    <!-- åº—铺类型 -->
                    <el-form-item class="optionItem" label="店铺类型:" prop="nickName">
                        <el-select v-model="user.userType" placeholder="选择店铺/门店类型">
                    <el-form-item class="optionItem" label="店铺类型:" prop="storetype">
                        <el-select v-model="user.storetype" placeholder="选择店铺/门店类型">
                            <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value"
                                :disabled="item.disabled">
                            </el-option>
                        </el-select>
                    </el-form-item>
                    <!-- åº—铺名称 -->
                    <el-form-item class="optionItems" label="店铺名称:" prop="password">
                    <el-form-item class="optionItems" label="店铺名称:" prop="storename">
                        <el-input v-model="user.password" type="password" placeholder="请填写店铺名称"></el-input>
                    </el-form-item>
                    <!-- è´Ÿè´£äºº -->
@@ -52,27 +52,23 @@
    data() {
        const validateNickname = (rule, value, callback) => {
            if (!value) {
                callback(new Error("请填写用户名称"));
                callback(new Error("负责人不能为空"));
            }else{
                callback();
            }
        };
        const validatePass = (rule, value, callback) => {
            if (!value) {
                callback(new Error("请填写登录密码"));
                callback();
            } else {
                const rep = /^\w+$/;
                if (!rep.test(value)) {
                    callback(new Error("密码只能是以数字、26个英文字母或者下划线组成的字符串"));
                }
                callback();
            }
        };
        const validateTruename = (rule, value, callback) => {
            if (!value) {
                callback(new Error("请填写用户姓名"));
                callback();
            } else {
                const rep = /^[\u4E00-\u9FA5]{2,4}$/;
                if (!rep.test(value)) {
                    callback("请输入正确的用户姓名");
                }
               callback(new Error('店铺地址不能为空'))
            }
        };
        const validatePhone = (rule, value, callback) => {
@@ -87,118 +83,47 @@
        };
        const validateMail = (rule, value, callback) => {
            if (value) {
                const rep = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
                if (!rep.test(value)) {
                    callback(new Error("请输入正确的邮箱"))
                }
            }
        };
        const validateRole = (rule, value, callback) => {
            if (!value) {
                callback(new Error("请填写登录密码"));
            } else {
                callback();
            }else{
                callback(new Error('店铺名称不能为空'))
            }
        };
        const validateType = (rule, value, callback) => {
            if (!value) {
                callback(new Error("请填写登录密码"));
            } else {
                callback();
            }
        };
        const validateDepartment = (rule, value, callback) => {
            if (!value) {
                callback(new Error("请填写登录密码"));
            } else {
                callback();
            }
        };
        const validateWork = (rule, value, callback) => {
            if (!value) {
                callback(new Error("请填写登录密码"));
            } else {
                callback();
            }
        };
        const validateMac = (rule, value, callback) => {
            if (!value) {
                callback(new Error("请填写登录密码"));
            } else {
                callback();
            }
        };
        const validateIp = (rule, value, callback) => {
            if (!value) {
                callback(new Error("请填写登录密码"));
            } else {
                callback();
            }
        };
        return {
            user: {
                nickName: '',
                password: '',
                username: '',
                // gender: 1,
                isDy: 0,
                mobile: '',
                email: '',
                // role: null,
                userType: null,
                zj: {
                    areaNumber: '',
                    phoneNumber: "",
                    moreNumber: "",
                },
                departmentId: null,
                jobTitle: null,
                // mac: '',
                // ip: '',
                contact:'',
                idcardinfo:'',
                owner:'',
                storeaddr:'',
                storename:'',
                storedesc:'',
                storetype:'',
            },
            createUserRules: {
                nickName: [
                owner: [
                    { required: true, trigger: "blur", validator: validateNickname },
                ],
                password: [
                idcardinfo: [
                    { required: true, trigger: "blur", validator: validatePass },
                ],
                username: [
                storeaddr: [
                    { required: true, trigger: "blur", validator: validateTruename },
                ],
                // gender: [
                //     { required: true, trigger: "blur" },
                // ],
                isDy: [
                    { required: true, trigger: "blur" },
                ],
                mobile: [
                contact: [
                    { required: true, trigger: "blur", validator: validatePhone },
                ],
                email: [
                storename: [
                    { required: false, trigger: "blur", validator: validateMail },
                ],
                // role: [
                //     { required: true, trigger: "blur", validator: validateRole },
                // ],
                userType: [
                storedesc: [
                    { required: true, trigger: "blur", validator: validateType },
                ],
                zj: [
                    { required: false, trigger: "blur" },
                ],
                departmentId: [
                    { required: true, trigger: "blur", validator: validateDepartment },
                ],
                jobTitle: [
                    { required: true, trigger: "blur", validator: validateWork },
                ],
                // mac: [
                //     { required: false, trigger: "blur", validator: validateMac },
                // ],
                // ip: [
                //     { required: false, trigger: "blur", validator: validateIp },
                // ],
            },
            roleList: [
                { name: '角色1', value: 1 }, { name: '角色2', value: 2 }
src/views/operate/myWait/index.vue
@@ -30,15 +30,18 @@
                    @selection-change="tableChange">
                    <el-table-column type="selection" min-width="5">
                    </el-table-column>
                    <el-table-column prop="number" label="事件编号" min-width="10">
                    <el-table-column prop="code" label="事件编号" min-width="10">
                    </el-table-column>
                    <el-table-column prop="typeThird" label="问题小类" min-width="10">
                    <el-table-column prop="category" label="问题小类" min-width="10">
                    </el-table-column>
                    <el-table-column prop="typeSecond" label="问题描述" min-width="10">
                    <el-table-column prop="eventSource" label="问题描述" min-width="10">
                    </el-table-column>
                    <el-table-column prop="typeFirst" label="创建时间" min-width="10">
                    <el-table-column prop="createTime" label="创建时间" min-width="10">
                    </el-table-column>
                    <el-table-column prop="type" label="剩余时间" min-width="10">
                        <template slot-scope="scope">
                            <span>{{getRestTime(scope.row.limitTime)}}</span>
                        </template>
                    </el-table-column>
                    <el-table-column prop="type" label="问题状态" min-width="10">
                    </el-table-column>
@@ -91,6 +94,7 @@
<script>
import updateUser from "./updateUser"
import createUser from "./createUser"
import {computeTime} from '@/utils/helper'
export default {
    components: {
        updateUser,createUser
@@ -213,44 +217,14 @@
            // èŽ·å–æ‰€æœ‰ç”¨æˆ·ä¿¡æ¯
            this.$axios({
                method: 'get',
                url: `sccg/violations/query?current=${currentPage}&size=${pageSize}&keyWord=${context}`,
                // ?current=${currentPage},&size=${pageSize}&
                url: `sccg/my_backlog/query?num=${context}`,
            })
                .then(res => {
                    this.tableData = res.data.records;
                    this.totalNum = res.data.total;
                    this.tableData = res.data;
                    this.totalNum = res.data.length;
                })
        },
        // search() {
        //     const that = this;
        //     const { currentPage, pageSize, context } = this;
        //     // èŽ·å–æ‰€æœ‰ç”¨æˆ·ä¿¡æ¯
        //     if (context == '') {
        //         this.$axios.get('sccg/role/list?keyword=' + '&pageNum=' + currentPage + '&pageSize=' + pageSize).then(res => {
        //             if (res.code === 200) {
        //                 console.log(res);
        //                 res.data.list.forEach(item => {
        //                     // item.createTime = helper(item.createTime);
        //                     item.status == 1 ? item.status = true : item.status = false;
        //                 })
        //                 that.tableData = res.data.list;
        //                 this.totalNum = res.data.list.length;
        //             }
        //         })
        //     } else {
        //         this.$axios({
        //             method: 'get',
        //             url: 'sccg/role/list?keyword=' + context + '&pageNum=' + currentPage + '&pageSize=' + pageSize,
        //         }).then(res => {
        //             if (res.code === 200) {
        //                 res.data.list.forEach(item => {
        //                     item.status == 1 ? item.status = true : item.status = false;
        //                 })
        //                 that.tableData = res.data.list
        //                 this.totalNum = res.data.list.length;
        //             }
        //         })
        //     }
        // },
        // è®¾ç½®è¡¨æ ¼æ–‘马纹
        tableRowClassName({ row, rowIndex }) {
            if ((rowIndex + 1) % 2 == 0) {
@@ -293,6 +267,10 @@
                    done();
                })
                .catch(_ => { });
        },
        // è®¡ç®—æ—¶é—´
        getRestTime(time2){
            return computeTime(time2);
        }
    }
}
src/views/operate/ͼƬ¹ÜÀí
src/views/operate/ÉóºË¹ÜÀí
src/views/operate/Ö´·¨¹ÜÀí
src/views/operate/ÈÕÖ¾¹ÜÀí
src/views/operate/ÏûÏ¢¹ÜÀí
src/views/operate/¶ÌÐŹÜÀí
src/views/operate/Ë㷨ģÐ͹ÜÀí
src/views/operate/ÊÓÆµ¹ÜÀí
src/views/operate/µ÷¶È¹ÜÀí
src/views/operate/³µÁ¾¹ÜÀí
src/views/systemSetting/baseSetting/department/createUser/index.vue
@@ -54,7 +54,7 @@
        </main>
        <footer>
            <div class="optionBtn">
                <el-button>取消</el-button>
                <el-button @click="handleClose">取消</el-button>
                <el-button type="primary" class="btn submit" @click="handleUser">确定</el-button>
            </div>
        </footer>
@@ -193,8 +193,11 @@
            console.log(this.checkedUser);
            this.openUser = false;
        },
        handleClose(){
            this.$emit('changMyDialog',{flag:false});
        }
    },
    props: ['refresh']
    props: ['refresh','changMyDialog']
}
</script>
<style lang="scss" scoped>
src/views/systemSetting/baseSetting/department/index.vue
@@ -13,7 +13,7 @@
                    <el-button class="addBtn" type="primary" @click="dialogCreate = true">新增部门</el-button>
                    <el-dialog :visible.sync="dialogCreate" title="新增部门信息" width="45%" v-if="dialogCreate"
                        :before-close="handleClose">
                        <createUser :refresh="context==='' ? getUserList : search " />
                        <createUser :refresh="context==='' ? getUserList : search " @changMyDialog="changMyDialog" />
                    </el-dialog>
                </div>
            </div>
@@ -307,8 +307,9 @@
            this.search();
        },
        // å…³é—­dialog
        changMyDialog(val) {
            this.dialogUpdate = val.dialogFlag;
        changMyDialog({flag}) {
            this.dialogUpdate = flag;
            this.dialogCreate = flag;
        },
        handleClose(done) {
            this.$confirm('确认关闭?')
src/views/systemSetting/baseSetting/department/updateUser/index.vue
@@ -147,7 +147,7 @@
                            message:res.message,
                            type:res.code === 200 ? 'success' : 'warning',
                        })
                        this.$emit('changeDialog', { dialogUpdate: false });
                        this.$emit('changeDialog', { flag: false });
                        this.getUserList();
                    })
                } else {
src/views/systemSetting/baseSetting/role/viewRole/index.vue
@@ -6,20 +6,11 @@
                    label-position="right">
                    <!-- è§’色名称 -->
                    <el-form-item class="optionItem" label="角色名称:" prop="name">
                        <el-input v-model="role.name" placeholder="请填写角色名称"></el-input>
                    </el-form-item>
                    <!-- è§’色类型 -->
                    <el-form-item class="optionItems" label="角色类型:" prop="status">
                        <el-input v-model="role.type" placeholder="请选择角色类型"></el-input>
                        <!-- <el-select v-model="role.type" placeholder="请选择角色类型">
                            <el-option v-for="item in typeList" :key="item.name" :label="item.name" :value="item.value"
                                :disabled="item.disabled">
                            </el-option>
                        </el-select> -->
                        <el-input v-model="role.name" placeholder="请填写角色名称" disabled></el-input>
                    </el-form-item>
                    <!-- è§’色描述 -->
                    <el-form-item class="optionItem" label="角色描述:" prop="description">
                        <el-input type="textarea" v-model="role.description" placeholder="请输入描述内容200字以内"></el-input>
                        <el-input type="textarea" v-model="role.description" placeholder="请输入描述内容200字以内" disabled></el-input>
                    </el-form-item>
                </el-form>