yrik hace 4 años
padre
commit
81e8b433b0

+ 74 - 0
ruoyi-ui/src/api/system/editing.js

@@ -0,0 +1,74 @@
+import request from '@/utils/request'
+
+// 获取表单数据
+export function getQueryList(data) {
+  return request({
+    url: '/boman-web-core/p/cs/table/getByTableName',
+    method: 'POST',
+    data
+  })
+}
+// 获取表单查询字段、按钮、表头
+export function getTableQuery(data) {
+  return request({
+    url: '/boman-web-core/p/cs/getTableQuery',
+    method: 'POST',
+    data
+  })
+}
+
+// 保存
+export function addbjectSave(data) {
+  return request({
+    url: '/boman-web-core/p/cs/objectSave',
+    method: 'POST',
+    data
+  })
+}
+// 获取表单列表数据
+export function getObject(data) {
+  return request({
+    url: '/boman-web-core/p/cs/getObject',
+    method: 'POST',
+    data
+  })
+}
+// 根据表名获取表单信息
+export function getByTableName(data) {
+  return request({
+    url: '/boman-web-core/p/cs/table/getByTableName',
+    method: 'POST',
+    data
+  })
+}
+export function delMenu(id) {
+  return request({
+    url: 'boman-web-core/p/cs/objectDelete',
+    method: 'delete'
+  })
+}
+
+// 提交
+export function tableSubimt(data) {
+  return request({
+    url: '/boman-web-core/p/cs/objectSubmit',
+    method: 'POST',
+    data
+  })
+}
+ // 反提交
+ export function tableSubimtanit(data) {
+   return request({
+     url: '/boman-web-core/p/cs/objectUnSubmit',
+     method: 'POST',
+     data
+   })
+ }
+// 获取表单tab数据
+ export function geteditindeTab(data) {
+   return request({
+     url: '/boman-web-core/p/cs/objectTab',
+     method: 'POST',
+     data
+   })
+ }

+ 24 - 0
ruoyi-ui/src/api/system/table.js

@@ -48,3 +48,27 @@ export function delMenu(id) {
   })
 }
 
+// 提交
+export function tableSubimt(data) {
+  return request({
+    url: '/boman-web-core/p/cs/objectSubmit',
+    method: 'POST',
+    data
+  })
+}
+ // 反提交
+ export function tableSubimtanit(data) {
+   return request({
+     url: '/boman-web-core/p/cs/objectUnSubmit',
+     method: 'POST',
+     data
+   })
+ }
+// 获取表单tab数据
+ export function geteditindeTab(data) {
+   return request({
+     url: '/boman-web-core/p/cs/objectTab',
+     method: 'POST',
+     data
+   })
+ }

+ 1 - 1
ruoyi-ui/src/views/index.vue

@@ -42,7 +42,7 @@
                          <div v-if="num == 0">
                            <el-table :data="tableDataalid" style="width: 100%;margin-top: 10px;"  :stripe="true"   >
                                    <!-- <el-table-column type="selection" width="55" align="center" /> -->
-                                   <el-table-column label="序号" align="center" prop="noticeId" width="60" height="53" max-height="53" />
+                                  <el-table-column label="序号" align="center" prop="noticeId" width="60" height="53" max-height="53" />
                                   <el-table-column
                                     label="申请人"
                                     align="center"

+ 210 - 23
ruoyi-ui/src/views/system/editing/index.vue

@@ -4,39 +4,31 @@
     <div class="eniting_header">
       <p class="p">表编辑</p>
       <div class="ppl">
-        <p v-for="(item,index) in 6" :key="index" @click="enditTab(index)">
+       <p v-for="(item,index) in tabldie" :key="index" @click="enditTab(index)">
           <img src="../../../assets/images/icon_tbtab_normal.png" alt="" class="index_headerImg" v-if="num !== index">
           <img src="../../../assets/images/icon_tbtab_selected.png" alt="" class="index_headerImg" v-if="num == index">
-          <span :class="[index == num ? 'span' : '']">列表名称</span>
+          <span :class="[index == num ? 'span' : '']">{{item.tableComment}}</span>
         </p>
       </div>
       <el-divider></el-divider>
-      <div class="table_headerBtun">
-           <el-button type="primary" plain v-for="(item,index) in 7" :key="index">新增</el-button>
+      <div class="table_headerBtun" v-if="queryData.buttonList">
+           <el-button type="primary" plain v-for="(item,indexss) in queryData.buttonList.split('')" :key="keyname + indexss" @click="handleQuery(item)">{{item | btnConversion}}</el-button>
       </div>
     </div>
     <!-- 内容 -->
     <div class="eniting_nav">
      <el-collapse v-model="activeNames" @change="handleChange">
