Quellcode durchsuchen

一键生成年度积分

huangpeng vor 1 Woche
Ursprung
Commit
629a50e67d

+ 14 - 0
qhse-common/src/main/java/com/rongwei/bscommon/system/dao/QhsePointsUnitRecordDao.java

@@ -0,0 +1,14 @@
+package com.rongwei.bscommon.system.dao;
+
+import com.rongwei.bsentity.domain.QhsePointsUnitRecordDo;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+
+public interface QhsePointsUnitRecordDao extends QHSEMapper<QhsePointsUnitRecordDo> {
+
+
+    List<QhsePointsUnitRecordDo> getUnitPointInitializationDtata(@Param("year")int year);
+}

+ 32 - 0
qhse-common/src/main/java/com/rongwei/bscommon/system/service/impl/PointServiceImpl.java

@@ -2,12 +2,14 @@ package com.rongwei.bscommon.system.service.impl;
 
 import com.google.common.collect.Lists;
 import com.rongwei.bscommon.system.dao.QhseContractWorkersDao;
+import com.rongwei.bscommon.system.dao.QhsePointsUnitRecordDao;
 import com.rongwei.bscommon.system.service.PointService;
 import com.rongwei.bscommon.system.service.QhsePointsRedemptionService;
 import com.rongwei.bscommon.system.utils.QHSEUtils;
 import com.rongwei.bsentity.domain.QhseContractWorkersDo;
 import com.rongwei.bsentity.domain.QhsePointsRecordUserDo;
 import com.rongwei.bsentity.domain.QhsePointsRedemptionDo;
+import com.rongwei.bsentity.domain.QhsePointsUnitRecordDo;
 import com.rongwei.rwadmincommon.system.vo.SysUserVo;
 import com.rongwei.rwcommon.base.R;
 import com.rongwei.rwcommon.utils.SecurityUtil;
@@ -39,6 +41,13 @@ public class PointServiceImpl implements PointService {
     @Autowired
     private QhseContractWorkersDao qhseContractWorkersDao;
 
+    @Autowired
+    private QhsePointsUnitRecordDao qhsePointsUnitRecordDao;
+
+
+    @Autowired
+    private QhsePointsUnitRecordServiceImpl qhsePointsUnitRecordService;
+
     @Override
     public R userPointExchange(String id) {
         if (StringUtils.isBlank(id)) {
@@ -100,4 +109,27 @@ public class PointServiceImpl implements PointService {
         return R.ok("生成成功");
     }
 
+    public R unitPointInitialization() {
+        int year = LocalDate.now().getYear();
+        List<QhsePointsUnitRecordDo> uninitializedData = qhsePointsUnitRecordDao.getUnitPointInitializationDtata(year);
+        if (uninitializedData.isEmpty()) {
+            return R.error("当前年度所有单位都已生成积分记录");
+        }
+        SysUserVo currentUser = QHSEUtils.getCurrentUser();
+        QhsePointsUnitRecordDo qhsePointsUnitRecordDo;
+        List<QhsePointsUnitRecordDo> saveList = new ArrayList<>(uninitializedData.size());
+        for (QhsePointsUnitRecordDo uninitializedDatum : uninitializedData) {
+            qhsePointsUnitRecordDo = new QhsePointsUnitRecordDo();
+            QHSEUtils.initModelGeneralParameters(qhsePointsUnitRecordDo, currentUser);
+            qhsePointsUnitRecordDo.setSubcontractorid(uninitializedDatum.getId());
+            qhsePointsUnitRecordDo.setPointsyear(year);
+            qhsePointsUnitRecordDo.setUnitcode(uninitializedDatum.getUnitcode());
+            qhsePointsUnitRecordDo.setId(SecurityUtil.getUUID());
+            saveList.add(qhsePointsUnitRecordDo);
+        }
+        for (List<QhsePointsUnitRecordDo> qhsePointsUnitRecordDos : Lists.partition(saveList, 500)) {
+            qhsePointsUnitRecordService.getBaseMapper().insertBatchSomeColumn(qhsePointsUnitRecordDos);
+        }
+        return R.ok("生成成功");
+    }
 }

qhse-common/src/main/resources/mybatis/QhseDangerRewardManagementDao.xml → qhse-common/src/main/resources/mybatis/system/QhseDangerRewardManagementDao.xml


+ 18 - 0
qhse-common/src/main/resources/mybatis/system/QhsePointsUnitRecordDao.xml

@@ -0,0 +1,18 @@
+<?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.rongwei.bscommon.system.dao.QhsePointsUnitRecordDao">
+
+    <select id="getUnitPointInitializationDtata" resultType="com.rongwei.bsentity.domain.QhsePointsUnitRecordDo">
+        SELECT
+        a.*
+        FROM
+        qhse_subcontractor_outsourcing a
+        LEFT JOIN qhse_points_unit_record b
+        ON a.ID = b.SUBCONTRACTORID
+        AND b.POINTSYEAR = #{year,jdbcType=INTEGER}
+        <where>
+            a.DELETED = '0'
+            AND b.ID IS NULL;
+        </where>
+    </select>
+</mapper>

qhse-common/src/main/resources/mybatis/QhseVisitorManagementDao.xml → qhse-common/src/main/resources/mybatis/system/QhseVisitorManagementDao.xml


+ 58 - 0
qhse-entity/src/main/java/com/rongwei/bsentity/domain/QhseSubcontractorOutsourcingDo.java

@@ -0,0 +1,58 @@
+package com.rongwei.bsentity.domain;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * (QhseSubcontractorOutsourcing)表实体类
+ *
+ * @author makejava
+ * @since 2025-09-05 17:16:19
+ */
+@Data
+@TableName(value ="qhse_subcontractor_outsourcing")
+public class QhseSubcontractorOutsourcingDo extends Model<QhseSubcontractorOutsourcingDo> {
+//主键
+    private String id;
+//租户ID
+    private String tenantid;
+//扩展json格式配置
+    private String roption;
+//是否删除Y/N
+    private String deleted;
+//备注
+    private String remark;
+//创建时间
+    private Date createdate;
+//创建用户ID
+    private String createuserid;
+//修改日期
+    private Date modifydate;
+//修改用户ID
+    private String modifyuserid;
+//创建人名称
+    private String createusername;
+//修改人名称
+    private String modifyusername;
+//单位名称
+    private String unitname;
+//单位编号
+    private String unitcode;
+//分包商/合作方
+    private String subcontractorpartner;
+//状态
+    private String status;
+//单位类型(分包商/外协)
+    private String unittype;
+//部门ID
+    private String departmentid;
+//所属部门
+    private String departmentname;
+
+
+}
+

+ 10 - 0
qhse-server/src/main/java/com/rongwei/controller/PointController.java

@@ -46,4 +46,14 @@ public class PointController {
     }
 
 
+    /**
+     * 当前年度用户积分初始化
+     * @return 结果
+     */
+    @GetMapping("/unit/initialization")
+    public R unitPointInitialization() {
+        log.info("开始初始化单位年度积分");
+        return pointService.unitPointInitialization();
+    }
+
 }