瀏覽代碼

Merge remote-tracking branch 'origin/dev' into dev

dzx 1 年之前
父節點
當前提交
df0b0d925b
共有 38 個文件被更改,包括 1782 次插入2 次删除
  1. 39 0
      src/main/java/com/xjrsoft/common/enums/CreateFrequencyEnum.java
  2. 10 1
      src/main/java/com/xjrsoft/module/evaluate/entity/EvaluateManage.java
  3. 9 1
      src/main/java/com/xjrsoft/module/evaluate/service/impl/EvaluateManageServiceImpl.java
  4. 32 0
      src/main/java/com/xjrsoft/module/job/EvaluateManageTask.java
  5. 100 0
      src/main/java/com/xjrsoft/module/student/controller/QuotaFormulaRuleAttributeController.java
  6. 99 0
      src/main/java/com/xjrsoft/module/student/controller/QuotaFormulaRuleConstantController.java
  7. 100 0
      src/main/java/com/xjrsoft/module/student/controller/QuotaFormulaRuleController.java
  8. 48 0
      src/main/java/com/xjrsoft/module/student/dto/AddQuotaFormulaRuleAttributeDto.java
  9. 53 0
      src/main/java/com/xjrsoft/module/student/dto/AddQuotaFormulaRuleConstantDto.java
  10. 53 0
      src/main/java/com/xjrsoft/module/student/dto/AddQuotaFormulaRuleDto.java
  11. 26 0
      src/main/java/com/xjrsoft/module/student/dto/QuotaFormulaRuleAttributePageDto.java
  12. 26 0
      src/main/java/com/xjrsoft/module/student/dto/QuotaFormulaRuleConstantPageDto.java
  13. 26 0
      src/main/java/com/xjrsoft/module/student/dto/QuotaFormulaRulePageDto.java
  14. 32 0
      src/main/java/com/xjrsoft/module/student/dto/UpdateQuotaFormulaRuleAttributeDto.java
  15. 32 0
      src/main/java/com/xjrsoft/module/student/dto/UpdateQuotaFormulaRuleConstantDto.java
  16. 32 0
      src/main/java/com/xjrsoft/module/student/dto/UpdateQuotaFormulaRuleDto.java
  17. 103 0
      src/main/java/com/xjrsoft/module/student/entity/QuotaFormulaRule.java
  18. 98 0
      src/main/java/com/xjrsoft/module/student/entity/QuotaFormulaRuleAttribute.java
  19. 103 0
      src/main/java/com/xjrsoft/module/student/entity/QuotaFormulaRuleConstant.java
  20. 22 0
      src/main/java/com/xjrsoft/module/student/mapper/QuotaFormulaRuleAttributeMapper.java
  21. 22 0
      src/main/java/com/xjrsoft/module/student/mapper/QuotaFormulaRuleConstantMapper.java
  22. 22 0
      src/main/java/com/xjrsoft/module/student/mapper/QuotaFormulaRuleMapper.java
  23. 23 0
      src/main/java/com/xjrsoft/module/student/service/IQuotaFormulaRuleAttributeService.java
  24. 23 0
      src/main/java/com/xjrsoft/module/student/service/IQuotaFormulaRuleConstantService.java
  25. 23 0
      src/main/java/com/xjrsoft/module/student/service/IQuotaFormulaRuleService.java
  26. 33 0
      src/main/java/com/xjrsoft/module/student/service/impl/QuotaFormulaRuleAttributeServiceImpl.java
  27. 33 0
      src/main/java/com/xjrsoft/module/student/service/impl/QuotaFormulaRuleConstantServiceImpl.java
  28. 33 0
      src/main/java/com/xjrsoft/module/student/service/impl/QuotaFormulaRuleServiceImpl.java
  29. 79 0
      src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRuleAttributePageVo.java
  30. 49 0
      src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRuleAttributeVo.java
  31. 84 0
      src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRuleConstantPageVo.java
  32. 54 0
      src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRuleConstantVo.java
  33. 84 0
      src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRulePageVo.java
  34. 54 0
      src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRuleVo.java
  35. 12 0
      src/main/resources/mapper/student/QuotaFormulaRuleAttributeMapper.xml
  36. 12 0
      src/main/resources/mapper/student/QuotaFormulaRuleConstantMapper.xml
  37. 12 0
      src/main/resources/mapper/student/QuotaFormulaRuleMapper.xml
  38. 87 0
      src/test/java/com/xjrsoft/xjrsoftboot/FreeMarkerGeneratorTest.java

+ 39 - 0
src/main/java/com/xjrsoft/common/enums/CreateFrequencyEnum.java

@@ -0,0 +1,39 @@
+package com.xjrsoft.common.enums;
+
+/**
+ * @description: 生成频率(xjr_dictionary_detail[create_frequency])
+ * @author: phoenix
+ * @create: 2023/01/27 11:27
+ * @Version 1.0
+ */
+public enum CreateFrequencyEnum {
+    /**
+     * 工作日
+     * */
+    WEEKDAY("weekday", "工作日"),
+
+    /**
+     * 每周
+     * */
+    WEEKLY("weekly", "每周"),
+    /**
+     * 每月
+     * */
+    MONTHLY("monthly", "每月");
+
+    final String code;
+    final String value;
+
+    public String getCode() {
+        return this.code;
+    }
+
+    public String getValue() {
+        return this.value;
+    }
+
+    CreateFrequencyEnum(final String code, final String message) {
+        this.code = code;
+        this.value = message;
+    }
+}

+ 10 - 1
src/main/java/com/xjrsoft/module/evaluate/entity/EvaluateManage.java

@@ -111,7 +111,16 @@ public class EvaluateManage implements Serializable {
     */
     @ApiModelProperty("状态(-1:未发布,1:进行中,0,暂停)")
     private Integer status;
-
+    /**
+     * 是否自动生成(0:否,1:是)
+     */
+    @ApiModelProperty("是否自动生成(0:否,1:是)")
+    private Integer isAutoCreate;
+    /**
+     * 生成频率(xjr_dictionary_detail[create_frequency])
+     */
+    @ApiModelProperty("生成频率(xjr_dictionary_detail[create_frequency])")
+    private String createFrequency;
     /**
     * evaluateObject
     */

+ 9 - 1
src/main/java/com/xjrsoft/module/evaluate/service/impl/EvaluateManageServiceImpl.java

@@ -53,6 +53,7 @@ public class EvaluateManageServiceImpl extends MPJBaseServiceImpl<EvaluateManage
     @Override
     @Transactional(rollbackFor = Exception.class)
     public Boolean update(EvaluateManage evaluateManage) {
+        //TODO 修改分两种情况,一种是还没有发布的修改,一种是已经发布的修改,已发布的修改只能修改结束时间。
         evaluateManageMapper.updateById(evaluateManage);
         return true;
     }
@@ -63,7 +64,6 @@ public class EvaluateManageServiceImpl extends MPJBaseServiceImpl<EvaluateManage
         evaluateManageMapper.deleteBatchIds(ids);
         evaluateObjectMapper.delete(Wrappers.lambdaQuery(EvaluateObject.class).in(EvaluateObject::getEvaluateManageId, ids));
         evaluateExecuterMapper.delete(Wrappers.lambdaQuery(EvaluateExecuter.class).in(EvaluateExecuter::getEvaluateManageId, ids));
-
         return true;
     }
 
