Commit d370a4cc authored by 廖旭伟's avatar 廖旭伟

员工绩效汇总增加加分说明,加分合计,总得分字段

parent 4027e3bc
......@@ -64,5 +64,8 @@ public class StaffPerformUtil {
summary = summary.add(complainScore);
}
staffPerformSummaryEntity.setTotalScore(summary);
if(staffPerformSummaryEntity.getAddTotalScore()!=null){
staffPerformSummaryEntity.setSumScore(staffPerformSummaryEntity.getTotalScore().add(staffPerformSummaryEntity.getAddTotalScore()));
}
}
}
......@@ -96,7 +96,9 @@ public class StaffCheckSummaryService implements IApplicationStartedService {
staffPerformSummaryEntity.setComplainScore(BigDecimal.ZERO);
staffPerformSummaryEntity.setAttendScore(BigDecimal.ZERO);
staffPerformSummaryEntity.setTotalScore(StaffPerformUtil.SCORE100);
staffPerformSummaryEntity.setAddTotalScore(BigDecimal.ZERO);
staffPerformSummaryEntity.setErrorScore(BigDecimal.ZERO);
staffPerformSummaryEntity.setSumScore(StaffPerformUtil.SCORE100);
staffPerformSummaryEntity.setUpdateTime(new Date());
Map<String,Object> condition = new HashMap<>();
condition.put("year",year);
......
package com.mortals.xhx.module.staff.model;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.ap.GlobalSysInfo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.common.key.ParamKey;
import com.mortals.xhx.module.staff.model.vo.StaffPerformSummaryVo;
import com.mortals.xhx.utils.SpringUtils;
import lombok.Data;
/**
* 员工绩效统计实体对象
*
* @author zxfei
* @date 2023-07-18
* @date 2024-07-22
*/
@Data
public class StaffPerformSummaryEntity extends StaffPerformSummaryVo {
......@@ -103,18 +102,33 @@ public class StaffPerformSummaryEntity extends StaffPerformSummaryVo {
/**
* 备注
*/
@Excel(name = "备注",sort = 15)
@Excel(name = "备注1",sort = 17)
private String remark;
/**
* 年
*/
@Excel(name = "年",sort = 13)
@Excel(name = "年",sort = 15)
private Integer year;
/**
* 月
*/
@Excel(name = "月",sort = 14)
@Excel(name = "月",sort = 16)
private Integer month;
/**
* 加分备注
*/
private String remarkAdd;
/**
* 加分合计
*/
@Excel(name = "加分",sort = 13)
private BigDecimal addTotalScore;
/**
* 合计得分
*/
@Excel(name = "合计得分",sort = 14)
private BigDecimal sumScore;
@Override
public int hashCode() {
return this.getId().hashCode();
......@@ -132,7 +146,6 @@ public class StaffPerformSummaryEntity extends StaffPerformSummaryVo {
}
public void initAttrValue(){
this.staffId = 0L;
this.workNum = "";
......@@ -157,7 +170,7 @@ public class StaffPerformSummaryEntity extends StaffPerformSummaryVo {
this.errorScore = new BigDecimal(0);
this.totalScore = new BigDecimal(0);
this.totalScore = new BigDecimal(100);
this.remark = "";
......@@ -173,5 +186,11 @@ public class StaffPerformSummaryEntity extends StaffPerformSummaryVo {
this.salaId = null;
this.salaName = "";
this.remarkAdd = "";
this.addTotalScore = BigDecimal.ZERO;
this.sumScore = new BigDecimal(100);;
}
}
\ No newline at end of file
......@@ -7,7 +7,7 @@ import com.mortals.xhx.module.staff.model.StaffPerformSummaryEntity;
* 员工绩效统计查询对象
*
* @author zxfei
* @date 2024-03-12
* @date 2024-07-22
*/
public class StaffPerformSummaryQuery extends StaffPerformSummaryEntity {
/** 开始 主键ID,主键,自增长 */
......@@ -292,6 +292,41 @@ public class StaffPerformSummaryQuery extends StaffPerformSummaryEntity {
/** 所属大厅名称排除列表 */
private List <String> salaNameNotList;
/** 加分备注 */
private List<String> remarkAddList;
/** 加分备注排除列表 */
private List <String> remarkAddNotList;
/** 开始 加分合计 */
private BigDecimal addTotalScoreStart;
/** 结束 加分合计 */
private BigDecimal addTotalScoreEnd;
/** 增加 加分合计 */
private BigDecimal addTotalScoreIncrement;
/** 加分合计列表 */
private List <BigDecimal> addTotalScoreList;
/** 加分合计排除列表 */
private List <BigDecimal> addTotalScoreNotList;
/** 开始 合计得分 */
private BigDecimal sumScoreStart;
/** 结束 合计得分 */
private BigDecimal sumScoreEnd;
/** 增加 合计得分 */
private BigDecimal sumScoreIncrement;
/** 合计得分列表 */
private List <BigDecimal> sumScoreList;
/** 合计得分排除列表 */
private List <BigDecimal> sumScoreNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<StaffPerformSummaryQuery> orConditionList;
......@@ -1852,6 +1887,200 @@ public class StaffPerformSummaryQuery extends StaffPerformSummaryEntity {
this.salaNameNotList = salaNameNotList;
}
/**
* 获取 加分备注
* @return remarkAddList
*/
public List<String> getRemarkAddList(){
return this.remarkAddList;
}
/**
* 设置 加分备注
* @param remarkAddList
*/
public void setRemarkAddList(List<String> remarkAddList){
this.remarkAddList = remarkAddList;
}
/**
* 获取 加分备注
* @return remarkAddNotList
*/
public List<String> getRemarkAddNotList(){
return this.remarkAddNotList;
}
/**
* 设置 加分备注
* @param remarkAddNotList
*/
public void setRemarkAddNotList(List<String> remarkAddNotList){
this.remarkAddNotList = remarkAddNotList;
}
/**
* 获取 开始 加分合计
* @return addTotalScoreStart
*/
public BigDecimal getAddTotalScoreStart(){
return this.addTotalScoreStart;
}
/**
* 设置 开始 加分合计
* @param addTotalScoreStart
*/
public void setAddTotalScoreStart(BigDecimal addTotalScoreStart){
this.addTotalScoreStart = addTotalScoreStart;
}
/**
* 获取 结束 加分合计
* @return $addTotalScoreEnd
*/
public BigDecimal getAddTotalScoreEnd(){
return this.addTotalScoreEnd;
}
/**
* 设置 结束 加分合计
* @param addTotalScoreEnd
*/
public void setAddTotalScoreEnd(BigDecimal addTotalScoreEnd){
this.addTotalScoreEnd = addTotalScoreEnd;
}
/**
* 获取 增加 加分合计
* @return addTotalScoreIncrement
*/
public BigDecimal getAddTotalScoreIncrement(){
return this.addTotalScoreIncrement;
}
/**
* 设置 增加 加分合计
* @param addTotalScoreIncrement
*/
public void setAddTotalScoreIncrement(BigDecimal addTotalScoreIncrement){
this.addTotalScoreIncrement = addTotalScoreIncrement;
}
/**
* 获取 加分合计
* @return addTotalScoreList
*/
public List<BigDecimal> getAddTotalScoreList(){
return this.addTotalScoreList;
}
/**
* 设置 加分合计
* @param addTotalScoreList
*/
public void setAddTotalScoreList(List<BigDecimal> addTotalScoreList){
this.addTotalScoreList = addTotalScoreList;
}
/**
* 获取 加分合计
* @return addTotalScoreNotList
*/
public List<BigDecimal> getAddTotalScoreNotList(){
return this.addTotalScoreNotList;
}
/**
* 设置 加分合计
* @param addTotalScoreNotList
*/
public void setAddTotalScoreNotList(List<BigDecimal> addTotalScoreNotList){
this.addTotalScoreNotList = addTotalScoreNotList;
}
/**
* 获取 开始 合计得分
* @return sumScoreStart
*/
public BigDecimal getSumScoreStart(){
return this.sumScoreStart;
}
/**
* 设置 开始 合计得分
* @param sumScoreStart
*/
public void setSumScoreStart(BigDecimal sumScoreStart){
this.sumScoreStart = sumScoreStart;
}
/**
* 获取 结束 合计得分
* @return $sumScoreEnd
*/
public BigDecimal getSumScoreEnd(){
return this.sumScoreEnd;
}
/**
* 设置 结束 合计得分
* @param sumScoreEnd
*/
public void setSumScoreEnd(BigDecimal sumScoreEnd){
this.sumScoreEnd = sumScoreEnd;
}
/**
* 获取 增加 合计得分
* @return sumScoreIncrement
*/
public BigDecimal getSumScoreIncrement(){
return this.sumScoreIncrement;
}
/**
* 设置 增加 合计得分
* @param sumScoreIncrement
*/
public void setSumScoreIncrement(BigDecimal sumScoreIncrement){
this.sumScoreIncrement = sumScoreIncrement;
}
/**
* 获取 合计得分
* @return sumScoreList
*/
public List<BigDecimal> getSumScoreList(){
return this.sumScoreList;
}
/**
* 设置 合计得分
* @param sumScoreList
*/
public void setSumScoreList(List<BigDecimal> sumScoreList){
this.sumScoreList = sumScoreList;
}
/**
* 获取 合计得分
* @return sumScoreNotList
*/
public List<BigDecimal> getSumScoreNotList(){
return this.sumScoreNotList;
}
/**
* 设置 合计得分
* @param sumScoreNotList
*/
public void setSumScoreNotList(List<BigDecimal> sumScoreNotList){
this.sumScoreNotList = sumScoreNotList;
}
/**
* 设置 主键ID,主键,自增长
* @param id
......@@ -2832,6 +3061,133 @@ public class StaffPerformSummaryQuery extends StaffPerformSummaryEntity {
return this;
}
/**
* 设置 加分备注
* @param remarkAdd
*/
public StaffPerformSummaryQuery remarkAdd(String remarkAdd){
setRemarkAdd(remarkAdd);
return this;
}
/**
* 设置 加分备注
* @param remarkAddList
*/
public StaffPerformSummaryQuery remarkAddList(List<String> remarkAddList){
this.remarkAddList = remarkAddList;
return this;
}
/**
* 设置 加分合计
* @param addTotalScore
*/
public StaffPerformSummaryQuery addTotalScore(BigDecimal addTotalScore){
setAddTotalScore(addTotalScore);
return this;
}
/**
* 设置 开始 加分合计
* @param addTotalScoreStart
*/
public StaffPerformSummaryQuery addTotalScoreStart(BigDecimal addTotalScoreStart){
this.addTotalScoreStart = addTotalScoreStart;
return this;
}
/**
* 设置 结束 加分合计
* @param addTotalScoreEnd
*/
public StaffPerformSummaryQuery addTotalScoreEnd(BigDecimal addTotalScoreEnd){
this.addTotalScoreEnd = addTotalScoreEnd;
return this;
}
/**
* 设置 增加 加分合计
* @param addTotalScoreIncrement
*/
public StaffPerformSummaryQuery addTotalScoreIncrement(BigDecimal addTotalScoreIncrement){
this.addTotalScoreIncrement = addTotalScoreIncrement;
return this;
}
/**
* 设置 加分合计
* @param addTotalScoreList
*/
public StaffPerformSummaryQuery addTotalScoreList(List<BigDecimal> addTotalScoreList){
this.addTotalScoreList = addTotalScoreList;
return this;
}
/**
* 设置 加分合计
* @param addTotalScoreNotList
*/
public StaffPerformSummaryQuery addTotalScoreNotList(List<BigDecimal> addTotalScoreNotList){
this.addTotalScoreNotList = addTotalScoreNotList;
return this;
}
/**
* 设置 合计得分
* @param sumScore
*/
public StaffPerformSummaryQuery sumScore(BigDecimal sumScore){
setSumScore(sumScore);
return this;
}
/**
* 设置 开始 合计得分
* @param sumScoreStart
*/
public StaffPerformSummaryQuery sumScoreStart(BigDecimal sumScoreStart){
this.sumScoreStart = sumScoreStart;
return this;
}
/**
* 设置 结束 合计得分
* @param sumScoreEnd
*/
public StaffPerformSummaryQuery sumScoreEnd(BigDecimal sumScoreEnd){
this.sumScoreEnd = sumScoreEnd;
return this;
}
/**
* 设置 增加 合计得分
* @param sumScoreIncrement
*/
public StaffPerformSummaryQuery sumScoreIncrement(BigDecimal sumScoreIncrement){
this.sumScoreIncrement = sumScoreIncrement;
return this;
}
/**
* 设置 合计得分
* @param sumScoreList
*/
public StaffPerformSummaryQuery sumScoreList(List<BigDecimal> sumScoreList){
this.sumScoreList = sumScoreList;
return this;
}
/**
* 设置 合计得分
* @param sumScoreNotList
*/
public StaffPerformSummaryQuery sumScoreNotList(List<BigDecimal> sumScoreNotList){
this.sumScoreNotList = sumScoreNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
......
......@@ -22,4 +22,6 @@ public class StaffPerformSummaryVo extends BaseEntityLong {
private String phoneNumber;
private Integer sortKind;
@Excel(name = "备注2",sort = 18)
private String remarkAddDesc;
}
\ No newline at end of file
package com.mortals.xhx.module.staff.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.common.pdu.WeightPdu;
import com.mortals.xhx.common.utils.StaffPerformUtil;
......@@ -72,6 +74,14 @@ public class StaffPerformSummaryServiceImpl extends AbstractCRUDServiceImpl<Staf
item.setPhoneNumber(staffEntity.getPhoneNumber());
}
computeSummary(item,weightPdu);
if(StringUtils.isNotEmpty(item.getRemarkAdd())){
List<JSONObject> jList = JSONArray.parseArray(item.getRemarkAdd(),JSONObject.class);
String desc = "";
for (JSONObject jsonObject:jList){
desc+=jsonObject.getString("name")+"("+jsonObject.getString("score")+");";
}
item.setRemarkAddDesc(desc);
}
}
}
}
......@@ -106,4 +116,12 @@ public class StaffPerformSummaryServiceImpl extends AbstractCRUDServiceImpl<Staf
staffPerformSummaryEntity.setEffectScore(effectScore.setScale(2,BigDecimal.ROUND_DOWN));
}
@Override
protected void updateBefore(StaffPerformSummaryEntity entity, Context context) throws AppException {
super.updateBefore(entity,context);
if(entity.getAddTotalScore()!=null){
entity.setSumScore(entity.getTotalScore().add(entity.getAddTotalScore()));
}
}
}
......@@ -1333,3 +1333,12 @@ ADD KEY `appealPerson` (`appealPerson`) USING BTREE;
-- ----------------------------
INSERT INTO `mortals_xhx_perform_rules` (`ruleCode`, `categoryId`, `categoryName`, `name`, `content`, `subAddType`, `score`, `assoOwner`, `ownerScore`, `remark`, `type`, `createUserId`, `createTime`, `updateUserId`, `updateTime`) VALUES ('ATTEND1010', '1', '', '事假半天', '事假半天', '2', '0.5', '0', '0.00', '', '1', '1', NOW(), NULL, NULL);
INSERT INTO `mortals_xhx_perform_rules` (`ruleCode`, `categoryId`, `categoryName`, `name`, `content`, `subAddType`, `score`, `assoOwner`, `ownerScore`, `remark`, `type`, `createUserId`, `createTime`, `updateUserId`, `updateTime`) VALUES ('ATTEND1011', '1', '', '事假全天', '事假全天', '2', '1', '0', '0.00', '', '1', '1', NOW(), NULL, NULL);
-- ----------------------------
2024-07-22
-- ----------------------------
ALTER TABLE `mortals_xhx_staff_perform_summary`
ADD COLUMN `remarkAdd` VARCHAR (255) DEFAULT NULL COMMENT '加分备注' AFTER `month`,
ADD COLUMN `addTotalScore` DECIMAL (10, 2) DEFAULT NULL COMMENT '加分合计' AFTER `remarkAdd`,
ADD COLUMN `sumScore` DECIMAL (10, 2) DEFAULT NULL COMMENT '合计得分' AFTER `addTotalScore`;
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment