zss
2024-07-30 4d9364da736f322cfeeec2815e83f2a3f6534223
Merge remote-tracking branch 'origin/master'
已修改8个文件
116 ■■■■ 文件已修改
framework/src/main/java/com/yuanchu/mom/utils/JackSonUtil.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/mom/utils/RedisUtil.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/pom.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/dto/SampleProductDto2.java 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/pojo/InsOrder.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/mom/utils/JackSonUtil.java
@@ -5,6 +5,7 @@
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectWriter;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import org.springframework.stereotype.Component;
import java.io.File;
@@ -104,6 +105,7 @@
     */
    public static <T> T unmarshal(String str, Class<T> valueType) throws Exception {
        try {
            OBJECT_MAPPER.registerModule(new JavaTimeModule());
            return OBJECT_MAPPER.readValue(str, valueType);
        } catch (JsonParseException e) {
            throw new Exception(e);
framework/src/main/java/com/yuanchu/mom/utils/RedisUtil.java
@@ -112,6 +112,15 @@
    }
    /**
     * 模糊匹配删除多个缓存
     * @param key 可以传一个值 或多个
     */
    public static void delsLike(String key) {
        Set<String> keys = redisTemplate.keys(key);
        redisTemplate.delete(keys);
    }
    /**
     * 获取并删除缓存
     * @param key 键
     * @return 值
inspect-server/pom.xml
@@ -70,5 +70,10 @@
            <artifactId>performance-server</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.datatype</groupId>
            <artifactId>jackson-datatype-jsr310</artifactId>
            <version>2.13.0</version>
        </dependency>
    </dependencies>
</project>
inspect-server/src/main/java/com/yuanchu/mom/dto/SampleProductDto2.java
@@ -14,25 +14,25 @@
    @ValueTableShow(name = "样品编号")
    private String sampleCode;
    @ValueTableShow(value = 2, name = "样品名称")
    @ValueTableShow(value = 1, name = "样品名称")
    private String sample;
    @ValueTableShow(value = 4, name = "样品型号")
    @ValueTableShow(value = 2, name = "检验项")
    private String inspectionItem;
    @ValueTableShow(value = 3, name = "检验子项")
    private String inspectionItemSubclass;
    @ValueTableShow(value = 4, name = "单位")
    private String unit;
    @ValueTableShow(value = 5, name = "样品型号")
    private String model;
//    @ValueTableShow(value = 5, name = "样品状态")
    private Integer insState;
    @ValueTableShow(value = 15, name = "单位")
    private String unit;
    @ValueTableShow(value = 7, name = "检验项")
    private String inspectionItem;
    @ValueTableShow(value = 8, name = "检验子项")
    private String inspectionItemSubclass;
    @ValueTableShow(value = 17, name = "实验室")
//    @ValueTableShow(value = 17, name = "实验室")
    private String sonLaboratory;
    private String inspectionItemType;
@@ -40,13 +40,13 @@
//    @ValueTableShow(value = 11, name = "检验值类型")
    private String inspectionValueType;
    @ValueTableShow(value = 12, name = "要求值")
    @ValueTableShow(value = 12, name = "试验要求")
    private String ask;
    @ValueTableShow(value = 13, name = "最终值")
    @ValueTableShow(value = 13, name = "检验结果")
    private String lastValue;
    @ValueTableShow(value = 14, name = "是否合格")
    @ValueTableShow(value = 14, name = "结果判定")
    private Integer insResult;
    private String equipValue;
inspect-server/src/main/java/com/yuanchu/mom/pojo/InsOrder.java
@@ -44,7 +44,7 @@
    */
    @ValueTableShow(5)
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("委托人")
    @ApiModelProperty("制单人")
    @Length(max= 255,message="编码长度不能超过255")
    private String custom;
@@ -118,7 +118,7 @@
    @Length(max= 255,message="编码长度不能超过255")
    private String otcCode;
    @ValueTableShow(11)
//    @ValueTableShow(11)
    @ApiModelProperty("下单人")
    @TableField(fill = FieldFill.INSERT)
    private Integer createUser;
@@ -203,7 +203,7 @@
    private Long companyId;
    @ValueTableShow(value = 15, name = "制单人")
    @ValueTableShow(value = 15, name = "委托人")
    private String prepareUser;
}
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -3477,7 +3477,7 @@
    }
    @Override
    public int submitPlan(Integer orderId, String laboratory, Integer verifyUser, String entrustCode, String sampleCode) {
    public int submitPlan(Integer orderId, String laboratory, Integer verifyUser, String entrustCode) {
        List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId).select(InsSample::getId));
        List<Integer> ids = insSamples.stream().map(a -> a.getId()).collect(Collectors.toList());
        List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
@@ -3567,8 +3567,8 @@
            return null;
        });
        // 删除数采采集次数
        String key = "frequency" + ":" + entrustCode + ":" + sampleCode;
        RedisUtil.del(key);
        String key = "frequency" + ":" + entrustCode + ":*";
        RedisUtil.delsLike(key);
        return 1;
    }
performance-server/src/main/java/com/yuanchu/mom/controller/PerformanceShiftController.java
@@ -6,8 +6,11 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.mom.annotation.ValueClassify;
import com.yuanchu.mom.dto.PerformanceShiftAddDto;
import com.yuanchu.mom.pojo.Enums;
import com.yuanchu.mom.pojo.PerformanceShift;
import com.yuanchu.mom.service.EnumService;
import com.yuanchu.mom.service.PerformanceShiftService;
import com.yuanchu.mom.service.UserService;
import com.yuanchu.mom.utils.StyleMonthUtils;
import com.yuanchu.mom.utils.StyleYearUtils;
import com.yuanchu.mom.vo.Result;
@@ -16,11 +19,19 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.NotNull;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.temporal.TemporalAdjusters;
import java.time.temporal.WeekFields;
import java.util.Collection;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -99,4 +110,49 @@
                    .doWrite((Collection<?>) data.get("data"));
        }
    }
    @Resource
    private EnumService enumService;
    @Resource
    private UserService userService;
    @ApiOperation(value = "临时接口-添加7月份8月份的数据")
    @GetMapping("temporaryInterface")
    public void temporaryInterface() {
        System.out.println("开始给每个人进行排班,默认早班======start");
        // TODO 给每个人都进行排班(默认早班)
        PerformanceShiftAddDto performanceShiftAddDto = new PerformanceShiftAddDto();
        //班次--早(查询字典)
        List<Enums> shiftType = enumService.selectEnumByCategory("班次类型");
        List<String> collect = shiftType.stream().filter(enums -> enums.getLabel().equals("早")).map(enums -> enums.getValue()).collect(Collectors.toList());
        performanceShiftAddDto.setShift(collect.get(0));
        //人员--所有人
        String userIds = userService.getDeviceManager().stream().map(user -> user.getId().toString()).distinct().collect(Collectors.joining(","));
        performanceShiftAddDto.setUserId(userIds);
        //周次--当月所有
        // 获取当前日期
        LocalDate today = LocalDate.of(2024, 8, 15);
        // 获取本月的第一天和最后一天
        LocalDate firstDayOfMonth = today.with(TemporalAdjusters.firstDayOfMonth());
        LocalDate lastDayOfMonth = today.with(TemporalAdjusters.lastDayOfMonth());
        // 获取周字段信息(根据区域设置)
        WeekFields weekFields = WeekFields.of(Locale.getDefault());
        // 获取本月第一天的周一
        LocalDate startOfWeek = firstDayOfMonth.with(TemporalAdjusters.previousOrSame(weekFields.getFirstDayOfWeek()));
        // 遍历本月所有天数,找出每周的第一天和最后一天
        LocalDate endOfWeek;
        while (startOfWeek.isBefore(firstDayOfMonth.plusMonths(1))) {
            endOfWeek = startOfWeek.plusDays(6);
            LocalDateTime startDateTime = LocalDateTime.of(startOfWeek, LocalTime.MIDNIGHT);
            LocalDateTime endDateTime = LocalDateTime.of(endOfWeek, LocalTime.MIDNIGHT);
            System.out.println("Week starts on " + startDateTime + " and ends on " + endDateTime);
            performanceShiftAddDto.setStartWeek(startDateTime);
            performanceShiftAddDto.setEndWeek(endDateTime);
            performanceShiftService.performanceShiftAdd(performanceShiftAddDto);
            startOfWeek = startOfWeek.plusWeeks(1);
        }
        System.out.println("排班结束======end");
    }
}
performance-server/src/main/resources/mapper/PerformanceShiftMapper.xml
@@ -14,7 +14,7 @@
        if(u2.department is not null and u2.department != '', CONCAT(u2.name, '(', u2.department, ')'), u2.name) name,
        GROUP_CONCAT(s.work_time, ':', s.shift, ':', s.id order by s.work_time SEPARATOR ';') AS shift_time, u2.id user_id
        FROM performance_shift s
        LEFT JOIN (SELECT u.* from
        LEFT JOIN (SELECT distinct u.* from
        user u
        left join department_lims dl on FIND_IN_SET(dl.id,u.depart_lims_id)
        where state=1