-       <el-collapse-item :title="title" :name="index" v-for="(item,index) in 1" :key="index" class="eitde">
-         <el-form :model="queryParams" ref="queryForm" :inline="true"  >
-           <el-row :gutter="0">
-             <el-col :span="6" v-for="(item,index) in 12" :key="index">
-               <el-form-item :label="labletit" prop="dictName">
-                <el-input
-               v-model="queryParams.dictName"
-               placeholder="请输入字典名称"
-               clearable
-               size="small"
-               @keyup.enter.native="handleQuery"
-               />
-              </el-form-item>
-           </el-col>
+       <el-collapse-item :title="item.columnComment" :name="index" v-for="(item,index) in taleLisst" :key="index" class="eitde">
+         <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="120px">
+           <el-row >
+             <el-col :span="24"  :key="index">
+                 <dynamic-forms :ref="items.columnName" :config="queryParams" @inputs = "changeFn" :formConfig="items" v-for="(items,indexs) in item.hrChildren" :key='items.id' />
+             </el-col>
            </el-row>
          </el-form>
        </el-collapse-item>
        <!-- 扩展功能 -->
-       <el-collapse-item :title="title" :name="index" v-for="(item,index) in 1" :key="index" class="eitde">
+       <!-- <el-collapse-item :title="title" :name="index" v-for="(item,index) in 1" :key="index" class="eitde">
          <el-form :model="queryParams" ref="queryForm" :inline="true"  >
            <el-row :gutter="0">
              <el-col :span="12" v-for="(item,index) in 2" :key="index">
@@ -65,9 +57,9 @@
            </el-col>
            </el-row>
          </el-form>
-       </el-collapse-item>
+       </el-collapse-item> -->
        <!-- 服务程序 -->
-       <el-collapse-item :title="title" :name="index" v-for="(item,index) in 1" :key="index" class="eitde">
+       <!-- <el-collapse-item :title="title" :name="index" v-for="(item,index) in 1" :key="index" class="eitde">
          <el-form :model="queryParams" ref="queryForm" :inline="true"  >
            <el-row :gutter="0">
             <el-col :span="12" v-for="(item,index) in 8" :key="index">
@@ -83,13 +75,16 @@
             </el-col>
            </el-row>
          </el-form>
-       </el-collapse-item>
+       </el-collapse-item> -->
+
      </el-collapse>
     </div>
   </div>
 </template>
 
 <script>
+ import { getTableQuery, getQueryList, geteditindeTab, tableSubimt, tableSubimtanit, addbjectSave} from '@/api/system/table.js';
+ // import { getTableQuery, getQueryList,geteditindeTab, tableSubimt, tableSubimtanit, addbjectSave } from '@/src/api/system/editing.js';
   export default {
       name: "index",
       data() {
@@ -105,17 +100,209 @@
              status: undefined
            },
            labletit:'查询参数1233',
-           num:0
+           num:0,
+           tabledeLise:{
+             table:'obj_test',
+             isUi:true
+           },
+           taleLisst:[]  ,//列表数据
+           // 按钮参数
+           tableZbie:{
+             table:'obj_test'
+           },
+           tableZbietabg:{
+             table:'sys_user'
+           },
+           queryData: {},
+            keyname:'nu',
+            tabldie:[],
+            forme:{
+              table:'',
+              objId:-1,
+              fixedData:{}
+            },
+            formeanti:{
+              table:'',
+              commitData:[],
+            },
+            formy:{
+              id:0,
+              status:1
+            }
         };
       },
