| | |
| | | }) |
| | | return arr; |
| | | } |
| | | // 获取字典表2 |
| | | export async function getCodeList(code){ |
| | | let arr; |
| | | await myrequest({ |
| | | method: 'get', |
| | | url: `/sccg/dict/queryByCode?code=${code}` |
| | | }) |
| | | .then(res => { |
| | | arr = res.data; |
| | | }) |
| | | return arr; |
| | | } |
| | | export async function myDownLoad(arr){ |
| | | let fileName = arr.headers['content-disposition']; |
| | | console.log(fileName); |
| | |
| | | </el-form-item> |
| | | <!-- 所属部门 --> |
| | | <el-form-item class="optionItems" label="所属部门:" prop="depart"> |
| | | <el-input v-model="car.depart" placeholder="请填写所属部门"></el-input> |
| | | <!-- <el-select v-model="car.group" placeholder="请选择所属类型"> |
| | | <el-option v-for="item in teamList" :key="item.value" :label="item.label" |
| | | :value="item.value"> |
| | | <!-- <el-input v-model="car.depart" placeholder="请填写所属部门"></el-input> --> |
| | | <el-select v-model="car.belong" placeholder="请选择所属部门"> |
| | | <el-option value="1"> |
| | | <el-tree ref="tree" :check-strictly="true" :data="departList" :props="defaultProps" |
| | | show-checkbox @check-change="handleCheck" default-expand-all node-key="id"> |
| | | </el-tree> |
| | | </el-option> |
| | | </el-select> --> |
| | | </el-form-item> |
| | | <!-- 所属大队 --> |
| | | <el-form-item class="optionItems" label="所属大队:" prop="belong"> |
| | | <el-input v-model="car.belong" placeholder="请填写所属大队"></el-input> |
| | | <!-- <el-select v-model="car.group" placeholder="请选择所属类型"> |
| | | <el-option v-for="item in teamList" :key="item.value" :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> --> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- 车主姓名 --> |
| | | <el-form-item class="optionItem" label="车主姓名:" prop="ownerName"> |
| | |
| | | <!-- 联系方式 --> |
| | | <el-form-item class="optionItem" label="联系方式:" prop="contact"> |
| | | <el-input v-model="car.contact" placeholder="请输入车主手机号码"></el-input> |
| | | </el-form-item> |
| | | <!-- 轨迹 --> |
| | | <el-form-item class="optionItem" label="轨迹:" prop="trajectory"> |
| | | <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="请输入车辆轨迹"></el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <div class="optionBtn"> |
| | |
| | | </div> |
| | | </template> |
| | | <script> |
| | | import {validateCarNum,validatePhone,validateName} from '@/utils/validate' |
| | | import { validateCarNum, validatePhone, validateName } from '@/utils/validate' |
| | | export default { |
| | | data() { |
| | | const checkCarNum = (rule, value, callback) => { |
| | | if (value) { |
| | | if(validateCarNum(value)){ |
| | | if (validateCarNum(value)) { |
| | | callback() |
| | | }else{ |
| | | } else { |
| | | callback(new Error('请输入正确的车牌号')); |
| | | } |
| | | } else { |
| | |
| | | } |
| | | const checkName = (rule, value, callback) => { |
| | | if (value) { |
| | | if(validateName(value)){ |
| | | if (validateName(value)) { |
| | | callback() |
| | | }else{ |
| | | } else { |
| | | callback(new Error('请正确输入车主姓名')); |
| | | } |
| | | } else { |
| | |
| | | } |
| | | const checkUser = (rule, value, callback) => { |
| | | if (value) { |
| | | if(validateName(value)){ |
| | | if (validateName(value)) { |
| | | callback() |
| | | }else{ |
| | | } else { |
| | | callback(new Error('请正确输入车辆使用人员')); |
| | | } |
| | | } else { |
| | |
| | | } |
| | | const checkPhone = (rule, value, callback) => { |
| | | if (value) { |
| | | if(validatePhone(value)){ |
| | | if (validatePhone(value)) { |
| | | callback() |
| | | }else{ |
| | | } else { |
| | | callback(new Error('请输入正确的手机号')); |
| | | } |
| | | } else { |
| | |
| | | ownerName: "", |
| | | trajectory: "", |
| | | vehicleUser: "", |
| | | depart:'', |
| | | depart: '', |
| | | }, |
| | | createCarRules: { |
| | | carNumber: [ |
| | | { |
| | | required: true, trigger:'blur', validator: checkCarNum |
| | | required: true, trigger: 'blur', validator: checkCarNum |
| | | } |
| | | ], |
| | | contact: [ |
| | | { |
| | | required: true,trigger:'blur', validator: checkPhone |
| | | required: true, trigger: 'blur', validator: checkPhone |
| | | } |
| | | ], |
| | | // id: 0, |
| | | ownerName: [ |
| | | { |
| | | required: true,trigger:'blur', validator: checkName |
| | | required: true, trigger: 'blur', validator: checkName |
| | | } |
| | | ], |
| | | vehicleUser: [ |
| | | { |
| | | required: true,trigger:'blur', validator: checkUser |
| | | required: true, trigger: 'blur', validator: checkUser |
| | | } |
| | | ] |
| | | }, |
| | |
| | | label: '大队二', |
| | | value: 2, |
| | | }, |
| | | ] |
| | | ], |
| | | selectOrg: { |
| | | orgsid: [], |
| | | }, |
| | | mylabel: '', |
| | | departList: [], |
| | | defaultProps: { |
| | | children: "children", |
| | | label: "departName", |
| | | }, |
| | | } |
| | | }, |
| | | created() { |
| | | // 获取全部部门列表 |
| | | this.$axios.get('/sccg/depart/tree').then(res => { |
| | | this.departList = res.data; |
| | | }) |
| | | }, |
| | | methods: { |
| | | // 添加车辆 |
| | |
| | | console.log(this.car); |
| | | this.$refs.user.validate((valid) => { |
| | | if (valid) { |
| | | const {car} = this; |
| | | const { car } = this; |
| | | this.$axios({ |
| | | method: 'post', |
| | | url: 'sccg/car_Manage/addition_enforce', |
| | |
| | | ownerName: car.ownerName, |
| | | trajectory: car.trajectory, |
| | | vehicleUser: car.vehicleUser, |
| | | depart:car.depart, |
| | | depart: car.depart, |
| | | } |
| | | }) |
| | | .then(res=>{ |
| | | console.log(res); |
| | | if(res.code === 200){ |
| | | this.$message({ |
| | | type:'success', |
| | | message:'新增车辆成功', |
| | | }) |
| | | this.$emit('closeDialog',{flag:false,index:1}); |
| | | }else{ |
| | | this.$message({ |
| | | type:'error', |
| | | message:res.message, |
| | | }) |
| | | } |
| | | }) |
| | | .then(res => { |
| | | console.log(res); |
| | | if (res.code === 200) { |
| | | this.$message({ |
| | | type: 'success', |
| | | message: '新增车辆成功', |
| | | }) |
| | | this.$emit('closeDialog', { flag: false, index: 1 }); |
| | | } else { |
| | | this.$message({ |
| | | type: 'error', |
| | | message: res.message, |
| | | }) |
| | | } |
| | | }) |
| | | } else { |
| | | return false; |
| | | } |
| | | }) |
| | | }, |
| | | handleStop(){ |
| | | this.$emit('closeDialog',{flag:false,index:0}); |
| | | } |
| | | handleStop() { |
| | | this.$emit('closeDialog', { flag: false, index: 0 }); |
| | | }, |
| | | // 部门修改 |
| | | handleCheck(data, checked) { |
| | | console.log(data); |
| | | this.car.belong = data.departName |
| | | this.car.depart = data.id |
| | | // 获取当前选择的id在数组中的索引 |
| | | const indexs = this.selectOrg.orgsid.indexOf(data.id); |
| | | // 如果不存在数组中,并且数组中已经有一个id并且checked为true的时候,代表不能再次选择。 |
| | | if (indexs < 0 && this.selectOrg.orgsid.length === 1 && checked) { |
| | | this.$message({ |
| | | message: "只能选择一个部门!", |
| | | type: "warning", |
| | | showClose: true, |
| | | }); |
| | | // 设置已选择的节点为false 很重要 |
| | | this.$refs.tree.setChecked(data, false); |
| | | } else if (this.selectOrg.orgsid.length === 0 && checked) { |
| | | // 发现数组为空 并且是已选择 |
| | | // 防止数组有值,首先清空,再push |
| | | this.selectOrg.orgsid = []; |
| | | this.selectOrg.orgsid.push(data.id); |
| | | } else if ( |
| | | indexs >= 0 && |
| | | this.selectOrg.orgsid.length === 1 && |
| | | !checked |
| | | ) { |
| | | // 再次直接进行赋值为空操作 |
| | | this.selectOrg.orgsid = []; |
| | | this.car.belong = '' |
| | | this.car.depart = '' |
| | | } |
| | | }, |
| | | |
| | | }, |
| | | props: ['closeDialog'] |
| | |
| | | <el-form-item class="optionItems" label="施工地址:" prop="geographicPosition"> |
| | | <el-input v-model="car.geographicPosition" placeholder="请填写施工地址"></el-input> |
| | | </el-form-item> |
| | | <!-- 轨迹 --> |
| | | <el-form-item class="optionItem" label="轨迹:" prop="trajectory"> |
| | | <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="请输入车辆轨迹"></el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <div class="optionBtn"> |
| | | <el-button type="primary" class="btn submit" @click.native.prevent="handleCar">确认 |
New file |
| | |
| | | <template> |
| | | <div class="createUser"> |
| | | <main> |
| | | <div class="mainContent"> |
| | | <el-form ref="user" label-width="140px" :rules="createCarRules" autoComplete="on" :model="car" |
| | | label-position="right"> |
| | | <!-- 车牌号 --> |
| | | <el-form-item class="optionItem" label="车牌号:" prop="carNumber"> |
| | | <el-input v-model="car.carNumber" placeholder="请填写车牌号"></el-input> |
| | | </el-form-item> |
| | | <!-- 所属部门 --> |
| | | <el-form-item class="optionItems" label="所属部门:" prop="depart"> |
| | | <!-- <el-input v-model="car.depart" placeholder="请填写所属部门"></el-input> --> |
| | | <el-select v-model="car.belong" placeholder="请选择所属部门"> |
| | | <el-option value="1"> |
| | | <el-tree ref="tree" :check-strictly="true" :data="departList" :props="defaultProps" |
| | | show-checkbox @check-change="handleCheck" default-expand-all node-key="id"> |
| | | </el-tree> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- 车主姓名 --> |
| | | <el-form-item class="optionItem" label="车主姓名:" prop="ownerName"> |
| | | <el-input v-model="car.ownerName" placeholder="请输入车主姓名"></el-input> |
| | | </el-form-item> |
| | | <!-- 车辆使用人员 --> |
| | | <el-form-item class="optionItem" label="车辆使用人员:" prop="vehicleUser"> |
| | | <el-input v-model="car.vehicleUser" placeholder="请输入车辆使用人员"></el-input> |
| | | </el-form-item> |
| | | <!-- 联系方式 --> |
| | | <el-form-item class="optionItem" label="联系方式:" prop="contact"> |
| | | <el-input v-model="car.contact" placeholder="请输入车主手机号码"></el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <div class="optionBtn"> |
| | | <el-button type="primary" class="btn submit" @click.native.prevent="handleUpdateLawCar">确认 |
| | | </el-button> |
| | | </div> |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | | </div> |
| | | </main> |
| | | </div> |
| | | </template> |
| | | <script> |
| | | import { validateCarNum, validatePhone, validateName } from '@/utils/validate' |
| | | export default { |
| | | data() { |
| | | const checkCarNum = (rule, value, callback) => { |
| | | if (value) { |
| | | if (validateCarNum(value)) { |
| | | callback() |
| | | } else { |
| | | callback(new Error('请输入正确的车牌号')); |
| | | } |
| | | } else { |
| | | callback(new Error('车牌号不能为空')); |
| | | } |
| | | } |
| | | const checkName = (rule, value, callback) => { |
| | | if (value) { |
| | | if (validateName(value)) { |
| | | callback() |
| | | } else { |
| | | callback(new Error('请正确输入车主姓名')); |
| | | } |
| | | } else { |
| | | callback(new Error('车主姓名不能为空')); |
| | | } |
| | | } |
| | | const checkUser = (rule, value, callback) => { |
| | | if (value) { |
| | | if (validateName(value)) { |
| | | callback() |
| | | } else { |
| | | callback(new Error('请正确输入车辆使用人员')); |
| | | } |
| | | } else { |
| | | callback(new Error('车辆使用人员不能为空')); |
| | | } |
| | | } |
| | | const checkPhone = (rule, value, callback) => { |
| | | if (value) { |
| | | if (validatePhone(value)) { |
| | | callback() |
| | | } else { |
| | | callback(new Error('请输入正确的手机号')); |
| | | } |
| | | } else { |
| | | callback(new Error('手机号码不能为空')); |
| | | } |
| | | } |
| | | return { |
| | | car: { |
| | | carNumber: "", |
| | | contact: "", |
| | | belong: "", |
| | | // id: 0, |
| | | ownerName: "", |
| | | trajectory: "", |
| | | vehicleUser: "", |
| | | depart: '', |
| | | }, |
| | | createCarRules: { |
| | | carNumber: [ |
| | | { |
| | | required: true, trigger: 'blur', validator: checkCarNum |
| | | } |
| | | ], |
| | | contact: [ |
| | | { |
| | | required: true, trigger: 'blur', validator: checkPhone |
| | | } |
| | | ], |
| | | // id: 0, |
| | | ownerName: [ |
| | | { |
| | | required: true, trigger: 'blur', validator: checkName |
| | | } |
| | | ], |
| | | vehicleUser: [ |
| | | { |
| | | required: true, trigger: 'blur', validator: checkUser |
| | | } |
| | | ] |
| | | }, |
| | | selectOrg: { |
| | | orgsid: [], |
| | | }, |
| | | mylabel: '', |
| | | departList: [], |
| | | defaultProps: { |
| | | children: "children", |
| | | label: "departName", |
| | | }, |
| | | } |
| | | }, |
| | | created() { |
| | | console.log(this.info); |
| | | const {getDepartTree} = this |
| | | // 初始化部门树 |
| | | getDepartTree(); |
| | | // 初始化数据 |
| | | this.car = JSON.parse(JSON.stringify(this.info)); |
| | | |
| | | }, |
| | | methods: { |
| | | // 修改执法车 |
| | | handleUpdateLawCar() { |
| | | this.$refs.user.validate((valid) => { |
| | | if (valid) { |
| | | const { car } = this; |
| | | this.$axios({ |
| | | method: 'put', |
| | | url: 'sccg/car_Manage/modification_enforce', |
| | | data: { |
| | | ...car |
| | | } |
| | | }) |
| | | .then(res => { |
| | | console.log(res); |
| | | if (res.code === 200) { |
| | | this.$message({ |
| | | type: 'success', |
| | | message: '修改车辆成功', |
| | | }) |
| | | this.$emit('closeDialog', { flag: false, index: 1 }); |
| | | } else { |
| | | this.$message({ |
| | | type: 'error', |
| | | message: res.message, |
| | | }) |
| | | } |
| | | }) |
| | | } else { |
| | | return false; |
| | | } |
| | | }) |
| | | }, |
| | | // 部门修改 |
| | | handleCheck(data, checked) { |
| | | console.log(data); |
| | | this.car.belong = data.departName |
| | | this.car.depart = data.id |
| | | // 获取当前选择的id在数组中的索引 |
| | | const indexs = this.selectOrg.orgsid.indexOf(data.id); |
| | | // 如果不存在数组中,并且数组中已经有一个id并且checked为true的时候,代表不能再次选择。 |
| | | if (indexs < 0 && this.selectOrg.orgsid.length === 1 && checked) { |
| | | this.$message({ |
| | | message: "只能选择一个部门!", |
| | | type: "warning", |
| | | showClose: true, |
| | | }); |
| | | // 设置已选择的节点为false 很重要 |
| | | this.$refs.tree.setChecked(data, false); |
| | | } else if (this.selectOrg.orgsid.length === 0 && checked) { |
| | | // 发现数组为空 并且是已选择 |
| | | // 防止数组有值,首先清空,再push |
| | | this.selectOrg.orgsid = []; |
| | | this.selectOrg.orgsid.push(data.id); |
| | | } else if ( |
| | | indexs >= 0 && |
| | | this.selectOrg.orgsid.length === 1 && |
| | | !checked |
| | | ) { |
| | | // 再次直接进行赋值为空操作 |
| | | this.selectOrg.orgsid = []; |
| | | this.car.belong = '' |
| | | this.car.depart = '' |
| | | } |
| | | }, |
| | | // 获取部门树 |
| | | getDepartTree() { |
| | | this.$axios.get('/sccg/depart/tree').then(res => { |
| | | this.departList = res.data; |
| | | }) |
| | | } |
| | | |
| | | |
| | | }, |
| | | props: ['info','closeDialog'] |
| | | } |
| | | </script> |
| | | <style lang="scss" scoped> |
| | | .createUser { |
| | | border-radius: 1px; |
| | | background-color: #09152f; |
| | | |
| | | main { |
| | | // border: 1px solid #fff; |
| | | text-align: left; |
| | | padding: 0 55px; |
| | | background-color: #09152f; |
| | | padding-bottom: 50px; |
| | | |
| | | .mainContent { |
| | | display: flex; |
| | | justify-content: center; |
| | | padding-top: 50px; |
| | | |
| | | .el-form-item__content { |
| | | width: 400px; |
| | | |
| | | .el-select { |
| | | width: 100%; |
| | | } |
| | | } |
| | | |
| | | .optionHandleSp { |
| | | display: flex; |
| | | |
| | | .areaNumber, |
| | | .moreNumber { |
| | | flex: 1; |
| | | } |
| | | |
| | | .telNumber { |
| | | flex: 2; |
| | | } |
| | | } |
| | | |
| | | .optionBtn { |
| | | display: flex; |
| | | margin-top: 20px; |
| | | |
| | | .btn { |
| | | padding: 12px 50px; |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | &::v-deep .el-textarea__inner { |
| | | background-color: #09152f; |
| | | border: 1px solid #17324c; |
| | | } |
| | | |
| | | ::v-deep .el-form-item__label { |
| | | color: #4b9bb7; |
| | | } |
| | | |
| | | ::v-deep .el-input__inner { |
| | | background-color: #09152f; |
| | | border: 1px solid #17324c; |
| | | } |
| | | } |
| | | </style> |
New file |
| | |
| | | <template> |
| | | <div class="createUser"> |
| | | <main> |
| | | <div class="mainContent"> |
| | | <el-form ref="user" label-width="140px" :rules="createCarRules" autoComplete="on" :model="car" |
| | | label-position="right"> |
| | | <!-- 车牌号 --> |
| | | <el-form-item class="optionItem" label="车牌号:" prop="carNumber"> |
| | | <el-input v-model="car.carNumber" placeholder="请填写车牌号"></el-input> |
| | | </el-form-item> |
| | | <!-- 车型 --> |
| | | <el-form-item class="optionItems" label="车型:" prop="carModel"> |
| | | <el-select v-model="car.carModel" placeholder="请选择车型"> |
| | | <el-option v-for="item in carTypeList" :key="item.value" :label="item.label" |
| | | :value="item.label"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- 车主姓名 --> |
| | | <el-form-item class="optionItem" label="车主姓名:" prop="ownerName"> |
| | | <el-input v-model="car.ownerName" placeholder="请输入车主姓名"></el-input> |
| | | </el-form-item> |
| | | <!-- 车辆使用人员 --> |
| | | <el-form-item class="optionItem" label="车辆使用人员:" prop="vehicleUser"> |
| | | <el-input v-model="car.vehicleUser" placeholder="请输入车辆使用人员"></el-input> |
| | | </el-form-item> |
| | | <!-- 联系方式 --> |
| | | <el-form-item class="optionItem" label="联系方式:" prop="contact"> |
| | | <el-input v-model="car.contact" placeholder="请输入车主手机号码"></el-input> |
| | | </el-form-item> |
| | | <!-- 施工单位 --> |
| | | <el-form-item class="optionItems" label="施工单位:" prop="constructionOrg"> |
| | | <el-input v-model="car.constructionOrg" placeholder="请填写施工单位"></el-input> |
| | | </el-form-item> |
| | | <!-- 施工地址 --> |
| | | <el-form-item class="optionItems" label="施工地址:" prop="geographicPosition"> |
| | | <el-input v-model="car.geographicPosition" placeholder="请填写施工地址"></el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <div class="optionBtn"> |
| | | <el-button type="primary" class="btn submit" @click.native.prevent="handleCar">确认 |
| | | </el-button> |
| | | </div> |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | | </div> |
| | | </main> |
| | | </div> |
| | | </template> |
| | | <script> |
| | | import {validateName,validatePhone,validateCarNum} from '@/utils/validate' |
| | | export default { |
| | | data() { |
| | | const checkCarNum = (rule, value, callback) => { |
| | | if (value) { |
| | | if(validateCarNum(value)){ |
| | | callback(); |
| | | }else{ |
| | | callback(new Error('请输入正确的车牌号')); |
| | | } |
| | | } else { |
| | | callback(new Error('车牌号不能为空')); |
| | | } |
| | | } |
| | | const checkName = (rule, value, callback) => { |
| | | if (value) { |
| | | if(validateName(value)){ |
| | | callback(); |
| | | }else{ |
| | | callback(new Error('请输入正确的车主姓名')) |
| | | } |
| | | } else { |
| | | callback(new Error('车主姓名不能为空')); |
| | | } |
| | | } |
| | | const checkUser = (rule, value, callback) => { |
| | | if (value) { |
| | | if(validateName(value)){ |
| | | callback(); |
| | | }else{ |
| | | callback(new Error('请正确输入车辆使用人员')) |
| | | } |
| | | } else { |
| | | callback(new Error('车辆使用人员不能为空')); |
| | | } |
| | | } |
| | | const checkPhone = (rule, value, callback) => { |
| | | if (value) { |
| | | if(validatePhone(value)){ |
| | | callback(); |
| | | }else{ |
| | | callback(new Error('请输入正确的手机号')) |
| | | } |
| | | } else { |
| | | callback(new Error('手机号码不能为空')); |
| | | } |
| | | } |
| | | const checkCarModel = (rule, value, callback) => { |
| | | if (value) { |
| | | callback(); |
| | | } else { |
| | | callback(new Error('车辆型号不能为空')); |
| | | } |
| | | } |
| | | const checkOrg = (rule, value, callback) => { |
| | | if (value) { |
| | | callback(); |
| | | } else { |
| | | callback(new Error('施工单位不能为空')); |
| | | } |
| | | } |
| | | const checkPosition = (rule, value, callback) => { |
| | | if (value) { |
| | | callback(); |
| | | } else { |
| | | callback(new Error('施工地址不能为空')); |
| | | } |
| | | } |
| | | return { |
| | | car: { |
| | | carNumber: "", |
| | | contact: "", |
| | | belong: "", |
| | | // id: 0, |
| | | ownerName: "", |
| | | trajectory: "", |
| | | vehicleUser: "", |
| | | constructionOrg: '', |
| | | }, |
| | | createCarRules: { |
| | | carNumber: [ |
| | | { |
| | | required: true, trigger:'blur', validator: checkCarNum |
| | | } |
| | | ], |
| | | carModel: [ |
| | | { |
| | | required: true, trigger:'change',validator: checkCarModel |
| | | } |
| | | ], |
| | | contact: [ |
| | | { |
| | | required: true,trigger:'blur', validator: checkPhone |
| | | } |
| | | ], |
| | | // id: 0, |
| | | ownerName: [ |
| | | { |
| | | required: true,trigger:'blur', validator: checkName |
| | | } |
| | | ], |
| | | vehicleUser: [ |
| | | { |
| | | required: true, trigger:'blur',validator: checkUser |
| | | } |
| | | ], |
| | | constructionOrg: [ |
| | | { |
| | | required: true,trigger:'blur', validator: checkOrg |
| | | } |
| | | ], |
| | | geographicPosition: [ |
| | | { |
| | | required: true, trigger:'blur',validator: checkPosition |
| | | } |
| | | ] |
| | | }, |
| | | carTypeList: [ |
| | | { |
| | | label: '大型', |
| | | value: 1, |
| | | }, |
| | | { |
| | | label: '中型', |
| | | value: 2, |
| | | }, |
| | | { |
| | | label: '小型', |
| | | value: 3, |
| | | }, |
| | | ] |
| | | } |
| | | }, |
| | | created() { |
| | | // 初始化数据 |
| | | this.car = JSON.parse(JSON.stringify(this.info)); |
| | | }, |
| | | methods: { |
| | | // 添加车辆 |
| | | handleCar() { |
| | | console.log(this.car); |
| | | this.$refs.user.validate((valid) => { |
| | | if (valid) { |
| | | const { car } = this; |
| | | this.$axios({ |
| | | method: 'put', |
| | | url: 'sccg/car_Manage/modification_slag', |
| | | data: { |
| | | ...car |
| | | } |
| | | }) |
| | | .then(res => { |
| | | console.log(res); |
| | | if (res.code === 200) { |
| | | this.$message({ |
| | | type: 'success', |
| | | message: '修改车辆成功', |
| | | }) |
| | | this.$emit('closeDialog', { flag: false,index:1 }); |
| | | } else { |
| | | this.$message({ |
| | | type: 'error', |
| | | message: res.message, |
| | | }) |
| | | } |
| | | }) |
| | | } else { |
| | | return false; |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | }, |
| | | props: ['info','closeDialog'] |
| | | } |
| | | </script> |
| | | <style lang="scss" scoped> |
| | | .createUser { |
| | | border-radius: 1px; |
| | | background-color: #09152f; |
| | | |
| | | main { |
| | | // border: 1px solid #fff; |
| | | text-align: left; |
| | | padding: 0 55px; |
| | | background-color: #09152f; |
| | | padding-bottom: 50px; |
| | | |
| | | .mainContent { |
| | | display: flex; |
| | | justify-content: center; |
| | | padding-top: 50px; |
| | | |
| | | .el-form-item__content { |
| | | width: 400px; |
| | | |
| | | .el-select { |
| | | width: 100%; |
| | | } |
| | | } |
| | | |
| | | .optionHandleSp { |
| | | display: flex; |
| | | |
| | | .areaNumber, |
| | | .moreNumber { |
| | | flex: 1; |
| | | } |
| | | |
| | | .telNumber { |
| | | flex: 2; |
| | | } |
| | | } |
| | | |
| | | .optionBtn { |
| | | display: flex; |
| | | margin-top: 20px; |
| | | |
| | | .btn { |
| | | padding: 12px 50px; |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | &::v-deep .el-textarea__inner { |
| | | background-color: #09152f; |
| | | border: 1px solid #17324c; |
| | | } |
| | | |
| | | ::v-deep .el-form-item__label { |
| | | color: #4b9bb7; |
| | | } |
| | | |
| | | ::v-deep .el-input__inner { |
| | | background-color: #09152f; |
| | | border: 1px solid #17324c; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | <div class="btn"> |
| | | <span @click="handleView(scope.row)">查看</span> |
| | | <span class="line">|</span> |
| | | <span>删除</span> |
| | | <span @click="handleEdit(scope.row)">编辑</span> |
| | | <span class="line">|</span> |
| | | <span @click="handleDelete(scope.row)">删除</span> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | v-if="dialogView" :before-close="handleNoClose"> |
| | | <MyViewLaw v-if="mystatus === 1" :info="info"></MyViewLaw> |
| | | <MyViewSoil v-else :info="info"></MyViewSoil> |
| | | </el-dialog> |
| | | <!-- 编辑 --> |
| | | <el-dialog :visible.sync="dialogEdit" width="60%" title="编辑车辆信息" |
| | | v-if="dialogEdit" :before-close="handleClose"> |
| | | <MyEditLaw v-if="mystatus === 1" @closeDialog="closeDialog" :info="info"></MyEditLaw> |
| | | <MyEditSoil v-else @closeDialog="closeDialog" :info="info"></MyEditSoil> |
| | | </el-dialog> |
| | | <!-- tools --> |
| | | <div class="tools"> |
| | |
| | | import MySoil from './create/soil' |
| | | import MyViewLaw from './update/law' |
| | | import MyViewSoil from './update/soil' |
| | | import MyEditLaw from './edit/law' |
| | | import MyEditSoil from './edit/soil' |
| | | export default { |
| | | components: { |
| | | Mycreate,MySoil,MyViewLaw, |
| | | MyViewSoil |
| | | MyViewSoil,MyEditLaw,MyEditSoil |
| | | }, |
| | | data() { |
| | | return { |
| | |
| | | context: "", |
| | | dialogAdd:false, |
| | | dialogView:false, |
| | | dialogEdit:false, |
| | | info: '', |
| | | totalNum: null, |
| | | pageSize: 10, |
| | |
| | | all: false, |
| | | unsame: false, |
| | | myIdx: 0, |
| | | preMyIdx:0, |
| | | options: [ |
| | | { |
| | | value: 0, |
| | |
| | | } |
| | | }, |
| | | created() { |
| | | this.getUserList(); |
| | | this.getCarList(); |
| | | }, |
| | | methods: { |
| | | // 编辑车辆 |
| | | handleEdit(data){ |
| | | console.log(data) |
| | | this.dialogEdit = true |
| | | this.info = data; |
| | | }, |
| | | // 搜索车辆 |
| | | handleSearch(val){ |
| | | if(this.timer){ |
| | | clearTimeout(this.timer); |
| | | } |
| | | this.timer = setTimeout(()=>{ |
| | | this.getUserList(); |
| | | this.getCarList(); |
| | | },1000); |
| | | }, |
| | | // 添加车辆 |
| | |
| | | }) |
| | | }, |
| | | // 删除单条数据 |
| | | handleDelete({ number }) { |
| | | console.log(number); |
| | | handleDelete({id}) { |
| | | this.$confirm('确认删除?') |
| | | .then(_ => { |
| | | console.log(1); |
| | | const {mystatus} = this |
| | | let myurl = mystatus === 1 ? 'deletion_enforce':'deletion_slag' |
| | | this.$axios({ |
| | | method: 'delete', |
| | | url: `sccg/violations/delete?id=${number}`, |
| | | url: `/sccg/car_Manage/${myurl}?id=${id}`, |
| | | }) |
| | | .then(res => { |
| | | console.log(res); |
| | |
| | | message: res.message |
| | | }) |
| | | |
| | | this.getUserList(); |
| | | this.getCarList(); |
| | | }) |
| | | }) |
| | | .catch(_ => { console.log(2) }); |
| | | }, |
| | | // 获取用户列表 |
| | | async getUserList() { |
| | | // 获取车辆列表 |
| | | async getCarList() { |
| | | const { currentPage, pageSize, context, mystatus } = this; |
| | | let arr =[]; |
| | | if(mystatus===1){ |
| | |
| | | }else{ |
| | | arr = await this.getSoilCarList(currentPage, pageSize, context) |
| | | } |
| | | console.log(arr); |
| | | this.tableData = arr.records; |
| | | this.totalNum = arr.total; |
| | | }, |
| | |
| | | } |
| | | }) |
| | | this.mystatus = idx + 1; |
| | | this.getUserList(); |
| | | this.getCarList(); |
| | | }, |
| | | // 设置表格斑马纹 |
| | | tableRowClassName({ row, rowIndex }) { |
| | |
| | | // 当前页改变触发事件 |
| | | changeCurrentPage(page) { |
| | | this.currentPage = page; |
| | | this.getUserList(); |
| | | this.getCarList(); |
| | | }, |
| | | // 上一页点击事件 |
| | | handlePrev(page) { |
| | | this.currentPage = page; |
| | | this.getUserList(); |
| | | this.getCarList(); |
| | | }, |
| | | // 下一页点击事件 |
| | | handleNext(page) { |
| | | this.currentPage = page; |
| | | this.getUserList(); |
| | | this.getCarList(); |
| | | }, |
| | | handleClose(done) { |
| | | this.$confirm('确认关闭?') |
| | |
| | | // 关闭界面 |
| | | closeDialog({flag,index}){ |
| | | this.dialogAdd = flag; |
| | | this.dialogEdit = flag |
| | | if(index===1){ |
| | | this.getUserList(); |
| | | this.getCarList(); |
| | | } |
| | | }, |
| | | handleView(data){ |
| | |
| | | label-position="right"> |
| | | <!-- 车牌号 --> |
| | | <el-form-item class="optionItem" label="车牌号:" prop="carNumber"> |
| | | <el-input v-model="car.carNumber" placeholder="请填写车牌号"></el-input> |
| | | <el-input v-model="car.carNumber" placeholder="请填写车牌号" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 所属部门 --> |
| | | <el-form-item class="optionItems" label="所属部门:" prop="depart"> |
| | | <el-input v-model="car.depart" placeholder="请填写所属部门"></el-input> |
| | | <!-- <el-select v-model="car.group" placeholder="请选择所属类型"> |
| | | <el-option v-for="item in teamList" :key="item.value" :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> --> |
| | | <el-input v-model="car.depart" placeholder="请填写所属部门" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 所属大队 --> |
| | | <el-form-item class="optionItems" label="所属大队:" prop="belong"> |
| | | <el-input v-model="car.belong" placeholder="请填写所属大队"></el-input> |
| | | <!-- <el-select v-model="car.group" placeholder="请选择所属类型"> |
| | | <el-option v-for="item in teamList" :key="item.value" :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> --> |
| | | <el-input v-model="car.belong" placeholder="请填写所属大队" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 车主姓名 --> |
| | | <el-form-item class="optionItem" label="车主姓名:" prop="ownerName"> |
| | | <el-input v-model="car.ownerName" placeholder="请输入车主姓名"></el-input> |
| | | <el-input v-model="car.ownerName" placeholder="请输入车主姓名" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 车辆使用人员 --> |
| | | <el-form-item class="optionItem" label="车辆使用人员:" prop="vehicleUser"> |
| | | <el-input v-model="car.vehicleUser" placeholder="请输入车辆使用人员"></el-input> |
| | | <el-input v-model="car.vehicleUser" placeholder="请输入车辆使用人员" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 联系方式 --> |
| | | <el-form-item class="optionItem" label="联系方式:" prop="contact"> |
| | | <el-input v-model="car.contact" placeholder="请输入车主手机号码"></el-input> |
| | | <el-form-item class="optionItem" label="联系方式:" prop="contact" disabled> |
| | | <el-input v-model="car.contact" placeholder="请输入车主手机号码" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 轨迹 --> |
| | | <el-form-item class="optionItem" label="轨迹:" prop="trajectory"> |
| | | <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="请输入车辆轨迹"></el-input> |
| | | <el-form-item class="optionItem" label="轨迹:" prop="trajectory" disabled> |
| | | <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="请输入车辆轨迹" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- <el-form-item> |
| | | <div class="optionBtn"> |
| | | <el-button type="primary" class="btn submit" @click.native.prevent="handleCar">确认 |
| | | </el-button> |
| | | <el-button class="btn cancel" @click.native.prevent="handleStop"> |
| | | 取消 |
| | | </el-button> |
| | | </div> |
| | | </el-form-item> --> |
| | | </el-form> |
| | | |
| | | </div> |
| | | </main> |
| | | </div> |
| | |
| | | label-position="right"> |
| | | <!-- 车牌号 --> |
| | | <el-form-item class="optionItem" label="车牌号:" prop="carNumber"> |
| | | <el-input v-model="car.carNumber" placeholder="请填写车牌号"></el-input> |
| | | <el-input v-model="car.carNumber" placeholder="请填写车牌号" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 车型 --> |
| | | <el-form-item class="optionItems" label="车型:" prop="carModel"> |
| | | <el-select v-model="car.carModel" placeholder="请选择车型"> |
| | | <el-select v-model="car.carModel" placeholder="请选择车型" disabled> |
| | | <el-option v-for="item in carTypeList" :key="item.value" :label="item.label" |
| | | :value="item.label"> |
| | | </el-option> |
| | |
| | | </el-form-item> |
| | | <!-- 车主姓名 --> |
| | | <el-form-item class="optionItem" label="车主姓名:" prop="ownerName"> |
| | | <el-input v-model="car.ownerName" placeholder="请输入车主姓名"></el-input> |
| | | <el-input v-model="car.ownerName" placeholder="请输入车主姓名" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 车辆使用人员 --> |
| | | <el-form-item class="optionItem" label="车辆使用人员:" prop="vehicleUser"> |
| | | <el-input v-model="car.vehicleUser" placeholder="请输入车辆使用人员"></el-input> |
| | | <el-input v-model="car.vehicleUser" placeholder="请输入车辆使用人员" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 联系方式 --> |
| | | <el-form-item class="optionItem" label="联系方式:" prop="contact"> |
| | | <el-input v-model="car.contact" placeholder="请输入车主手机号码"></el-input> |
| | | <el-input v-model="car.contact" placeholder="请输入车主手机号码" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 施工单位 --> |
| | | <el-form-item class="optionItems" label="施工单位:" prop="constructionOrg"> |
| | | <el-input v-model="car.constructionOrg" placeholder="请填写施工单位"></el-input> |
| | | <el-input v-model="car.constructionOrg" placeholder="请填写施工单位" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 施工地址 --> |
| | | <el-form-item class="optionItems" label="施工地址:" prop="geographicPosition"> |
| | | <el-input v-model="car.geographicPosition" placeholder="请填写施工地址"></el-input> |
| | | <el-input v-model="car.geographicPosition" placeholder="请填写施工地址" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 轨迹 --> |
| | | <el-form-item class="optionItem" label="轨迹:" prop="trajectory"> |
| | | <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="请输入车辆轨迹"></el-input> |
| | | <el-input type="textarea" :rows="2" v-model="car.trajectory" placeholder="请输入车辆轨迹" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- <el-form-item> |
| | | <div class="optionBtn"> |
| | | <el-button type="primary" class="btn submit" @click.native.prevent="handleCar">确认 |
| | | </el-button> |
| | | <el-button class="btn cancel" @click.native.prevent="handleStop"> |
| | | 取消 |
| | | </el-button> |
| | | </div> |
| | | </el-form-item> --> |
| | | </el-form> |
| | | |
| | | </div> |
| | |
| | | <!-- 文书种类 --> |
| | | <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 v-for="item in kindList" :key="item.id" :label="item.name" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | </div> |
| | | </template> |
| | | <script> |
| | | import {getCodeList} from '@/utils/helper' |
| | | export default { |
| | | data() { |
| | | const checkKind = (rule, value, callback) => { |
| | |
| | | } |
| | | }, |
| | | created() { |
| | | console.log(this.book.writPic) |
| | | const {getBookType} = this |
| | | getBookType(); |
| | | }, |
| | | 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) |
| | | } |
| | |
| | | this.book.otherPic.splice(index, 1); |
| | | } |
| | | |
| | | }, |
| | | // 获取文书种类 |
| | | async getBookType(){ |
| | | let arr |
| | | arr = await getCodeList('15'); |
| | | this.kindList = arr; |
| | | } |
| | | }, |
| | | watch: { |
| | |
| | | callback(); |
| | | } |
| | | }; |
| | | const validateId = (rule, value, callback) => { |
| | | if (!value) { |
| | | callback(new Error("请填写部门id")); |
| | | } else { |
| | | callback(); |
| | | } |
| | | }; |
| | | const validatePass = (rule, value, callback) => { |
| | | if (!value) { |
| | | callback(); |
| | | } else { |
| | | callback(); |
| | | } |
| | | }; |
| | | const validatePhone = (rule, value, callback) => { |
| | | if (!value) { |
| | | callback(); |
| | | } else { |
| | |
| | | departType: "", |
| | | }, |
| | | createUserRules: { |
| | | id: [{ required: true, trigger: "blur", validator: validateId }], |
| | | departName: [ |
| | | { required: true, trigger: "blur", validator: validateNickname }, |
| | | ], |
| | |
| | | this.user = JSON.parse(JSON.stringify(that.userInfo)); |
| | | console.log(this.user); |
| | | this.user.parentId = this.user.parentId === 0 ? '暂无上级部门' : this.user.parentId; |
| | | console.log(this.user.parentId); |
| | | this.checkedList = this.user.userInfoDTOS; |
| | | this.checkedList.forEach((e) => { |
| | | this.checkedUser.push(e.userId); |
| | |
| | | const { user, checkedList } = this; |
| | | const arr = []; |
| | | checkedList.forEach((item) => { |
| | | arr.push({ leader: item.leader, userId: item.userId }); |
| | | arr.push({ leader: item.leader, userId: item.id ? item.id : item.userId }); |
| | | }); |
| | | console.log(arr); |
| | | this.$axios |
| | | .post("sccg/depart/update", { |
| | | id: user.id, |
| | | departName: user.departName, |
| | | parentId: user.parentId, |
| | | departDes: user.departDes, |
| | | departManagerList: arr, |
| | | if (arr.length === 0) { |
| | | this.$message({ |
| | | type: 'warning', |
| | | message: '请选择部门人员', |
| | | }) |
| | | .then((res) => { |
| | | this.$message({ |
| | | message: res.message, |
| | | type: res.code === 200 ? "success" : "warning", |
| | | } else { |
| | | this.$axios |
| | | .post("sccg/depart/update", { |
| | | id: user.id, |
| | | departName: user.departName, |
| | | parentId: user.parentId === '暂无上级部门' ? 0 : user.parentId, |
| | | departDes: user.departDes, |
| | | departManagerList: arr, |
| | | }) |
| | | .then((res) => { |
| | | this.$message({ |
| | | message: res.message, |
| | | type: res.code === 200 ? "success" : "warning", |
| | | }); |
| | | this.$emit("changeDialog", { flag: false }); |
| | | this.getDepartList(); |
| | | }); |
| | | this.$emit("changeDialog", { flag: false }); |
| | | this.getDepartList(); |
| | | }); |
| | | } |
| | | } else { |
| | | return false; |
| | | } |
| | |
| | | }); |
| | | }); |
| | | this.checkedList[0].leader = true; |
| | | console.log(this.checkedList); |
| | | this.openUser = false; |
| | | }, |
| | | }, |
| | |
| | | </el-form-item> |
| | | <!-- 角色类型 --> |
| | | <el-form-item class="optionItem" label="角色类型:" prop="roleType"> |
| | | <el-input v-model="role.roleType" placeholder="请选择角色类型" disabled></el-input> |
| | | <el-input v-model="role.typeText" placeholder="请选择角色类型" disabled></el-input> |
| | | </el-form-item> |
| | | <!-- 角色描述 --> |
| | | <el-form-item class="optionItem" label="角色描述:" prop="description"> |