Fixiaobai
2023-08-28 1865de1cd0255f7c42a326018a8cc3b5a1ee5253
权限
已修改35个文件
已重命名1个文件
已删除1个文件
431 ■■■■ 文件已修改
chart-server/src/main/java/com/yuanchu/limslaboratory/controller/WorkController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/java/com/yuanchu/limslaboratory/controller/CnasAnnualPlanController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cnas-server/src/main/java/com/yuanchu/limslaboratory/controller/CnasSatisfactionSurveyController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/limslaboratory/annotation/AuthHandler.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/limslaboratory/enums/MenuEnum.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/limslaboratory/exception/AuthException.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/LinkBasicInformationController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/LinkDetectionController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/NonConformanceReviewController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/NonConformingFeedbackController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/PlanController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/QualificationRateStatisticsController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/ClassifyController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/EquipmentPointController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/InstrumentController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/MeteringPlanController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/MetricalInformationController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/OrganizationalController.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductModelController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sys/src/main/java/com/yuanchu/limslaboratory/aop/AuthRequestAspect.java 74 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/controller/RoleMangerController.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/controller/UserController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/controller/WaitInformationController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleManageMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/service/RoleManagerService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
user-server/src/main/resources/mapper/RoleManangeMapper.xml 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
chart-server/src/main/java/com/yuanchu/limslaboratory/controller/WorkController.java
@@ -1,6 +1,7 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.vo.ProjectNumVo;
import com.yuanchu.limslaboratory.service.WorkService;
import com.yuanchu.limslaboratory.vo.Result;
@@ -29,6 +30,7 @@
            @ApiImplicitParam(name = "type", value = "检验类型(0:原材料;1:成品;2:委托品)", dataTypeClass = Integer.class, required = true)
    })
    @GetMapping("/dutyMater")
    @AuthHandler
    public Result dutyMater(String startTime,String endTime,Integer type) {
        return Result.success(workService.dutyMater(startTime,endTime,type));
    }
@@ -41,6 +43,7 @@
            @ApiImplicitParam(name = "type", value = "检验类型(0:原材料;1:成品;2:委托品)", dataTypeClass = Integer.class, required = true)
    })
    @GetMapping("/executeMater")
    @AuthHandler
    public Result executeMater(String startTime,String endTime,Integer type) {
        return Result.success(workService.executeMater(startTime,endTime,type));
    }
@@ -52,6 +55,7 @@
            @ApiImplicitParam(name = "type", value = "检验类型(0:原材料;1:成品;2:委托品)", dataTypeClass = Integer.class, required = true)
    })
    @GetMapping("/dutytimely")
    @AuthHandler
    public Result dutytimely(String startTime,String endTime,Integer type) {
        return Result.success(workService.dutytimely(startTime,endTime,type));
    }
@@ -63,6 +67,7 @@
            @ApiImplicitParam(name = "type", value = "检验类型(0:原材料;1:成品;2:委托品)", dataTypeClass = Integer.class, required = true)
    })
    @GetMapping("/executetimely")
    @AuthHandler
    public Result executetimely(String startTime,String endTime,Integer type) {
        return Result.success(workService.executetimely(startTime,endTime,type));
    }
cnas-server/src/main/java/com/yuanchu/limslaboratory/controller/CnasAnnualPlanController.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.CnasAnnualPlan;
import com.yuanchu.limslaboratory.pojo.vo.CnasAnnualPlanVo;
import com.yuanchu.limslaboratory.service.CnasAnnualPlanService;
@@ -44,6 +45,7 @@
            @ApiImplicitParam(name = "planTime", value = "检验开始时间", dataTypeClass = Date.class),
    })
    @GetMapping("/selectAllList")
    @AuthHandler
    public Result selectAllList(Integer page, Integer pageSize, @DateTimeFormat(pattern = "yyyy-MM") Date planTime) {
        IPage<CnasAnnualPlanVo> reportPage = cnasAnnualPlanService.selectAllList(new Page(page, pageSize), planTime);
        Map<String, Object> map = new HashMap<>();
@@ -57,6 +59,7 @@
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "CnasAnnualPlan", value = "审查对象", dataTypeClass = Integer.class, required = true)
    })
    @AuthHandler
    public Result addCnasAnnualPlan(@RequestHeader("X-Token") String token, @RequestBody CnasAnnualPlan cnasAnnualPlan) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
@@ -74,6 +77,7 @@
            @ApiImplicitParam(name = "auditTime", value = "审核日期", dataTypeClass = Date.class, required = true),
            @ApiImplicitParam(name = "file", value = "附件文件", dataTypeClass = MultipartFile.class, required = true)
    })
    @AuthHandler
    public Result addAccessory(@RequestHeader("X-Token") String token, Date auditTime, MultipartFile file) throws Exception {
        //解析当前登录用户
        Object object = RedisUtil.get(token);
@@ -88,6 +92,7 @@
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "planId", value = "审核日期", dataTypeClass = Integer.class, required = true)
    })
    @AuthHandler
    public Result deleteCnasAnnualPlan(Integer planId) {
        Integer isDeleteSuccess = cnasAnnualPlanService.deleteCnasAnnualPlan(planId);
        if (isDeleteSuccess == 1){
cnas-server/src/main/java/com/yuanchu/limslaboratory/controller/CnasSatisfactionSurveyController.java
@@ -1,5 +1,6 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.CnasSatisfactionSurvey;
import com.yuanchu.limslaboratory.pojo.Dto.CnasSatisfactionSurveyPageDto;
import com.yuanchu.limslaboratory.pojo.vo.CnasSatisfactionSurveyVo;
@@ -32,12 +33,14 @@
     */
    @ApiOperation(value = "获取满意度调查")
    @GetMapping("/getCnasSatisfactionSurvey")
    @AuthHandler
    public Result<CnasSatisfactionSurveyVo>getCnasSatisfactionSurvey(CnasSatisfactionSurveyPageDto cnasSatisfactionSurveyPageDto){
        return Result.success(service.getCnasSatisfactionSurvey(cnasSatisfactionSurveyPageDto));
    }
    @GetMapping("/getFillNameAndId")
    @ApiOperation(value = "获取当前录取人")
    @AuthHandler
    public Result<Map>getFillNameAndId(@RequestHeader("X-Token")String token){
        return Result.success(service.getFillNameAndTd(token));
    }
@@ -49,14 +52,15 @@
     */
    @ApiOperation(value = "附件上传")
    @PostMapping(value = "/uploadFile",consumes = MediaType.MULTIPART_FORM_DATA_VALUE, produces = {MediaType.APPLICATION_JSON_VALUE})
    @AuthHandler
    public Result<Map>wordParse(MultipartFile file){
        return Result.success(service.wordParse(file));
    }
    @ApiOperation(value = "满意度调查新增")
    @PostMapping("/addSurvey")
    @AuthHandler
    public Result<Boolean>addSurvey(@RequestBody CnasSatisfactionSurvey cnasSatisfactionSurvey){
        System.out.println(cnasSatisfactionSurvey+"=============");
        return Result.success(service.addSurvey(cnasSatisfactionSurvey));
    }
framework/src/main/java/com/yuanchu/limslaboratory/annotation/AuthHandler.java
ÎļþÃû´Ó framework/src/main/java/com/yuanchu/limslaboratory/annotation/RequestInfo.java ÐÞ¸Ä
@@ -10,10 +10,19 @@
 */
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface RequestInfo {
public @interface AuthHandler {
    String type();
    /**
     * æŽ¥å£ç±»åž‹
     * @return
     */
    int type() default 0;
    String name() ;
    /**
     * æŽ¥å£å
     * @return
     */
    String name() default "";
}
framework/src/main/java/com/yuanchu/limslaboratory/enums/MenuEnum.java
ÎļþÒÑɾ³ý
framework/src/main/java/com/yuanchu/limslaboratory/exception/AuthException.java
@@ -28,4 +28,20 @@
    public AuthException() {
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getMsg() {
        return msg;
    }
    public void setMsg(String msg) {
        this.msg = msg;
    }
}
framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java
@@ -216,7 +216,6 @@
    @ExceptionHandler({AuthException.class})
    public Result<?> noAuth(AuthException e){
        e.printStackTrace();
        return Result.fail(400,"无权限");
        return Result.fail(Integer.valueOf(e.getCode()),e.getMsg());
    }
}
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java
@@ -6,6 +6,7 @@
import java.util.*;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.mapper.UserMapper;
import com.yuanchu.limslaboratory.pojo.Inspection;
import com.yuanchu.limslaboratory.pojo.Report;
@@ -57,6 +58,7 @@
            @ApiImplicitParam(name = "message", value = "申请单号/原材料名称", dataTypeClass = String.class)
    })
    @GetMapping("/selectInspectsList")
    @AuthHandler
    public Result selectInspectsList(int pageSize, int countSize, String message) {
        IPage<Map<String, Object>> inspectionPage = inspectionService.selectInspectsList(new Page<Object>(pageSize, countSize), message);
        Map<String, Object> map = new HashMap<>();
@@ -71,6 +73,7 @@
            @ApiImplicitParam(name = "type", value = "类型", dataTypeClass = Integer.class, required = true)
    })
    @GetMapping("/selectAll")
    @AuthHandler
    public Result selectAll(Integer type) {
        switch (type) {
            case 0:
@@ -93,6 +96,7 @@
            @ApiImplicitParam(name = "specifications", value = "规格型号", dataTypeClass = String.class, required = true)
    })
    @GetMapping("/chooseVer")
    @AuthHandler
    public Result chooseVer(String name, String mcode, String specifications) {
        return Result.success(inspectionService.chooseVer(name, mcode, specifications));
    }
