“dzb”
2022-10-08 70897b9f8935d377c9e890b4b04966c1d2cd5d82
对接案件池违建部分接口
9个文件已修改
507 ■■■■ 已修改文件
src/views/login/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/baseSetting/violation/createUser/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/index.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/book/index.vue 336 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/ill/index.vue 152 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/operate/disposal/casepool/pool/index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/login/index.vue
@@ -132,7 +132,7 @@
            // 保存token
            sessionStorage.setItem('tokenHead',response.data.tokenHead);
            // 保存用户登录名
            sessionStorage.setItem('name',username)
            sessionStorage.setItem('name',username);
            // 跳转到首页
            that.$router.push("/home");
          }else{
src/views/operate/baseSetting/violation/createUser/index.vue
@@ -151,7 +151,7 @@
                .then(res => {
                    console.log(res);
                    this.eventLevelList = res.data;
                })
                })
        },
        // 提交新增违规类型
        handleSubmit(){
src/views/operate/disposal/casepool/dispatch/index.vue
@@ -74,7 +74,7 @@
                <!-- 上传页面 -->
                <el-dialog :visible.sync="dialogUpload" width="60%" title="上传处置结果"
                    v-if="dialogUpload" :before-close="handleClose">
                    <uploadVio v-if="mystatus === 0" :caseId="caseId" @closeDialog="closeDialog"></uploadVio>
                    <uploadVio v-if="mystatus === 1" :caseId="caseId" @closeDialog="closeDialog"></uploadVio>
                    <uploadIll v-else :caseId="caseId" @closeDialog="closeDialog"></uploadIll>
                </el-dialog>
                <!-- tools -->
@@ -163,7 +163,7 @@
                },
            ],
            statusArr:[],
            mystatus:0,
            mystatus:1,
            caseId:'',
        }
    },