@@ -94,6 +94,14 @@ public class EvaluateManageServiceImpl extends MPJBaseServiceImpl<EvaluateManage
         }
         //将评价管理状态改为进行中
         evaluateManage.setStatus(1);
+
+        //设置两个定时器
+        //第一个定时器控制结束
+
+        //第二个定时器控制定时生成新的评价
+        if(evaluateManage.getIsAutoCreate() != null && evaluateManage.getIsAutoCreate() == 1 && evaluateManage.getCreateFrequency() != null){
+
+        }
         evaluateManageMapper.updateById(evaluateManage);
         return true;
     }

+ 32 - 0
src/main/java/com/xjrsoft/module/job/EvaluateManageTask.java

@@ -0,0 +1,32 @@
+package com.xjrsoft.module.job;
+
+import cn.hutool.db.Db;
+import com.xjrsoft.common.constant.GlobalConstant;
+import com.xjrsoft.common.utils.DatasourceUtil;
+import com.xjrsoft.common.utils.DateUtils;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import javax.sql.DataSource;
+import java.util.Date;
+
+@Component
+@Slf4j
+public class EvaluateManageTask {
+    /**
+     * 定时克隆并发布评价管理(每天两点触发一次)
+     */
+    @Scheduled(cron = "0 0 2 * * ?")
+    public void RefreshConnectionPool() {
+        System.out.printf("定时克隆并发布评价管理:%s", DateUtils.format(new Date(), DateUtils.DATE_TIME_PATTERN));
+        DataSource datasource = DatasourceUtil.getDataSource(GlobalConstant.DEFAULT_DATASOURCE_KEY);
+        try {
+            //查出所有需要克隆的的评价管理
+            Db use = Db.use(datasource);
+            use.query("");
+        } catch (Exception e) {
+            log.error(e.getMessage(), "定时克隆并发布评价管理");
+        }
+    }
+}

+ 100 - 0
src/main/java/com/xjrsoft/module/student/controller/QuotaFormulaRuleAttributeController.java

@@ -0,0 +1,100 @@
+package com.xjrsoft.module.student.controller;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xjrsoft.common.constant.GlobalConstant;
+import com.baomidou.mybatisplus.core.toolkit.StringPool;
+import com.xjrsoft.common.page.ConventPage;
+import com.xjrsoft.common.page.PageOutput;
+import com.xjrsoft.common.model.result.RT;
+import com.xjrsoft.common.utils.VoToColumnUtil;
+import com.xjrsoft.module.student.dto.AddQuotaFormulaRuleAttributeDto;
+import com.xjrsoft.module.student.dto.UpdateQuotaFormulaRuleAttributeDto;
+import cn.dev33.satoken.annotation.SaCheckPermission;
+
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleAttributePageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRuleAttribute;
+import com.xjrsoft.module.student.service.IQuotaFormulaRuleAttributeService;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleAttributePageVo;
+
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleAttributeVo;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+* @title: 考核表单属性
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@RestController
+@RequestMapping("/student" + "/quotaFormulaRuleAttribute")
+@Api(value = "/student"  + "/quotaFormulaRuleAttribute",tags = "考核表单属性代码")
+@AllArgsConstructor
+public class QuotaFormulaRuleAttributeController {
+
+
+    private final IQuotaFormulaRuleAttributeService quotaFormulaRuleAttributeService;
+
+    @GetMapping(value = "/page")
+    @ApiOperation(value="考核表单属性列表(分页)")
+    @SaCheckPermission("quotaformularuleattribute:detail")
+    public RT<PageOutput<QuotaFormulaRuleAttributePageVo>> page(@Valid QuotaFormulaRuleAttributePageDto dto){
+
+        Page<QuotaFormulaRuleAttributePageVo> page = quotaFormulaRuleAttributeService.getPage(new Page<>(dto.getLimit(), dto.getSize()), dto);
+        PageOutput<QuotaFormulaRuleAttributePageVo> pageOutput = ConventPage.getPageOutput(page, QuotaFormulaRuleAttributePageVo.class);
+        return RT.ok(pageOutput);
+    }
+
+    @GetMapping(value = "/info")
+    @ApiOperation(value="根据id查询考核表单属性信息")
+    @SaCheckPermission("quotaformularuleattribute:detail")
+    public RT<QuotaFormulaRuleAttributeVo> info(@RequestParam Long id){
+        QuotaFormulaRuleAttribute quotaFormulaRuleAttribute = quotaFormulaRuleAttributeService.getById(id);
+        if (quotaFormulaRuleAttribute == null) {
+           return RT.error("找不到此数据!");
+        }
+        return RT.ok(BeanUtil.toBean(quotaFormulaRuleAttribute, QuotaFormulaRuleAttributeVo.class));
+    }
+
+
+    @PostMapping
+    @ApiOperation(value = "新增考核表单属性")
+    @SaCheckPermission("quotaformularuleattribute:add")
+    public RT<Boolean> add(@Valid @RequestBody AddQuotaFormulaRuleAttributeDto dto){
+        QuotaFormulaRuleAttribute quotaFormulaRuleAttribute = BeanUtil.toBean(dto, QuotaFormulaRuleAttribute.class);
+        boolean isSuccess = quotaFormulaRuleAttributeService.save(quotaFormulaRuleAttribute);
+    return RT.ok(isSuccess);
+    }
+
+    @PutMapping
+    @ApiOperation(value = "修改考核表单属性")
+    @SaCheckPermission("quotaformularuleattribute:edit")
+    public RT<Boolean> update(@Valid @RequestBody UpdateQuotaFormulaRuleAttributeDto dto){
+
+        QuotaFormulaRuleAttribute quotaFormulaRuleAttribute = BeanUtil.toBean(dto, QuotaFormulaRuleAttribute.class);
+        return RT.ok(quotaFormulaRuleAttributeService.updateById(quotaFormulaRuleAttribute));
+
+    }
+
+    @DeleteMapping
+    @ApiOperation(value = "删除考核表单属性")
+    @SaCheckPermission("quotaformularuleattribute:delete")
+    public RT<Boolean> delete(@Valid @RequestBody List<Long> ids){
+        return RT.ok(quotaFormulaRuleAttributeService.removeBatchByIds(ids));
+
+    }
+
+}

+ 99 - 0
src/main/java/com/xjrsoft/module/student/controller/QuotaFormulaRuleConstantController.java

@@ -0,0 +1,99 @@
+package com.xjrsoft.module.student.controller;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xjrsoft.common.constant.GlobalConstant;
+import com.baomidou.mybatisplus.core.toolkit.StringPool;
+import com.xjrsoft.common.page.ConventPage;
+import com.xjrsoft.common.page.PageOutput;
+import com.xjrsoft.common.model.result.RT;
+import com.xjrsoft.common.utils.VoToColumnUtil;
+import com.xjrsoft.module.personnel.vo.BasePersonnelLabourCapitalYearPageVo;
+import com.xjrsoft.module.student.dto.AddQuotaFormulaRuleConstantDto;
+import com.xjrsoft.module.student.dto.UpdateQuotaFormulaRuleConstantDto;
+import cn.dev33.satoken.annotation.SaCheckPermission;
+
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleConstantPageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRuleConstant;
+import com.xjrsoft.module.student.service.IQuotaFormulaRuleConstantService;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo;
+
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+* @title: 考核基数
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@RestController
+@RequestMapping("/student" + "/quotaFormulaRuleConstant")
+@Api(value = "/student"  + "/quotaFormulaRuleConstant",tags = "考核基数代码")
+@AllArgsConstructor
+public class QuotaFormulaRuleConstantController {
+
+
+    private final IQuotaFormulaRuleConstantService quotaFormulaRuleConstantService;
+
+    @GetMapping(value = "/page")
+    @ApiOperation(value="考核基数列表(分页)")
+    @SaCheckPermission("quotaformularuleconstant:detail")
+    public RT<PageOutput<QuotaFormulaRuleConstantPageVo>> page(@Valid QuotaFormulaRuleConstantPageDto dto){
+        Page<QuotaFormulaRuleConstantPageVo> page = quotaFormulaRuleConstantService.getPage(new Page<>(dto.getLimit(), dto.getSize()), dto);
+        PageOutput<QuotaFormulaRuleConstantPageVo> pageOutput = ConventPage.getPageOutput(page, QuotaFormulaRuleConstantPageVo.class);
+        return RT.ok(pageOutput);
+    }
+
+    @GetMapping(value = "/info")
+    @ApiOperation(value="根据id查询考核基数信息")
+    @SaCheckPermission("quotaformularuleconstant:detail")
+    public RT<QuotaFormulaRuleConstantVo> info(@RequestParam Long id){
+        QuotaFormulaRuleConstant quotaFormulaRuleConstant = quotaFormulaRuleConstantService.getById(id);
+        if (quotaFormulaRuleConstant == null) {
+           return RT.error("找不到此数据!");
+        }
+        return RT.ok(BeanUtil.toBean(quotaFormulaRuleConstant, QuotaFormulaRuleConstantVo.class));
+    }
+
+
+    @PostMapping
+    @ApiOperation(value = "新增考核基数")
+    @SaCheckPermission("quotaformularuleconstant:add")
+    public RT<Boolean> add(@Valid @RequestBody AddQuotaFormulaRuleConstantDto dto){
+        QuotaFormulaRuleConstant quotaFormulaRuleConstant = BeanUtil.toBean(dto, QuotaFormulaRuleConstant.class);
+        boolean isSuccess = quotaFormulaRuleConstantService.save(quotaFormulaRuleConstant);
+    return RT.ok(isSuccess);
+    }
+
+    @PutMapping
+    @ApiOperation(value = "修改考核基数")
+    @SaCheckPermission("quotaformularuleconstant:edit")
+    public RT<Boolean> update(@Valid @RequestBody UpdateQuotaFormulaRuleConstantDto dto){
+
+        QuotaFormulaRuleConstant quotaFormulaRuleConstant = BeanUtil.toBean(dto, QuotaFormulaRuleConstant.class);
+        return RT.ok(quotaFormulaRuleConstantService.updateById(quotaFormulaRuleConstant));
+
+    }
+
+    @DeleteMapping
+    @ApiOperation(value = "删除考核基数")
+    @SaCheckPermission("quotaformularuleconstant:delete")
+    public RT<Boolean> delete(@Valid @RequestBody List<Long> ids){
+        return RT.ok(quotaFormulaRuleConstantService.removeBatchByIds(ids));
+
+    }
+
+}

+ 100 - 0
src/main/java/com/xjrsoft/module/student/controller/QuotaFormulaRuleController.java

