更改计算方式
This commit is contained in:
parent
95161b1007
commit
b931707280
|
|
@ -25,9 +25,11 @@ import com.engine.salary.enums.UserStatusEnum;
|
|||
import com.engine.salary.enums.salaryformula.SalaryFormulaReferenceEnum;
|
||||
import com.engine.salary.enums.salaryformula.SalarySQLReferenceEnum;
|
||||
import com.engine.salary.enums.salarysob.SalarySobAdjustRuleTypeEnum;
|
||||
import com.engine.salary.mapper.SQLMapper;
|
||||
import com.engine.salary.util.JsonUtil;
|
||||
import com.engine.salary.util.SalaryDateUtil;
|
||||
import com.engine.salary.util.SalaryEntityUtil;
|
||||
import com.engine.salary.util.db.MapperProxyFactory;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
import lombok.Data;
|
||||
|
|
@ -243,6 +245,7 @@ public class CalculateFormulaVarBO {
|
|||
* @param resultMap 返回结果集
|
||||
*/
|
||||
private void handleSalaryArchiveData(SalaryAcctCalculateBO salaryAcctCalculateBO, Map<String, List<FormulaVarValue>> resultMap, KQGroupService kqGroupService) {
|
||||
|
||||
// 调薪计薪规则
|
||||
Map<Long, SalarySobAdjustRulePO> salarySobAdjustRulePOMap = SalaryEntityUtil.convert2Map(salaryAcctCalculateBO.getSalarySobAdjustRulePOS(),
|
||||
SalarySobAdjustRulePO::getSalaryItemId);
|
||||
|
|
@ -414,6 +417,10 @@ public class CalculateFormulaVarBO {
|
|||
}
|
||||
|
||||
|
||||
private SQLMapper getSQLMapper() {
|
||||
return MapperProxyFactory.getProxy(SQLMapper.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取应出勤时数
|
||||
* @param fromDate
|
||||
|
|
@ -421,18 +428,18 @@ public class CalculateFormulaVarBO {
|
|||
* @param userId
|
||||
*/
|
||||
private Double getKQYcq(Date fromDate, Date endDate, Long userId) {
|
||||
RecordSet rs = new RecordSet();
|
||||
double ycq = 0.00;
|
||||
// double scq = 0.00;
|
||||
String sql = "SELECT sum(workdays),sum(attendancemins) FROM kq_format_total WHERE workdays is not null and resourceid = "+userId+" and kqdate >= '" +SalaryDateUtil.getFormatDate(fromDate)+"' and kqdate <= '"+ SalaryDateUtil.getFormatDate(endDate)+"'";
|
||||
BaseBean baseBean = new BaseBean();
|
||||
double ycq = 0.00;
|
||||
String sql = "SELECT sum(workdays) as a,sum(attendancemins) FROM kq_format_total WHERE workdays is not null and resourceid = "+userId+" and kqdate >= '" +SalaryDateUtil.getFormatDate(fromDate)+"' and kqdate <= '"+ SalaryDateUtil.getFormatDate(endDate)+"'";
|
||||
baseBean.writeLog("klb-1" + sql);
|
||||
rs.execute(sql);
|
||||
if (rs.next()) {
|
||||
ycq = rs.getInt(1) == -1 ? 0.00 : BigDecimal.valueOf(rs.getInt(1)).doubleValue();
|
||||
baseBean.writeLog("klb-2" + ycq);
|
||||
} else {
|
||||
baseBean.writeLog("klb-3" + rs.toString());
|
||||
List<Map> list = getSQLMapper().runSQL(sql);
|
||||
baseBean.writeLog("klb-list" +list);
|
||||
if (CollectionUtils.isNotEmpty(list)) {
|
||||
Object value = list.get(0).get("a");
|
||||
if (value != null) {
|
||||
baseBean.writeLog("klb-value" +value);
|
||||
ycq = NumberUtils.isCreatable(value.toString()) ? Double.valueOf(value.toString()) : Double.valueOf("0");
|
||||
}
|
||||
}
|
||||
return ycq;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue