Fixiaobai
2023-09-06 8abe275e36823f1065300af45e1f7a9a68f549a7
修改bug
已修改20个文件
已添加1个文件
195 ■■■■ 文件已修改
framework/src/main/java/com/yuanchu/limslaboratory/exception/ApplicationException.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/resources/mapper/LinkBasicInformationMapper.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/resources/mapper/RawMaterialMapper.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/EquipmentPointController.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/EquipmentPointMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/EquipmentPointService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/EquipmentPointServiceImpl.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
laboratory-server/src/main/resources/mapper/EquipmentPointMapper.xml 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/ProductMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Product.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/StandardProductAddDto.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/resources/mapper/ProductMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sys/src/main/resources/application-dev.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/limslaboratory/exception/ApplicationException.java
@@ -30,6 +30,10 @@
    public ApplicationException() {
    }
    public ApplicationException(String msg) {
        this.msg = msg;
    }
    public String getCode() {
        return code;
    }
framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java
@@ -1,5 +1,6 @@
package com.yuanchu.limslaboratory.handler;
import com.yuanchu.limslaboratory.exception.ApplicationException;
import com.yuanchu.limslaboratory.exception.AuthException;
import com.yuanchu.limslaboratory.exception.MyFileException;
import com.yuanchu.limslaboratory.utils.MyUtil;
@@ -230,5 +231,14 @@
        return Result.fail(Integer.valueOf(e.getCode()),e.getMsg());
    }
    /**
     * ä¸šåС异叏
     * @param e
     * @return
     */
    @ExceptionHandler({ApplicationException.class })
    public Result<?> applicationError(ApplicationException e){
        return Result.fail(e.getMsg());
    }
}
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java
@@ -106,7 +106,8 @@
    @AuthHandler(type = InterfaceType.SELECT,menuId = MenuEnums.reportForInspection,isAdd = true)
    public Result<?> getMaterielName(){
        LambdaQueryWrapper<Material> wrapper = new LambdaQueryWrapper<>();
        wrapper.select(Material::getId, Material::getName, Material::getCode);
        wrapper.select(Material::getId, Material::getName, Material::getCode)
                .eq(Material::getType,0).eq(Material::getState,1);
        List<Map<String, Object>> maps = materialService.listMaps(wrapper);
        return Result.success(maps);
    }
inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/InspectionMapper.java
@@ -76,5 +76,7 @@
    //查询该月的成品合格率
    Long getOkFinByMonth(String monthofYear);
}
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
@@ -16,6 +16,7 @@
import com.yuanchu.limslaboratory.pojo.vo.InspectDetailVo;
import com.yuanchu.limslaboratory.pojo.vo.InspectionVo;
import com.yuanchu.limslaboratory.service.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -32,6 +33,7 @@
 * @since 2023-08-03 13:03:36
 */
@Service
@Slf4j
public class InspectionServiceImpl extends ServiceImpl<InspectionMapper, Inspection> implements InspectionService {
    @Resource
@@ -121,6 +123,7 @@
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Integer addInspect(Integer id, InspectionVo inspectionVo) throws ApplicationException {
        log.info(inspectionVo.toString());
        /*新增检验申请表*/
        Inspection inspection = Inspection.builder()
                .startTime(inspectionVo.getStartTime())
@@ -216,7 +219,7 @@
            String required = Optional.ofNullable(p)
                    .map(Product::getRequired).orElse("空");
            if(Objects.equals("空",internal)||Objects.equals(required,"空")) {
                throw new ApplicationException("500","项目版本不可用");
                throw new ApplicationException("项目版本不可用");
            }
        });
        //将查询的项目信息构建成检验项目
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java
@@ -1,6 +1,7 @@
package com.yuanchu.limslaboratory.service.impl;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -12,6 +13,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@@ -52,6 +54,9 @@
    @Resource
    LinkDetectionMapper linkDetectionMapper;
    @Resource
    private NonConformanceReviewMapper nonConformanceReviewMapper;
    //查询检验计划
    @Override
