瀏覽代碼

Merge branch 'dev' of https://e.coding.net/g-pheu9517/grt-iscs/ISCS_Base into dev

车车 1 年之前
父節點
當前提交
832de5e8be

+ 8 - 0
ktg-iscs/src/main/java/com/ktg/iscs/controller/IsJobCardController.java

@@ -8,6 +8,7 @@ import com.ktg.common.enums.BusinessType;
 import com.ktg.common.pojo.CommonResult;
 import com.ktg.common.utils.poi.ExcelUtil;
 import com.ktg.iscs.domain.IsJobCard;
+import com.ktg.iscs.domain.vo.card.IsJobCardInfoRespVO;
 import com.ktg.iscs.domain.vo.card.IsJobCardLoginReqVO;
 import com.ktg.iscs.service.IIsJobCardService;
 import io.swagger.annotations.Api;
@@ -18,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
@@ -79,6 +81,12 @@ public class IsJobCardController extends BaseController
         return CommonResult.success(isJobCardService.selectIsJobCardByCardId(cardId));
     }
 
+    @ApiOperation("获取工作卡详细信息")
+    @GetMapping(value = "/selectIsJobCardByLoginUser")
+    public CommonResult<IsJobCardInfoRespVO> getCardInfoByLoginUser(HttpServletRequest request) {
+        return CommonResult.success(isJobCardService.getCardInfoByLoginUser(request));
+    }
+
     /**
      * 新增工作卡
      */

+ 2 - 1
ktg-iscs/src/main/java/com/ktg/iscs/domain/dto/ticket/PageTicketDTO.java

@@ -38,5 +38,6 @@ public class PageTicketDTO
     @ApiModelProperty(value = "结束时间")
     private String endTime;
 
-
+    @ApiModelProperty(value = "用户ID")
+    private String userId;
 }

+ 22 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/enums/TicketStatusEnum.java

@@ -0,0 +1,22 @@
+package com.ktg.iscs.domain.enums;
+
+import lombok.AllArgsConstructor;
+
+@AllArgsConstructor
+public enum TicketStatusEnum {
+    NOT_STARTED("0", "未开始"),
+    READY_TO_LOCK("1", "待上锁"),
+    PROCESSING("2", "进行中"),
+    READY_TO_UNLOCK("3", "待解锁"),
+    FINISHED("4", "已结束");
+
+    /**
+     * 状态编号
+     */
+    private final String status;
+
+    /**
+     * 描述
+     */
+    private final String desc;
+}

+ 31 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/vo/card/IsJobCardInfoRespVO.java

@@ -0,0 +1,31 @@
+package com.ktg.iscs.domain.vo.card;
+
+import io.swagger.annotations.ApiModelProperty;
+
+import java.util.List;
+
+public class IsJobCardInfoRespVO {
+    @ApiModelProperty(value = "工作卡ID")
+    public Long cardId;
+
+    @ApiModelProperty(value = "工作卡编号")
+    public String cardCode;
+
+    @ApiModelProperty(value = "硬件ID")
+    public Long hardwareId;
+
+    @ApiModelProperty(value = "工作卡NFC")
+    public String cardNfc;
+
+    @ApiModelProperty(value = "1: 员工卡;2: 临时卡")
+    public Integer cardType;
+
+    @ApiModelProperty(value = "绑定用户ID")
+    public Long userId;
+
+    @ApiModelProperty(value = "用户名称或临时用户ID")
+    public String userName;
+
+    @ApiModelProperty(value = "用户角色")
+    public List<String> roleKeyList;
+}

+ 4 - 0
ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsJobCardMapper.java

@@ -68,4 +68,8 @@ public interface IsJobCardMapper extends BaseMapperX<IsJobCard>
         return selectOne(new LambdaQueryWrapperX<IsJobCard>()
                 .eq(IsJobCard::getCardNfc, cardNfc));
     }
+
+    default IsJobCard selectByUserId(Long userId) {
+        return selectOne(new LambdaQueryWrapperX<IsJobCard>().eq(IsJobCard::getUserId, userId));
+    }
 }

+ 5 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/IIsJobCardService.java