@@ -281,6 +281,7 @@
                }
            })
            this.mystatus = idx + 1;
            console.log(this.mystatus);
            this.statusArr[1] = this.typeList[idx].value;
            this.getUserList();
        },
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/arrive/index.vue
@@ -1,6 +1,6 @@
<template>
    <div class="arrive">
        <div class="arrive-title">到大现场情况</div>
        <div class="arrive-title">到达现场情况</div>
        <div class="arrive-form">
            <el-form ref="arriveForm" label-width="160px" :model="arrive" :rules="arriveRules" autoComplete="on">
                <!-- 到达时间 -->
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/book/index.vue
@@ -2,77 +2,300 @@
    <div class="book">
        <div class="book-title">文种书类</div>
        <div class="book-form">
            <el-form ref="bookForm" label-width="160px" :model="book" :rules="bookRules" autoComplete="on">
                <!-- 文书种类 -->
                <el-form-item label="文书种类:" prop="kind">
                    <el-input v-model="book.kind"></el-input>
                </el-form-item>
                <!-- 文书编号 -->
                <el-form-item label="文书编号:" prop="id">
                    <el-input v-model="book.id"></el-input>
                </el-form-item>
            <el-form ref="bookForm" label-width="120px" :model="book" :rules="bookRules" autoComplete="on">
                <div class="book-item">
                    <!-- 文书种类 -->
                    <el-form-item label="文书种类:" prop="writType">
                        <el-select v-model="book.writType" placeholder="请输入文书种类">
                            <el-option v-for="item in kindList" :key="item.value" :label="item.label"
                                :value="item.value">
                            </el-option>
                        </el-select>
                    </el-form-item>
                    <!-- 文书编号 -->
                    <el-form-item label="文书编号:" prop="writCode">
                        <el-input v-model="book.writCode" placeholder="请输入文书编号"></el-input>
                    </el-form-item>
                </div>
                <!-- 违法类型 -->
                <el-form-item label="违法类型:" prop="vioKind">
                    <el-input v-model="book.vioKind"></el-input>
                <el-form-item label="违法类型:" prop="illegalType" placeholder="请输入违法类型">
                    <el-input v-model="book.illegalType" placeholder="请输入违法类型"></el-input>
                </el-form-item>
                <!-- 文书发放时间 -->
                <el-form-item label="文书发放时间:" prop="giveTime">
                    <el-input v-model="book.giveTime"></el-input>
                <el-form-item label="文书发放时间:" prop="sendTime">
                    <el-date-picker v-model="book.sendTime" type="datetime" placeholder="请选择年月日">
                    </el-date-picker>
                </el-form-item>
                <!-- 文书限定时间 -->
                <el-form-item label="文书限定时间" prop="limitTime">
                    <el-input v-model="book.limitTime"></el-input>
                    <el-date-picker v-model="book.limitTime" type="datetime" placeholder="请选择年月日">
                    </el-date-picker>
                </el-form-item>
                <!-- 文书发放内容 -->
                <el-form-item label="文书发放内容:" prop="content">
                    <el-input v-model="book.content"></el-input>
                <el-form-item label="文书发放内容:" prop="sendContent">
                    <el-input v-model="book.sendContent" placeholder="请输入文书发放内容"></el-input>
                </el-form-item>
                <!-- 实际整改时间 -->
                <el-form-item label="实际整改时间:" prop="updateTime">
                    <el-input v-model="book.updateTime"></el-input>
                <el-form-item label="实际整改时间:" prop="rectifyTime">
                    <el-date-picker v-model="book.rectifyTime" type="datetime" placeholder="请选择年月日">
                    </el-date-picker>
                </el-form-item>
                <!-- 整改情况 -->
                <el-form-item label="整改情况:" prop="condition">
                    <el-input v-model="book.condition"></el-input>
                <el-form-item label="整改情况:" prop="rectifySituation">
                    <el-input v-model="book.rectifySituation" placeholder="请输入整改情况"></el-input>
                </el-form-item>
                <!-- 备注 -->
                <el-form-item label="备注:" prop="note">
                    <el-input v-model="book.note"></el-input>
                <el-form-item label="备注:" prop="remark">
                    <el-input v-model="book.remark" placeholder="请输入备注"></el-input>
                </el-form-item>
                <!-- 文书照片上传 -->
                <el-form-item label="文书照片上传:" prop="bookPhoto">
                    <el-input v-model="book.bookPhoto"></el-input>
                <el-form-item label="文书照片上传:" prop="writPic">
                    <div class="upImg">
                        <div class="img-list">
                            <img :src="item" alt="" v-for="(item,index) in book.writPic" :key="index">
                        </div>
                        <div class="upload" v-if="book.writPic.length<4">
                            <el-upload :file-list="fileList" class="upload-demo"
                                action="http://42.193.1.25:8082/sccg/file/medias" multiple :show-file-list="false"
                                :limit="4" :on-success="handleSuccess1" :headers="getToken()">
                                <i class="el-icon-plus"></i>
                            </el-upload>
                        </div>
                        <div class="tip">{{book.writPic.length}} / 4</div>
                    </div>
                </el-form-item>
                <!-- 整改前照片 -->
                <el-form-item label="整改前照片:" prop="beforeUpdate">
                    <el-input v-model="book.beforeUpdate"></el-input>
                <el-form-item label="整改前照片:" prop="originalPic">
                    <div class="upImg">
                        <div class="img-list">
                            <img :src="item" alt="" v-for="(item,index) in book.originalPic" :key="index">
                        </div>
                        <div class="upload" v-if="book.originalPic.length<4">
                            <el-upload :file-list="fileList" class="upload-demo"
                                action="http://42.193.1.25:8082/sccg/file/medias" multiple :show-file-list="false"
                                :limit="4" :on-success="handleSuccess2" :headers="getToken()">
                                <i class="el-icon-plus"></i>
                            </el-upload>
                        </div>
                        <div class="tip">{{book.originalPic.length}} / 4</div>
                    </div>
                </el-form-item>
                <!-- 整改后照片 -->
                <el-form-item label="整改后照片:" prop="afterUpdate">
                    <el-input v-model="book.afterUpdate"></el-input>
                <el-form-item label="整改后照片:" prop="rectifiedPic">
                    <div class="upImg">
                        <div class="img-list">
                            <img :src="item" alt="" v-for="(item,index) in book.rectifiedPic" :key="index">
                        </div>
                        <div class="upload" v-if="book.rectifiedPic.length<4">
                            <el-upload :file-list="fileList" class="upload-demo"
                                action="http://42.193.1.25:8082/sccg/file/medias" multiple :show-file-list="false"
                                :limit="4" :on-success="handleSuccess3" :headers="getToken()">
                                <i class="el-icon-plus"></i>
                            </el-upload>
                        </div>
                        <div class="tip">{{book.rectifiedPic.length}} / 4</div>
                    </div>
                </el-form-item>
                <!-- 其他照片 -->
                <el-form-item label="其他:" prop="other">
                    <el-input v-model="book.other"></el-input>
                <el-form-item label="其他:" prop="otherPic">
                    <div class="upImg">
                        <div class="img-list">
                            <img :src="item" alt="" v-for="(item,index) in book.otherPic" :key="index">
                        </div>
                        <div class="upload" v-if="book.otherPic.length<4">
                            <el-upload :file-list="fileList" class="upload-demo"
                                action="http://42.193.1.25:8082/sccg/file/medias" multiple :show-file-list="false"
                                :limit="4" :on-success="handleSuccess4" :headers="getToken()">
                                <i class="el-icon-plus"></i>
                            </el-upload>
                        </div>
                        <div class="tip">{{book.otherPic.length}} / 4</div>
                    </div>
                </el-form-item>
            </el-form>
        </div>
    </div>