@@ -126,6 +131,13 @@
            inspection.setInspectionStatus(0);
            //更新检验单
            inspectionMapper.updateById(inspection);
            //添加不合格信息到评审
            inspectionMapper
            NonConformanceReview nonConformanceReview = new NonConformanceReview();
            LocalDateTime localDateTime = DateUtil.toLocalDateTime(DateUtil.date());
            nonConformanceReview.setCreatedTime(localDateTime);
            nonConformanceReview.setUpdatedTime(localDateTime);
            nonConformanceReview.set
        } else if (count == results.size()) {
            Inspection inspection = new Inspection();
            inspection.setId(id);
inspection-server/src/main/resources/mapper/LinkBasicInformationMapper.xml
@@ -40,6 +40,7 @@
               d.`specifications_models`                    specifications,
               d.`unit`,
               d.`samples_number`                           num,
               d.specifications_models                      specificationsId,
               experiment,
               DATE_FORMAT(date_survey, '%Y-%m-%d')         startTime,
               DATE_FORMAT(completion_deadline, '%Y-%m-%d') endTime
inspection-server/src/main/resources/mapper/RawMaterialMapper.xml
@@ -24,6 +24,7 @@
               material_coding                          mcode,
               material_name                            name,
               specifications_models                    specifications,
               specifications_id                      specificationsId,
               unit,
               quantity                                 num,
               surveyor,
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/EquipmentPointController.java
@@ -1,6 +1,8 @@
package com.yuanchu.limslaboratory.controller;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
@@ -19,10 +21,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotNull;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.*;
/**
 * <p>
@@ -43,15 +42,18 @@
    @ApiOperation("添加设备码点")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addEquipmentPointInformation(@RequestHeader("X-Token") String token, @RequestBody EquipmentPoint equipmentPoint) throws Exception {
    public Result<?> addEquipmentPointInformation(@RequestHeader("X-Token") String token, @RequestBody List<EquipmentPoint> equipmentPoints) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
        equipmentPoint.setUserId((Integer) unmarshal.get("id"));
        Integer isInsertSuccess = equipmentPointService.addEquipmentPointInformation(equipmentPoint);
        if (isInsertSuccess == 1){
            return Result.success("添加【"+ equipmentPoint.getEquipmentPointName() +"】成功!");
        equipmentPoints.forEach(e->{
            e.setUserId((Integer) unmarshal.get("id"));
            e.setCreateTime(new Date());
            e.setUpdateTime(new Date());
        });
        if(equipmentPointService.addEquipmentPointInformation(equipmentPoints)>0){
           return Result.success("添加成功");
        }
        return Result.fail("添加【"+ equipmentPoint.getEquipmentPointName() +"】失败!设备码点编码重复!");
       return Result.fail("添加失败");
    }
    @ApiOperation("根据仪器Id查询对应设备码点数据")
@@ -62,6 +64,9 @@
    @AuthHandler
    public Result<?> getListEquipmentPointInformation(String InstrumentId) {
        List<Map<String, Object>> list = equipmentPointService.getListEquipmentPointInformation(InstrumentId);
        list.forEach(l->{
            l.put("instrumentId",null);
        });
        return Result.success(list);
    }
laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/EquipmentPointMapper.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.pojo.EquipmentPoint;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
@@ -20,4 +21,6 @@
public interface EquipmentPointMapper extends BaseMapper<EquipmentPoint> {
    List<Map<String, Object>> getListEquipmentPointInformation(String InstrumentId);
    int insertBatch(@Param("lists") List<EquipmentPoint> lists);
}
laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/EquipmentPointService.java
@@ -19,7 +19,7 @@
 */
public interface EquipmentPointService extends IService<EquipmentPoint> {
    Integer addEquipmentPointInformation(EquipmentPoint equipmentPoint);
    Integer addEquipmentPointInformation(List<EquipmentPoint>  equipmentPoint);
    List<Map<String, Object>> getListEquipmentPointInformation(String InstrumentId);
laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/EquipmentPointServiceImpl.java
@@ -32,17 +32,8 @@
    private EquipmentPointMapper equipmentPointMapper;
    @Override
    public Integer addEquipmentPointInformation(EquipmentPoint equipmentPoint) {
        LambdaQueryWrapper<EquipmentPoint> wrapper = new LambdaQueryWrapper<>();
        wrapper.eq(EquipmentPoint::getEquipmentPoint, equipmentPoint.getEquipmentPoint());
        wrapper.eq(EquipmentPoint::getState, 1);
        wrapper.eq(EquipmentPoint::getInstrumentId, equipmentPoint.getInstrumentId());
        wrapper.select(EquipmentPoint::getEquipmentPoint);
        EquipmentPoint equipmentPoint1 = equipmentPointMapper.selectOne(wrapper);
        if (ObjectUtils.isEmpty(equipmentPoint1)){
            return equipmentPointMapper.insert(equipmentPoint);
        }
        return 0;
    public Integer addEquipmentPointInformation(List<EquipmentPoint>  equipmentPoint) {
        return  equipmentPointMapper.insertBatch(equipmentPoint);
    }
    @Override
laboratory-server/src/main/resources/mapper/EquipmentPointMapper.xml
@@ -1,11 +1,26 @@
<?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.yuanchu.limslaboratory.mapper.EquipmentPointMapper">
    <insert id="insertBatch">
        insert
        equipment_point (instrument_id,user_id,equipment_point,equipment_point_name,unit,descriptiveness,create_time,update_time,state)
        values
        <foreach collection="lists" item="l" separator=",">
            (#{l.instrumentId},#{l.userId},#{l.equipmentPoint},#{l.equipmentPointName},#{l.unit},#{l.descriptiveness},#{l.createTime},#{l.updateTime},1)
        </foreach>
    </insert>
    <select id="getListEquipmentPointInformation" resultType="map">
        SELECT e.`id`, e.`equipment_point` equipmentPoint, e.`equipment_point_name` equipmentPointName, e.`unit`,u.`name`, DATE_FORMAT(e.`update_time`, '%Y-%m-%d') updateTime, e.`descriptiveness`
        FROM equipment_point e, `user` u
        SELECT e.`id`,
               e.`equipment_point`                      equipmentPoint,
               e.`equipment_point_name`                 equipmentPointName,
               e.`unit`,
               u.`name`,
               DATE_FORMAT(e.`update_time`, '%Y-%m-%d') updateTime,
               e.`descriptiveness`
        FROM equipment_point e,
             `user` u
        WHERE e.`user_id` = u.`id`
        AND e.`instrument_id` = #{InstrumentId}
          AND e.`instrument_id` = #{InstrumentId}
    </select>
</mapper>
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java
@@ -1,6 +1,10 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.enums.InterfaceType;
import com.yuanchu.limslaboratory.enums.MenuEnums;
import com.yuanchu.limslaboratory.pojo.Product;
import com.yuanchu.limslaboratory.pojo.dto.StandardProductAddDto;
import com.yuanchu.limslaboratory.service.ProductService;
import com.yuanchu.limslaboratory.utils.MyUtil;
import com.yuanchu.limslaboratory.vo.Result;
@@ -86,4 +90,21 @@
        Integer version1 = productService.addVersion(specificationsId,version);
        return Result.success("添加版本"+version1+"成功");
    }
    @ApiOperation("标注库-》添加项目")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "specificationId", value = "型号id", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(name = "version", value = "当前版本", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(name = "name", value = "项目名", dataTypeClass = String.class, required = true),
            @ApiImplicitParam(name = "father", value = "项目分组", dataTypeClass = String.class, required = true),
            @ApiImplicitParam(name = "unit", value = "单位", dataTypeClass = String.class, required = true),
    })
    @PostMapping("/addProduct")
    @AuthHandler(type = InterfaceType.ADD,menuId = MenuEnums.index,isAdd = true)
    public Result<?> addProduct(@RequestBody StandardProductAddDto dto){
        return Result.success(productService.addProduct(dto));
    }
}
standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/ProductMapper.java
@@ -4,6 +4,8 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.pojo.Product;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yuanchu.limslaboratory.pojo.dto.StandardProductAddDto;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -39,4 +41,6 @@
    //根据项目父类为空,项目名,型号id,版本查询
    Map<String, Object> selNam(Integer specificationId, String exper, Integer version);
    int addProduct(Product product);
}
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Product.java
@@ -82,4 +82,14 @@
        this.version = version;
        this.specifications_id = specifications_id;
    }
    public Product(String name, String father, String unit, Date createTime, Date updateTime, Integer version, Integer specifications_id) {
        this.name = name;
        this.father = father;
        this.unit = unit;
        this.createTime = createTime;
        this.updateTime = updateTime;
        this.version = version;
        this.specifications_id = specifications_id;
    }
}
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/StandardProductAddDto.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,34 @@
package com.yuanchu.limslaboratory.pojo.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
 * @Author å¼ å®¾
 * @Date 2023/9/6
 */
