fengjin
2023-09-20 c6f8a03a3675efa99a833e16ad34ac0dd0fbc9b0
1.扫码开门 2. 修改bug
12个文件已修改
9个文件已添加
484 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UnionUserApi.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityUnionService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/huacheng_union_applets/src/main/java/com/chuangongzhijia/huacheng_union_applets/api/UnionUserApi.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/api/UnionUserApi.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/dao/UnionIntegralRecordMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/dao/UnionIntegralRuleMapper.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/dao/UnionIntegralRuleRecordMapper.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/dao/UnionOpenDoorMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/model/dos/UnionAccess.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/model/dos/UnionIntegralRecord.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/model/dos/UnionIntegralRule.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/model/dos/UnionIntegralRuleRecord.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/model/dos/UnionOpenDoor.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/UnionUserService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionIntegralRecordServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionReportServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionUserServiceImpl.java 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/resources/mapper/UnionIntegralRecordMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/resources/mapper/UnionIntegralRuleMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/resources/mapper/UnionIntegralRuleRecordMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/resources/mapper/UnionOpenDoorMapper.xml 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UnionUserApi.java
@@ -59,6 +59,7 @@
    @ApiOperation(value = "总工会户外劳工站用户认证",response = UnionUserDto.class)
    @PostMapping("/authentication")
    public R authentication(@RequestBody UnionUserDto unionUserDto){
        unionUserDto.setIsApplets(1);
        //        LoginUserInfoVO loginUser = this.getLoginUserInfo();
//        LoginUserInfoVO userInfoByUserId = userService.getUserInfoByUserId(loginUser.getUserId().toString()).getData();
        LoginUserInfoVO userInfoByUserId = userService.getUserInfoByUserId("1588095866109984769").getData();
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityUnionService.java
@@ -139,7 +139,15 @@
     * @return 总工会户外劳共用户
     */
    @PostMapping("/unionUser/authentication")
    public R unionUserAuthentication(@RequestBody UnionUserDto unionUserDto);
    R unionUserAuthentication(@RequestBody UnionUserDto unionUserDto);
    /**
     * 用户开门
     * @param qRCode 二维码字符串
     * @return 总工会户外劳共用户
     */
    @GetMapping("/unionUser/openDoor")
    R openDoor(@RequestParam(value = "qRCode")  String qRCode);
    /**
springcloud_k8s_panzhihuazhihuishequ/huacheng_union_applets/src/main/java/com/chuangongzhijia/huacheng_union_applets/api/UnionUserApi.java
@@ -22,8 +22,8 @@
    private CommunityUnionService communityUnionService;
    @Resource
    private UserService userService;
//    @Resource
//    private UserService userService;
    /**
     * 总工会户外劳登录
     *
@@ -50,4 +50,16 @@
        return  communityUnionService.unionUserAuthentication(unionUserDto);
    }
    /**
     * 用户开门
     * @param qRCode 二维码字符串
     * @return 总工会户外劳共用户
     */
    @ApiOperation(value = "用户开门")
    @GetMapping("/openDoor")
    public R openDoor(@RequestParam(value = "qRCode")  String qRCode){
        return  communityUnionService.openDoor(qRCode);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/api/UnionUserApi.java
@@ -53,12 +53,14 @@
    public R authentication(@RequestBody UnionUserDto unionUserDto, @CurrentUser UnionUserDto unionUser){
        if (unionUserDto.getIsApplets().equals(1)) {
            log.info("小程序进入无需验证");
            return  userService.authentication(unionUserDto);}
            return  userService.authentication(unionUserDto);
        }
        else {
            log.info("h5进入");
            if (unionUser != null) {
                unionUserDto.setId(unionUser.getId());
                return  userService.authentication(unionUserDto);}
                return  userService.authentication(unionUserDto);
            }
            else {
                return R.fail("请重新登录");
            }
@@ -76,4 +78,20 @@
        return  userService.selectById(id);
    }
    /**
     * 用户开门
     *
     * @return 总工会户外劳共用户
     */
    @GetMapping("/openDoor")
    public  R openDoor(@RequestParam(value = "qRCode")  String qRCode,@CurrentUser UnionUserDto unionUser){
        if (unionUser != null) {
            return  userService.openDoor(unionUser,qRCode);
        }
        else {
            return R.fail("请重新登录");
        }
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/dao/UnionIntegralRecordMapper.java
@@ -24,10 +24,10 @@
    UnionIntegralRecord getData(@Param("id") String id);
    int insert(@Param("item") UnionIntegralRecordDto item);
    int insertOne(@Param("item") UnionIntegralRecordDto item);
    int update(@Param("item") UnionIntegralRecordDto item);
    int updateOne(@Param("item") UnionIntegralRecordDto item);
    /**
     * 删除接口
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/dao/UnionIntegralRuleMapper.java
New file
@@ -0,0 +1,18 @@
package com.panzhihua.service_equipment.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.panzhihua.service_equipment.model.dos.UnionIntegralRule;
import org.apache.ibatis.annotations.Mapper;
/**
 * <p>
 * 积分规则表 Mapper 接口
 * </p>
 *
 * @author fengjin
 * @since 2023-09-20
 */
@Mapper
public interface UnionIntegralRuleMapper extends BaseMapper<UnionIntegralRule> {
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/dao/UnionIntegralRuleRecordMapper.java
New file
@@ -0,0 +1,17 @@
package com.panzhihua.service_equipment.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.panzhihua.service_equipment.model.dos.UnionIntegralRuleRecord;
import org.apache.ibatis.annotations.Mapper;
/**
 * <p>
 * 积分规则表 Mapper 接口
 * </p>
 *
 * @author fengjin
 * @since 2023-09-20
 */
@Mapper
public interface UnionIntegralRuleRecordMapper extends BaseMapper<UnionIntegralRuleRecord> {
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/dao/UnionOpenDoorMapper.java
New file
@@ -0,0 +1,20 @@
package com.panzhihua.service_equipment.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.panzhihua.service_equipment.model.dos.UnionOpenDoor;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.data.repository.query.Param;
/**
 * <p>
 * 开门记录表 Mapper 接口
 * </p>
 *
 * @author fengjin
 * @since 2023-09-20
 */
@Mapper
public interface UnionOpenDoorMapper extends BaseMapper<UnionOpenDoor> {
    Integer getUserLastOpenDoorMinutesDiff(@Param("userId") Long userId);
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/model/dos/UnionAccess.java
@@ -71,4 +71,16 @@
    @ApiModelProperty(value = "创建时间")
    private LocalDateTime createAt;
    /**
     * 设备序列号
     */
    @ApiModelProperty(value = "设备序列号")
    private String qRCode;
    /**
     * 设备名
     */
    @ApiModelProperty(value = "设备名")
    private String qRCodeUrl;
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/model/dos/UnionIntegralRecord.java
@@ -69,6 +69,12 @@
    private String type;
    /**
     * 积分id
     */
    @ApiModelProperty(value = "积分id")
    private String integralId;
    /**
     * 用户姓名
     */
    @TableField(exist = false)
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/model/dos/UnionIntegralRule.java
New file
@@ -0,0 +1,73 @@
package com.panzhihua.service_equipment.model.dos;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * <p>
 * 积分规则表
 * </p>
 *
 * @author fengjin
 * @since 2023-09-20
 */
@TableName("union_integral_rule")
@Data
@ApiModel("积分规则表")
public class UnionIntegralRule implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * ,主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value = "主键id")
    private Long id;
    /**
     * 积分规则名称
     */
    @ApiModelProperty(value = "积分规则名称")
    private String name;
    /**
     * 每日开门限制
     */
    @ApiModelProperty(value = "每日开门限制")
    private Integer dayNumber;
    /**
     * 每次间隔时间限制
     */
    @ApiModelProperty(value = "每次间隔时间限制")
    private Integer timeNumber;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private LocalDateTime createAt;
    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    private LocalDateTime updateAt;
    /**
     * 清零时间
     */
    @ApiModelProperty(value = "清零时间")
    private LocalDateTime zeroTime;
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/model/dos/UnionIntegralRuleRecord.java
New file
@@ -0,0 +1,59 @@
package com.panzhihua.service_equipment.model.dos;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * <p>
 * 积分规则表次数表
 * </p>
 *
 * @author fengjin
 * @since 2023-09-20
 */
@TableName("union_integral_rule_record")
@Data
@ApiModel("积分规则表次数表")
public class UnionIntegralRuleRecord implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * ,主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value = "主键id")
    private Long id;
    /**
     * 规则id
     */
    @ApiModelProperty(value = "规则id")
    private String ruleId;
    /**
     * 次数
     */
    @ApiModelProperty(value = "次数")
    private Integer count;
    /**
     * 积分数
     */
    @ApiModelProperty(value = "积分数")
    private Integer integralNumber;
    /**
     * 新增时间
     */
    @ApiModelProperty(value = "新增时间")
    private LocalDateTime createAt;
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/model/dos/UnionOpenDoor.java
New file
@@ -0,0 +1,59 @@
package com.panzhihua.service_equipment.model.dos;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * <p>
 * 开门记录表
 * </p>
 *
 * @author fengjin
 * @since 2023-09-20
 */
@TableName("union_open_door")
@Data
@ApiModel("开门记录表")
public class UnionOpenDoor implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * ,主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value = "主键")
    private Long id;
    /**
     * 站点id
     */
    @ApiModelProperty(value = "站点id")
    private Integer siteId;
    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private Long userId;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = " 创建时间")
    private LocalDateTime createAt;
    /**
     * 1 获得积分开门 2 普通开门不活动积分
     */
    @ApiModelProperty(value = " 1 获得积分开门 2 普通开门不活动积分")
    private Integer type;
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/UnionUserService.java
@@ -47,4 +47,11 @@
     */
    UnionUserDto  selectById(Long id);
    /**
     * 用户开门
     *
     * @return 总工会户外劳共用户
     */
    R openDoor(UnionUserDto unionUserDto,String qRCode);
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionIntegralRecordServiceImpl.java
@@ -32,7 +32,7 @@
    @Override
    public R insert(UnionIntegralRecordDto item)
    {
        int num= baseMapper.insert(item);
        int num= baseMapper.insertOne(item);
        if(num>0)
        {
            return R.ok();
@@ -43,7 +43,7 @@
    @Override
    public R update(UnionIntegralRecordDto item)
    {
        int num= baseMapper.update(item);
        int num= baseMapper.updateOne(item);
        if(num>0)
        {
            return R.ok();
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionReportServiceImpl.java
@@ -66,13 +66,17 @@
        Page page = new Page(unionReportDto.getPageNum(), unionReportDto.getPageSize());
        QueryWrapper<UnionReport> unionOutdoorLaborDynamicQueryWrapper = new QueryWrapper<>();
        if (unionReportDto.getIsApplets().equals(1)){
            unionOutdoorLaborDynamicQueryWrapper.eq("create_user_id",unionReportDto.getCreateUserId()).eq("type",2);
            unionOutdoorLaborDynamicQueryWrapper.eq("create_user_id",unionReportDto.getCreateUserId());
            if (unionReportDto.getType()!=null)
                unionOutdoorLaborDynamicQueryWrapper.eq("type",unionReportDto.getType());
            if (unionReportDto.getStatus()!=null)
                unionOutdoorLaborDynamicQueryWrapper.eq("status",unionReportDto.getStatus());
        }else if(unionReportDto.getIsApplets().equals(3)){
            unionOutdoorLaborDynamicQueryWrapper.eq("create_union_user_id",unionReportDto.getCreateUnionUserId()).eq("type",2);
            unionOutdoorLaborDynamicQueryWrapper.eq("create_union_user_id",unionReportDto.getCreateUnionUserId()).eq("type",unionReportDto.getType());
            if (unionReportDto.getStatus()!=null)
                unionOutdoorLaborDynamicQueryWrapper.eq("status",unionReportDto.getStatus());
            if (unionReportDto.getType()!=null)
                unionOutdoorLaborDynamicQueryWrapper.eq("type",unionReportDto.getType());
        }
        Page pageResult = baseMapper.selectPage(page, unionOutdoorLaborDynamicQueryWrapper);
        pageResult.setTotal(pageResult.getRecords().size());
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/java/com/panzhihua/service_equipment/service/impl/UnionUserServiceImpl.java
@@ -7,20 +7,18 @@
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.redis.TokenManager;
import com.panzhihua.service_equipment.dao.*;
import com.panzhihua.service_equipment.model.dos.*;
import com.panzhihua.service_equipment.until.AccessUtil;
import com.panzhihua.service_equipment.dao.UnionAccessMapper;
import com.panzhihua.service_equipment.dao.UnionUserMapper;
import com.panzhihua.service_equipment.dao.UsersMapper;
import com.panzhihua.service_equipment.model.dos.UnionAccess;
import com.panzhihua.service_equipment.model.dos.UnionUser;
import com.panzhihua.service_equipment.model.dos.Users;
import com.panzhihua.service_equipment.service.UnionUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -40,6 +38,24 @@
    @Resource
    private TokenManager tokenManager;
    @Resource
    private UnionOpenDoorMapper unionOpenDoorMapper;
    @Resource
    private UnionIntegralRuleMapper unionIntegralRuleMapper;
    @Resource
    private  UnionIntegralRuleRecordMapper unionIntegralRuleRecordMapper;
    @Resource
    private  UnionIntegralSummarizeMapper unionIntegralSummarizeMapper;
    @Resource
    private  UnionOutdoorSiteMapper unionOutdoorSiteMapper;
    @Resource
    private  UnionIntegralRecordMapper unionIntegralRecordMapper;
    /**
     * 总工会户外劳登录
@@ -204,4 +220,92 @@
        }
    }
    /**
     * 用户开门
     *
     * @return 总工会户外劳共用户
     */
    @Override
    public  R openDoor(UnionUserDto unionUserDto,String qRCode){
        log.info("开始开门当前用户为{}",unionUserDto);
        UnionAccess unionAccess = unionAccessMapper.selectOne(new QueryWrapper<UnionAccess>().eq("q_r_code", qRCode));
        if (unionAccess==null){
            return R.fail("无效的二维码");
        }
        try {
            accessUtil.deviceOpen(unionAccess.getSn(), unionUserDto.getName(), "scan", "occupant");
        } catch (Exception e) {
            e.printStackTrace(); // 打印异常信息
            log.info("开门失败原因{}",e);
            return  R.fail("开门失败请检查人脸照片是否你本人或者联系工作人员");
        }
        Integer userLastOpenDoorMinutesDiff = unionOpenDoorMapper.getUserLastOpenDoorMinutesDiff(unionUserDto.getId());
        log.info("上次开门时间间隔时间{}分钟",userLastOpenDoorMinutesDiff);
        QueryWrapper<UnionOpenDoor> queryWrapper = new QueryWrapper<>();
        QueryWrapper<UnionOpenDoor> eq = queryWrapper.eq("user_id", unionUserDto.getId())
                .eq("DATE(create_at)", LocalDate.now())
                .eq("type", 1);
        Integer count = unionOpenDoorMapper.selectCount(eq);
        log.info("今日获得积分的开门次数为{}",count);
        UnionIntegralRule unionIntegralRule =
                unionIntegralRuleMapper.selectOne(new QueryWrapper<UnionIntegralRule>().eq("id", 1));
        log.info("当前规则{}",unionIntegralRule);
        if (unionIntegralRule.getDayNumber()>count && unionIntegralRule.getTimeNumber() <userLastOpenDoorMinutesDiff ){
            log.info("此次开门获得积分");
            UnionOpenDoor unionOpenDoor=new UnionOpenDoor();
            unionOpenDoor.setSiteId(unionAccess.getSiteId());
            unionOpenDoor.setUserId(unionUserDto.getId());
            unionOpenDoor.setType(1);
            unionOpenDoor.setCreateAt(LocalDateTime.now());
            unionOpenDoorMapper.insert(unionOpenDoor);
            UnionIntegralRuleRecord unionIntegralRuleRecord = unionIntegralRuleRecordMapper.selectOne(new QueryWrapper<UnionIntegralRuleRecord>()
                    .eq("rule_id", unionIntegralRule.getId())
                    .eq("count", count + 1));
            log.info("此次开门获得积分{}",unionIntegralRuleRecord.getIntegralNumber());
            UnionOutdoorSite unionOutdoorSite = unionOutdoorSiteMapper.selectById(unionAccess.getSiteId());
            UnionIntegralSummarize unionIntegralSummarize = unionIntegralSummarizeMapper.selectOne(new QueryWrapper<UnionIntegralSummarize>()
                    .eq("community_id", unionOutdoorSite.getAreaCode()).eq("user_id", unionUserDto.getId()));
            if (unionIntegralSummarize==null){
                log.info("第一次开门在此区域没有积分表新增一个");
                unionIntegralSummarize=new UnionIntegralSummarize();
                unionIntegralSummarize.setUserId(unionUserDto.getId().toString());
                unionIntegralSummarize.setCommunityId(unionOutdoorSite.getAreaCode());
                unionIntegralSummarize.setCreateTime(new Date());
                unionIntegralSummarize.setUpdateTime(new Date());
                unionIntegralSummarize.setAllIntegral(unionIntegralRuleRecord.getIntegralNumber().toString());
                unionIntegralSummarizeMapper.insert(unionIntegralSummarize);
            }else {
                log.info("用户积分修改前{}",unionIntegralSummarize);
                unionIntegralSummarize.setUpdateTime(new Date());
                unionIntegralSummarize.setAllIntegral(String.valueOf((Integer.parseInt(unionIntegralSummarize.getAllIntegral())
                        +unionIntegralRuleRecord.getIntegralNumber())));
                log.info("用户积分修改后{}",unionIntegralSummarize);
                unionIntegralSummarizeMapper.updateById(unionIntegralSummarize);
            }
            log.info("新增积分记录");
            UnionIntegralRecord unionIntegralRecord=new UnionIntegralRecord();
            unionIntegralRecord.setIntegralType("1");
            unionIntegralRecord.setIntegral(unionIntegralRuleRecord.getIntegralNumber().toString());
            unionIntegralRecord.setUserId(unionUserDto.getId().toString());
            unionIntegralRecord.setCreateTime(new Date());
            unionIntegralRecord.setUpdateTime(new Date());
            unionIntegralRecord.setCommunityId(unionOutdoorSite.getAreaCode());
            unionIntegralRecord.setIntegralId(unionIntegralSummarize.getId());
            unionIntegralRecord.setType("1");
            unionIntegralRecordMapper.insert(unionIntegralRecord);
            return R.ok("开门成功");
        }
        else {
            log.info("此次开门不获得积分");
            UnionOpenDoor unionOpenDoor=new UnionOpenDoor();
            unionOpenDoor.setSiteId(unionAccess.getSiteId());
            unionOpenDoor.setUserId(unionUserDto.getId());
            unionOpenDoor.setType(2);
            unionOpenDoor.setCreateAt(LocalDateTime.now());
            unionOpenDoorMapper.insert(unionOpenDoor);
            return  R.ok("开门成功");
        }
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/resources/mapper/UnionIntegralRecordMapper.xml
@@ -48,7 +48,7 @@
        order by create_time desc
    </select>
    <insert id="insert">
    <insert id="insertOne">
        insert into union_integral_record
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="item.id != null and item.id !=  '' ">
@@ -95,7 +95,7 @@
        </trim>
    </insert>
    <update id="update">
    <update id="updateOne">
        update union_integral_record
        <set>
            <if test="item.id != null and item.id !=  '' ">
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/resources/mapper/UnionIntegralRuleMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.panzhihua.service_equipment.dao.UnionIntegralRuleMapper">
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/resources/mapper/UnionIntegralRuleRecordMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.panzhihua.service_equipment.dao.UnionIntegralRuleRecordMapper">
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_equipment/src/main/resources/mapper/UnionOpenDoorMapper.xml
New file
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.panzhihua.service_equipment.dao.UnionOpenDoorMapper">
    <select id="getUserLastOpenDoorMinutesDiff" resultType="java.lang.Integer">
        SELECT TIMESTAMPDIFF(MINUTE, (
                                         SELECT MAX(create_at)
                                         FROM union_open_door
                                         WHERE user_id = #{userId}
                                     ), NOW()) AS minutes_diff
        FROM union_open_door
        WHERE user_id = #{userId}
        ORDER BY create_at DESC
            LIMIT 1;
    </select>
</mapper>