Ver Fonte

将更新用户手机号的Excel导入改成批量

王苗苗 há 1 mês atrás
pai
commit
246b8061c1

+ 1 - 0
slibra-admin/src/main/java/com/slibra/web/controller/business/ExcelController.java

@@ -282,6 +282,7 @@ public class ExcelController extends BaseController {
      */
     @PostMapping(value = "/updateUserInfoFromExcel")
     public R<String> upLoadImage(@RequestParam("file") MultipartFile file) {
+        log.info("进入了通过上传Excel,获取户号更新用户手机号的操作");
         if (file.isEmpty())
             throw new ServiceException("请上传Excel文件!");
         SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);

+ 11 - 1
slibra-admin/src/main/java/com/slibra/web/controller/listener/UpdateUserDataListener.java

@@ -52,7 +52,7 @@ public class UpdateUserDataListener extends AnalysisEventListener<UpdateUserExce
         }
         //都存在
         //通过编号查询用户数据,如果存在就更新并记录成功数量,不存在标记错误。
-        List<TUserInfo> tUserInfos = this.tUserInfoMapper.selectTUserInfoList(TUserInfo.builder().userNo(userNo).build());
+        /*List<TUserInfo> tUserInfos = this.tUserInfoMapper.selectTUserInfoList(TUserInfo.builder().userNo(userNo).build());
         if(CollectionUtils.isEmpty(tUserInfos)){
             log.info("通过用户编号未查询到用户明细");
             failNum ++;
@@ -62,7 +62,17 @@ public class UpdateUserDataListener extends AnalysisEventListener<UpdateUserExce
             tUserInfo.setPhone(phone);
             this.tUserInfoMapper.updateTUserInfo(tUserInfo);
             successNum++;
+        }*/
+        //2025年01月15日16:22:17 逻辑调整 直接通过name更新,如果返回调试是1,则代表成功;
+        int size = this.tUserInfoMapper.updateUserPhoneByNo(phone, userNo);
+        if(size != 0){//成功
+            successNum++;
+        }else{
+            log.info("通过用户编号未查询到用户明细,更新失败");
+            failNum ++;
+            failList.add(userExcelInfo);
         }
+
     }
 
     @Override

+ 3 - 0
slibra-system/src/main/java/com/slibra/business/mapper/TUserInfoMapper.java

@@ -3,6 +3,7 @@ package com.slibra.business.mapper;
 import java.util.List;
 import com.slibra.business.domain.TUserInfo;
 import com.slibra.business.res.NeighbourAndMeterPhoneResp;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * 用户信息Mapper接口
@@ -63,4 +64,6 @@ public interface TUserInfoMapper
     List<NeighbourAndMeterPhoneResp> selectNeighbourAndMeterPhoneByPhone(String phone);
 
     List<NeighbourAndMeterPhoneResp> selectNeighbourAndMeterPhoneByNeighbour(String asrText);
+
+    int updateUserPhoneByNo(@Param("phone") String phone, @Param("userNo") String userNo);
 }

+ 4 - 0
slibra-system/src/main/resources/mapper/business/TUserInfoMapper.xml

@@ -209,4 +209,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         WHERE
             neighbourhood_name like concat('%', #{asrText}, '%') and del_flag = 0
     </select>
+
+    <update id="updateUserPhoneByNo">
+        update t_user_info set phone = #{phone} where user_no = #{userNo}
+    </update>
 </mapper>