From 7db3ee6e84714a868e0b57a61a033d050b1a61fc Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期一, 18 九月 2023 21:06:30 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/UBCS-WEB/src/config/website.js                                                                             |    3 
 Source/UBCS-WEB/src/views/docking/data.vue                                                                        |    5 
 Source/UBCS-WEB/src/page/login/index.vue                                                                          |   11 
 Source/UBCS-WEB/src/views/code/code.vue                                                                           |    8 +
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/UIFieldSortVO.java        |    8 +
 Source/UBCS-WEB/src/api/docking/task.js                                                                           |    2 
 Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue                                                       |    3 
 Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue                                                 |   68 ++++++--
 Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue                                                      |   22 ++
 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java            |    7 
 Source/UBCS-WEB/src/views/docking/task.vue                                                                        |    7 
 Source/UBCS-WEB/src/views/modeling/original.vue                                                                   |    2 
 Source/UBCS-WEB/src/views/docking/loge.vue                                                                        |    4 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java       |   31 +++
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java      |    3 
 Source/UBCS-WEB/src/views/wel/Statistic.vue                                                                       |  153 ++++++++++-----------
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java    |    8 
 Source/UBCS-WEB/src/api/docking/data.js                                                                           |    2 
 Source/UBCS-WEB/src/components/FormTemplate/index.vue                                                             |    4 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java         |    3 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/UniversalInterfaceI.java               |    2 
 Source/UBCS-WEB/src/views/modeling/originalAdd.vue                                                                |   24 +-
 Source/UBCS-WEB/src/api/docking/loge.js                                                                           |    2 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java |   15 +-
 24 files changed, 248 insertions(+), 149 deletions(-)

diff --git a/Source/UBCS-WEB/src/api/docking/data.js b/Source/UBCS-WEB/src/api/docking/data.js
index 5d1cf4e..94da0af 100644
--- a/Source/UBCS-WEB/src/api/docking/data.js
+++ b/Source/UBCS-WEB/src/api/docking/data.js
@@ -1,6 +1,6 @@
 import request from '@/router/axios';
 