@@ -0,0 +1,100 @@
+package com.xjrsoft.module.student.controller;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xjrsoft.common.constant.GlobalConstant;
+import com.baomidou.mybatisplus.core.toolkit.StringPool;
+import com.xjrsoft.common.page.ConventPage;
+import com.xjrsoft.common.page.PageOutput;
+import com.xjrsoft.common.model.result.RT;
+import com.xjrsoft.common.utils.VoToColumnUtil;
+import com.xjrsoft.module.student.dto.AddQuotaFormulaRuleDto;
+import com.xjrsoft.module.student.dto.UpdateQuotaFormulaRuleDto;
+import cn.dev33.satoken.annotation.SaCheckPermission;
+
+import com.xjrsoft.module.student.dto.QuotaFormulaRulePageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRule;
+import com.xjrsoft.module.student.service.IQuotaFormulaRuleService;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo;
+import com.xjrsoft.module.student.vo.QuotaFormulaRulePageVo;
+
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+* @title: 指标公式规则管理
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@RestController
+@RequestMapping("/student" + "/quotaFormulaRule")
+@Api(value = "/student"  + "/quotaFormulaRule",tags = "指标公式规则管理代码")
+@AllArgsConstructor
+public class QuotaFormulaRuleController {
+
+
+    private final IQuotaFormulaRuleService quotaFormulaRuleService;
+
+    @GetMapping(value = "/page")
+    @ApiOperation(value="指标公式规则管理列表(分页)")
+    @SaCheckPermission("quotaformularule:detail")
+    public RT<PageOutput<QuotaFormulaRulePageVo>> page(@Valid QuotaFormulaRulePageDto dto){
+
+        Page<QuotaFormulaRulePageVo> page = quotaFormulaRuleService.getPage(new Page<>(dto.getLimit(), dto.getSize()), dto);
+        PageOutput<QuotaFormulaRulePageVo> pageOutput = ConventPage.getPageOutput(page, QuotaFormulaRulePageVo.class);
+        return RT.ok(pageOutput);
+    }
+
+    @GetMapping(value = "/info")
+    @ApiOperation(value="根据id查询指标公式规则管理信息")
+    @SaCheckPermission("quotaformularule:detail")
+    public RT<QuotaFormulaRuleVo> info(@RequestParam Long id){
+        QuotaFormulaRule quotaFormulaRule = quotaFormulaRuleService.getById(id);
+        if (quotaFormulaRule == null) {
+           return RT.error("找不到此数据!");
+        }
+        return RT.ok(BeanUtil.toBean(quotaFormulaRule, QuotaFormulaRuleVo.class));
+    }
+
+
+    @PostMapping
+    @ApiOperation(value = "新增指标公式规则管理")
+    @SaCheckPermission("quotaformularule:add")
+    public RT<Boolean> add(@Valid @RequestBody AddQuotaFormulaRuleDto dto){
+        QuotaFormulaRule quotaFormulaRule = BeanUtil.toBean(dto, QuotaFormulaRule.class);
+        boolean isSuccess = quotaFormulaRuleService.save(quotaFormulaRule);
+    return RT.ok(isSuccess);
+    }
+
+    @PutMapping
+    @ApiOperation(value = "修改指标公式规则管理")
+    @SaCheckPermission("quotaformularule:edit")
+    public RT<Boolean> update(@Valid @RequestBody UpdateQuotaFormulaRuleDto dto){
+
+        QuotaFormulaRule quotaFormulaRule = BeanUtil.toBean(dto, QuotaFormulaRule.class);
+        return RT.ok(quotaFormulaRuleService.updateById(quotaFormulaRule));
+
+    }
+
+    @DeleteMapping
+    @ApiOperation(value = "删除指标公式规则管理")
+    @SaCheckPermission("quotaformularule:delete")
+    public RT<Boolean> delete(@Valid @RequestBody List<Long> ids){
+        return RT.ok(quotaFormulaRuleService.removeBatchByIds(ids));
+
+    }
+
+}

+ 48 - 0
src/main/java/com/xjrsoft/module/student/dto/AddQuotaFormulaRuleAttributeDto.java

@@ -0,0 +1,48 @@
+package com.xjrsoft.module.student.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.io.Serializable;
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Date;
+
+
+
+/**
+* @title: 考核表单属性
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class AddQuotaFormulaRuleAttributeDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 属性名称
+    */
+    @ApiModelProperty("属性名称")
+    private String name;
+    /**
+    * 属性值
+    */
+    @ApiModelProperty("属性值")
+    private String formula;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+}

+ 53 - 0
src/main/java/com/xjrsoft/module/student/dto/AddQuotaFormulaRuleConstantDto.java

@@ -0,0 +1,53 @@
+package com.xjrsoft.module.student.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.io.Serializable;
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Date;
+
+
+
+/**
+* @title: 考核基数
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class AddQuotaFormulaRuleConstantDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 基数名称
+    */
+    @ApiModelProperty("基数名称")
+    private String name;
+    /**
+    * 规则公式
+    */
+    @ApiModelProperty("规则公式")
+    private String formula;
+    /**
+    * 指标
+    */
+    @ApiModelProperty("指标")
+    private String bindQuota;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+}

+ 53 - 0
src/main/java/com/xjrsoft/module/student/dto/AddQuotaFormulaRuleDto.java

@@ -0,0 +1,53 @@
+package com.xjrsoft.module.student.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.io.Serializable;
+import com.fasterxml.jackson.annotation.JsonFormat;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Date;
+
+
+
+/**
+* @title: 指标公式规则管理
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class AddQuotaFormulaRuleDto implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 规则名称
+    */
+    @ApiModelProperty("规则名称")
+    private String name;
+    /**
+    * 规则公式
+    */
+    @ApiModelProperty("规则公式")
+    private String formula;
+    /**
+    * 指标
+    */
+    @ApiModelProperty("指标")
+    private String bindQuota;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+}

+ 26 - 0
src/main/java/com/xjrsoft/module/student/dto/QuotaFormulaRuleAttributePageDto.java