+      mounted() {
+        this.edingelsie()
+        // button
+        this.init()
+        // tab
+        this.edingelsietab()
+      },
+      filters:{
+        btnConversion(val) {
+          switch(val){
+            case 'A':
+            return '保存';
+            case 'M':
+            return '保存';
+            case 'D':
+            return '删除';
+            case 'Q':
+            return '查询';
+            case 'S':
+            return '提交';
+            case 'U':
+            return '反提交';
+            case 'I':
+            return '导入';
+            case 'E':
+            return '导出';
+          }
+        }
+      },
       methods: {
         handleChange(val) {
                 console.log(val);
               },
         enditTab(index){
          this.num = index
+         // this.tabledeLise.table = this.tabldie[index].tableName
+         // this.formeanti.table = this.tabldie[index].tableName
+         // this.forme.table = this.tabldie[index].tableName
+         if(index == 0){
+          this.tabledeLise.table = 'obj_test'
+         }else if(index ==1){
+          this.tabledeLise.table = 'sys_config'
+         }
+         this.tableZbie.table = this.tabldie[index].tableName
+         this.edingelsie()
+         this.init()
+        },
+        // 按钮
+        init() {
+          getTableQuery(
+            this.tableZbie
+          ).then(res => {
+            let data = res.data
+            this.queryData = data
+            console.log(this.queryData,567)
+          })
+        },
+        // 数据信息
+        edingelsie(){
+          console.log(1234)
+          getQueryList(
+            this.tabledeLise
+          ).then(res => {
+            let data = res.data
+            this.taleLisst = data
+            // console.log(this.queryData.queryList)
+          })
+        },
+        // tab数据
+       edingelsietab(){
+         console.log(4566)
+         geteditindeTab(this.tableZbietabg).then(response => {
+           this.tabldie = response.data.ref
+           // this.msgSuccess("反提交成功");
+           // this.open = false;
+           // this.getList();
+         });
+       },
+       changeFn(obj) {
+         for(let key in obj){
+           this.queryParams[key] = obj[key]
+         }
+       },
+       handleQuery(index) {
+          console.log(index,4)
+          for(let item of this.taleLisst){
+            for(var i = 0 ; i < item.hrChildren.length ; i++){
+              if(item.hrChildren[i].htmlType == 'checkbox' || item.hrChildren[i].htmlType == 'imageUpload' || item.hrChildren[i].htmlType == 'fileUpload'){
+                this.queryParams[item.hrChildren[i].columnName] = this.$refs[item.hrChildren[i].columnName][0].config
+              } else{
+                this.queryParams[item.hrChildren[i].columnName] = this.$refs[item.hrChildren[i].columnName][0].config[item.hrChildren[i].columnName]
+              }
+            }
+          }
+          if(index == 'D'){
+            //删除
+            this.handleDelete(index)
+          }else if(index == 'S'){
+            //提交  保存
+             this.formeanti.table = 'obj_test'
+             this.formeanti.commitData = []
+             this.formy.status = 1
+             this.formy.id = 0
+             this.formeanti.commitData.push(this.formy)
+             console.log(this.formeanti)
+            // this.antiSubmission()
+          }else if(index == 'U'){
+            //反提交  保存
+             this.formeanti.table = 'obj_test'
+             this.formeanti.commitData = []
+             this.formy.status = 2
+             this.formy.id = 0
+             this.formeanti.commitData.push(this.formy)
+             console.log(this.formeanti)
+            // this.antiSubmission()
+          }else if(index == 'M'){
+            // 修改
+            this.forme.table = 'obj_test'
+            this.forme.objId = 1
+            this.forme.fixedData = this.queryParams
+            // this.submitForm()
+          }else if(index == 'A'){
+            //新增
+            this.forme.table = 'obj_test'
+            this.forme.objId = -1
+            this.forme.fixedData = this.queryParams
+            // this.submitForm()
+          }
+
+         console.log(this.forme)
+         // this.getList();
+       },
+      /** 新增 修改提交按钮 */
+      submitForm: function() {
+              addbjectSave(this.forme).then(response => {
+                this.msgSuccess("保存成功");
+                this.open = false;
+                // this.getList();
+              });
+      },
+      // 提交反提交
+      antiSubmission(){
+        if (this.formy.status == 1) {
+          // 提交
+          tableSubimt(this.formeanti).then(response => {
+            this.msgSuccess("提交成功");
+            // this.open = false;
+            // this.getList();
+          });
+        } else if(this.formy.status == 2){
+          // 反提交
+          tableSubimtanit(this.formeanti).then(response => {
+            this.msgSuccess("反提交成功");
+            // this.open = false;
+            // this.getList();
+          });
         }
       },
+      //删除
+      handleDelete(row) {
+        this.$confirm('是否确认删除名称为"' + row + '"的数据项?', "警告", {
+            confirmButtonText: "确定",
+            cancelButtonText: "取消",
+            type: "warning"
+          }).then(function() {
+            // return delMenu(row.id);
+          }).then(() => {
+            // this.getList();
+            this.msgSuccess("删除成功");
+          })
+      }
+      },
     };
 
 </script>

+ 2 - 1
ruoyi-ui/src/views/system/surface/index.vue

