| | |
| | | import com.dy.common.webUtil.QueryResultVo; |
| | | import com.dy.pmsGlobal.daoBa.BaUserMapper; |
| | | import com.dy.pmsGlobal.daoBa.BaUserRoleMapper; |
| | | import com.dy.pmsGlobal.daoSta.StaAssemblyWorkLastMapper; |
| | | import com.dy.pmsGlobal.pojoBa.BaUser; |
| | | import com.dy.pmsGlobal.pojoBa.BaUserRole; |
| | | import com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast; |
| | | import com.dy.pmsGlobal.util.QrCodeConstant; |
| | | 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.io.IOException; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.Random; |
| | |
| | | private BaUserMapper dao; |
| | | @Autowired |
| | | private BaUserRoleMapper urDao; |
| | | private static final String stationPrefix = "101" ; |
| | | |
| | | @Autowired |
| | | private StaAssemblyWorkLastMapper assemblyWorkLastDao; |
| | | /** |
| | | * 生成指定位数随机数字密码 |
| | | * |
| | |
| | | rsVo.obj = this.dao.selectSome(params) ; |
| | | rsVo.obj.parallelStream().forEach(item->{ |
| | | try { |
| | | byte[] codes = QrCodeUtil.genQrCode(stationPrefix+item.id); |
| | | byte[] codes = QrCodeUtil.genQrCode(QrCodeConstant.TypeWorker+item.id); |
| | | item.qrCode = "data:image/jpeg;base64," + Base64.encode(codes); |
| | | } catch (IOException e) { |
| | | e.printStackTrace(); |
| | |
| | | */ |
| | | @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 ; |
| | |
| | | */ |
| | | @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 ; |
| | | } |
| | |
| | | */ |
| | | @Transactional |
| | | public int disabled(Long id,Boolean disabled) { |
| | | checkStationLogin(id); |
| | | BaUser user=new BaUser(); |
| | | user.id=id; |
| | | user.disabled=disabled; |
| | |
| | | */ |
| | | @Transactional |
| | | public int delete(Long id) { |
| | | checkStationLogin(id); |
| | | return this.dao.deleteLogicById(id); |
| | | } |
| | | |
| | | |
| | | } |
| | | public void checkStationLogin(Long id){ |
| | | //如果有工站登录信息,则提示先到触屏端登录页面logout |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("userId", id); |
| | | List<StaAssemblyWorkLast> workLasts = assemblyWorkLastDao.selectSome(params); |
| | | if (workLasts.size() > 0) { |
| | | String stationStr = "("; |
| | | for (StaAssemblyWorkLast workLast:workLasts) { |
| | | stationStr += workLast.getStationName() +","; |
| | | } |
| | | throw new RuntimeException("该用户在"+ stationStr +")工站存在登录信息,请先到触屏端登录页面logout,或联系管理员删除"); |
| | | } |
| | | } |
| | | } |