@@ -0,0 +1,26 @@
+package com.xjrsoft.module.student.dto;
+
+import com.xjrsoft.common.page.PageInput;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.Date;
+
+
+/**
+* @title: 考核表单属性分页查询入参
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class QuotaFormulaRuleAttributePageDto extends PageInput {
+
+
+}

+ 26 - 0
src/main/java/com/xjrsoft/module/student/dto/QuotaFormulaRuleConstantPageDto.java

@@ -0,0 +1,26 @@
+package com.xjrsoft.module.student.dto;
+
+import com.xjrsoft.common.page.PageInput;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.Date;
+
+
+/**
+* @title: 考核基数分页查询入参
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class QuotaFormulaRuleConstantPageDto extends PageInput {
+
+
+}

+ 26 - 0
src/main/java/com/xjrsoft/module/student/dto/QuotaFormulaRulePageDto.java

@@ -0,0 +1,26 @@
+package com.xjrsoft.module.student.dto;
+
+import com.xjrsoft.common.page.PageInput;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.Date;
+
+
+/**
+* @title: 指标公式规则管理分页查询入参
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class QuotaFormulaRulePageDto extends PageInput {
+
+
+}

+ 32 - 0
src/main/java/com/xjrsoft/module/student/dto/UpdateQuotaFormulaRuleAttributeDto.java

@@ -0,0 +1,32 @@
+package com.xjrsoft.module.student.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.io.Serializable;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.List;
+import java.util.Date;
+
+
+
+/**
+* @title: 考核表单属性
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class UpdateQuotaFormulaRuleAttributeDto extends AddQuotaFormulaRuleAttributeDto {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    private Long id;
+}

+ 32 - 0
src/main/java/com/xjrsoft/module/student/dto/UpdateQuotaFormulaRuleConstantDto.java

@@ -0,0 +1,32 @@
+package com.xjrsoft.module.student.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.io.Serializable;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.List;
+import java.util.Date;
+
+
+
+/**
+* @title: 考核基数
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class UpdateQuotaFormulaRuleConstantDto extends AddQuotaFormulaRuleConstantDto {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    private Long id;
+}

+ 32 - 0
src/main/java/com/xjrsoft/module/student/dto/UpdateQuotaFormulaRuleDto.java

@@ -0,0 +1,32 @@
+package com.xjrsoft.module.student.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.io.Serializable;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.List;
+import java.util.Date;
+
+
+
+/**
+* @title: 指标公式规则管理
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class UpdateQuotaFormulaRuleDto extends AddQuotaFormulaRuleDto {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    private Long id;
+}

+ 103 - 0
src/main/java/com/xjrsoft/module/student/entity/QuotaFormulaRule.java

@@ -0,0 +1,103 @@
+package com.xjrsoft.module.student.entity;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.github.yulichang.annotation.EntityMapping;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.io.Serializable;
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Date;
+
+
+/**
+* @title: 指标公式规则管理
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+@TableName("quota_formula_rule")
+@ApiModel(value = "quota_formula_rule", description = "指标公式规则管理")
+public class QuotaFormulaRule implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    @TableId
+    private Long id;
+    /**
+    * 创建人
+    */
+    @ApiModelProperty("创建人")
+    @TableField(fill = FieldFill.INSERT)
+    private Long createUserId;
+    /**
+    * 创建时间
+    */
+    @ApiModelProperty("创建时间")
+    @TableField(fill = FieldFill.INSERT)
+    private Date createDate;
+    /**
+    * 修改人
+    */
+    @ApiModelProperty("修改人")
+    @TableField(fill = FieldFill.UPDATE)
+    private Long modifyUserId;
+    /**
+    * 修改时间
+    */
+    @ApiModelProperty("修改时间")
+    @TableField(fill = FieldFill.UPDATE)
+    private Date modifyDate;
+    /**
+    * 删除标记
+    */
+    @ApiModelProperty("删除标记")
+    @TableField(fill = FieldFill.INSERT)
+    @TableLogic
+    private Integer deleteMark;
+    /**
+    * 有效标志
+    */
+    @ApiModelProperty("有效标志")
+    @TableField(fill = FieldFill.INSERT)
+    private Integer enabledMark;
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 规则名称
+    */
+    @ApiModelProperty("规则名称")
+    private String name;
+    /**
+    * 规则公式
+    */
+    @ApiModelProperty("规则公式")
+    private String formula;
+    /**
+    * 指标
+    */
+    @ApiModelProperty("指标")
+    private String bindQuota;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+
+}

+ 98 - 0
src/main/java/com/xjrsoft/module/student/entity/QuotaFormulaRuleAttribute.java

@@ -0,0 +1,98 @@
+package com.xjrsoft.module.student.entity;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.github.yulichang.annotation.EntityMapping;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.io.Serializable;
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Date;
+
+
+/**
+* @title: 考核表单属性
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+@TableName("quota_formula_rule_attribute")
+@ApiModel(value = "quota_formula_rule_attribute", description = "考核表单属性")
+public class QuotaFormulaRuleAttribute implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    @TableId
+    private Long id;
+    /**
+    * 创建人
+    */
+    @ApiModelProperty("创建人")
+    @TableField(fill = FieldFill.INSERT)
+    private Long createUserId;
+    /**
+    * 创建时间
+    */
+    @ApiModelProperty("创建时间")
+    @TableField(fill = FieldFill.INSERT)
+    private Date createDate;
+    /**
+    * 修改人
+    */
+    @ApiModelProperty("修改人")
+    @TableField(fill = FieldFill.UPDATE)
+    private Long modifyUserId;
+    /**
+    * 修改时间
+    */
+    @ApiModelProperty("修改时间")
+    @TableField(fill = FieldFill.UPDATE)
+    private Date modifyDate;
+    /**
+    * 删除标记
+    */
+    @ApiModelProperty("删除标记")
+    @TableField(fill = FieldFill.INSERT)
+    @TableLogic
+    private Integer deleteMark;
+    /**
+    * 有效标志
+    */
+    @ApiModelProperty("有效标志")
+    @TableField(fill = FieldFill.INSERT)
+    private Integer enabledMark;
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 属性名称
+    */
+    @ApiModelProperty("属性名称")
+    private String name;
+    /**
+    * 属性值
+    */
+    @ApiModelProperty("属性值")
+    private String formula;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+
+}

+ 103 - 0
src/main/java/com/xjrsoft/module/student/entity/QuotaFormulaRuleConstant.java

@@ -0,0 +1,103 @@
+package com.xjrsoft.module.student.entity;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.github.yulichang.annotation.EntityMapping;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import java.io.Serializable;
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Date;
+
+
+/**
+* @title: 考核基数
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+@TableName("quota_formula_rule_constant")
+@ApiModel(value = "quota_formula_rule_constant", description = "考核基数")
+public class QuotaFormulaRuleConstant implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    @TableId
+    private Long id;
+    /**
+    * 创建人
+    */
+    @ApiModelProperty("创建人")
+    @TableField(fill = FieldFill.INSERT)
+    private Long createUserId;
+    /**
+    * 创建时间
+    */
+    @ApiModelProperty("创建时间")
+    @TableField(fill = FieldFill.INSERT)
+    private Date createDate;
+    /**
+    * 修改人
+    */
+    @ApiModelProperty("修改人")
+    @TableField(fill = FieldFill.UPDATE)
+    private Long modifyUserId;
+    /**
+    * 修改时间
+    */
+    @ApiModelProperty("修改时间")
+    @TableField(fill = FieldFill.UPDATE)
+    private Date modifyDate;
+    /**
+    * 删除标记
+    */
+    @ApiModelProperty("删除标记")
+    @TableField(fill = FieldFill.INSERT)
+    @TableLogic
+    private Integer deleteMark;
+    /**
+    * 有效标志
+    */
+    @ApiModelProperty("有效标志")
+    @TableField(fill = FieldFill.INSERT)
+    private Integer enabledMark;
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 基数名称
+    */
+    @ApiModelProperty("基数名称")
+    private String name;
+    /**
+    * 规则公式
+    */
+    @ApiModelProperty("规则公式")
+    private String formula;
+    /**
+    * 指标
+    */
+    @ApiModelProperty("指标")
+    private String bindQuota;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+
+}

+ 22 - 0
src/main/java/com/xjrsoft/module/student/mapper/QuotaFormulaRuleAttributeMapper.java

