|
@@ -0,0 +1,190 @@
|
|
|
+<template>
|
|
|
+ <div class="edit-page">
|
|
|
+ <el-form :model="formModel" ref="formcomp" label-position="right" label-width="100" :inline="false" :rules="rules" :inline-message="true">
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :sm="24" :md="12" :lg="8">
|
|
|
+ <el-form-item label="单位名称" prop="orgName">
|
|
|
+ <el-input v-model="formModel.orgName" autocomplete="off" placeholder="请输入单位名称" class="edit-form-item" clearable/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :sm="24" :md="12" :lg="8">
|
|
|
+ <el-form-item label="上级单位名称">
|
|
|
+ <el-tree-select v-model="formModel.superId" :data="orgTreeNodes" :props="orgNodeProps" :render-after-expand="false" check-strictly style="width:100%;"/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :sm="24" :md="12" :lg="8">
|
|
|
+ <el-form-item label="多井巡查模板">
|
|
|
+ <el-input v-model="formModel.multiPatrolTemp" autocomplete="off" placeholder="请选择多井巡查模板" class="edit-form-item" clearable/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :sm="24" :md="12" :lg="8">
|
|
|
+ <el-form-item label="显示序号">
|
|
|
+ <el-input-number v-model="formModel.displayNum" :min="1" :max="10000"/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label=" ">
|
|
|
+ <el-button type="primary" @click="saveSubmit">保存</el-button>
|
|
|
+ <el-button type="success" @click="addSubmit">新增</el-button>
|
|
|
+ <el-button @click="delSubmit">删除</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ </el-form>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script setup>
|
|
|
+ import {reactive,ref,toRaw,onMounted} from 'vue'
|
|
|
+ import stationAPI from "../../api/station.js"
|
|
|
+ import {ElMessageBox,ElMessage} from 'element-plus'
|
|
|
+ import utils from "../../utils/utils.js"
|
|
|
+
|
|
|
+ const props=defineProps({
|
|
|
+ record:Object
|
|
|
+ })
|
|
|
+
|
|
|
+ const orgTreeNodes = ref([])
|
|
|
+
|
|
|
+ const orgNodeProps = {
|
|
|
+ children: 'children',
|
|
|
+ label: 'name',
|
|
|
+ value:'id'
|
|
|
+ }
|
|
|
+
|
|
|
+ const formModel = reactive({
|
|
|
+ orgId:'',
|
|
|
+ orgName: '',
|
|
|
+ superId:'',
|
|
|
+ superName:'',
|
|
|
+ displayNum:1,
|
|
|
+ multiPatrolTemp:''
|
|
|
+ })
|
|
|
+
|
|
|
+ const formcomp = ref(null);
|
|
|
+
|
|
|
+ const rules =reactive({
|
|
|
+ orgName:[
|
|
|
+ {required:true,message:'单位名还未填写',trigger:'blur'},
|
|
|
+ { min: 1, max: 20, message: '单位名长度应该为1-20', trigger: 'blur' }
|
|
|
+ ],
|
|
|
+ superId:[
|
|
|
+ {required:true,message:'上级单位名还未选择',trigger:'blur'}
|
|
|
+ ]
|
|
|
+ })
|
|
|
+
|
|
|
+
|
|
|
+ onMounted(()=>{
|
|
|
+ loadOrgTree()
|
|
|
+ })
|
|
|
+
|
|
|
+ const loadOrgTree=()=>{
|
|
|
+ let converDef={id:'id',name:'name',superId:'superId',superName:'superName',children:'children'}
|
|
|
+ stationAPI.loadOrgTree().then((resp) => {
|
|
|
+ console.log(resp)
|
|
|
+ if(resp.code===0){
|
|
|
+ let treeDatas=utils.list2Tree(resp.data||[],converDef)
|
|
|
+ console.log(treeDatas['topNodes'])
|
|
|
+ orgTreeNodes.value=treeDatas['topNodes']
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ console.log(resp.msg)
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ const saveSubmit=()=>{
|
|
|
+ formcomp.value.validate((valid) => {
|
|
|
+ if(!valid){
|
|
|
+ ElMessage.error("请按要求填写数据");
|
|
|
+ return
|
|
|
+ }
|
|
|
+ stationAPI.save(toRaw(formModel)).then(resp=>{
|
|
|
+ if(resp.code!=0){
|
|
|
+ ElMessage.error(resp.msg)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ ElMessage.success('操作成功')
|
|
|
+
|
|
|
+
|
|
|
+ }).catch(err=>{
|
|
|
+ ElMessage.error(err||'操作失败')
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ const addSubmit=()=>{
|
|
|
+ formcomp.value.validate((valid) => {
|
|
|
+ if(!valid){
|
|
|
+ ElMessage.error("请按要求填写数据");
|
|
|
+ return
|
|
|
+ }
|
|
|
+ stationAPI.add(toRaw(formModel)).then(resp=>{
|
|
|
+ if(resp.code!=0){
|
|
|
+ ElMessage.error(resp.msg)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ ElMessage.success('操作成功')
|
|
|
+ //clearForm()
|
|
|
+
|
|
|
+
|
|
|
+ }).catch(err=>{
|
|
|
+ ElMessage.error(err||'操作失败')
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ const delSubmit=()=>{
|
|
|
+ if(!formModel.orgId){
|
|
|
+ ElMessage.error("请先选择一个组织机构,再继续");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ ElMessageBox.confirm(
|
|
|
+ '确定要删除吗?',
|
|
|
+ '操作确认',
|
|
|
+ {
|
|
|
+ confirmButtonText:'确定',
|
|
|
+ cancelButtonText:'取消',
|
|
|
+ type: 'warning'
|
|
|
+ }
|
|
|
+ ).then(()=>{
|
|
|
+ stationAPI.del({orgId:formModel.orgId}).then(resp=>{
|
|
|
+ if(resp.code!=0){
|
|
|
+ ElMessage.error(resp.msg)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ ElMessage.success('操作成功')
|
|
|
+ clearForm()
|
|
|
+
|
|
|
+
|
|
|
+ }).catch(err=>{
|
|
|
+ ElMessage.error(err||'操作失败')
|
|
|
+ })
|
|
|
+
|
|
|
+ }).catch(()=>{
|
|
|
+ console.log('cancel del')
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ const clearForm=()=>{
|
|
|
+ let [superName,superId,orgId,orgName,displayNum,multiPatrolTemp]=[null,null,null,null,null,null]
|
|
|
+ Object.assign(formModel,{superName,superId,orgId,orgName,displayNum,multiPatrolTemp})
|
|
|
+ }
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped>
|
|
|
+ .el-col{
|
|
|
+ height:60px;
|
|
|
+ }
|
|
|
+</style>
|