@@ -105,6 +109,7 @@
            @ApiImplicitParam(name = "experiment", value = "试验项目(委托专属)", dataTypeClass = String.class )
    })
    @GetMapping("/lookProByVer")
    @AuthHandler
    public Result lookProByVer(String name, String mcode, String specifications,Integer version,String experiment) {
        return Result.success(inspectionService.lookProByVer(name, mcode, specifications,version,experiment));
    }
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/LinkBasicInformationController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.service.LinkBasicInformationService;
import com.yuanchu.limslaboratory.utils.MyUtil;
import com.yuanchu.limslaboratory.utils.RedisUtil;
@@ -36,6 +37,7 @@
    @ApiOperation("链接-->获取链接")
    @GetMapping("/link")
    @AuthHandler
    public Result<?> getLink() {
        Object link1 = null;
        try {
@@ -58,6 +60,7 @@
            @ApiImplicitParam(name = "inspectionStatus", value = "检验状态", dataTypeClass = Integer.class)
    })
    @GetMapping("/page")
    @AuthHandler
    public Result<?> getLinkBasicPage(Integer pageNo, Integer pageSize, String entrustCoding, String sampleName, String entrusted, Integer inspectionStatus) {
        IPage<Map<String, Object>> linkBasicPage = linkBasicInformationService.getLinkBasicPage(new Page<Object>(pageNo, pageSize), entrustCoding, sampleName, entrusted, inspectionStatus);
        Map<String, Object> map = new HashMap<>();
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/LinkDetectionController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.LinkBasicInformation;
import com.yuanchu.limslaboratory.pojo.LinkDetection;
import com.yuanchu.limslaboratory.pojo.Material;
@@ -50,6 +51,7 @@
    @ApiOperation("链接-->获取样品名称")
    @GetMapping("/material")
    @AuthHandler
    public Result<?> getMaterialIdAndName(@RequestHeader("link") String link) {
        String redisLink = RedisUtil.get("viewId").toString();
        if (linkBasicInformationService.isIfViewUUID(redisLink)){
@@ -63,6 +65,7 @@
    @ApiOperation("链接-->获取规格型号")
    @GetMapping("/specification")
    @AuthHandler
    public Result<?> getSpecificationIdAndName(@RequestHeader("link") String link, String materialId) {
        String redisLink = RedisUtil.get("viewId").toString();
        if (linkBasicInformationService.isIfViewUUID(redisLink)){
@@ -77,6 +80,7 @@
            @ApiImplicitParam(name = "modelId", value = "型号id", dataTypeClass = Integer.class, required = true)
    })
    @GetMapping("/chooseProject")
    @AuthHandler
    public Result<?> chooseProject(@RequestHeader("link") String link,  Integer modelId) {
        String redisLink = RedisUtil.get("viewId").toString();
        if (linkBasicInformationService.isIfViewUUID(redisLink)){
@@ -89,6 +93,7 @@
    @ApiOperation("链接-->添加委托报检申请单")
    @PostMapping("/addInspection")
    @AuthHandler
    public Result<?> addLinkBasicInformation(@RequestHeader("link") String link, @RequestBody LinkBasicInformation linkBasicInformation) {
        String redisLink = RedisUtil.get("viewId").toString();
        if (linkBasicInformationService.isIfViewUUID(redisLink)){
@@ -106,18 +111,21 @@
    @ApiOperation(value = "生成二维码所需的唯一码")
    @GetMapping("/getViewUUID")
    @AuthHandler
    public Result<?> getViewUUID(int day){
        return Result.success("生成成功",linkBasicInformationService.getViewUUID(day));
    }
    @ApiOperation(value = "查询二维码所需的唯一码")
    @GetMapping("/selectViewUUID")
    @AuthHandler
    public Result<?> selectViewUUID(){
        return Result.success("查询成功",linkBasicInformationService.selectViewUUID());
    }
    @ApiOperation(value = "检验唯一码是否有效")
    @GetMapping("/isIfViewUUID")
    @AuthHandler
    public Result<?> isIfViewUUID(String viewId){
        return Result.success("查询成功",linkBasicInformationService.isIfViewUUID(viewId));
    }
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/NonConformanceReviewController.java
@@ -1,5 +1,6 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.Dto.NonConformingFeedbackDto;
import com.yuanchu.limslaboratory.pojo.NonConformanceReview;
import com.yuanchu.limslaboratory.pojo.vo.NonConformanceReviewVo;
@@ -28,6 +29,7 @@
    @GetMapping("/getNonConformanceReview")
    @ApiOperation("不合格品反馈-->获取不合格品评审信息")
    @AuthHandler
    public Result<NonConformanceReviewVo> getNonConformanceReview(NonConformingFeedbackDto nonConformingFeedbackDto){
        return Result.success(service.getNonConformanceReviewVo(nonConformingFeedbackDto));
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/NonConformingFeedbackController.java
@@ -1,5 +1,6 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.Dto.NonConformingFeedbackDto;
import com.yuanchu.limslaboratory.pojo.NonConformingFeedback;
import com.yuanchu.limslaboratory.pojo.vo.NonConformingFeedbackVo;
@@ -27,6 +28,7 @@
    @GetMapping("/getNonConformingFeedback")
    @ApiOperation("不合格品反馈-->获取不合格品信息")
    @AuthHandler
    public Result<NonConformingFeedbackVo> getNonConformingFeedback(NonConformingFeedbackDto nonConformingFeedbackDto){
        return Result.success(service.getNonConformingFeedback(nonConformingFeedbackDto));
    }
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/PlanController.java
@@ -1,6 +1,7 @@
package com.yuanchu.limslaboratory.controller;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.Inspection;
import com.yuanchu.limslaboratory.service.PlanService;
import com.yuanchu.limslaboratory.vo.Result;
@@ -39,6 +40,7 @@
            @ApiImplicitParam(name = "status", value = "检验结果", dataTypeClass = Integer.class)
    })
    @GetMapping("/selectAllPlan")
    @AuthHandler
    public Result selectAllPlan(String code, String beginTime, String endTime, Integer status) {
        System.out.println(planService.selectAllPlan(code, beginTime, endTime, status).toString());
        return Result.success(planService.selectAllPlan(code, beginTime, endTime, status));
@@ -46,12 +48,14 @@
    @ApiOperation("分配-->选择检验人")
    @GetMapping("/choosecheck")
    @AuthHandler
    public Result choosecheck() {
        return Result.success(planService.choosecheck());
    }
    @ApiOperation("分配--选择设备")
    @GetMapping("/chooseinstum")
    @AuthHandler
    public Result chooseinstum() {
        return Result.success(planService.chooseinstum());
    }
@@ -63,6 +67,7 @@
            @ApiImplicitParam(name = "instrumentId", value = "设备id", dataTypeClass = Integer.class, required = true)
    })
    @PostMapping("/distribution")
    @AuthHandler
    public Result distribution(Integer id, Integer userId, Integer instrumentId) {
        return Result.success(planService.distribution(id, userId, instrumentId));
    }
@@ -73,6 +78,7 @@
            @ApiImplicitParam(name = "value", value = "检验值", dataTypeClass = String.class)
    })
    @PostMapping("/check")
    @AuthHandler
    public Result check(Integer id, String value) {
        return Result.success(planService.check(id, value));
    }
@@ -82,6 +88,7 @@
            @ApiImplicitParam(name = "id", value = "检验单id", dataTypeClass = Integer.class, required = true)
    })
    @PostMapping("/reported")
    @AuthHandler
    public Result reported(Integer id) {
        return Result.success(planService.reported(id));
    }
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/QualificationRateStatisticsController.java
@@ -1,5 +1,6 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.Dto.SelectQualificationRateDto;
import com.yuanchu.limslaboratory.service.QualificationRateStatisticsService;
import com.yuanchu.limslaboratory.vo.Result;
@@ -25,12 +26,14 @@
    @ApiOperation("查询申请物料单供应商列表")
    @GetMapping("/getSupplierList")
    @AuthHandler
    public Result<?> getSupplierList() {
        return Result.success(service.getSupplierList());
    }
    @ApiOperation("查询检验样品合格率统计")
    @GetMapping("/getTestSampleStatistics")
    @AuthHandler
    public Result<?> getTestSampleStatistics(SelectQualificationRateDto dto){
        System.out.println("getTestSampleStatistics______________>"+dto);
        return Result.success(service.getTestSampleStatistics(dto));
@@ -38,6 +41,7 @@
    @ApiOperation("查询供应商不合格统计次数")
    @GetMapping("/getSupplierNoPassStatistics")
    @AuthHandler
    public Result<?> getSupplierNoPassStatistics(SelectQualificationRateDto dto){
        System.out.println("getSupplierNoPassStatistics++++++++++++++++>"+dto);
        return Result.success(service.getSupplierNoPassStatistics(dto));
@@ -45,6 +49,7 @@
    @ApiOperation("查询不合格项目统计")
    @GetMapping("/getNoPassProjectStatistics")
    @AuthHandler
    public Result<?> getNoPassProjectStatistics(SelectQualificationRateDto dto){
        System.out.println("getNoPassProjectStatistics===============>"+dto);
        return Result.success(service.getNoPassProjectStatistics(dto));
@@ -52,6 +57,7 @@
    @ApiOperation("获取样品名称")
    @GetMapping("/getSampleOptions")
    @AuthHandler
    public Result<?> getSampleOptions(){
        return Result.success(service.getSampleOptions());
    }
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.RawMaterial;
import com.yuanchu.limslaboratory.service.RawMaterialService;
import com.yuanchu.limslaboratory.vo.Result;
@@ -44,6 +45,7 @@
            @ApiImplicitParam(name = "createTime", value = "来料日期", dataTypeClass = String.class)
    })
    @GetMapping("/selectAll")
    @AuthHandler
    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<>();
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.vo.ReportVo;
import com.yuanchu.limslaboratory.service.ReportService;
import com.yuanchu.limslaboratory.utils.JackSonUtil;
@@ -45,6 +46,7 @@
            @ApiImplicitParam(name = "name", value = "搜索信息", dataTypeClass = String.class)
    })
    @GetMapping("/selectAllReport")
    @AuthHandler
    public Result selectAllReport(Integer page, Integer pageSize, Integer status, String name) {
        IPage<ReportVo> reportPage = reportService.selectAllReport(new Page<Object>(page, pageSize), status, name);
        Map<String, Object> map = new HashMap<>();
@@ -58,6 +60,7 @@
            @ApiImplicitParam(name = "id", value = "检验报告id", dataTypeClass = Integer.class, required = true)
    })
    @PostMapping("/submit")
    @AuthHandler
    public Result submit(Integer id) {
        return Result.success(reportService.submit(id));
    }
