From d86b8fc93fad9b4986d125dab524f8ec6a2a5b85 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期二, 17 十月 2023 19:02:50 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java    |   15 ++
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java    |   20 +-
 Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/utils/ListUtil.java       |    2 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java          |   68 ++++-----
 Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java       |   15 ++
 Source/UBCS-WEB/src/page/index/top/index.vue                                                                   |    9 +
 Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/IUserService.java            |    9 +
 Source/UBCS-WEB/src/api/system/dept.js                                                                         |   10 +
 Source/UBCS-WEB/src/views/system/user.vue                                                                      |    5 
 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java |   44 ++++++
 Source/UBCS-WEB/src/api/template/templateAttr.js                                                               |    2 
 Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/data/data.xml                           |  195 +++++++++++++++++++++++++++
 12 files changed, 342 insertions(+), 52 deletions(-)

diff --git a/Source/UBCS-WEB/src/api/system/dept.js b/Source/UBCS-WEB/src/api/system/dept.js
index 9f41441..09197b4 100644
--- a/Source/UBCS-WEB/src/api/system/dept.js
+++ b/Source/UBCS-WEB/src/api/system/dept.js
@@ -81,3 +81,13 @@
   })
 }
 
+export const updateUserStatus = (params) => {
+  return request({
+    url: '/api/ubcs-user/user/updateUserStatus ',
+    method: 'get',
+    params:{
+      ...params
+    }
+  })
+}
+
diff --git a/Source/UBCS-WEB/src/api/template/templateAttr.js b/Source/UBCS-WEB/src/api/template/templateAttr.js
index 6855c96..f293380 100644
--- a/Source/UBCS-WEB/src/api/template/templateAttr.js
+++ b/Source/UBCS-WEB/src/api/template/templateAttr.js
@@ -244,7 +244,7 @@
 //涓嬭浇妯℃澘
 export const downloadBatchImportApplyTemplate = (params) => {
   return request({
-    url: '/api/ubcs-code/mdmEngineController/downloadImportExcel',
+    url: '/api/ubcs-code/codeClassify/downloadImportExcel',
     method: 'get',
     params,
     responseType: 'blob'
diff --git a/Source/UBCS-WEB/src/page/index/top/index.vue b/Source/UBCS-WEB/src/page/index/top/index.vue
index 443db48..f445e17 100644
--- a/Source/UBCS-WEB/src/page/index/top/index.vue
+++ b/Source/UBCS-WEB/src/page/index/top/index.vue
@@ -18,7 +18,11 @@
         <top-search></top-search>
       </span>
     </div>
+    <div></div>
     <div class="top-bar__right">
+      <el-tooltip style="margin-right: 35px">
+        <p style="font-size: 20px;line-height: 20px">鏈郴缁熶负闈炴秹瀵嗗簲鐢ㄧ郴缁燂紝绂佹澶勭悊銆佸瓨鍌ㄣ�佷紶杈撴秹瀵嗕俊鎭�</p>
+      </el-tooltip>
       <el-tooltip v-if="showColor"
                   effect="dark"
                   :content="$t('navbar.color')"
@@ -101,6 +105,9 @@
           </el-dropdown-item>
         </el-dropdown-menu>
       </el-dropdown>
+      <el-tooltip effect="dark" style="margin-left: 15px">
+        <p style="font-size: 16px">褰撳墠鐧诲綍鐢ㄦ埛锛歿{storedUsername}}</p>
+      </el-tooltip>
       <el-dialog title="鐢ㄦ埛淇℃伅閫夋嫨"
                  append-to-body
                  :visible.sync="userBox"
@@ -137,6 +144,7 @@
     name: "top",
     data() {
       return {
+        storedUsername: '',
         userBox: false,
         userForm: {
           deptId: '',
@@ -191,6 +199,7 @@
     },
     mounted() {
       listenfullscreen(this.setScreen);
+      this.storedUsername = localStorage.getItem('username');
     },
     computed: {
       ...mapState({
diff --git a/Source/UBCS-WEB/src/views/system/user.vue b/Source/UBCS-WEB/src/views/system/user.vue
index 24ba2e6..c2adc42 100644
--- a/Source/UBCS-WEB/src/views/system/user.vue
+++ b/Source/UBCS-WEB/src/views/system/user.vue
@@ -177,7 +177,7 @@
   resetPassword, unlock
 } from "@/api/system/user";
 import {exportBlob} from "@/api/common";
-import {getDeptTree, getDeptLazyTree} from "@/api/system/dept";
+import {getDeptTree, getDeptLazyTree, updateUserStatus} from "@/api/system/dept";
 import {getRoleTree} from "@/api/system/role";
 import {getPostList} from "@/api/system/post";
 import {mapGetters} from "vuex";
@@ -742,6 +742,9 @@
     }
   },
   created() {
+    updateUserStatus({userid:'1702600796324032513',status:'true'}).then(res=>{
+      console.log(res)
+    })
     this.selecload()
     const arr=JSON.parse(localStorage.getItem("updataid"))
     if(arr.user_id != '0' && arr.tenant_id !== '000000'){
diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/utils/ListUtil.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/utils/ListUtil.java
index a9b9de8..515b6b9 100644
--- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/utils/ListUtil.java
+++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/rmip/code/client/codeapply/Apply410/utils/ListUtil.java
@@ -5,8 +5,6 @@
 
 import org.apache.commons.beanutils.ConvertUtils;
 import org.apache.commons.beanutils.PropertyUtils;
-import org.apache.commons.lang.StringUtils;
-import org.apache.poi.ss.formula.functions.T;
 import java.lang.reflect.Field;
 import java.lang.reflect.Type;
 import java.text.ParseException;
diff --git a/Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/data/data.xml b/Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/data/data.xml
new file mode 100644
index 0000000..f19dd8c
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/data/data.xml
@@ -0,0 +1,195 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mdm modelcode="wl" time="2023-10-15 10:14:48" uuid="20231015101448" state="3">
+    <codeinfo>
+        <typecode>180101</typecode>
+        <wlid>44822D85-C496-37FB-1734-24AE2CD17628</wlid>
+        <wlcode>B0203104500</wlcode>
+        <desc>铻烘爴|GB/T 5789-1986|M10脳80|8.8|閽A鎴朆鍨媩姘у寲|Ct.O</desc>
+        <fields>
+            <field>
+                <name>浼佷笟缂栫爜</name>
+                <value>B0203104500</value>
+            </field>
+            <field>
+                <name>鎵�灞炲垎绫荤紪鐮�</name>
+                <value>180101</value>
+            </field>
+            <field>
+                <name>闀挎弿杩�</name>
+                <value>铻烘爴|GB/T 5789-1986|M10脳80|8.8|閽A鎴朆鍨媩姘у寲|Ct.O</value>
+            </field>
+            <field>
+                <name>鐭弿杩�</name>
+                <value></value>
+            </field>
+            <field>
+                <name>闆嗗洟鍒嗙被浠g爜</name>
+                <value>34151102</value>
+            </field>
+            <field>
+                <name>闆嗗洟鍒嗙被鍚嶇О</name>
+                <value>铻烘爴</value>
+            </field>
+            <field>
+                <name>鎵�灞炲崟浣�</name>
+                <value>涓浗鍖楁柟杞﹁締鐮旂┒鎵�</value>
+            </field>
+            <field>
+                <name>鐗╄祫鍚嶇О</name>
+                <value>鍏娉曞叞闈㈣灪鏍�-鍔犲ぇ绯诲垪-B绾�</value>
+            </field>
+            <field>
+                <name>鐗╄祫绠�绉�</name>
+                <value>铻烘爴</value>
+            </field>
+            <field>
+                <name>鐗╄祫鍒悕</name>
+                <value></value>
+            </field>
+            <field>
+                <name>鐗规畩瑕佹眰</name>
+                <value>Ct.O</value>
+            </field>
+            <field>
+                <name>鐢宠璇存槑</name>
+                <value>TT--Ct.O-B0203104500</value>
+            </field>
+            <field>
+                <name>璁¢噺鍗曚綅</name>
+                <value>浠�(浠�)</value>
+            </field>
+            <field>
+                <name>瀵嗙骇</name>
+                <value>闈炴秹瀵�(闈炴秹瀵�)</value>
+            </field>
+            <field>
+                <name>鏉愯川</name>
+                <value>閽�</value>
+            </field>
+            <field>
+                <name>瑙勬牸</name>
+                <value>M10脳80</value>
+            </field>
+            <field>
+                <name>鐗屽彿</name>
+                <value></value>
+            </field>
+            <field>
+                <name>鎬ц兘绛夌骇</name>
+                <value>8.8</value>
+            </field>
+            <field>
+                <name>琛ㄩ潰澶勭悊</name>
+                <value>姘у寲</value>
+            </field>
+            <field>
+                <name>浜у搧绛夌骇</name>
+                <value>A鎴朆鍨�</value>
+            </field>
+            <field>
+                <name>闆嗗洟鐮�</name>
+                <value>200181516</value>
+            </field>
+            <field>
+                <name>浜у搧鏍囧噯鍙�</name>
+                <value>GB/T 5789-1986</value>
+            </field>
+        </fields>
+    </codeinfo>
+    <codeinfo>
+        <typecode>180101</typecode>
+        <wlid>59988666-C390-0BEF-B415-84FAAE76DF7F</wlid>
+        <wlcode>B0203104202</wlcode>
+        <desc>铻烘爴|GB/T 5789-1986|M10脳60|12.9|閽A|姘у寲|Ct.O</desc>
+        <fields>
+            <field>
+                <name>浼佷笟缂栫爜</name>
+                <value>B0203104202</value>
+            </field>
+            <field>
+                <name>鎵�灞炲垎绫荤紪鐮�</name>
+                <value>180101</value>
+            </field>
+            <field>
+                <name>闀挎弿杩�</name>
+                <value>铻烘爴|GB/T 5789-1986|M10脳60|12.9|閽A|姘у寲|Ct.O</value>
+            </field>
+            <field>
+                <name>鐭弿杩�</name>
+                <value></value>
+            </field>
+            <field>
+                <name>闆嗗洟鍒嗙被浠g爜</name>
+                <value>34151102</value>
+            </field>
+            <field>
+                <name>闆嗗洟鍒嗙被鍚嶇О</name>
+                <value>铻烘爴</value>
+            </field>
+            <field>
+                <name>鎵�灞炲崟浣�</name>
+                <value>涓浗鍖楁柟杞﹁締鐮旂┒鎵�</value>
+            </field>
+            <field>
+                <name>鐗╄祫鍚嶇О</name>
+                <value>鍏娉曞叞闈㈣灪鏍�-鍔犲ぇ绯诲垪-B绾�</value>
+            </field>
+            <field>
+                <name>鐗╄祫绠�绉�</name>
+                <value>铻烘爴</value>
+            </field>
+            <field>
+                <name>鐗╄祫鍒悕</name>
+                <value></value>
+            </field>
+            <field>
+                <name>鐗规畩瑕佹眰</name>
+                <value>Ct.O</value>
+            </field>
+            <field>
+                <name>鐢宠璇存槑</name>
+                <value>TT--Ct.O-B0203104202</value>
+            </field>
+            <field>
+                <name>璁¢噺鍗曚綅</name>
+                <value>浠�(浠�)</value>
+            </field>
+            <field>
+                <name>瀵嗙骇</name>
+                <value>闈炴秹瀵�(闈炴秹瀵�)</value>
+            </field>
+            <field>
+                <name>鏉愯川</name>
+                <value>閽�</value>
+            </field>
+            <field>
+                <name>瑙勬牸</name>
+                <value>M10脳60</value>
+            </field>
+            <field>
+                <name>鐗屽彿</name>
+                <value></value>
+            </field>
+            <field>
+                <name>鎬ц兘绛夌骇</name>
+                <value>12.9</value>
+            </field>
+            <field>
+                <name>琛ㄩ潰澶勭悊</name>
+                <value>姘у寲</value>
+            </field>
+            <field>
+                <name>浜у搧绛夌骇</name>
+                <value>A</value>
+            </field>
+            <field>
+                <name>闆嗗洟鐮�</name>
+                <value>200181515</value>
+            </field>
+            <field>
+                <name>浜у搧鏍囧噯鍙�</name>
+                <value>GB/T 5789-1986</value>
+            </field>
+        </fields>
+    </codeinfo>
+</mdm>
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
index b771af5..4696e02 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -1955,16 +1955,29 @@
 
 		//閮借浆鎹㈠畬浜嗐�傞渶瑕佹壒閲忔鏌�
 		//濡傛灉鍑洪敊浜嗭紝鎴戜滑渚濈劧鎵ц鏈夋晥鐨勬暟鎹紝鏃犳晥鐨勬暟鎹啓鍥炲埌excel涓�
+
+
+		Map<String,String> errorKeyMap=new HashMap<>();
+		//1.鍒嗙被娉ㄥ叆
+		batchSwitchClassifyAttrOnOrder(attrVOS,cboList,classifyFullInfo,false);
+		//boolean
+		reSwitchBooleanAttrOnOrder(attrVOS,cboList);
+		// cboList.stream().forEach(cbo->{
+		//2.鏍¢獙瑙勫垯
+		batchCheckVerifyOnOrder(attrVOS, cboList,errorMap);
+		//3.鏍¢獙鏋氫妇鏄惁姝g‘
+		batchSwitchEnumAttrOnOrder(attrVOS,cboList,errorMap);
+		//4.鏃堕棿鏍煎紡鐨勯獙璇�
+		//4.鏃堕棿鐨勶紝蹇呴』缁熶竴涓簓yyy-MM-dd HH:mm:ss
+		batchSwitchDateAttrOnOrder(attrVOS,cboList,errorMap);
+		//5.澶勭悊鍙傜収鐨勬儏鍐�
+		batchSwitchReferAttrOnOrder(attrVOS,cboList,errorMap);
+		//6璁剧疆榛樿鍊�
+		batchSwitchAttrDefault(attrVOS, cboList);
 		//2.鍒ゆ柇蹇呰緭椤广�傘�傞渶瑕佸叏閮ㄧ殑灞炴�э紝濡傛灉鏄繀杈擄紝浣嗘槸琛ㄥ崟閲岄潰涓嶆樉绀虹殑锛屽彧鑳芥槸鍒嗙被娉ㄥ叆鎴栬�呯粍鍚堣鍒�
 		batchCheckRequiredAttrOnOrder(templateVO,cboList,errorMap);
-
-
-		/**
-		 * 鍏抽敭鐔熸倝閿欒鎻愮ず
-		 */
-		Map<String,String> errorKeyMap=new HashMap<>();
-
-
+		//鏈�鍚庡紕缁勫悎瑙勫垯
+		batchSwitchComponentAttrOnOrder(attrVOS,cboList);
 		//3.鍒ゆ柇鍏抽敭灞炴��
 		CodeImportResultVO keyResultVO = batchCheckKeyAttrOnOrder(classifyFullInfo, templateVO, cboList);
 		Set<String> selfRepeatRowIndexList = keyResultVO.getSelfRepeatRowIndexList();
@@ -2001,20 +2014,6 @@
 				errorKeyMap.put(rowIndex,errorMap.getOrDefault(rowIndex,"") + ";鍏抽敭灞炴�т笌绯荤粺涓殑閲嶅" );
 			});
 		}
-		//鍒嗙被娉ㄥ叆
-		batchSwitchClassifyAttrOnOrder(attrVOS,cboList,classifyFullInfo,false);
-		//boolean
-		reSwitchBooleanAttrOnOrder(attrVOS,cboList);
-		// cboList.stream().forEach(cbo->{
-		//4.鏍¢獙瑙勫垯
-		batchCheckVerifyOnOrder(attrVOS, cboList,errorMap);
-		//5.鏍¢獙鏋氫妇鏄惁姝g‘
-		batchSwitchEnumAttrOnOrder(attrVOS,cboList,errorMap);
-		//6.鏃堕棿鏍煎紡鐨勯獙璇�
-		//6.鏃堕棿鐨勶紝蹇呴』缁熶竴涓簓yyy-MM-dd HH:mm:ss
-		batchSwitchDateAttrOnOrder(attrVOS,cboList,errorMap);
-		//7.澶勭悊鍙傜収鐨勬儏鍐�
-		batchSwitchReferAttrOnOrder(attrVOS,cboList,errorMap);
 		//鏍¢獙灞炴�ф槸鍚︽纭敊璇俊鎭�
 		if(errorMap.size()>0){
 			String[] newMsg = {""};
@@ -2115,10 +2114,7 @@
 		}
 
 		//  });
-		//璁剧疆榛樿鍊�
-		batchSwitchAttrDefault(attrVOS, cboList);
-		//鏈�鍚庡紕缁勫悎瑙勫垯
-		batchSwitchComponentAttrOnOrder(attrVOS,cboList);
+
 		//瑕佹妸浠ヤ笂鐨勯敊璇殑閮芥姏鍑哄悗锛屽啀缁х画澶勭悊鏃堕棿鍜岀粍鍚堣鍒�
 		List<ClientBusinessObject> needSaveCboList = cboList.stream().filter(cbo -> {
 			String rowIndex =cbo.getAttributeValue(IMPORT_ROW_INDEX);
@@ -2377,20 +2373,20 @@
                 throw new VciBaseException("鏁版嵁涓嶆槸{0}鐨勭姸鎬侊紝涓嶅厑璁镐慨鏀�", new String[]{CodeDefaultLC.EDITING.getText()});
             }*/
 			if(operation.equals("update")) {
-				//1. 鍒ゆ柇蹇呰緭椤�
-				checkRequiredAttrOnOrder(templateVO, orderDTO, errorMap);
-				//2.鍏堟敞鍏ワ紝鍐嶇粍鍚堬紝鏈�鍚庢牎楠�
+				//1.鍏堟敞鍏ワ紝鍐嶇粍鍚堬紝鏈�鍚庢牎楠�
 				switchClassifyLevelOnOrder(templateVO, classifyFullInfo, orderDTO, errorMap);
-				//3.澶勭悊缁勫悎瑙勫垯銆傜粍鍚堣鍒欎笉鑳戒娇鐢ㄧ紪鐮佺殑灞炴�э紝鍥犱负缂栫爜鐨勭敓鎴愬彲鑳芥槸闇�瑕佸睘鎬х殑
+				//2.澶勭悊缁勫悎瑙勫垯銆傜粍鍚堣鍒欎笉鑳戒娇鐢ㄧ紪鐮佺殑灞炴�э紝鍥犱负缂栫爜鐨勭敓鎴愬彲鑳芥槸闇�瑕佸睘鎬х殑
 				switchComponentAttrOnOrder(templateVO, orderDTO);
-				//4.鏍¢獙瑙勫垯
+				//3.鏍¢獙瑙勫垯
 				checkVerifyOnOrder(templateVO, orderDTO, errorMap);
-				//5.鍒ゆ柇鍏抽敭灞炴��
-				checkKeyAttrOnOrder(classifyFullInfo, templateVO, orderDTO, errorMap);
-				//6.鏍¢獙鏋氫妇鐨勫唴瀹规槸鍚︽纭�
+				//4.鏍¢獙鏋氫妇鐨勫唴瀹规槸鍚︽纭�
 				checkEnumOnOrder(templateVO, orderDTO, errorMap);
-				//7.澶勭悊鏃堕棿鏍煎紡锛屽湪鏁版嵁搴撻噷闈笉璁烘槸瀛楃涓茶繕鏄棩鏈熸牸寮忥紝閮戒娇鐢ㄧ浉鍚岀殑鏍煎紡瀛樺偍
+				//5.澶勭悊鏃堕棿鏍煎紡锛屽湪鏁版嵁搴撻噷闈笉璁烘槸瀛楃涓茶繕鏄棩鏈熸牸寮忥紝閮戒娇鐢ㄧ浉鍚岀殑鏍煎紡瀛樺偍
 				switchDateAttrOnOrder(templateVO, orderDTO);
+				//6. 鍒ゆ柇蹇呰緭椤�
+				checkRequiredAttrOnOrder(templateVO, orderDTO, errorMap);
+				//7.鍒ゆ柇鍏抽敭灞炴��
+				checkKeyAttrOnOrder(classifyFullInfo, templateVO, orderDTO, errorMap);
 				//榛樿鐨勫唴瀹逛笉鑳藉彉锛屾墍浠ュ彧闇�瑕佹嫹璐濊嚜瀹氫箟鐨勭浉鍏冲睘鎬у嵆鍙�
 				copyValueToCBO(classifyFullInfo, cbo, orderDTO, templateVO, true, errorMap);
 				//浼佷笟鐮佸拰闆嗗洟鐮佺殑涓嶄慨鏀�
@@ -3699,7 +3695,7 @@
 	 */
 	private void batchCheckRequiredAttrOnOrder(CodeClassifyTemplateVO templateVO,List<ClientBusinessObject> cboList,Map<String,String> errorMap){
 		Map<String, CodeClassifyTemplateAttrVO> requiredAttrMap = templateVO.getAttributes().stream().filter(s ->
-			VciBaseUtil.getBoolean(s.getRequireFlag()) && StringUtils.isBlank(s.getComponentRule()) && StringUtils.isBlank(s.getClassifyInvokeLevel())//涓嶈兘鏄粍鍚堢殑鍜屽垎绫绘敞鍏ョ殑
+			VciBaseUtil.getBoolean(s.getRequireFlag()) && StringUtils.isBlank(s.getComponentRule()) && (StringUtils.isBlank(s.getClassifyInvokeLevel())||s.getClassifyInvokeLevel().equals("none"))//涓嶈兘鏄粍鍚堢殑鍜屽垎绫绘敞鍏ョ殑
 		).collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t));
 		//涓嶮dmEngineServiceImpl閲岄潰鐨刢heckRequiredAttrOnOrder 閫昏緫搴旇鐩镐技
 		if(!CollectionUtils.isEmpty(requiredAttrMap)) {
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
index 3f5e3d1..85d050f 100644
--- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmProductCodeServiceImpl.java
@@ -31,6 +31,7 @@
 import com.vci.ubcs.starter.web.util.VciDateUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.springblade.core.log.exception.ServiceException;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
@@ -278,8 +279,27 @@
 					QueryWrapper<CodeAllCode> wrapper = new QueryWrapper<>();
 					wrapper.eq("CREATECODEBTM",addCodeDOs.get(0).getCreateCodeBtm());
 					wrapper.in("ID",addCodeDOs.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
-					if(codeAllCodeService.count(wrapper)>0){
+					List<CodeAllCode> codeAllCodes = codeAllCodeService.selectByWrapper(wrapper);
+					List<CodeAllCode> takeBack = codeAllCodes.stream().filter(e -> e.getLcStatus().equals("TakeBack")).collect(Collectors.toList());
+					if(codeAllCodes.size()>takeBack.size()){
 						throw new ServiceException("鐢熸垚缂栫爜鏁版嵁ID宸叉湁鍘嗗彶璁板綍,璇风‘璁ゅ涓嬬敓鎴愮殑ID鏁版嵁锛�"+ addCodeDOs.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
+					}
+					for (CodeAllCode codeAllCode : takeBack) {
+						codeAllCode.setTs(new Date());
+						codeAllCode.setLastModifyTime(new Date());
+						codeAllCode.setLastModifier(AuthUtil.getUserId().toString());
+						Iterator<CodeAllCode> iterator = addCodeDOs.iterator();
+						while (iterator.hasNext()){
+							CodeAllCode next = iterator.next();
+							if(codeAllCode.getId().equals(next.getId())){
+								codeAllCode.setCreateCodeOid(next.getCreateCodeOid());
+								codeAllCode.setLcStatus(next.getLcStatus());
+								iterator.remove();
+							}
+						}
+					}
+					if(takeBack.size()>0){
+						codeAllCodeService.updateBatchById(takeBack);
 					}
 					codeAllCodeService.saveBatch(addCodeDOs);
 				}
@@ -365,9 +385,29 @@
 			QueryWrapper<CodeAllCode> wrapper = new QueryWrapper<>();
 			wrapper.eq("CREATECODEBTM",allCodeDOList.get(0).getCreateCodeBtm());
 			wrapper.in("ID",allCodeDOList.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
-			if(codeAllCodeService.count(wrapper)>0){
+			List<CodeAllCode> codeAllCodes = codeAllCodeService.selectByWrapper(wrapper);
+			List<CodeAllCode> takeBack = codeAllCodes.stream().filter(e -> e.getLcStatus().equals("TakeBack")).collect(Collectors.toList());
+			if(codeAllCodes.size()>takeBack.size()){
 				throw new ServiceException("鐢熸垚缂栫爜鏁版嵁ID宸叉湁鍘嗗彶璁板綍,璇风‘璁ゅ涓嬬敓鎴愮殑ID鏁版嵁锛�"+ allCodeDOList.stream().map(CodeAllCode::getId).collect(Collectors.toList()));
 			}
+
+			for (CodeAllCode codeAllCode : takeBack) {
+				codeAllCode.setTs(new Date());
+				codeAllCode.setLastModifyTime(new Date());
+				codeAllCode.setLastModifier(AuthUtil.getUserId().toString());
+				Iterator<CodeAllCode> iterator = allCodeDOList.iterator();
+				while (iterator.hasNext()){
+					CodeAllCode next = iterator.next();
+					if(codeAllCode.getId().equals(next.getId())){
+						codeAllCode.setCreateCodeOid(next.getCreateCodeOid());
+						codeAllCode.setLcStatus(next.getLcStatus());
+						iterator.remove();
+					}
+				}
+			}
+			if(takeBack.size()>0){
+				codeAllCodeService.updateBatchById(takeBack);
+			}
 			codeAllCodeService.saveBatch(allCodeDOList);
 //			iCodeWupinService.saveBatch(dataCBOList);
 			mdmEngineService.insertBatchByType(dataCBOList.get(0).getBtmname(),dataCBOList);
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 3d89c27..6b9ab8e 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
@@ -1661,9 +1661,9 @@
 											if (!CollectionUtils.isEmpty(ListMap)) {
 												ListMap.stream().forEach(map -> {
 													num[0]++;
-													String id = map.getOrDefault("OID".toUpperCase(Locale.ROOT), "").toString();
-													String value = map.getOrDefault(valueField.toUpperCase(Locale.ROOT), "").toString();
-													String text = map.getOrDefault(textField.toUpperCase(Locale.ROOT), "").toString();
+													String id =Func.isNull(map.getOrDefault("OID".toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault("OID".toUpperCase(Locale.ROOT), "").toString();
+													String value = Func.isNull(map.getOrDefault(valueField.toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault(valueField.toUpperCase(Locale.ROOT), "").toString();
+													String text =Func.isNull(map.getOrDefault(textField.toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault(textField.toUpperCase(Locale.ROOT), "").toString();
 													String description = map.getOrDefault("description".toUpperCase(Locale.ROOT), "").toString();
 													CodeSectionValueVO sectionValueVO = new CodeSectionValueVO(id, num[0] + "", value, text, "", description);
 													codeSectionValueVOList.add(sectionValueVO);
@@ -1750,11 +1750,11 @@
 											if (!CollectionUtils.isEmpty(ListMap)) {
 												ListMap.stream().forEach(map -> {
 													num[0]++;
-													String id = map.getOrDefault("OID".toUpperCase(Locale.ROOT), "").toString();
-													String value = map.getOrDefault(valueField.toUpperCase(Locale.ROOT), "").toString();
-													String text = map.getOrDefault(textField.toUpperCase(Locale.ROOT), "").toString();
-													String description = map.getOrDefault("description".toUpperCase(Locale.ROOT), "").toString();
-													String pid = map.getOrDefault(parentFieldName.toUpperCase(Locale.ROOT), "").toString();
+													String id =Func.isNull(map.getOrDefault("OID".toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault("OID".toUpperCase(Locale.ROOT), "").toString();
+													String value =Func.isNull(map.getOrDefault(valueField.toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault(valueField.toUpperCase(Locale.ROOT), "").toString();
+													String text =Func.isNull(map.getOrDefault(textField.toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault(textField.toUpperCase(Locale.ROOT), "").toString();
+													String description =Func.isNull(map.getOrDefault("description".toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault("description".toUpperCase(Locale.ROOT), "").toString();
+													String pid =Func.isNull(map.getOrDefault(parentFieldName.toUpperCase(Locale.ROOT), ""))?"":map.getOrDefault(parentFieldName.toUpperCase(Locale.ROOT), "").toString();
 													CodeSectionValueVO sectionValueVO = new CodeSectionValueVO(id, num[0] + "", value, text, pid, description);
 													codeSectionValueVOList.add(sectionValueVO);
 												});
@@ -2135,7 +2135,7 @@
 				if (!CollectionUtils.isEmpty(codeClassifyList)) {
 					codeClassifyList.stream().forEach(codeClassify -> {
 						CodeClassifyVO codeClassifyVO=  classifyService.getTopClassifyVO(codeClassify.getOid());
-						if(codeClassifyVO.getId().equals(libray)){
+						if(codeClassifyVO.getId().toLowerCase(Locale.ROOT).equals(libray.toLowerCase(Locale.ROOT))){
 							newCodeClassify[0] =codeClassify;
 						}
 					});
@@ -2177,7 +2177,7 @@
 				if (!CollectionUtils.isEmpty(codeClassifyList)) {
 					codeClassifyList.stream().forEach(codeClassify -> {
 						CodeClassifyVO codeClassifyVO=  classifyService.getTopClassifyVO(codeClassify.getOid());
-						if(codeClassifyVO.getId().equals(libray)){
+						if(codeClassifyVO.getId().toLowerCase(Locale.ROOT).equals(libray.toLowerCase(Locale.ROOT))){
 							newCodeClassify[0] =codeClassify;
 						}
 					});
diff --git a/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java b/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java
index 24c20c5..5c10d71 100644
--- a/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java
+++ b/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/controller/UserController.java
@@ -376,4 +376,19 @@
 		return R.data(userService.getByRoleUserList(user,roleName));
 	}
 
+	/**
+	 * 鑾峰彇鍒版寚瀹氳韩浠芥潈闄愮殑鐢ㄦ埛鍒楄〃
+	 * @param userIds userId闆嗗悎
+	 * @param status 鍋滅敤/鍚敤 true锛氬惎鐢�,false:鍋滅敤
+	 * @return
+	 */
+	@PostMapping("/updateUserStatus")
+	@ApiOperationSupport(order = 21)
+	@ApiOperation(value = "鑾峰彇鍒版寚瀹氳韩浠芥潈闄愮殑鐢ㄦ埛鍒楄〃", notes = "浼犲叆userId闆嗗悎")
+	public R<Boolean> updateUserStatus(String userIds,boolean status){
+		if (StringUtil.isBlank(userIds)) {
+			return R.fail("璇疯嚦灏戦�夋嫨涓�涓敤鎴�");
+		}
+		return R.status(userService.updateUserStatus(userIds,status));
+	}
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/IUserService.java b/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/IUserService.java
index 19f6d21..056b171 100644
--- a/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/IUserService.java
+++ b/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/IUserService.java
@@ -28,6 +28,7 @@
 import org.springblade.core.mp.support.Query;
 import com.vci.ubcs.system.user.vo.UserVO;
 import org.springblade.core.secure.BladeUser;
+import org.springblade.core.tool.api.R;
 
 import java.util.List;
 import java.util.Map;
@@ -260,4 +261,12 @@
 	 */
 	List<Map<String,String>> getByRoleUserList(BladeUser user, String roleName);
 
+	/***
+	 * 鏇存柊鐢ㄦ埛鍚敤鍋滅敤鐘舵��
+	 * @param userIds
+	 * @param status
+	 * @return
+	 */
+	 boolean updateUserStatus(String userIds,boolean status);
+
 }
diff --git a/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java
index 6de7864..28b0663 100644
--- a/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-user/src/main/java/com/vci/ubcs/system/user/service/impl/UserServiceImpl.java
@@ -573,6 +573,21 @@
 		return list.stream().distinct().collect(Collectors.toList());
 	}
 
+	/***
+	 * 鏇存柊鐢ㄦ埛鍚敤鍋滅敤鐘舵��
+	 * @param userIds
+	 * @param status
+	 * @return
+	 */
+	@Override
+	public boolean updateUserStatus(String userIds, boolean status) {
+		Integer user_status=0;
+		if(!status){
+			user_status=1;
+		}
+		return this.update(Wrappers.<User>lambdaUpdate().in(User::getId, Func.toLongList(userIds)).set(User::getUserStatus,user_status));
+	}
+
 	/**
 	 * 鏃ユ湡鏃堕棿鏍煎紡杞ぉ
 	 * @param date

--
Gitblit v1.9.3