From f823fa4a9283debfa7cb6d79fc1f3c7099f9b3ae Mon Sep 17 00:00:00 2001 From: liuxm <liuxm_a@163.com> Date: 星期四, 13 六月 2024 14:22:55 +0800 Subject: [PATCH] 去掉原controller中的try catch 和BindingResult --- pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/user/UserSv.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 47 insertions(+), 4 deletions(-) diff --git a/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/user/UserSv.java b/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/user/UserSv.java index ac488f7..3c041a8 100644 --- a/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/user/UserSv.java +++ b/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/user/UserSv.java @@ -1,17 +1,24 @@ package com.dy.pmsBase.user; +import cn.hutool.core.codec.Base64; import com.dy.common.webUtil.QueryResultVo; import com.dy.pmsGlobal.daoBa.BaUserMapper; import com.dy.pmsGlobal.daoBa.BaUserRoleMapper; import com.dy.pmsGlobal.pojoBa.BaUser; import com.dy.pmsGlobal.pojoBa.BaUserRole; +import com.dy.pmsGlobal.util.QrCodeUtil; +import com.google.zxing.WriterException; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.common.utils.PojoUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.*; +import java.io.IOException; +import java.util.List; +import java.util.Map; +import java.util.Random; @Slf4j @Service @@ -20,6 +27,7 @@ private BaUserMapper dao; @Autowired private BaUserRoleMapper urDao; + private static final String stationPrefix = "101" ; /** * 鐢熸垚鎸囧畾浣嶆暟闅忔満鏁板瓧瀵嗙爜 @@ -68,6 +76,16 @@ //鏌ヨ绗﹀悎鏉′欢鐨勮褰� rsVo.obj = this.dao.selectSome(params) ; + rsVo.obj.parallelStream().forEach(item->{ + try { + byte[] codes = QrCodeUtil.genQrCode(stationPrefix+item.id); + item.qrCode = "data:image/jpeg;base64," + Base64.encode(codes); + } catch (IOException e) { + e.printStackTrace(); + } catch (WriterException e) { + e.printStackTrace(); + } + }); return rsVo ; } @@ -79,7 +97,12 @@ */ @Transactional public Long save(BaUser po){ - this.dao.insertSelective(po) ; + try{ + dao.insertSelective(po) ; + }catch(DuplicateKeyException e){ + log.error(e.getMessage()); + throw new RuntimeException("鎵嬫満鍙风爜閲嶅"); + } Long id = po.getId(); this.saveUserRoles(id, po.roleIds) ; return id ; @@ -92,9 +115,29 @@ */ @Transactional public int update(BaUser po) { - int count = this.dao.updateByPrimaryKeySelective(po); + int count=0; + try{ + count = this.dao.updateByPrimaryKeySelective(po); + }catch(DuplicateKeyException e){ + log.error(e.getMessage()); + throw new RuntimeException("鎵嬫満鍙风爜閲嶅"); + } this.saveUserRoles(po.id, po.roleIds) ; return count ; + } + + /** + * 绂佺敤鎴栧惎鐢ㄧ敤鎴蜂俊鎭� + * @param id + * @param disabled + * @return + */ + @Transactional + public int disabled(Long id,Boolean disabled) { + BaUser user=new BaUser(); + user.id=id; + user.disabled=disabled; + return dao.updateByPrimaryKeySelective(user); } /** @@ -117,7 +160,7 @@ * @return 鎻掑叆鐢ㄦ埛涓庤鑹插叧鑱旇褰曟暟閲� */ @Transactional - private int saveUserRoles(Long userId, String[] roleIds) { + public int saveUserRoles(Long userId, String[] roleIds) { this.urDao.deleteByUserId(userId); int count = 0; if (roleIds != null && roleIds.length > 0) { -- Gitblit v1.8.0