@@ -68,6 +71,7 @@
            @ApiImplicitParam(name = "result", value = "审核结论", dataTypeClass = String.class, required = true)
    })
    @PostMapping("/check")
    @AuthHandler
    public Result check(@RequestHeader("X-Token") String token, Integer id, String result) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
@@ -80,6 +84,7 @@
            @ApiImplicitParam(name = "id", value = "检验报告id", dataTypeClass = Integer.class, required = true)
    })
    @PostMapping("/delreport")
    @AuthHandler
    public Result delreport(Integer id) {
        return Result.success(reportService.delreport(id));
    }
@@ -89,6 +94,7 @@
            @ApiImplicitParam(name = "code", value = "报告单号", dataTypeClass = String.class, required = true)
    })
    @PostMapping("/getReportContext")
    @AuthHandler
    public Result getReportContext(String code) {
        return Result.success(reportService.getReportContext(code));
    }
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/ClassifyController.java
@@ -1,6 +1,7 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.Classify;
import com.yuanchu.limslaboratory.pojo.dto.UpdateClassifyDto;
import com.yuanchu.limslaboratory.service.ClassifyService;
@@ -33,6 +34,7 @@
    @ApiOperation("添加分类")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addClassifyInformation(@RequestBody Classify classify) {
        Integer isAddClassifySuccess = classifyService.addClassifyInformation(classify);
        if (isAddClassifySuccess == 1) {
@@ -48,6 +50,7 @@
    @ApiImplicitParams(value = {
            @ApiImplicitParam(value = "分类名称", name = "classifyName", dataTypeClass = String.class)
    })
    @AuthHandler
    public Result<?> getListClassifyInformation(String classifyName) {
        return Result.success(classifyService.getListClassifyInformation(classifyName));
    }
@@ -57,6 +60,7 @@
    @ApiImplicitParams(value = {
            @ApiImplicitParam(value = "分类Id", name = "classifyId", dataTypeClass = String.class)
    })
    @AuthHandler
    public Result<?> deleteClassifyInformation(String classifyId) {
        Boolean isDeleteSuccess = classifyService.deleteClassifyInformation(classifyId);
        if (isDeleteSuccess){
@@ -67,6 +71,7 @@
    @ApiOperation("更新分类")
    @PutMapping("/update")
    @AuthHandler
    public Result<?> updateClassifyInformation(@RequestBody UpdateClassifyDto updateClassifyDto) throws Exception {
        Classify classify = JackSonUtil.unmarshal(JackSonUtil.marshal(updateClassifyDto), Classify.class);
        Boolean isUpdateClassifySuccess = classifyService.updateClassifyInformation(classify);
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/EquipmentPointController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.EquipmentPoint;
import com.yuanchu.limslaboratory.pojo.dto.UpdateEquipmentPointDto;
import com.yuanchu.limslaboratory.service.EquipmentPointService;
@@ -41,6 +42,7 @@
    @ApiOperation("添加设备码点")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addEquipmentPointInformation(@RequestHeader("X-Token") String token, @RequestBody EquipmentPoint equipmentPoint) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
@@ -57,6 +59,7 @@
            @ApiImplicitParam(name = "InstrumentId", value = "仪器模块Id", dataTypeClass = String.class, required = true)
    })
    @GetMapping("/list")
    @AuthHandler
    public Result<?> getListEquipmentPointInformation(String InstrumentId) {
        List<Map<String, Object>> list = equipmentPointService.getListEquipmentPointInformation(InstrumentId);
        return Result.success(list);
@@ -67,6 +70,7 @@
            @ApiImplicitParam(name = "equipmentPointId", value = "设备码点Id", dataTypeClass = Integer.class, required = true)
    })
    @DeleteMapping("/delete")
    @AuthHandler
    public Result<?> deleteEquipmentPointInformation(Integer equipmentPointId) {
        Integer isDeleteSuccess = equipmentPointService.deleteEquipmentPointInformation(equipmentPointId);
        if (isDeleteSuccess == 1){
@@ -77,6 +81,7 @@
    @ApiOperation("根据码点Id更新数据")
    @PutMapping("/update")
    @AuthHandler
    public Result<?> updateEquipmentPointInformation(@RequestHeader("X-Token") String token, @RequestBody UpdateEquipmentPointDto updateEquipmentPointDto) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/InstrumentController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.Instrument;
import com.yuanchu.limslaboratory.pojo.dto.UpdateInstrumentDto;
import com.yuanchu.limslaboratory.service.InstrumentService;
@@ -42,6 +43,7 @@
    @ApiOperation("添加仪器设备")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addInstrumentInformation(@RequestHeader("X-Token") String token, @RequestBody Instrument instrument) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
@@ -63,6 +65,7 @@
            @ApiImplicitParam(name = "whetherWhether", value = "是否已过期", dataTypeClass = Boolean.class),
            @ApiImplicitParam(name = "numberOrNameOrSpecifications", value = "编号/设备名称/规格型号", dataTypeClass = String.class)
    })
    @AuthHandler
    public Result<?> getListInstrumentInformation(Integer pageNo,
                                                  Integer pageSize,
                                                  Integer conditions,
@@ -82,6 +85,7 @@
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "instrumentId", value = "仪器Id", dataTypeClass = String.class, required = true)
    })
    @AuthHandler
    public Result<?> deleteInstrumentInformation(String instrumentId) {
        Boolean isDeleteSuccess = instrumentService.deleteInstrumentInformation(instrumentId);
        if (isDeleteSuccess){
@@ -92,6 +96,7 @@
    @ApiOperation("添加仪器时保管人下拉框数据")
    @GetMapping("/get_user")
    @AuthHandler
    public Result<?> getMapUserInformation() {
        return Result.success(userService.getUserNameAndId());
    }
@@ -101,6 +106,7 @@
            @ApiImplicitParam(name = "InstrumentId", value = "分类Id", dataTypeClass = Integer.class, required = true)
    })
    @GetMapping("/get_instrument")
    @AuthHandler
    public Result<?> getIdInstrumentInformation(Integer InstrumentId) {
        Instrument idInstrumentInformation = instrumentService.getIdInstrumentInformation(InstrumentId);
        return Result.success(idInstrumentInformation);
@@ -108,6 +114,7 @@
    @ApiOperation("根据仪器Id更新数据")
    @PutMapping("/update")
    @AuthHandler
    public Result<?> updateEquipmentPointInformation(@RequestBody UpdateInstrumentDto updateInstrumentDto) throws Exception {
        Instrument instrument = JackSonUtil.unmarshal(JackSonUtil.marshal(updateInstrumentDto), Instrument.class);
        Integer isUpdateSuccess = instrumentService.updateEquipmentPointInformation(instrument);
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/MeteringPlanController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.Instrument;
import com.yuanchu.limslaboratory.pojo.MeteringPlan;
import com.yuanchu.limslaboratory.pojo.dto.AddPlanDto;
@@ -48,6 +49,7 @@
    @ApiOperation("添加计量计划")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addMeteringPlanInformation(@RequestBody MeteringPlan meteringPlan) {
        Integer isInsertSuccess = meteringPlanService.addMeteringPlanInformation(meteringPlan);
        if (isInsertSuccess == 1){
@@ -58,12 +60,14 @@
    @ApiOperation("计量计划分页查询")
    @GetMapping("/plan_page_list")
    @AuthHandler
    public Result<?> pagingQueryOfMeteringPlan(SelectMeteringPlanDto dto) {
        return Result.success(meteringPlanService.pagingQueryOfMeteringPlan(dto));
    }
    @ApiOperation("计量台账分页查询")
    @GetMapping("/standing_page_list")
    @AuthHandler
    public Result<?> pagingQueryOfMeasurementLedger(SelectMeasurementLedgerDto selectMeasurementLedgerDto) {
        IPage<Map<String, Object>> page = meteringPlanService.pagingQueryOfMeasurementLedger(selectMeasurementLedgerDto);
        return Result.success(page);
@@ -71,23 +75,28 @@
    @ApiOperation("单询计划信息")
    @GetMapping("/getPlanMeasureInstrument")
    @AuthHandler
    public Result<?> getPlanMeasureInstrument(GetPlanMeasureInstrumentDto dto){
        return Result.success(meteringPlanService.getPlanMeasureInstrument(dto));
    }
    @ApiOperation("计划信息之下分页")
    @GetMapping("/limitGetPlanMeasureInstrument")
    @AuthHandler
    public Result<?> limitGetPlanMeasureInstrument(GetPlanMeasureInstrumentDto dto){
        return Result.success(meteringPlanService.limitGetPlanMeasureInstrument(dto));
    }
    @ApiOperation("获取user列表和仪器列表")
    @GetMapping("/getListUserAndListIns")
    @AuthHandler
    public Result<?>getListUserAndListIns(){
        return Result.success(meteringPlanService.getListUserAndListIns(userService.getUserNameAndId()));
    }
    @ApiOperation("添加计划和计量信息")
    @PostMapping("/addPlanAndMeasure")
    @AuthHandler
    public Result<?>addPlanAndMeasure(@RequestBody AddPlanDto addPlanDto){
        return Result.success(meteringPlanService.addPlanAndMeasure(userService.getUserInfo(ServletUtils.getRequest().getHeader("X-Token")),addPlanDto));
    }
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/MetricalInformationController.java
@@ -1,5 +1,6 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.MetricalInformation;
import com.yuanchu.limslaboratory.pojo.dto.UpdateMetricalInformationDto;
import com.yuanchu.limslaboratory.pojo.dto.UpdatedMetricalInformationDto;
@@ -39,6 +40,7 @@
    @ApiOperation("添加计量信息")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addMetricalInformation(MetricalInformation metricalInformation,
                                            @RequestPart(value = "file", required = false) MultipartFile file) {
        Integer isInsertSuccess = metricalInformationService.addEquipmentPointInformation(metricalInformation, file);
@@ -53,6 +55,7 @@
            @ApiImplicitParam(name = "InstrumentId", value = "仪器模块Id", dataTypeClass = String.class, required = true)
    })
    @GetMapping("/list")
    @AuthHandler
    public Result<?> getListMetricalInformation(String InstrumentId) {
        List<Map<String, Object>> list = metricalInformationService.getListEquipmentPointInformation(InstrumentId);
        return Result.success(list);
@@ -63,6 +66,7 @@
            @ApiImplicitParam(name = "metricalInformationId", value = "计量信息Id", dataTypeClass = Integer.class, required = true)
    })
    @DeleteMapping("/delete")
    @AuthHandler
    public Result<?> deleteMetricalInformation(Integer metricalInformationId) {
        Integer isDeleteSuccess = metricalInformationService.deleteMetricalInformation(metricalInformationId);
        if (isDeleteSuccess == 1){
@@ -73,6 +77,7 @@
    @ApiOperation("根据计量信息Id更新数据")
    @PutMapping("/update")
    @AuthHandler
    public Result<?> updateMetricalInformation(UpdateMetricalInformationDto updateMetricalInformationDto,
                                                     @RequestPart(value = "file", required = false) MultipartFile file) throws Exception {
        MetricalInformation metricalInformation = JackSonUtil.unmarshal(JackSonUtil.marshal(updateMetricalInformationDto), MetricalInformation.class);
@@ -85,12 +90,14 @@
    @ApiOperation("添加计量信息时负责人下拉框数据")
    @GetMapping("/get_user")
    @AuthHandler
    public Result<?> getMapUserInformation() {
        return Result.success(userService.getUserNameAndId());
    }
    @ApiOperation("更新计量结果")
    @PostMapping("/updateMetricalInformationInfo")
    @AuthHandler
    public Result<?> updateMetricalInformationInfo(@RequestBody UpdatedMetricalInformationDto dto){
        return Result.success(metricalInformationService.updateMetricalInformationInfo(dto));
    }
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java
@@ -1,5 +1,6 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.dto.AddMaterialDto;
import com.yuanchu.limslaboratory.service.MaterialService;
import com.yuanchu.limslaboratory.vo.Result;
@@ -32,12 +33,14 @@
    @ApiOperation(value = "添加指标-->选择样品名称")
    @GetMapping("/selectmater")
    @AuthHandler
    public Result selectmater() {
        return Result.success(materialService.selectmater());
    }
    @ApiOperation("添加指标")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addMaterialInformation(@Validated @RequestBody AddMaterialDto addMaterialDto) {
        Integer isMaterialSuccess = materialService.addMaterialInformation(addMaterialDto);
        if (isMaterialSuccess == 1) {
@@ -51,6 +54,7 @@
    @ApiImplicitParams(value = {
            @ApiImplicitParam(value = "物料ID", name = "materialId", dataTypeClass = Integer.class)
    })
    @AuthHandler
    public Result<?> deleteMaterialInformation(Integer materialId) {
        Integer isDeleteMaterialSuccess = materialService.deleteMaterialInformation(materialId);
        if (isDeleteMaterialSuccess == 1) {
@@ -61,6 +65,7 @@
    @ApiOperation(value = "标准库-->物料-->侧边栏四级展开")
    @GetMapping("/list")
    @AuthHandler
    public Result<?> getFourLevelInformation() {
        List<Map<String, Object>> fourLevelInformation = materialService.getFourLevelInformation();
        return Result.success(fourLevelInformation);
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/OrganizationalController.java
@@ -1,5 +1,6 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.Organizational;
import com.yuanchu.limslaboratory.service.OrganizationalService;
import com.yuanchu.limslaboratory.utils.MyUtil;
@@ -34,6 +35,7 @@
    @ApiOperation(value = "侧边栏树展开")
    @GetMapping("/list")
    @AuthHandler
    public Result<?> getFourLevelInformation() {
        List<Map<String, Object>> organizationalTree = organizationalService.OrganizationalTree();
        return Result.success(organizationalTree);
@@ -44,6 +46,7 @@
            @ApiImplicitParam(value = "部门ID", name = "departmentId", dataTypeClass = Integer.class)
    })
    @GetMapping("/table")
    @AuthHandler
    public Result<?> getDepartmentListTable(Integer departmentId) {
        List<Map<String, Object>> departmentListTable = organizationalService.getDepartmentListTable(departmentId);
        return Result.success(departmentListTable);
@@ -51,6 +54,7 @@
    @ApiOperation(value = "添加部门")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addDepartment(@RequestBody @Validated Organizational organizational) {
        Integer addDepartment = organizationalService.addDepartment(organizational);
        if (addDepartment >= 1){
@@ -60,7 +64,8 @@
    }
    @ApiOperation(value = "修改部门")
    @PutMapping("/add")
    @PutMapping("/update")
    @AuthHandler
    public Result<?> updateDepartment(Integer id, @RequestBody @Validated Organizational organizational) {
        Integer addDepartment = organizationalService.updateDepartment(id, organizational);
        if (addDepartment >= 1){
@@ -71,6 +76,7 @@
    @ApiOperation(value = "删除部门")
    @DeleteMapping("/delete")
    @AuthHandler
    public Result<?> deleteDepartment(String ids) {
        organizationalService.deleteDepartment(ids);
        return Result.success("删除成功!");
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java
@@ -1,5 +1,6 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.service.ProductService;
import com.yuanchu.limslaboratory.utils.MyUtil;
import com.yuanchu.limslaboratory.vo.Result;
@@ -28,6 +29,7 @@
            @ApiImplicitParam(name = "specificationsId", value = "型号ID", dataTypeClass = Integer.class, required = true)
    })
    @GetMapping("/chooseVersion")
    @AuthHandler
    public Result<?> chooseVersion(Integer specificationsId) {
        return Result.success(productService.chooseVersion(specificationsId));
    }
@@ -38,6 +40,7 @@
            @ApiImplicitParam(name = "version", value = "版本(默认最新版本)", dataTypeClass = Integer.class,required = true )
    })
    @GetMapping("/page")
    @AuthHandler
    public Result<?> pageProductInformation(Integer specificationsId,Integer version) {
        return Result.success(productService.pageProductInformation(specificationsId,version));
    }
@@ -50,6 +53,7 @@
    })
    @PostMapping("/write")
    @AuthHandler
    public Result<?> write(Integer id, String required, String internal) {
        Integer write = productService.write(id, required, internal);
        if (write >= 1){
@@ -63,6 +67,7 @@
            @ApiImplicitParam(name = "ids", value = "标准项目ID", dataTypeClass = String.class, required = true)
    })
    @DeleteMapping("/deleteList")
    @AuthHandler
    public Result<?> deleteList(String ids) {
        MyUtil.PrintLog(ids);
        productService.deleteList(ids);
@@ -74,6 +79,7 @@
            @ApiImplicitParam(name = "specificationsId", value = "型号id", dataTypeClass = Integer.class, required = true)
    })
    @PostMapping("/addVersion")
    @AuthHandler
    public Result<?> addVersion(Integer specificationsId ) {
        Integer version = productService.addVersion(specificationsId);
        return Result.success("添加版本"+version+"成功");
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductModelController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.dto.AddMaterialDto;
import com.yuanchu.limslaboratory.pojo.dto.ProductModelDto;
import com.yuanchu.limslaboratory.utils.MyUtil;
@@ -36,6 +37,7 @@
    @ApiOperation(value = "选择样品名称")
    @GetMapping("/selectmater")
    @AuthHandler
    public Result selectmater() {
        return Result.success(productModelService.selectmater());
    }
@@ -48,6 +50,7 @@
    @ApiOperation("添加标准")
    @PostMapping("/addproductModel")
    @AuthHandler
    public Result<?> addproductModel(@Validated @RequestBody ProductModelDto productModelDto) {
        productModelService.addproductModel(productModelDto);
        return Result.success("添加标准项目【" + productModelDto.getName() + "】成功!");
@@ -60,6 +63,7 @@
            @ApiImplicitParam(name = "material", value = "样品名称", dataTypeClass = String.class, required = true)
    })
    @GetMapping("/selectproductModel")
    @AuthHandler
    public Result selectproductModel(String name, String father, String material) {
        return Result.success(productModelService.selectproductModel(name, father, material));
    }
@@ -69,6 +73,7 @@
            @ApiImplicitParam(name = "id", value = "标准模版id", dataTypeClass = Integer.class, required = true)
    })
    @GetMapping("/selectproductModelById")
    @AuthHandler
    public Result selectproductModelById(Integer id) {
        return Result.success(productModelService.selectproductModelById(id));
    }
@@ -78,6 +83,7 @@
            @ApiImplicitParam(name = "id", value = "标准模版id", dataTypeClass = Integer.class, required = true)
    })
    @PostMapping("/writeproductModel")
    @AuthHandler
    public Result<?> writeproductModel(Integer id, @Validated @RequestBody ProductModelDto productModelDto) {
        productModelService.writeproductModel(id,productModelDto);
        return Result.success("修改标准项目【" + productModelDto.getName() + "】成功!");
@@ -88,6 +94,7 @@
            @ApiImplicitParam(name = "id", value = "标准模版id", dataTypeClass = Integer.class, required = true)
    })
    @PostMapping("/delproductModel")
    @AuthHandler
    public Result<?> delproductModel(Integer id) {
        productModelService.delproductModel(id);
        return Result.success("删除标准项目成功!");
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java
@@ -1,6 +1,7 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.dto.AddSpecifications;
import com.yuanchu.limslaboratory.pojo.dto.AddStandardDto;
import com.yuanchu.limslaboratory.service.SpecificationsService;
@@ -31,6 +32,7 @@
    @ApiOperation("添加物料")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addSpecificationsInformation(@Validated @RequestBody AddSpecifications addSpecifications) {
        Integer isMaterialSuccess = specificationsService.addSpecificationsInformation(addSpecifications);
        if (isMaterialSuccess == 1) {
@@ -44,6 +46,7 @@
            @ApiImplicitParam(name = "specificationsId", value = "型号Id", dataTypeClass = Integer.class, required = true)
    })
    @DeleteMapping("/delete")
    @AuthHandler
    public Result<?> deleteSpecificationsInformation(Integer specificationsId) {
        Integer isStandardsSuccess = specificationsService.deleteSpecifications(specificationsId);
        if (isStandardsSuccess == 1) {
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardController.java
@@ -1,5 +1,6 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.dto.AddStandardDto;
import com.yuanchu.limslaboratory.service.StandardService;
import com.yuanchu.limslaboratory.vo.Result;
@@ -27,6 +28,7 @@
    @ApiOperation("添加物料")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addStandardInformation(@Validated @RequestBody AddStandardDto addStandardDto) {
        Integer isMaterialSuccess = standardService.addStandardInformation(addStandardDto);
        if (isMaterialSuccess == 1) {
@@ -37,6 +39,7 @@
    @ApiOperation("根据ID删规格")
    @DeleteMapping("/delete")
    @AuthHandler
    public Result<?> deleteStandardsInformation(Integer standardsId) {
        Integer isDeleteMaterialSuccess = standardService.deleteStandardInformation(standardsId);
        if (isDeleteMaterialSuccess == 1) {
sys/src/main/java/com/yuanchu/limslaboratory/aop/AuthRequestAspect.java
@@ -1,30 +1,28 @@
package com.yuanchu.limslaboratory.aop;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yuanchu.limslaboratory.annotation.RequestInfo;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.exception.AuthException;
import com.yuanchu.limslaboratory.pojo.User;
import com.yuanchu.limslaboratory.service.RoleManagerService;
import com.yuanchu.limslaboratory.service.UserService;
import com.yuanchu.limslaboratory.utils.ServletUtils;
import com.yuanchu.limslaboratory.vo.Result;
import io.swagger.annotations.ApiOperation;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
import java.nio.charset.StandardCharsets;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.Objects;
/**
 * @Author å¼ å®¾
@@ -35,17 +33,20 @@
@Aspect
public class AuthRequestAspect {
    @Pointcut("@annotation(com.yuanchu.limslaboratory.annotation.RequestInfo)")
    @Pointcut("@annotation(com.yuanchu.limslaboratory.annotation.AuthHandler)")
    public void pointCut() {
    }
    //private ThreadLocal<ConcurrentHashMap<String, Map>> threadLocal;
    @Resource
    private UserService userService;
    @Resource
    private RoleManagerService roleService;
    @SneakyThrows
    @Before("pointCut()")
    public void before(JoinPoint joinPoint) {
        HttpServletRequest request = ServletUtils.getRequest();
        log.info("拦截=====》"+request.getServletPath());
        Class<?> clazz = joinPoint.getTarget().getClass();
        String clazzName = joinPoint.getTarget().getClass().getName();
        // èŽ·å–è®¿é—®çš„æ–¹æ³•å
@@ -54,13 +55,46 @@
        Class[] argClz = ((MethodSignature) joinPoint.getSignature()).getParameterTypes();
        // èŽ·å–è®¿é—®çš„æ–¹æ³•å¯¹è±¡
        Method method = clazz.getDeclaredMethod(methodName, argClz);
        // åˆ¤æ–­å½“前访问的方法是否存在指定注解
        if (method.isAnnotationPresent(RequestInfo.class)) {
            RequestInfo annotation = method.getAnnotation(RequestInfo.class);
            System.out.println(annotation.name());
            System.out.println(annotation.type());
        //获取类上请求地址
        RequestMapping annotation = clazz.getAnnotation(RequestMapping.class);
        StringBuilder builder = new StringBuilder();
        String apiInfo=null;
        builder.append(annotation.value()[0]);
        //获取方法上注解
        if (method.isAnnotationPresent(PostMapping.class)) {
            PostMapping post = method.getAnnotation(PostMapping.class);
            builder.append(post.value()[0]);
        }
        //throw new AuthException("400","无权限");
        if (method.isAnnotationPresent(GetMapping.class)) {
            GetMapping get = method.getAnnotation(GetMapping.class);
            builder.append(get.value()[0]);
        }
        if (method.isAnnotationPresent(DeleteMapping.class)) {
            DeleteMapping delete = method.getAnnotation(DeleteMapping.class);
            builder.append(delete.value()[0]);
        }
        if (method.isAnnotationPresent(PutMapping.class)) {
            PutMapping put = method.getAnnotation(PutMapping.class);
            builder.append(put.value()[0]);
        }
        if (method.isAnnotationPresent(ApiOperation.class)) {
            ApiOperation api = method.getAnnotation(ApiOperation.class);
            apiInfo=api.value();
        }
        HttpServletRequest request = ServletUtils.getRequest();
        Map<String, Object> userInfo = userService.getUserInfo(request.getHeader("X-Token"));
        if(Objects.nonNull(userInfo)){
        String roleId = String.valueOf(userInfo.get("roleId"));
        Map<String, Object> urlType = roleService.getUrlType(builder.toString());
        log.info("拦截请求----------------》"+builder);
        boolean b = roleService.hasUrl(String.valueOf(urlType.get("type")), String.valueOf(urlType.get("menuId")), roleId);
        if(!b){
            log.warn("用户/id:"+userInfo.get("name")+"/"+userInfo.get("id")+"---------权限不足,已拦截!");
            //throw new AuthException("400","无权限");
        }
        }else {
            throw new AuthException("401","登陆过期");
        }
    }
user-server/src/main/java/com/yuanchu/limslaboratory/controller/RoleMangerController.java
@@ -1,6 +1,6 @@
package com.yuanchu.limslaboratory.controller;
import com.yuanchu.limslaboratory.annotation.RequestInfo;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.dto.GetAllRoleAndMenuByConditionPageDto;
import com.yuanchu.limslaboratory.pojo.dto.RoleInfoDto;
import com.yuanchu.limslaboratory.pojo.dto.UpdateRoleMenuDto;
@@ -26,43 +26,49 @@
    @ApiOperation("获取菜单功能树")
    @GetMapping("/getMenusTree")
    @RequestInfo(type = "add",name="ccc")
    @AuthHandler
    public Result<?>getMenusTree() {
      return Result.success(roleManagerService.getMenusTree());
    };
    @ApiOperation("新增角色")
    @PostMapping("/addRoleInfo")
    @AuthHandler
    public Result<?>addRoleInfo(@RequestBody RoleInfoDto dto){
        return Result.success(roleManagerService.addRoleInfo(dto));
    }
    @ApiOperation("查询角色名重复")
    @GetMapping("/assertRepeat")
    @AuthHandler
    public Result<?> assertRepeat(String roleName){
        return Result.success(roleManagerService.assertRepeat(roleName));
    }
    @ApiOperation("获取角色信息")
    @GetMapping("/getAllRoleAndMenuInfo")
    @AuthHandler
    public Result<?> getAllRoleAndMenuInfo(GetAllRoleAndMenuByConditionPageDto dto){
        return Result.success(roleManagerService.getAllRoleAndMenuInfo(dto));
    }
    @ApiOperation("逻辑删除角色")
    @GetMapping("/deleteRole")
    @AuthHandler
    public Result<?> deleteRole(Long id){
        return Result.success(roleManagerService.deleteRole(id));
    }
    @ApiOperation("修改权限")
    @PostMapping("/updateRoleMenu")
    @AuthHandler
    public Result<?> updateRoleMenu(@RequestBody UpdateRoleMenuDto dto){
        return Result.success(roleManagerService.updateRoleMenu(dto));
    }
    @ApiOperation("/根据角色获取Role")
    @ApiOperation("根据角色Id获取Role")
    @GetMapping("/getRoleAndMenuByRole")
    @AuthHandler
    public Result<?> getRoleAndMenuByRole(Long roleId){
        return Result.success(roleManagerService.getRoleAndMenuByRole(roleId));
    }
user-server/src/main/java/com/yuanchu/limslaboratory/controller/UserController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.clients.UserLoginUtils;
import com.yuanchu.limslaboratory.pojo.User;
import com.yuanchu.limslaboratory.service.RoleManagerService;
@@ -82,6 +83,7 @@
    @ApiOperation("新增用户获取角色权限信息")
    @GetMapping("/list")
    @AuthHandler
    public Result<?> getUserListRole(){
        List<Map<String,Object>> data = roleManagerService.getUserListRole();
        return Result.success(data);
@@ -98,8 +100,15 @@
        return Result.fail(202,"用户登录信息无效,请重新登录");
    }
    @ApiOperation("登录-->获取角色信息")
    @GetMapping("/roleInfo")
    public Result<?> getUserRoleInfo(@RequestHeader("X-Token") String token){
        return Result.success(userService.getUserRoleInfo(token));
    }
    @PostMapping("/getUserById")
    @ApiOperation("获取指定用户id的用户信息和企业信息")
    @AuthHandler
    public Result<?> getUserById(@RequestHeader("X-Token") String token) throws Exception {
        Object o = RedisUtil.get(token);
        Map<String, Object> unmarshal = null;
@@ -113,6 +122,7 @@
    @PostMapping("/add_new_personnel")
    @ApiOperation("实验室管理-->人员管理-->新增人员")
    @AuthHandler
    public Result<?> addNewPersonnel(@RequestHeader("X-Token") String token, @RequestBody NewPersonnelVo newPersonnelVo) throws Exception {
        Object redisUserMessage = RedisUtil.get(token);
        Map<String, Object> user = null;
@@ -131,6 +141,7 @@
    @PutMapping("/update_new_personnel")
    @ApiOperation("实验室管理-->人员管理-->编辑操作")
    @AuthHandler
    public Result<?> updateNewPersonnel(@RequestBody UpdatePersonnelVo updatePersonnelVo) {
        Integer isUpdateSuccess = userService.updateNewPersonnel(updatePersonnelVo);
        if (isUpdateSuccess == 1){
@@ -147,6 +158,7 @@
            @ApiImplicitParam(name = "name", value = "人员名称", dataTypeClass = String.class),
            @ApiImplicitParam(name = "status", value = "在职状态", dataTypeClass = Integer.class)
    })
    @AuthHandler
    public Result<Map<String, Object>> getNewPersonnelPage(Integer pageNo, Integer pageSize, String name, Integer status) {
        IPage<Map<String, Object>> PageList = userService.getNewPersonnelPage(name, new Page<Objects>(pageNo, pageSize), status);
        Map<String, Object> map = new HashMap<>();
user-server/src/main/java/com/yuanchu/limslaboratory/controller/WaitInformationController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.utils.JackSonUtil;
import com.yuanchu.limslaboratory.utils.RedisUtil;
import com.yuanchu.limslaboratory.vo.Result;
@@ -41,6 +42,7 @@
            @ApiImplicitParam(name = "type", value = "状态(为空=全部)", dataTypeClass = Integer.class)
    })
    @GetMapping("/selectWaitInforList")
    @AuthHandler
    public Result selectWaitInforList(@RequestHeader("token") String token,int pageSize, int countSize, String title, String text, Integer type) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
@@ -56,6 +58,7 @@
            @ApiImplicitParam(name = "ids", value = "待办id", dataTypeClass = String.class,required = true)
    })
    @GetMapping("/delAllWaitInfor")
    @AuthHandler
    public Result delAllWaitInfor(@RequestHeader("token") String token,String ids) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
@@ -68,6 +71,7 @@
            @ApiImplicitParam(name = "ids", value = "待办id", dataTypeClass = String.class,required = true)
    })
    @GetMapping("/writeAllWaitInfor")
    @AuthHandler
    public Result writeAllWaitInfor(@RequestHeader("token") String token,String ids) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleManageMapper.java
@@ -35,4 +35,8 @@
    RoleAndMenuDto selectAllRoleAndMenuByRoleId(Long roleId);
    List<Map<String, Object>> getUserListRole();
    Map<String, Object>selctInterFaceType(String url);
    Map<String, Long> hasUrl(String type, String menuId, String roleId);
}
user-server/src/main/java/com/yuanchu/limslaboratory/service/RoleManagerService.java
@@ -28,4 +28,9 @@
    RoleAndMenuDto getRoleAndMenuByRole(Long roleId);
    List<Map<String, Object>> getUserListRole();
    Map<String, Object> getUrlType(String url);
   boolean  hasUrl(String type,String menuId,String roleId);
}
user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.pojo.User;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yuanchu.limslaboratory.pojo.dto.RoleAndMenuDto;
import com.yuanchu.limslaboratory.pojo.vo.NewPersonnelVo;
import com.yuanchu.limslaboratory.pojo.vo.UpdatePersonnelVo;
@@ -80,4 +81,6 @@
     * èŽ·å–æ‰€æœ‰ç”¨æˆ·çš„åç§°ä¸ŽId
     */
    List<Map<String, Object>> getUserNameAndId();
    RoleAndMenuDto getUserRoleInfo(String token);
}
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java
@@ -96,9 +96,9 @@
                    .collect(Collectors.toList());
            r.setRoleMenuList(collect);
        });
        roleAndMenuDtos.forEach(r->{
            r.getRoleMenuList().forEach(System.out::println);
        });
        //roleAndMenuDtos.forEach(r->{
        //    r.getRoleMenuList().forEach(System.out::println);
        //});
        Map<String, Object>result=new HashMap<>(3);
        result.put("list",roleAndMenuDtos);
        int size = roleManageMapper.getRoleInfoByName(dto.getName()).size();
@@ -143,6 +143,37 @@
        return roleManageMapper.getUserListRole();
    }
    @Override
    public Map<String, Object> getUrlType(String url) {
        String type=null;
        Map<String, Object> stringIntegerMap = roleManageMapper.selctInterFaceType(url);
        String of = String.valueOf(stringIntegerMap.get("type"));
        switch (of) {
            case "0":
                type="selected";
                break;
            case "1":
                type="added";
                break;
            case "2":
                type="updated";
                break;
            case "3":
                type="deleted";
                break;
            default:
                break;
        }
        stringIntegerMap.put("type",type);
        System.out.println(type);
        return stringIntegerMap;
    }
    @Override
    public boolean hasUrl(String type, String menuId, String roleId) {
        return roleManageMapper.hasUrl( type,  menuId,  roleId).get("num")>0L;
    }
    private List<Menu> getEnumChildren(Menu root, List<Menu> all) {
        return all.stream()
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java
@@ -59,11 +59,9 @@
            Map<String, Object> data = new HashMap<>();
            data.put("name",loginUser.get("name"));
            data.put("id",loginUser.get("id"));
            data.put("roleId",loginUser.get("roleId"));
            data.put("remind", remind);
            RoleAndMenuDto role = getRoleInfo(Long.valueOf(String.valueOf(loginUser.get("roleId"))));
            System.out.println("+++++++++++++++++++++++++++++++++++++++++++++");
            System.out.println(role);
            System.out.println("++++++++++++++++++++++++++++++++++++++++++++++");
            data.put("role",role);
            return data;
        }
@@ -101,6 +99,11 @@
    }
    @Override
    public RoleAndMenuDto getUserRoleInfo(String token) {
        return null;
    }
    @Override
    public Map<String, String> selectUserByUserId(int userId) {
        return userMapper.selectUserByUserId(userId);
    }
user-server/src/main/resources/mapper/RoleManangeMapper.xml
@@ -18,16 +18,20 @@
        )
    </insert>
    <update id="updateRoleState">
        UPDATE role SET state = 0 WHERE (id = #{id})
        UPDATE role
        SET state = 0
        WHERE (id = #{id})
    </update>
    <delete id="deleteRoleMenuByRoleId">
        delete from role_menu where role_id =#{id}
        delete
        from role_menu
        where role_id = #{id}
    </delete>
    <select id="getAssertName" resultType="com.yuanchu.limslaboratory.pojo.RoleInfo">
        select id
        from role
        where name = #{roleName}
        and state=1
          and state = 1
    </select>
    <select id="selectAllRoleAndMenu" resultMap="roleAndMenu">
        SELECT r.id roleId,
@@ -60,41 +64,50 @@
        select id
        from role
        where 1=1
          and state=1
        and state=1
        <if test="roleName!=null and roleName!=''">
            and name like CONCAT('%',#{roleName},'%')
        </if>
    </select>
    <select id="selectAllRoleAndMenuByRoleId" resultMap="roleAndMenuById">
        SELECT
            r.`name` roleName,
            menu_id menuId,
            parent_id parentId,
            m.`name` menuName,
            m.url menuUrl,
        SELECT r.`name`  roleName,
               menu_id   menuId,
               parent_id parentId,
               m.`name`  menuName,
               m.url     menuUrl,
--             m.redirect redirect,
--             m.icon icon,
            rm.selected,
            rm.added,
            rm.updated,
            rm.deleted
        FROM
            role_menu rm,
            role r,
            menu m
        WHERE
            rm.role_id = r.id
               rm.selected,
               rm.added,
               rm.updated,
               rm.deleted
        FROM role_menu rm,
             role r,
             menu m
        WHERE rm.role_id = r.id
          AND rm.menu_id = m.id
          AND r.state = 1
          AND rm.state = 1
          AND m.state = 1
        and r.id=#{roleId}
          and r.id = #{roleId}
    </select>
    <select id="getUserListRole" resultType="map">
        SELECT CONCAT(r.`id`, '') id, r.`name`
        FROM role r
    </select>
    <select id="selctInterFaceType" resultType="java.util.Map">
        select type, menu_id menuId
        from interface_info
        WHERE url = #{url}
    </select>
    <select id="hasUrl" resultType="java.util.Map">
        SELECT COUNT(id) num
        from role_menu
        WHERE role_id = #{roleId}
          and menu_id = #{menuId}
          and ${type} = 1
    </select>
    <resultMap id="roleAndMenuById" type="com.yuanchu.limslaboratory.pojo.dto.RoleAndMenuDto">
        <result property="roleName" column="roleName"/>
        <result property="createTime" column="createTime"/>