.env.development
@@ -6,7 +6,7 @@ VITE_APP_ENV = 'development' # 金川接口 # VITE_APP_PUBLIC_REQUEST_API = 'http://113.250.189.120:8030' # VITE_APP_PUBLIC_REQUEST_API = 'http://113.250.189.120:8030' # VITE_APP_PUBLIC_REQUEST_API = 'http://113.250.189.120:8036' #后端本地 VITE_APP_PUBLIC_REQUEST_API = 'http://192.168.0.200:8036' src/api/alarmApi/alarmHistory.js
文件已删除 src/api/alarmApi/alarmScheme.js
文件已删除 src/api/archivesApi/index.js
文件已删除 src/api/area/index.js
文件已删除 src/api/configuration/alarmDefinition/index.js
文件已删除 src/api/configuration/bussinessApi/index.js
文件已删除 src/api/configuration/companySetting/index.js
文件已删除 src/api/configuration/defaultAmountSetting/index.js
文件已删除 src/api/configuration/invoiceTitle/index.js
文件已删除 src/api/configuration/userClassify/index.js
文件已删除 src/api/configuration/waterOtherFee/index.js
文件已删除 src/api/configuration/waterPrice/index.js
文件已删除 src/api/examine/plan/index.js
文件已删除 src/api/examine/record/index.js
文件已删除 src/api/facility/collector.js
文件已删除 src/api/facility/parameter.js
文件名从 src/api/configuration/facilityParameter/index.js 修改 @@ -7,7 +7,7 @@ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE */ import { publicRequest } from '@/utils/request' import { publicRequest } from '@/utils/request.js' //公司配置信息 export default function waterFacilityParameter() { src/api/facility/record.js
文件已删除 src/api/facility/supplier.js
src/api/facility/valveDevice.js
文件已删除 src/api/financial/billRecord/index.js
文件已删除 src/api/financial/invoice/index.js
文件已删除 src/api/financial/payRecord/index.js
文件已删除 src/api/financial/payable/index.js
文件已删除 src/api/financial/recharge/index.js
文件已删除 src/api/financial/tradeRecord/index.js
文件已删除 src/api/financial/userBankAccount/index.js
文件已删除 src/api/financial/userCapitalChange/index.js
文件已删除 src/api/financial/waterMeterTask/index.js
文件已删除 src/api/knowledgeApi/index.js
文件已删除 src/api/maintain/plan/index.js
文件已删除 src/api/maintain/record/index.js
文件已删除 src/api/meterReadingApi/meterReadingRecord.js
文件已删除 src/api/screen/alarm/index.js
文件已删除 src/api/screen/dma/index.js
文件已删除 src/api/screen/overview/index.js
文件已删除 src/api/screen/pupm/index.js
文件已删除 src/api/screen/revenue/index.js
文件已删除 src/api/screen/statistics/index.js
文件已删除 src/api/waterMeterApi/index.js
文件已删除 src/api/waterMeterApi/meterOperation.js
文件已删除 src/api/waterMeterApi/useWaterMeter.js
文件已删除 src/api/waterMeterApi/verification.js
文件已删除 src/api/waterMeterApi/waterModel.js
文件已删除 src/api/workOrderManage/meterConstructionApi/index.js
文件已删除 src/api/workOrderManage/waterMeterAlterationApi/index.js
文件已删除 src/api/workOrderManage/waterMeterApplyApi/index.js
文件已删除 src/api/workOrderManage/waterMeterChangeApi/index.js
文件已删除 src/api/workOrderManage/waterMeterCloseAccountApi/index.js
文件已删除 src/api/workOrderManage/waterMeterMaintainRecordsApi/index.js
文件已删除 src/api/workOrderManage/waterMeterRepairApi/index.js
文件已删除 src/api/workOrderManage/waterMeterStopAccountApi/index.js
文件已删除 src/assets/images/login_icon.png
src/components/Crontab/day.vue
文件已删除 src/components/Crontab/hour.vue
文件已删除 src/components/Crontab/index.vue
文件已删除 src/components/Crontab/min.vue
文件已删除 src/components/Crontab/month.vue
文件已删除 src/components/Crontab/result.vue
文件已删除 src/components/Crontab/second.vue
文件已删除 src/components/Crontab/week.vue
文件已删除 src/components/Crontab/year.vue
文件已删除 src/components/RightToolbar/index.vue
对比新文件 @@ -0,0 +1,134 @@ <template> <div class="top-right-btn" :style="style"> <el-row> <el-tooltip class="item" effect="dark" :content="showSearch ? '隐藏搜索' : '显示搜索'" placement="top" v-if="search"> <el-button circle icon="Search" @click="toggleSearch()" /> </el-tooltip> <el-tooltip class="item" effect="dark" content="刷新" placement="top"> <el-button circle icon="Refresh" @click="refresh()" /> </el-tooltip> <el-tooltip class="item" effect="dark" content="显隐列" placement="top" v-if="columns"> <el-button circle icon="Menu" @click="showColumn()" v-if="showColumnsType == 'transfer'"/> <el-dropdown trigger="click" :hide-on-click="false" style="padding-left: 12px" v-if="showColumnsType == 'checkbox'"> <el-button circle icon="Menu" /> <template #dropdown> <el-dropdown-menu> <template v-for="item in columns" :key="item.key"> <el-dropdown-item> <el-checkbox :checked="item.visible" @change="checkboxChange($event, item.label)" :label="item.label" /> </el-dropdown-item> </template> </el-dropdown-menu> </template> </el-dropdown> </el-tooltip> </el-row> <el-dialog :title="title" v-model="open" append-to-body> <el-transfer :titles="['显示', '隐藏']" v-model="value" :data="columns" @change="dataChange" ></el-transfer> </el-dialog> </div> </template> <script setup> const props = defineProps({ /* 是否显示检索条件 */ showSearch: { type: Boolean, default: true, }, /* 显隐列信息 */ columns: { type: Array, }, /* 是否显示检索图标 */ search: { type: Boolean, default: true, }, /* 显隐列类型(transfer穿梭框、checkbox复选框) */ showColumnsType: { type: String, default: "checkbox", }, /* 右外边距 */ gutter: { type: Number, default: 10, }, }) const emits = defineEmits(['update:showSearch', 'queryTable']); // 显隐数据 const value = ref([]); // 弹出层标题 const title = ref("显示/隐藏"); // 是否显示弹出层 const open = ref(false); const style = computed(() => { const ret = {}; if (props.gutter) { ret.marginRight = `${props.gutter / 2}px`; } return ret; }); // 搜索 function toggleSearch() { emits("update:showSearch", !props.showSearch); } // 刷新 function refresh() { emits("queryTable"); } // 右侧列表元素变化 function dataChange(data) { for (let item in props.columns) { const key = props.columns[item].key; props.columns[item].visible = !data.includes(key); } } // 打开显隐列dialog function showColumn() { open.value = true; } if (props.showColumnsType == 'transfer') { // 显隐列初始默认隐藏列 for (let item in props.columns) { if (props.columns[item].visible === false) { value.value.push(parseInt(item)); } } } // 勾选 function checkboxChange(event, label) { props.columns.filter(item => item.label == label)[0].visible = event; } </script> <style lang='scss' scoped> :deep(.el-transfer__button) { border-radius: 50%; display: block; margin-left: 0px; } :deep(.el-transfer__button:first-child) { margin-bottom: 10px; } :deep(.el-dropdown-menu__item) { line-height: 30px; padding: 0 17px; } </style> src/components/UploadIcons/index.vue
对比新文件 @@ -0,0 +1,105 @@ <template> <el-upload v-model:file-list="fileList" list-type="picture-card" :on-preview="handlePictureCardPreview" :on-remove="handleRemove" :on-exceed="handleExceed" :http-request="uploadImg" :limit="props.limit" :disabled="props.disabled" > <el-icon><Plus /></el-icon> </el-upload> <el-dialog v-model="dialogVisible"> <img w-full :src="dialogImageUrl" alt="Preview Image" /> </el-dialog> </template> <script setup> import { ref } from 'vue' import { Plus } from '@element-plus/icons-vue' import { ElMessage } from 'element-plus' import { upload } from '@/api/basicApi/index' // import type { UploadProps } from 'element-plus' import { getImage, setImage } from '@/utils/validate.js' const props = defineProps({ imageList: { type: String, default: '', }, limit: { type: Number, }, disabled:{ type: Boolean, default:false, }, }) const fileList = ref([]) const file = ref([]) const emit = defineEmits(['uploadData']) // const imageUrl = ref('') const dialogImageUrl = ref('') const dialogVisible = ref(false) const handleRemove = (_, uploadFiles) => { file.value = uploadFiles.map((item)=>{return item.url}) emit('uploadData', file.value) } const handlePictureCardPreview = (uploadFile) => { dialogImageUrl.value = uploadFile.url dialogVisible.value = true } //超出限制 const handleExceed = () => { ElMessage({ message: `只能上传${props.limit}张图片`, type: 'error' }) } //上传图片调用接口 const uploadImg = async (params) => { //建立表单,请求参数传表单形式 let form = new FormData(); form.append("file1", params.file); form.append("fileId", params.file.lastModified); form.append("path", 'operation'); //发出上传文件请求 let res = await upload().uploadFile(form) if(res.code == 200){ //返回的图片网络地址传给form ElMessage({ message: '上传图片成功', type: 'success' }) file.value.push(res.data.newFileName) emit('uploadData', setImage(file.value)) } } //监听props.image watch(props, (newvalue)=>{ let newList = '' if(newvalue.imageList!='' && newvalue.imageList != null){ newList = getImage(newvalue.imageList).join(',') } if( newList != ''){ //判断是否加上PREURL前缀 if(file.value.join(',') != newList){ let list = [] newList.split(',').forEach((item)=>{ list.push({ url: item }) }) fileList.value = list console.log('回显',fileList.value) file.value = newList.split(',') } }else{ fileList.value = [] //父组件image从有值到空变化,也要清空一遍组件中的值 file.value = [] } },{immediate:true}) </script> src/components/iFrame/index.vue
文件已删除 src/layout/components/Navbar.vue
@@ -16,12 +16,12 @@ </div> <template #dropdown> <el-dropdown-menu> <router-link to="/userCenter"> <el-dropdown-item >个人中心</el-dropdown-item> </router-link> <el-dropdown-item command="setLayout" v-if="settingsStore.showSettings"> <span>布局设置</span> </el-dropdown-item> <!-- <router-link to="/userCenter">--> <!-- <el-dropdown-item >个人中心</el-dropdown-item>--> <!-- </router-link>--> <!-- <el-dropdown-item command="setLayout" v-if="settingsStore.showSettings">--> <!-- <span>布局设置</span>--> <!-- </el-dropdown-item>--> <el-dropdown-item divided command="logout"> <span>退出登录</span> </el-dropdown-item> src/layout/components/Sidebar/index.vue
@@ -51,12 +51,6 @@ :item="route" :base-path="route.path" /> <app-link :to="'/userCenter'"> <el-menu-item :index="'/userCenter'" > <svg-icon :icon-class="'PhUserCircleFill'" /> <template #title><span class="menu-title" :title="'个人中心'">个人中心</span></template> </el-menu-item> </app-link> </el-menu> </el-scrollbar> </div> src/layout/components/TagsView/index.vue
@@ -61,7 +61,6 @@ const router = useRouter(); const visitedViews = computed(() => { console.log('visitedViews',useTagsViewStore().visitedViews) return useTagsViewStore().visitedViews }); const routes = computed(() => usePermissionStore().routes); @@ -143,7 +142,6 @@ } //添加tag function addTags() { console.log('11111',route) const { name } = route if (name) { useTagsViewStore().addView(route) src/main.js
@@ -23,7 +23,6 @@ // 注册指令 import plugins from './plugins' // plugins // import { download } from '@/utils/request' // svg图标 import 'virtual:svg-icons-register' @@ -39,6 +38,10 @@ import Pagination from '@/components/Pagination' // 自定义树选择组件 import TreeSelect from '@/components/TreeSelect' // 自定义表格工具组件 import RightToolbar from '@/components/RightToolbar' //多张图片上传 import UploadIcons from "@/components/UploadIcons" //数据持久化 @@ -61,6 +64,8 @@ // 全局组件挂载 app.component('Pagination', Pagination) app.component('TreeSelect', TreeSelect) app.component('RightToolbar', RightToolbar) app.component('UploadIcons', UploadIcons) import { addActiveRoute } from '@/utils/index' src/permission.js
@@ -7,12 +7,10 @@ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE */ import router from './router' import { ElMessage } from 'element-plus' import NProgress from 'nprogress' import 'nprogress/nprogress.css' import { getToken } from '@/utils/auth' import useSettingsStore from '@/store/modules/settings' import usePermissionStore from '@/store/modules/permission' NProgress.configure({ showSpinner: false }); @@ -23,7 +21,6 @@ NProgress.start() if (getToken()) { to.meta.title && useSettingsStore().setTitle(to.meta.title) console.log(20,to.meta.title) /* has token*/ if (to.path === '/login') { next({ path: '/overview' }) src/plugins/download.js
文件已删除 src/screen/flow.vue
@@ -23,7 +23,6 @@ {name:'设备管理',url:''}, {name:'报警管理',url:''}, {name:'报表管理',url:''}, {name:'系统管理',url:'/user'}, ]) const navTo = (item) =>{ router.push(item.url) src/store/modules/tagsView.js
@@ -21,7 +21,6 @@ }, addVisitedView(view) { if (this.visitedViews.some(v => v.path === view.path)) return console.log('view',view,view.meta.title) this.visitedViews.push( Object.assign({}, view, { title: view.meta.title || 'no-name' src/utils/color.js
文件已删除 src/utils/index.js
@@ -14,12 +14,10 @@ let routesData = JSON.parse(JSON.stringify(menuStore.sidebarRouters)); //定义路径模式 const views = import.meta.glob('../views/**/*/index.vue'); // console.log('routesData',routesData) //组装成router需要的格式(加上component和meta) routesData = setActiveRoute(routesData, views) //设置路由 // console.log('组装完成',routesData) routesData.forEach((item) => { console.log(222222,router) //路由数据解析完成,开始添加到本地路由表中 router.addRoute('/', item); // console.log('item',item) src/utils/methods.js
文件已删除 src/utils/ruoyi.js
@@ -5,12 +5,6 @@ * Copyright (c) 2019 ruoyi */ //加载动态图片 export const getImageUrl = (name) =>{ return new URL(`../assets/images/${name}`, import.meta.url).href } // 日期格式化 export function parseTime(time, pattern) { if (arguments.length === 0 || !time) { src/utils/textConst.js
文件已删除 src/utils/validate.js
@@ -91,3 +91,26 @@ } return Array.isArray(arg) } //设置图片路径 import { PREURL } from '@/config/index' export const getImage = (imgList) =>{ if(imgList != null){ return imgList.split(',').map((image) => { if(image.indexOf('http') == -1 && image != ''){ return PREURL + image }else { return image } }) } } export const setImage = (imgList) =>{ return imgList.map((image) => { if(image.indexOf(PREURL) != -1){ return image.replace(PREURL,'') }else { return image } }) } src/views/alarm/alarmDefinition/index.vue
文件已删除 src/views/alarm/alarmHistory/index.vue
文件已删除 src/views/alarm/alarmScheme/index.vue
文件已删除 src/views/configuration/companySetting/index.vue
文件已删除 src/views/configuration/defaultAmountSetting/index.vue
文件已删除 src/views/configuration/invoiceTitle/index.vue
文件已删除 src/views/configuration/salePlace/index.vue
文件已删除 src/views/configuration/userClassify/index.vue
文件已删除 src/views/configuration/waterOtherFee/index.vue
文件已删除 src/views/configuration/waterPrice/index.vue
文件已删除 src/views/customer/archives/index.vue
文件已删除 src/views/document/knowledge/index.vue
文件已删除 src/views/facility/area/index.vue
文件已删除 src/views/facility/collector/index.vue
文件已删除 src/views/facility/facilityList/index.vue
@@ -1,10 +1,10 @@ <script setup> import facilityApi from "@/api/facility/index"; import pointApi from "@/api/facility/point"; import supplierApi from "@/api/waterMeterApi/supplier.js"; import supplierApi from "@/api/facility/supplier.js"; import facilityTypeApi from "@/api/facility/facilityType.js"; import commonParameters from "@/api/configuration/commonParameters/index.js"; import waterFacilityParameter from "@/api/configuration/facilityParameter/index.js"; import waterFacilityParameter from "@/api/facility/parameter.js"; import {PREURL} from '@/config/index' import setPostParams from "@/utils/searchParams.js"; const route = useRoute(); @@ -141,6 +141,7 @@ async function handleAdd() { reset(); open.value = true; isDetail.value = false; title.value = "新增"; console.log('form',form.value) } @@ -156,6 +157,7 @@ }); form.value.id = row.id open.value = true; isDetail.value = true; title.value = "修改"; } @@ -179,6 +181,7 @@ const openParamForm = ref(false) const open = ref(false); const title = ref(""); const isDetail = ref(false); const multipleSelection = ref([]) let tableParamHeader = ref({ name: '参数名称', src/views/facility/facilityParameter/index.vue
文件已删除 src/views/facility/facilityType/index.vue
@@ -7,109 +7,113 @@ * @Description: 设备类型 --> <script setup> import facilityTypeApi from "@/api/facility/facilityType"; import facilityTypeApi from "@/api/facility/facilityType"; import setPostParams from "@/utils/searchParams.js"; const route = useRoute(); const { proxy } = getCurrentInstance(); const {proxy} = getCurrentInstance(); /** * 搜索相关 */ /** 搜索按钮操作 */ function handleQuery() { getList({keywords:searchParams.value.name}) } /** 重置按钮操作 */ function resetQuery() { proxy.resetForm("queryRef"); handleQuery(); } /** 搜索按钮操作 */ function handleQuery() { getList({keywords: searchParams.value.name}) } /** * Table表格权限数据列表相关 */ /** 重置按钮操作 */ function resetQuery() { proxy.resetForm("queryRef"); handleQuery(); } /** * Table表格权限数据列表相关 */ const pageParam = ref({ total:0, limit:0, page:1, total: 0, limit: 0, page: 1, }) const tableData = ref([]); const inpTip= '请输入',selTip = '请选择'; let tableHeader = ref({ name: '类型名称', code: '类型编号', facilityType: '设备类型', createTimeView:'创建时间' }) /** 获取权限列表 */ async function getList(val) { loading.value = true; let postParam = setPostParams(val) await facilityTypeApi().search(postParam).then((res) =>{ const inpTip = '请输入', selTip = '请选择'; let tableHeader = ref({ name: '类型名称', code: '类型编号', facilityType: '设备类型', createTimeView: '创建时间' }) /** 获取权限列表 */ async function getList(val) { loading.value = true; let postParam = setPostParams(val) await facilityTypeApi().search(postParam).then((res) => { tableData.value = res.data.list pageParam.value.total = res.data.total pageParam.value.limit = res.data.limit pageParam.value.page = res.data.page }) loading.value = false; } /** * 表单相关 */ const formLabel = ({ name: '类型名称', code: '类型编号', createTimeView:'创建时间' } /** * 表单相关 */ const formLabel = ({ name: '类型名称', code: '类型编号', createTimeView: '创建时间' }) const rules = ref({ name: [{ required: true, message: `${inpTip+formLabel.name}`, trigger: "blur" } const rules = ref({ name: [{required: true, message: `${inpTip + formLabel.name}`, trigger: "blur"} ], code: [{ required: true, message: `${inpTip+formLabel.code}`, trigger: "blur" }], code: [{required: true, message: `${inpTip + formLabel.code}`, trigger: "blur"}], }); const form = ref({}); const searchParams = ref({ keywords: '', }); /** 新增按钮操作 */ async function handleAdd() { reset(); open.value = true; title.value = "新增"; } /** 修改按钮操作 */ async function handleUpdate(row) { reset(); // form.value = Object.assign({},row) Object.keys(row).forEach(key => { if (form.value.hasOwnProperty(key)) { form.value[key] = row[key]; } }); form.value.id = row.id open.value = true; title.value = "修改"; } /** 新增按钮操作 */ async function handleAdd() { reset(); open.value = true; title.value = "新增"; } /** 修改按钮操作 */ async function handleUpdate(row) { reset(); // form.value = Object.assign({},row) Object.keys(row).forEach(key => { if (form.value.hasOwnProperty(key)) { form.value[key] = row[key]; } }); form.value.id = row.id open.value = true; title.value = "修改"; } /** 删除按钮操作 */ function handleDelete(row) { proxy.$modal.confirm('是否确认删除名称为"' + row.contact + '"的数据项?').then(function() { return facilityTypeApi().remove(row.id); }).then(() => { getList(); proxy.$modal.msgSuccess("删除成功"); }).catch(() => {}); proxy.$modal.confirm('是否确认删除名称为"' + row.contact + '"的数据项?').then(function () { return facilityTypeApi().remove(row.id); }).then(() => { getList(); proxy.$modal.msgSuccess("删除成功"); }).catch(() => { }); } /** * 新增/修改弹窗Form表单相关 */ /** * 新增/修改弹窗Form表单相关 */ const open = ref(false); const loading = ref(false); const title = ref(""); @@ -118,128 +122,136 @@ const uploadData = (data) => { form.value.headImg = data.newFileView } /** 提交按钮 */ function submitForm() { proxy.$refs["facilityTypeRef"].validate(valid => { if (valid) { form.value.contactPhone = Number(form.value.contactPhone) if (form.value.id != undefined) { facilityTypeApi().modify(form.value).then(res => { proxy.$modal.msgSuccess("修改成功"); open.value = false; getList(); }).catch(() =>{ open.value = false; proxy.$modal.msgError("修改失败"); }); } else { facilityTypeApi().create(form.value).then(res => { proxy.$modal.msgSuccess("新增成功"); open.value = false; getList(); }).catch(() =>{ open.value = false; proxy.$modal.msgError("新增失败"); });; } } }); } /** 取消按钮 */ function cancel() { open.value = false; reset(); } /** 表单重置 */ function reset() { form.value = { /** 提交按钮 */ function submitForm() { proxy.$refs["facilityTypeRef"].validate(valid => { if (valid) { form.value.contactPhone = Number(form.value.contactPhone) if (form.value.id != undefined) { facilityTypeApi().modify(form.value).then(res => { proxy.$modal.msgSuccess("修改成功"); open.value = false; getList(); }).catch(() => { open.value = false; proxy.$modal.msgError("修改失败"); }); } else { facilityTypeApi().create(form.value).then(res => { proxy.$modal.msgSuccess("新增成功"); open.value = false; getList(); }).catch(() => { open.value = false; proxy.$modal.msgError("新增失败"); }); ; } } }); } /** 取消按钮 */ function cancel() { open.value = false; reset(); } /** 表单重置 */ function reset() { form.value = { name: '', code: '' }; proxy.resetForm("facilityTypeRef"); } getList(); </script> <template> }; proxy.resetForm("facilityTypeRef"); } getList(); </script> <template> <div class="app-container"> <el-form :model="searchParams" ref="queryRef" :inline="true"> <el-form-item label="" prop=""> <el-input v-model="searchParams.name" placeholder="请输入搜索信息" clearable style="width: 200px" @keyup.enter="handleQuery" /> </el-form-item> <el-form-item> <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button> <el-button icon="Refresh" @click="resetQuery">重置</el-button> </el-form-item> </el-form> <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> <el-button type="primary" plain icon="Plus" @click="handleAdd" >新增</el-button> </el-col> </el-row> <!--表格及分页--> <el-table v-loading="loading" :data="tableData"> <el-table-column v-for="(item, key, index) of tableHeader" :prop="key.toString()" :label="item" :key="index" align="center" > <template #default="scope"> <div v-if="key.toString() == 'headImg'"> <img :src="scope.row.headImg" class="table-headImg"/> </div> </template> </el-table-column> <el-table-column label="操作" width="180" align="center" class-name="small-padding fixed-width"> <template #default="scope"> <el-button link type="primary" icon="Edit" v-has="['update',route]" @click="handleUpdate(scope.row)">修改</el-button> <el-button link type="primary" icon="Delete" v-has="['delete',route]" @click="handleDelete(scope.row)">删除</el-button> </template> </el-table-column> <el-form :model="searchParams" ref="queryRef" :inline="true"> <el-form-item label="" prop=""> <el-input v-model="searchParams.name" placeholder="请输入搜索信息" clearable style="width: 200px" @keyup.enter="handleQuery" /> </el-form-item> <el-form-item> <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button> <el-button icon="Refresh" @click="resetQuery">重置</el-button> </el-form-item> </el-form> <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> <el-button type="primary" plain icon="Plus" @click="handleAdd" >新增 </el-button> </el-col> </el-row> <!--表格及分页--> <el-table v-loading="loading" :data="tableData"> <el-table-column v-for="(item, key, index) of tableHeader" :prop="key.toString()" :label="item" :key="index" align="center" > <template #default="scope"> <div v-if="key.toString() == 'headImg'"> <img :src="scope.row.headImg" class="table-headImg"/> </div> </template> </el-table-column> <el-table-column label="操作" width="180" align="center" class-name="small-padding fixed-width"> <template #default="scope"> <el-button link type="primary" icon="Edit" v-has="['update',route]" @click="handleUpdate(scope.row)">修改 </el-button> <el-button link type="primary" icon="Delete" v-has="['delete',route]" @click="handleDelete(scope.row)">删除 </el-button> </template> </el-table-column> </el-table> <pagination :total="pageParam.total" v-model:page="pageParam.page" v-model:limit="pageParam.limit" :page-sizes="[10,20,30]" @pagination="getList" :total="pageParam.total" v-model:page="pageParam.page" v-model:limit="pageParam.limit" :page-sizes="[10,20,30]" @pagination="getList" /> <!-- 添加/修改表单 --> <el-dialog :title="title" v-model="open" append-to-body center> <el-form class="form-box" ref="facilityTypeRef" :model="form" :rules="rules" label-width='auto'> <el-form-item :label="formLabel.name" prop="name"> <el-input v-model="form.name" :placeholder="inpTip+formLabel.name"/> </el-form-item> <el-form-item :label="formLabel.code" prop="code"> <el-input v-model="form.code" :placeholder="inpTip+formLabel.code" /> </el-form-item> </el-form> <template #footer> <div class="dialog-footer"> <el-button type="primary" @click="submitForm">确 定</el-button> <el-button @click="cancel">取 消</el-button> </div> </template> </el-dialog> <!-- 添加/修改表单 --> <el-dialog :title="title" v-model="open" append-to-body center> <el-form class="form-box" ref="facilityTypeRef" :model="form" :rules="rules" label-width='auto'> <el-form-item :label="formLabel.name" prop="name"> <el-input v-model="form.name" :placeholder="inpTip+formLabel.name"/> </el-form-item> <el-form-item :label="formLabel.code" prop="code"> <el-input v-model="form.code" :placeholder="inpTip+formLabel.code"/> </el-form-item> </el-form> <template #footer> <div class="dialog-footer"> <el-button type="primary" @click="submitForm">确 定</el-button> <el-button @click="cancel">取 消</el-button> </div> </template> </el-dialog> </div> </template> <style lang="scss" scoped> </template> <style lang="scss" scoped> </style> src/views/facility/handleRecord/index.vue
文件已删除 src/views/facility/supplier/index.vue
文件已删除 src/views/facility/valveDevice/index.vue
文件已删除 src/views/facilityExamine/facilityExaminePlan/index.vue
文件已删除 src/views/facilityExamine/facilityExamineRecord/index.vue
文件已删除 src/views/facilityMaintain/facilityMaintainPlan/index.vue
文件已删除 src/views/facilityMaintain/facilityMaintainRecord/index.vue
文件已删除 src/views/financial/billRecord/index.vue
文件已删除 src/views/financial/invoice/index.vue
文件已删除 src/views/financial/payRecord/index.vue
文件已删除 src/views/financial/payable/index.vue
文件已删除 src/views/financial/recharge/index.vue
文件已删除 src/views/financial/tradeRecord/index.vue
文件已删除 src/views/financial/userBankAccount/index.vue
文件已删除 src/views/financial/userCapitalChange/index.vue
文件已删除 src/views/financial/waterMeterTask/index.vue
文件已删除 src/views/index.vue
文件已删除 src/views/linkage/valveLlinkage/index.vue
文件已删除 src/views/login.vue
@@ -64,7 +64,7 @@ </el-button> </el-form-item> </el-form> <img class="left-img" src="../assets/images/login/login_icon.png"/> <img class="left-img" src="../assets/images/login_icon.png"/> </div> <!-- 底部 --> <div class="footer"> @@ -242,7 +242,7 @@ function getCookie() { const userName = Cookies.get("userName"); const password = Cookies.get("password"); const password = decrypt(Cookies.get("password")); const rememberMe = Cookies.get("rememberMe"); loginForm.userName = userName === undefined ? loginForm.userName : userName; loginForm.password = password === undefined ? loginForm.password : password; src/views/meterReading/manualMeterReading/index.vue
文件已删除 src/views/meterReading/meterReadingMonthRecord/index.vue
文件已删除 src/views/meterReading/meterReadingRecord/index.vue
文件已删除 src/views/point/ecology/index.vue
src/views/point/index.vue
文件已删除 src/views/redirect/index.vue
文件已删除 src/views/system/dict/index.vue
@@ -1,38 +1,38 @@ <script setup name="Post"> import { sysDictType,sysDictData} from "@/api/system/dict"; import { onMounted } from "vue"; <script setup> import {sysDictType, sysDictData} from "@/api/system/dict"; import {onMounted} from "vue"; import setPostParams from "@/utils/searchParams.js"; const { proxy } = getCurrentInstance(); const {proxy} = getCurrentInstance(); const loading = ref(true); //加载状态 /** 区域table相关 */ const tableData = ref([]); //数据字典列表 const total = ref(0); const total = ref(0); const ids = ref([]); const single = ref(true); const multiple = ref(true); let tableHeader = ref({ let tableHeader = ref({ dictName: '字典名称', dictType: '字典类型', remark:'备注', updateTimeView:'更新时间' }) //获取列表数据 const getList = async(val) => { remark: '备注', updateTimeView: '更新时间' }) //获取列表数据 const getList = async (val) => { loading.value = true; loading.value = true; let postParam = setPostParams(val) let res = await sysDictType().search(postParam) if(res.code == 200) { loading.value = false; tableData.value = res.data.list; total.value = res.data.total; search.page = res.data.page; search.limit = res.data.limit; } let res = await sysDictType().search(postParam) if (res.code == 200) { loading.value = false; tableData.value = res.data.list; total.value = res.data.total; search.page = res.data.page; search.limit = res.data.limit; } } /** * 添加修改表单相关 @@ -41,126 +41,127 @@ const showSearch = ref(true); const title = ref(""); const data = reactive({ //表单 form: { dictName:'', dictType:'', remark:'', }, //表单 form: { dictName: '', dictType: '', remark: '', }, //查询数据 search: { page: 1, //当前页 limit: 10, //每页条数 dictName: '', status: '' }, //表单验证 rules: { dictName: [{ required: true, message: "请输入字典名称", trigger: "blur" }], dictType: [{ required: true, message: "请输入字典类型", trigger: "blur" }], }, //查询数据 search: { page: 1, //当前页 limit: 10, //每页条数 dictName: '', status: '' }, //表单验证 rules: { dictName: [{required: true, message: "请输入字典名称", trigger: "blur"}], dictType: [{required: true, message: "请输入字典类型", trigger: "blur"}], }, }); const { search, form, rules } = toRefs(data); /** * 提交添加修改表单按钮 const {search, form, rules} = toRefs(data); /** * 提交添加修改表单按钮 */ function submitForm() { proxy.$refs["postRef"].validate(async valid => { if (valid) { if(!form.value.id){ let res = await sysDictType().create(form.value) if(res.code == 200) { proxy.$modal.msgSuccess("添加成功") openForm.value = false getList() reset() }else{ proxy.$modal.msgError("添加失败") openForm.value = false reset() } }else{ let res = await sysDictType().modify(form.value) if(res.code == 200) { proxy.$modal.msgSuccess("修改成功") openForm.value = false getList() reset() }else{ proxy.$modal.msgError("修改失败") openForm.value = false reset() } proxy.$refs["postRef"].validate(async valid => { if (valid) { if (!form.value.id) { let res = await sysDictType().create(form.value) if (res.code == 200) { proxy.$modal.msgSuccess("添加成功") openForm.value = false getList() reset() } else { proxy.$modal.msgError("添加失败") openForm.value = false reset() } } else { let res = await sysDictType().modify(form.value) if (res.code == 200) { proxy.$modal.msgSuccess("修改成功") openForm.value = false getList() reset() } else { proxy.$modal.msgError("修改失败") openForm.value = false reset() } } } } }); }); } /** * 字典类型操作相关 */ /** 搜索按钮操作 */ function handleQuery() { getList({keywords:search.value.dictName,page:1}); getList({keywords: search.value.dictName, page: 1}); } /** 重置按钮操作 */ function resetQuery() { proxy.resetForm("queryRef"); handleQuery(); proxy.resetForm("queryRef"); handleQuery(); } /** 多选框选中数据 */ function handleSelectionChange(selection) { ids.value = selection.map(item => item.id); single.value = selection.length != 1; multiple.value = !selection.length; ids.value = selection.map(item => item.id); single.value = selection.length != 1; multiple.value = !selection.length; } /** 新增按钮操作 */ function handleAdd() { reset(); openForm.value = true; title.value = "添加字典"; reset(); openForm.value = true; title.value = "添加字典"; } /** 修改按钮操作 */ function handleUpdate(row) { reset(); //将表单数据更新为table对应值 Object.keys(row).forEach(key => { if (form.value.hasOwnProperty(key)) { form.value[key] = row[key]; } }); form.value.id = row.id console.log('form',form.value); openForm.value = true; title.value = "修改字典"; reset(); //将表单数据更新为table对应值 Object.keys(row).forEach(key => { if (form.value.hasOwnProperty(key)) { form.value[key] = row[key]; } }); form.value.id = row.id console.log('form', form.value); openForm.value = true; title.value = "修改字典"; } /** 删除按钮操作 */ function handleDelete(row) { proxy.$modal.confirm('确认删除"' + row.dictName +'?') .then(async() => { console.log("无删除功能"); // let res = await areaApi().remove(row.id) // if(res.code == 200) { // proxy.$modal.msgSuccess("删除成功"); // openForm.value = false // getList() // } }).catch(() => {}); proxy.$modal.confirm('确认删除"' + row.dictName + '?') .then(async () => { console.log("无删除功能"); }).catch(() => { }); } /** 关闭弹窗 */ function cancel() { openForm.value = false; reset(); openForm.value = false; reset(); } /** 表单重置 */ const reset = () => { proxy.resetForm("postRef"); openForm.value = false proxy.resetForm("postRef"); openForm.value = false } /** @@ -171,126 +172,129 @@ //判断 const isHandle = ref(false) //table const tableDictData = ref([]); let tableDataHeader = ref({ dictType: '字典类型', dictValue: '字典键值', dictLabel: '字典描述', remark:'备注', }) const tableDictData = ref([]); let tableDataHeader = ref({ dictType: '字典类型', dictValue: '字典键值', dictLabel: '字典描述', remark: '备注', }) //获取列表 const getDataList = async(val) => { console.log('val',val); loading.value = true; let res = await sysDictData().searchType(val) if(res.code == 200) { loading.value = false; tableDictData.value = res.data; } const getDataList = async (val) => { console.log('val', val); loading.value = true; let res = await sysDictData().searchType(val) if (res.code == 200) { loading.value = false; tableDictData.value = res.data; } } const postDataRef = ref() //表单 //表单 const dataForm = ref({ dictLabel:'', dictValue:'', dictType:'', remark:'' dictLabel: '', dictValue: '', dictType: '', remark: '' }) const dataRules = ref({ dictLabel: [{ required: true, message: "请输入字典描述", trigger: "blur" }], dictValue: [{ required: true, message: "请输入字典键值", trigger: "blur" }], dictLabel: [{required: true, message: "请输入字典描述", trigger: "blur"}], dictValue: [{required: true, message: "请输入字典键值", trigger: "blur"}], }) //提交 const handleData = () =>{ proxy.$refs["postDataRef"].validate(async valid => { if (valid) { if(!dataForm.value.id){ let res = await sysDictData().create(dataForm.value) if(res.code == 200) { proxy.$modal.msgSuccess("添加成功") isHandle.value = false getDataList(dataForm.value.dictType) proxy.resetForm("postDataRef"); }else{ proxy.$modal.msgError("添加失败") isHandle.value = false proxy.resetForm("postDataRef"); } }else{ let res = await sysDictData().modify(dataForm.value) if(res.code == 200) { proxy.$modal.msgSuccess("修改成功") isHandle.value = false getDataList(dataForm.value.dictType) proxy.resetForm("postDataRef"); }else{ proxy.$modal.msgError("修改失败") isHandle.value = false proxy.resetForm("postDataRef"); } const handleData = () => { proxy.$refs["postDataRef"].validate(async valid => { if (valid) { if (!dataForm.value.id) { let res = await sysDictData().create(dataForm.value) if (res.code == 200) { proxy.$modal.msgSuccess("添加成功") isHandle.value = false getDataList(dataForm.value.dictType) proxy.resetForm("postDataRef"); } else { proxy.$modal.msgError("添加失败") isHandle.value = false proxy.resetForm("postDataRef"); } } else { let res = await sysDictData().modify(dataForm.value) if (res.code == 200) { proxy.$modal.msgSuccess("修改成功") isHandle.value = false getDataList(dataForm.value.dictType) proxy.resetForm("postDataRef"); } else { proxy.$modal.msgError("修改失败") isHandle.value = false proxy.resetForm("postDataRef"); } } } } }); }); } //取消 const cancelData = () =>{ isHandle.value = false proxy.resetForm("postDataRef"); const cancelData = () => { isHandle.value = false proxy.resetForm("postDataRef"); } //查看按钮相关 const handleDetail = (row) =>{ getDataList(row.dictType) openDataForm.value = true console.log('form',dataForm.value); dataForm.value.dictType = row.dictType isHandle.value = false const handleDetail = (row) => { getDataList(row.dictType) openDataForm.value = true console.log('form', dataForm.value); dataForm.value.dictType = row.dictType isHandle.value = false } //关闭按钮相关 const close = () =>{ openDataForm.value = false proxy.resetForm('postDataRef') isHandle.value = false const close = () => { openDataForm.value = false proxy.resetForm('postDataRef') isHandle.value = false } // 新增 // 新增 function handleAddData() { let type = dataForm.value.dictType proxy.resetForm("postDataRef"); dataForm.value.dictType = type console.log('form1',dataForm.value); isHandle.value = true if(dataForm.value.id){ delete dataForm.value.id } let type = dataForm.value.dictType proxy.resetForm("postDataRef"); dataForm.value.dictType = type console.log('form1', dataForm.value); isHandle.value = true if (dataForm.value.id) { delete dataForm.value.id } } /** 修改 */ async function handleUpdateData(row) { //将表单数据更新为table对应值 Object.keys(row).forEach(key => { if (dataForm.value.hasOwnProperty(key)) { dataForm.value[key] = row[key]; } }); dataForm.value.id = row.id isHandle.value = true //将表单数据更新为table对应值 Object.keys(row).forEach(key => { if (dataForm.value.hasOwnProperty(key)) { dataForm.value[key] = row[key]; } }); dataForm.value.id = row.id isHandle.value = true } /** 删除 */ function handleDeleteData(row) { proxy.$modal.confirm('确认删除"' + row.dictValue +'?') .then(async() => { let res = await sysDictData().remove(row.id) if(res.code == 200) { proxy.$modal.msgSuccess("删除成功"); getDataList(row.dictType) } }).catch(() => {}); proxy.$modal.confirm('确认删除"' + row.dictValue + '?') .then(async () => { let res = await sysDictData().remove(row.id) if (res.code == 200) { proxy.$modal.msgSuccess("删除成功"); getDataList(row.dictType) } }).catch(() => { }); } onMounted(async()=>{ getList(); onMounted(async () => { getList(); }) @@ -300,153 +304,162 @@ <!--搜索框--> <el-form :model="search" ref="queryRef" :inline="true" v-show="showSearch"> <el-form-item label="" prop="dictName"> <el-input v-model="search.dictName" placeholder="请输入管点名称或编号" clearable style="width: 200px" @keyup.enter="handleQuery" /> <el-input v-model="search.dictName" placeholder="请输入管点名称或编号" clearable style="width: 200px" @keyup.enter="handleQuery" /> </el-form-item> <el-form-item> <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button> <el-button icon="Refresh" @click="resetQuery">重置</el-button> </el-form-item> <el-form-item> <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button> <el-button icon="Refresh" @click="resetQuery">重置</el-button> </el-form-item> </el-form> <!--操作按钮列--> <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> <el-button type="primary" plain icon="Plus" @click="handleAdd" >新增</el-button> </el-col> <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> <el-col :span="1.5"> <el-button type="primary" plain icon="Plus" @click="handleAdd" >新增 </el-button> </el-col> <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> </el-row> <!--表格及分页--> <el-table v-loading="loading" :data="tableData" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55" align ="center" /> <el-table-column v-for="(item, key, index) of tableHeader" :prop="key.toString()" :label="item" :key="index" align="center" ></el-table-column> <el-table-column label="操作" width="180" align="center" class-name="small-padding fixed-width"> <template #default="scope"> <el-button link type="primary" icon="Edit" @click="handleDetail(scope.row)">查看字典数据</el-button> <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)">修改</el-button> <el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button> </template> </el-table-column> <el-table-column type="selection" width="55" align="center"/> <el-table-column v-for="(item, key, index) of tableHeader" :prop="key.toString()" :label="item" :key="index" align="center" ></el-table-column> <el-table-column label="操作" width="180" align="center" class-name="small-padding fixed-width"> <template #default="scope"> <el-button link type="primary" icon="Edit" @click="handleDetail(scope.row)">查看字典数据</el-button> <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)">修改</el-button> <el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)">删除</el-button> </template> </el-table-column> </el-table> <pagination v-show="total > 0" :total="total" v-model:page="search.page" v-model:limit="search.limit" @pagination="getList" v-show="total > 0" :total="total" v-model:page="search.page" v-model:limit="search.limit" @pagination="getList" /> <!-- 添加/修改弹窗 --> <el-dialog :title="title" v-model="openForm" width="45vw" center append-to-body> <el-form class="form-box" ref="postRef" :model="form" :rules="rules"> <el-form-item label="字典名称" prop="dictName"> <el-input v-model="form.dictName" placeholder="请输入字典名称" /> </el-form-item> <el-form-item label="字典类型" prop="dictType"> <el-input v-model="form.dictType" placeholder="请输入字典类型" /> </el-form-item> <el-form-item label="备注" prop="remark"> <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" /> </el-form-item> <el-form-item></el-form-item> </el-form> <template #footer> <div class="dialog-footer"> <el-button type="primary" @click="submitForm">确 定</el-button> <el-button @click="cancel">取 消</el-button> </div> </template> <el-form class="form-box" ref="postRef" :model="form" :rules="rules"> <el-form-item label="字典名称" prop="dictName"> <el-input v-model="form.dictName" placeholder="请输入字典名称"/> </el-form-item> <el-form-item label="字典类型" prop="dictType"> <el-input v-model="form.dictType" placeholder="请输入字典类型"/> </el-form-item> <el-form-item label="备注" prop="remark"> <el-input v-model="form.remark" type="textarea" placeholder="请输入内容"/> </el-form-item> <el-form-item></el-form-item> </el-form> <template #footer> <div class="dialog-footer"> <el-button type="primary" @click="submitForm">确 定</el-button> <el-button @click="cancel">取 消</el-button> </div> </template> </el-dialog> <!-- 字典数据弹窗 --> <el-dialog title="字典数据" v-model="openDataForm" width="50vw" center append-to-body> <!--操作按钮列--> <el-row> <el-col> <el-button type="primary" plain icon="Plus" @click="handleAddData" >新增</el-button> </el-col> </el-row> <!--表格--> <el-table v-loading="loading" :data="tableDictData"> <el-table-column v-for="(item, key, index) of tableDataHeader" :prop="key.toString()" :label="item" :key="index" align="center" > </el-table-column> <el-table-column label="操作" width="180" align="center" class-name="small-padding fixed-width"> <template #default="scope"> <el-button link :type="dataForm.dictValue == scope.row.dictValue ? 'warning' : 'primary'" icon="Edit" @click="handleUpdateData(scope.row)">修改</el-button> <el-button link type="primary" icon="Delete" @click="handleDeleteData(scope.row)">删除</el-button> </template> </el-table-column> </el-table> <el-form title="添加数据" v-show="isHandle" class="dataForm-box" ref="postDataRef" :rules="dataRules" :model="dataForm" inline label-width="100px"> <el-form-item prop="dictType"> <span>{{ dataForm.dictType }}</span> </el-form-item> <el-form-item prop="dictValue"> <el-input v-model="dataForm.dictValue" placeholder="请输入字典键值"></el-input> </el-form-item> <el-form-item prop="dictLabel"> <el-input v-model="dataForm.dictLabel" placeholder="请输入字典描述"></el-input> </el-form-item> <el-form-item prop="remark"> <el-input v-model="dataForm.remark" placeholder="请输入备注"></el-input> </el-form-item> <el-form-item> <el-button type="primary" @click="handleData">确 认</el-button> <el-button @click="cancelData">取 消</el-button> </el-form-item> </el-form> <template #footer> <div class="dialog-footer"> <el-button @click="close">关 闭</el-button> </div> </template> </el-dialog> <!--操作按钮列--> <el-row> <el-col> <el-button type="primary" plain icon="Plus" @click="handleAddData" >新增 </el-button> </el-col> </el-row> <!--表格--> <el-table v-loading="loading" :data="tableDictData"> <el-table-column v-for="(item, key, index) of tableDataHeader" :prop="key.toString()" :label="item" :key="index" align="center" > </el-table-column> <el-table-column label="操作" width="180" align="center" class-name="small-padding fixed-width"> <template #default="scope"> <el-button link :type="dataForm.dictValue == scope.row.dictValue ? 'warning' : 'primary'" icon="Edit" @click="handleUpdateData(scope.row)">修改 </el-button> <el-button link type="primary" icon="Delete" @click="handleDeleteData(scope.row)">删除 </el-button> </template> </el-table-column> </el-table> <el-form title="添加数据" v-show="isHandle" class="dataForm-box" ref="postDataRef" :rules="dataRules" :model="dataForm" inline label-width="100px"> <el-form-item prop="dictType"> <span>{{ dataForm.dictType }}</span> </el-form-item> <el-form-item prop="dictValue"> <el-input v-model="dataForm.dictValue" placeholder="请输入字典键值"></el-input> </el-form-item> <el-form-item prop="dictLabel"> <el-input v-model="dataForm.dictLabel" placeholder="请输入字典描述"></el-input> </el-form-item> <el-form-item prop="remark"> <el-input v-model="dataForm.remark" placeholder="请输入备注"></el-input> </el-form-item> <el-form-item> <el-button type="primary" @click="handleData">确 认</el-button> <el-button @click="cancelData">取 消</el-button> </el-form-item> </el-form> <template #footer> <div class="dialog-footer"> <el-button @click="close">关 闭</el-button> </div> </template> </el-dialog> </div> </template> <style scoped lang="scss"> .dataForm-box{ background-color: #ffffff; display:flex; .el-form-item{ width: 18%; margin: 10px 1%; span{ margin: 0 auto; // font-weight: 600; } } .dataForm-box { background-color: #ffffff; display: flex; .el-form-item { width: 18%; margin: 10px 1%; span { margin: 0 auto; // font-weight: 600; } } } .focus{ color: aqua; .focus { color: aqua; } </style> src/views/system/menu/index.vue
@@ -45,7 +45,7 @@ align="center" :default-expand-all="isExpandAll" :tree-props="{ children: 'children', hasChildren: 'hasChildren' }" fit="true" :fit="true" > <el-table-column prop="name" label="菜单名称" :show-overflow-tooltip="true"></el-table-column> <el-table-column prop="icon" label="图标" align="center"> src/views/system/role/index.vue
@@ -258,7 +258,7 @@ form.value = { name: '', description: '', sort:'', sort: 0, }; proxy.resetForm("roleRef"); } src/views/system/user/index.vue
@@ -67,7 +67,7 @@ <el-dialog :title="title" v-model="open" append-to-body center> <el-form class="form-box" ref="userRef" :model="form" :rules="rules"> <el-form-item label="用户名" prop="userName"> <el-input :disabled ="form.id" v-model="form.userName" placeholder="请输入用户名称"/> <el-input :disabled ="!!form.id" v-model="form.userName" placeholder="请输入用户名称"/> </el-form-item> <el-form-item v-if="!form.id" label="密码" prop="password"> <el-input v-model="form.password" placeholder="请输入密码" /> @@ -132,7 +132,6 @@ import user from "@/api/system/user"; import role from "@/api/system/role"; import { PREURL } from "@/config/index"; import userClassify from "@/api/configuration/userClassify"; import { sysDictData } from "@/api/system/dict"; import setPostParams from "@/utils/searchParams.js"; const { proxy } = getCurrentInstance(); src/views/userCenter.vue
文件已删除 src/views/waterMeter/meterOperation/index.vue
文件已删除 src/views/waterMeter/supplier/index.vue
文件已删除 src/views/waterMeter/useWaterMeter/index.vue
文件已删除 src/views/waterMeter/verification/index.vue
文件已删除 src/views/waterMeter/waterMeterInfo/index.vue
文件已删除 src/views/waterMeter/waterModel/index.vue
文件已删除 src/views/workOrderManage/accountApply/index.vue
文件已删除 src/views/workOrderManage/meterConstruction/index.vue
文件已删除 src/views/workOrderManage/waterMeterAlteration/index.vue
文件已删除 src/views/workOrderManage/waterMeterChange/index.vue
文件已删除 src/views/workOrderManage/waterMeterCloseAccount/index.vue
文件已删除 src/views/workOrderManage/waterMeterMaintainRecords/index.vue
文件已删除 src/views/workOrderManage/waterMeterRepair/index.vue
文件已删除 src/views/workOrderManage/waterMeterStopAccount/index.vue
文件已删除 src/views/workOrderManage/workOrderList/index.vue
文件已删除