</template>
<script>
    export default{
        data(){
            return{
                book:{},
                bookRules:{
                }
export default {
    data() {
        const checkKind = (rule, value, callback) => {
            if (value) {
                callback();
            } else {
                callback(new Error('文书种类不能为空'));
            }
        }
        const checkId = (rule, value, callback) => {
            if (value) {
                callback();
            } else {
                callback(new Error('文书编号不能为空'));
            }
        }
        const checkGiveTime = (rule, value, callback) => {
            if (value) {
                callback();
            } else {
                callback(new Error('发放时间不能为空'));
            }
        }
        const checkUpTime = (rule, value, callback) => {
            if (value) {
                callback();
            } else {
                callback(new Error('实际整改时间不能为空'));
            }
        }
        const checkNote = (rule, value, callback) => {
            if (value) {
                callback();
            } else {
                callback();
            }
        }
        const checkCondition = (rule, value, callback) => {
            if (value) {
                callback();
            } else {
                callback(new Error('整改情况不能为空'));
            }
        }
        const checkLimTime = (rule, value, callback) => {
            if (value) {
                callback();
            } else {
                callback(new Error('限定时间不能为空'));
            }
        }
        const checkVio = (rule, value, callback) => {
            if (value) {
                callback();
            } else {
                callback(new Error('违法类型不能为空'));
            }
        }
        const checkContent = (rule, value, callback) => {
            if (value) {
                callback();
            } else {
                callback(new Error('发放内容不能为空'));
            }
        }
        return {
            book: {
                writPic: [],
                otherPic: [],
                rectifiedPic: [],
                originalPic: [],
            },
            bookRules: {
                writType: [
                    {
                        trigger: 'blur', validator: checkKind
                    }
                ],
                idwritCode: [
                    {
                        trigger: 'blur', validator: checkId
                    }
                ],
                illegalType: [
                    {
                        trigger: 'blur', validator: checkVio
                    }
                ],
                sendTime: [
                    {
                        trigger: 'blur', validator: checkGiveTime
                    }
                ],
                limitTime: [
                    {
                        trigger: 'blur', validator: checkLimTime
                    }
                ],
                sendContent: [
                    {
                        trigger: 'blur', validator: checkContent
                    }
                ],
                rectifyTime: [
                    {
                        trigger: 'blur', validator: checkUpTime
                    }
                ],
                rectifySituation: [
                    {
                        trigger: 'blur', validator: checkCondition
                    }
                ],
                noremark: [
                    {
                        trigger: 'blur', validator: checkNote
                    }
                ],
            },
            fileList: [],
            kindList: [
                {
                    label: '书籍1',
                    value: 1,
                },
                {
                    label: '书籍2',
                    value: 2,
                },
            ]
        }
    },
    created() {
        console.log(this.book.writPic)
    },
    props: ['caseId', 'closeDialog'],
    methods: {
        handleSuccess1(res, file, filelist) {
            const baseUrl = 'http://140.143.152.226:8410/';
            console.log(res);
            // this.$set(this.book, 'writPic', baseUrl + res.data.url1);
            // console.log(this.book.writPic);
            if (this.book.writPic.length < 4) {
                this.book.writPic.push(baseUrl + res.data.url1)
            }
        },
        handleSuccess2(res, file, filelist) {
            const baseUrl = 'http://140.143.152.226:8410/';
            console.log(res);
            if (this.book.originalPic.length < 4) {
                this.book.originalPic.push(baseUrl + res.data.url1)
            }
        },
        handleSuccess3(res, file, filelist) {
            const baseUrl = 'http://140.143.152.226:8410/';
            console.log(res);
            if (this.book.rectifiedPic.length < 4) {
                this.book.rectifiedPic.push(baseUrl + res.data.url1)
            }
        },
        handleSuccess4(res, file, filelist) {
            const baseUrl = 'http://140.143.152.226:8410/';
            console.log(res);
            if (this.book.otherPic.length < 4) {
                this.book.otherPic.push(baseUrl + res.data.url1)
            }
        },
        getToken() {
            const token = sessionStorage.getItem('token');
            const tokenHead = sessionStorage.getItem('tokenHead');
            if (token && tokenHead) {
                return { Authorization: tokenHead + token }
            }
        },
    }
}
</script>
<style lang="scss" scoped>
.book-title{
.book-title {
    line-height: 60px;
    font-weight: 650;
    font-size: 20px;
@@ -81,6 +304,43 @@
    text-align: right;
    color: #4b9bb7;
}
.book-item {
    display: flex;
    width: 100%;
}
.upload {
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    background-color: #fbfdff;
    border-radius: 4px;
}
.upImg {
    display: flex;
    .tip {
        position: absolute;
        bottom: 0;
        right: 0;
    }
    .img-list {
        height: 80px;
        position: relative;
        img {
            width: 60px;
            height: 60px;
        }
    }
}
::v-deep .el-textarea__inner {
    background-color: #09152f;
    border: 1px solid #17324c;
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/components/evidence/index.vue
@@ -58,7 +58,7 @@
            </div>
            <div class="user-form-content">
                <el-form ref="userForm" label-width="120px" :model="user" :rules="userRules" autoComplete="on">
                    <!-- 违法类型 -->
                    <!-- 类型 -->
                    <el-form-item label="类型:" prop="illegalType">
                        <el-select v-model="user.illegalType" placeholder="请选择">
                            <el-option v-for="item in typeOptions" :key="item.value" :label="item.label"
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/ill/index.vue
@@ -1,11 +1,14 @@
<template>
    <div class="ill">
        <!-- 到达现场情况 -->
        <MyArrive></MyArrive>
        <MyArrive ref="arrive"></MyArrive>
        <!-- 调查取证 -->
        <MyEvidence></MyEvidence>
        <MyEvidence ref="evidence"></MyEvidence>
        <!-- 文种书类 -->
        <MyBook></MyBook>
        <MyBook ref="book"></MyBook>
        <!-- <div class="result">
            <el-input v-model="result" placeholder="请输入处理意见"></el-input>
        </div> -->
        <!-- 底部按钮 -->
        <div class="footer">
            <el-button @click="handleSubmit" type="primary">确定</el-button>
@@ -18,31 +21,148 @@
import MyEvidence from "../components/evidence"
import MyBook from "../components/book"
export default {
    components:{
        MyArrive,MyEvidence,MyBook
    components: {
        MyArrive, MyEvidence, MyBook
    },
    data() {
        return {
            // result:'',
        }
    },
    props:['caseId'],
    created(){
    props: ['caseId'],
    created() {
        console.log(this.caseId);
        this.getUserId();
    },
    methods:{
        handleSubmit(){
    methods: {
        handleSubmit() {
            const { arrive, evidence, book } = this.$refs;
            const { arriveForm } = arrive.$refs;
            const { evidenceForm } = evidence.$refs;
            const { bookForm } = book.$refs;
            arriveForm.validate((valid) => {
                if (valid) {
                    console.log(valid);
                    evidenceForm.validate((flag) => {
                        if (flag) {
                            console.log(flag);
                            bookForm.validate((bookFlag) => {
                                console.log(bookFlag);
                                if (bookFlag) {
                                    this.$axios({
                                        method: 'post',
                                        url: `sccg/dispatch_handle/addition_dispose_result?caseId=${this.caseId}&type=2`,
                                        data: {
                                            arrivalAddress: arrive.arrive.arrivalAddress,
                                            arrivalTime: arrive.arrive.arrivalTime,
                                            situationExplain: arrive.arrive.situationExplain,
                                            replyExplain: arrive.arrive.replyExplain,
                                            situationPic: `${arrive.arrive.situationPic}`,
                                            //
                                            undertaker: evidence.evidence.undertaker,
                                            assistant: evidence.evidence.assistant,
                                            investigationTime: evidence.evidence.investigationTime,
                                            address: evidence.evidence.address,
                                            caseAction: evidence.evidence.caseAction,
                                            description: evidence.evidence.description,
                                            pic: `${evidence.evidence.pic}`,
                                            //
                                            illegalType: evidence.user.illegalType,
                                            name: evidence.user.name,
                                            phoneCode: evidence.user.phoneCode,
                                            certificateType: `${evidence.user.certificateType}`,
                                            certificateCode: evidence.user.certificateCode,
                                            educationDegree: `${evidence.user.educationDegree}`,
                                            career: evidence.user.career,
                                            work: evidence.user.work,
                                            nation: evidence.user.nation,
                                            nativePlace: evidence.user.nativePlace,
                                            liveAddress: evidence.user.liveAddress,
                                            registerAddress: evidence.user.registerAddress,
                                            //
                                            writType: book.book.writType,
                                            writCode: book.book.writCode,
                                            // illegalType: book.book.illegalType,
                                            sendTime: book.book.sendTime,
                                            limitTime: book.book.limitTime,
                                            sendContent: book.book.sendContent,
                                            rectifySituation:book.book.rectifySituation,
                                            rectifyTime: book.book.rectifyTime,
                                            remark: book.book.remark,
                                            writPic: `${book.book.writPic}`,
                                            originalPic: `${book.book.originalPic}`,
                                            rectifiedPic: `${book.book.rectifiedPic}`,
                                            otherPic: `${book.book.otherPic}`,
                                        }
                                    })
                                        .then(res => {
                                            console.log(res);
                                            if (res.code === 200) {
                                                this.$message({
                                                    type: 'success',
                                                    message: '上传成功',
                                                })
                                                this.$emit('closeDialog', { flag: false });
                                            } else {
                                                this.$message({
                                                    type: 'warning',
                                                    message: res.message
                                                })
                                            }
                                        })
                                } else {
                                    return false;
                                }
                            })
                        } else {
                            return false;
                        }
                    })
                } else {
                    evidenceForm.validate((flag) => {
                        if (!flag) {
                            console.log(bookForm);
                            bookForm.validate((bookFlag) => {
                                console.log(bookFlag);
                                if (!bookFlag) {
                                    return false;
                                }
                            })
                            return false;
                        } else {
                            bookForm.validate((bookFlag) => {
                                if (!bookFlag) {
                                    return false
                                }
                            })
                        }
                    })
                    return false;
                }
            })
        },
        // 获取用户id
        getUserId(){
            const myname = sessionStorage.getItem('name');
            this.$axios({
                method:'get',
                url:'sccg/admin/info?name='+myname,
            })
            .then(res=>{
                console.log(res);
            })
        }
    }
}
</script>
<style lang="scss" scoped>
    .ill{
        padding: 20px 200px;
    }
.ill {
    padding: 20px 200px;
}
.footer {
        display: flex;
        justify-content: flex-end;
    }
    display: flex;
    justify-content: flex-end;
}
</style>
src/views/operate/disposal/casepool/dispatch/updateUser/uploadResult/vio/index.vue
@@ -41,7 +41,7 @@
                            // arrive.arrive;evidence.user;evidence.evidence;
                            this.$axios({
                                method: 'post',
                                url: `sccg/dispatch_handle/addition_dispose_result/${this.caseId}/${1}`,
                                url: `sccg/dispatch_handle/addition_dispose_result?caseId=`+this.caseId+'&type=1',
                                data:{
                                    arrivalAddress: arrive.arrive.arrivalAddress,
                                    arrivalTime: arrive.arrive.arrivalTime,
src/views/operate/disposal/casepool/pool/index.vue
@@ -335,6 +335,10 @@
                this.tableData = res.data.records;
                console.log(res);
            })
            .catch(err=>{
                console.log(err)
                this.tableData = [];
            })
        },
        // 设置表格斑马纹
        tableRowClassName({ row, rowIndex }) {