@@ -0,0 +1,22 @@
+package com.xjrsoft.module.student.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.base.MPJBaseMapper;
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleAttributePageDto;
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleConstantPageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRuleAttribute;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleAttributePageVo;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+* @title: 考核表单属性
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Mapper
+public interface QuotaFormulaRuleAttributeMapper extends MPJBaseMapper<QuotaFormulaRuleAttribute> {
+    Page<QuotaFormulaRuleAttributePageVo> getPage(Page<QuotaFormulaRuleAttributePageDto> page, QuotaFormulaRuleAttributePageDto dto);
+}

+ 22 - 0
src/main/java/com/xjrsoft/module/student/mapper/QuotaFormulaRuleConstantMapper.java

@@ -0,0 +1,22 @@
+package com.xjrsoft.module.student.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.base.MPJBaseMapper;
+import com.xjrsoft.module.personnel.dto.BasePersonnelLabourCapitalMonthPageDto;
+import com.xjrsoft.module.personnel.vo.BasePersonnelLabourCapitalMonthPageVo;
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleConstantPageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRuleConstant;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+* @title: 考核基数
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Mapper
+public interface QuotaFormulaRuleConstantMapper extends MPJBaseMapper<QuotaFormulaRuleConstant> {
+    Page<QuotaFormulaRuleConstantPageVo> getPage(Page<QuotaFormulaRuleConstantPageDto> page, QuotaFormulaRuleConstantPageDto dto);
+}

+ 22 - 0
src/main/java/com/xjrsoft/module/student/mapper/QuotaFormulaRuleMapper.java

@@ -0,0 +1,22 @@
+package com.xjrsoft.module.student.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.base.MPJBaseMapper;
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleConstantPageDto;
+import com.xjrsoft.module.student.dto.QuotaFormulaRulePageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRule;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo;
+import com.xjrsoft.module.student.vo.QuotaFormulaRulePageVo;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+* @title: 指标公式规则管理
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Mapper
+public interface QuotaFormulaRuleMapper extends MPJBaseMapper<QuotaFormulaRule> {
+    Page<QuotaFormulaRulePageVo> getPage(Page<QuotaFormulaRulePageDto> page, QuotaFormulaRulePageDto dto);
+}

+ 23 - 0
src/main/java/com/xjrsoft/module/student/service/IQuotaFormulaRuleAttributeService.java

@@ -0,0 +1,23 @@
+package com.xjrsoft.module.student.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.github.yulichang.base.MPJBaseService;
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleAttributePageDto;
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleConstantPageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRuleAttribute;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleAttributePageVo;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo;
+import lombok.Data;
+import java.util.List;
+
+/**
+* @title: 考核表单属性
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+
+public interface IQuotaFormulaRuleAttributeService extends MPJBaseService<QuotaFormulaRuleAttribute> {
+    Page<QuotaFormulaRuleAttributePageVo> getPage(Page<QuotaFormulaRuleAttributePageDto> page, QuotaFormulaRuleAttributePageDto dto);
+}

+ 23 - 0
src/main/java/com/xjrsoft/module/student/service/IQuotaFormulaRuleConstantService.java

@@ -0,0 +1,23 @@
+package com.xjrsoft.module.student.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.github.yulichang.base.MPJBaseService;
+import com.xjrsoft.module.personnel.dto.LaborManagementPageDto;
+import com.xjrsoft.module.personnel.vo.LaborManagementPageVo;
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleConstantPageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRuleConstant;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo;
+import lombok.Data;
+import java.util.List;
+
+/**
+* @title: 考核基数
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+
+public interface IQuotaFormulaRuleConstantService extends MPJBaseService<QuotaFormulaRuleConstant> {
+    Page<QuotaFormulaRuleConstantPageVo> getPage(Page<QuotaFormulaRuleConstantPageDto> page, QuotaFormulaRuleConstantPageDto dto);
+}

+ 23 - 0
src/main/java/com/xjrsoft/module/student/service/IQuotaFormulaRuleService.java

@@ -0,0 +1,23 @@
+package com.xjrsoft.module.student.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.github.yulichang.base.MPJBaseService;
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleConstantPageDto;
+import com.xjrsoft.module.student.dto.QuotaFormulaRulePageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRule;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo;
+import com.xjrsoft.module.student.vo.QuotaFormulaRulePageVo;
+import lombok.Data;
+import java.util.List;
+
+/**
+* @title: 指标公式规则管理
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+
+public interface IQuotaFormulaRuleService extends MPJBaseService<QuotaFormulaRule> {
+    Page<QuotaFormulaRulePageVo> getPage(Page<QuotaFormulaRulePageDto> page, QuotaFormulaRulePageDto dto);
+}

+ 33 - 0
src/main/java/com/xjrsoft/module/student/service/impl/QuotaFormulaRuleAttributeServiceImpl.java

@@ -0,0 +1,33 @@
+package com.xjrsoft.module.student.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.yulichang.base.MPJBaseServiceImpl;
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleAttributePageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRuleAttribute;
+import com.xjrsoft.module.student.mapper.QuotaFormulaRuleAttributeMapper;
+import com.xjrsoft.module.student.service.IQuotaFormulaRuleAttributeService;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleAttributePageVo;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+
+/**
+* @title: 考核表单属性
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Service
+@AllArgsConstructor
+public class QuotaFormulaRuleAttributeServiceImpl extends MPJBaseServiceImpl<QuotaFormulaRuleAttributeMapper, QuotaFormulaRuleAttribute> implements IQuotaFormulaRuleAttributeService {
+    private final QuotaFormulaRuleAttributeMapper quotaFormulaRuleAttributeMapper;
+    @Override
+    public Page<QuotaFormulaRuleAttributePageVo> getPage(Page<QuotaFormulaRuleAttributePageDto> page, QuotaFormulaRuleAttributePageDto dto) {
+        return quotaFormulaRuleAttributeMapper.getPage(page,dto);
+    }
+}

+ 33 - 0
src/main/java/com/xjrsoft/module/student/service/impl/QuotaFormulaRuleConstantServiceImpl.java

@@ -0,0 +1,33 @@
+package com.xjrsoft.module.student.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.yulichang.base.MPJBaseServiceImpl;
+import com.xjrsoft.module.student.dto.QuotaFormulaRuleConstantPageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRuleConstant;
+import com.xjrsoft.module.student.mapper.QuotaFormulaRuleConstantMapper;
+import com.xjrsoft.module.student.service.IQuotaFormulaRuleConstantService;
+import com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+
+/**
+* @title: 考核基数
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Service
+@AllArgsConstructor
+public class QuotaFormulaRuleConstantServiceImpl extends MPJBaseServiceImpl<QuotaFormulaRuleConstantMapper, QuotaFormulaRuleConstant> implements IQuotaFormulaRuleConstantService {
+    private final QuotaFormulaRuleConstantMapper quotaFormulaRuleConstantMapper;
+    @Override
+    public Page<QuotaFormulaRuleConstantPageVo> getPage(Page<QuotaFormulaRuleConstantPageDto> page, QuotaFormulaRuleConstantPageDto dto) {
+        return quotaFormulaRuleConstantMapper.getPage(page,dto);
+    }
+}

+ 33 - 0
src/main/java/com/xjrsoft/module/student/service/impl/QuotaFormulaRuleServiceImpl.java

@@ -0,0 +1,33 @@
+package com.xjrsoft.module.student.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.yulichang.base.MPJBaseServiceImpl;
+import com.xjrsoft.module.student.dto.QuotaFormulaRulePageDto;
+import com.xjrsoft.module.student.entity.QuotaFormulaRule;
+import com.xjrsoft.module.student.mapper.QuotaFormulaRuleMapper;
+import com.xjrsoft.module.student.service.IQuotaFormulaRuleService;
+import com.xjrsoft.module.student.vo.QuotaFormulaRulePageVo;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+
+/**
+* @title: 指标公式规则管理
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Service
+@AllArgsConstructor
+public class QuotaFormulaRuleServiceImpl extends MPJBaseServiceImpl<QuotaFormulaRuleMapper, QuotaFormulaRule> implements IQuotaFormulaRuleService {
+    private final QuotaFormulaRuleMapper quotaFormulaRuleMapper;
+    @Override
+    public Page<QuotaFormulaRulePageVo> getPage(Page<QuotaFormulaRulePageDto> page, QuotaFormulaRulePageDto dto) {
+        return quotaFormulaRuleMapper.getPage(page, dto);
+    }
+}

+ 79 - 0
src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRuleAttributePageVo.java

@@ -0,0 +1,79 @@
+package com.xjrsoft.module.student.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import com.xjrsoft.common.annotation.Trans;
+import com.xjrsoft.common.enums.TransType;
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+* @title: 考核表单属性分页列表出参
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class QuotaFormulaRuleAttributePageVo {
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    private String id;
+    /**
+    * 创建人
+    */
+    @ApiModelProperty("创建人")
+    private Long createUserId;
+    /**
+    * 创建时间
+    */
+    @ApiModelProperty("创建时间")
+    private Date createDate;
+    /**
+    * 修改人
+    */
+    @ApiModelProperty("修改人")
+    private Long modifyUserId;
+    /**
+    * 修改时间
+    */
+    @ApiModelProperty("修改时间")
+    private Date modifyDate;
+    /**
+    * 删除标记
+    */
+    @ApiModelProperty("删除标记")
+    private Integer deleteMark;
+    /**
+    * 有效标志
+    */
+    @ApiModelProperty("有效标志")
+    private Integer enabledMark;
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 属性名称
+    */
+    @ApiModelProperty("属性名称")
+    private String name;
+    /**
+    * 属性值
+    */
+    @ApiModelProperty("属性值")
+    private String formula;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+}

+ 49 - 0
src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRuleAttributeVo.java

@@ -0,0 +1,49 @@
+package com.xjrsoft.module.student.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Date;
+
+/**
+* @title: 考核表单属性表单出参
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class QuotaFormulaRuleAttributeVo {
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    private Long id;
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 属性名称
+    */
+    @ApiModelProperty("属性名称")
+    private String name;
+    /**
+    * 属性值
+    */
+    @ApiModelProperty("属性值")
+    private String formula;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+
+
+}

+ 84 - 0
src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRuleConstantPageVo.java

@@ -0,0 +1,84 @@
+package com.xjrsoft.module.student.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import com.xjrsoft.common.annotation.Trans;
+import com.xjrsoft.common.enums.TransType;
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+* @title: 考核基数分页列表出参
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class QuotaFormulaRuleConstantPageVo {
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    private String id;
+    /**
+    * 创建人
+    */
+    @ApiModelProperty("创建人")
+    private Long createUserId;
+    /**
+    * 创建时间
+    */
+    @ApiModelProperty("创建时间")
+    private Date createDate;
+    /**
+    * 修改人
+    */
+    @ApiModelProperty("修改人")
+    private Long modifyUserId;
+    /**
+    * 修改时间
+    */
+    @ApiModelProperty("修改时间")
+    private Date modifyDate;
+    /**
+    * 删除标记
+    */
+    @ApiModelProperty("删除标记")
+    private Integer deleteMark;
+    /**
+    * 有效标志
+    */
+    @ApiModelProperty("有效标志")
+    private Integer enabledMark;
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 基数名称
+    */
+    @ApiModelProperty("基数名称")
+    private String name;
+    /**
+    * 规则公式
+    */
+    @ApiModelProperty("规则公式")
+    private String formula;
+    /**
+    * 指标
+    */
+    @ApiModelProperty("指标")
+    private String bindQuota;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+}

+ 54 - 0
src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRuleConstantVo.java

@@ -0,0 +1,54 @@
+package com.xjrsoft.module.student.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Date;
+
+/**
+* @title: 考核基数表单出参
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class QuotaFormulaRuleConstantVo {
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    private Long id;
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 基数名称
+    */
+    @ApiModelProperty("基数名称")
+    private String name;
+    /**
+    * 规则公式
+    */
+    @ApiModelProperty("规则公式")
+    private String formula;
+    /**
+    * 指标
+    */
+    @ApiModelProperty("指标")
+    private String bindQuota;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+
+
+}

+ 84 - 0
src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRulePageVo.java

@@ -0,0 +1,84 @@
+package com.xjrsoft.module.student.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import com.xjrsoft.common.annotation.Trans;
+import com.xjrsoft.common.enums.TransType;
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+* @title: 指标公式规则管理分页列表出参
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class QuotaFormulaRulePageVo {
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    private String id;
+    /**
+    * 创建人
+    */
+    @ApiModelProperty("创建人")
+    private Long createUserId;
+    /**
+    * 创建时间
+    */
+    @ApiModelProperty("创建时间")
+    private Date createDate;
+    /**
+    * 修改人
+    */
+    @ApiModelProperty("修改人")
+    private Long modifyUserId;
+    /**
+    * 修改时间
+    */
+    @ApiModelProperty("修改时间")
+    private Date modifyDate;
+    /**
+    * 删除标记
+    */
+    @ApiModelProperty("删除标记")
+    private Integer deleteMark;
+    /**
+    * 有效标志
+    */
+    @ApiModelProperty("有效标志")
+    private Integer enabledMark;
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 规则名称
+    */
+    @ApiModelProperty("规则名称")
+    private String name;
+    /**
+    * 规则公式
+    */
+    @ApiModelProperty("规则公式")
+    private String formula;
+    /**
+    * 指标
+    */
+    @ApiModelProperty("指标")
+    private String bindQuota;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+}