@@ -64,6 +64,7 @@
         queryParams: {
           table: 'obj_test',
           pageNo: 1,
+          isUi:false,
           pageSize: 10,
           orderBy: 'create_time desc',
           fixedData: {}
@@ -179,7 +180,7 @@
       },
       init() {
         getTableQuery({
-          table: 'obj_test'
+          table: 'obj_test',
         }).then(res => {
           let data = res.data
           this.queryData = data

+ 61 - 25
ruoyi-ui/src/views/system/table/index.vue

@@ -10,7 +10,7 @@
     <!-- 内容 -->
     <div class="table_nav headertable_nav">
       <el-collapse v-model="activeNames" @change="handleChange">
-        <el-collapse-item :title="item.columnComment" :name="index" v-for="(item,index) in taleLisst" :key="index">
+        <el-collapse-item :title="item.columnComment" :name="index" v-for="(item,index) in taleLisst" :key="index" >
           <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="120px">
             <el-row :gutter="0">
               <el-col :span="24"  :key="index">
@@ -18,7 +18,7 @@
               </el-col>
             </el-row>
           </el-form>
-        </el-collapse-item>
+        </el-collapse-item> 
       </el-collapse>
     </div>
   </div>
@@ -26,7 +26,10 @@
 <script>
   import {
     getTableQuery,
-    getQueryList
+    getQueryList,
+    tableSubimt,
+    tableSubimtanit,
+    addbjectSave
   } from '@/api/system/table.js'
   export default {
     name: "index",
@@ -55,15 +58,23 @@
           objId:-1,
           fixedData:{}
         },
+        formeanti:{
+          table:'',
+          commitData:[],
+        },
+        formy:{
+          id:0,
+          status:1
+        }
       };
     },
     filters:{
       btnConversion(val) {
         switch(val){
           case 'A':
-          return '新增';
+          return '保存';
           case 'M':
-          return '修改';
+          return '保存';
           case 'D':
           return '删除';
           case 'Q':
@@ -107,17 +118,36 @@
          if(index == 'D'){
            //删除
            this.handleDelete(index)
-         }else if(index == 'S' || index == 'A'){
+         }else if(index == 'S'){
            //提交  保存
-           this.forme.table = 'obj_test'
-           this.forme.objId = -1
-           this.forme.fixedData = this.queryParams
-           // this.submitForm()
+            this.formeanti.table = 'obj_test'
+            this.formeanti.commitData = []
+            this.formy.status = 1
+            this.formy.id = 0
+            this.formeanti.commitData.push(this.formy)
+            console.log(this.formeanti)
+           this.antiSubmission()
+         }else if(index == 'U'){
+           //反提交  保存
+            this.formeanti.table = 'obj_test'
+            this.formeanti.commitData = []
+            this.formy.status = 2
+            this.formy.id = 0
+            this.formeanti.commitData.push(this.formy)
+            console.log(this.formeanti)
+           this.antiSubmission()
          }else if(index == 'M'){
+           // 修改
            this.forme.table = 'obj_test'
            this.forme.objId = 1
            this.forme.fixedData = this.queryParams
            this.submitForm()
+         }else if(index == 'A'){
+           //新增
+           this.forme.table = 'obj_test'
+           this.forme.objId = -1
+           this.forme.fixedData = this.queryParams
+           this.submitForm()
          }
 
         console.log(this.forme)
@@ -155,25 +185,31 @@
         this.handleDelete(index)
       }
       },
-      /** 提交按钮 */
+      /** 新增 修改提交按钮 */
       submitForm: function() {
-        // this.$refs["form"].validate(valid => {
-          // if (valid) {
-            if (this.forme.objId != -1) {
-              updateType(this.forme).then(response => {
-                this.msgSuccess("修改成功");
-                this.open = false;
-                // this.getList();
-              });
-            } else {
-              addType(this.forme).then(response => {
-                this.msgSuccess("新增成功");
+              addbjectSave(this.forme).then(response => {
+                this.msgSuccess("保存成功");
                 this.open = false;
                 // this.getList();
               });
-            }
-          // }
-        // });
+      },
+      // 提交反提交
+      antiSubmission(){
+        if (this.formy.status == 1) {
+          // 提交
+          tableSubimt(this.formeanti).then(response => {
+            this.msgSuccess("提交成功");
+            // this.open = false;
+            // this.getList();
+          });
+        } else if(this.formy.status == 2){
+          // 反提交
+          tableSubimtanit(this.formeanti).then(response => {
+            this.msgSuccess("反提交成功");
+            // this.open = false;
+            // this.getList();
+          });
+        }
       },
       //删除
       handleDelete(row) {