@@ -2,8 +2,10 @@ package com.ktg.iscs.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ktg.iscs.domain.IsJobCard;
+import com.ktg.iscs.domain.vo.card.IsJobCardInfoRespVO;
 import com.ktg.iscs.domain.vo.card.IsJobCardLoginReqVO;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.List;
 
 /**
@@ -66,4 +68,7 @@ public interface IIsJobCardService extends IService<IsJobCard>
      * 刷卡登录
      */
     String loginByCard(IsJobCardLoginReqVO reqVO);
+
+
+    IsJobCardInfoRespVO getCardInfoByLoginUser(HttpServletRequest request);
 }

+ 34 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsJobCardServiceImpl.java

@@ -2,20 +2,29 @@ package com.ktg.iscs.service.impl;
 
 import cn.hutool.core.lang.Assert;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ktg.common.core.domain.entity.SysRole;
 import com.ktg.common.core.domain.entity.SysUser;
+import com.ktg.common.core.domain.model.LoginUser;
 import com.ktg.common.core.text.Convert;
 import com.ktg.common.utils.DateUtils;
+import com.ktg.common.utils.bean.BeanUtils;
 import com.ktg.framework.web.service.SysLoginService;
+import com.ktg.framework.web.service.TokenService;
 import com.ktg.iscs.domain.IsJobCard;
+import com.ktg.iscs.domain.vo.card.IsJobCardInfoRespVO;
 import com.ktg.iscs.domain.vo.card.IsJobCardLoginReqVO;
 import com.ktg.iscs.mapper.IsJobCardMapper;
 import com.ktg.iscs.service.IIsJobCardService;
 import com.ktg.system.mapper.SysUserMapper;
+import com.ktg.system.service.ISysRoleService;
+import com.ktg.system.service.ISysUserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 工作卡Service业务层处理
@@ -35,6 +44,15 @@ public class IsJobCardServiceImpl extends ServiceImpl<IsJobCardMapper, IsJobCard
     @Resource
     private SysLoginService sysLoginService;
 
+    @Resource
+    private ISysUserService sysUserService;
+
+    @Resource
+    private TokenService tokenService;
+
+    @Resource
+    private ISysRoleService iSysRoleService;
+
     /**
      * 查询工作卡
      *
@@ -122,4 +140,20 @@ public class IsJobCardServiceImpl extends ServiceImpl<IsJobCardMapper, IsJobCard
 
         return sysLoginService.loginWithoutPassword(sysUser);
     }
+
+    @Override
+    public IsJobCardInfoRespVO getCardInfoByLoginUser(HttpServletRequest request) {
+        LoginUser loginUser = tokenService.getLoginUser(request);
+        Assert.notNull(loginUser, "请先登录!");
+        SysUser user = sysUserService.selectUserById(loginUser.getUser().getUserId());
+        Assert.notNull(user, "用户不存在!");
+        IsJobCard isJobCard = isJobCardMapper.selectByUserId(user.getUserId());
+        Assert.notNull(isJobCard, "用户未绑定卡!");
+
+        List<SysRole> roleList = iSysRoleService.selectRolesByUserId(user.getUserId());
+
+        IsJobCardInfoRespVO respVO = BeanUtils.toBean(isJobCard, IsJobCardInfoRespVO.class);
+        respVO.roleKeyList = roleList.stream().map(SysRole::getRoleKey).collect(Collectors.toList());
+        return respVO;
+    }
 }

+ 4 - 0
ktg-iscs/src/main/resources/mapper/IsJobTicketMapper.xml

@@ -140,6 +140,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         LEFT JOIN md_workshop ws ON ws.workshop_id = j.workshop_id
         LEFT JOIN is_workarea wa ON wa.workarea_id = j.workarea_id
         LEFT JOIN is_job_ticket_points p ON p.ticket_id = j.ticket_id
+        LEFT JOIN is_job_ticket_user u ON u.ticket_id = j.ticket_id
         <where>
             <if test="dto.ticketCode != null and dto.ticketCode.trim != ''">
                 and j.ticket_code like concat('%',#{dto.ticketCode},'%')
@@ -165,6 +166,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="dto.endTime != null and dto.endTime.trim != ''">
                 and j.create_time &lt;= #{dto.endTime}
             </if>
+            <if test="dto.userId != null and dto.userId.trim != ''">
+                and u.user_id = #{dto.userId}
+            </if>
         </where>
         GROUP BY j.ticket_id
         ORDER BY j.ticket_id DESC