ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-common/src/main/java/com/ruoyi/common/utils/DataFormatUtils.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-oa/src/main/java/com/ruoyi/oa/domain/DevEquipmentCode.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-oa/src/main/java/com/ruoyi/oa/domain/bo/DevManufacturerBo.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/DevEquipmentCodeMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/DevEquipmentMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/DevEquipmentServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-oa/src/main/resources/mapper/oa/DevEquipmentMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
@@ -55,7 +55,9 @@ // 生成令牌 String token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid()); SysUser user = userService.selectUserByUserName(loginBody.getUsername()); ajax.put(Constants.TOKEN, token); ajax.put("userName", user.getNickName()); return AjaxResult.success(ajax); } ruoyi-common/src/main/java/com/ruoyi/common/utils/DataFormatUtils.java
New file @@ -0,0 +1,35 @@ package com.ruoyi.common.utils; public class DataFormatUtils { /** * 字符串转化成为16进制字符串 * @param s * @return */ public static String strTo16(String s) { String str = ""; for (int i = 0; i < s.length(); i++) { int ch = (int) s.charAt(i); String s4 = Integer.toHexString(ch); str = str + s4; } return str; } public static String padLeft(String str,int len){ String pad="0000000000000000"; return len>str.length()&&len<=16&&len>=0?pad.substring(0,len-str.length())+str:str; } public static String intToHex(int n) { StringBuffer s = new StringBuffer(); String a; char []b = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; while(n != 0){ s = s.append(b[n%16]); n = n/16; } a = s.reverse().toString(); return a; } } ruoyi-oa/src/main/java/com/ruoyi/oa/domain/DevEquipmentCode.java
@@ -29,6 +29,10 @@ @TableId(value = "id") private Long id; private Long code; private int version; private Date createTime; } ruoyi-oa/src/main/java/com/ruoyi/oa/domain/bo/DevManufacturerBo.java
@@ -49,7 +49,6 @@ * 联系方式 */ @ApiModelProperty(value = "联系方式", required = true) @NotBlank(message = "联系方式不能为空", groups = { AddGroup.class, EditGroup.class }) private String phone; /** ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/DevEquipmentCodeMapper.java
@@ -13,4 +13,5 @@ @Mapper public interface DevEquipmentCodeMapper extends BaseMapperPlus<DevEquipmentCode> { } ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/DevEquipmentMapper.java
@@ -2,6 +2,7 @@ import com.ruoyi.oa.domain.DevEquipment; import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; import org.apache.ibatis.annotations.Param; /** * 智控设备Mapper接口 @@ -10,5 +11,5 @@ * @date 2021-12-05 */ public interface DevEquipmentMapper extends BaseMapperPlus<DevEquipment> { int updateCode(@Param("id") Long id, @Param("version") int version); } ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/DevEquipmentServiceImpl.java
@@ -4,13 +4,17 @@ import cn.hutool.http.HttpStatus; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.DataFormatUtils; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.PageUtils; import com.ruoyi.common.core.page.PagePlus; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.oa.domain.BsSchool; import com.ruoyi.oa.domain.DevEquipmentCode; import com.ruoyi.oa.mapper.DevEquipmentCodeMapper; import com.ruoyi.oa.service.IBsSchoolService; import com.ruoyi.oa.service.IDevEquipmentCodeService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; @@ -37,7 +41,10 @@ public class DevEquipmentServiceImpl extends ServicePlusImpl<DevEquipmentMapper, DevEquipment, DevEquipmentVo> implements IDevEquipmentService { @Autowired private DevEquipmentCodeMapper devEquipmentCodeMapper; private IDevEquipmentCodeService devEquipmentCodeService; @Autowired private IBsSchoolService iBsSchoolService; @Override public DevEquipmentVo queryById(Long id) { @@ -130,13 +137,33 @@ // 设备不存在则新建 else { if(bo.isRegister()) { BsSchool bsSchool = iBsSchoolService.getById(5); if(bsSchool == null){ throw new ServiceException("学校编号不存在,请先到线上维护", HttpStatus.HTTP_PARTIAL); } // 先根据序列码生成序列号 List<DevEquipmentCode> devEquipmentCodeList = devEquipmentCodeService.list(); DevEquipmentCode c = new DevEquipmentCode(); c.setCreateTime(DateUtils.getNowDate()); devEquipmentCodeMapper.insert(c); if(devEquipmentCodeList != null && devEquipmentCodeList.size() > 0){ c = devEquipmentCodeList.get(0); }else{ c.setCreateTime(DateUtils.getNowDate()); c.setCode(Long.parseLong("1")); c.setVersion(1); devEquipmentCodeService.save(c); } int i = baseMapper.updateCode(c.getId(), c.getVersion()); if(i <= 0){ throw new ServiceException("设备编号表被占用,请稍后在校验", HttpStatus.HTTP_PARTIAL); } // 添加设备 DevEquipment add = BeanUtil.toBean(bo, DevEquipment.class); add.setSerialNumber(c.getId()); String schoolCodeHex16 = "0".equals(Integer.toHexString(Integer.parseInt(bsSchool.getCode()))) ? "0000" : Integer.toHexString(Integer.parseInt(bsSchool.getCode()));//DataFormatUtils.strTo16(bsSchool.getCode()); String codeHex16 =DataFormatUtils.padLeft(Integer.toHexString(Integer.parseInt(c.getCode().toString())), 4); String hostId = (schoolCodeHex16 + codeHex16).toUpperCase(); add.setHostId(hostId); add.setSerialNumber(c.getCode()); add.setUseStatus("1"); baseMapper.insert(add); return add; }else{ @@ -167,12 +194,12 @@ // if (StringUtils.isEmpty(bo.getFrequencyBand())) { // po.setFrequencyBand(bo.getFrequencyBand()); // } // if (null != bo.getBatchId()) { // po.setBatchId(bo.getBatchId()); // } // if (StringUtils.isEmpty(bo.getRemarks())) { // po.setRemarks(bo.getRemarks()); // } if (null != bo.getBatchId()) { po.setBatchId(bo.getBatchId()); } if (StringUtils.isNotBlank(bo.getRemarks())) { po.setRemarks(bo.getRemarks()); } baseMapper.updateById(po); return po; } ruoyi-oa/src/main/resources/mapper/oa/DevEquipmentMapper.xml
@@ -24,6 +24,8 @@ <result property="delFlag" column="del_flag"/> <result property="version" column="version"/> </resultMap> <update id="updateCode"> update dev_equipment_code set code = code + 1, version = version + 1 where id = #{id} and version = #{version} </update> </mapper>