-export const getList = (page, size, params) => {
+export const getDataList = (page, size, params) => {
   return request({
     url: '/api/ubcs-code/dockingManagement/gridDockingData',
     method: 'get',
diff --git a/Source/UBCS-WEB/src/api/docking/loge.js b/Source/UBCS-WEB/src/api/docking/loge.js
index 4553623..8450a85 100644
--- a/Source/UBCS-WEB/src/api/docking/loge.js
+++ b/Source/UBCS-WEB/src/api/docking/loge.js
@@ -1,6 +1,6 @@
 import request from '@/router/axios';
 
-export const getList = (page, limit, params) => {
+export const getLogoList = (page, limit, params) => {
   return request({
     url: '/api/ubcs-code/dockingManagement/gridLoge',
     method: 'get',
diff --git a/Source/UBCS-WEB/src/api/docking/task.js b/Source/UBCS-WEB/src/api/docking/task.js
index f398361..fcb0acc 100644
--- a/Source/UBCS-WEB/src/api/docking/task.js
+++ b/Source/UBCS-WEB/src/api/docking/task.js
@@ -1,6 +1,6 @@
 import request from '@/router/axios';
 
-export const getList = (page, size, params) => {
+export const getTaskList = (page, size, params) => {
   return request({
     url: '/api/ubcs-code/dockingManagement/gridDockingTask',
     method: 'get',
diff --git a/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue b/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
index 14f0c2d..a5cb7ef 100644
--- a/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
+++ b/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
@@ -90,9 +90,13 @@
       type: String,
       default: "",
     },
+    eventList:{
+      type:Array
+    }
   },
   data() {
     return {
+      eventFlag:{},
       TreeValueForm:'',
       updateIndex: 0,
       form: {},
@@ -120,9 +124,12 @@
       slotColumnList: [],
     };
   },
-    mounted() {
+  mounted() {
     this.handleResize();
   },
+  created() {
+
+    },
   computed: {
     localTrendsSpan() {
       if (this.trendsSpan) {
@@ -157,6 +164,16 @@
   methods: {
     // 娓叉煋琛ㄥ崟妯℃澘
     templateRender(formItemList,TreeValue) {
+      if (this.eventList) {
+        this.eventFlag= this.eventList.some(item => {
+          if (item.classifyInvokeEditFlag === 'true') {
+            console.log('even', item);
+            this.eventObject = item;
+            return true;
+          }
+        });
+        // console.log('add',add)
+      }
       // 鏃犻渶鍒嗙粍鏁版嵁
       let column = [];
       let group = [];
@@ -165,6 +182,7 @@
       let value=''
       formItemList.forEach((formItem) => {
         formItem = this.resetFormConfig(formItem);
+        console.log(formItem)
         // console.log('formItem.dicData.value',formItem.dicData)
         if (formItem.type === "line") {
           group.push({
@@ -222,7 +240,7 @@
           format: formItem.dateFormate,
           keyAttr: formItem.keyAttr,
           value: (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
-            (formItem.secType == "codedatesec"?formItem.codeDateValue: null) || ( TreeValue&& formItem.secType == "codelevelsec" ? TreeValue : null),
+            (formItem.secType == "codedatesec"?formItem.codeDateValue: null) || ( TreeValue&& formItem.secType == "codelevelsec" ? TreeValue : null) ,
           placeholder: formItem.inputTip,
           comboxKey: formItem.comboxKey,
           tip: formItem.tooltips,
diff --git a/Source/UBCS-WEB/src/components/FormTemplate/index.vue b/Source/UBCS-WEB/src/components/FormTemplate/index.vue
index 04ea8ba..7c5fdee 100644
--- a/Source/UBCS-WEB/src/components/FormTemplate/index.vue
+++ b/Source/UBCS-WEB/src/components/FormTemplate/index.vue
@@ -15,6 +15,7 @@
       :type="type"
       :TreeValue="TreeValue"
       :rowOid="rowOid"
+      :eventList="eventList"
       :templateOid="templateOid"
       v-if="dialogVisible"
       ref="FormTemplate"
@@ -128,6 +129,7 @@
   },
   data() {
     return {
+      eventList:[],
       //鐮佸�肩殑绗簩绉嶅彧璇婚殣钘忔儏鍐�
       codeValueApplyStatus:'',
       loading: false,
@@ -256,6 +258,8 @@
               this.$refs.FormTemplate.templateRender(
                 res.data.formDefineVO.items
               );
+              this.eventList=res.data.templateVO.attributes
+              // this.$refs.FormTemplate.$emit('eventList',  res.data.templateVO.attributes);
               if (Object.keys(this.setForm).length > 0) {
                 this.$refs.FormTemplate.form = this.setForm;
               }
diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
index 8813035..61ebc48 100644
--- a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
+++ b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
@@ -182,7 +182,8 @@
     },
     Treedata: {
       type: Array
-    }
+    },
+
   },
   data() {
     return {
diff --git a/Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue b/Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue
index 0edd298..c56b682 100644
--- a/Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue
+++ b/Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue
@@ -26,7 +26,8 @@
           <el-option label="鏁版嵁鏌ヨ" value="queryData"></el-option>
         </el-select>
       </el-form-item>
-<!--      闆嗘垚浠诲姟 鏄惁鎺ㄩ�佹垚鍔�  闆嗘垚鏁版嵁  鏄惁鍒嗚В浠诲姟-->
+<!--      闆嗘垚浠诲姟 鏄惁鎺ㄩ�佹垚鍔�
+闆嗘垚鏁版嵁  鏄惁鍒嗚В浠诲姟-->
       <el-form-item v-if="((status.type == 'task' || status.type == 'data')&& status.stateTaskDataFlag)" size="small">
         <el-select v-model="formInline.stateTask" placeholder="璇烽�夋嫨鐘舵��">
           <el-option label="鏄�" value="true"></el-option>
@@ -71,7 +72,9 @@
 </template>
 
 <script>
-import {getList} from "@/api/docking/loge";
+import {getLogoList} from "@/api/docking/loge";
+import {getDataList} from "@/api/docking/data";
+import {getTaskList} from "@/api/docking/task";
 export default {
   name: "VciDockingSearch",
   props:['SearchObject','page','formInline','status'],
@@ -117,20 +120,44 @@
     },
     SaveHandler(){
       let name = this.SearchObject.searchData[this.formInline.type].prop;
-      getList(this.page.currentPage, this.page.pageSize, { [`conditionMap[${name}_like]`]: this.formInline.text}).then(res => {
-        if(!res.data.data.records){
-          this.$message.error('鏆傛湭鏌ュ埌鏁版嵁锛�')
-        }else {
-          let Data=res.data.data;
-          this.$emit('getList',Data);
-        }
-      });
+      const requestApi = (api) => {
+        api(this.page.currentPage, this.page.pageSize, { [`conditionMap[${name}_like]`]: this.formInline.text}).then(res => {
+          if(!res.data.data.records){
+            this.$message.error('鏆傛湭鏌ュ埌鏁版嵁锛�')
+          }else {
+            let Data=res.data.data;
+            this.$emit('getList',Data);
+          }
+        });
+      }
+      //鏃ュ織
+      if(this.status.type=='loge'){
+        requestApi(getLogoList);
+      }
+      //鏁版嵁
+      if(this.status.type=='data'){
+        requestApi(getDataList);
+      }
+      //浠诲姟
+      if(this.status.type=='task'){
+        requestApi(getTaskList);
+      }
     },
     handleSearch() {
-      const { type, typeFlag, stateFlag, stateTaskDataFlag, dateFlag, lastDateFlag ,sendTypeFlga} = this.status;
+      const { type, typeFlag, stateFlag, stateTaskDataFlag, dateFlag, lastDateFlag ,sendTypeFlga } = this.status;
       const { currentPage, pageSize } = this.page;
       const { cut, state, stateTask, Date, lastDate, taskCut } = this.formInline;
       const requestParams = {};
+      const requestApi = (api) => {
+        api(currentPage, pageSize, requestParams).then(res => {
+          if(!res.data.data.records){
+            this.$message.error('鏆傛湭鏌ュ埌鏁版嵁锛�');
+          } else {
+            let Data=res.data.data;
+            this.$emit('getList',Data);
+          }
+        });
+      }
       // 闆嗘垚鏃ュ織绫诲瀷
       if (type === 'loge' && typeFlag) {
         requestParams['conditionMap[type_like]'] = cut;
@@ -157,15 +184,16 @@
       if ((type === 'task' || type === 'data') && sendTypeFlga) {
         requestParams['conditionMap[sendType_like]'] = taskCut;
       }
-      // 璇锋眰
-      getList(currentPage, pageSize, requestParams).then(res => {
-        if(!res.data.data.records){
-          this.$message.error('鏆傛湭鏌ュ埌鏁版嵁锛�')
-        }else {
-          let Data=res.data.data;
-          this.$emit('getList',Data);
-        }
-      });
+
+      if (type == 'loge') {
+        requestApi(getLogoList);
+      }
+      if (type == 'data') {
+        requestApi(getDataList);
+      }
+      if (type == 'task') {
+        requestApi(getTaskList);
+      }
     }
   }
 }
diff --git a/Source/UBCS-WEB/src/config/website.js b/Source/UBCS-WEB/src/config/website.js
index cc399fe..af0dc75 100644
--- a/Source/UBCS-WEB/src/config/website.js
+++ b/Source/UBCS-WEB/src/config/website.js
@@ -46,6 +46,7 @@
   // 鎶ヨ〃璁捐鍣ㄥ湴鍧�(cloud绔彛涓�8108,boot绔彛涓�80)
   reportUrl: 'http://localhost:8108/ureport',
   // 鍗曠偣鐧诲綍绯荤粺璁よ瘉(ubcs-auth鏈嶅姟鐨勫湴)
+  ssoUrl:'http://localhost:37000/oauth/authorize?client_id=saber&response_type=code&redirect_uri=',
   // 鍗曠偣鐧诲綍鍥炶皟鍦板潃(Saber鏈嶅姟鐨勫湴鍧�)
-  redirectUri: 'http://localhost:1888',
+  redirectUri: 'http://localhost:37000',
 }
diff --git a/Source/UBCS-WEB/src/page/login/index.vue b/Source/UBCS-WEB/src/page/login/index.vue
index 97f7c74..0e0b68e 100644
--- a/Source/UBCS-WEB/src/page/login/index.vue
+++ b/Source/UBCS-WEB/src/page/login/index.vue
@@ -12,10 +12,6 @@
         <div style="font-size: 15px">
           <el-image src="/img/pageLogo.jpeg"   style="width: 360px; height: 280px"></el-image>
         </div>
-<!--        <div style="font-size: 15px" class="image-container">-->
-<!--          <el-image class="background-image" src="/img/pageLogo.jpeg"  ></el-image>-->
-<!--        </div>-->
-      <!--<img class="img" src="/img/logo.png" alt="">-->
       </div>
       <div class="login-border">
         <div class="login-main">
@@ -25,7 +21,12 @@
           </h4>
           <userLogin v-if="activeName==='user'"></userLogin>
           <thirdLogin v-else-if="activeName==='third'"></thirdLogin>
-
+          <div class="login-menu">
+            <a href="#" @click.stop="activeName='user'">{{ $t('login.userLogin') }}</a>
+            <!--<a href="#" @click.stop="activeName='code'">{{ $t('login.phoneLogin') }}</a>-->
+            <a href="#" @click.stop="activeName='third'">{{ $t('login.thirdLogin') }}</a>
+            <a :href="website.ssoUrl + website.redirectUri">{{ $t('login.ssoLogin') }}</a>
+          </div>
         </div>
 
       </div>
diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue
index 4455cfb..8fe7297 100644
--- a/Source/UBCS-WEB/src/views/code/code.vue
+++ b/Source/UBCS-WEB/src/views/code/code.vue
@@ -1324,6 +1324,7 @@
 export default {
   data() {
     return {
+      crudOption:{...optionRule},
       ruleForm: {},
       query: {},
       loading: true,
@@ -2536,7 +2537,7 @@
       this.query = {};
       this.onLoad(this.page);
     },
-    // 缂栫爜瑙勫垯蹇�熸煡璇�
+    // 缂栫爜瑙勫垯蹇�熸煡璇earchChange
     searchChange(params, done) {
       this.page.currentPage = 1;
       // 澶氫釜conditionMap杩欐牱浼犲弬锛屽揩閫熸煡璇㈤粯璁ら噰鐢ㄦā绯婃煡璇�
@@ -2549,6 +2550,11 @@
       }
       this.query = requestData;
       this.onLoad(this.page, this.query);
+      // console.log(  this.findObject(this.optionRule.column,'id'))
+      // console.log(this.crudOption.column[0])
+      // this.crudOption.column && this.crudOption.column.length > 0
+      //   ? (this.crudOption.column[0].value = '')
+      //   : null;
       done();
     },
     /** 缂栫爜瑙勫垯褰撳墠閫変腑琛屽彉鍖栫殑鏃跺�欒Е鍙�*/
diff --git a/Source/UBCS-WEB/src/views/docking/data.vue b/Source/UBCS-WEB/src/views/docking/data.vue
index e4abbc5..1e14d7a 100644
--- a/Source/UBCS-WEB/src/views/docking/data.vue
+++ b/Source/UBCS-WEB/src/views/docking/data.vue
@@ -23,7 +23,7 @@
 </template>
 
 <script>
-import {getList} from "@/api/docking/data";
+import {getDataList} from "@/api/docking/data";
 import {validatenull} from "@/util/validate";
 import {mapGetters} from "vuex";
 import website from "@/config/website";
@@ -90,6 +90,7 @@
       calcHeight: 0,
       tip: false,
       searchShow: false,
+      searchShowBtn:false,
       searchMenuSpan: 6,
       border: true,
       index: true,
@@ -242,7 +243,7 @@
           query['conditionMap["' + key + '"]'] = this.query[key];
         }
       }
-      getList(page.currentPage, page.pageSize, Object.assign(params,this.params, query,this.query)).then(res => {
+      getDataList(page.currentPage, page.pageSize, Object.assign(params,this.params, query,this.query)).then(res => {
         const data = res.data.data;
         this.page.total = data.total;
         this.data = data.records;
diff --git a/Source/UBCS-WEB/src/views/docking/loge.vue b/Source/UBCS-WEB/src/views/docking/loge.vue
index 36a1bd8..91a235b 100644
--- a/Source/UBCS-WEB/src/views/docking/loge.vue
+++ b/Source/UBCS-WEB/src/views/docking/loge.vue
@@ -23,7 +23,7 @@
 </template>
 
 <script>
-import {getList} from "@/api/docking/loge";
+import {getLogoList} from "@/api/docking/loge";
 import {validatenull} from "@/util/validate";
 import {mapGetters} from "vuex";
 
@@ -271,7 +271,7 @@
           query['conditionMap["' + key + '"]'] = this.query[key];
         }
       }
-      getList(page.currentPage, page.pageSize, Object.assign(params,this.params, query,this.query)).then(res => {
+      getLogoList(page.currentPage, page.pageSize, Object.assign(params,this.params, query,this.query)).then(res => {
         const data = res.data.data;
         this.page.total = data.total;
         this.data = data.records;
diff --git a/Source/UBCS-WEB/src/views/docking/task.vue b/Source/UBCS-WEB/src/views/docking/task.vue
index 00c0348..81df647 100644
--- a/Source/UBCS-WEB/src/views/docking/task.vue
+++ b/Source/UBCS-WEB/src/views/docking/task.vue
@@ -31,7 +31,7 @@
 </template>
 
 <script>
-import {getList,sendData} from "@/api/docking/task";
+import {getTaskList,sendData} from "@/api/docking/task";
 import {validatenull} from "@/util/validate";
 import {mapGetters} from "vuex";
 import {remove} from "@/api/code/codeSynonym";
@@ -122,7 +122,8 @@
         calcHeight: 0,
         tip: false,
         searchShow: false,
-        searchMenuSpan: 6,
+        searchShowBtn:false,
+        // searchMenuSpan: 6,
         border: true,
         index: true,
         viewBtn: true,
@@ -295,7 +296,7 @@
           query['conditionMap["' + key + '"]'] = this.query[key];
         }
       }
-      getList(page.currentPage, page.pageSize, Object.assign(params, this.params, query, this.query)).then(res => {
+      getTaskList(page.currentPage, page.pageSize, Object.assign(params, this.params, query, this.query)).then(res => {
         const data = res.data.data;
         this.page.total = data.total;
         this.data = data.records;
diff --git a/Source/UBCS-WEB/src/views/modeling/original.vue b/Source/UBCS-WEB/src/views/modeling/original.vue
index d701e74..349cb2f 100644
--- a/Source/UBCS-WEB/src/views/modeling/original.vue
+++ b/Source/UBCS-WEB/src/views/modeling/original.vue
@@ -12,7 +12,7 @@
             <el-button icon="el-icon-edit" size="small" type="text" @click="updateSave(row,index)">缂栬緫</el-button>
             <el-button icon="el-icon-delete" size="small" type="text" @click="deleteSave(row,index)">鍒犻櫎</el-button>
           </template>
-          <template slot="menuLeft">
+            <template slot="menuLeft">
             <el-button size="small" type="primary" icon="el-icon-plus" @click="addSave">鏂�&nbsp;&nbsp;澧�
             </el-button>
             <el-button size="small" plain type="primary" icon="el-icon-zoom-in" @click="applyRangeOpen">鏌ョ湅浣跨敤鑼冨洿
diff --git a/Source/UBCS-WEB/src/views/modeling/originalAdd.vue b/Source/UBCS-WEB/src/views/modeling/originalAdd.vue
index c6b6974..e400868 100644
--- a/Source/UBCS-WEB/src/views/modeling/originalAdd.vue
+++ b/Source/UBCS-WEB/src/views/modeling/originalAdd.vue
@@ -300,18 +300,20 @@
     },
     methods: {
       onSubmit() {
-        const conditionMap = {};
-        if (this.form.name) {
-          conditionMap[`conditionMap['name_like']`] = this.form.name;
+        if (this.form.name || this.form.label) {
+          const params = {};
+          if (this.form.name) {
+            params.name = this.form.name;
+          }
+          if (this.form.label) {
+            params.label = this.form.label;
+          }
+          getParentList(this.enumRefer.enumPage.currentPage, this.enumRefer.enumPage.pageSize, params)
+            .then((res) => {
+              this.enumRefer.enumPage.total = res.data.data.total;
+              this.enumRefer.data = res.data.data.records;
+            });
         }
-        if (this.form.label) {
-          conditionMap[`conditionMap['label_like']`] = this.form.label;
-        }
-        getParentList(this.enumRefer.enumPage.currentPage, this.enumRefer.enumPage.pageSize, conditionMap)
-          .then((res) => {
-            this.enumRefer.enumPage.total = res.data.data.total;
-            this.enumRefer.data = res.data.data.records;
-          });
       },
         enumOnLoad(){
           getParentList(this.enumRefer.enumPage.currentPage, this.enumRefer.enumPage.pageSize).then(res => {
diff --git a/Source/UBCS-WEB/src/views/wel/Statistic.vue b/Source/UBCS-WEB/src/views/wel/Statistic.vue
index 0d6556a..0341d74 100644
--- a/Source/UBCS-WEB/src/views/wel/Statistic.vue
+++ b/Source/UBCS-WEB/src/views/wel/Statistic.vue
@@ -1,13 +1,6 @@
 <template>
   <div>
-    <el-row :gutter="20">
-      <el-col :xs="8" :sm="8" :md="8" :lg="6" :xl="4" v-for="item in listMyTask">
-        <div class="box" :style="item.style" @click="goto(item)">
-          {{item.name}}
-          <div><avue-count-up class="value" :end="item.count"></avue-count-up></div>
-        </div>
-      </el-col>
-    </el-row>
+        <avue-data-box :option="option" :animation="true"></avue-data-box>
   </div>
 </template>
 
@@ -21,7 +14,48 @@
   data(){
   return {
     countByServer:true,
-    listMyTask:[]
+    // listMyTask:[]
+    option: {
+      span:6,
+      data: [
+        {
+          click: this.handleItemAClick,
+          title: '鐗╁搧涓绘暟鎹�',
+          count: 1723,
+          icon: 'iconfont iconicon_doc',
+          color: 'rgb(49, 180, 141)',
+          uiUrl: "/MasterData/items?id=wupin@name=鐗╁搧涓绘暟鎹�",
+          countUrl:'priceIndexController/countNeedConfirmPlan'
+        },
+        {
+          click: this.handleItemBClick,
+          title: '浜哄憳涓绘暟鎹�',
+          count: 1225,
+          icon: 'iconfont iconicon_dispose',
+          color: 'rgb(56, 161, 242)',
+          uiUrl:'/MasterData/items?id=renyuan@@name=浜哄憳涓绘暟鎹�',
+          countUrl:'priceIndexController/countPricingPlan'
+        },
+        {
+          click: this.handleItemCClick,
+          title: '涓婚搴撳畾涔�',
+          count: 523,
+          icon: 'el-icon-setting',
+          color: 'rgb(117, 56, 199)',
+          uiUrl:'/modeling/classifyTree',
+          countUrl:'priceIndexController/countNeedFeedbackPlan'
+        },
+        {
+          click: this.handleItemDClick,
+          title: '渚涘簲鍟嗕富鏁版嵁',
+          count: 0,
+          icon: 'iconfont iconicon_work',
+          color: 'rgb(255, 102, 51)',
+          uiUrl:'/MasterData/items?id=gongyingshang@@name=渚涘簲鍟嗕富鏁版嵁',
+          countUrl:'priceIndexController/countMyUnCreatePricePlan'
+        },
+      ]
+    },
   }
   },
   created() {
@@ -31,89 +65,42 @@
 
   },
   methods: {
+    handleItemAClick() {
+      this.$router.push({ path: "/MasterData/items?id=wupin@name=鐗╁搧涓绘暟鎹�"} );
+    },
+    handleItemBClick() {
+      this.$router.push({ path: '/MasterData/items?id=renyuan@@name=浜哄憳涓绘暟鎹�'} );
+    },
+    handleItemCClick() {
+      this.$router.push({ path: '/modeling/classifyTree'} );
+    },
+    handleItemDClick() {
+      this.$router.push({ path: '/MasterData/items?id=gongyingshang@@name=渚涘簲鍟嗕富鏁版嵁'} );
+    },
     getList() {
-      let data = [{
-        "backgroundColor": "#FF5722",
-        "btmname": "hometask",
-        "countUrl": "priceIndexController/countNeedConfirmPlan",
-        "name": "鐗╁搧涓绘暟鎹�",
-        "nameOid": "",
-        "oid": "34aebfde-eb11-4555-87eb-0a779be9aad0",
-        "uiUrl": "/MasterData/items?id=wupin@name=鐗╁搧涓绘暟鎹�",
-      }, {
-        "backgroundColor": "#5FB878",
-        "btmname": "hometask",
-        "countUrl": "priceIndexController/countPricingPlan",
-        "name": "浜哄憳涓绘暟鎹�",
-        "nameOid": "2C72EA23-8AA5-E5FC-9BC1-DE4AD182EF7B",
-        "oid": "6256ae79-7765-4c66-afc7-f12fad350065",
-        "uiUrl": "/MasterData/items?id=renyuan@@name=浜哄憳涓绘暟鎹�",
-      },{
-          "backgroundColor": "#1E9FFF",
-          "btmname": "hometask",
-          "countUrl": "priceIndexController/countNeedFeedbackPlan",
-          "name": "涓婚搴撳畾涔�",
-          "nameOid": "2536978C-CD1B-5B56-6529-A8C3456B5260",
-          "oid": "3043cdf1-8479-4c2a-9eab-fc35e9f9d5a7",
-          "uiUrl": "/modeling/classifyTree",
-        },
-        {
-          "backgroundColor": "#FF5722",
-          "btmname": "hometask",
-          "countUrl": "priceIndexController/countMyUnCreatePricePlan",
-          "name": "渚涘簲鍟嗕富鏁版嵁",
-          "nameOid": "",
-          "oid": "529634e7-1854-4f61-b911-a91e3c406757",
-          "uiUrl": "/MasterData/items?id=gongyingshang@@name=渚涘簲鍟嗕富鏁版嵁",
-        }]
-      this.listMyTask = data.map(record => {
-        record.style=record.style || ''
-        if(record.backgroundColor!=''){
-          record.style = 'background-color:'+record.backgroundColor;
-        }
-        record.count=record.count || 0;
-        if(!this.countByServer){
-          //鏄墠绔煡璇�
-          getList(record.countUrl,{}).then(res=>{
-            if(res.data.data.success){
-              record.count=res.data.data.obj;
-            }else{
-              record.count=0
+      // debugger
+      Object.values(this.option.data).map(record => {
+        record.count = record.count || 0;
+        if (!this.countByServer) {
+          // 鏄墠绔煡璇�
+          getList(record.countUrl, {}).then(res => {
+            // console.log('res',res)
+            if (res.data.data.success) {
+              record.count = res.data.data.obj;
+            } else {
+              record.count = 0;
             }
-          })
-
+          });
         }
         return {
           ...record
-        }
-      })
+        };
+      });
     },
-    goto(item){
-      this.$router.push({ path: item.uiUrl });
-    }
   }
 }
 </script>
 
 <style scoped>
-.el-col{margin-bottom: 0}
-.box{
-  text-align: center;
-  background: rgb(235, 238, 245);
-  color: #303133;
-  height: 70px;
-  margin: 10px 0!important;
-  padding: 15px 10px;
-  position: relative;
-  border-radius: 4px;
-  box-sizing: border-box;
-  font-size: 14px;
-}
-.value{
-  font-size: 12px;
-  opacity: .69;
-  line-height: 20px;
-  margin-top: 5px;
-  display: block;
-}
+
 </style>
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java
index d388e8d..3f3f32d 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeReferConfig.java
@@ -70,7 +70,12 @@
 	/**
 	 * 绐楀彛鏄剧ず鐨勯珮搴�
 	 */
-	private Long height;
+	private Integer height;
+
+	/**
+	 * 杩囨护(绾ц仈)灞炴��
+	 */
+	private String useFormKey;
 
 	/**
 	 * 杩囨护灞炴�ц姹傚弬鏁�
diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/UIFieldSortVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/UIFieldSortVO.java
index 94d9505..e46d7f8 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/UIFieldSortVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/UIFieldSortVO.java
@@ -24,6 +24,14 @@
 	 */
 	private String type;
 
+	public UIFieldSortVO(String field, String type) {
+		this.field = field;
+		this.type = type;
+	}
+
+	public UIFieldSortVO() {
+	}
+
 	public String getField() {
 		return field;
 	}
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java
index 61bc9e2..b82489f 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java
@@ -1,6 +1,7 @@
 package com.vci.ubcs.code.controller;
 
 import com.vci.ubcs.code.service.UniversalInterfaceI;
+import org.apache.tools.ant.taskdefs.condition.Http;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springblade.core.tool.api.R;
@@ -13,6 +14,7 @@
 import javax.servlet.ServletRequest;
 import javax.servlet.http.HttpServletRequest;
 import javax.ws.rs.core.Context;
+import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * 涓婚搴撳垎绫绘帶鍒跺櫒
@@ -43,10 +45,12 @@
 	 * @throws Throwable
 	 */
 	@PostMapping("/applyCode")
-	public String applyCode(@RequestParam("dataString")String dataString, @RequestParam("dataType")String dataType, ServletRequest request)  {
+	public String applyCode(@RequestParam("dataString")String dataString, @RequestParam("dataType")String dataType, HttpServletRequest request)  {
 		String result="";
-		HttpServletRequest httpServletRequest = (HttpServletRequest) request;
 		try {
+			ThreadLocal<HttpServletRequest> threadLocal = new ThreadLocal<>();
+			threadLocal.set(request);
+			universalInterfaceI.setThreadLocal(threadLocal);
 			result = universalInterfaceI.applyCode(dataString, dataType);
 		}catch (Throwable e){
 			e.printStackTrace();
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/UniversalInterfaceI.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/UniversalInterfaceI.java
index 5770889..428b3e0 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/UniversalInterfaceI.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/UniversalInterfaceI.java
@@ -27,6 +27,8 @@
      */
     public String applyCode(String data, String dataType)throws Throwable;
 
+	public void setThreadLocal(ThreadLocal<HttpServletRequest> threadLocal);
+
 	/****
 	 * 浜哄憳鏁版嵁鍚屾
 	 * @param personData
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
index 41bd42a..00bc500 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeBasicSecServiceImpl.java
@@ -338,6 +338,9 @@
 		uiTableConfigVO.setQueryColumns(queryColumns);
 		//set缁欒〃鏍奸厤缃睘鎬�
 		uiFormReferVO.setTableConfig(uiTableConfigVO);
+		//瀛楁鍚嶄笉涓�鑷达紝闇�瑕佹墜鍔╯et
+		uiFormReferVO.setMuti(Func.toBoolean(codeReferConfig.getIsMuti()));
+		uiFormReferVO.setInitSort(new UIFieldSortVO(codeReferConfig.getSortField(),codeReferConfig.getSortType()));
 		// 绛涢�夋潯浠�
 		HashMap<String, String> whereMap = new HashMap<>();
 		if(!codeReferConfig.getCodeSrchCondConfigVOS().isEmpty()){
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
index aa73ec6..0a3fb50 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -1389,6 +1389,9 @@
 		uiTableConfigVO.setQueryColumns(queryColumns);
 		//set缁欒〃鏍奸厤缃睘鎬�
 		uiFormReferVO.setTableConfig(uiTableConfigVO);
+		//瀛楁鍚嶄笉涓�鑷达紝闇�瑕佹墜鍔╯et
+		uiFormReferVO.setMuti(Func.toBoolean(codeReferConfig.getIsMuti()));
+		uiFormReferVO.setInitSort(new UIFieldSortVO(codeReferConfig.getSortField(),codeReferConfig.getSortType()));
 		// 绛涢�夋潯浠�
 		HashMap<String, String> whereMap = new HashMap<>();
 		if(!CollectionUtils.isEmpty(codeReferConfig.getCodeSrchCondConfigVOS())){
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java
index 1457d0a..7008270 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/PasswordFreeLoginServiceImpl.java
@@ -11,6 +11,7 @@
 import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.redis.cache.BladeRedis;
 import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.support.Kv;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.ObjectUtil;
@@ -84,9 +85,11 @@
 		String ipAddr = request.getRemoteAddr();
 		// 鍏堝皾璇曚粠缂撳瓨褰撲腑鍙栵紝瀛樺湪灏辩洿鎺ヤ粠缂撳瓨涓幏鍙�
 		String authToken = bladeRedis.get(PWD_FREE_LOGIN_TOKEN+ipAddr+":"+userName);
-		BladeUser user = null;
+		// 瑙f瀽token瀛樻斁杩沘ttr涓�
+		String token2 = JwtUtil.getToken(authToken);
+		BladeUser user = this.getUser(token2);
 		//涓嶅瓨鍦ㄥ氨璇锋眰
-		if(Func.isEmpty(authToken)){
+		if(Func.isEmpty(authToken) || Func.isEmpty(user)){
 			// 鍏嶅瘑鐧诲綍鎺ュ彛鍦板潃
 			String loginUrl = "http://localhost:"+this.getGatewayPort("ubcs-gateway")+"/ubcs-auth/oauth/token";
 			// 璇锋眰ubcs-auth鏈嶅姟鑾峰彇token锛屽厛璁剧疆璇锋眰澶�
@@ -118,10 +121,10 @@
 			authToken = "bearer " + tokenUserObject.getAccess_token();
 			// 灏唗oken瀛樺叆缂撳瓨褰撲腑,杩囨湡鏃堕棿涓�24灏忔椂
 			bladeRedis.setEx(PWD_FREE_LOGIN_TOKEN+ipAddr+":"+userName,"bearer "+tokenUserObject.getAccess_token(),tokenRedisExpire);
+			token2 = JwtUtil.getToken(authToken);
+			user = this.getUser(token2);
 		}
-		// 瑙f瀽token瀛樻斁杩沘ttr涓�
-		String token2 = JwtUtil.getToken(authToken);
-		user = this.getUser(token2);
+
 		//request.setAttribute("Blade-Auth",token);
 		request.setAttribute("_BLADE_USER_REQUEST_ATTR_",user);
 		return true;
@@ -186,11 +189,9 @@
 		if (StringUtil.isNotBlank(authToken)) {
 			token = JwtUtil.getToken(authToken);
 		}
-
 		if (StringUtil.isNotBlank(token)) {
 			claims = parseJWT(token);
 		}
-
 		if (ObjectUtil.isNotEmpty(claims) && getJwtProperties().getState()) {
 			tenantId = Func.toStr(claims.get("tenant_id"));
 			String userId = Func.toStr(claims.get("user_id"));
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
index 540121c..31b61e1 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
@@ -53,6 +53,9 @@
 import com.vci.ubcs.system.vo.DeptVO;
 import com.vci.ubcs.system.vo.RoleVO;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.tools.ant.taskdefs.condition.Http;
+import org.springblade.core.log.exception.ServiceException;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -62,7 +65,9 @@
 
 import javax.annotation.Resource;
 import javax.jws.WebMethod;
+import javax.servlet.ServletRequest;
 import javax.servlet.http.HttpServletRequest;
+import javax.ws.rs.core.Context;
 import javax.xml.ws.WebServiceContext;
 import javax.xml.ws.handler.MessageContext;
 import java.util.*;
@@ -161,13 +166,31 @@
 	private  String objerrorCode="0";
 	private String objerrorMsg="鎴愬姛";
 
+	private final ThreadLocal<HttpServletRequest> threadLocal = new ThreadLocal<>();
+
 	@Resource
 	private WebServiceContext webServiceContext;
 
+	@Override
+	public void setThreadLocal(ThreadLocal<HttpServletRequest> requestThreadLocal){
+		this.threadLocal.set(requestThreadLocal.get());
+		requestThreadLocal.remove();
+	}
+
 	@WebMethod
-	public HttpServletRequest getRequest() {
-		// 鑾峰彇HttpServletRequest瀵硅薄
-		HttpServletRequest request = (HttpServletRequest)webServiceContext.getMessageContext().get(MessageContext.SERVLET_REQUEST);
+	private HttpServletRequest getRequest() {
+		//rest璇锋眰鏂瑰紡鑾峰彇request
+		HttpServletRequest request = this.threadLocal.get();
+		if(Func.isEmpty(request)){
+			try {
+				// webservice璇锋眰鏂瑰紡鑾峰彇HttpServletRequest瀵硅薄
+				request = (HttpServletRequest)webServiceContext.getMessageContext().get(MessageContext.SERVLET_REQUEST);
+			}catch (Exception e){
+				throw new ServiceException("鑾峰彇httpServletRequest澶辫触锛屽師鍥�:"+e.getMessage());
+			}
+		}else {
+			this.threadLocal.remove();
+		}
 		return request;
 	}
 
@@ -215,6 +238,7 @@
 			UserVO userVo = interParameterVO.getData().getUser();
 			//鍏嶅瘑鐧诲綍鐢宠token锛宺equest涓坊鍔犵敤鎴蜂俊鎭�
 			passwordFreeLoginService.passwordFreeLogin(userVo.getUserName(),this.getRequest());
+			AuthUtil.getUser();
 			List<ClassfyVO> classVOList = classfysVO.getClassify();
 			InterParameterVO finalInterParameterVO = interParameterVO;
 			//杩欐槸璐﹀彿淇℃伅
@@ -1463,7 +1487,6 @@
 
 	@Override
 	public String queryClassifyRule(String data, String dataType) throws Throwable {
-
 		boolean issucess=false;
 		String resultStr = "";
 		String errorid="0";

--
Gitblit v1.9.3