8ff90d87687b6d38158809aae776b6c709d7b60a..c71413ad986ffef1040586d8873adee02d9a6088
2025-12-09 rk
Merge remote-tracking branch 'origin/maanshan' into maanshan
c71413 对比 | 目录
2025-12-09 rk
钥匙柜酒精检测开关
3593c6 对比 | 目录
2025-12-08 MrShi
优化
3f68c9 对比 | 目录
已修改6个文件
54 ■■■■ 文件已修改
admin/.env.production 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/components/business/OperaJkCabinetWindow.vue 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/core/utils/Constants.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/JkCabinetMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCabinet.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/.env.production
@@ -1,13 +1,13 @@
# 生产环境配置
NODE_ENV = 'production'
<<<<<<< HEAD
# VUE_APP_API_URL = 'http://192.168.0.7/system_gateway'
VUE_APP_API_URL = 'http://10.49.152.112/system_gateway'
=======
VUE_APP_API_URL  = 'http://10.49.152.112/system_gateway'
>>>>>>> 6d07596890c54a8b7cdfd14d8ebd4b4e9acefecd
VUE_APP_API_URL = 'http://192.168.0.7/system_gateway'
# VUE_APP_API_URL = 'http://10.49.152.112/system_gateway'
# VUE_APP_API_URL  = 'http://10.49.152.112/system_gateway'
VUE_APP_AMAP_KEY='045542fc5f436b75e6c911c5c84ff8cd'
admin/src/components/business/OperaJkCabinetWindow.vue
@@ -42,6 +42,18 @@
          <span style="margin-left: 20px;">单位:分钟</span>
        </div>
      </el-form-item>
      <el-form-item label="酒精检测" prop="doubleAuth">
        <div style="width: 100%; display: flex; align-items: center;">
          <el-switch
            v-model="form.alcoholStatus"
            active-color="#13ce66"
            inactive-color="#ff4949"
            :active-value="0"
            :inactive-value="1">
          </el-switch>
          <span style="margin-left: 20px; color: #999999;">开启后,需要酒精检测通过后,才能开门</span>
        </div>
      </el-form-item>
      <el-form-item label="双重验证" prop="doubleAuth">
        <div style="width: 100%; display: flex; align-items: center;">
          <el-switch
@@ -177,7 +189,8 @@
        noLength: '',
        noIndex: '',
        sortType: 0,
        activateFile: null
        activateFile: null,
        alcoholStatus: 0
      },
      // 验证规则
      rules: {
server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -6,6 +6,7 @@
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import lombok.extern.slf4j.Slf4j;
import net.sourceforge.pinyin4j.PinyinHelper;
import org.apache.commons.lang3.StringUtils;
@@ -18,7 +19,7 @@
import java.util.Date;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@Slf4j
public class Constants {
    public static final String HEADER_USER_TOKEN = "dm_user_token";
    public static final String REDIS_USER_KEY = "user_token_list_";
@@ -1577,9 +1578,12 @@
    }
    public static boolean  betweenTimeConfig(String timeConfigData){
    public static boolean  betweenTimeConfig(String timeConfigData,String now){
        log.error("钥匙柜获取保洁时间配置项"+timeConfigData);
        if(StringUtils.isNotBlank(timeConfigData)){
            Integer nowTime = Integer.valueOf(DateUtil.getFormattedDateUtil(new Date(),"HH:mm").replace(":",""));
            log.error("钥匙柜获取保洁时间 - 当前时间信息"+now);
            Integer nowTime = Integer.valueOf(now.substring(11,16).replace(":",""));
            List<String> cleanConfigList = Arrays.asList(StringUtils.split(timeConfigData,","));
            for (String config:cleanConfigList) {
                String [] timeArr = config.split("-");
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/JkCabinetMapper.java
@@ -2,11 +2,12 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.JkCabinet;
import com.github.yulichang.base.mapper.MPJJoinMapper;
/**
 * @author 江蹄蹄
 * @date 2025/09/28 09:01
 */
public interface JkCabinetMapper extends BaseMapper<JkCabinet> {
public interface JkCabinetMapper extends MPJJoinMapper<JkCabinet> {
}
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/JkCabinet.java
@@ -170,4 +170,9 @@
    @ApiModelProperty(value = "激活文件")
    @TableField(exist = false)
    private Multifile activateFile;
    @ApiModelProperty(hidden = true)
    @TableField(exist = false)
    private String now;
}
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkCabinetGridServiceImpl.java
@@ -610,7 +610,10 @@
            || Objects.isNull(dto.getType())){
            return jkCabinetGridList;
        }else{
            JkCabinet jkCabinet = jkCabinetMapper.selectById(dto.getCabinetId());
            JkCabinet jkCabinet = jkCabinetMapper.selectJoinOne(JkCabinet.class,new MPJLambdaWrapper<JkCabinet>()
                            .selectAll(JkCabinet.class)
                            .select("now()",JkCabinet::getNow)
                    .eq(JkCabinet::getId,dto.getCabinetId()));
            if(Objects.isNull(jkCabinet)){
                return jkCabinetGridList;
            }
@@ -667,7 +670,7 @@
                //判断当前时间是否处于保洁时段内
                String cleanConfig =  systemDictDataBiz.queryByCode(Constants.CABINET_CONFIG,Constants.CLEAN_TIME).getCode();
                String earlyConfig =  systemDictDataBiz.queryByCode(Constants.CABINET_CONFIG,Constants.EARLY_CONFIG).getCode();
                Boolean isCleanTime = Constants.betweenTimeConfig(cleanConfig);
                Boolean isCleanTime = Constants.betweenTimeConfig(cleanConfig,jkCabinet.getNow());
                List<Integer> girdIdList = new ArrayList<>();
                //查询根据任务可以领取的数据
                jkCabinetGridList = jkCabinetGridMapper.selectJoinList(JkCabinetGrid.class,
@@ -1220,7 +1223,7 @@
            List<SyncGridDTO> gridSyncList = gridDTOList.stream().filter(i->StringUtils.isNotBlank(i.getBoardCode())&&
                    StringUtils.isNotBlank(i.getChannelCode())&&StringUtils.isNotBlank(i.getActualLable())&&i.getBoardCode().equals(jkCabinetGrid.getBoardCode())
            && i.getChannelCode().equals(jkCabinetGrid.getChannelCode())).collect(Collectors.toList());
            if(CollectionUtils.isEmpty(gridDTOList)){
            if(CollectionUtils.isEmpty(gridSyncList)){
                continue;
            }
            SyncGridDTO syncGridDTO = gridSyncList.get(Constants.ZERO);