+ 54 - 0
src/main/java/com/xjrsoft/module/student/vo/QuotaFormulaRuleVo.java

@@ -0,0 +1,54 @@
+package com.xjrsoft.module.student.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalTime;
+import java.time.LocalDateTime;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Date;
+
+/**
+* @title: 指标公式规则管理表单出参
+* @Author szs
+* @Date: 2024-01-29
+* @Version 1.0
+*/
+@Data
+public class QuotaFormulaRuleVo {
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    private Long id;
+    /**
+    * 序号
+    */
+    @ApiModelProperty("序号")
+    private Integer sortCode;
+    /**
+    * 规则名称
+    */
+    @ApiModelProperty("规则名称")
+    private String name;
+    /**
+    * 规则公式
+    */
+    @ApiModelProperty("规则公式")
+    private String formula;
+    /**
+    * 指标
+    */
+    @ApiModelProperty("指标")
+    private String bindQuota;
+    /**
+    * 备注
+    */
+    @ApiModelProperty("备注")
+    private String remark;
+
+
+
+}

+ 12 - 0
src/main/resources/mapper/student/QuotaFormulaRuleAttributeMapper.xml

@@ -0,0 +1,12 @@
+<?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.xjrsoft.module.student.mapper.QuotaFormulaRuleAttributeMapper">
+    <select id="getPage" parameterType="com.xjrsoft.module.student.dto.QuotaFormulaRuleAttributePageDto" resultType="com.xjrsoft.module.student.vo.QuotaFormulaRuleAttributePageVo">
+        select  t.id, t.name, t.formula
+        from quota_formula_rule_attribute t
+        where t.delete_mark = 0
+        order by t.create_date
+    </select>
+</mapper>

+ 12 - 0
src/main/resources/mapper/student/QuotaFormulaRuleConstantMapper.xml

@@ -0,0 +1,12 @@
+<?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.xjrsoft.module.student.mapper.QuotaFormulaRuleConstantMapper">
+    <select id="getPage" parameterType="com.xjrsoft.module.student.dto.QuotaFormulaRuleConstantPageDto" resultType="com.xjrsoft.module.student.vo.QuotaFormulaRuleConstantPageVo">
+        select t.id, t.name, t.formula, t.bind_quota
+        from quota_formula_rule_constant t
+        where t.delete_mark = 0
+        order by t.create_date
+    </select>
+</mapper>

+ 12 - 0
src/main/resources/mapper/student/QuotaFormulaRuleMapper.xml

@@ -0,0 +1,12 @@
+<?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.xjrsoft.module.student.mapper.QuotaFormulaRuleMapper">
+    <select id="getPage" parameterType="com.xjrsoft.module.student.dto.QuotaFormulaRulePageDto" resultType="com.xjrsoft.module.student.vo.QuotaFormulaRulePageVo">
+        select t.id, t.name, t.formula, t.bind_quota
+        from quota_formula_rule t
+        where t.delete_mark = 0
+        order by t.create_date
+    </select>
+</mapper>

+ 87 - 0
src/test/java/com/xjrsoft/xjrsoftboot/FreeMarkerGeneratorTest.java

@@ -2099,4 +2099,91 @@ public class FreeMarkerGeneratorTest {
         apiGeneratorService.generateCodes(params);
 
     }
+
+    /**
+     * 指标公式规则管理
+     * @throws IOException
+     */
+    @Test
+    public void gcQuotaFormulaRule() throws IOException {
+        List<TableConfig> tableConfigs = new ArrayList<>();
+        TableConfig mainTable = new TableConfig();
+        mainTable.setTableName("quota_formula_rule");//init_sql中的表名
+        mainTable.setIsMain(true);//是否是主表,一般默认为true
+        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
+        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
+        tableConfigs.add(mainTable);
+
+        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
+        params.setAuthor("szs");//作者名称
+        params.setPackageName("student");//包名
+        params.setTableConfigs(tableConfigs);
+        params.setPage(true);//是否生成分页接口
+        params.setImport(false);//是否生成导入接口
+        params.setExport(false);//是否生成导出接口
+        params.setOutMainDir(true);//是否生成在主目录,前期测试可设置成false
+        params.setDs(ds);
+
+        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();
+
+        apiGeneratorService.generateCodes(params);
+    }
+
+    /**
+     * 考核表单属性
+     * @throws IOException
+     */
+    @Test
+    public void gcQuotaFormulaRuleAttribute() throws IOException {
+        List<TableConfig> tableConfigs = new ArrayList<>();
+        TableConfig mainTable = new TableConfig();
+        mainTable.setTableName("quota_formula_rule_attribute");//init_sql中的表名
+        mainTable.setIsMain(true);//是否是主表,一般默认为true
+        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
+        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
+        tableConfigs.add(mainTable);
+
+        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
+        params.setAuthor("szs");//作者名称
+        params.setPackageName("student");//包名
+        params.setTableConfigs(tableConfigs);
+        params.setPage(true);//是否生成分页接口
+        params.setImport(false);//是否生成导入接口
+        params.setExport(false);//是否生成导出接口
+        params.setOutMainDir(true);//是否生成在主目录,前期测试可设置成false
+        params.setDs(ds);
+
+        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();
+
+        apiGeneratorService.generateCodes(params);
+    }
+
+    /**
+     * 考核基数
+     * @throws IOException
+     */
+    @Test
+    public void gcQuotaFormulaRuleConstante() throws IOException {
+        List<TableConfig> tableConfigs = new ArrayList<>();
+        TableConfig mainTable = new TableConfig();
+        mainTable.setTableName("quota_formula_rule_constant");//init_sql中的表名
+        mainTable.setIsMain(true);//是否是主表,一般默认为true
+        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
+        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
+        tableConfigs.add(mainTable);
+
+        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
+        params.setAuthor("szs");//作者名称
+        params.setPackageName("student");//包名
+        params.setTableConfigs(tableConfigs);
+        params.setPage(true);//是否生成分页接口
+        params.setImport(false);//是否生成导入接口
+        params.setExport(false);//是否生成导出接口
+        params.setOutMainDir(true);//是否生成在主目录,前期测试可设置成false
+        params.setDs(ds);
+
+        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();
+
+        apiGeneratorService.generateCodes(params);
+    }
 }