value
2023-08-26 ea4d3ff1ec0075eab10ef6c214653298f34d8185
Merge remote-tracking branch 'origin/master'

# Conflicts:
# framework/src/main/java/com/yuanchu/limslaboratory/utils/HttpUtils.java
已修改25个文件
已删除6个文件
已添加1个文件
488 ■■■■ 文件已修改
framework/src/main/java/com/yuanchu/limslaboratory/utils/HttpUtils.java 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/RawMaterialMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/RawMaterial.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/InspectionVo.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/InspectionService.java 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/RawMaterialService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java 93 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RawMaterialServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/resources/mapper/LinkBasicInformationMapper.xml 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/resources/mapper/RawMaterialMapper.xml 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/ProductMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/resources/mapper/ProductMapper.xml 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/controller/RoleController.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/controller/UserController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleManageMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/pojo/Role.java 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/pojo/User.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/NewPersonnelVo.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/UpdatePersonnelVo.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/service/RoleManagerService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/service/RoleService.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/resources/mapper/RoleManangeMapper.xml 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/resources/mapper/RoleMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/limslaboratory/utils/HttpUtils.java
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java
@@ -96,6 +96,18 @@
    public Result chooseVer(String name, String mcode, String specifications) {
        return Result.success(inspectionService.chooseVer(name, mcode, specifications));
    }
    @ApiOperation(value = "新增检验单-->选择检验项目版本-->查看该版本下我们要做的项目要求")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "name", value = "产品名称", dataTypeClass = String.class, required = true),
            @ApiImplicitParam(name = "mcode", value = "产品编号", dataTypeClass = String.class, required = true),
            @ApiImplicitParam(name = "specifications", value = "规格型号", dataTypeClass = String.class, required = true),
            @ApiImplicitParam(name = "version", value = "版本(默认最新版本)", dataTypeClass = Integer.class,required = true ),
            @ApiImplicitParam(name = "experiment", value = "试验项目(委托专属)", dataTypeClass = String.class )
    })
    @GetMapping("/lookProByVer")
    public Result lookProByVer(String name, String mcode, String specifications,Integer version,String experiment) {
        return Result.success(inspectionService.lookProByVer(name, mcode, specifications,version,experiment));
    }
    @ApiOperation(value = "新增检验单")
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java
@@ -40,12 +40,12 @@
            @ApiImplicitParam(name = "pageSize", value = "每一页数量", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(name = "materialCoding", value = "材料编码", dataTypeClass = String.class),
            @ApiImplicitParam(name = "materialName", value = "材料名称", dataTypeClass = String.class),
            @ApiImplicitParam(name = "condition", value = "状态", dataTypeClass = Integer.class),
            @ApiImplicitParam(name = "type", value = "状态", dataTypeClass = Integer.class),
            @ApiImplicitParam(name = "createTime", value = "来料日期", dataTypeClass = String.class)
    })
    @GetMapping("/selectAll")
    public Result<?> selectRawMaterial(Integer pageSize, Integer pageNo, String materialCoding, String materialName, Integer condition, String createTime) {
        IPage<RawMaterial> iPage = rawMaterialService.selectRawMaterial(materialCoding, materialName, condition, createTime, new Page<Objects>(pageNo, pageSize));
    public Result<?> selectRawMaterial(Integer pageSize, Integer pageNo, String materialCoding, String materialName, Integer type, String createTime) {
        IPage<RawMaterial> iPage = rawMaterialService.selectRawMaterial(materialCoding, materialName, type, createTime, new Page<Objects>(pageNo, pageSize));
        Map<String, Object> map = new HashMap<>();
        map.put("row", iPage.getRecords());
        map.put("total", iPage.getTotal());
inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/RawMaterialMapper.java
@@ -21,10 +21,10 @@
 */
public interface RawMaterialMapper extends BaseMapper<RawMaterial> {
    IPage<RawMaterial> selectRawMaterial(String materialCoding, String materialName, Integer condition, String createTime, Page<Objects> page);
    IPage<RawMaterial> selectRawMaterial(String materialCoding, String materialName, Integer type, String createTime, Page<Objects> page);
    List<RawMaterial> selectRawmaAll();
    List<Map<String, Object>> selectRawmaAll();
}
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/RawMaterial.java
@@ -22,7 +22,7 @@
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="RawMaterial对象", description="")
@ApiModel(value = "RawMaterial对象", description = "")
public class RawMaterial implements Serializable {
    private static final long serialVersionUID = 1L;
@@ -51,19 +51,19 @@
    @ApiModelProperty(value = "报检日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDateTime inspectionDate;
    private Date inspectionDate;
    @ApiModelProperty(value = "检验人")
    private String surveyor;
    @ApiModelProperty(value = "检验日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDateTime dateSurvey;
    private Date dateSurvey;
    @ApiModelProperty(value = "状态0:待检测;1:已检测")
    private Integer condition;
    private Integer type;
//    @TableLogic(value = "1", delval = "0")
    //    @TableLogic(value = "1", delval = "0")
    @ApiModelProperty(value = "逻辑删除 æ­£å¸¸>=1,删除<=0", hidden = true)
    private Integer state;
@@ -73,8 +73,8 @@
    private Date createTime;
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间", hidden = true)
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date updateTime;
    @ApiModelProperty(value = "乐观锁", hidden = true)
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/InspectionVo.java
@@ -10,12 +10,17 @@
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
//新增检验单
@Data
public class InspectionVo implements Serializable {
    //如果是原材料则id是选择原材料报检库中的id;如果是委托则id是选择委托报检库中委托样品的id
    @JsonSerialize
    private Integer id;
    /**
     *检验类型 0:原材料;1:产品;2:半成品;
     * æ£€éªŒç±»åž‹ 0:原材料;1:产品;2:半成品;
     **/
    @JsonSerialize
    @NotNull(message = "检验类型不能为空")
@@ -26,7 +31,7 @@
     **/
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @NotBlank(message = "来料日期不能为空")
    @NotNull(message = "来料日期不能为空")
    private Date formTime;
    /**
@@ -75,7 +80,7 @@
     **/
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @NotBlank(message = "检验开始时间不能为空")
    @NotNull(message = "检验开始时间不能为空")
    private Date startTime;
    /**
@@ -83,11 +88,15 @@
     **/
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @NotBlank(message = "检验结束时间不能为空")
    @NotNull(message = "检验结束时间不能为空")
    private Date endTime;
    //试验项目
    @NotBlank(message = "试验项目不能为空")
    //试验项目(委托专属)
    @JsonSerialize
    private String experiment;
    //版本(委托专属)
    @JsonSerialize
    @NotNull(message = "检验项目版本不能为空")
    private Integer version;
}
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/InspectionService.java
@@ -28,6 +28,25 @@
    IPage<Map<String, Object>> selectInspectsList(Page<Object> page, String message);
    /**
     * æ–°å¢žæ£€éªŒå•-->选择检验项目版本
     * @param name
     * @param mcode
     * @param specifications
     * @return
     */
    List<Integer> chooseVer(String name, String mcode, String specifications);
    /**
     * æ–°å¢žæ£€éªŒå•-->选择检验项目版本-->查看该版本下我们要做的项目要求
     * @param name
     * @param mcode
     * @param specifications
     * @param version
     * @return
     */
    List<Map<String,Object>> lookProByVer(String name, String mcode, String specifications, Integer version,String experiment);
    /**
     * æ–°å¢žæ£€éªŒç”³è¯·è¡¨
     * @param id
     * @param
@@ -59,14 +78,6 @@
     */
    String chooseUseProId(Integer id, Integer userProId);
    /**
     * æ–°å¢žæ£€éªŒå•-->选择检验项目版本
     * @param name
     * @param mcode
     * @param specifications
     * @return
     */
    List<Map<String,Object>> chooseVer(String name, String mcode, String specifications);
}
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/RawMaterialService.java
@@ -22,14 +22,14 @@
 */
public interface RawMaterialService extends IService<RawMaterial> {
    IPage<RawMaterial> selectRawMaterial(String materialCoding, String materialName, Integer condition, String createTime, Page<Objects> page);
    IPage<RawMaterial> selectRawMaterial(String materialCoding, String materialName, Integer type, String createTime, Page<Objects> page);
    /**
     * æŸ¥è¯¢åŽŸææ–™æ£€éªŒ
     *
     * @return
     */
    List<RawMaterial> selectRawmaAll();
    List<Map<String, Object>> selectRawmaAll();
}
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
@@ -60,6 +60,12 @@
    @Resource
    UserMapper userMapper;
    @Resource
    RawMaterialMapper rawMaterialMapper;
    @Resource
    LinkDetectionMapper linkDetectionMapper;
    /**
     * æŸ¥è¯¢æ£€éªŒç”³è¯·å•列表
@@ -72,10 +78,40 @@
        return inspectionMapper.selectInspectsList(page, message);
    }
    //新增检验单-->选择检验项目版本
    @Override
    public List<Integer> chooseVer(String name, String mcode, String specifications) {
        Integer specificationId = getSpecificationId(name, mcode, specifications);
        return productMapper.chooseVersion(specificationId);
    }
    //新增检验单-->选择检验项目版本-->查看该版本下我们要做的项目要求
    @Override
    public List<Map<String, Object>> lookProByVer(String name, String mcode, String specifications, Integer version, String experiment) {
        Integer specificationId = getSpecificationId(name, mcode, specifications);
        /*如果试验项目为空则是成品检验或者原材料检验则是展示该版本的所有项目检验要求参数*/
        if (ObjectUtils.isEmpty(experiment)) {
            return productMapper.pageProductInformation(specificationId, version);
        }
        /*如果不为空则是委托检验,只展示我们要检验的项目要求参数*/
        //获取试验项目信息(结构,导线外径)
        List<String> experiments = Arrays.stream(experiment.split(",")).collect(Collectors.toList());
        //根据型号id和项目信息查询项目信息
        List<Map<String, Object>> products = new ArrayList<>();
        for (String exper : experiments) {
            List<Map<String, Object>> list = productMapper.selFath(specificationId, exper, version);
            if (ObjectUtils.isEmpty(list)) {
                Map<String, Object> project = productMapper.selNam(specificationId, exper, version);
                products.add(project);
            }
            products.addAll(list);
        }
        return products;
    }
    /**
     * æ–°å¢žæ£€éªŒç”³è¯·è¡¨
     *
     * @param id
     * @param id ç”¨æˆ·id
     * @param
     * @return
     */
@@ -91,6 +127,21 @@
                .userId(id)
                .build();
        inspectionMapper.insert(inspection);
        /*如果是原材料检验,新增之后要更改原材料报检的状态和检验人,检验日期*/
        if (inspectionVo.getType()==0) {
            RawMaterial rawMaterial = new RawMaterial();
            rawMaterial.setId(inspectionVo.getId());
            rawMaterial.setType(1);
            rawMaterial.setSurveyor(userMapper.selectById(id).getName());
            rawMaterialMapper.updateById(rawMaterial);
        }
        /*如果是委托检验,新增之后要更改委托报检的状态*/
        else if (inspectionVo.getType()==2){
            LinkDetection linkDetection = new LinkDetection();
            linkDetection.setId(inspectionVo.getId());
            linkDetection.setInspectionStatus(2);
            linkDetectionMapper.updateById(linkDetection);
        }
        /*新增检验样品表*/
        InspectionMaterial inspectionMaterial = InspectionMaterial.builder()
                .code(inspectionVo.getMcode())
@@ -106,7 +157,7 @@
        /*新增检验项目表*/
        //根据样品名称编号以及型号规格获取型号id
        Integer specificationId = getSpecificationId(inspectionVo.getName(), inspectionVo.getMcode(), inspectionVo.getSpecifications());
        //如果试验项目字段不为空
        //如果试验项目字段不为空则按该字段的项目进行匹配
        if (ObjectUtils.isNotEmpty(inspectionVo.getExperiment())) {
            //获取试验项目信息(结构,导线外径)
            List<String> experiments = Arrays.stream(inspectionVo.getExperiment().split(",")).collect(Collectors.toList());
@@ -115,16 +166,17 @@
            for (String experiment : experiments) {
                List<Product> productList1 = productMapper.selectList(Wrappers.<Product>query()
                        .eq("specifications_id", specificationId)
                        .eq("father", experiment));
                        .eq("father", experiment)
                        .eq("version", inspectionVo.getVersion()));
                if (ObjectUtils.isEmpty(productList1)) {
                    Product product = productMapper.selectOne(Wrappers.<Product>query()
                            .eq("specifications_id", specificationId)
                            .isNull("father")
                            .eq("name", experiment));
                            .eq("name", experiment)
                            .eq("version", inspectionVo.getVersion()));
                    products.add(product);
                } else products.addAll(productList1);
            }
            //将查询的项目信息构建成检验项目
            ArrayList<InspectionProduct> list = new ArrayList<>();
            for (Product product : products) {
@@ -137,13 +189,27 @@
                        .build();
                list.add(rawInsProduct);
            }
            //检验项目批量添加
            inspectionProductService.saveBatch(list);
            return inspection.getId();
        }
        //todo:未完
        return null;
        //如果试验项目为空则按照型号id在标准库里面全部匹配
        List<Product> productList = productMapper.selectList(Wrappers.<Product>query().eq("specifications_id", specificationId));
        //将查询的项目信息构建成检验项目
        ArrayList<InspectionProduct> list = new ArrayList<>();
        for (Product product : productList) {
            InspectionProduct rawInsProduct = InspectionProduct.builder()
                    .name(product.getName())
                    .unit(product.getUnit())
                    .required(product.getRequired())
                    .internal(product.getInternal())
                    .inspectionMaterialId(inspectionMaterial.getId())
                    .build();
            list.add(rawInsProduct);
        }
        //检验项目批量添加
        inspectionProductService.saveBatch(list);
        return inspection.getId();
    }
    //根据检验单id查询原材料检验单详情
@@ -219,15 +285,6 @@
        inspectionProductMapper.updateById(inspectionProduct);
        return "保存成功!";
    }
    //新增检验单-->选择检验项目版本
    @Override
    public List<Map<String, Object>> chooseVer(String name, String mcode, String specifications) {
        Integer specificationId = getSpecificationId(name, mcode, specifications);
        return null;
    }
    /*根据样品名称,样品编号,型号规格获取型号id*/
    private Integer getSpecificationId(String name, String mcode, String specification) {
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java
@@ -1,7 +1,9 @@
package com.yuanchu.limslaboratory.service.impl;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.yuanchu.limslaboratory.mapper.*;
import com.yuanchu.limslaboratory.pojo.*;
import com.yuanchu.limslaboratory.service.PlanService;
@@ -44,6 +46,12 @@
    @Resource
    InspectionMapper inspectionMapper;
    @Resource
    InspectionMaterialMapper inspectionMaterialMapper;
    @Resource
    LinkDetectionMapper linkDetectionMapper;
    //查询检验计划
    @Override
@@ -116,6 +124,7 @@
            Inspection inspection = new Inspection();
            inspection.setId(id);
            inspection.setInspectionStatus(0);
            //更新检验单
            inspectionMapper.updateById(inspection);
        } else if (count == results.size()) {
            Inspection inspection = new Inspection();
@@ -139,6 +148,7 @@
        report.setStatus(0);
        report.setConclusion(conclusion);
        report.setInspectionId(id);
        //新增检验报告
        reportMapper.insert(report);
        return "上报成功!";
    }
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RawMaterialServiceImpl.java
@@ -10,6 +10,7 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import java.util.Objects;
/**
@@ -36,8 +37,8 @@
     * @return
     */
    @Override
    public IPage<RawMaterial> selectRawMaterial(String materialCoding, String materialName, Integer condition, String createTime, Page<Objects> page) {
        return rawMaterialMapper.selectRawMaterial(materialCoding, materialName, condition, createTime, page);
    public IPage<RawMaterial> selectRawMaterial(String materialCoding, String materialName, Integer type, String createTime, Page<Objects> page) {
        return rawMaterialMapper.selectRawMaterial(materialCoding, materialName, type, createTime, page);
    }
    /**
@@ -46,7 +47,7 @@
     * @return
     */
    @Override
    public List<RawMaterial> selectRawmaAll() {
    public List<Map<String, Object>> selectRawmaAll() {
        return rawMaterialMapper.selectRawmaAll();
    }
inspection-server/src/main/resources/mapper/LinkBasicInformationMapper.xml
@@ -25,7 +25,8 @@
    </select>
    <select id="selectLinkAll" resultType="java.util.Map">
        SELECT DATE_FORMAT(l.`inspection_time`, '%Y-%m-%d') formTime,
        SELECT d.id ,
            DATE_FORMAT(l.`inspection_time`, '%Y-%m-%d') formTime,
               l.`entrusted`                                supplier,
               d.`sample_number`                            mcode,
               d.`sample_name`                              name,
@@ -39,5 +40,6 @@
             lims_laboratory.link_detection d
        WHERE l.`id` = d.`link_basic_id`
          AND l.`state` = 1
          and inspection_status = 1
    </select>
</mapper>
inspection-server/src/main/resources/mapper/RawMaterialMapper.xml
@@ -1,7 +1,6 @@
<?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.RawMaterialMapper">
    <select id="selectRawMaterial" resultType="com.yuanchu.limslaboratory.pojo.RawMaterial">
        SELECT *
        FROM raw_material r
@@ -12,16 +11,26 @@
        <if test="materialName != null and materialName != ''">
            AND r.`material_name` LIKE CONCAT('%',#{materialName},'%')
        </if>
        <if test="condition != null and condition != ''">
            AND r.`condition` = #{condition}
        <if test="type != null and type != ''">
            AND r.`type` = #{type}
        </if>
        <if test="createTime != null and createTime != ''">
            AND DATE_FORMAT(r.`create_time`,'%Y-%m-%d') = #{createTime}
        </if>
    </select>
    <select id="selectRawmaAll" resultType="com.yuanchu.limslaboratory.pojo.RawMaterial">
        select * from lims_laboratory.raw_material where state=1
    <select id="selectRawmaAll" resultType="java.util.Map">
        select id,
               supplier_name                            supplier,
               material_coding                          mcode,
               material_name                            name,
               specifications_models                    specifications,
               unit,
               quantity                                 num,
               DATE_FORMAT(inspection_date, '%Y-%m-%d') startTime,
               DATE_FORMAT(date_survey, '%Y-%m-%d')     endTime,
               DATE_FORMAT(create_time, '%Y-%m-%d')     formTime
        from lims_laboratory.raw_material
        where state = 1
          and type = 0
    </select>
</mapper>
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java
@@ -46,7 +46,6 @@
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "id", value = "标准项目ID", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(name = "required", value = "标准值", dataTypeClass = String.class, required = true),
            @ApiImplicitParam(name = "internal", value = "内控值", dataTypeClass = String.class, required = true),
            @ApiImplicitParam(name = "internal", value = "内控值", dataTypeClass = String.class, required = true)
    })
standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/ProductMapper.java
@@ -33,4 +33,10 @@
    //查询该型号下的所有试验项目(父类)
    List<Map<String,Object>> chooseProject(Integer modelId);
    //根据项目父类,型号id,版本查询二级详情
    List<Map<String, Object>> selFath(Integer specificationId, String exper, Integer version);
    //根据项目父类为空,项目名,型号id,版本查询
    Map<String, Object> selNam(Integer specificationId, String exper, Integer version);
}
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java
@@ -73,7 +73,9 @@
    public Integer addVersion(Integer specificationsId) {
        List<Product> productList = productMapper.selectList(Wrappers.<Product>query().eq("specifications_id", specificationsId));
        for (Product product : productList) {
            product.setId(null);
            product.setVersion(product.getVersion()+1);
            product.setSpecifications_id(specificationsId);
        }
         saveBatch(productList);
        return productList.get(0).getVersion();
standard-server/src/main/resources/mapper/ProductMapper.xml
@@ -37,8 +37,8 @@
        from lims_laboratory.product
        where state = 1
          and specifications_id = #{specificationsId}
        ORDER BY product.`create_time` DESC
          and version = #{version}
        ORDER BY product.`create_time` DESC
    </select>
    <select id="deleteList">
@@ -71,4 +71,36 @@
        where state = 1
          and specifications_id = #{modelId}
    </select>
    <!--根据项目父类,型号id,版本查询二级详情-->
    <select id="selFath" resultMap="pageProductInformationMap">
        select id,
               name,
               father,
               unit,
               required,
               internal,
               version
        from lims_laboratory.product
        where state = 1
          and specifications_id = #{specificationId}
          and version = #{version}
          and father = #{exper}
    </select>
    <!--根据项目父类为空,项目名,型号id,版本查询-->
    <select id="selNam" resultType="java.util.Map">
        select id,
               name,
               unit,
               required,
               internal,
               version
        from lims_laboratory.product
        where state = 1
          and specifications_id = #{specificationId}
          and version = #{version}
          and name = #{exper}
          and father is null
    </select>
</mapper>
user-server/src/main/java/com/yuanchu/limslaboratory/controller/RoleController.java
ÎļþÒÑɾ³ý
user-server/src/main/java/com/yuanchu/limslaboratory/controller/UserController.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.clients.UserLoginUtils;
import com.yuanchu.limslaboratory.pojo.User;
import com.yuanchu.limslaboratory.service.RoleManagerService;
import com.yuanchu.limslaboratory.service.UserService;
import com.yuanchu.limslaboratory.shiro.realm.ShiroRealm;
import com.yuanchu.limslaboratory.utils.JackSonUtil;
@@ -24,6 +25,7 @@
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -42,6 +44,9 @@
    @Autowired
    private UserService userService;
    @Autowired
    private RoleManagerService roleManagerService;
    @ApiOperation("用户登录")
    @ApiImplicitParams(value = {
@@ -75,6 +80,13 @@
        }
    }
    @ApiOperation("新增用户获取角色权限信息")
    @GetMapping("/list")
    public Result<?> getUserListRole(){
        List<Map<String,Object>> data = roleManagerService.getUserListRole();
        return Result.success(data);
    }
    @ApiOperation("登录-->获取用户信息")
    @GetMapping("/info")
    public Result<?> getUserInfo(@RequestHeader("X-Token") String token){
user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleManageMapper.java
@@ -33,4 +33,6 @@
    int deleteRoleMenuByRoleId(Long id);
    RoleAndMenuDto selectAllRoleAndMenuByRoleId(Long roleId);
    List<Map<String, Object>> getUserListRole();
}
user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleMapper.java
ÎļþÒÑɾ³ý
user-server/src/main/java/com/yuanchu/limslaboratory/pojo/Role.java
ÎļþÒÑɾ³ý
user-server/src/main/java/com/yuanchu/limslaboratory/pojo/User.java
@@ -3,9 +3,7 @@
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
@@ -14,7 +12,6 @@
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
/**
 * <p>
user-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/NewPersonnelVo.java
@@ -18,7 +18,7 @@
    private String account;
    @ApiModelProperty(value = "0:无权限;1:有权限", example = "1", required = true)
    private Integer roleId;
    private Long roleId;
    @ApiModelProperty(value = "年龄", example = "23")
    private Integer age;
user-server/src/main/java/com/yuanchu/limslaboratory/pojo/vo/UpdatePersonnelVo.java
@@ -20,7 +20,10 @@
    private String account;
    @ApiModelProperty(value = "0:无权限;1:有权限", example = "1", required = true)
    private Long role_id;
    private Long roleId;
    @ApiModelProperty(value = "关联 ä¼ä¸šid")
    private Integer enterpriseId;
    @ApiModelProperty(value = "年龄", example = "23")
    private Integer age;
@@ -31,6 +34,9 @@
    @ApiModelProperty(value = "邮箱", example = "12345678@qq.com")
    private String email;
    @ApiModelProperty(value = "组织架构Id", example = "2")
    private Integer organizationId;
    @ApiModelProperty(value = "在职状态 æ­£å¸¸>=1,离职<=0", example = "0")
    private Integer jobState;
user-server/src/main/java/com/yuanchu/limslaboratory/service/RoleManagerService.java
@@ -26,4 +26,6 @@
    boolean updateRoleMenu(UpdateRoleMenuDto dto);
    RoleAndMenuDto getRoleAndMenuByRole(Long roleId);
    List<Map<String, Object>> getUserListRole();
}
user-server/src/main/java/com/yuanchu/limslaboratory/service/RoleService.java
ÎļþÒÑɾ³ý
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java
@@ -2,6 +2,7 @@
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -16,6 +17,7 @@
import com.yuanchu.limslaboratory.pojo.dto.UpdateRoleMenuDto;
import com.yuanchu.limslaboratory.service.RoleManagerService;
import com.yuanchu.limslaboratory.utils.JsonUtil;
import com.yuanchu.limslaboratory.utils.MyUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -136,6 +138,11 @@
        return roleManageMapper.selectAllRoleAndMenuByRoleId(roleId);
    }
    @Override
    public List<Map<String, Object>> getUserListRole() {
        return roleManageMapper.getUserListRole();
    }
    private List<Menu> getEnumChildren(Menu root, List<Menu> all) {
        return all.stream()
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleServiceImpl.java
ÎļþÒÑɾ³ý
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java
@@ -126,23 +126,20 @@
    @Override
    public Integer updateNewPersonnel(UpdatePersonnelVo updatePersonnelVo) {
        User user = new User()
                .setName(updatePersonnelVo.getName())
                .setAccount(updatePersonnelVo.getAccount())
                .setAge(String.valueOf(updatePersonnelVo.getAge()))
                .setPhone(updatePersonnelVo.getPhone())
                .setEmail(updatePersonnelVo.getEmail())
                .setRoleId(updatePersonnelVo.getRole_id())
                .setPassword(updatePersonnelVo.getPassword())
                .setJobState(updatePersonnelVo.getJobState());
        LambdaUpdateWrapper<User> updateWrapper = new LambdaUpdateWrapper<>();
        updateWrapper.eq(User::getId, updatePersonnelVo.getId());
        return userMapper.update(user, updateWrapper);
        try {
            MyUtil.PrintLog(updatePersonnelVo.toString());
            User unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(updatePersonnelVo), User.class);
            LambdaUpdateWrapper<User> updateWrapper = new LambdaUpdateWrapper<>();
            updateWrapper.eq(User::getId, updatePersonnelVo.getId());
            return userMapper.update(unmarshal, updateWrapper);
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
    @Override
    public IPage<Map<String, Object>> getNewPersonnelPage(String name, Page page, Integer status) {
        MyUtil.PrintLog(name + status + "=============");
        return userMapper.getNewPersonnelPage(name, page, status);
    }
user-server/src/main/resources/mapper/RoleManangeMapper.xml
@@ -91,6 +91,10 @@
        and r.id=#{roleId}
    </select>
    <select id="getUserListRole" resultType="map">
        SELECT CONCAT(r.`id`, '') id, r.`name`
        FROM role r
    </select>
    <resultMap id="roleAndMenuById" type="com.yuanchu.limslaboratory.pojo.dto.RoleAndMenuDto">
        <result property="roleName" column="roleName"/>
        <result property="createTime" column="createTime"/>
@@ -124,4 +128,4 @@
            <result property="parentId" column="parentId"/>
        </collection>
    </resultMap>
</mapper>
</mapper>
user-server/src/main/resources/mapper/RoleMapper.xml
ÎļþÒÑɾ³ý