Browse Source

修改代码

feature/dangjian
yujintao 6 years ago
parent
commit
ec9aeef91d
  1. 2
      esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/dao/KpiMetaDataDao.java
  2. 10
      esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/KpiMetaDataService.java
  3. 67
      esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/impl/KpiManualScoreServiceImpl.java
  4. 3
      esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/impl/KpiMetaDataServiceImpl.java

2
esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/dao/KpiMetaDataDao.java

@ -24,9 +24,7 @@ import com.elink.esua.epdc.entity.KpiMetaDataEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 绩效考核的元数据 * 绩效考核的元数据

10
esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/KpiMetaDataService.java

@ -130,4 +130,14 @@ public interface KpiMetaDataService extends BaseService<KpiMetaDataEntity> {
*/ */
void statGridEvaluation(); void statGridEvaluation();
/**
* 先删除已有数据再批量插入元数据表
*
* @param metaDateList
* @return void
* @author qushutong
* @date 2019/12/24 14:38
*/
void deleteAndInsertBatch(List<KpiMetaDataEntity> metaDateList);
} }

67
esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/impl/KpiManualScoreServiceImpl.java

@ -33,6 +33,7 @@ import com.elink.esua.epdc.enums.KpiMetaDataEnum;
import com.elink.esua.epdc.excel.KpiManualScoreTemplateExcel; import com.elink.esua.epdc.excel.KpiManualScoreTemplateExcel;
import com.elink.esua.epdc.feign.AdminFeignClient; import com.elink.esua.epdc.feign.AdminFeignClient;
import com.elink.esua.epdc.service.KpiManualScoreService; import com.elink.esua.epdc.service.KpiManualScoreService;
import com.elink.esua.epdc.service.KpiMetaDataService;
import com.elink.esua.epdc.utils.DeptUtils; import com.elink.esua.epdc.utils.DeptUtils;
import com.elink.esua.epdc.utils.KpiLocalDateUtils; import com.elink.esua.epdc.utils.KpiLocalDateUtils;
import com.elink.esua.epdc.utils.StreamUtils; import com.elink.esua.epdc.utils.StreamUtils;
@ -72,7 +73,7 @@ public class KpiManualScoreServiceImpl extends BaseServiceImpl<KpiManualScoreDao
private KpiResultGridDao kpiResultGridDao; private KpiResultGridDao kpiResultGridDao;
@Autowired @Autowired
private KpiMetaDataDao kpiMetaDataDao; private KpiMetaDataService kpiMetaDataService;
@Autowired @Autowired
private DeptUtils deptUtils; private DeptUtils deptUtils;
@ -490,6 +491,13 @@ public class KpiManualScoreServiceImpl extends BaseServiceImpl<KpiManualScoreDao
baseDao.deleteBatchIds(Arrays.asList(ids)); baseDao.deleteBatchIds(Arrays.asList(ids));
} }
@Override
public void initManualScoreToMetaData() {
initManualScoreToMetaDataByCycle(KpiCycleEnum.KPI_CYCLE_MONTH.getValue());
initManualScoreToMetaDataByCycle(KpiCycleEnum.KPI_CYCLE_QUARTER.getValue());
initManualScoreToMetaDataByCycle(KpiCycleEnum.KPI_CYCLE_YEAR.getValue());
}
/** /**
* @param entity * @param entity
* @return com.baomidou.mybatisplus.core.conditions.query.QueryWrapper<com.elink.esua.epdc.entity.KpiManualScoreEntity> * @return com.baomidou.mybatisplus.core.conditions.query.QueryWrapper<com.elink.esua.epdc.entity.KpiManualScoreEntity>
@ -497,7 +505,7 @@ public class KpiManualScoreServiceImpl extends BaseServiceImpl<KpiManualScoreDao
* @Description * @Description
* @Date 2019/12/6 13:58 * @Date 2019/12/6 13:58
**/ **/
public QueryWrapper<KpiManualScoreEntity> getUniqueWrapper(KpiManualScoreEntity entity) { private QueryWrapper<KpiManualScoreEntity> getUniqueWrapper(KpiManualScoreEntity entity) {
QueryWrapper<KpiManualScoreEntity> wrapper = new QueryWrapper<>(); QueryWrapper<KpiManualScoreEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(entity.getRuleId()), "RULE_ID", entity.getRuleId()) wrapper.eq(StringUtils.isNotBlank(entity.getRuleId()), "RULE_ID", entity.getRuleId())
.eq(null != entity.getDeptId(), "DEPT_ID", entity.getDeptId()) .eq(null != entity.getDeptId(), "DEPT_ID", entity.getDeptId())
@ -515,13 +523,6 @@ public class KpiManualScoreServiceImpl extends BaseServiceImpl<KpiManualScoreDao
return wrapper; return wrapper;
} }
@Override
public void initManualScoreToMetaData() {
initManualScoreToMetaDataByCycle(KpiCycleEnum.KPI_CYCLE_MONTH.getValue());
initManualScoreToMetaDataByCycle(KpiCycleEnum.KPI_CYCLE_QUARTER.getValue());
initManualScoreToMetaDataByCycle(KpiCycleEnum.KPI_CYCLE_YEAR.getValue());
}
/** /**
* 根据考核周期将手动打分初始化为元数据 * 根据考核周期将手动打分初始化为元数据
* *
@ -536,33 +537,46 @@ public class KpiManualScoreServiceImpl extends BaseServiceImpl<KpiManualScoreDao
return; return;
} }
Date endDate = LocalDateUtils.localDateToDate(YearMonth.now().minusMonths(NumConstant.ONE).atEndOfMonth()); Date endDate = LocalDateUtils.localDateToDate(YearMonth.now().minusMonths(NumConstant.ONE).atEndOfMonth());
int pageIndex = NumConstant.ONE;
int pageIndex = NumConstant.ONE;
List<Long> deptIdList = deptUtils.getDeptIdList(OrganizationTypeConstant.ORG_TYPE_GRID_PARTY, NumConstant.TWENTY, pageIndex); List<Long> deptIdList = deptUtils.getDeptIdList(OrganizationTypeConstant.ORG_TYPE_GRID_PARTY, NumConstant.TWENTY, pageIndex);
List<KpiMetaDataEntity> metaDataList;
do {
metaDataList = Lists.newArrayList();
for (Long deptId : deptIdList) {
KpiManualScoreEntity scoreEntity = this.getKpiManualScoreEntity(deptId, startDate, endDate);
metaDataList.add(packageKpiMetaDataEntity(deptId, startDate, endDate, kpiCycle, null == scoreEntity ? BigDecimal.ZERO : scoreEntity.getScore()));
}
kpiMetaDataService.deleteAndInsertBatch(metaDataList);
pageIndex++;
deptIdList = deptUtils.getDeptIdList(OrganizationTypeConstant.ORG_TYPE_GRID_PARTY, NumConstant.TWENTY, pageIndex);
} while (CollUtil.isNotEmpty(deptIdList));
}
/**
* 组装元数据对象
*
* @param deptId
* @param startDate
* @param endDate
* @param kpiCycle
* @param score
* @return com.elink.esua.epdc.entity.KpiMetaDataEntity
* @author work@yujt.net.cn
* @date 2019/12/25 15:53
*/
private KpiMetaDataEntity packageKpiMetaDataEntity(Long deptId, Date startDate, Date endDate, String kpiCycle, BigDecimal score) {
KpiMetaDataEntity metaDataEntity = new KpiMetaDataEntity(); KpiMetaDataEntity metaDataEntity = new KpiMetaDataEntity();
metaDataEntity.setDeptTypeKey(OrganizationTypeConstant.ORG_TYPE_GRID_PARTY); metaDataEntity.setDeptTypeKey(OrganizationTypeConstant.ORG_TYPE_GRID_PARTY);
metaDataEntity.setEndDate(endDate); metaDataEntity.setEndDate(endDate);
metaDataEntity.setStartDate(startDate); metaDataEntity.setStartDate(startDate);
metaDataEntity.setKpiCycle(kpiCycle); metaDataEntity.setKpiCycle(kpiCycle);
metaDataEntity.setDeptId(deptId);
metaDataEntity.setDataValue(BigDecimal.ZERO);
metaDataEntity.setDataValue(score);
metaDataEntity.setDataCode(KpiMetaDataEnum.GRID_SCORE_BY_SUPERIOR_MANUAL.getValue()); metaDataEntity.setDataCode(KpiMetaDataEnum.GRID_SCORE_BY_SUPERIOR_MANUAL.getValue());
metaDataEntity.setDataName(KpiMetaDataEnum.GRID_SCORE_BY_SUPERIOR_MANUAL.getName()); metaDataEntity.setDataName(KpiMetaDataEnum.GRID_SCORE_BY_SUPERIOR_MANUAL.getName());
return metaDataEntity;
do {
for (Long deptId : deptIdList) {
metaDataEntity.setDeptId(deptId);
metaDataEntity.setDataValue(BigDecimal.ZERO);
KpiManualScoreEntity scoreEntity = this.getKpiManualScoreEntity(deptId, startDate, endDate);
if (null != scoreEntity) {
metaDataEntity.setDataValue(scoreEntity.getScore());
}
kpiMetaDataDao.insert(metaDataEntity);
}
pageIndex++;
deptIdList = deptUtils.getDeptIdList(OrganizationTypeConstant.ORG_TYPE_GRID_PARTY, NumConstant.TWENTY, pageIndex);
} while (CollUtil.isNotEmpty(deptIdList));
} }
@ -583,4 +597,5 @@ public class KpiManualScoreServiceImpl extends BaseServiceImpl<KpiManualScoreDao
.eq(KpiFieldConstant.SCORE_END_DATE, endDate); .eq(KpiFieldConstant.SCORE_END_DATE, endDate);
return baseDao.selectOne(wrapper); return baseDao.selectOne(wrapper);
} }
} }

3
esua-epdc/epdc-module/epdc-kpi/epdc-kpi-server/src/main/java/com/elink/esua/epdc/service/impl/KpiMetaDataServiceImpl.java

@ -438,7 +438,8 @@ public class KpiMetaDataServiceImpl extends BaseServiceImpl<KpiMetaDataDao, KpiM
* @author qushutong * @author qushutong
* @date 2019/12/24 14:38 * @date 2019/12/24 14:38
*/ */
private void deleteAndInsertBatch(List<KpiMetaDataEntity> metaDateList) { @Override
public void deleteAndInsertBatch(List<KpiMetaDataEntity> metaDateList) {
baseDao.deleteListRepetitionMeta(metaDateList); baseDao.deleteListRepetitionMeta(metaDateList);
this.insertBatch(metaDateList); this.insertBatch(metaDateList);
} }

Loading…
Cancel
Save