@Data
public class StandardProductAddDto implements Serializable {
    @ApiModelProperty(value = "项目分组", example = "1", hidden = true)
    private String father;
    @ApiModelProperty(value = "项目名", example = "1", hidden = true)
    private String name;
    @ApiModelProperty(value = "版本", example = "1", hidden = true)
    private String version;
    /**
     * å•位
     **/
    @ApiModelProperty(value = "单位", example = "1", hidden = true)
    private String unit;
    @ApiModelProperty(value = "关联 åž‹å·id", example = "1", hidden = true)
    private Integer specificationId;
}
standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java
@@ -2,6 +2,7 @@
import com.yuanchu.limslaboratory.pojo.Product;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yuanchu.limslaboratory.pojo.dto.StandardProductAddDto;
import java.util.List;
import java.util.Map;
@@ -58,4 +59,6 @@
     * @return
     */
    List<Map<String,Object>> chooseProject(Integer modelId);
    String addProduct(StandardProductAddDto dto);
}
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.yuanchu.limslaboratory.pojo.Product;
import com.yuanchu.limslaboratory.mapper.ProductMapper;
import com.yuanchu.limslaboratory.pojo.dto.StandardProductAddDto;
import com.yuanchu.limslaboratory.service.ProductService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.limslaboratory.utils.MyUtil;
@@ -11,6 +12,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -90,5 +92,15 @@
        return productMapper.chooseProject(modelId);
    }
    @Override
    public String addProduct(StandardProductAddDto dto) {
        int i = productMapper.addProduct(new Product(
                dto.getName(), dto.getFather(),
                dto.getUnit(), new Date(), new Date(),
                Integer.parseInt(dto.getVersion()), dto.getSpecificationId()));
        if(i>0) return "添加成功!";
        return "添加失败";
    }
}
standard-server/src/main/resources/mapper/ProductMapper.xml
@@ -1,6 +1,11 @@
<?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.yuanchu.limslaboratory.mapper.ProductMapper">
    <insert id="addProduct">
        insert
        product (name,father,unit,state,create_time,update_time,version,specifications_id)
        value (#{name},#{father},#{unit},1,#{createTime},#{updateTime},#{version},#{specifications_id})
    </insert>
    <select id="selectProductByMaterialId" resultType="Map">
        select p.name, unit, required, internal
        from lims_laboratory.product p,
sys/src/main/resources/application-dev.yml
@@ -43,7 +43,7 @@
#    url: jdbc:mysql://192.168.110.209:3306/lims_laboratory?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
#    username: user
#    password: 123456
    url: jdbc:mysql://192.168.65.113:3306/lims_laboratory?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
    url: jdbc:mysql://192.168.218.113:3306/lims_laboratory?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
    username: user
    password: 123456
    druid:
@@ -69,7 +69,7 @@
    database: 0
    # redis服务器地址(默认为localhost)
#    host: 192.168.110.209
    host: 192.168.65.113
    host: 192.168.218.113
    # redis端口(默认为6379)
    port: 6379
    # redis访问密码(默认为空)