From d740556f340346c2966f600f5237dca010b27f4a Mon Sep 17 00:00:00 2001
From: songhuangfeng123 <shf18767906695@163.com>
Date: 星期一, 25 七月 2022 15:17:13 +0800
Subject: [PATCH] 目标与责任

---
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineMngRepository.java                     |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineTemplateServiceImpl.java             |  118 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDivideDetailQueryCriteria.java       |  107 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/enums/TargetDutyResultCodes.java                         |   32 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineItemRepository.java                    |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java                   |   84 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetMngService.java                            |   25 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineItemDto.java                       |   98 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/RewardPunishmentDetailQueryCriteria.java   |   19 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/config/MetaHandler.java                                  |   83 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetMngDto.java                         |  142 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/QueryHelpPlus.java                                 |  178 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDutyfileInfoRepository.java             |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineItemQueryCriteria.java              |  107 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentStandardRepository.java       |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetMngQueryCriteria.java                |   54 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetExamineController.java                  |  131 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/WorkApproveRepository.java                    |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/RewardPunishmentStandardQueryCriteria.java |   19 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDutyfileInfo.java                           |   81 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineItemService.java                          |   23 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDivideDetailService.java                   |   25 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentStandardController.java       |  115 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDivideDetailRepository.java             |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/WorkApproveController.java                    |   88 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/BaseDomain.java                                   |   50 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/RewardPunishmentStandardDto.java          |   88 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetMng.java                                    |  122 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetExamineRepository.java                  |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentStandardServiceImpl.java    |   61 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/WorkApproveQueryCriteria.java              |  118 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/config/PublicFileUrlConfig.java                          |   39 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/ExamineTemplateController.java                |  123 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDutySummary.java                            |  211 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentDetailService.java               |   23 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetExamineServiceImpl.java               |   82 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDivideDetailDto.java                |   98 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentStandardService.java             |   23 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/ExamineMngController.java                     |  110 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/excepiton/TargetDutyException.java                       |   38 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineMngQueryCriteria.java               |   19 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetExamineService.java                        |   25 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDivideDetailSaveOrUpdate.java        |   46 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineMngService.java                           |   26 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutyfileInfoService.java                   |   23 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/WorkApprove.java                                  |  121 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetMngRepository.java                      |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineTemplateService.java                      |   29 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineItem.java                                  |   91 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/RewardPunishmentDetailDto.java            |   68 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDivideDetail.java                           |   91 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/WorkApproveService.java                          |   25 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/annotation/Query.java                                    |   59 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineTemplateQueryCriteria.java          |   19 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutySummaryController.java              |  121 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDutyfileInfoQueryCriteria.java       |   19 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDutySummaryRepository.java              |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineQueryCriteria.java            |   18 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutyfileInfoDto.java                |   88 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineMngServiceImpl.java                  |  104 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineTemplateSaveOrUpdate.java           |  116 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineTemplate.java                              |  111 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/SubmitApprove.java                         |   59 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineSaveOrUpdate.java             |   46 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentDetailServiceImpl.java      |   61 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentDetailController.java         |   97 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetExamine.java                                |  131 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineTemplateRepository.java                |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentDetailRepository.java         |   16 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/CurrentExamineDto.java                    |   51 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineItemServiceImpl.java                 |   61 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/WorkApproveServiceImpl.java                 |   70 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineMng.java                                   |  151 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutySummaryService.java                    |   23 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineMngDto.java                        |  172 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutyfileInfoController.java             |  109 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDutySummaryQueryCriteria.java        |   29 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutySummaryServiceImpl.java           |   61 
 /dev/null                                                                                                                               |   13 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/RewardPunishmentStandard.java                     |   82 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutyfileInfoServiceImpl.java          |   61 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/RewardPunishmentDetail.java                       |   61 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/WorkApproveDto.java                       |  108 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java          |  105 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDivideDetailController.java             |   80 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutySummaryDto.java                 |  218 ++
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetMngController.java                      |  148 +
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetExamineDto.java                     |   70 
 goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineTemplateDto.java                   |  131 +
 89 files changed, 6,295 insertions(+), 13 deletions(-)

diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/controller/DemoController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/controller/DemoController.java
deleted file mode 100644
index 71df661..0000000
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/controller/DemoController.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package com.gkhy.safePlatform.goalManage.controller;
-
-import com.gkhy.safePlatform.goalManage.service.DemoService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
-
-@RestController
-@RequestMapping("/goal/demo")
-public class DemoController {
-
-    @Autowired
-    private DemoService demoService;
-
-    @RequestMapping(value = "/test/rpc",method = RequestMethod.GET)
-    public Object testRpc(String name,String email){
-        return demoService.getUserDescInfo(name,email);
-    }
-
-    @RequestMapping(value = "/test/get",method = RequestMethod.GET)
-    public Object testDataSourceGet(Long id){
-        return demoService.getById(id);
-    }
-
-    @RequestMapping(value = "/test/save",method = RequestMethod.GET)
-    public Object testDataSourceSave(String title){
-        return demoService.saveOne(title);
-    }
-
-
-}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/entity/TestTable.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/entity/TestTable.java
deleted file mode 100644
index 497c0c7..0000000
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/entity/TestTable.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package com.gkhy.safePlatform.goalManage.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-
-import java.io.Serializable;
-import java.util.Date;
-
-@TableName("test_table")
-public class TestTable implements Serializable {
-
-    @TableId(type = IdType.AUTO)
-    private Long id;
-
-    private String title;
-
-    public Long getId() {
-        return id;
-    }
-
-    public void setId(Long id) {
-        this.id = id;
-    }
-
-    public String getTitle() {
-        return title;
-    }
-
-    public void setTitle(String title) {
-        this.title = title;
-    }
-}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/model/dto/req/CreateGoalReqDTO.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/model/dto/req/CreateGoalReqDTO.java
deleted file mode 100644
index 04c8b99..0000000
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/model/dto/req/CreateGoalReqDTO.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package com.gkhy.safePlatform.goalManage.model.dto.req;
-
-public class CreateGoalReqDTO {
-}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/repository/TestTableRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/repository/TestTableRepository.java
deleted file mode 100644
index 77b76b0..0000000
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/repository/TestTableRepository.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package com.gkhy.safePlatform.goalManage.repository;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.gkhy.safePlatform.goalManage.entity.TestTable;
-import org.springframework.stereotype.Repository;
-
-@Repository
-public interface TestTableRepository extends BaseMapper<TestTable> {
-}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/DemoService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/DemoService.java
deleted file mode 100644
index ef772d4..0000000
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/DemoService.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package com.gkhy.safePlatform.goalManage.service;
-
-import com.gkhy.safePlatform.commons.vo.ResultVO;
-import com.gkhy.safePlatform.goalManage.entity.TestTable;
-
-public interface DemoService {
-
-    String getUserDescInfo(String name,String email);
-
-    ResultVO<TestTable> getById(Long id);
-
-    ResultVO<TestTable> saveOne(String title);
-
-}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/baseService/TestTableService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/baseService/TestTableService.java
deleted file mode 100644
index 9168657..0000000
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/baseService/TestTableService.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package com.gkhy.safePlatform.goalManage.service.baseService;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.gkhy.safePlatform.goalManage.entity.TestTable;
-
-public interface TestTableService extends IService<TestTable> {
-
-}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/baseService/impl/TestTableServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/baseService/impl/TestTableServiceImpl.java
deleted file mode 100644
index f9220f4..0000000
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/baseService/impl/TestTableServiceImpl.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package com.gkhy.safePlatform.goalManage.service.baseService.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.gkhy.safePlatform.goalManage.entity.TestTable;
-import com.gkhy.safePlatform.goalManage.repository.TestTableRepository;
-import com.gkhy.safePlatform.goalManage.service.baseService.TestTableService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-@Service("testTableService")
-public class TestTableServiceImpl extends ServiceImpl<TestTableRepository, TestTable> implements TestTableService {
-
-    @Autowired
-    private TestTableRepository testTableRepository;
-}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/impl/DemoServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/impl/DemoServiceImpl.java
deleted file mode 100644
index b4dccbc..0000000
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/goalManage/service/impl/DemoServiceImpl.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package com.gkhy.safePlatform.goalManage.service.impl;
-
-import com.gkhy.safePlatform.commons.enums.ResultCodes;
-import com.gkhy.safePlatform.commons.vo.ResultVO;
-import com.gkhy.safePlatform.emergency.rpc.api.EmergencyDemoRpcAPi;
-import com.gkhy.safePlatform.emergency.rpc.api.model.User;
-import com.gkhy.safePlatform.goalManage.entity.TestTable;
-import com.gkhy.safePlatform.goalManage.service.DemoService;
-import com.gkhy.safePlatform.goalManage.service.baseService.TestTableService;
-import org.apache.dubbo.config.annotation.DubboReference;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-@Service
-public class DemoServiceImpl implements DemoService {
-
-    @DubboReference(check = false)
-    private EmergencyDemoRpcAPi emergencyDemoRpcProvider;
-
-    @Autowired
-    private TestTableService testTableService;
-
-    @Override
-    public String getUserDescInfo(String name, String email) {
-        User user = new User();
-        user.setName(name);
-        user.setEmail(email);
-        return emergencyDemoRpcProvider.sayHello(user);
-    }
-
-    @Override
-    public ResultVO<TestTable> getById(Long id) {
-        ResultVO<TestTable> resultVO = new ResultVO<>();
-        TestTable testTableInfo = testTableService.getById(id);
-        if(testTableInfo != null){
-            resultVO.setCode(ResultCodes.OK.getCode());
-            resultVO.setData(testTableInfo);
-        }else {
-            resultVO.setCode(ResultCodes.OK.getCode());
-        }
-        return resultVO;
-    }
-
-    @Override
-    public ResultVO<TestTable> saveOne(String title) {
-        ResultVO<TestTable> resultVO = new ResultVO<>();
-        TestTable testTable = new TestTable();
-        if(title == null || title.isEmpty() || title.trim().isEmpty()){
-            resultVO.setCode(ResultCodes.SERVER_PARAM_NULL.getCode());
-        }else {
-            testTable.setTitle(title);
-            if(testTableService.save(testTable)){
-                resultVO.setCode(ResultCodes.OK.getCode());
-            }else {
-                resultVO.setCode(ResultCodes.SERVER_UPDATE_ERROR.getCode());
-            }
-        }
-        return resultVO;
-    }
-}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/annotation/Query.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/annotation/Query.java
new file mode 100644
index 0000000..dd61d9e
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/annotation/Query.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (C) 2018-2022
+ * All rights reserved, Designed By www.yixiang.co
+ * 注意:
+ * 本软件为www.yixiang.co开发研制
+ */
+package com.gkhy.safePlatform.targetDuty.annotation;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ */
+@Target(ElementType.FIELD)
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Query {
+
+    // Dong ZhaoYang 2017/8/7 基本对象的属性名
+    String propName() default "";
+
+    // Dong ZhaoYang 2017/8/7 查询方式
+    Type type() default Type.EQUAL;
+
+    /**
+     * 多字段模糊搜索,仅支持String类型字段,多个用逗号隔开, 如@Query(blurry = "email,username")
+     */
+    String blurry() default "";
+
+    enum Type {
+        // jie 2019/6/4 相等
+        EQUAL
+        // Dong ZhaoYang 2017/8/7 大于等于
+        , GREATER_THAN
+        // Dong ZhaoYang 2017/8/7 小于等于
+        , LESS_THAN
+        // Dong ZhaoYang 2017/8/7 中模糊查询
+        , INNER_LIKE
+        // Dong ZhaoYang 2017/8/7 左模糊查询
+        , LEFT_LIKE
+        // Dong ZhaoYang 2017/8/7 右模糊查询
+        , RIGHT_LIKE
+        // Dong ZhaoYang 2017/8/7 小于
+        , LESS_THAN_NQ
+        // jie 2019/6/4 包含
+        , IN
+        // 不等于
+        , NOT_EQUAL
+        // between
+        , BETWEEN
+        // 不为空
+        , NOT_NULL
+        // 查询时间
+        , UNIX_TIMESTAMP
+    }
+
+}
+
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/config/MetaHandler.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/config/MetaHandler.java
new file mode 100644
index 0000000..2d0174e
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/config/MetaHandler.java
@@ -0,0 +1,83 @@
+/**
+ * Copyright (C) 2018-2022
+ * All rights reserved, Designed By www.yixiang.co
+ * 注意:
+ * 本软件为www.yixiang.co开发研制
+ */
+package com.gkhy.safePlatform.targetDuty.config;
+
+/**
+ * @date :Created in 2020-04-10 15:47
+ * @description:自动注入时间处理
+ * @modified By:
+ * @version:
+ */
+
+import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
+import org.apache.ibatis.reflection.MetaObject;
+
+import java.sql.Timestamp;
+
+/**
+ * 处理新增和更新的基础数据填充,配合BaseEntity和MyBatisPlusConfig使用
+ */
+//@Component
+public class MetaHandler implements MetaObjectHandler {
+
+
+    /**
+     * 新增数据执行
+     *
+     * @param metaObject
+     */
+    @Override
+    public void insertFill(MetaObject metaObject) {
+        try {
+            Timestamp time = new Timestamp(System.currentTimeMillis());
+            if (metaObject.hasSetter("createTime")) {
+                this.setFieldValByName("createTime", time, metaObject);
+            }
+            if (metaObject.hasSetter("updateTime")) {
+                this.setFieldValByName("updateTime", time, metaObject);
+            }
+            if (metaObject.hasSetter("createDate")) {
+                this.setFieldValByName("createDate", time, metaObject);
+            }
+            if (metaObject.hasSetter("updateDate")) {
+                this.setFieldValByName("updateDate", time, metaObject);
+            }
+            if (metaObject.hasSetter("delFlag")) {
+                this.setFieldValByName("delFlag", false, metaObject);
+            }
+        } catch (Exception e) {
+            System.out.println("自动注入失败:"+e.getMessage());
+        }
+    }
+
+    /**
+     * 更新数据执行
+     *
+     * @param metaObject
+     */
+    @Override
+    public void updateFill(MetaObject metaObject) {
+        try {
+            Timestamp time = new Timestamp(System.currentTimeMillis());
+            if (metaObject.hasSetter("updateTime")) {
+                this.setFieldValByName("updateTime", time, metaObject);
+            }
+            if (metaObject.hasSetter("updateDate")) {
+                this.setFieldValByName("updateDate", time, metaObject);
+            }
+            if (metaObject.hasSetter("delFlag")) {
+                this.setFieldValByName("delFlag", null, metaObject);
+            }
+            if (metaObject.hasSetter("createTime")) {
+                this.setFieldValByName("createTime", null, metaObject);
+            }
+        } catch (Exception e) {
+            System.out.println("自动注入失败:"+e.getMessage());
+        }
+    }
+
+}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/config/PublicFileUrlConfig.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/config/PublicFileUrlConfig.java
new file mode 100644
index 0000000..77d402d
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/config/PublicFileUrlConfig.java
@@ -0,0 +1,39 @@
+package com.gkhy.safePlatform.targetDuty.config;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * 公共文件的配置
+ */
+
+@Configuration("sss")
+@ConfigurationProperties(prefix = "public-file")
+public class PublicFileUrlConfig {
+
+    /**
+     * 上传的地址
+     */
+    private static String uploadUrl;
+
+    public void setUploadUrl(String uploadUrl) {
+        PublicFileUrlConfig.uploadUrl = uploadUrl;
+    }
+
+    public static String getUploadUrl() {
+        return uploadUrl;
+    }
+
+    /**
+     * 资源的域名
+     */
+    private static String domain;
+
+    public void setDomain(String domain) {
+        PublicFileUrlConfig.domain = domain;
+    }
+
+    public static String getDomain() {
+        return domain;
+    }
+}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/ExamineMngController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/ExamineMngController.java
new file mode 100644
index 0000000..ef89fba
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/ExamineMngController.java
@@ -0,0 +1,110 @@
+package com.gkhy.safePlatform.targetDuty.controller;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineMng;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineMngQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.ExamineMngDto;
+import com.gkhy.safePlatform.targetDuty.service.ExamineMngService;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.sql.Timestamp;
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 绩效考核管理-安全考核管理(ExamineMng)表控制层
+ *
+ * @author xurui
+ * @since 2022-07-21 13:43:08
+ */
+@RestController
+@RequestMapping("examineMng")
+public class ExamineMngController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private ExamineMngService examineMngService;
+
+    /**
+     * 分页查询所有数据
+     *
+     * @param pageQuery 查询实体
+     * @return 所有数据
+     */
+    @PostMapping(value = "/page/list")
+    public ResultVO selectAll(@RequestBody PageQuery<ExamineMngQueryCriteria> pageQuery){
+		PageUtils.checkCheck(pageQuery.getPageIndex(), pageQuery.getPageSize());
+		return this.examineMngService.queryAll(pageQuery);
+    }
+	
+
+    /**
+     * 通过主键查询单条数据
+     *
+     * @param id 主键
+     * @return 单条数据
+     */
+    @GetMapping(value = "/selectOne/{id}")
+    public ResultVO selectOne(@PathVariable Serializable id) {
+        ExamineMngDto mngDto = this.examineMngService.selectOne(id);
+        return new ResultVO<>(ResultCodes.OK,mngDto);
+    }
+
+	/**
+     * 新增或者修改数据
+     *
+     * @param examineMng 实体对象
+     * @return 修改结果
+     */
+    @PostMapping(value = "/addOrUpdate")
+    public ResultVO update(@RequestBody ExamineMng examineMng) {
+        if (examineMng.getId() == null) {
+            return new ResultVO<>(ResultCodes.OK,examineMngService.save(examineMng));
+        } else {
+            examineMngService.update(examineMng,new UpdateWrapper<ExamineMng>().eq("id",examineMng.getId()));
+            return new ResultVO<>(ResultCodes.OK);
+        }
+    }
+
+    /**
+     * 删除数据
+     *
+     * @param ids 主键结合
+     * @return 删除结果
+     */
+    @GetMapping(value = "/delete")
+    public ResultVO delete(String ids) {
+	List<String> idList = Arrays.stream(ids.split(","))
+                .collect(Collectors.toList());
+        this.examineMngService.removeByIds(idList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+
+    public static void main(String[] args) {
+        ExamineMng examineTemplateSaveOrUpdate = new ExamineMng();
+        examineTemplateSaveOrUpdate.setExamineTemplateId(0L);
+        examineTemplateSaveOrUpdate.setTitle("1");
+        examineTemplateSaveOrUpdate.setItemDetail("2");
+        examineTemplateSaveOrUpdate.setExamineDate(new Timestamp(new java.util.Date().getTime()));
+        examineTemplateSaveOrUpdate.setExamineTotalNumber("3");
+        examineTemplateSaveOrUpdate.setMemo("4");
+        examineTemplateSaveOrUpdate.setExaminePersonId("5");
+        examineTemplateSaveOrUpdate.setBeExaminedPersonId("6");
+        examineTemplateSaveOrUpdate.setExamineDepartmentId(7L);
+        examineTemplateSaveOrUpdate.setBeExaminedDepartmentId(8L);
+        examineTemplateSaveOrUpdate.setExtraFile("9");
+        examineTemplateSaveOrUpdate.setNumberDetailJson("");
+
+        System.out.println(JSONObject.toJSONString(examineTemplateSaveOrUpdate));
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/ExamineTemplateController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/ExamineTemplateController.java
new file mode 100644
index 0000000..36c136a
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/ExamineTemplateController.java
@@ -0,0 +1,123 @@
+package com.gkhy.safePlatform.targetDuty.controller;
+import java.util.Date;
+
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.JSONObject;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+import com.google.common.collect.Lists;
+import java.sql.Timestamp;
+
+
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineTemplate;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineTemplateSaveOrUpdate;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.ExamineTemplateDto;
+import com.gkhy.safePlatform.targetDuty.service.ExamineTemplateService;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineTemplateQueryCriteria;
+
+import java.util.Arrays;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 绩效考核管理-绩效考核标准(ExamineTemplate)表控制层
+ *
+ * @author xurui
+ * @since 2022-07-21 10:58:10
+ */
+@RestController
+@RequestMapping("examineTemplate")
+public class ExamineTemplateController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private ExamineTemplateService examineTemplateService;
+
+    /**
+     * 分页查询所有数据
+     *
+     * @param pageQuery 查询实体
+     * @return 所有数据
+     */
+    @PostMapping(value = "/page/list")
+    public ResultVO selectAll(@RequestBody PageQuery<ExamineTemplateQueryCriteria> pageQuery){
+		PageUtils.checkCheck(pageQuery.getPageIndex(), pageQuery.getPageSize());
+		return this.examineTemplateService.queryAll(pageQuery);
+    }
+	
+
+    /**
+     * 通过主键查询单条数据
+     *
+     * @param id 主键
+     * @return 单条数据
+     */
+    @GetMapping(value = "/selectOne/{id}")
+    public ResultVO selectOne(@PathVariable Serializable id) {
+        return new ResultVO<>(ResultCodes.OK,this.examineTemplateService.selectOne(id));
+    }
+
+	/**
+     * 新增或者修改数据
+     *
+     * @param examineTemplateSaveOrUpdate 实体对象
+     * @return 修改结果
+     */
+    @PostMapping(value = "/addOrUpdate")
+    public ResultVO update(@RequestBody ExamineTemplateSaveOrUpdate examineTemplateSaveOrUpdate) {
+        if(!StringUtils.hasText(examineTemplateSaveOrUpdate.getTitle())){
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少title");
+        }
+        examineTemplateService.addOrUpdate(examineTemplateSaveOrUpdate);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+    /**
+     * 删除数据
+     *
+     * @param ids 主键结合
+     * @return 删除结果
+     */
+    @GetMapping(value = "/delete")
+    public ResultVO delete(String ids) {
+	List<String> idList = Arrays.stream(ids.split(","))
+                .collect(Collectors.toList());
+        this.examineTemplateService.removeByIds(idList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+    public static void main(String[] args) {
+        ExamineTemplateSaveOrUpdate examineTemplateSaveOrUpdate = new ExamineTemplateSaveOrUpdate();
+        examineTemplateSaveOrUpdate.setTitle("12");
+        examineTemplateSaveOrUpdate.setApplyRange("321");
+        examineTemplateSaveOrUpdate.setTemplateCode("312");
+        examineTemplateSaveOrUpdate.setAcceptanceNumber("4124");
+        examineTemplateSaveOrUpdate.setMemo("5623");
+        examineTemplateSaveOrUpdate.setSetPersonId(1L);
+        examineTemplateSaveOrUpdate.setSetPersonDepartmentId(2L);
+        examineTemplateSaveOrUpdate.setDelExamineItems("1,2");
+
+        List<ExamineItem> examineItemList = Lists.newArrayList();
+        ExamineItem item = new ExamineItem();
+        item.setItemType("1");
+        item.setItemDetail("2");
+        item.setContent("3");
+        item.setJudgeStandard("4");
+        item.setMemo("5");
+        examineItemList.add(item);
+        examineTemplateSaveOrUpdate.setExamineItemList(examineItemList);
+        System.out.println(JSONObject.toJSONString(examineTemplateSaveOrUpdate));
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentDetailController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentDetailController.java
new file mode 100644
index 0000000..7c91f6a
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentDetailController.java
@@ -0,0 +1,97 @@
+package com.gkhy.safePlatform.targetDuty.controller;
+
+
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentDetail;
+import com.gkhy.safePlatform.targetDuty.service.RewardPunishmentDetailService;
+import org.springframework.web.bind.annotation.*;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentDetailQueryCriteria;
+
+import java.util.Arrays;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 奖惩记录(RewardPunishmentDetail)表控制层
+ *
+ * @author xurui
+ * @since 2022-07-21 10:15:45
+ */
+@RestController
+@RequestMapping("rewardPunishmentDetail")
+public class RewardPunishmentDetailController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private RewardPunishmentDetailService rewardPunishmentDetailService;
+
+    /**
+     * 分页查询所有数据
+     *
+     * @param pageQuery 查询实体
+     * @return 所有数据
+     */
+    @PostMapping(value = "/page/list")
+    public ResultVO selectAll(@RequestBody PageQuery<RewardPunishmentDetailQueryCriteria> pageQuery){
+		PageUtils.checkCheck(pageQuery.getPageIndex(), pageQuery.getPageSize());
+		return this.rewardPunishmentDetailService.queryAll(pageQuery);
+    }
+	
+
+    /**
+     * 通过主键查询单条数据
+     *
+     * @param id 主键
+     * @return 单条数据
+     */
+    @GetMapping(value = "/selectOne/{id}")
+    public ResultVO selectOne(@PathVariable Serializable id) {
+        return new ResultVO<>(ResultCodes.OK,this.rewardPunishmentDetailService.getById(id));
+    }
+
+	/**
+     * 新增或者修改数据
+     *
+     * @param rewardPunishmentDetail 实体对象
+     * @return 修改结果
+     */
+    @PostMapping(value = "/addOrUpdate")
+    public ResultVO update(@RequestBody RewardPunishmentDetail rewardPunishmentDetail) {
+        if(rewardPunishmentDetail.getPersonId() == null){
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少personId");
+        }
+        if(rewardPunishmentDetail.getRewardPunishmentStandardId() == null){
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少rewardPunishmentStandardId");
+        }
+        if (rewardPunishmentDetail.getId() == null) {
+            return new ResultVO<>(ResultCodes.OK,rewardPunishmentDetailService.save(rewardPunishmentDetail));
+        } else {
+            rewardPunishmentDetailService.update(rewardPunishmentDetail,new UpdateWrapper<RewardPunishmentDetail>().eq("id",rewardPunishmentDetail.getId()));
+            return new ResultVO<>(ResultCodes.OK);
+        }
+    }
+
+    /**
+     * 删除数据
+     *
+     * @param ids 主键结合
+     * @return 删除结果
+     */
+    @GetMapping(value = "/delete")
+    public ResultVO delete(String ids) {
+	List<String> idList = Arrays.stream(ids.split(","))
+                .collect(Collectors.toList());
+        this.rewardPunishmentDetailService.removeByIds(idList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentStandardController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentStandardController.java
new file mode 100644
index 0000000..48b7899
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentStandardController.java
@@ -0,0 +1,115 @@
+package com.gkhy.safePlatform.targetDuty.controller;
+import java.util.Date;
+
+
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentStandard;
+import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
+import com.gkhy.safePlatform.targetDuty.service.RewardPunishmentStandardService;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentStandardQueryCriteria;
+
+import java.sql.Timestamp;
+import java.util.Arrays;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * (RewardPunishmentStandard)表控制层
+ *
+ * @author xurui
+ * @since 2022-07-21 10:20:10
+ */
+@RestController
+@RequestMapping("rewardPunishmentStandard")
+public class RewardPunishmentStandardController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private RewardPunishmentStandardService rewardPunishmentStandardService;
+
+    /**
+     * 分页查询所有数据
+     *
+     * @param pageQuery 查询实体
+     * @return 所有数据
+     */
+    @PostMapping(value = "/page/list")
+    public ResultVO selectAll(@RequestBody PageQuery<RewardPunishmentStandardQueryCriteria> pageQuery){
+		PageUtils.checkCheck(pageQuery.getPageIndex(), pageQuery.getPageSize());
+		return this.rewardPunishmentStandardService.queryAll(pageQuery);
+    }
+	
+
+    /**
+     * 通过主键查询单条数据
+     *
+     * @param id 主键
+     * @return 单条数据
+     */
+    @GetMapping(value = "/selectOne/{id}")
+    public ResultVO selectOne(@PathVariable Serializable id) {
+        return new ResultVO<>(ResultCodes.OK,this.rewardPunishmentStandardService.getById(id));
+    }
+
+	/**
+     * 新增或者修改数据
+     *
+     * @param rewardPunishmentStandard 实体对象
+     * @return 修改结果
+     */
+    @PostMapping(value = "/addOrUpdate")
+    public ResultVO update(@RequestBody RewardPunishmentStandard rewardPunishmentStandard) {
+        if(rewardPunishmentStandard.getStandardType() == null){
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少standardType");
+        }
+        if(!StringUtils.hasText(rewardPunishmentStandard.getqName())){
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少qName");
+        }
+        if (rewardPunishmentStandard.getId() == null) {
+            return new ResultVO<>(ResultCodes.OK,rewardPunishmentStandardService.save(rewardPunishmentStandard));
+        } else {
+            rewardPunishmentStandardService.update(rewardPunishmentStandard,new UpdateWrapper<RewardPunishmentStandard>().eq("id",rewardPunishmentStandard.getId()));
+            return new ResultVO<>(ResultCodes.OK);
+        }
+    }
+
+    /**
+     * 删除数据
+     *
+     * @param ids 主键结合
+     * @return 删除结果
+     */
+    @GetMapping(value = "/delete")
+    public ResultVO delete(String ids) {
+	List<String> idList = Arrays.stream(ids.split(","))
+                .collect(Collectors.toList());
+        this.rewardPunishmentStandardService.removeByIds(idList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+
+    public static void main(String[] args) {
+        RewardPunishmentStandard mng = new RewardPunishmentStandard();
+        mng.setStandardType(1);
+        mng.setContent("1");
+        mng.setqName("11");
+        mng.setReason("111");
+        mng.setMemo("1111");
+
+        System.out.println(JSONObject.toJSONString(mng));
+
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDivideDetailController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDivideDetailController.java
new file mode 100644
index 0000000..1064e98
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDivideDetailController.java
@@ -0,0 +1,80 @@
+package com.gkhy.safePlatform.targetDuty.controller;
+import java.util.Date;
+
+
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailSaveOrUpdate;
+import com.gkhy.safePlatform.targetDuty.service.TargetDivideDetailService;
+import com.google.common.collect.Lists;
+import org.springframework.web.bind.annotation.*;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailQueryCriteria;
+
+import java.sql.Timestamp;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 目标指标分解详情(TargetDivideDetail)表控制层
+ *
+ * @author xurui
+ * @since 2022-07-20 13:32:39
+ */
+@RestController
+@RequestMapping("targetDivideDetail")
+public class TargetDivideDetailController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private TargetDivideDetailService targetDivideDetailService;
+
+	/**
+     * 新增或者修改数据
+     *
+     * @param infoDto 实体对象
+     * @return 修改结果
+     */
+    @PostMapping(value = "/addOrUpdate")
+    public ResultVO update(@RequestBody TargetDivideDetailSaveOrUpdate infoDto) {
+        if(infoDto.getTargetId() == null){
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少targetId");
+        }
+        targetDivideDetailService.addOrUpdate(infoDto);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+
+    public static void main(String[] args) {
+        TargetDivideDetailSaveOrUpdate infoDto = new TargetDivideDetailSaveOrUpdate();
+        List<TargetDivideDetail> repairDetails = Lists.newArrayList();
+        TargetDivideDetail repairDetail = new TargetDivideDetail();
+        repairDetail.setTargetId(3L);
+        repairDetail.setValue("3123");
+        repairDetail.setMakeDate(new Timestamp(new java.util.Date().getTime()));
+        repairDetail.setDutyDepartmentId(1L);
+        repairDetail.setMakerDepartmentId(2L);
+        repairDetail.setCommitPersonId(3L);
+        repairDetails.add(repairDetail);
+        infoDto.setTargetDivideDetailList(repairDetails);
+
+
+        infoDto.setDelTargetDivideDetails("1,2");
+
+        System.out.println(JSONObject.toJSONString(infoDto));
+
+
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutySummaryController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutySummaryController.java
new file mode 100644
index 0000000..1f598a2
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutySummaryController.java
@@ -0,0 +1,121 @@
+package com.gkhy.safePlatform.targetDuty.controller;
+import java.util.Date;
+
+
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDutySummary;
+import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
+import com.gkhy.safePlatform.targetDuty.service.TargetDutySummaryService;
+import org.springframework.web.bind.annotation.*;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDutySummaryQueryCriteria;
+
+import java.sql.Timestamp;
+import java.util.Arrays;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * (TargetDutySummary)表控制层
+ *
+ * @author xurui
+ * @since 2022-07-21 15:35:14
+ */
+@RestController
+@RequestMapping("targetDutySummary")
+public class TargetDutySummaryController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private TargetDutySummaryService targetDutySummaryService;
+
+    /**
+     * 分页查询所有数据
+     *
+     * @param pageQuery 查询实体
+     * @return 所有数据
+     */
+    @PostMapping(value = "/page/list")
+    public ResultVO selectAll(@RequestBody PageQuery<TargetDutySummaryQueryCriteria> pageQuery){
+		PageUtils.checkCheck(pageQuery.getPageIndex(), pageQuery.getPageSize());
+		return this.targetDutySummaryService.queryAll(pageQuery);
+    }
+	
+
+    /**
+     * 通过主键查询单条数据
+     *
+     * @param id 主键
+     * @return 单条数据
+     */
+    @GetMapping(value = "/selectOne/{id}")
+    public ResultVO selectOne(@PathVariable Serializable id) {
+        return new ResultVO<>(ResultCodes.OK,this.targetDutySummaryService.getById(id));
+    }
+
+	/**
+     * 新增或者修改数据
+     *
+     * @param targetDutySummary 实体对象
+     * @return 修改结果
+     */
+    @PostMapping(value = "/addOrUpdate")
+    public ResultVO update(@RequestBody TargetDutySummary targetDutySummary) {
+        if (targetDutySummary.getId() == null) {
+            return new ResultVO<>(ResultCodes.OK,targetDutySummaryService.save(targetDutySummary));
+        } else {
+            targetDutySummaryService.update(targetDutySummary,new UpdateWrapper<TargetDutySummary>().eq("id",targetDutySummary.getId()));
+            return new ResultVO<>(ResultCodes.OK);
+        }
+    }
+
+    /**
+     * 删除数据
+     *
+     * @param ids 主键结合
+     * @return 删除结果
+     */
+    @GetMapping(value = "/delete")
+    public ResultVO delete(String ids) {
+	List<String> idList = Arrays.stream(ids.split(","))
+                .collect(Collectors.toList());
+        this.targetDutySummaryService.removeByIds(idList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+    public static void main(String[] args) {
+        TargetDutySummary mng = new TargetDutySummary();
+        mng.setYear("2020");
+        mng.setDepartmentId(1L);
+        mng.setTargetValue("1");
+        mng.setExamineValue("2");
+        mng.setExamineResult(1);
+
+        mng.setYiYue("1");
+        mng.setFebruary("2");
+        mng.setErYue("3");
+        mng.setSanYue("4");
+        mng.setSiYue("5");
+        mng.setWuYue("6");
+        mng.setLiuYue("7");
+        mng.setQiYue("8");
+        mng.setBaYue("9");
+        mng.setJiuYue("10");
+        mng.setShiYue("11");
+        mng.setShiyiYue("12");
+        mng.setShierYue("13");
+
+        System.out.println(JSONObject.toJSONString(mng));
+
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutyfileInfoController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutyfileInfoController.java
new file mode 100644
index 0000000..05d3b36
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetDutyfileInfoController.java
@@ -0,0 +1,109 @@
+package com.gkhy.safePlatform.targetDuty.controller;
+import java.util.Date;
+
+
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDutyfileInfo;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailSaveOrUpdate;
+import com.gkhy.safePlatform.targetDuty.service.TargetDutyfileInfoService;
+import com.google.common.collect.Lists;
+import org.springframework.web.bind.annotation.*;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDutyfileInfoQueryCriteria;
+
+import java.sql.Timestamp;
+import java.util.Arrays;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 目标责任书(TargetDutyfileInfo)表控制层
+ *
+ * @author xurui
+ * @since 2022-07-21 10:07:54
+ */
+@RestController
+@RequestMapping("targetDutyfileInfo")
+public class TargetDutyfileInfoController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private TargetDutyfileInfoService targetDutyfileInfoService;
+
+    /**
+     * 分页查询所有数据
+     *
+     * @param pageQuery 查询实体
+     * @return 所有数据
+     */
+    @PostMapping(value = "/page/list")
+    public ResultVO selectAll(@RequestBody PageQuery<TargetDutyfileInfoQueryCriteria> pageQuery){
+		PageUtils.checkCheck(pageQuery.getPageIndex(), pageQuery.getPageSize());
+		return this.targetDutyfileInfoService.queryAll(pageQuery);
+    }
+	
+
+    /**
+     * 通过主键查询单条数据
+     *
+     * @param id 主键
+     * @return 单条数据
+     */
+    @GetMapping(value = "/selectOne/{id}")
+    public ResultVO selectOne(@PathVariable Serializable id) {
+        return new ResultVO<>(ResultCodes.OK,this.targetDutyfileInfoService.getById(id));
+    }
+
+	/**
+     * 新增或者修改数据
+     *
+     * @param targetDutyfileInfo 实体对象
+     * @return 修改结果
+     */
+    @PostMapping(value = "/addOrUpdate")
+    public ResultVO update(@RequestBody TargetDutyfileInfo targetDutyfileInfo) {
+        if (targetDutyfileInfo.getId() == null) {
+            return new ResultVO<>(ResultCodes.OK,targetDutyfileInfoService.save(targetDutyfileInfo));
+        } else {
+            targetDutyfileInfoService.update(targetDutyfileInfo,new UpdateWrapper<TargetDutyfileInfo>().eq("id",targetDutyfileInfo.getId()));
+            return new ResultVO<>(ResultCodes.OK);
+        }
+    }
+
+    /**
+     * 删除数据
+     *
+     * @param ids 主键结合
+     * @return 删除结果
+     */
+    @GetMapping(value = "/delete")
+    public ResultVO delete(String ids) {
+	List<String> idList = Arrays.stream(ids.split(","))
+                .collect(Collectors.toList());
+        this.targetDutyfileInfoService.removeByIds(idList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+    public static void main(String[] args) {
+        TargetDutyfileInfo infoDto = new TargetDutyfileInfo();
+        infoDto.setIndexNum("123");
+        infoDto.setJobId(1L);
+        infoDto.setSignDate(new Timestamp(new java.util.Date().getTime()));
+        infoDto.setMemo("3123");
+        infoDto.setExtraFile("3123");
+        System.out.println(JSONObject.toJSONString(infoDto));
+
+
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetExamineController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetExamineController.java
new file mode 100644
index 0000000..fc0bfbd
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetExamineController.java
@@ -0,0 +1,131 @@
+package com.gkhy.safePlatform.targetDuty.controller;
+import java.util.Date;
+import java.sql.Timestamp;
+
+
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+import com.gkhy.safePlatform.targetDuty.entity.TargetExamine;
+import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineTemplateSaveOrUpdate;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetExamineSaveOrUpdate;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetExamineDto;
+import com.gkhy.safePlatform.targetDuty.service.TargetExamineService;
+import com.gkhy.safePlatform.targetDuty.service.TargetMngService;
+import com.google.common.collect.Lists;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetExamineQueryCriteria;
+
+import java.util.Arrays;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * (TargetExamine)表控制层
+ *
+ * @author xurui
+ * @since 2022-07-22 09:30:01
+ */
+@RestController
+@RequestMapping("targetExamine")
+public class TargetExamineController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private TargetExamineService targetExamineService;
+    @Resource
+    private TargetMngService targetMngService;
+
+    /**
+     * 通过主键查询单条数据
+     *
+     * @param targetId 主键
+     * @return 单条数据
+     */
+    @GetMapping(value = "/selectOne/{targetId}")
+    public ResultVO selectOne(@PathVariable Long targetId) {
+        TargetExamineDto dto = new TargetExamineDto();
+        TargetMng targetMng = targetMngService.getById(targetId);
+        if(targetMng == null) {
+            return new ResultVO<>(ResultCodes.CLIENT_PROJECT_NOT_EXIST);
+        }
+
+        TargetExamineQueryCriteria criteria = new TargetExamineQueryCriteria();
+        criteria.setTargetId(targetId);
+        dto.setExamineList(this.targetExamineService.queryAll(criteria));
+        dto.setId(targetMng.getId());
+        dto.setIndexNum(targetMng.getIndexNum());
+        dto.setName(targetMng.getqName());
+        dto.setValue(targetMng.getValue());
+        dto.setYear(targetMng.getYear());
+        return new ResultVO<>(ResultCodes.OK,dto);
+    }
+
+	/**
+     * 新增或者修改数据
+     *
+     * @param infoDto 实体对象
+     * @return 修改结果
+     */
+    @PostMapping(value = "/addOrUpdate")
+    public ResultVO update(@RequestBody TargetExamineSaveOrUpdate infoDto) {
+        if(infoDto.getId() == null) {
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ERROR);
+        }
+        TargetMng targetMng = targetMngService.getById(infoDto.getId());
+        if(targetMng == null) {
+            return new ResultVO<>(ResultCodes.CLIENT_PROJECT_NOT_EXIST);
+        }
+
+        targetExamineService.addOrUpdate(infoDto);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+    /**
+     * 删除数据
+     *
+     * @param ids 主键结合
+     * @return 删除结果
+     */
+    @GetMapping(value = "/delete")
+    public ResultVO delete(String ids) {
+	List<String> idList = Arrays.stream(ids.split(","))
+                .collect(Collectors.toList());
+        this.targetExamineService.removeByIds(idList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+
+    public static void main(String[] args) {
+        TargetExamineSaveOrUpdate saveOrUpdate = new TargetExamineSaveOrUpdate();
+        saveOrUpdate.setDelIds("1,2");
+
+
+        List<TargetExamine> examineList = Lists.newArrayList();
+        TargetExamine item = new TargetExamine();
+        item.setDutyDepartmentId(12L);
+        item.setExamineValue("3");
+        item.setMakerDepartmentId(4L);
+        item.setMakeDate(new Timestamp(new java.util.Date().getTime()));
+        item.setUploadValue("2");
+        item.setUploadDate(new Timestamp(new java.util.Date().getTime()));
+        item.setExamineResult(1);
+        item.setExaminePersonId(0L);
+        item.setExamineDate(new Timestamp(new java.util.Date().getTime()));
+        examineList.add(item);
+        saveOrUpdate.setExamineList(examineList);
+        System.out.println(JSONObject.toJSONString(saveOrUpdate));
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetMngController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetMngController.java
new file mode 100644
index 0000000..d181cc7
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/TargetMngController.java
@@ -0,0 +1,148 @@
+package com.gkhy.safePlatform.targetDuty.controller;
+import java.util.Date;
+import java.sql.Timestamp;
+
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
+import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
+import com.gkhy.safePlatform.targetDuty.service.TargetDivideDetailService;
+import com.gkhy.safePlatform.targetDuty.service.TargetMngService;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetMngQueryCriteria;
+
+import java.io.IOException;
+import java.util.*;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+import java.io.Serializable;
+
+/**
+ * 目标指标(TargetMng)表控制层
+ *
+ * @author xurui
+ * @since 2022-07-20 11:49:22
+ */
+@RestController
+@RequestMapping("targetMng")
+public class TargetMngController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private TargetMngService targetMngService;
+    @Resource
+    private TargetDivideDetailService targetDivideDetailService;
+
+
+    /**
+     * 分页查询所有数据
+     *
+     * @param pageQuery 查询实体
+     * @return 所有数据
+     */
+    @PostMapping(value = "/page/list")
+    public ResultVO selectAll(@RequestBody PageQuery<TargetMngQueryCriteria> pageQuery){
+        if(pageQuery.getSearchParams().getTargetType() == null){
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少targetType");
+        }
+		PageUtils.checkCheck(pageQuery.getPageIndex(), pageQuery.getPageSize());
+		return this.targetMngService.queryAll(pageQuery);
+    }
+
+
+    /**
+     * 通过主键查询单条数据
+     *
+     * @param id 主键
+     * @return 单条数据
+     */
+    @GetMapping(value = "/selectOne/{id}")
+    public ResultVO selectOne(@PathVariable Serializable id) {
+        return new ResultVO<>(ResultCodes.OK,this.targetMngService.selectOne(id));
+    }
+
+	/**
+     * 新增或者修改数据
+     *
+     * @param targetMng 实体对象
+     * @return 修改结果
+     */
+    @PostMapping(value = "/addOrUpdate")
+    public ResultVO update(@RequestBody TargetMng targetMng) {
+
+        if( !StringUtils.hasText(targetMng.getqName()) ||  !StringUtils.hasText(targetMng.getIndexNum())
+                ||  !StringUtils.hasText(targetMng.getYear()) ||  !StringUtils.hasText(targetMng.getValue())
+                ||  targetMng.getTargetType() == null){
+            return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少必填字段");
+        }
+        if (targetMng.getId() == null) {
+            return new ResultVO<>(ResultCodes.OK,targetMngService.save(targetMng));
+        } else {
+            targetMngService.update(targetMng,new UpdateWrapper<TargetMng>().eq("id",targetMng.getId()));
+            return new ResultVO<>(ResultCodes.OK);
+        }
+    }
+
+    /**
+     * 删除数据
+     *
+     * @param ids 主键结合
+     * @return 删除结果
+     */
+    @GetMapping(value = "/delete")
+    public ResultVO delete(String ids) {
+	    List<String> idList = Arrays.stream(ids.split(","))
+                .collect(Collectors.toList());
+	    //删除关联表数据
+        this.targetDivideDetailService.remove(new QueryWrapper<TargetDivideDetail>().in("target_id",idList));
+
+        this.targetMngService.removeByIds(idList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+
+//    /**
+//     * 导出
+//     * @param response /
+//     * @throws IOException /
+//     */
+//    public void download(HttpServletResponse response) throws IOException {
+//        List<Map<String, Object>> list = new ArrayList<>();
+//        for (OnlineUser user : all) {
+//            Map<String, Object> map = new LinkedHashMap<>();
+//            map.put("用户名", user.getUserName());
+//            map.put("用户昵称", user.getNickName());
+//            map.put("登录IP", user.getIp());
+//            map.put("登录地点", user.getAddress());
+//            map.put("浏览器", user.getBrowser());
+//            map.put("登录日期", user.getLoginTime());
+//            list.add(map);
+//        }
+//        FileUtil.downloadExcel(list, response);
+//    }
+
+    public static void main(String[] args) {
+        TargetMng mng = new TargetMng();
+        mng.setqName("12");
+        mng.setIndexNum("3");
+        mng.setYear("2021");
+        mng.setValue("312");
+        mng.setLevel(1);
+        mng.setCompleteDate(new Timestamp(new java.util.Date().getTime()));
+        mng.setMemo("发发发");
+        mng.setTargetType(0);
+        mng.setDivideStatus(0);
+        System.out.println(JSONObject.toJSONString(mng));
+
+    }
+}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/WorkApproveController.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/WorkApproveController.java
new file mode 100644
index 0000000..7a3e629
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/WorkApproveController.java
@@ -0,0 +1,88 @@
+package com.gkhy.safePlatform.targetDuty.controller;
+
+
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gkhy.safePlatform.targetDuty.entity.WorkApprove;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.SubmitApprove;
+import com.gkhy.safePlatform.targetDuty.service.WorkApproveService;
+import org.springframework.web.bind.annotation.*;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.utils.PageUtils;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.WorkApproveQueryCriteria;
+
+import java.util.Arrays;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * (WorkApprove)表控制层
+ *
+ * @author xurui
+ * @since 2022-07-22 10:46:11
+ */
+@RestController
+@RequestMapping("workApprove")
+public class WorkApproveController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private WorkApproveService workApproveService;
+
+    /**
+     * 分页查询所有数据
+     *
+     * @param pageQuery 查询实体
+     * @return 所有数据
+     */
+    @PostMapping(value = "/page/list")
+    public ResultVO selectAll(@RequestBody PageQuery<WorkApproveQueryCriteria> pageQuery){
+		PageUtils.checkCheck(pageQuery.getPageIndex(), pageQuery.getPageSize());
+		return this.workApproveService.queryAll(pageQuery);
+    }
+	
+
+    /**
+     * 通过主键查询单条数据
+     *
+     * @param id 主键
+     * @return 单条数据
+     */
+    @GetMapping(value = "/selectOne/{id}")
+    public ResultVO selectOne(@PathVariable Serializable id) {
+        return new ResultVO<>(ResultCodes.OK,this.workApproveService.getById(id));
+    }
+
+	/**
+     * 新增或者修改数据
+     *
+     * @param submitApprove 实体对象
+     * @return 修改结果
+     */
+    @PostMapping(value = "/submitApprove")
+    public ResultVO submitApprove(@RequestBody SubmitApprove submitApprove) {
+        workApproveService.submitApprove(submitApprove);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+
+    /**
+     * 删除数据
+     *
+     * @param ids 主键结合
+     * @return 删除结果
+     */
+    @GetMapping(value = "/delete")
+    public ResultVO delete(String ids) {
+	List<String> idList = Arrays.stream(ids.split(","))
+                .collect(Collectors.toList());
+        this.workApproveService.removeByIds(idList);
+        return new ResultVO<>(ResultCodes.OK);
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/BaseDomain.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/BaseDomain.java
new file mode 100644
index 0000000..ea18fe5
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/BaseDomain.java
@@ -0,0 +1,50 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+
+/**
+ * @ClassName 公共模型
+ **/
+public class BaseDomain implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+
+    @TableField(fill = FieldFill.INSERT)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date createTime;
+
+    @TableField(fill = FieldFill.UPDATE)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date updateTime;
+
+    public static long getSerialVersionUID() {
+        return serialVersionUID;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    //    @TableLogic
+//    @JsonIgnore
+//    private Integer isDel;
+}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineItem.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineItem.java
new file mode 100644
index 0000000..afca690
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineItem.java
@@ -0,0 +1,91 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * 绩效考核项目(ExamineItem)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-21 11:01:38
+ */
+@SuppressWarnings("serial")
+@TableName("examine_item")
+public class ExamineItem extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //绩效考核模板ID/外键
+    private Long examineTemplateId;
+        
+    public Long getExamineTemplateId() {
+        return examineTemplateId;
+    }
+
+    public void setExamineTemplateId(Long examineTemplateId) {
+        this.examineTemplateId = examineTemplateId;
+    }
+                //类型
+    private String itemType;
+        
+    public String getItemType() {
+        return itemType;
+    }
+
+    public void setItemType(String itemType) {
+        this.itemType = itemType;
+    }
+                //考核项目
+    private String itemDetail;
+        
+    public String getItemDetail() {
+        return itemDetail;
+    }
+
+    public void setItemDetail(String itemDetail) {
+        this.itemDetail = itemDetail;
+    }
+                //考核内容
+    private String content;
+        
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+                //评定标准
+    private String judgeStandard;
+        
+    public String getJudgeStandard() {
+        return judgeStandard;
+    }
+
+    public void setJudgeStandard(String judgeStandard) {
+        this.judgeStandard = judgeStandard;
+    }
+                //考核说明
+    private String memo;
+        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineMng.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineMng.java
new file mode 100644
index 0000000..ee1c23c
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineMng.java
@@ -0,0 +1,151 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * 安全考核管理(ExamineMng)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-21 13:43:08
+ */
+@SuppressWarnings("serial")
+@TableName("examine_mng")
+public class ExamineMng extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //绩效考核模板ID/外键
+    private Long examineTemplateId;
+        
+    public Long getExamineTemplateId() {
+        return examineTemplateId;
+    }
+
+    public void setExamineTemplateId(Long examineTemplateId) {
+        this.examineTemplateId = examineTemplateId;
+    }
+                //考核标题
+    private String title;
+        
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+                //考核项目
+    private String itemDetail;
+        
+    public String getItemDetail() {
+        return itemDetail;
+    }
+
+    public void setItemDetail(String itemDetail) {
+        this.itemDetail = itemDetail;
+    }
+                //考核日期
+    private Timestamp examineDate;
+        
+    public Timestamp getExamineDate() {
+        return examineDate;
+    }
+
+    public void setExamineDate(Timestamp examineDate) {
+        this.examineDate = examineDate;
+    }
+                //总分
+    private String examineTotalNumber;
+        
+    public String getExamineTotalNumber() {
+        return examineTotalNumber;
+    }
+
+    public void setExamineTotalNumber(String examineTotalNumber) {
+        this.examineTotalNumber = examineTotalNumber;
+    }
+                //考核说明
+    private String memo;
+        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+                //考核人ID/外键
+    private String examinePersonId;
+        
+    public String getExaminePersonId() {
+        return examinePersonId;
+    }
+
+    public void setExaminePersonId(String examinePersonId) {
+        this.examinePersonId = examinePersonId;
+    }
+                //被考核人ID/外键(可能有多个,用逗号隔开)
+    private String beExaminedPersonId;
+        
+    public String getBeExaminedPersonId() {
+        return beExaminedPersonId;
+    }
+
+    public void setBeExaminedPersonId(String beExaminedPersonId) {
+        this.beExaminedPersonId = beExaminedPersonId;
+    }
+                //考核部门ID/外键
+    private Long examineDepartmentId;
+        
+    public Long getExamineDepartmentId() {
+        return examineDepartmentId;
+    }
+
+    public void setExamineDepartmentId(Long examineDepartmentId) {
+        this.examineDepartmentId = examineDepartmentId;
+    }
+                //被考核部门ID/外键
+    private Long beExaminedDepartmentId;
+        
+    public Long getBeExaminedDepartmentId() {
+        return beExaminedDepartmentId;
+    }
+
+    public void setBeExaminedDepartmentId(Long beExaminedDepartmentId) {
+        this.beExaminedDepartmentId = beExaminedDepartmentId;
+    }
+                //附件
+    private String extraFile;
+        
+    public String getExtraFile() {
+        return extraFile;
+    }
+
+    public void setExtraFile(String extraFile) {
+        this.extraFile = extraFile;
+    }
+                //各个考核项目的具体得分,json格式。
+    private String numberDetailJson;
+        
+    public String getNumberDetailJson() {
+        return numberDetailJson;
+    }
+
+    public void setNumberDetailJson(String numberDetailJson) {
+        this.numberDetailJson = numberDetailJson;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineTemplate.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineTemplate.java
new file mode 100644
index 0000000..34bac1a
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/ExamineTemplate.java
@@ -0,0 +1,111 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * 绩效考核标准(ExamineTemplate)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-21 10:58:10
+ */
+@SuppressWarnings("serial")
+@TableName("examine_template")
+public class ExamineTemplate extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //标准标题
+    private String title;
+        
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+                //适用范围
+    private String applyRange;
+        
+    public String getApplyRange() {
+        return applyRange;
+    }
+
+    public void setApplyRange(String applyRange) {
+        this.applyRange = applyRange;
+    }
+                //模板分类编码
+    private String templateCode;
+        
+    public String getTemplateCode() {
+        return templateCode;
+    }
+
+    public void setTemplateCode(String templateCode) {
+        this.templateCode = templateCode;
+    }
+                //合格分数
+    private String acceptanceNumber;
+        
+    public String getAcceptanceNumber() {
+        return acceptanceNumber;
+    }
+
+    public void setAcceptanceNumber(String acceptanceNumber) {
+        this.acceptanceNumber = acceptanceNumber;
+    }
+                //备注信息
+    private String memo;
+        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+                
+    private Long setPersonId;
+        
+    public Long getSetPersonId() {
+        return setPersonId;
+    }
+
+    public void setSetPersonId(Long setPersonId) {
+        this.setPersonId = setPersonId;
+    }
+                
+    private Long setPersonDepartmentId;
+        
+    public Long getSetPersonDepartmentId() {
+        return setPersonDepartmentId;
+    }
+
+    public void setSetPersonDepartmentId(Long setPersonDepartmentId) {
+        this.setPersonDepartmentId = setPersonDepartmentId;
+    }
+                
+    private Timestamp setTimem;
+        
+    public Timestamp getSetTimem() {
+        return setTimem;
+    }
+
+    public void setSetTimem(Timestamp setTimem) {
+        this.setTimem = setTimem;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/RewardPunishmentDetail.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/RewardPunishmentDetail.java
new file mode 100644
index 0000000..8888665
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/RewardPunishmentDetail.java
@@ -0,0 +1,61 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * 奖惩记录(RewardPunishmentDetail)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-21 10:15:45
+ */
+@SuppressWarnings("serial")
+@TableName("reward_punishment_detail")
+public class RewardPunishmentDetail extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //奖惩类型 1:奖励 2:惩罚
+    private Long rewardPunishmentStandardId;
+        
+    public Long getRewardPunishmentStandardId() {
+        return rewardPunishmentStandardId;
+    }
+
+    public void setRewardPunishmentStandardId(Long rewardPunishmentStandardId) {
+        this.rewardPunishmentStandardId = rewardPunishmentStandardId;
+    }
+                //员工(多个用逗号隔开)
+    private String personId;
+        
+    public String getPersonId() {
+        return personId;
+    }
+
+    public void setPersonId(String personId) {
+        this.personId = personId;
+    }
+                //备注信息
+    private String memo;
+        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/RewardPunishmentStandard.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/RewardPunishmentStandard.java
new file mode 100644
index 0000000..a7bb9cf
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/RewardPunishmentStandard.java
@@ -0,0 +1,82 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * (RewardPunishmentStandard)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-21 10:20:10
+ */
+@SuppressWarnings("serial")
+@TableName("reward_punishment_standard")
+public class RewardPunishmentStandard extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //奖惩类型 1:奖励 2:惩罚
+    private Integer standardType;
+        
+    public Integer getStandardType() {
+        return standardType;
+    }
+
+    public void setStandardType(Integer standardType) {
+        this.standardType = standardType;
+    }
+                //奖惩内容
+    private String content;
+        
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+                //奖惩名称
+    private String qName;
+
+    public String getqName() {
+        return qName;
+    }
+
+    public void setqName(String qName) {
+        this.qName = qName;
+    }
+
+    //依据
+    private String reason;
+        
+    public String getReason() {
+        return reason;
+    }
+
+    public void setReason(String reason) {
+        this.reason = reason;
+    }
+                //备注信息
+    private String memo;
+        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDivideDetail.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDivideDetail.java
new file mode 100644
index 0000000..bb4ff67
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDivideDetail.java
@@ -0,0 +1,91 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * 目标指标分解详情(TargetDivideDetail)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-20 13:32:39
+ */
+@SuppressWarnings("serial")
+@TableName("target_divide_detail")
+public class TargetDivideDetail extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //关联的目标指标/外键
+    private Long targetId;
+        
+    public Long getTargetId() {
+        return targetId;
+    }
+
+    public void setTargetId(Long targetId) {
+        this.targetId = targetId;
+    }
+                //考核指标值
+    private String value;
+        
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+                //制定日期
+    private Timestamp makeDate;
+        
+    public Timestamp getMakeDate() {
+        return makeDate;
+    }
+
+    public void setMakeDate(Timestamp makeDate) {
+        this.makeDate = makeDate;
+    }
+                //责任部门/外键
+    private Long dutyDepartmentId;
+        
+    public Long getDutyDepartmentId() {
+        return dutyDepartmentId;
+    }
+
+    public void setDutyDepartmentId(Long dutyDepartmentId) {
+        this.dutyDepartmentId = dutyDepartmentId;
+    }
+                //制定人部门/外键
+    private Long makerDepartmentId;
+        
+    public Long getMakerDepartmentId() {
+        return makerDepartmentId;
+    }
+
+    public void setMakerDepartmentId(Long makerDepartmentId) {
+        this.makerDepartmentId = makerDepartmentId;
+    }
+                //上报人/外键
+    private Long commitPersonId;
+        
+    public Long getCommitPersonId() {
+        return commitPersonId;
+    }
+
+    public void setCommitPersonId(Long commitPersonId) {
+        this.commitPersonId = commitPersonId;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDutySummary.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDutySummary.java
new file mode 100644
index 0000000..3a0d5b2
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDutySummary.java
@@ -0,0 +1,211 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * (TargetDutySummary)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-21 15:51:57
+ */
+@SuppressWarnings("serial")
+@TableName("target_duty_summary")
+public class TargetDutySummary extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //年度
+    private String year;
+        
+    public String getYear() {
+        return year;
+    }
+
+    public void setYear(String year) {
+        this.year = year;
+    }
+                //责任部门/外键
+    private Long departmentId;
+        
+    public Long getDepartmentId() {
+        return departmentId;
+    }
+
+    public void setDepartmentId(Long departmentId) {
+        this.departmentId = departmentId;
+    }
+                //安全目标指标
+    private String targetValue;
+        
+    public String getTargetValue() {
+        return targetValue;
+    }
+
+    public void setTargetValue(String targetValue) {
+        this.targetValue = targetValue;
+    }
+                //考核指标
+    private String examineValue;
+        
+    public String getExamineValue() {
+        return examineValue;
+    }
+
+    public void setExamineValue(String examineValue) {
+        this.examineValue = examineValue;
+    }
+                //考核指标 1:合格 2:不合格
+    private Integer examineResult;
+        
+    public Integer getExamineResult() {
+        return examineResult;
+    }
+
+    public void setExamineResult(Integer examineResult) {
+        this.examineResult = examineResult;
+    }
+                //月份
+    private String yiYue;
+        
+    public String getYiYue() {
+        return yiYue;
+    }
+
+    public void setYiYue(String yiYue) {
+        this.yiYue = yiYue;
+    }
+                
+    private String february;
+        
+    public String getFebruary() {
+        return february;
+    }
+
+    public void setFebruary(String february) {
+        this.february = february;
+    }
+                
+    private String erYue;
+        
+    public String getErYue() {
+        return erYue;
+    }
+
+    public void setErYue(String erYue) {
+        this.erYue = erYue;
+    }
+                
+    private String sanYue;
+        
+    public String getSanYue() {
+        return sanYue;
+    }
+
+    public void setSanYue(String sanYue) {
+        this.sanYue = sanYue;
+    }
+                
+    private String siYue;
+        
+    public String getSiYue() {
+        return siYue;
+    }
+
+    public void setSiYue(String siYue) {
+        this.siYue = siYue;
+    }
+                
+    private String wuYue;
+        
+    public String getWuYue() {
+        return wuYue;
+    }
+
+    public void setWuYue(String wuYue) {
+        this.wuYue = wuYue;
+    }
+                
+    private String liuYue;
+        
+    public String getLiuYue() {
+        return liuYue;
+    }
+
+    public void setLiuYue(String liuYue) {
+        this.liuYue = liuYue;
+    }
+                
+    private String qiYue;
+        
+    public String getQiYue() {
+        return qiYue;
+    }
+
+    public void setQiYue(String qiYue) {
+        this.qiYue = qiYue;
+    }
+                
+    private String baYue;
+        
+    public String getBaYue() {
+        return baYue;
+    }
+
+    public void setBaYue(String baYue) {
+        this.baYue = baYue;
+    }
+                
+    private String jiuYue;
+        
+    public String getJiuYue() {
+        return jiuYue;
+    }
+
+    public void setJiuYue(String jiuYue) {
+        this.jiuYue = jiuYue;
+    }
+                
+    private String shiYue;
+        
+    public String getShiYue() {
+        return shiYue;
+    }
+
+    public void setShiYue(String shiYue) {
+        this.shiYue = shiYue;
+    }
+                
+    private String shiyiYue;
+        
+    public String getShiyiYue() {
+        return shiyiYue;
+    }
+
+    public void setShiyiYue(String shiyiYue) {
+        this.shiyiYue = shiyiYue;
+    }
+                
+    private String shierYue;
+        
+    public String getShierYue() {
+        return shierYue;
+    }
+
+    public void setShierYue(String shierYue) {
+        this.shierYue = shierYue;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDutyfileInfo.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDutyfileInfo.java
new file mode 100644
index 0000000..7344921
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetDutyfileInfo.java
@@ -0,0 +1,81 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * 目标责任书(TargetDutyfileInfo)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-21 10:07:54
+ */
+@SuppressWarnings("serial")
+@TableName("target_dutyfile_info")
+public class TargetDutyfileInfo extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //序号
+    private String indexNum;
+        
+    public String getIndexNum() {
+        return indexNum;
+    }
+
+    public void setIndexNum(String indexNum) {
+        this.indexNum = indexNum;
+    }
+                //岗位号/外键
+    private Long jobId;
+        
+    public Long getJobId() {
+        return jobId;
+    }
+
+    public void setJobId(Long jobId) {
+        this.jobId = jobId;
+    }
+                //责任书签订日期
+    private Timestamp signDate;
+        
+    public Timestamp getSignDate() {
+        return signDate;
+    }
+
+    public void setSignDate(Timestamp signDate) {
+        this.signDate = signDate;
+    }
+                //备注信息
+    private String memo;
+        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+                //责任书附件,多个附件用逗号隔开
+    private String extraFile;
+        
+    public String getExtraFile() {
+        return extraFile;
+    }
+
+    public void setExtraFile(String extraFile) {
+        this.extraFile = extraFile;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetExamine.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetExamine.java
new file mode 100644
index 0000000..5178188
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetExamine.java
@@ -0,0 +1,131 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * (TargetExamine)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-22 09:30:01
+ */
+@SuppressWarnings("serial")
+@TableName("target_examine")
+public class TargetExamine extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //关联的目标指标/外键
+    private Long targetId;
+        
+    public Long getTargetId() {
+        return targetId;
+    }
+
+    public void setTargetId(Long targetId) {
+        this.targetId = targetId;
+    }
+                //责任部门id/外键
+    private Long dutyDepartmentId;
+        
+    public Long getDutyDepartmentId() {
+        return dutyDepartmentId;
+    }
+
+    public void setDutyDepartmentId(Long dutyDepartmentId) {
+        this.dutyDepartmentId = dutyDepartmentId;
+    }
+                //考核指标
+    private String examineValue;
+        
+    public String getExamineValue() {
+        return examineValue;
+    }
+
+    public void setExamineValue(String examineValue) {
+        this.examineValue = examineValue;
+    }
+                //制定部门/外键
+    private Long makerDepartmentId;
+        
+    public Long getMakerDepartmentId() {
+        return makerDepartmentId;
+    }
+
+    public void setMakerDepartmentId(Long makerDepartmentId) {
+        this.makerDepartmentId = makerDepartmentId;
+    }
+                //制定日期
+    private Timestamp makeDate;
+        
+    public Timestamp getMakeDate() {
+        return makeDate;
+    }
+
+    public void setMakeDate(Timestamp makeDate) {
+        this.makeDate = makeDate;
+    }
+                //上报值
+    private String uploadValue;
+        
+    public String getUploadValue() {
+        return uploadValue;
+    }
+
+    public void setUploadValue(String uploadValue) {
+        this.uploadValue = uploadValue;
+    }
+                //上报时间
+    private Timestamp uploadDate;
+        
+    public Timestamp getUploadDate() {
+        return uploadDate;
+    }
+
+    public void setUploadDate(Timestamp uploadDate) {
+        this.uploadDate = uploadDate;
+    }
+                //考核结果 1:合格 2:不合格
+    private Integer examineResult;
+        
+    public Integer getExamineResult() {
+        return examineResult;
+    }
+
+    public void setExamineResult(Integer examineResult) {
+        this.examineResult = examineResult;
+    }
+                //考核人ID/外键
+    private Long examinePersonId;
+        
+    public Long getExaminePersonId() {
+        return examinePersonId;
+    }
+
+    public void setExaminePersonId(Long examinePersonId) {
+        this.examinePersonId = examinePersonId;
+    }
+                //考核时间
+    private Timestamp examineDate;
+        
+    public Timestamp getExamineDate() {
+        return examineDate;
+    }
+
+    public void setExamineDate(Timestamp examineDate) {
+        this.examineDate = examineDate;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetMng.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetMng.java
new file mode 100644
index 0000000..7013024
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/TargetMng.java
@@ -0,0 +1,122 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * 目标指标(TargetMng)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-20 11:49:22
+ */
+@SuppressWarnings("serial")
+@TableName("target_mng")
+public class TargetMng extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //安全目标指标
+    private String qName;
+
+    public String getqName() {
+        return qName;
+    }
+
+    public void setqName(String qName) {
+        this.qName = qName;
+    }
+
+    //目标指标编号
+    private String indexNum;
+        
+    public String getIndexNum() {
+        return indexNum;
+    }
+
+    public void setIndexNum(String indexNum) {
+        this.indexNum = indexNum;
+    }
+                //年度
+    private String year;
+        
+    public String getYear() {
+        return year;
+    }
+
+    public void setYear(String year) {
+        this.year = year;
+    }
+                //指标值
+    private String value;
+        
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+                //指标级别 1:公司级 2:部门分厂级 3:工段班组级
+    private Integer level;
+        
+    public Integer getLevel() {
+        return level;
+    }
+
+    public void setLevel(Integer level) {
+        this.level = level;
+    }
+                //完成期限
+    private Timestamp completeDate;
+        
+    public Timestamp getCompleteDate() {
+        return completeDate;
+    }
+
+    public void setCompleteDate(Timestamp completeDate) {
+        this.completeDate = completeDate;
+    }
+                //备注信息
+    private String memo;
+        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+                //指标类型 1:年指标 2:月指标
+    private Integer targetType;
+        
+    public Integer getTargetType() {
+        return targetType;
+    }
+
+    public void setTargetType(Integer targetType) {
+        this.targetType = targetType;
+    }
+                //分解状态 1:已分解 2:未分解
+    private Integer divideStatus;
+        
+    public Integer getDivideStatus() {
+        return divideStatus;
+    }
+
+    public void setDivideStatus(Integer divideStatus) {
+        this.divideStatus = divideStatus;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/WorkApprove.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/WorkApprove.java
new file mode 100644
index 0000000..c473a26
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/entity/WorkApprove.java
@@ -0,0 +1,121 @@
+package com.gkhy.safePlatform.targetDuty.entity;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+
+/**
+ * 工作流审批表(WorkApprove)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-22 15:37:13
+ */
+@SuppressWarnings("serial")
+@TableName("work_approve")
+public class WorkApprove extends BaseDomain {
+	
+	
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+                //流程名称
+    private String workName;
+        
+    public String getWorkName() {
+        return workName;
+    }
+
+    public void setWorkName(String workName) {
+        this.workName = workName;
+    }
+                //流程标题
+    private String title;
+        
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+                //提交人ID/外键
+    private Long submitPersonId;
+        
+    public Long getSubmitPersonId() {
+        return submitPersonId;
+    }
+
+    public void setSubmitPersonId(Long submitPersonId) {
+        this.submitPersonId = submitPersonId;
+    }
+                //审批人ID/外键
+    private Long approvePersonId;
+        
+    public Long getApprovePersonId() {
+        return approvePersonId;
+    }
+
+    public void setApprovePersonId(Long approvePersonId) {
+        this.approvePersonId = approvePersonId;
+    }
+                //审批状态 1:未审批 2:审批中 3:审批完成
+    private Integer approveStatus;
+        
+    public Integer getApproveStatus() {
+        return approveStatus;
+    }
+
+    public void setApproveStatus(Integer approveStatus) {
+        this.approveStatus = approveStatus;
+    }
+                //审批意见
+    private String approveMemo;
+        
+    public String getApproveMemo() {
+        return approveMemo;
+    }
+
+    public void setApproveMemo(String approveMemo) {
+        this.approveMemo = approveMemo;
+    }
+                //关联业务类型 1:目标检查 2:目标上报
+    private Integer relateType;
+        
+    public Integer getRelateType() {
+        return relateType;
+    }
+
+    public void setRelateType(Integer relateType) {
+        this.relateType = relateType;
+    }
+                //关联的审批对象表ID
+    private Long relateId;
+        
+    public Long getRelateId() {
+        return relateId;
+    }
+
+    public void setRelateId(Long relateId) {
+        this.relateId = relateId;
+    }
+                //关联业务说明
+    private String relateDesc;
+        
+    public String getRelateDesc() {
+        return relateDesc;
+    }
+
+    public void setRelateDesc(String relateDesc) {
+        this.relateDesc = relateDesc;
+    }
+            
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/enums/TargetDutyResultCodes.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/enums/TargetDutyResultCodes.java
new file mode 100644
index 0000000..e4ade25
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/enums/TargetDutyResultCodes.java
@@ -0,0 +1,32 @@
+package com.gkhy.safePlatform.targetDuty.enums;
+
+public enum TargetDutyResultCodes {
+    E1("T1001" , "关联的目标指标不存在"),
+    E2("T1002" , "关联的目标指标已被分解"),
+
+    ERROR("A3000", "未知错误");
+
+    private String code;
+    private String desc;
+
+    private TargetDutyResultCodes(String code, String desc) {
+        this.code = code;
+        this.desc = desc;
+    }
+
+    public String getCode() {
+        return this.code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public String getDesc() {
+        return this.desc;
+    }
+
+    public void setDesc(String desc) {
+        this.desc = desc;
+    }
+}
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/excepiton/TargetDutyException.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/excepiton/TargetDutyException.java
new file mode 100644
index 0000000..4968b0a
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/excepiton/TargetDutyException.java
@@ -0,0 +1,38 @@
+
+package com.gkhy.safePlatform.targetDuty.excepiton;
+
+import com.gkhy.safePlatform.targetDuty.enums.TargetDutyResultCodes;
+
+public class TargetDutyException extends RuntimeException {
+    private String code;
+    private String message;
+
+    public TargetDutyException(TargetDutyResultCodes error) {
+        super(error.getDesc());
+        this.code = error.getCode();
+        this.message = error.getDesc();
+    }
+
+    public TargetDutyException(String code, String message) {
+        super(message);
+        this.code = code;
+        this.message = message;
+    }
+
+    public String getCode() {
+        return this.code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public String getMessage() {
+        return this.message;
+    }
+
+    public void setMessage(String message) {
+        this.message = message;
+    }
+}
+
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineItemQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineItemQueryCriteria.java
new file mode 100644
index 0000000..e76282c
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineItemQueryCriteria.java
@@ -0,0 +1,107 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class ExamineItemQueryCriteria {
+        
+    @Query()
+    private Long id;
+    //绩效考核模板ID/外键    
+    @Query()
+    private Long examineTemplateId;
+    //类型    
+    @Query()
+    private String itemType;
+    //考核项目    
+    @Query()
+    private String itemDetail;
+    //考核内容    
+    @Query()
+    private String content;
+    //评定标准    
+    @Query()
+    private String judgeStandard;
+    //考核说明    
+    @Query()
+    private String memo;
+        
+    @Query()
+    private Timestamp createTime;
+        
+    @Query()
+    private Timestamp updateTime;
+
+            
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //绩效考核模板ID/外键        
+    public Long getExamineTemplateId() {
+        return examineTemplateId;
+    }
+
+    public void setExamineTemplateId(Long examineTemplateId) {
+        this.examineTemplateId = examineTemplateId;
+    }
+    //类型        
+    public String getItemType() {
+        return itemType;
+    }
+
+    public void setItemType(String itemType) {
+        this.itemType = itemType;
+    }
+    //考核项目        
+    public String getItemDetail() {
+        return itemDetail;
+    }
+
+    public void setItemDetail(String itemDetail) {
+        this.itemDetail = itemDetail;
+    }
+    //考核内容        
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+    //评定标准        
+    public String getJudgeStandard() {
+        return judgeStandard;
+    }
+
+    public void setJudgeStandard(String judgeStandard) {
+        this.judgeStandard = judgeStandard;
+    }
+    //考核说明        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineMngQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineMngQueryCriteria.java
new file mode 100644
index 0000000..1d117ad
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineMngQueryCriteria.java
@@ -0,0 +1,19 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class ExamineMngQueryCriteria {
+        
+    //考核部门ID/外键
+    @Query()
+    private Long examineDepartmentId;
+    //考核部门ID/外键
+    public Long getExamineDepartmentId() {
+        return examineDepartmentId;
+    }
+
+    public void setExamineDepartmentId(Long examineDepartmentId) {
+        this.examineDepartmentId = examineDepartmentId;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineTemplateQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineTemplateQueryCriteria.java
new file mode 100644
index 0000000..d387bbc
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineTemplateQueryCriteria.java
@@ -0,0 +1,19 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class ExamineTemplateQueryCriteria {
+        
+    //标准标题
+    @Query(type = Query.Type.INNER_LIKE)
+    private String title;
+    //标准标题
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineTemplateSaveOrUpdate.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineTemplateSaveOrUpdate.java
new file mode 100644
index 0000000..303a4bf
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/ExamineTemplateSaveOrUpdate.java
@@ -0,0 +1,116 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
+
+import java.io.Serializable;
+import java.sql.Timestamp;
+import java.util.ArrayList;
+import java.util.List;
+
+public class ExamineTemplateSaveOrUpdate implements Serializable {
+
+
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    //标准标题
+    private String title;
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+    //适用范围
+    private String applyRange;
+
+    public String getApplyRange() {
+        return applyRange;
+    }
+
+    public void setApplyRange(String applyRange) {
+        this.applyRange = applyRange;
+    }
+    //模板分类编码
+    private String templateCode;
+
+    public String getTemplateCode() {
+        return templateCode;
+    }
+
+    public void setTemplateCode(String templateCode) {
+        this.templateCode = templateCode;
+    }
+    //合格分数
+    private String acceptanceNumber;
+
+    public String getAcceptanceNumber() {
+        return acceptanceNumber;
+    }
+
+    public void setAcceptanceNumber(String acceptanceNumber) {
+        this.acceptanceNumber = acceptanceNumber;
+    }
+    //备注信息
+    private String memo;
+
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+
+    private Long setPersonId;
+
+    public Long getSetPersonId() {
+        return setPersonId;
+    }
+
+    public void setSetPersonId(Long setPersonId) {
+        this.setPersonId = setPersonId;
+    }
+
+    private Long setPersonDepartmentId;
+
+    public Long getSetPersonDepartmentId() {
+        return setPersonDepartmentId;
+    }
+
+    public void setSetPersonDepartmentId(Long setPersonDepartmentId) {
+        this.setPersonDepartmentId = setPersonDepartmentId;
+    }
+
+    private List<ExamineItem> examineItemList = new ArrayList<>();
+
+    public List<ExamineItem> getExamineItemList() {
+        return examineItemList;
+    }
+
+    public void setExamineItemList(List<ExamineItem> examineItemList) {
+        this.examineItemList = examineItemList;
+    }
+
+    private String delExamineItems;
+
+    public String getDelExamineItems() {
+        return delExamineItems;
+    }
+
+    public void setDelExamineItems(String delExamineItems) {
+        this.delExamineItems = delExamineItems;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/RewardPunishmentDetailQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/RewardPunishmentDetailQueryCriteria.java
new file mode 100644
index 0000000..6bfcbed
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/RewardPunishmentDetailQueryCriteria.java
@@ -0,0 +1,19 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class RewardPunishmentDetailQueryCriteria {
+        
+    //员工(多个用逗号隔开)
+    @Query()
+    private String personId;
+    //员工(多个用逗号隔开)
+    public String getPersonId() {
+        return personId;
+    }
+
+    public void setPersonId(String personId) {
+        this.personId = personId;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/RewardPunishmentStandardQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/RewardPunishmentStandardQueryCriteria.java
new file mode 100644
index 0000000..dd55d2f
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/RewardPunishmentStandardQueryCriteria.java
@@ -0,0 +1,19 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class RewardPunishmentStandardQueryCriteria {
+        
+    //奖惩类型 1:奖励 2:惩罚
+    @Query()
+    private Integer standardType;
+    //奖惩类型 1:奖励 2:惩罚
+    public Integer getStandardType() {
+        return standardType;
+    }
+
+    public void setStandardType(Integer standardType) {
+        this.standardType = standardType;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/SubmitApprove.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/SubmitApprove.java
new file mode 100644
index 0000000..2b67818
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/SubmitApprove.java
@@ -0,0 +1,59 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.gkhy.safePlatform.targetDuty.entity.BaseDomain;
+
+/**
+ * (WorkApprove)表实体类
+ *
+ * @author xurui
+ * @since 2022-07-22 10:46:11
+ */
+@SuppressWarnings("serial")
+public class SubmitApprove extends BaseDomain {
+    //流程标题
+    private String title;
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+                //提交人ID/外键
+    private Long submitPersonId;
+        
+    public Long getSubmitPersonId() {
+        return submitPersonId;
+    }
+
+    public void setSubmitPersonId(Long submitPersonId) {
+        this.submitPersonId = submitPersonId;
+    }
+
+                //关联业务类型 1:目标检查 2:目标上报
+    private Integer relateType;
+        
+    public Integer getRelateType() {
+        return relateType;
+    }
+
+    public void setRelateType(Integer relateType) {
+        this.relateType = relateType;
+    }
+                //关联的审批对象表ID
+    private Long relateId;
+        
+    public Long getRelateId() {
+        return relateId;
+    }
+
+    public void setRelateId(Long relateId) {
+        this.relateId = relateId;
+    }
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDivideDetailQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDivideDetailQueryCriteria.java
new file mode 100644
index 0000000..063ce74
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDivideDetailQueryCriteria.java
@@ -0,0 +1,107 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class TargetDivideDetailQueryCriteria {
+        
+    @Query()
+    private Long id;
+    //关联的目标指标/外键    
+    @Query()
+    private Long targetId;
+    //考核指标值    
+    @Query()
+    private String value;
+    //制定日期    
+    @Query()
+    private Timestamp makeDate;
+    //责任部门/外键    
+    @Query()
+    private Long dutyDepartmentId;
+    //制定人部门/外键    
+    @Query()
+    private Long makerDepartmentId;
+    //上报人/外键    
+    @Query()
+    private Long commitPersonId;
+        
+    @Query()
+    private Timestamp createTime;
+        
+    @Query()
+    private Timestamp updateTime;
+
+            
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //关联的目标指标/外键        
+    public Long getTargetId() {
+        return targetId;
+    }
+
+    public void setTargetId(Long targetId) {
+        this.targetId = targetId;
+    }
+    //考核指标值        
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+    //制定日期        
+    public Timestamp getMakeDate() {
+        return makeDate;
+    }
+
+    public void setMakeDate(Timestamp makeDate) {
+        this.makeDate = makeDate;
+    }
+    //责任部门/外键        
+    public Long getDutyDepartmentId() {
+        return dutyDepartmentId;
+    }
+
+    public void setDutyDepartmentId(Long dutyDepartmentId) {
+        this.dutyDepartmentId = dutyDepartmentId;
+    }
+    //制定人部门/外键        
+    public Long getMakerDepartmentId() {
+        return makerDepartmentId;
+    }
+
+    public void setMakerDepartmentId(Long makerDepartmentId) {
+        this.makerDepartmentId = makerDepartmentId;
+    }
+    //上报人/外键        
+    public Long getCommitPersonId() {
+        return commitPersonId;
+    }
+
+    public void setCommitPersonId(Long commitPersonId) {
+        this.commitPersonId = commitPersonId;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDivideDetailSaveOrUpdate.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDivideDetailSaveOrUpdate.java
new file mode 100644
index 0000000..baf6d10
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDivideDetailSaveOrUpdate.java
@@ -0,0 +1,46 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
+
+import java.io.Serializable;
+import java.sql.Timestamp;
+import java.util.ArrayList;
+import java.util.List;
+
+public class TargetDivideDetailSaveOrUpdate implements Serializable {
+
+    //关联的目标指标/外键
+    private Long targetId;
+
+    //目标指标分解列表
+    private List<TargetDivideDetail> targetDivideDetailList = new ArrayList<>();
+
+    //要删除的目标指标分解ID,多个用逗号隔开
+    private String delTargetDivideDetails;
+
+    public String getDelTargetDivideDetails() {
+        return delTargetDivideDetails;
+    }
+
+    public void setDelTargetDivideDetails(String delTargetDivideDetails) {
+        this.delTargetDivideDetails = delTargetDivideDetails;
+    }
+
+    public List<TargetDivideDetail> getTargetDivideDetailList() {
+        return targetDivideDetailList;
+    }
+
+    public void setTargetDivideDetailList(List<TargetDivideDetail> targetDivideDetailList) {
+        this.targetDivideDetailList = targetDivideDetailList;
+    }
+
+    public Long getTargetId() {
+        return targetId;
+    }
+
+    public void setTargetId(Long targetId) {
+        this.targetId = targetId;
+    }
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDutySummaryQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDutySummaryQueryCriteria.java
new file mode 100644
index 0000000..bcef26f
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDutySummaryQueryCriteria.java
@@ -0,0 +1,29 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class TargetDutySummaryQueryCriteria {
+        
+    //年度
+    @Query()
+    private String year;
+    //责任部门/外键    
+    @Query()
+    private Long departmentId;
+    //年度
+    public String getYear() {
+        return year;
+    }
+
+    public void setYear(String year) {
+        this.year = year;
+    }
+    //责任部门/外键        
+    public Long getDepartmentId() {
+        return departmentId;
+    }
+
+    public void setDepartmentId(Long departmentId) {
+        this.departmentId = departmentId;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDutyfileInfoQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDutyfileInfoQueryCriteria.java
new file mode 100644
index 0000000..2914c31
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetDutyfileInfoQueryCriteria.java
@@ -0,0 +1,19 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class TargetDutyfileInfoQueryCriteria {
+    //岗位号/外键
+    @Query()
+    private Long jobId;
+
+    //岗位号/外键
+    public Long getJobId() {
+        return jobId;
+    }
+
+    public void setJobId(Long jobId) {
+        this.jobId = jobId;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineQueryCriteria.java
new file mode 100644
index 0000000..f0c9021
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineQueryCriteria.java
@@ -0,0 +1,18 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class TargetExamineQueryCriteria {
+    //关联的目标指标/外键
+    @Query()
+    private Long targetId;
+    //关联的目标指标/外键
+    public Long getTargetId() {
+        return targetId;
+    }
+
+    public void setTargetId(Long targetId) {
+        this.targetId = targetId;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineSaveOrUpdate.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineSaveOrUpdate.java
new file mode 100644
index 0000000..f295e23
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetExamineSaveOrUpdate.java
@@ -0,0 +1,46 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+import com.gkhy.safePlatform.targetDuty.entity.TargetExamine;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+public class TargetExamineSaveOrUpdate implements Serializable {
+
+
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    //关联的考核数据列表
+    private List<TargetExamine> examineList = new ArrayList<>();
+
+    public List<TargetExamine> getExamineList() {
+        return examineList;
+    }
+
+    public void setExamineList(List<TargetExamine> examineList) {
+        this.examineList = examineList;
+    }
+
+    //要删除的id集合,多个用逗号隔开
+    private String delIds;
+
+    public String getDelIds() {
+        return delIds;
+    }
+
+    public void setDelIds(String delIds) {
+        this.delIds = delIds;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetMngQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetMngQueryCriteria.java
new file mode 100644
index 0000000..19af780
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/TargetMngQueryCriteria.java
@@ -0,0 +1,54 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class TargetMngQueryCriteria {
+    //安全目标指标
+    @Query(type = Query.Type.INNER_LIKE)
+    private String qName;
+    //目标指标编号    
+    @Query(type = Query.Type.INNER_LIKE)
+    private String indexNum;
+    //指标类型 1:年指标 2:月指标
+    @Query()
+    private Integer targetType;
+    //分解状态 1:已分解 2:未分解
+    @Query()
+    private Integer divideStatus;
+
+    public Integer getDivideStatus() {
+        return divideStatus;
+    }
+
+    public void setDivideStatus(Integer divideStatus) {
+        this.divideStatus = divideStatus;
+    }
+
+    //安全目标指标
+
+    public String getqName() {
+        return qName;
+    }
+
+    public void setqName(String qName) {
+        this.qName = qName;
+    }
+
+    //目标指标编号
+    public String getIndexNum() {
+        return indexNum;
+    }
+
+    public void setIndexNum(String indexNum) {
+        this.indexNum = indexNum;
+    }
+    //指标类型 1:年指标 2:月指标
+    public Integer getTargetType() {
+        return targetType;
+    }
+
+    public void setTargetType(Integer targetType) {
+        this.targetType = targetType;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/WorkApproveQueryCriteria.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/WorkApproveQueryCriteria.java
new file mode 100644
index 0000000..e2ec35c
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/req/WorkApproveQueryCriteria.java
@@ -0,0 +1,118 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.req;
+
+import java.sql.Timestamp;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+public class WorkApproveQueryCriteria {
+        
+    @Query()
+    private Long id;
+    //提交人ID/外键    
+    @Query()
+    private Long submitPersonId;
+    //审批人ID/外键    
+    @Query()
+    private Long approvePersonId;
+    //审批状态 1:未审批 2:审批中 3:审批完成    
+    @Query()
+    private Integer approveStatus;
+    //审批意见    
+    @Query()
+    private String approveMemo;
+    //关联业务类型 1:目标检查 2:目标上报    
+    @Query()
+    private Integer relateType;
+    //关联的审批对象表ID    
+    @Query()
+    private Long relateId;
+    //关联业务说明    
+    @Query()
+    private String relateDesc;
+        
+    @Query()
+    private Timestamp createTime;
+        
+    @Query()
+    private Timestamp updateTime;
+
+            
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //提交人ID/外键        
+    public Long getSubmitPersonId() {
+        return submitPersonId;
+    }
+
+    public void setSubmitPersonId(Long submitPersonId) {
+        this.submitPersonId = submitPersonId;
+    }
+    //审批人ID/外键        
+    public Long getApprovePersonId() {
+        return approvePersonId;
+    }
+
+    public void setApprovePersonId(Long approvePersonId) {
+        this.approvePersonId = approvePersonId;
+    }
+    //审批状态 1:未审批 2:审批中 3:审批完成        
+    public Integer getApproveStatus() {
+        return approveStatus;
+    }
+
+    public void setApproveStatus(Integer approveStatus) {
+        this.approveStatus = approveStatus;
+    }
+    //审批意见        
+    public String getApproveMemo() {
+        return approveMemo;
+    }
+
+    public void setApproveMemo(String approveMemo) {
+        this.approveMemo = approveMemo;
+    }
+    //关联业务类型 1:目标检查 2:目标上报        
+    public Integer getRelateType() {
+        return relateType;
+    }
+
+    public void setRelateType(Integer relateType) {
+        this.relateType = relateType;
+    }
+    //关联的审批对象表ID        
+    public Long getRelateId() {
+        return relateId;
+    }
+
+    public void setRelateId(Long relateId) {
+        this.relateId = relateId;
+    }
+    //关联业务说明        
+    public String getRelateDesc() {
+        return relateDesc;
+    }
+
+    public void setRelateDesc(String relateDesc) {
+        this.relateDesc = relateDesc;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/CurrentExamineDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/CurrentExamineDto.java
new file mode 100644
index 0000000..c898771
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/CurrentExamineDto.java
@@ -0,0 +1,51 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+
+import java.io.Serializable;
+import java.sql.Timestamp;
+import java.util.List;
+
+public class CurrentExamineDto implements Serializable {
+
+
+    private Long id;
+    //考核项目
+    private String itemDetail;
+    //考核内容
+    private String content;
+    //本次得分
+    private String number;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getItemDetail() {
+        return itemDetail;
+    }
+
+    public void setItemDetail(String itemDetail) {
+        this.itemDetail = itemDetail;
+    }
+
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+
+    public String getNumber() {
+        return number;
+    }
+
+    public void setNumber(String number) {
+        this.number = number;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineItemDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineItemDto.java
new file mode 100644
index 0000000..b0d68ce
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineItemDto.java
@@ -0,0 +1,98 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+
+public class ExamineItemDto implements Serializable {
+        
+    private Long id;
+    //绩效考核模板ID/外键    
+    private Long examineTemplateId;
+    //类型    
+    private String itemType;
+    //考核项目    
+    private String itemDetail;
+    //考核内容    
+    private String content;
+    //评定标准    
+    private String judgeStandard;
+    //考核说明    
+    private String memo;
+        
+    private Timestamp createTime;
+        
+    private Timestamp updateTime;
+
+            
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //绩效考核模板ID/外键        
+    public Long getExamineTemplateId() {
+        return examineTemplateId;
+    }
+
+    public void setExamineTemplateId(Long examineTemplateId) {
+        this.examineTemplateId = examineTemplateId;
+    }
+    //类型        
+    public String getItemType() {
+        return itemType;
+    }
+
+    public void setItemType(String itemType) {
+        this.itemType = itemType;
+    }
+    //考核项目        
+    public String getItemDetail() {
+        return itemDetail;
+    }
+
+    public void setItemDetail(String itemDetail) {
+        this.itemDetail = itemDetail;
+    }
+    //考核内容        
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+    //评定标准        
+    public String getJudgeStandard() {
+        return judgeStandard;
+    }
+
+    public void setJudgeStandard(String judgeStandard) {
+        this.judgeStandard = judgeStandard;
+    }
+    //考核说明        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineMngDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineMngDto.java
new file mode 100644
index 0000000..b57078f
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineMngDto.java
@@ -0,0 +1,172 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+public class ExamineMngDto implements Serializable {
+        
+    private Long id;
+    //绩效考核模板ID/外键    
+    private Long examineTemplateId;
+    //考核标题    
+    private String title;
+    //考核项目    
+    private String itemDetail;
+    //考核日期    
+    private Timestamp examineDate;
+    //总分
+    private String examineTotalNumber;
+    //考核说明    
+    private String memo;
+    //考核人ID/外键    
+    private String examinePersonId;
+    //被考核人ID/外键(可能有多个,用逗号隔开)    
+    private String beExaminedPersonId;
+    //考核部门ID/外键(可能有多个,用逗号隔开)    
+    private Long examineDepartmentId;
+    //被考核部门ID/外键    
+    private Long beExaminedDepartmentId;
+    //附件    
+    private String extraFile;
+    //各个考核项目的具体得分,json格式。    
+    private String numberDetailJson;
+        
+    private Timestamp createTime;
+        
+    private Timestamp updateTime;
+
+    //打分明细
+    private List<CurrentExamineDto> currentExamineDtoList = new ArrayList<>();
+
+    public List<CurrentExamineDto> getCurrentExamineDtoList() {
+        return currentExamineDtoList;
+    }
+
+    public void setCurrentExamineDtoList(List<CurrentExamineDto> currentExamineDtoList) {
+        this.currentExamineDtoList = currentExamineDtoList;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //绩效考核模板ID/外键        
+    public Long getExamineTemplateId() {
+        return examineTemplateId;
+    }
+
+    public void setExamineTemplateId(Long examineTemplateId) {
+        this.examineTemplateId = examineTemplateId;
+    }
+    //考核标题        
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+    //考核项目        
+    public String getItemDetail() {
+        return itemDetail;
+    }
+
+    public void setItemDetail(String itemDetail) {
+        this.itemDetail = itemDetail;
+    }
+    //考核日期        
+    public Timestamp getExamineDate() {
+        return examineDate;
+    }
+
+    public void setExamineDate(Timestamp examineDate) {
+        this.examineDate = examineDate;
+    }
+    //总分
+    public String getExamineTotalNumber() {
+        return examineTotalNumber;
+    }
+
+    public void setExamineTotalNumber(String examineTotalNumber) {
+        this.examineTotalNumber = examineTotalNumber;
+    }
+    //考核说明        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+    //考核人ID/外键        
+    public String getExaminePersonId() {
+        return examinePersonId;
+    }
+
+    public void setExaminePersonId(String examinePersonId) {
+        this.examinePersonId = examinePersonId;
+    }
+    //被考核人ID/外键(可能有多个,用逗号隔开)        
+    public String getBeExaminedPersonId() {
+        return beExaminedPersonId;
+    }
+
+    public void setBeExaminedPersonId(String beExaminedPersonId) {
+        this.beExaminedPersonId = beExaminedPersonId;
+    }
+    //考核部门ID/外键(可能有多个,用逗号隔开)        
+    public Long getExamineDepartmentId() {
+        return examineDepartmentId;
+    }
+
+    public void setExamineDepartmentId(Long examineDepartmentId) {
+        this.examineDepartmentId = examineDepartmentId;
+    }
+    //被考核部门ID/外键        
+    public Long getBeExaminedDepartmentId() {
+        return beExaminedDepartmentId;
+    }
+
+    public void setBeExaminedDepartmentId(Long beExaminedDepartmentId) {
+        this.beExaminedDepartmentId = beExaminedDepartmentId;
+    }
+    //附件        
+    public String getExtraFile() {
+        return extraFile;
+    }
+
+    public void setExtraFile(String extraFile) {
+        this.extraFile = extraFile;
+    }
+    //各个考核项目的具体得分,json格式。        
+    public String getNumberDetailJson() {
+        return numberDetailJson;
+    }
+
+    public void setNumberDetailJson(String numberDetailJson) {
+        this.numberDetailJson = numberDetailJson;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineTemplateDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineTemplateDto.java
new file mode 100644
index 0000000..79a0c0d
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/ExamineTemplateDto.java
@@ -0,0 +1,131 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+import java.util.List;
+
+public class ExamineTemplateDto implements Serializable {
+        
+    private Long id;
+    //标准标题    
+    private String title;
+    //适用范围    
+    private String applyRange;
+    //模板分类编码    
+    private String templateCode;
+    //合格分数    
+    private String acceptanceNumber;
+    //备注信息    
+    private String memo;
+        
+    private Long setPersonId;
+        
+    private Long setPersonDepartmentId;
+        
+    private Timestamp setTimem;
+        
+    private Timestamp createTime;
+        
+    private Timestamp updateTime;
+
+    private List<ExamineItem> examineItemList;
+
+
+    public List<ExamineItem> getExamineItemList() {
+        return examineItemList;
+    }
+
+    public void setExamineItemList(List<ExamineItem> examineItemList) {
+        this.examineItemList = examineItemList;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //标准标题        
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+    //适用范围        
+    public String getApplyRange() {
+        return applyRange;
+    }
+
+    public void setApplyRange(String applyRange) {
+        this.applyRange = applyRange;
+    }
+    //模板分类编码        
+    public String getTemplateCode() {
+        return templateCode;
+    }
+
+    public void setTemplateCode(String templateCode) {
+        this.templateCode = templateCode;
+    }
+    //合格分数        
+    public String getAcceptanceNumber() {
+        return acceptanceNumber;
+    }
+
+    public void setAcceptanceNumber(String acceptanceNumber) {
+        this.acceptanceNumber = acceptanceNumber;
+    }
+    //备注信息        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+            
+    public Long getSetPersonId() {
+        return setPersonId;
+    }
+
+    public void setSetPersonId(Long setPersonId) {
+        this.setPersonId = setPersonId;
+    }
+            
+    public Long getSetPersonDepartmentId() {
+        return setPersonDepartmentId;
+    }
+
+    public void setSetPersonDepartmentId(Long setPersonDepartmentId) {
+        this.setPersonDepartmentId = setPersonDepartmentId;
+    }
+            
+    public Timestamp getSetTimem() {
+        return setTimem;
+    }
+
+    public void setSetTimem(Timestamp setTimem) {
+        this.setTimem = setTimem;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/RewardPunishmentDetailDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/RewardPunishmentDetailDto.java
new file mode 100644
index 0000000..7a56299
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/RewardPunishmentDetailDto.java
@@ -0,0 +1,68 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+
+public class RewardPunishmentDetailDto implements Serializable {
+        
+    private Long id;
+    //奖惩类型 1:奖励 2:惩罚    
+    private Long rewardPunishmentStandardId;
+    //员工(多个用逗号隔开)    
+    private String personId;
+    //备注信息    
+    private String memo;
+        
+    private Timestamp createTime;
+        
+    private Timestamp updateTime;
+
+            
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //奖惩类型 1:奖励 2:惩罚        
+    public Long getRewardPunishmentStandardId() {
+        return rewardPunishmentStandardId;
+    }
+
+    public void setRewardPunishmentStandardId(Long rewardPunishmentStandardId) {
+        this.rewardPunishmentStandardId = rewardPunishmentStandardId;
+    }
+    //员工(多个用逗号隔开)        
+    public String getPersonId() {
+        return personId;
+    }
+
+    public void setPersonId(String personId) {
+        this.personId = personId;
+    }
+    //备注信息        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/RewardPunishmentStandardDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/RewardPunishmentStandardDto.java
new file mode 100644
index 0000000..83fe943
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/RewardPunishmentStandardDto.java
@@ -0,0 +1,88 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+
+public class RewardPunishmentStandardDto implements Serializable {
+        
+    private Long id;
+    //奖惩类型 1:奖励 2:惩罚    
+    private Integer standardType;
+    //奖惩内容    
+    private String content;
+    //奖惩名称    
+    private String qName;
+    //依据    
+    private String reason;
+    //备注信息    
+    private String memo;
+        
+    private Timestamp createTime;
+        
+    private Timestamp updateTime;
+
+            
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //奖惩类型 1:奖励 2:惩罚        
+    public Integer getStandardType() {
+        return standardType;
+    }
+
+    public void setStandardType(Integer standardType) {
+        this.standardType = standardType;
+    }
+    //奖惩内容        
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+    //奖惩名称        
+    public String getQName() {
+        return qName;
+    }
+
+    public void setQName(String qName) {
+        this.qName = qName;
+    }
+    //依据        
+    public String getReason() {
+        return reason;
+    }
+
+    public void setReason(String reason) {
+        this.reason = reason;
+    }
+    //备注信息        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDivideDetailDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDivideDetailDto.java
new file mode 100644
index 0000000..6da9443
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDivideDetailDto.java
@@ -0,0 +1,98 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+
+public class TargetDivideDetailDto implements Serializable {
+        
+    private Long id;
+    //关联的目标指标/外键    
+    private Long targetId;
+    //考核指标值    
+    private String value;
+    //制定日期    
+    private Timestamp makeDate;
+    //责任部门/外键    
+    private Long dutyDepartmentId;
+    //制定人部门/外键    
+    private Long makerDepartmentId;
+    //上报人/外键    
+    private Long commitPersonId;
+        
+    private Timestamp createTime;
+        
+    private Timestamp updateTime;
+
+            
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //关联的目标指标/外键        
+    public Long getTargetId() {
+        return targetId;
+    }
+
+    public void setTargetId(Long targetId) {
+        this.targetId = targetId;
+    }
+    //考核指标值        
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+    //制定日期        
+    public Timestamp getMakeDate() {
+        return makeDate;
+    }
+
+    public void setMakeDate(Timestamp makeDate) {
+        this.makeDate = makeDate;
+    }
+    //责任部门/外键        
+    public Long getDutyDepartmentId() {
+        return dutyDepartmentId;
+    }
+
+    public void setDutyDepartmentId(Long dutyDepartmentId) {
+        this.dutyDepartmentId = dutyDepartmentId;
+    }
+    //制定人部门/外键        
+    public Long getMakerDepartmentId() {
+        return makerDepartmentId;
+    }
+
+    public void setMakerDepartmentId(Long makerDepartmentId) {
+        this.makerDepartmentId = makerDepartmentId;
+    }
+    //上报人/外键        
+    public Long getCommitPersonId() {
+        return commitPersonId;
+    }
+
+    public void setCommitPersonId(Long commitPersonId) {
+        this.commitPersonId = commitPersonId;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutySummaryDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutySummaryDto.java
new file mode 100644
index 0000000..248c7e1
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutySummaryDto.java
@@ -0,0 +1,218 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+
+public class TargetDutySummaryDto implements Serializable {
+        
+    private Long id;
+    //年度    
+    private String year;
+    //责任部门/外键    
+    private Long departmentId;
+    //安全目标指标    
+    private String targetValue;
+    //考核指标    
+    private String examineValue;
+    //考核指标 1:合格 2:不合格    
+    private Integer examineResult;
+    //月份    
+    private String yiYue;
+        
+    private String february;
+        
+    private String erYue;
+        
+    private String sanYue;
+        
+    private String siYue;
+        
+    private String wuYue;
+        
+    private String liuYue;
+        
+    private String qiYue;
+        
+    private String baYue;
+        
+    private String jiuYue;
+        
+    private String shiYue;
+        
+    private String shiyiYue;
+        
+    private String shierYue;
+        
+    private Timestamp createTime;
+        
+    private Timestamp updateTime;
+
+            
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //年度        
+    public String getYear() {
+        return year;
+    }
+
+    public void setYear(String year) {
+        this.year = year;
+    }
+    //责任部门/外键        
+    public Long getDepartmentId() {
+        return departmentId;
+    }
+
+    public void setDepartmentId(Long departmentId) {
+        this.departmentId = departmentId;
+    }
+    //安全目标指标        
+    public String getTargetValue() {
+        return targetValue;
+    }
+
+    public void setTargetValue(String targetValue) {
+        this.targetValue = targetValue;
+    }
+    //考核指标        
+    public String getExamineValue() {
+        return examineValue;
+    }
+
+    public void setExamineValue(String examineValue) {
+        this.examineValue = examineValue;
+    }
+    //考核指标 1:合格 2:不合格        
+    public Integer getExamineResult() {
+        return examineResult;
+    }
+
+    public void setExamineResult(Integer examineResult) {
+        this.examineResult = examineResult;
+    }
+    //月份        
+    public String getYiYue() {
+        return yiYue;
+    }
+
+    public void setYiYue(String yiYue) {
+        this.yiYue = yiYue;
+    }
+            
+    public String getFebruary() {
+        return february;
+    }
+
+    public void setFebruary(String february) {
+        this.february = february;
+    }
+            
+    public String getErYue() {
+        return erYue;
+    }
+
+    public void setErYue(String erYue) {
+        this.erYue = erYue;
+    }
+            
+    public String getSanYue() {
+        return sanYue;
+    }
+
+    public void setSanYue(String sanYue) {
+        this.sanYue = sanYue;
+    }
+            
+    public String getSiYue() {
+        return siYue;
+    }
+
+    public void setSiYue(String siYue) {
+        this.siYue = siYue;
+    }
+            
+    public String getWuYue() {
+        return wuYue;
+    }
+
+    public void setWuYue(String wuYue) {
+        this.wuYue = wuYue;
+    }
+            
+    public String getLiuYue() {
+        return liuYue;
+    }
+
+    public void setLiuYue(String liuYue) {
+        this.liuYue = liuYue;
+    }
+            
+    public String getQiYue() {
+        return qiYue;
+    }
+
+    public void setQiYue(String qiYue) {
+        this.qiYue = qiYue;
+    }
+            
+    public String getBaYue() {
+        return baYue;
+    }
+
+    public void setBaYue(String baYue) {
+        this.baYue = baYue;
+    }
+            
+    public String getJiuYue() {
+        return jiuYue;
+    }
+
+    public void setJiuYue(String jiuYue) {
+        this.jiuYue = jiuYue;
+    }
+            
+    public String getShiYue() {
+        return shiYue;
+    }
+
+    public void setShiYue(String shiYue) {
+        this.shiYue = shiYue;
+    }
+            
+    public String getShiyiYue() {
+        return shiyiYue;
+    }
+
+    public void setShiyiYue(String shiyiYue) {
+        this.shiyiYue = shiyiYue;
+    }
+            
+    public String getShierYue() {
+        return shierYue;
+    }
+
+    public void setShierYue(String shierYue) {
+        this.shierYue = shierYue;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutyfileInfoDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutyfileInfoDto.java
new file mode 100644
index 0000000..37d86a0
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetDutyfileInfoDto.java
@@ -0,0 +1,88 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+
+public class TargetDutyfileInfoDto implements Serializable {
+        
+    private Long id;
+    //序号    
+    private String indexNum;
+    //岗位号/外键    
+    private Long jobId;
+    //责任书签订日期    
+    private Timestamp signDate;
+    //备注信息    
+    private String memo;
+    //责任书附件,多个附件用逗号隔开    
+    private String extraFile;
+        
+    private Timestamp createTime;
+        
+    private Timestamp updateTime;
+
+            
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //序号        
+    public String getIndexNum() {
+        return indexNum;
+    }
+
+    public void setIndexNum(String indexNum) {
+        this.indexNum = indexNum;
+    }
+    //岗位号/外键        
+    public Long getJobId() {
+        return jobId;
+    }
+
+    public void setJobId(Long jobId) {
+        this.jobId = jobId;
+    }
+    //责任书签订日期        
+    public Timestamp getSignDate() {
+        return signDate;
+    }
+
+    public void setSignDate(Timestamp signDate) {
+        this.signDate = signDate;
+    }
+    //备注信息        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+    //责任书附件,多个附件用逗号隔开        
+    public String getExtraFile() {
+        return extraFile;
+    }
+
+    public void setExtraFile(String extraFile) {
+        this.extraFile = extraFile;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetExamineDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetExamineDto.java
new file mode 100644
index 0000000..e356fa8
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetExamineDto.java
@@ -0,0 +1,70 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import com.gkhy.safePlatform.targetDuty.entity.TargetExamine;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+public class TargetExamineDto implements Serializable {
+    private Long id;
+    //安全目标指标
+    private String name;
+    //目标指标编号
+    private String indexNum;
+    //年度
+    private String year;
+    //指标值
+    private String value;
+    //关联的考核数据列表
+    private List<TargetExamine> examineList = new ArrayList<>();
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getIndexNum() {
+        return indexNum;
+    }
+
+    public void setIndexNum(String indexNum) {
+        this.indexNum = indexNum;
+    }
+
+    public String getYear() {
+        return year;
+    }
+
+    public void setYear(String year) {
+        this.year = year;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    public List<TargetExamine> getExamineList() {
+        return examineList;
+    }
+
+    public void setExamineList(List<TargetExamine> examineList) {
+        this.examineList = examineList;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetMngDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetMngDto.java
new file mode 100644
index 0000000..1ba4e84
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/TargetMngDto.java
@@ -0,0 +1,142 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+public class TargetMngDto implements Serializable {
+        
+    private Long id;
+    //安全目标指标    
+    private String name;
+    //目标指标编号    
+    private String indexNum;
+    //年度    
+    private String year;
+    //指标值    
+    private String value;
+    //指标级别 1:公司级 2:部门分厂级 3:工段班组级    
+    private Integer level;
+    //完成期限    
+    private Timestamp completeDate;
+    //备注信息    
+    private String memo;
+    //指标类型 1:年指标 2:月指标    
+    private Integer targetType;
+    //分解状态 1:已分解 2:未分解    
+    private Integer divideStatus;
+        
+    private Timestamp createTime;
+        
+    private Timestamp updateTime;
+
+    //目标指标分解列表
+    private List<TargetDivideDetail> targetDivideDetailList = new ArrayList<>();
+
+    public List<TargetDivideDetail> getTargetDivideDetailList() {
+        return targetDivideDetailList;
+    }
+
+    public void setTargetDivideDetailList(List<TargetDivideDetail> targetDivideDetailList) {
+        this.targetDivideDetailList = targetDivideDetailList;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //安全目标指标        
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+    //目标指标编号        
+    public String getIndexNum() {
+        return indexNum;
+    }
+
+    public void setIndexNum(String indexNum) {
+        this.indexNum = indexNum;
+    }
+    //年度        
+    public String getYear() {
+        return year;
+    }
+
+    public void setYear(String year) {
+        this.year = year;
+    }
+    //指标值        
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+    //指标级别 1:公司级 2:部门分厂级 3:工段班组级        
+    public Integer getLevel() {
+        return level;
+    }
+
+    public void setLevel(Integer level) {
+        this.level = level;
+    }
+    //完成期限        
+    public Timestamp getCompleteDate() {
+        return completeDate;
+    }
+
+    public void setCompleteDate(Timestamp completeDate) {
+        this.completeDate = completeDate;
+    }
+    //备注信息        
+    public String getMemo() {
+        return memo;
+    }
+
+    public void setMemo(String memo) {
+        this.memo = memo;
+    }
+    //指标类型 1:年指标 2:月指标        
+    public Integer getTargetType() {
+        return targetType;
+    }
+
+    public void setTargetType(Integer targetType) {
+        this.targetType = targetType;
+    }
+    //分解状态 1:已分解 2:未分解        
+    public Integer getDivideStatus() {
+        return divideStatus;
+    }
+
+    public void setDivideStatus(Integer divideStatus) {
+        this.divideStatus = divideStatus;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/WorkApproveDto.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/WorkApproveDto.java
new file mode 100644
index 0000000..79ca1ba
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/model/dto/resp/WorkApproveDto.java
@@ -0,0 +1,108 @@
+package com.gkhy.safePlatform.targetDuty.model.dto.resp;
+
+import java.sql.Timestamp;
+import java.io.Serializable;
+
+public class WorkApproveDto implements Serializable {
+        
+    private Long id;
+    //提交人ID/外键    
+    private Long submitPersonId;
+    //审批人ID/外键    
+    private Long approvePersonId;
+    //审批状态 1:未审批 2:审批中 3:审批完成    
+    private Integer approveStatus;
+    //审批意见    
+    private String approveMemo;
+    //关联业务类型 1:目标检查 2:目标上报    
+    private Integer relateType;
+    //关联的审批对象表ID    
+    private Long relateId;
+    //关联业务说明    
+    private String relateDesc;
+        
+    private Timestamp createTime;
+        
+    private Timestamp updateTime;
+
+            
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    //提交人ID/外键        
+    public Long getSubmitPersonId() {
+        return submitPersonId;
+    }
+
+    public void setSubmitPersonId(Long submitPersonId) {
+        this.submitPersonId = submitPersonId;
+    }
+    //审批人ID/外键        
+    public Long getApprovePersonId() {
+        return approvePersonId;
+    }
+
+    public void setApprovePersonId(Long approvePersonId) {
+        this.approvePersonId = approvePersonId;
+    }
+    //审批状态 1:未审批 2:审批中 3:审批完成        
+    public Integer getApproveStatus() {
+        return approveStatus;
+    }
+
+    public void setApproveStatus(Integer approveStatus) {
+        this.approveStatus = approveStatus;
+    }
+    //审批意见        
+    public String getApproveMemo() {
+        return approveMemo;
+    }
+
+    public void setApproveMemo(String approveMemo) {
+        this.approveMemo = approveMemo;
+    }
+    //关联业务类型 1:目标检查 2:目标上报        
+    public Integer getRelateType() {
+        return relateType;
+    }
+
+    public void setRelateType(Integer relateType) {
+        this.relateType = relateType;
+    }
+    //关联的审批对象表ID        
+    public Long getRelateId() {
+        return relateId;
+    }
+
+    public void setRelateId(Long relateId) {
+        this.relateId = relateId;
+    }
+    //关联业务说明        
+    public String getRelateDesc() {
+        return relateDesc;
+    }
+
+    public void setRelateDesc(String relateDesc) {
+        this.relateDesc = relateDesc;
+    }
+            
+    public Timestamp getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Timestamp createTime) {
+        this.createTime = createTime;
+    }
+            
+    public Timestamp getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Timestamp updateTime) {
+        this.updateTime = updateTime;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineItemRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineItemRepository.java
new file mode 100644
index 0000000..f2cdbee
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineItemRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 绩效考核项目(ExamineItem)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-21 11:01:38
+ */
+@Repository
+public interface ExamineItemRepository extends BaseMapper<ExamineItem> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineMngRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineMngRepository.java
new file mode 100644
index 0000000..7530006
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineMngRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineMng;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 安全考核管理(ExamineMng)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-21 13:43:08
+ */
+@Repository
+public interface ExamineMngRepository extends BaseMapper<ExamineMng> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineTemplateRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineTemplateRepository.java
new file mode 100644
index 0000000..2033fdb
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/ExamineTemplateRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineTemplate;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 绩效考核标准(ExamineTemplate)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-21 10:58:10
+ */
+@Repository
+public interface ExamineTemplateRepository extends BaseMapper<ExamineTemplate> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentDetailRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentDetailRepository.java
new file mode 100644
index 0000000..7ff7858
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentDetailRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentDetail;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 奖惩记录(RewardPunishmentDetail)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-21 10:15:45
+ */
+@Repository
+public interface RewardPunishmentDetailRepository extends BaseMapper<RewardPunishmentDetail> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentStandardRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentStandardRepository.java
new file mode 100644
index 0000000..cbc8660
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/RewardPunishmentStandardRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentStandard;
+import org.springframework.stereotype.Repository;
+
+/**
+ * (RewardPunishmentStandard)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-21 10:20:10
+ */
+@Repository
+public interface RewardPunishmentStandardRepository extends BaseMapper<RewardPunishmentStandard> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDivideDetailRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDivideDetailRepository.java
new file mode 100644
index 0000000..8b2b208
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDivideDetailRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 目标指标分解详情(TargetDivideDetail)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-20 13:32:39
+ */
+@Repository
+public interface TargetDivideDetailRepository extends BaseMapper<TargetDivideDetail> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDutySummaryRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDutySummaryRepository.java
new file mode 100644
index 0000000..8baf5a4
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDutySummaryRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDutySummary;
+import org.springframework.stereotype.Repository;
+
+/**
+ * (TargetDutySummary)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-21 15:35:14
+ */
+@Repository
+public interface TargetDutySummaryRepository extends BaseMapper<TargetDutySummary> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDutyfileInfoRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDutyfileInfoRepository.java
new file mode 100644
index 0000000..59a16bb
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetDutyfileInfoRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDutyfileInfo;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 目标责任书(TargetDutyfileInfo)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-21 10:07:54
+ */
+@Repository
+public interface TargetDutyfileInfoRepository extends BaseMapper<TargetDutyfileInfo> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetExamineRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetExamineRepository.java
new file mode 100644
index 0000000..dd27aa5
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetExamineRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.TargetExamine;
+import org.springframework.stereotype.Repository;
+
+/**
+ * (TargetExamine)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-22 09:30:01
+ */
+@Repository
+public interface TargetExamineRepository extends BaseMapper<TargetExamine> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetMngRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetMngRepository.java
new file mode 100644
index 0000000..424f49b
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/TargetMngRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 目标指标(TargetMng)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-20 11:49:22
+ */
+@Repository
+public interface TargetMngRepository extends BaseMapper<TargetMng> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/WorkApproveRepository.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/WorkApproveRepository.java
new file mode 100644
index 0000000..68ae65e
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/repository/WorkApproveRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.safePlatform.targetDuty.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gkhy.safePlatform.targetDuty.entity.WorkApprove;
+import org.springframework.stereotype.Repository;
+
+/**
+ * (WorkApprove)表数据库访问层
+ *
+ * @author xurui
+ * @since 2022-07-22 10:46:11
+ */
+@Repository
+public interface WorkApproveRepository extends BaseMapper<WorkApprove> {
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineItemService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineItemService.java
new file mode 100644
index 0000000..1377608
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineItemService.java
@@ -0,0 +1,23 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineItemQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * 绩效考核项目(ExamineItem)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-21 11:01:38
+ */
+public interface ExamineItemService extends IService<ExamineItem> {
+    ResultVO queryAll(PageQuery<ExamineItemQueryCriteria> pageQuery);
+    
+    List<ExamineItem> queryAll(ExamineItemQueryCriteria criteria);
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineMngService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineMngService.java
new file mode 100644
index 0000000..417588d
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineMngService.java
@@ -0,0 +1,26 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineMng;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineMngQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.ExamineMngDto;
+
+import java.io.Serializable;
+import java.util.List;
+
+
+/**
+ * 安全考核管理(ExamineMng)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-21 13:43:08
+ */
+public interface ExamineMngService extends IService<ExamineMng> {
+    ResultVO queryAll(PageQuery<ExamineMngQueryCriteria> pageQuery);
+    
+    List<ExamineMng> queryAll(ExamineMngQueryCriteria criteria);
+
+    ExamineMngDto selectOne(Serializable id);
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineTemplateService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineTemplateService.java
new file mode 100644
index 0000000..38a5ec7
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/ExamineTemplateService.java
@@ -0,0 +1,29 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineTemplate;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineTemplateQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineTemplateSaveOrUpdate;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.ExamineTemplateDto;
+
+import java.io.Serializable;
+import java.util.List;
+
+
+/**
+ * 绩效考核标准(ExamineTemplate)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-21 10:58:10
+ */
+public interface ExamineTemplateService extends IService<ExamineTemplate> {
+    ResultVO queryAll(PageQuery<ExamineTemplateQueryCriteria> pageQuery);
+    
+    List<ExamineTemplate> queryAll(ExamineTemplateQueryCriteria criteria);
+
+    ExamineTemplateDto selectOne(Serializable id);
+
+    void addOrUpdate(ExamineTemplateSaveOrUpdate examineTemplateSaveOrUpdate);
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentDetailService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentDetailService.java
new file mode 100644
index 0000000..52123fa
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentDetailService.java
@@ -0,0 +1,23 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentDetail;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentDetailQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * 奖惩记录(RewardPunishmentDetail)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-21 10:15:45
+ */
+public interface RewardPunishmentDetailService extends IService<RewardPunishmentDetail> {
+    ResultVO queryAll(PageQuery<RewardPunishmentDetailQueryCriteria> pageQuery);
+    
+    List<RewardPunishmentDetail> queryAll(RewardPunishmentDetailQueryCriteria criteria);
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentStandardService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentStandardService.java
new file mode 100644
index 0000000..3d75711
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/RewardPunishmentStandardService.java
@@ -0,0 +1,23 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentStandard;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentStandardQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * (RewardPunishmentStandard)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-21 10:20:10
+ */
+public interface RewardPunishmentStandardService extends IService<RewardPunishmentStandard> {
+    ResultVO queryAll(PageQuery<RewardPunishmentStandardQueryCriteria> pageQuery);
+    
+    List<RewardPunishmentStandard> queryAll(RewardPunishmentStandardQueryCriteria criteria);
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDivideDetailService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDivideDetailService.java
new file mode 100644
index 0000000..5c84ff7
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDivideDetailService.java
@@ -0,0 +1,25 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailSaveOrUpdate;
+
+import java.util.List;
+
+
+/**
+ * 目标指标分解详情(TargetDivideDetail)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-20 13:32:39
+ */
+public interface TargetDivideDetailService extends IService<TargetDivideDetail> {
+    ResultVO queryAll(PageQuery<TargetDivideDetailQueryCriteria> pageQuery);
+    
+    List<TargetDivideDetail> queryAll(TargetDivideDetailQueryCriteria criteria);
+
+    void addOrUpdate(TargetDivideDetailSaveOrUpdate infoDto);
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutySummaryService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutySummaryService.java
new file mode 100644
index 0000000..16dd559
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutySummaryService.java
@@ -0,0 +1,23 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDutySummary;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDutySummaryQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * (TargetDutySummary)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-21 15:35:14
+ */
+public interface TargetDutySummaryService extends IService<TargetDutySummary> {
+    ResultVO queryAll(PageQuery<TargetDutySummaryQueryCriteria> pageQuery);
+    
+    List<TargetDutySummary> queryAll(TargetDutySummaryQueryCriteria criteria);
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutyfileInfoService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutyfileInfoService.java
new file mode 100644
index 0000000..f7c938d
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetDutyfileInfoService.java
@@ -0,0 +1,23 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDutyfileInfo;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDutyfileInfoQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * 目标责任书(TargetDutyfileInfo)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-21 10:07:54
+ */
+public interface TargetDutyfileInfoService extends IService<TargetDutyfileInfo> {
+    ResultVO queryAll(PageQuery<TargetDutyfileInfoQueryCriteria> pageQuery);
+    
+    List<TargetDutyfileInfo> queryAll(TargetDutyfileInfoQueryCriteria criteria);
+
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetExamineService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetExamineService.java
new file mode 100644
index 0000000..1b8fa07
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetExamineService.java
@@ -0,0 +1,25 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.TargetExamine;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetExamineQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetExamineSaveOrUpdate;
+
+import java.util.List;
+
+
+/**
+ * (TargetExamine)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-22 09:30:01
+ */
+public interface TargetExamineService extends IService<TargetExamine> {
+    ResultVO queryAll(PageQuery<TargetExamineQueryCriteria> pageQuery);
+    
+    List<TargetExamine> queryAll(TargetExamineQueryCriteria criteria);
+
+    void addOrUpdate(TargetExamineSaveOrUpdate infoDto);
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetMngService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetMngService.java
new file mode 100644
index 0000000..948ce02
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/TargetMngService.java
@@ -0,0 +1,25 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetMngQueryCriteria;
+
+import java.io.Serializable;
+import java.util.List;
+
+
+/**
+ * 目标指标(TargetMng)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-20 11:49:22
+ */
+public interface TargetMngService extends IService<TargetMng> {
+    ResultVO queryAll(PageQuery<TargetMngQueryCriteria> pageQuery);
+    
+    List<TargetMng> queryAll(TargetMngQueryCriteria criteria);
+
+    Object selectOne(Serializable id);
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/WorkApproveService.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/WorkApproveService.java
new file mode 100644
index 0000000..7f57c71
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/WorkApproveService.java
@@ -0,0 +1,25 @@
+package com.gkhy.safePlatform.targetDuty.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gkhy.safePlatform.targetDuty.entity.WorkApprove;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.SubmitApprove;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.WorkApproveQueryCriteria;
+
+import java.util.List;
+
+
+/**
+ * (WorkApprove)表服务接口
+ *
+ * @author xurui
+ * @since 2022-07-22 10:46:11
+ */
+public interface WorkApproveService extends IService<WorkApprove> {
+    ResultVO queryAll(PageQuery<WorkApproveQueryCriteria> pageQuery);
+    
+    List<WorkApprove> queryAll(WorkApproveQueryCriteria criteria);
+
+    void submitApprove(SubmitApprove submitApprove);
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineItemServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineItemServiceImpl.java
new file mode 100644
index 0000000..cb9c4a7
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineItemServiceImpl.java
@@ -0,0 +1,61 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.repository.ExamineItemRepository;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+import com.gkhy.safePlatform.targetDuty.service.ExamineItemService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineItemQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.ExamineItemDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+
+import java.util.List;
+
+/**
+ * 绩效考核项目(ExamineItem)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-21 11:01:38
+ */
+@Service("examineItemService")
+public class ExamineItemServiceImpl extends ServiceImpl<ExamineItemRepository, ExamineItem> implements ExamineItemService {
+
+    @Autowired
+    private ExamineItemRepository examineItemRepository;
+    
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<ExamineItemQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<ExamineItem> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(ExamineItem.class, pageQuery.getSearchParams()));
+        List<ExamineItemDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), ExamineItemDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<ExamineItem> queryAll(ExamineItemQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(ExamineItem.class, criteria));
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineMngServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineMngServiceImpl.java
new file mode 100644
index 0000000..5aadeb6
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineMngServiceImpl.java
@@ -0,0 +1,104 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.CurrentExamineDto;
+import com.gkhy.safePlatform.targetDuty.repository.ExamineItemRepository;
+import com.gkhy.safePlatform.targetDuty.repository.ExamineMngRepository;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineMng;
+import com.gkhy.safePlatform.targetDuty.service.ExamineMngService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineMngQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.ExamineMngDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+import org.springframework.util.StringUtils;
+
+import java.io.Serializable;
+import java.util.List;
+import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+/**
+ * 安全考核管理(ExamineMng)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-21 13:43:08
+ */
+@Service("examineMngService")
+public class ExamineMngServiceImpl extends ServiceImpl<ExamineMngRepository, ExamineMng> implements ExamineMngService {
+
+    @Autowired
+    private ExamineMngRepository examineMngRepository;
+    @Autowired
+    private ExamineItemRepository examineItemRepository;
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<ExamineMngQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<ExamineMng> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(ExamineMng.class, pageQuery.getSearchParams()));
+        List<ExamineMngDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), ExamineMngDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<ExamineMng> queryAll(ExamineMngQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(ExamineMng.class, criteria));
+    }
+
+    @Override
+    public ExamineMngDto selectOne(Serializable id) {
+        ExamineMng examineMng = this.getById(id);
+        if(examineMng == null){
+            return null;
+        }
+
+        ExamineMngDto dto = BeanCopyUtils.copyBean(examineMng, ExamineMngDto.class);
+        if(!StringUtils.hasText(examineMng.getNumberDetailJson())){
+            return dto;
+        }
+
+        //获取打分明细
+        List<CurrentExamineDto> list = JSONObject.parseArray( examineMng.getNumberDetailJson(), CurrentExamineDto.class);
+        List<Long> idList = list.stream().map(CurrentExamineDto::getId).collect(Collectors.toList());
+
+        List<ExamineItem> itemList = examineItemRepository.selectBatchIds(idList);
+        Map<Long,ExamineItem> itemMap = itemList.stream().collect(
+                Collectors.toMap(ExamineItem::getId, Function.identity(),(k1, k2)->k1));
+
+        if(itemMap != null){
+            list.forEach(f->{
+                ExamineItem item = itemMap.get(f.getId());
+                if(item != null){
+                    f.setItemDetail(item.getItemDetail());
+                    f.setContent(item.getContent());
+                }
+            });
+        }
+        dto.setCurrentExamineDtoList(list);
+        return dto;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineTemplateServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineTemplateServiceImpl.java
new file mode 100644
index 0000000..bb7152d
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/ExamineTemplateServiceImpl.java
@@ -0,0 +1,118 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
+import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
+import com.gkhy.safePlatform.targetDuty.enums.TargetDutyResultCodes;
+import com.gkhy.safePlatform.targetDuty.excepiton.TargetDutyException;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineTemplateSaveOrUpdate;
+import com.gkhy.safePlatform.targetDuty.repository.ExamineItemRepository;
+import com.gkhy.safePlatform.targetDuty.repository.ExamineTemplateRepository;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineTemplate;
+import com.gkhy.safePlatform.targetDuty.service.ExamineItemService;
+import com.gkhy.safePlatform.targetDuty.service.ExamineTemplateService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.ExamineTemplateQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.ExamineTemplateDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+import org.springframework.util.StringUtils;
+
+import java.io.Serializable;
+import java.sql.Timestamp;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 绩效考核标准(ExamineTemplate)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-21 10:58:10
+ */
+@Service("examineTemplateService")
+public class ExamineTemplateServiceImpl extends ServiceImpl<ExamineTemplateRepository, ExamineTemplate> implements ExamineTemplateService {
+
+    @Autowired
+    private ExamineTemplateRepository examineTemplateRepository;
+
+    @Autowired
+    private ExamineItemRepository examineItemRepository;
+
+    @Autowired
+    private ExamineItemService examineItemService;
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<ExamineTemplateQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<ExamineTemplate> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(ExamineTemplate.class, pageQuery.getSearchParams()));
+        List<ExamineTemplateDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), ExamineTemplateDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<ExamineTemplate> queryAll(ExamineTemplateQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(ExamineTemplate.class, criteria));
+    }
+
+    @Override
+    public ExamineTemplateDto selectOne(Serializable id) {
+        ExamineTemplate template = this.getById(id);
+        if(template == null){
+            return null;
+        }
+
+        ExamineTemplateDto dto = BeanCopyUtils.copyBean(template, ExamineTemplateDto.class);
+
+        List<ExamineItem> list = examineItemRepository.selectList(new QueryWrapper<ExamineItem>().eq("examine_template_id",template.getId()));
+        dto.setExamineItemList(list);
+        return dto;
+    }
+
+    @Override
+    public void addOrUpdate(ExamineTemplateSaveOrUpdate infoDto) {
+        if(StringUtils.hasText(infoDto.getDelExamineItems())){
+            List<Long> idList = Arrays.stream(infoDto.getDelExamineItems().split(",")).map(s-> Long.parseLong(s.trim()))
+                    .collect(Collectors.toList());
+            examineItemService.removeByIds(idList);
+        }
+
+        ExamineTemplate examineTemplate = BeanCopyUtils.copyBean(infoDto, ExamineTemplate.class);
+        examineTemplate.setSetTimem(new Timestamp(new java.util.Date().getTime()));
+        if (infoDto.getId() == null) {
+            this.save(examineTemplate);
+        } else {
+            this.update(examineTemplate,new UpdateWrapper<ExamineTemplate>().eq("id",examineTemplate.getId()));
+        }
+
+        List<ExamineItem> list = infoDto.getExamineItemList();
+        list.forEach(f->{f.setExamineTemplateId(infoDto.getId());});
+        examineItemService.saveOrUpdateBatch(list);
+
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentDetailServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentDetailServiceImpl.java
new file mode 100644
index 0000000..481ac94
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentDetailServiceImpl.java
@@ -0,0 +1,61 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.repository.RewardPunishmentDetailRepository;
+import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentDetail;
+import com.gkhy.safePlatform.targetDuty.service.RewardPunishmentDetailService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentDetailQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.RewardPunishmentDetailDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+
+import java.util.List;
+
+/**
+ * 奖惩记录(RewardPunishmentDetail)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-21 10:15:45
+ */
+@Service("rewardPunishmentDetailService")
+public class RewardPunishmentDetailServiceImpl extends ServiceImpl<RewardPunishmentDetailRepository, RewardPunishmentDetail> implements RewardPunishmentDetailService {
+
+    @Autowired
+    private RewardPunishmentDetailRepository rewardPunishmentDetailRepository;
+    
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<RewardPunishmentDetailQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<RewardPunishmentDetail> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(RewardPunishmentDetail.class, pageQuery.getSearchParams()));
+        List<RewardPunishmentDetailDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), RewardPunishmentDetailDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<RewardPunishmentDetail> queryAll(RewardPunishmentDetailQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(RewardPunishmentDetail.class, criteria));
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentStandardServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentStandardServiceImpl.java
new file mode 100644
index 0000000..b5a36b3
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/RewardPunishmentStandardServiceImpl.java
@@ -0,0 +1,61 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.repository.RewardPunishmentStandardRepository;
+import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentStandard;
+import com.gkhy.safePlatform.targetDuty.service.RewardPunishmentStandardService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentStandardQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.RewardPunishmentStandardDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+
+import java.util.List;
+
+/**
+ * (RewardPunishmentStandard)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-21 10:20:10
+ */
+@Service("rewardPunishmentStandardService")
+public class RewardPunishmentStandardServiceImpl extends ServiceImpl<RewardPunishmentStandardRepository, RewardPunishmentStandard> implements RewardPunishmentStandardService {
+
+    @Autowired
+    private RewardPunishmentStandardRepository rewardPunishmentStandardRepository;
+    
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<RewardPunishmentStandardQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<RewardPunishmentStandard> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(RewardPunishmentStandard.class, pageQuery.getSearchParams()));
+        List<RewardPunishmentStandardDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), RewardPunishmentStandardDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<RewardPunishmentStandard> queryAll(RewardPunishmentStandardQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(RewardPunishmentStandard.class, criteria));
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java
new file mode 100644
index 0000000..ca56269
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java
@@ -0,0 +1,105 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
+import com.gkhy.safePlatform.targetDuty.enums.TargetDutyResultCodes;
+import com.gkhy.safePlatform.targetDuty.excepiton.TargetDutyException;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailSaveOrUpdate;
+import com.gkhy.safePlatform.targetDuty.repository.TargetDivideDetailRepository;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
+import com.gkhy.safePlatform.targetDuty.repository.TargetMngRepository;
+import com.gkhy.safePlatform.targetDuty.service.TargetDivideDetailService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetDivideDetailDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+import org.springframework.util.CollectionUtils;
+import org.springframework.util.StringUtils;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 目标指标分解详情(TargetDivideDetail)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-20 13:32:39
+ */
+@Service("targetDivideDetailService")
+public class TargetDivideDetailServiceImpl extends ServiceImpl<TargetDivideDetailRepository, TargetDivideDetail> implements TargetDivideDetailService {
+
+    @Autowired
+    private TargetDivideDetailRepository targetDivideDetailRepository;
+
+    @Autowired
+    private TargetMngRepository targetMngRepository;
+    
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<TargetDivideDetailQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<TargetDivideDetail> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(TargetDivideDetail.class, pageQuery.getSearchParams()));
+        List<TargetDivideDetailDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), TargetDivideDetailDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<TargetDivideDetail> queryAll(TargetDivideDetailQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(TargetDivideDetail.class, criteria));
+    }
+
+    @Override
+    public void addOrUpdate(TargetDivideDetailSaveOrUpdate infoDto) {
+        TargetMng targetMng = targetMngRepository.selectOne(new QueryWrapper<TargetMng>().eq("id",infoDto.getTargetId()));
+	    if(targetMng == null){
+            throw new TargetDutyException(TargetDutyResultCodes.E1);
+        }
+
+        if(StringUtils.hasText(infoDto.getDelTargetDivideDetails())){
+            List<Long> idList = Arrays.stream(infoDto.getDelTargetDivideDetails().split(",")).map(s-> Long.parseLong(s.trim()))
+                    .collect(Collectors.toList());
+            this.removeByIds(idList);
+        }
+
+        //保存主数据
+        //如果目标指标已经被分解,那么就不能再次增加
+        if(targetMng.getDivideStatus() == 1){
+            throw new TargetDutyException(TargetDutyResultCodes.E2);
+        }
+
+        List<TargetDivideDetail> list = infoDto.getTargetDivideDetailList();
+        list.forEach(f->{f.setTargetId(infoDto.getTargetId());});
+        this.saveOrUpdateBatch(list);
+
+        //设置状态为 《已分解》
+        targetMng.setDivideStatus(1);
+        targetMngRepository.update(targetMng,new UpdateWrapper<TargetMng>().eq("id",targetMng.getId()));
+
+
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutySummaryServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutySummaryServiceImpl.java
new file mode 100644
index 0000000..d901484
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutySummaryServiceImpl.java
@@ -0,0 +1,61 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.repository.TargetDutySummaryRepository;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDutySummary;
+import com.gkhy.safePlatform.targetDuty.service.TargetDutySummaryService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDutySummaryQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetDutySummaryDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+
+import java.util.List;
+
+/**
+ * (TargetDutySummary)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-21 15:35:14
+ */
+@Service("targetDutySummaryService")
+public class TargetDutySummaryServiceImpl extends ServiceImpl<TargetDutySummaryRepository, TargetDutySummary> implements TargetDutySummaryService {
+
+    @Autowired
+    private TargetDutySummaryRepository targetDutySummaryRepository;
+    
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<TargetDutySummaryQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<TargetDutySummary> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(TargetDutySummary.class, pageQuery.getSearchParams()));
+        List<TargetDutySummaryDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), TargetDutySummaryDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<TargetDutySummary> queryAll(TargetDutySummaryQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(TargetDutySummary.class, criteria));
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutyfileInfoServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutyfileInfoServiceImpl.java
new file mode 100644
index 0000000..236aae4
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDutyfileInfoServiceImpl.java
@@ -0,0 +1,61 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.repository.TargetDutyfileInfoRepository;
+import com.gkhy.safePlatform.targetDuty.entity.TargetDutyfileInfo;
+import com.gkhy.safePlatform.targetDuty.service.TargetDutyfileInfoService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDutyfileInfoQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetDutyfileInfoDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+
+import java.util.List;
+
+/**
+ * 目标责任书(TargetDutyfileInfo)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-21 10:07:54
+ */
+@Service("targetDutyfileInfoService")
+public class TargetDutyfileInfoServiceImpl extends ServiceImpl<TargetDutyfileInfoRepository, TargetDutyfileInfo> implements TargetDutyfileInfoService {
+
+    @Autowired
+    private TargetDutyfileInfoRepository targetDutyfileInfoRepository;
+    
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<TargetDutyfileInfoQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<TargetDutyfileInfo> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(TargetDutyfileInfo.class, pageQuery.getSearchParams()));
+        List<TargetDutyfileInfoDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), TargetDutyfileInfoDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<TargetDutyfileInfo> queryAll(TargetDutyfileInfoQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(TargetDutyfileInfo.class, criteria));
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetExamineServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetExamineServiceImpl.java
new file mode 100644
index 0000000..e22fb09
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetExamineServiceImpl.java
@@ -0,0 +1,82 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetExamineSaveOrUpdate;
+import com.gkhy.safePlatform.targetDuty.repository.TargetExamineRepository;
+import com.gkhy.safePlatform.targetDuty.entity.TargetExamine;
+import com.gkhy.safePlatform.targetDuty.service.TargetExamineService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetExamineQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetExamineDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+import org.springframework.util.StringUtils;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * (TargetExamine)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-22 09:30:01
+ */
+@Service("targetExamineService")
+public class TargetExamineServiceImpl extends ServiceImpl<TargetExamineRepository, TargetExamine> implements TargetExamineService {
+
+    @Autowired
+    private TargetExamineRepository targetExamineRepository;
+    
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<TargetExamineQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<TargetExamine> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(TargetExamine.class, pageQuery.getSearchParams()));
+        List<TargetExamineDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), TargetExamineDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<TargetExamine> queryAll(TargetExamineQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(TargetExamine.class, criteria));
+    }
+
+    @Override
+    public void addOrUpdate(TargetExamineSaveOrUpdate infoDto) {
+
+
+        if(StringUtils.hasText(infoDto.getDelIds())) {
+            List<Long> idList = Arrays.stream(infoDto.getDelIds().split(",")).map(s-> Long.parseLong(s.trim()))
+                    .collect(Collectors.toList());
+            this.removeByIds(idList);
+        }
+
+        infoDto.getExamineList().forEach(f->{
+            f.setTargetId(infoDto.getId());
+        });
+        this.saveOrUpdateBatch(infoDto.getExamineList());
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java
new file mode 100644
index 0000000..a573b21
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetMngServiceImpl.java
@@ -0,0 +1,84 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+import java.sql.Timestamp;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.repository.TargetMngRepository;
+import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
+import com.gkhy.safePlatform.targetDuty.service.TargetDivideDetailService;
+import com.gkhy.safePlatform.targetDuty.service.TargetMngService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetMngQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetMngDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 目标指标(TargetMng)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-20 11:49:22
+ */
+@Service("targetMngService")
+public class TargetMngServiceImpl extends ServiceImpl<TargetMngRepository, TargetMng> implements TargetMngService {
+
+    @Autowired
+    private TargetMngRepository targetMngRepository;
+
+    @Resource
+    private TargetDivideDetailService targetDivideDetailService;
+    
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<TargetMngQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<TargetMng> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(TargetMng.class, pageQuery.getSearchParams()));
+        List<TargetMngDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), TargetMngDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<TargetMng> queryAll(TargetMngQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(TargetMng.class, criteria));
+    }
+
+    @Override
+    public Object selectOne(Serializable id) {
+        TargetMng targetMng = baseMapper.selectById(id);
+        if(targetMng == null){
+            return null;
+        }
+        TargetMngDto targetMngDto = BeanCopyUtils.copyBean(targetMng, TargetMngDto.class);
+
+        //查询关联分解信息
+        TargetDivideDetailQueryCriteria criteria = new TargetDivideDetailQueryCriteria();
+        criteria.setTargetId(targetMng.getId());
+        targetMngDto.setTargetDivideDetailList(targetDivideDetailService.queryAll(criteria));
+        return targetMngDto;
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/WorkApproveServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/WorkApproveServiceImpl.java
new file mode 100644
index 0000000..cc77129
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/WorkApproveServiceImpl.java
@@ -0,0 +1,70 @@
+package com.gkhy.safePlatform.targetDuty.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.SubmitApprove;
+import com.gkhy.safePlatform.targetDuty.repository.WorkApproveRepository;
+import com.gkhy.safePlatform.targetDuty.entity.WorkApprove;
+import com.gkhy.safePlatform.targetDuty.service.WorkApproveService;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.gkhy.safePlatform.commons.enums.ResultCodes;
+import com.gkhy.safePlatform.commons.query.PageQuery;
+import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.commons.vo.SearchResultVO;
+import com.gkhy.safePlatform.targetDuty.model.dto.req.WorkApproveQueryCriteria;
+import com.gkhy.safePlatform.targetDuty.model.dto.resp.WorkApproveDto;
+import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
+import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+
+import java.util.List;
+
+/**
+ * (WorkApprove)表服务实现类
+ *
+ * @author xurui
+ * @since 2022-07-22 10:46:11
+ */
+@Service("workApproveService")
+public class WorkApproveServiceImpl extends ServiceImpl<WorkApproveRepository, WorkApprove> implements WorkApproveService {
+
+    @Autowired
+    private WorkApproveRepository workApproveRepository;
+    
+    
+	
+	@Override
+    public ResultVO queryAll(PageQuery<WorkApproveQueryCriteria> pageQuery) {
+        Long pageIndex = pageQuery.getPageIndex();
+        Long pageSize = pageQuery.getPageSize();
+        IPage<WorkApprove> page = new Page<>(pageIndex, pageSize);
+
+        page = baseMapper.selectPage(page,
+                QueryHelpPlus.getPredicate(WorkApprove.class, pageQuery.getSearchParams()));
+        List<WorkApproveDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), WorkApproveDto.class);
+
+        return new SearchResultVO<>(
+                true,
+                pageIndex,
+                pageSize,
+                page.getTotal(),
+                respList,
+                ResultCodes.OK
+        );
+    }
+
+
+    @Override
+    public List<WorkApprove> queryAll(WorkApproveQueryCriteria criteria) {
+        return baseMapper.selectList(QueryHelpPlus.getPredicate(WorkApprove.class, criteria));
+    }
+
+    @Override
+    public void submitApprove(SubmitApprove submitApprove) {
+        WorkApprove workApprove = BeanCopyUtils.copyBean(submitApprove, WorkApprove.class);
+//        workApprove.setWorkName();
+//        workApprove.setApprovePersonId();
+        this.save(workApprove);
+    }
+}
\ No newline at end of file
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/QueryHelpPlus.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/QueryHelpPlus.java
new file mode 100644
index 0000000..12ab941
--- /dev/null
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/utils/QueryHelpPlus.java
@@ -0,0 +1,178 @@
+/**
+ * Copyright (C) 2018-2022
+ * All rights reserved, Designed By www.yixiang.co
+ * 注意:
+ * 本软件为www.yixiang.co开发研制
+ */
+package com.gkhy.safePlatform.targetDuty.utils;
+
+import com.alibaba.nacos.common.utils.CollectionUtils;
+import com.alibaba.nacos.common.utils.StringUtils;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.gkhy.safePlatform.targetDuty.annotation.Query;
+
+import java.lang.reflect.Field;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
+
+/**
+ */
+@SuppressWarnings({"unchecked", "all"})
+public class QueryHelpPlus {
+
+    public static <R, Q> QueryWrapper getPredicate(R obj, Q query) {
+        QueryWrapper<R> queryWrapper = new QueryWrapper<R>();
+        if (query == null) {
+            return queryWrapper;
+        }
+        try {
+            List<Field> fields = getAllFields(query.getClass(), new ArrayList<>());
+            for (Field field : fields) {
+                boolean accessible = field.isAccessible();
+                field.setAccessible(true);
+                Query q = field.getAnnotation(Query.class);
+                if (q != null) {
+                    String propName = q.propName();
+                    String blurry = q.blurry();
+                    String attributeName = isBlank(propName) ? field.getName() : propName;
+                    attributeName = humpToUnderline(attributeName);
+                    Class<?> fieldType = field.getType();
+                    Object val = field.get(query);
+                    if (val == null || "".equals(val)) {
+                        continue;
+                    }
+                    // 模糊多字段
+                    if ( StringUtils.hasText(blurry)) {
+                        String[] blurrys = blurry.split(",");
+                        //queryWrapper.or();
+                        queryWrapper.and(wrapper -> {
+                            for (int i = 0; i < blurrys.length; i++) {
+                                String column = humpToUnderline(blurrys[i]);
+                                //if(i!=0){
+                                wrapper.or();
+                                //}
+                                wrapper.like(column, val.toString());
+                            }
+                        });
+                        continue;
+                    }
+                    String finalAttributeName = attributeName;
+                    switch (q.type()) {
+                        case EQUAL:
+                            //queryWrapper.and(wrapper -> wrapper.eq(finalAttributeName, val));
+                            queryWrapper.eq(attributeName, val);
+                            break;
+                        case GREATER_THAN:
+                            queryWrapper.ge(finalAttributeName, val);
+                            break;
+                        case LESS_THAN:
+                            queryWrapper.le(finalAttributeName, val);
+                            break;
+                        case LESS_THAN_NQ:
+                            queryWrapper.lt(finalAttributeName, val);
+                            break;
+                        case INNER_LIKE:
+                            queryWrapper.like(finalAttributeName, val);
+                            break;
+                        case LEFT_LIKE:
+                            queryWrapper.likeLeft(finalAttributeName, val);
+                            break;
+                        case RIGHT_LIKE:
+                            queryWrapper.likeRight(finalAttributeName, val);
+                            break;
+                        case IN:
+                            if (!CollectionUtils.isEmpty((Collection<Long>) val)) {
+                                queryWrapper.in(finalAttributeName, (Collection<Long>) val);
+                            }
+                            break;
+                        case NOT_EQUAL:
+                            queryWrapper.ne(finalAttributeName, val);
+                            break;
+                        case NOT_NULL:
+                            queryWrapper.isNotNull(finalAttributeName);
+                            break;
+                        case BETWEEN:
+                            List<Object> between = new ArrayList<>((List<Object>) val);
+                            queryWrapper.between(finalAttributeName, between.get(0), between.get(1));
+                            break;
+                        case UNIX_TIMESTAMP:
+                            List<Object> UNIX_TIMESTAMP = new ArrayList<>((List<Object>) val);
+                            if (!UNIX_TIMESTAMP.isEmpty()) {
+                                SimpleDateFormat fm = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                                long time1 = fm.parse(UNIX_TIMESTAMP.get(0).toString()).getTime() / 1000;
+                                long time2 = fm.parse(UNIX_TIMESTAMP.get(1).toString()).getTime() / 1000;
+                                queryWrapper.between(finalAttributeName, time1, time2);
+                            }
+                            break;
+                        default:
+                            break;
+                    }
+                }
+                field.setAccessible(accessible);
+            }
+        } catch (Exception e) {
+            System.out.println("自动注入失败:"+e.getMessage());
+        }
+
+        return queryWrapper;
+    }
+
+
+    private static boolean isBlank(final CharSequence cs) {
+        int strLen;
+        if (cs == null || (strLen = cs.length()) == 0) {
+            return true;
+        }
+        for (int i = 0; i < strLen; i++) {
+            if (!Character.isWhitespace(cs.charAt(i))) {
+                return false;
+            }
+        }
+        return true;
+    }
+
+    private static List<Field> getAllFields(Class clazz, List<Field> fields) {
+        if (clazz != null) {
+            fields.addAll(Arrays.asList(clazz.getDeclaredFields()));
+            getAllFields(clazz.getSuperclass(), fields);
+        }
+        return fields;
+    }
+
+    /***
+     * 驼峰命名转为下划线命名
+     *
+     * @param para
+     *        驼峰命名的字符串
+     */
+
+    public static String humpToUnderline(String para) {
+        StringBuilder sb = new StringBuilder(para);
+        int temp = 0;//定位
+        if (!para.contains("_")) {
+            for (int i = 0; i < para.length(); i++) {
+                if (Character.isUpperCase(para.charAt(i))) {
+                    sb.insert(i + temp, "_");
+                    temp += 1;
+                }
+            }
+        }
+        return sb.toString();
+    }
+
+//    public static void main(String[] args) {
+//        QueryWrapper<Paging> query = new QueryWrapper<Paging>();
+//        //query.or();
+//        query.or(wrapper -> wrapper.eq("store_id", 1).or().eq("store_id", 2));
+//        //query.like("a",1);
+//        //query.or();
+//        //query.like("b",2);
+//        //query.and(wrapper->wrapper.eq("c",1));
+//        query.eq("1", 1);
+//
+//        System.out.println(query.getSqlSegment());
+//    }
+}
diff --git a/goal-manage/goal-manage-service/src/main/resources/config/mapper/goalManage/TestTableRepository.xml b/goal-manage/goal-manage-service/src/main/resources/config/mapper/goalManage/TestTableRepository.xml
deleted file mode 100644
index 614dd2e..0000000
--- a/goal-manage/goal-manage-service/src/main/resources/config/mapper/goalManage/TestTableRepository.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?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.gkhy.safePlatform.goalManage.entity.TestTable">
-
-    <resultMap id="TestTableMap" type="com.gkhy.safePlatform.goalManage.entity.TestTable">
-        <id column="id" property="id" jdbcType="BIGINT"/>
-        <result property="title" column="title"/>
-    </resultMap>
-
-
-</mapper>

--
Gitblit v1.9.2