港湾新批量调薪
This commit is contained in:
parent
2f42845578
commit
e7de9d7d1e
|
|
@ -0,0 +1,21 @@
|
|||
CREATE TABLE hrsa_gw_pltx_dt1 (
|
||||
id bigint NOT NULL,
|
||||
mainid bigint NULL,
|
||||
xm int NULL ,
|
||||
bm int NULL ,
|
||||
gw text NULL,
|
||||
qnjxfs decimal(38, 2) NULL,
|
||||
jbgz decimal(38, 2) NULL ,
|
||||
dx decimal(38, 2) NULL,
|
||||
dxhjbgz decimal(38, 2) NULL,
|
||||
dxbl decimal(38, 4) NULL ,
|
||||
gskjywr text NULL ,
|
||||
hjxz decimal(38, 2) NULL ,
|
||||
dzhhjxz decimal(38, 2) NULL ,
|
||||
hjxzdzbl decimal(38, 4) NULL ,
|
||||
bz text NULL,
|
||||
nzjj decimal(38, 2) NULL ,
|
||||
delete_type int NULL ,
|
||||
PRIMARY KEY (id)
|
||||
)
|
||||
GO
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
package com.engine.salary.action;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.salary.entity.salaryacct.po.GwPltxDt1PO;
|
||||
import com.engine.salary.entity.salaryarchive.param.SalaryArchiveImportActionParam;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.engine.salary.service.GwPltxDt1Service;
|
||||
import com.engine.salary.service.SalaryItemService;
|
||||
import com.engine.salary.service.impl.GwPltxDt1ServiceImpl;
|
||||
import com.engine.salary.service.impl.SalaryItemServiceImpl;
|
||||
import com.engine.salary.wrapper.SalaryArchiveWrapper;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import weaver.general.BaseBean;
|
||||
import weaver.general.Util;
|
||||
import weaver.hrm.User;
|
||||
import weaver.interfaces.workflow.action.Action;
|
||||
import weaver.soa.workflow.request.Property;
|
||||
import weaver.soa.workflow.request.RequestInfo;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 上海港湾 - 第六层级批量流程调薪
|
||||
*/
|
||||
@Slf4j
|
||||
public class shgwPltxActionNEW implements Action {
|
||||
|
||||
|
||||
private GwPltxDt1Service getGwPltxDt1Service(User user) {
|
||||
return ServiceUtil.getService(GwPltxDt1ServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalaryArchiveWrapper getSalaryArchiveWrapper(User user) {
|
||||
return ServiceUtil.getService(SalaryArchiveWrapper.class, user);
|
||||
}
|
||||
|
||||
private SalaryItemService getSalaryItemService(User user) {
|
||||
return (SalaryItemService) ServiceUtil.getService(SalaryItemServiceImpl.class, user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String execute(RequestInfo requestInfo) {
|
||||
try {
|
||||
User user = new User();
|
||||
user.setLoginid("sysadmin");
|
||||
user.setUid(1);
|
||||
BaseBean baseBean = new BaseBean();
|
||||
Property[] properties = requestInfo.getMainTableInfo().getProperty();
|
||||
Map<String, String> fieldMap = Arrays.stream(properties).collect(Collectors.toMap(Property::getName,
|
||||
property -> Util.null2String(property.getValue())));
|
||||
String dxcj = fieldMap.get("dxcj");
|
||||
if (dxcj.equals("5")) {
|
||||
// 获取流程id
|
||||
String requestid = requestInfo.getRequestid();
|
||||
// 从表中取数据
|
||||
List<GwPltxDt1PO> gwPltxDt1POS = getGwPltxDt1Service(user).listSome(GwPltxDt1PO.builder().mainid(Long.valueOf(requestid)).build());
|
||||
String salaryItemId = baseBean.getPropValue("shgwSalary", "pltxSalaryItemId");
|
||||
SalaryItemPO salaryItemPO = getSalaryItemService(user).getById(Long.valueOf(salaryItemId));
|
||||
List<Map<String, Object>> importData = new ArrayList<>();
|
||||
|
||||
gwPltxDt1POS.stream()
|
||||
.filter(po -> po.getDx() != null && !po.getDx().equals(BigDecimal.ZERO))
|
||||
.forEach(po -> {
|
||||
HashMap<String, Object> map = new HashMap<>();
|
||||
map.put("员工id", po.getXm());
|
||||
map.put("调整原因", "调薪");
|
||||
map.put("个税扣缴义务人", po.getGskjywr());
|
||||
map.put("生效日期", fieldMap.get("Sxrq"));
|
||||
map.put(Util.formatMultiLang(salaryItemPO.getName(), "7") , po.getDxhjbgz());
|
||||
importData.add(map);
|
||||
});
|
||||
|
||||
baseBean.writeLog("gwtx:" + importData);
|
||||
SalaryArchiveImportActionParam build = SalaryArchiveImportActionParam.builder()
|
||||
.gwpltxWorkflow(true)
|
||||
.importDatas(importData)
|
||||
.build();
|
||||
|
||||
Map<String, Object> map = getSalaryArchiveWrapper(user).adjustmentSalaryArchive(build);
|
||||
|
||||
List errorNotice = (List) map.get("errorNotice");
|
||||
if (CollectionUtils.isNotEmpty(errorNotice)) {
|
||||
log.error("调薪存在异常 requestId:{} map:{}", requestInfo.getRequestid(), map);
|
||||
List<Map<String, String>> excelComments = (List<Map<String, String>>) map.get("errorNotice");
|
||||
StringBuilder message = new StringBuilder("");
|
||||
for (Map<String, String> comments : excelComments) {
|
||||
message.append(comments.get("message")).append("\n");
|
||||
}
|
||||
requestInfo.getRequestManager().setMessage(message.toString());
|
||||
return FAILURE_AND_CONTINUE;
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("调薪异常", e);
|
||||
requestInfo.getRequestManager().setMessage(e.getMessage());
|
||||
return FAILURE_AND_CONTINUE;
|
||||
}
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
class SalaryField {
|
||||
|
||||
private String processField;
|
||||
|
||||
private String salaryName;
|
||||
|
||||
private String value;
|
||||
|
||||
public String getProcessField() {
|
||||
return processField;
|
||||
}
|
||||
|
||||
public void setProcessField(String processField) {
|
||||
this.processField = processField;
|
||||
}
|
||||
|
||||
public String getSalaryName() {
|
||||
return salaryName;
|
||||
}
|
||||
|
||||
public void setSalaryName(String salaryName) {
|
||||
this.salaryName = salaryName;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public SalaryField(String processField, String salaryName, String value) {
|
||||
this.processField = processField;
|
||||
this.salaryName = salaryName;
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
package com.engine.salary.action;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.salary.entity.salaryacct.po.GwPltxDt1PO;
|
||||
import com.engine.salary.entity.salaryarchive.param.SalaryArchiveImportActionParam;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.engine.salary.service.GwPltxDt1Service;
|
||||
import com.engine.salary.service.SalaryItemService;
|
||||
import com.engine.salary.service.impl.GwPltxDt1ServiceImpl;
|
||||
import com.engine.salary.service.impl.SalaryItemServiceImpl;
|
||||
import com.engine.salary.wrapper.SalaryArchiveWrapper;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import weaver.general.BaseBean;
|
||||
import weaver.general.Util;
|
||||
import weaver.hrm.User;
|
||||
import weaver.interfaces.workflow.action.Action;
|
||||
import weaver.soa.workflow.request.Property;
|
||||
import weaver.soa.workflow.request.RequestInfo;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 上海港湾 - 第六层级批量流程调薪
|
||||
*/
|
||||
@Slf4j
|
||||
public class shgwPltxActionNEWCheck implements Action {
|
||||
|
||||
|
||||
private GwPltxDt1Service getGwPltxDt1Service(User user) {
|
||||
return ServiceUtil.getService(GwPltxDt1ServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalaryArchiveWrapper getSalaryArchiveWrapper(User user) {
|
||||
return ServiceUtil.getService(SalaryArchiveWrapper.class, user);
|
||||
}
|
||||
|
||||
private SalaryItemService getSalaryItemService(User user) {
|
||||
return (SalaryItemService) ServiceUtil.getService(SalaryItemServiceImpl.class, user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String execute(RequestInfo requestInfo) {
|
||||
try {
|
||||
User user = new User();
|
||||
user.setLoginid("sysadmin");
|
||||
user.setUid(1);
|
||||
BaseBean baseBean = new BaseBean();
|
||||
Property[] properties = requestInfo.getMainTableInfo().getProperty();
|
||||
Map<String, String> fieldMap = Arrays.stream(properties).collect(Collectors.toMap(Property::getName,
|
||||
property -> Util.null2String(property.getValue())));
|
||||
String dxcj = fieldMap.get("dxcj");
|
||||
// if (dxcj.equals("5")) {
|
||||
// 获取流程id
|
||||
String requestid = requestInfo.getRequestid();
|
||||
// 从表中取数据
|
||||
List<GwPltxDt1PO> gwPltxDt1POS = getGwPltxDt1Service(user).listSome(GwPltxDt1PO.builder().mainid(Long.valueOf(requestid)).build());
|
||||
String salaryItemId = baseBean.getPropValue("shgwSalary", "pltxSalaryItemId");
|
||||
SalaryItemPO salaryItemPO = getSalaryItemService(user).getById(Long.valueOf(salaryItemId));
|
||||
List<Map<String, Object>> importData = new ArrayList<>();
|
||||
|
||||
gwPltxDt1POS.stream()
|
||||
.filter(po -> po.getDx() != null && !po.getDx().equals(BigDecimal.ZERO))
|
||||
.forEach(po -> {
|
||||
HashMap<String, Object> map = new HashMap<>();
|
||||
map.put("员工id", po.getXm());
|
||||
map.put("调整原因", "调薪");
|
||||
map.put("个税扣缴义务人", po.getGskjywr());
|
||||
map.put("生效日期", fieldMap.get("Sxrq"));
|
||||
map.put(Util.formatMultiLang(salaryItemPO.getName(), "7") , po.getDxhjbgz());
|
||||
importData.add(map);
|
||||
});
|
||||
|
||||
baseBean.writeLog("gwtx:" + importData);
|
||||
SalaryArchiveImportActionParam build = SalaryArchiveImportActionParam.builder()
|
||||
.gwpltxWorkflow(true)
|
||||
.importDatas(importData)
|
||||
.build();
|
||||
|
||||
Map<String, Object> map = getSalaryArchiveWrapper(user).checkAdjustmentSalaryArchive(build);
|
||||
|
||||
List errorNotice = (List) map.get("errorNotice");
|
||||
if (CollectionUtils.isNotEmpty(errorNotice)) {
|
||||
log.error("调薪检查存在异常 requestId:{} map:{}", requestInfo.getRequestid(), map);
|
||||
List<Map<String, String>> excelComments = (List<Map<String, String>>) map.get("errorNotice");
|
||||
StringBuilder message = new StringBuilder("");
|
||||
for (Map<String, String> comments : excelComments) {
|
||||
message.append(comments.get("message")).append("\n");
|
||||
}
|
||||
requestInfo.getRequestManager().setMessage(message.toString());
|
||||
return FAILURE_AND_CONTINUE;
|
||||
}
|
||||
// }
|
||||
} catch (Exception e) {
|
||||
log.error("调薪检查异常", e);
|
||||
requestInfo.getRequestManager().setMessage(e.getMessage());
|
||||
return FAILURE_AND_CONTINUE;
|
||||
}
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
class SalaryField {
|
||||
|
||||
private String processField;
|
||||
|
||||
private String salaryName;
|
||||
|
||||
private String value;
|
||||
|
||||
public String getProcessField() {
|
||||
return processField;
|
||||
}
|
||||
|
||||
public void setProcessField(String processField) {
|
||||
this.processField = processField;
|
||||
}
|
||||
|
||||
public String getSalaryName() {
|
||||
return salaryName;
|
||||
}
|
||||
|
||||
public void setSalaryName(String salaryName) {
|
||||
this.salaryName = salaryName;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public SalaryField(String processField, String salaryName, String value) {
|
||||
this.processField = processField;
|
||||
this.salaryName = salaryName;
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
package com.engine.salary.action;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.salary.entity.salaryacct.param.pltxDetailsToModeSaveParam;
|
||||
import com.engine.salary.entity.salaryacct.po.GwPltxDt1PO;
|
||||
import com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt1PO;
|
||||
import com.engine.salary.entity.salaryacct.po.UfTxjlgljmbPO;
|
||||
import com.engine.salary.service.GwPltxDt1Service;
|
||||
import com.engine.salary.service.SalaryAcctResultService;
|
||||
import com.engine.salary.service.impl.GwPltxDt1ServiceImpl;
|
||||
import com.engine.salary.service.impl.SalaryAcctResultServiceImpl;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.math.NumberUtils;
|
||||
import weaver.general.Util;
|
||||
import weaver.hrm.User;
|
||||
import weaver.interfaces.workflow.action.Action;
|
||||
import weaver.soa.workflow.request.Property;
|
||||
import weaver.soa.workflow.request.RequestInfo;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 上海港湾 - 批量调薪流程转建模
|
||||
*/
|
||||
@Slf4j
|
||||
public class shgwPltxDetailsToModeAction implements Action {
|
||||
|
||||
|
||||
private SalaryAcctResultService getSalaryAcctResultService(User user) {
|
||||
return ServiceUtil.getService(SalaryAcctResultServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private GwPltxDt1Service getGwPltxDt1Service(User user) {
|
||||
return ServiceUtil.getService(GwPltxDt1ServiceImpl.class, user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String execute(RequestInfo requestInfo) {
|
||||
String requestid = requestInfo.getRequestid();
|
||||
Property[] properties = requestInfo.getMainTableInfo().getProperty();
|
||||
Map<String, String> fieldMap = Arrays.stream(properties).collect(Collectors.toMap(Property::getName,
|
||||
property -> Util.null2String(property.getValue())));
|
||||
User user = new User();
|
||||
user.setUid(1);
|
||||
// 主表数据
|
||||
UfTxjlgljmbPO ufTxjlgljmbPO = new UfTxjlgljmbPO();
|
||||
ufTxjlgljmbPO.setFqrxm(NumberUtils.isCreatable(fieldMap.get("fqrxm")) ? Integer.valueOf(fieldMap.get("fqrxm")) : null);
|
||||
ufTxjlgljmbPO.setFqrq(fieldMap.get("fqrq"));
|
||||
ufTxjlgljmbPO.setFqrbm(NumberUtils.isCreatable(fieldMap.get("fqrbm")) ? Integer.valueOf(fieldMap.get("fqrbm")) : null);
|
||||
ufTxjlgljmbPO.setFqrgs(NumberUtils.isCreatable(fieldMap.get("fqrgs")) ? Integer.valueOf(fieldMap.get("fqrgs")) : null);
|
||||
ufTxjlgljmbPO.setSxrq(fieldMap.get("Sxrq"));
|
||||
ufTxjlgljmbPO.setSpr(NumberUtils.isCreatable(fieldMap.get("spr")) ? Integer.valueOf(fieldMap.get("spr")) : null);
|
||||
ufTxjlgljmbPO.setDxcj(NumberUtils.isCreatable(fieldMap.get("dxcj")) ? Integer.valueOf(fieldMap.get("dxcj")) : null);
|
||||
ufTxjlgljmbPO.setDxdycjspr(fieldMap.get("dxdycjspr"));
|
||||
ufTxjlgljmbPO.setDxdecjspr(fieldMap.get("dxdecjspr"));
|
||||
ufTxjlgljmbPO.setDxdsacjspr(fieldMap.get("dxdsacjspr"));
|
||||
ufTxjlgljmbPO.setDxdsicjspr(fieldMap.get("dxdsicjspr"));
|
||||
ufTxjlgljmbPO.setDxdwcjspr(fieldMap.get("dxdwcjspr"));
|
||||
ufTxjlgljmbPO.setDxdlcjspr(fieldMap.get("dxdlcjspr"));
|
||||
ufTxjlgljmbPO.setNd(NumberUtils.isCreatable(fieldMap.get("nd")) ? Integer.valueOf(fieldMap.get("nd")) : null);
|
||||
|
||||
// 明细表1数据
|
||||
List<GwPltxDt1PO> gwPltxDt1POS = getGwPltxDt1Service(user).listSome(GwPltxDt1PO.builder().mainid(Long.valueOf(requestid)).build());
|
||||
List<UfTxjlgljmbDt1PO> collect = gwPltxDt1POS.stream().map(po -> {
|
||||
return UfTxjlgljmbDt1PO.builder()
|
||||
.Xm(po.getXm())
|
||||
.bm(po.getBm())
|
||||
.gw(po.getGw())
|
||||
.qnjxfs(po.getQnjxfs())
|
||||
.jbgz(po.getJbgz())
|
||||
.dx(po.getDx())
|
||||
.dxhjbgz(po.getDxhjbgz())
|
||||
.dxbl(po.getDxbl())
|
||||
.gskjywr(po.getGskjywr())
|
||||
.dzhhjxz(po.getDzhhjxz())
|
||||
.hjxzdzbl(po.getHjxzdzbl())
|
||||
.bz(po.getBz())
|
||||
.hjgz(po.getHjxz())
|
||||
.nzjj(po.getNzjj())
|
||||
.build();
|
||||
}).collect(Collectors.toList());
|
||||
pltxDetailsToModeSaveParam param = pltxDetailsToModeSaveParam.builder().txjlgljmb(ufTxjlgljmbPO).dt1(collect).build();
|
||||
getSalaryAcctResultService(user).pltxDetailsToMode(param);
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -17,6 +17,8 @@ import lombok.NoArgsConstructor;
|
|||
@AllArgsConstructor
|
||||
public class pltxEmployeeDTO {
|
||||
|
||||
private Long id;
|
||||
|
||||
// 姓名
|
||||
private Long employee;
|
||||
|
||||
|
|
@ -57,4 +59,6 @@ public class pltxEmployeeDTO {
|
|||
// 备注
|
||||
private String bz;
|
||||
|
||||
private Double nzjj;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,6 +13,11 @@ import lombok.NoArgsConstructor;
|
|||
@AllArgsConstructor
|
||||
public class PltxInitEmployeeParam {
|
||||
|
||||
/**
|
||||
* 流程requestId
|
||||
*/
|
||||
Long requestId;
|
||||
|
||||
/**
|
||||
* 个税扣缴义务人
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -0,0 +1,106 @@
|
|||
package com.engine.salary.entity.salaryacct.param;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
|
||||
/**
|
||||
* @ClassName gwPltxSaveParam
|
||||
* @author Harryxzy
|
||||
* @date 2024/9/5 9:59
|
||||
* @description 保存批量调薪明细表1信息
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class gwPltxSaveParam {
|
||||
|
||||
boolean isCreateNode;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
Long id;
|
||||
|
||||
/**
|
||||
* 流程id
|
||||
*/
|
||||
Long mainid;
|
||||
|
||||
/**
|
||||
* 姓名
|
||||
*/
|
||||
Integer xm;
|
||||
|
||||
/**
|
||||
* 部门
|
||||
*/
|
||||
Integer bm;
|
||||
|
||||
/**
|
||||
* 岗位
|
||||
*/
|
||||
String gw;
|
||||
|
||||
/**
|
||||
* 去年绩效分数
|
||||
*/
|
||||
BigDecimal qnjxfs;
|
||||
|
||||
/**
|
||||
* 基本工资
|
||||
*/
|
||||
BigDecimal jbgz;
|
||||
|
||||
/**
|
||||
* 调薪
|
||||
*/
|
||||
BigDecimal dx;
|
||||
|
||||
/**
|
||||
* 调薪后基本工资
|
||||
*/
|
||||
BigDecimal dxhjbgz;
|
||||
|
||||
/**
|
||||
* 调薪比例
|
||||
*/
|
||||
BigDecimal dxbl;
|
||||
|
||||
/**
|
||||
* 个税扣缴义务人
|
||||
*/
|
||||
String gskjywr;
|
||||
|
||||
/**
|
||||
* 合计薪资
|
||||
*/
|
||||
BigDecimal hjxz;
|
||||
|
||||
/**
|
||||
* 调整后合计薪资
|
||||
*/
|
||||
BigDecimal dzhhjxz;
|
||||
|
||||
/**
|
||||
* 合计薪资调整比例
|
||||
*/
|
||||
BigDecimal hjxzdzbl;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
String bz;
|
||||
|
||||
/**
|
||||
* 年终奖金
|
||||
*/
|
||||
BigDecimal nzjj;
|
||||
|
||||
private Integer deleteType;
|
||||
}
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
package com.engine.salary.entity.salaryacct.param;
|
||||
|
||||
import com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt1PO;
|
||||
import com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt2PO;
|
||||
import com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt3PO;
|
||||
import com.engine.salary.entity.salaryacct.po.UfTxjlgljmbPO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName pltxDetailsToModeSaveParam
|
||||
* @date 2024/09/09 9:51
|
||||
* @description 港湾批量调薪流程转建模
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class pltxDetailsToModeSaveParam {
|
||||
|
||||
// 主表数据
|
||||
private UfTxjlgljmbPO txjlgljmb;
|
||||
|
||||
private List<UfTxjlgljmbDt1PO> dt1;
|
||||
|
||||
private List<UfTxjlgljmbDt2PO> dt2;
|
||||
|
||||
private UfTxjlgljmbDt3PO dt3;
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
package com.engine.salary.entity.salaryacct.po;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName GwPltxDt1
|
||||
* @date 2024/09/05 10:20
|
||||
* @description 港湾批量调薪明细表1
|
||||
*/
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class GwPltxDt1PO {
|
||||
|
||||
private Long id;
|
||||
/**
|
||||
* 流程id
|
||||
*/
|
||||
private Long mainid;
|
||||
/**
|
||||
* 姓名
|
||||
*/
|
||||
private Integer xm;
|
||||
/**
|
||||
* 部门
|
||||
*/
|
||||
private Integer bm;
|
||||
/**
|
||||
* 岗位
|
||||
*/
|
||||
private String gw;
|
||||
/**
|
||||
* 去年绩效分数
|
||||
*/
|
||||
private BigDecimal qnjxfs;
|
||||
/**
|
||||
* 基本工资
|
||||
*/
|
||||
private BigDecimal jbgz;
|
||||
/**
|
||||
* 调薪
|
||||
*/
|
||||
private BigDecimal dx;
|
||||
/**
|
||||
* 调薪后基本工资
|
||||
*/
|
||||
private BigDecimal dxhjbgz;
|
||||
/**
|
||||
* 调薪比例
|
||||
*/
|
||||
private BigDecimal dxbl;
|
||||
/**
|
||||
* 个税扣缴义务人
|
||||
*/
|
||||
private String gskjywr;
|
||||
/**
|
||||
* 合计薪资
|
||||
*/
|
||||
private BigDecimal hjxz;
|
||||
/**
|
||||
* 调整后合计薪资
|
||||
*/
|
||||
private BigDecimal dzhhjxz;
|
||||
/**
|
||||
* 合计薪资调整比例
|
||||
*/
|
||||
private BigDecimal hjxzdzbl;
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String bz;
|
||||
/**
|
||||
* 年终奖金
|
||||
*/
|
||||
private BigDecimal nzjj;
|
||||
|
||||
private Integer deleteType;
|
||||
|
||||
//主键id集合
|
||||
private Collection<Long> ids;
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
package com.engine.salary.entity.salaryacct.po;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName UfTxjlgljmbDt1PO
|
||||
* @date 2024/09/09 9:59
|
||||
* @description 明细表1
|
||||
*/
|
||||
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class UfTxjlgljmbDt1PO {
|
||||
private Integer bm;
|
||||
private String bz;
|
||||
private BigDecimal dx;
|
||||
private BigDecimal dxbl;
|
||||
private BigDecimal dxhjbgz;
|
||||
private BigDecimal dzhhjxz;
|
||||
private String gskjywr;
|
||||
private String gw;
|
||||
private BigDecimal hjgz;
|
||||
private BigDecimal hjxzdzbl;
|
||||
private Integer id;
|
||||
private BigDecimal jbgz;
|
||||
private Integer mainid;
|
||||
private BigDecimal nzjj;
|
||||
private BigDecimal qnjxfs;
|
||||
private Integer Xm;
|
||||
|
||||
//主键id集合
|
||||
private Collection<Long> ids;
|
||||
}
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
package com.engine.salary.entity.salaryacct.po;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName UfTxjlgljmbDt2PO
|
||||
* @date 2024/09/09 10:00
|
||||
* @description 明细表2
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class UfTxjlgljmbDt2PO {
|
||||
private Integer bm;
|
||||
private BigDecimal dxze;
|
||||
private BigDecimal hjxzze;
|
||||
private Integer id;
|
||||
private Integer mainid;
|
||||
private Integer rs;
|
||||
|
||||
//主键id集合
|
||||
private Collection<Long> ids;
|
||||
}
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
package com.engine.salary.entity.salaryacct.po;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName UfTxjlgljmbDt3PO
|
||||
* @date 2024/09/09 10:04
|
||||
* @description 明细表3
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class UfTxjlgljmbDt3PO {
|
||||
private Integer bm;
|
||||
private BigDecimal dxbl;
|
||||
private BigDecimal dxye;
|
||||
private BigDecimal dxys;
|
||||
private BigDecimal dxysyed;
|
||||
private Integer id;
|
||||
private Integer mainid;
|
||||
|
||||
//主键id集合
|
||||
private Collection<Long> ids;
|
||||
}
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
package com.engine.salary.entity.salaryacct.po;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName UfTxjlgljmbPO
|
||||
* @date 2024/09/09 9:58
|
||||
* @description 调薪记录管理建模 主表
|
||||
*/
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class UfTxjlgljmbPO {
|
||||
|
||||
private Integer dxcj;
|
||||
private String dxdecjspr;
|
||||
private String dxdlcjspr;
|
||||
private String dxdsacjspr;
|
||||
private String dxdsicjspr;
|
||||
private String dxdwcjspr;
|
||||
private String dxdycjspr;
|
||||
private String formBizId;
|
||||
private Integer formmodeid;
|
||||
private Integer fqrbm;
|
||||
private Integer fqrgs;
|
||||
private String fqrq;
|
||||
private Integer fqrxm;
|
||||
private Integer id;
|
||||
private String modedatacreatedate;
|
||||
private Integer modedatacreater;
|
||||
private Integer modedatacreatertype;
|
||||
private String modedatacreatetime;
|
||||
private Integer modedatamodifier;
|
||||
private String modedatamodifydatetime;
|
||||
private String modeuuid;
|
||||
private Integer nd;
|
||||
private Integer requestId;
|
||||
private Integer spr;
|
||||
private String Sxrq;
|
||||
|
||||
//主键id集合
|
||||
private Collection<Long> ids;
|
||||
|
||||
}
|
||||
|
|
@ -344,7 +344,7 @@ public class SalaryArchiveExcelBO extends Service {
|
|||
* @param importHandleParam
|
||||
* @return
|
||||
*/
|
||||
public static boolean singleRowCheck(List<String> allTodoSalaryArchives, Map<String, Object> map, List<String> headers, int effectiveTimeIndex, List<Map<String, String>> excelComments, int errorCount, SalaryArchiveImportHandleParam importHandleParam, User user) {
|
||||
public static boolean singleRowCheck(List<String> allTodoSalaryArchives, Map<String, Object> map, List<String> headers, int effectiveTimeIndex, List<Map<String, String>> excelComments, int errorCount, SalaryArchiveImportHandleParam importHandleParam, User user, boolean isGwpltxWorkflow, Map<Long, DataCollectionEmployee> empMap) {
|
||||
//是否是流程
|
||||
boolean process = importHandleParam.isProcess();
|
||||
|
||||
|
|
@ -352,6 +352,7 @@ public class SalaryArchiveExcelBO extends Service {
|
|||
// String rowindex = "第" + map.get("index") + "行";
|
||||
String rowindex = SalaryI18nUtil.getI18nLabel(user.getLanguage(),542129,"错误行") + map.get("index") + ":";
|
||||
|
||||
|
||||
// 1.姓名
|
||||
String userName = Optional.ofNullable(map.get(userNameI18n)).orElse("").toString();
|
||||
String deparmentName = Optional.ofNullable(map.get(departmentI18n)).orElse("").toString();
|
||||
|
|
@ -396,6 +397,18 @@ public class SalaryArchiveExcelBO extends Service {
|
|||
employeeId = Long.valueOf(empId);
|
||||
}
|
||||
|
||||
if (isGwpltxWorkflow) {
|
||||
DataCollectionEmployee emp = empMap.get(employeeId);
|
||||
if (emp == null) {
|
||||
Map<String, String> errorMessageMap = Maps.newHashMap();
|
||||
errorMessageMap.put("message","员工id"+ employeeId +"不存在");
|
||||
excelComments.add(errorMessageMap);
|
||||
isError = true;
|
||||
return isError;
|
||||
}
|
||||
rowindex = SalaryI18nUtil.getI18nLabel(user.getLanguage(),542129,"错误行") + emp.getUsername() + ":";
|
||||
}
|
||||
|
||||
if (employeeId == null) {
|
||||
Map<String, String> errorMessageMap = Maps.newHashMap();
|
||||
errorMessageMap.put("message", rowindex + SalaryI18nUtil.getI18nLabel(user.getLanguage(),544319, "查找人员失败,请确定姓名、部门、手机号正确且唯一"));
|
||||
|
|
@ -667,7 +680,7 @@ public class SalaryArchiveExcelBO extends Service {
|
|||
// 7.薪资项目列处理(待定薪\定薪的初始化\定薪的调薪)
|
||||
} else {
|
||||
isError = handleSalaryItem(isError, effectiveTimeIndex, excelComments, errorCount, j,
|
||||
effectiveTime, finalSalaryArchive, adjustReason, importHandleParam, key.toString(), cellVal, map, user);
|
||||
effectiveTime, finalSalaryArchive, adjustReason, importHandleParam, key.toString(), cellVal, map, user, rowindex);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -817,10 +830,11 @@ public class SalaryArchiveExcelBO extends Service {
|
|||
public static boolean handleSalaryItem(boolean isError, int effectiveTimeIndex,
|
||||
List<Map<String, String>> excelComments, int errorCount, int j,
|
||||
Date effectiveTime, SalaryArchivePO finalSalaryArchive, String salaryItemAdjustReason, SalaryArchiveImportHandleParam importHandleParam,
|
||||
String key, String cellVal, Map<String, Object> map, User user) {
|
||||
String key, String cellVal, Map<String, Object> map, User user, String rowindex) {
|
||||
|
||||
// String rowindex = "第" + map.get("index") + "行";
|
||||
String rowindex = SalaryI18nUtil.getI18nLabel(user.getLanguage(),542129,"错误行") + map.get("index") + ":";
|
||||
// String rowindex = SalaryI18nUtil.getI18nLabel(user.getLanguage(),542129,"错误行") + map.get("index") + ":";
|
||||
|
||||
// 薪资项目数据
|
||||
if (isError || importHandleParam.isSuspendList() || (importHandleParam.isSalaryItemAdjust() && effectiveTime == null) || finalSalaryArchive == null) {
|
||||
return isError;
|
||||
|
|
|
|||
|
|
@ -23,6 +23,9 @@ import java.util.Map;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SalaryArchiveImportActionParam {
|
||||
|
||||
// 是否是港湾批量调薪流程
|
||||
boolean gwpltxWorkflow;
|
||||
/**
|
||||
* 导入类型
|
||||
*
|
||||
|
|
|
|||
|
|
@ -293,10 +293,12 @@
|
|||
e.departmentid as departmentId,
|
||||
d.DEPARTMENTNAME as departmentName,
|
||||
e.jobtitle as jobtitleId,
|
||||
c.jobtitlename as jobtitleName,
|
||||
e.managerid as managerid,
|
||||
f.field${yggx} as yggx
|
||||
from hrmresource e
|
||||
left join hrmdepartment d on e.departmentid = d.id
|
||||
left join hrmjobtitles c on e.jobtitle = c.id
|
||||
left join cus_fielddata f on f.id = e.id and f.SCOPEID=3
|
||||
where e.status not in (7)
|
||||
and (e.accounttype is null or e.accounttype = 0)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,78 @@
|
|||
package com.engine.salary.mapper.salaryacct;
|
||||
|
||||
import com.engine.salary.entity.salaryacct.param.gwPltxSaveParam;
|
||||
import com.engine.salary.entity.salaryacct.po.GwPltxDt1PO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName GwPltxDt1Mapper
|
||||
* @date 2024/09/08 20:11
|
||||
* @description
|
||||
*/
|
||||
public interface GwPltxDt1Mapper {
|
||||
|
||||
|
||||
/**
|
||||
* 查询所有记录
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<GwPltxDt1PO> listAll();
|
||||
|
||||
/**
|
||||
* 条件查询
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<GwPltxDt1PO> listSome(GwPltxDt1PO gwPltxDt1);
|
||||
|
||||
|
||||
/**
|
||||
* 根据主键查询
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 返回记录,没有返回null
|
||||
*/
|
||||
GwPltxDt1PO getById(Long id);
|
||||
|
||||
/**
|
||||
* 新增,忽略null字段
|
||||
*
|
||||
* @param gwPltxDt1 新增的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int insertIgnoreNull(GwPltxDt1PO gwPltxDt1);
|
||||
|
||||
/**
|
||||
* 修改,修改所有字段
|
||||
*
|
||||
* @param gwPltxDt1 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int update(GwPltxDt1PO gwPltxDt1);
|
||||
|
||||
/**
|
||||
* 修改,忽略null字段
|
||||
*
|
||||
* @param gwPltxDt1 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int updateIgnoreNull(GwPltxDt1PO gwPltxDt1);
|
||||
|
||||
/**
|
||||
* 删除记录
|
||||
*
|
||||
* @param gwPltxDt1 待删除的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int delete(GwPltxDt1PO gwPltxDt1);
|
||||
|
||||
void batchInsert(@Param("collection") List<gwPltxSaveParam> list);
|
||||
|
||||
void batchUpdate(@Param("collection")List<gwPltxSaveParam> list);
|
||||
|
||||
void deleteByIds(@Param("ids")List<Long> list);
|
||||
}
|
||||
|
|
@ -0,0 +1,529 @@
|
|||
<?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.engine.salary.mapper.salaryacct.GwPltxDt1Mapper">
|
||||
<resultMap id="BaseResultMap" type="com.engine.salary.entity.salaryacct.po.GwPltxDt1PO">
|
||||
<result column="id" property="id" />
|
||||
<result column="mainid" property="mainid" />
|
||||
<result column="xm" property="xm" />
|
||||
<result column="bm" property="bm" />
|
||||
<result column="gw" property="gw" />
|
||||
<result column="qnjxfs" property="qnjxfs" />
|
||||
<result column="jbgz" property="jbgz" />
|
||||
<result column="dx" property="dx" />
|
||||
<result column="dxhjbgz" property="dxhjbgz" />
|
||||
<result column="dxbl" property="dxbl" />
|
||||
<result column="gskjywr" property="gskjywr" />
|
||||
<result column="hjxz" property="hjxz" />
|
||||
<result column="dzhhjxz" property="dzhhjxz" />
|
||||
<result column="hjxzdzbl" property="hjxzdzbl" />
|
||||
<result column="bz" property="bz" />
|
||||
<result column="nzjj" property="nzjj" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 表字段 -->
|
||||
<sql id="baseColumns">
|
||||
t.id
|
||||
, t.mainid
|
||||
, t.xm
|
||||
, t.bm
|
||||
, t.gw
|
||||
, t.qnjxfs
|
||||
, t.jbgz
|
||||
, t.dx
|
||||
, t.dxhjbgz
|
||||
, t.dxbl
|
||||
, t.gskjywr
|
||||
, t.hjxz
|
||||
, t.dzhhjxz
|
||||
, t.hjxzdzbl
|
||||
, t.bz
|
||||
, t.nzjj
|
||||
</sql>
|
||||
|
||||
<!-- 查询全部 -->
|
||||
<select id="listAll" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM hrsa_gw_pltx_dt1 t
|
||||
WHERE delete_type = 0
|
||||
</select>
|
||||
|
||||
<!-- 根据主键获取单条记录 -->
|
||||
<select id="getById" resultMap="BaseResultMap" parameterType="Long">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM hrsa_gw_pltx_dt1 t
|
||||
WHERE id = #{id} AND delete_type = 0 order by id
|
||||
</select>
|
||||
|
||||
<!-- 条件查询 -->
|
||||
<select id="listSome" resultMap="BaseResultMap" parameterType="com.engine.salary.entity.salaryacct.po.GwPltxDt1PO">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM hrsa_gw_pltx_dt1 t
|
||||
WHERE delete_type = 0
|
||||
<if test="id != null">
|
||||
AND id = #{id}
|
||||
</if>
|
||||
<if test="mainid != null">
|
||||
AND mainid = #{mainid}
|
||||
</if>
|
||||
<if test="xm != null">
|
||||
AND xm = #{xm}
|
||||
</if>
|
||||
<if test="bm != null">
|
||||
AND bm = #{bm}
|
||||
</if>
|
||||
<if test="gw != null">
|
||||
AND gw = #{gw}
|
||||
</if>
|
||||
<if test="qnjxfs != null">
|
||||
AND qnjxfs = #{qnjxfs}
|
||||
</if>
|
||||
<if test="jbgz != null">
|
||||
AND jbgz = #{jbgz}
|
||||
</if>
|
||||
<if test="dx != null">
|
||||
AND dx = #{dx}
|
||||
</if>
|
||||
<if test="dxhjbgz != null">
|
||||
AND dxhjbgz = #{dxhjbgz}
|
||||
</if>
|
||||
<if test="dxbl != null">
|
||||
AND dxbl = #{dxbl}
|
||||
</if>
|
||||
<if test="gskjywr != null">
|
||||
AND gskjywr = #{gskjywr}
|
||||
</if>
|
||||
<if test="hjxz != null">
|
||||
AND hjxz = #{hjxz}
|
||||
</if>
|
||||
<if test="dzhhjxz != null">
|
||||
AND dzhhjxz = #{dzhhjxz}
|
||||
</if>
|
||||
<if test="hjxzdzbl != null">
|
||||
AND hjxzdzbl = #{hjxzdzbl}
|
||||
</if>
|
||||
<if test="bz != null">
|
||||
AND bz = #{bz}
|
||||
</if>
|
||||
<if test="nzjj != null">
|
||||
AND nzjj = #{nzjj}
|
||||
</if>
|
||||
<if test="ids != null and ids.size()>0">
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</if>
|
||||
ORDER BY id
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 插入不为NULL的字段 -->
|
||||
<insert id="insertIgnoreNull" parameterType="com.engine.salary.entity.salaryacct.po.GwPltxDt1PO">
|
||||
INSERT INTO hrsa_gw_pltx_dt1
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
|
||||
<if test="id != null">
|
||||
id,
|
||||
</if>
|
||||
<if test="mainid != null">
|
||||
mainid,
|
||||
</if>
|
||||
<if test="xm != null">
|
||||
xm,
|
||||
</if>
|
||||
<if test="bm != null">
|
||||
bm,
|
||||
</if>
|
||||
<if test="gw != null">
|
||||
gw,
|
||||
</if>
|
||||
<if test="qnjxfs != null">
|
||||
qnjxfs,
|
||||
</if>
|
||||
<if test="jbgz != null">
|
||||
jbgz,
|
||||
</if>
|
||||
<if test="dx != null">
|
||||
dx,
|
||||
</if>
|
||||
<if test="dxhjbgz != null">
|
||||
dxhjbgz,
|
||||
</if>
|
||||
<if test="dxbl != null">
|
||||
dxbl,
|
||||
</if>
|
||||
<if test="gskjywr != null">
|
||||
gskjywr,
|
||||
</if>
|
||||
<if test="hjxz != null">
|
||||
hjxz,
|
||||
</if>
|
||||
<if test="dzhhjxz != null">
|
||||
dzhhjxz,
|
||||
</if>
|
||||
<if test="hjxzdzbl != null">
|
||||
hjxzdzbl,
|
||||
</if>
|
||||
<if test="bz != null">
|
||||
bz,
|
||||
</if>
|
||||
<if test="nzjj != null">
|
||||
nzjj,
|
||||
</if>
|
||||
<if test="deleteType != null">
|
||||
delete_type,
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="VALUES (" suffix=")" suffixOverrides=",">
|
||||
<if test="id != null" >
|
||||
#{id},
|
||||
</if>
|
||||
<if test="mainid != null" >
|
||||
#{mainid},
|
||||
</if>
|
||||
<if test="xm != null" >
|
||||
#{xm},
|
||||
</if>
|
||||
<if test="bm != null" >
|
||||
#{bm},
|
||||
</if>
|
||||
<if test="gw != null" >
|
||||
#{gw},
|
||||
</if>
|
||||
<if test="qnjxfs != null" >
|
||||
#{qnjxfs},
|
||||
</if>
|
||||
<if test="jbgz != null" >
|
||||
#{jbgz},
|
||||
</if>
|
||||
<if test="dx != null" >
|
||||
#{dx},
|
||||
</if>
|
||||
<if test="dxhjbgz != null" >
|
||||
#{dxhjbgz},
|
||||
</if>
|
||||
<if test="dxbl != null" >
|
||||
#{dxbl},
|
||||
</if>
|
||||
<if test="gskjywr != null" >
|
||||
#{gskjywr},
|
||||
</if>
|
||||
<if test="hjxz != null" >
|
||||
#{hjxz},
|
||||
</if>
|
||||
<if test="dzhhjxz != null" >
|
||||
#{dzhhjxz},
|
||||
</if>
|
||||
<if test="hjxzdzbl != null" >
|
||||
#{hjxzdzbl},
|
||||
</if>
|
||||
<if test="bz != null" >
|
||||
#{bz},
|
||||
</if>
|
||||
<if test="nzjj != null" >
|
||||
#{nzjj},
|
||||
</if>
|
||||
<if test="deleteType != null" >
|
||||
#{deleteType},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<insert id="batchInsert">
|
||||
INSERT INTO hrsa_gw_pltx_dt1(
|
||||
id,
|
||||
mainid,
|
||||
xm,
|
||||
bm,
|
||||
gw,
|
||||
qnjxfs,
|
||||
jbgz,
|
||||
dx,
|
||||
dxhjbgz,
|
||||
dxbl,
|
||||
gskjywr,
|
||||
hjxz,
|
||||
dzhhjxz,
|
||||
hjxzdzbl,
|
||||
bz,
|
||||
nzjj,
|
||||
delete_type
|
||||
)
|
||||
VALUES
|
||||
<foreach collection="collection" item="item" separator=",">
|
||||
(
|
||||
#{item.id},
|
||||
#{item.mainid},
|
||||
#{item.xm},
|
||||
#{item.bm},
|
||||
#{item.gw},
|
||||
#{item.qnjxfs},
|
||||
#{item.jbgz},
|
||||
#{item.dx},
|
||||
#{item.dxhjbgz},
|
||||
#{item.dxbl},
|
||||
#{item.gskjywr},
|
||||
#{item.hjxz},
|
||||
#{item.dzhhjxz},
|
||||
#{item.hjxzdzbl},
|
||||
#{item.bz},
|
||||
#{item.nzjj},
|
||||
#{item.deleteType}
|
||||
)
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<insert id="batchInsert" databaseId="sqlserver">
|
||||
<foreach collection="collection" item="item" separator=";">
|
||||
INSERT INTO hrsa_gw_pltx_dt1(
|
||||
id,
|
||||
mainid,
|
||||
xm,
|
||||
bm,
|
||||
gw,
|
||||
qnjxfs,
|
||||
jbgz,
|
||||
dx,
|
||||
dxhjbgz,
|
||||
dxbl,
|
||||
gskjywr,
|
||||
hjxz,
|
||||
dzhhjxz,
|
||||
hjxzdzbl,
|
||||
bz,
|
||||
nzjj,
|
||||
delete_type
|
||||
)
|
||||
VALUES
|
||||
(
|
||||
#{item.id},
|
||||
#{item.mainid},
|
||||
#{item.xm},
|
||||
#{item.bm},
|
||||
#{item.gw},
|
||||
#{item.qnjxfs},
|
||||
#{item.jbgz},
|
||||
#{item.dx},
|
||||
#{item.dxhjbgz},
|
||||
#{item.dxbl},
|
||||
#{item.gskjywr},
|
||||
#{item.hjxz},
|
||||
#{item.dzhhjxz},
|
||||
#{item.hjxzdzbl},
|
||||
#{item.bz},
|
||||
#{item.nzjj},
|
||||
#{item.deleteType}
|
||||
)
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<!-- 更新,更新全部字段 -->
|
||||
<update id="update" parameterType="com.engine.salary.entity.salaryacct.po.GwPltxDt1PO">
|
||||
UPDATE hrsa_gw_pltx_dt1
|
||||
<set>
|
||||
mainid=#{mainid},
|
||||
xm=#{xm},
|
||||
bm=#{bm},
|
||||
gw=#{gw},
|
||||
qnjxfs=#{qnjxfs},
|
||||
jbgz=#{jbgz},
|
||||
dx=#{dx},
|
||||
dxhjbgz=#{dxhjbgz},
|
||||
dxbl=#{dxbl},
|
||||
gskjywr=#{gskjywr},
|
||||
hjxz=#{hjxz},
|
||||
dzhhjxz=#{dzhhjxz},
|
||||
hjxzdzbl=#{hjxzdzbl},
|
||||
bz=#{bz},
|
||||
nzjj=#{nzjj},
|
||||
</set>
|
||||
WHERE id = #{id} AND delete_type = 0
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 更新不为NULL的字段 -->
|
||||
<update id="updateIgnoreNull" parameterType="com.engine.salary.entity.salaryacct.po.GwPltxDt1PO">
|
||||
UPDATE hrsa_gw_pltx_dt1
|
||||
<set>
|
||||
<if test="mainid != null" >
|
||||
mainid=#{mainid},
|
||||
</if>
|
||||
<if test="xm != null" >
|
||||
xm=#{xm},
|
||||
</if>
|
||||
<if test="bm != null" >
|
||||
bm=#{bm},
|
||||
</if>
|
||||
<if test="gw != null" >
|
||||
gw=#{gw},
|
||||
</if>
|
||||
<if test="qnjxfs != null" >
|
||||
qnjxfs=#{qnjxfs},
|
||||
</if>
|
||||
<if test="jbgz != null" >
|
||||
jbgz=#{jbgz},
|
||||
</if>
|
||||
<if test="dx != null" >
|
||||
dx=#{dx},
|
||||
</if>
|
||||
<if test="dxhjbgz != null" >
|
||||
dxhjbgz=#{dxhjbgz},
|
||||
</if>
|
||||
<if test="dxbl != null" >
|
||||
dxbl=#{dxbl},
|
||||
</if>
|
||||
<if test="gskjywr != null" >
|
||||
gskjywr=#{gskjywr},
|
||||
</if>
|
||||
<if test="hjxz != null" >
|
||||
hjxz=#{hjxz},
|
||||
</if>
|
||||
<if test="dzhhjxz != null" >
|
||||
dzhhjxz=#{dzhhjxz},
|
||||
</if>
|
||||
<if test="hjxzdzbl != null" >
|
||||
hjxzdzbl=#{hjxzdzbl},
|
||||
</if>
|
||||
<if test="bz != null" >
|
||||
bz=#{bz},
|
||||
</if>
|
||||
<if test="nzjj != null" >
|
||||
nzjj=#{nzjj},
|
||||
</if>
|
||||
</set>
|
||||
WHERE id = #{id} AND delete_type = 0
|
||||
</update>
|
||||
|
||||
<update id="batchUpdate" parameterType="java.util.List">
|
||||
update hrsa_gw_pltx_dt1
|
||||
<trim prefix="set" suffixOverrides=",">
|
||||
<trim prefix="xm =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.xm!=null">
|
||||
when id=#{item.id} then #{item.xm}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="bm =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.bm!=null">
|
||||
when id=#{item.id} then #{item.bm}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="gw =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.gw!=null">
|
||||
when id=#{item.id} then #{item.gw}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="qnjxfs =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.qnjxfs!=null">
|
||||
when id=#{item.id} then #{item.qnjxfs}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="jbgz =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.jbgz!=null">
|
||||
when id=#{item.id} then #{item.jbgz}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="dx =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.dx!=null">
|
||||
when id=#{item.id} then #{item.dx}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="dxhjbgz =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.dxhjbgz!=null">
|
||||
when id=#{item.id} then #{item.dxhjbgz}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="dxbl =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.dxbl!=null">
|
||||
when id=#{item.id} then #{item.dxbl}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="gskjywr =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.gskjywr!=null">
|
||||
when id=#{item.id} then #{item.gskjywr}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="hjxz =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.hjxz!=null">
|
||||
when id=#{item.id} then #{item.hjxz}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="dzhhjxz =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.dzhhjxz!=null">
|
||||
when id=#{item.id} then #{item.dzhhjxz}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="hjxzdzbl =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.hjxzdzbl!=null">
|
||||
when id=#{item.id} then #{item.hjxzdzbl}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="bz =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.bz!=null">
|
||||
when id=#{item.id} then #{item.bz}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
<trim prefix="nzjj =case" suffix="end,">
|
||||
<foreach collection="collection" item="item" index="index">
|
||||
<if test="item.nzjj!=null">
|
||||
when id=#{item.id} then #{item.nzjj}
|
||||
</if>
|
||||
</foreach>
|
||||
</trim>
|
||||
</trim>
|
||||
where
|
||||
id in
|
||||
<foreach collection="collection" item="item" index="index" separator="," open="(" close=")">
|
||||
#{item.id}
|
||||
</foreach>
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 根据主键删除记录 -->
|
||||
<delete id="delete" parameterType="com.engine.salary.entity.salaryacct.po.GwPltxDt1PO">
|
||||
UPDATE hrsa_gw_pltx_dt1
|
||||
SET delete_type=1
|
||||
WHERE id = #{id} AND delete_type = 0
|
||||
</delete>
|
||||
<delete id="deleteByIds">
|
||||
UPDATE hrsa_gw_pltx_dt1
|
||||
SET delete_type=1
|
||||
WHERE delete_type = 0
|
||||
<if test="ids != null and ids.size()>0">
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</if>
|
||||
</delete>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
|
@ -0,0 +1,70 @@
|
|||
package com.engine.salary.mapper.salaryacct;
|
||||
|
||||
import com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt1PO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName UfTxjlgljmbDt1Mapper
|
||||
* @date 2024/09/09 10:05
|
||||
* @description
|
||||
*/
|
||||
public interface UfTxjlgljmbDt1Mapper {
|
||||
|
||||
/**
|
||||
* 查询所有记录
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<UfTxjlgljmbDt1PO> listAll();
|
||||
|
||||
/**
|
||||
* 条件查询
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<UfTxjlgljmbDt1PO> listSome(UfTxjlgljmbDt1PO ufTxjlgljmbDt1);
|
||||
|
||||
|
||||
/**
|
||||
* 根据主键查询
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 返回记录,没有返回null
|
||||
*/
|
||||
UfTxjlgljmbDt1PO getById(Integer id);
|
||||
|
||||
/**
|
||||
* 新增,忽略null字段
|
||||
*
|
||||
* @param ufTxjlgljmbDt1 新增的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int insertIgnoreNull(UfTxjlgljmbDt1PO ufTxjlgljmbDt1);
|
||||
|
||||
/**
|
||||
* 修改,修改所有字段
|
||||
*
|
||||
* @param ufTxjlgljmbDt1 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int update(UfTxjlgljmbDt1PO ufTxjlgljmbDt1);
|
||||
|
||||
/**
|
||||
* 修改,忽略null字段
|
||||
*
|
||||
* @param ufTxjlgljmbDt1 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int updateIgnoreNull(UfTxjlgljmbDt1PO ufTxjlgljmbDt1);
|
||||
|
||||
/**
|
||||
* 删除记录
|
||||
*
|
||||
* @param ufTxjlgljmbDt1 待删除的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int delete(UfTxjlgljmbDt1PO ufTxjlgljmbDt1);
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,304 @@
|
|||
<?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.engine.salary.mapper.salaryacct.UfTxjlgljmbDt1Mapper">
|
||||
<resultMap id="BaseResultMap" type="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt1PO">
|
||||
<result column="bm" property="bm" />
|
||||
<result column="bz" property="bz" />
|
||||
<result column="dx" property="dx" />
|
||||
<result column="dxbl" property="dxbl" />
|
||||
<result column="dxhjbgz" property="dxhjbgz" />
|
||||
<result column="dzhhjxz" property="dzhhjxz" />
|
||||
<result column="gskjywr" property="gskjywr" />
|
||||
<result column="gw" property="gw" />
|
||||
<result column="hjgz" property="hjgz" />
|
||||
<result column="hjxzdzbl" property="hjxzdzbl" />
|
||||
<result column="id" property="id" />
|
||||
<result column="jbgz" property="jbgz" />
|
||||
<result column="mainid" property="mainid" />
|
||||
<result column="nzjj" property="nzjj" />
|
||||
<result column="qnjxfs" property="qnjxfs" />
|
||||
<result column="Xm" property="Xm" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 表字段 -->
|
||||
<sql id="baseColumns">
|
||||
t.bm
|
||||
, t.bz
|
||||
, t.dx
|
||||
, t.dxbl
|
||||
, t.dxhjbgz
|
||||
, t.dzhhjxz
|
||||
, t.gskjywr
|
||||
, t.gw
|
||||
, t.hjgz
|
||||
, t.hjxzdzbl
|
||||
, t.id
|
||||
, t.jbgz
|
||||
, t.mainid
|
||||
, t.nzjj
|
||||
, t.qnjxfs
|
||||
, t.Xm
|
||||
</sql>
|
||||
|
||||
<!-- 查询全部 -->
|
||||
<select id="listAll" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb_dt1 t
|
||||
</select>
|
||||
|
||||
<!-- 根据主键获取单条记录 -->
|
||||
<select id="getById" resultMap="BaseResultMap" parameterType="Integer">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb_dt1 t
|
||||
WHERE id = #{id}
|
||||
</select>
|
||||
|
||||
<!-- 条件查询 -->
|
||||
<select id="listSome" resultMap="BaseResultMap" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt1PO">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb_dt1 t
|
||||
WHERE 1 = 1
|
||||
<if test="bm != null">
|
||||
AND bm = #{bm}
|
||||
</if>
|
||||
<if test="bz != null">
|
||||
AND bz = #{bz}
|
||||
</if>
|
||||
<if test="dx != null">
|
||||
AND dx = #{dx}
|
||||
</if>
|
||||
<if test="dxbl != null">
|
||||
AND dxbl = #{dxbl}
|
||||
</if>
|
||||
<if test="dxhjbgz != null">
|
||||
AND dxhjbgz = #{dxhjbgz}
|
||||
</if>
|
||||
<if test="dzhhjxz != null">
|
||||
AND dzhhjxz = #{dzhhjxz}
|
||||
</if>
|
||||
<if test="gskjywr != null">
|
||||
AND gskjywr = #{gskjywr}
|
||||
</if>
|
||||
<if test="gw != null">
|
||||
AND gw = #{gw}
|
||||
</if>
|
||||
<if test="hjgz != null">
|
||||
AND hjgz = #{hjgz}
|
||||
</if>
|
||||
<if test="hjxzdzbl != null">
|
||||
AND hjxzdzbl = #{hjxzdzbl}
|
||||
</if>
|
||||
<if test="jbgz != null">
|
||||
AND jbgz = #{jbgz}
|
||||
</if>
|
||||
<if test="mainid != null">
|
||||
AND mainid = #{mainid}
|
||||
</if>
|
||||
<if test="nzjj != null">
|
||||
AND nzjj = #{nzjj}
|
||||
</if>
|
||||
<if test="qnjxfs != null">
|
||||
AND qnjxfs = #{qnjxfs}
|
||||
</if>
|
||||
<if test="Xm != null">
|
||||
AND Xm = #{Xm}
|
||||
</if>
|
||||
<if test="ids != null and ids.size()>0">
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</if>
|
||||
ORDER BY id DESC
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 插入不为NULL的字段 -->
|
||||
<insert id="insertIgnoreNull" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt1PO">
|
||||
INSERT INTO uf_txjlgljmb_dt1
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
|
||||
<if test="bm != null">
|
||||
bm,
|
||||
</if>
|
||||
<if test="bz != null">
|
||||
bz,
|
||||
</if>
|
||||
<if test="dx != null">
|
||||
dx,
|
||||
</if>
|
||||
<if test="dxbl != null">
|
||||
dxbl,
|
||||
</if>
|
||||
<if test="dxhjbgz != null">
|
||||
dxhjbgz,
|
||||
</if>
|
||||
<if test="dzhhjxz != null">
|
||||
dzhhjxz,
|
||||
</if>
|
||||
<if test="gskjywr != null">
|
||||
gskjywr,
|
||||
</if>
|
||||
<if test="gw != null">
|
||||
gw,
|
||||
</if>
|
||||
<if test="hjgz != null">
|
||||
hjgz,
|
||||
</if>
|
||||
<if test="hjxzdzbl != null">
|
||||
hjxzdzbl,
|
||||
</if>
|
||||
<if test="jbgz != null">
|
||||
jbgz,
|
||||
</if>
|
||||
<if test="mainid != null">
|
||||
mainid,
|
||||
</if>
|
||||
<if test="nzjj != null">
|
||||
nzjj,
|
||||
</if>
|
||||
<if test="qnjxfs != null">
|
||||
qnjxfs,
|
||||
</if>
|
||||
<if test="Xm != null">
|
||||
Xm,
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="VALUES (" suffix=")" suffixOverrides=",">
|
||||
<if test="bm != null" >
|
||||
#{bm},
|
||||
</if>
|
||||
<if test="bz != null" >
|
||||
#{bz},
|
||||
</if>
|
||||
<if test="dx != null" >
|
||||
#{dx},
|
||||
</if>
|
||||
<if test="dxbl != null" >
|
||||
#{dxbl},
|
||||
</if>
|
||||
<if test="dxhjbgz != null" >
|
||||
#{dxhjbgz},
|
||||
</if>
|
||||
<if test="dzhhjxz != null" >
|
||||
#{dzhhjxz},
|
||||
</if>
|
||||
<if test="gskjywr != null" >
|
||||
#{gskjywr},
|
||||
</if>
|
||||
<if test="gw != null" >
|
||||
#{gw},
|
||||
</if>
|
||||
<if test="hjgz != null" >
|
||||
#{hjgz},
|
||||
</if>
|
||||
<if test="hjxzdzbl != null" >
|
||||
#{hjxzdzbl},
|
||||
</if>
|
||||
<if test="jbgz != null" >
|
||||
#{jbgz},
|
||||
</if>
|
||||
<if test="mainid != null" >
|
||||
#{mainid},
|
||||
</if>
|
||||
<if test="nzjj != null" >
|
||||
#{nzjj},
|
||||
</if>
|
||||
<if test="qnjxfs != null" >
|
||||
#{qnjxfs},
|
||||
</if>
|
||||
<if test="Xm != null" >
|
||||
#{Xm},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<!-- 更新,更新全部字段 -->
|
||||
<update id="update" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt1PO">
|
||||
UPDATE uf_txjlgljmb_dt1
|
||||
<set>
|
||||
bm=#{bm},
|
||||
bz=#{bz},
|
||||
dx=#{dx},
|
||||
dxbl=#{dxbl},
|
||||
dxhjbgz=#{dxhjbgz},
|
||||
dzhhjxz=#{dzhhjxz},
|
||||
gskjywr=#{gskjywr},
|
||||
gw=#{gw},
|
||||
hjgz=#{hjgz},
|
||||
hjxzdzbl=#{hjxzdzbl},
|
||||
jbgz=#{jbgz},
|
||||
mainid=#{mainid},
|
||||
nzjj=#{nzjj},
|
||||
qnjxfs=#{qnjxfs},
|
||||
Xm=#{Xm},
|
||||
</set>
|
||||
WHERE id = #{id}
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 更新不为NULL的字段 -->
|
||||
<update id="updateIgnoreNull" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt1PO">
|
||||
UPDATE uf_txjlgljmb_dt1
|
||||
<set>
|
||||
<if test="bm != null" >
|
||||
bm=#{bm},
|
||||
</if>
|
||||
<if test="bz != null" >
|
||||
bz=#{bz},
|
||||
</if>
|
||||
<if test="dx != null" >
|
||||
dx=#{dx},
|
||||
</if>
|
||||
<if test="dxbl != null" >
|
||||
dxbl=#{dxbl},
|
||||
</if>
|
||||
<if test="dxhjbgz != null" >
|
||||
dxhjbgz=#{dxhjbgz},
|
||||
</if>
|
||||
<if test="dzhhjxz != null" >
|
||||
dzhhjxz=#{dzhhjxz},
|
||||
</if>
|
||||
<if test="gskjywr != null" >
|
||||
gskjywr=#{gskjywr},
|
||||
</if>
|
||||
<if test="gw != null" >
|
||||
gw=#{gw},
|
||||
</if>
|
||||
<if test="hjgz != null" >
|
||||
hjgz=#{hjgz},
|
||||
</if>
|
||||
<if test="hjxzdzbl != null" >
|
||||
hjxzdzbl=#{hjxzdzbl},
|
||||
</if>
|
||||
<if test="jbgz != null" >
|
||||
jbgz=#{jbgz},
|
||||
</if>
|
||||
<if test="mainid != null" >
|
||||
mainid=#{mainid},
|
||||
</if>
|
||||
<if test="nzjj != null" >
|
||||
nzjj=#{nzjj},
|
||||
</if>
|
||||
<if test="qnjxfs != null" >
|
||||
qnjxfs=#{qnjxfs},
|
||||
</if>
|
||||
<if test="Xm != null" >
|
||||
Xm=#{Xm},
|
||||
</if>
|
||||
</set>
|
||||
WHERE id = #{id}
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 根据主键删除记录 -->
|
||||
<delete id="delete" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt1PO">
|
||||
delete from uf_txjlgljmb_dt1
|
||||
WHERE id = #{id}
|
||||
</delete>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
package com.engine.salary.mapper.salaryacct;
|
||||
|
||||
import com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt2PO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName UfTxjlgljmbDt2Mapper
|
||||
* @date 2024/09/09 10:06
|
||||
* @description
|
||||
*/
|
||||
public interface UfTxjlgljmbDt2Mapper {
|
||||
/**
|
||||
* 查询所有记录
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<UfTxjlgljmbDt2PO> listAll();
|
||||
|
||||
/**
|
||||
* 条件查询
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<UfTxjlgljmbDt2PO> listSome(UfTxjlgljmbDt2PO ufTxjlgljmbDt2);
|
||||
|
||||
|
||||
/**
|
||||
* 根据主键查询
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 返回记录,没有返回null
|
||||
*/
|
||||
UfTxjlgljmbDt2PO getById(Integer id);
|
||||
|
||||
/**
|
||||
* 新增,忽略null字段
|
||||
*
|
||||
* @param ufTxjlgljmbDt2 新增的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int insertIgnoreNull(UfTxjlgljmbDt2PO ufTxjlgljmbDt2);
|
||||
|
||||
/**
|
||||
* 修改,修改所有字段
|
||||
*
|
||||
* @param ufTxjlgljmbDt2 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int update(UfTxjlgljmbDt2PO ufTxjlgljmbDt2);
|
||||
|
||||
/**
|
||||
* 修改,忽略null字段
|
||||
*
|
||||
* @param ufTxjlgljmbDt2 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int updateIgnoreNull(UfTxjlgljmbDt2PO ufTxjlgljmbDt2);
|
||||
|
||||
/**
|
||||
* 删除记录
|
||||
*
|
||||
* @param ufTxjlgljmbDt2 待删除的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int delete(UfTxjlgljmbDt2PO ufTxjlgljmbDt2);
|
||||
|
||||
void deleteByMainId(@Param("mainId")Integer mainId);
|
||||
}
|
||||
|
|
@ -0,0 +1,157 @@
|
|||
<?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.engine.salary.mapper.salaryacct.UfTxjlgljmbDt2Mapper">
|
||||
<resultMap id="BaseResultMap" type="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt2PO">
|
||||
<result column="bm" property="bm" />
|
||||
<result column="dxze" property="dxze" />
|
||||
<result column="hjxzze" property="hjxzze" />
|
||||
<result column="id" property="id" />
|
||||
<result column="mainid" property="mainid" />
|
||||
<result column="rs" property="rs" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 表字段 -->
|
||||
<sql id="baseColumns">
|
||||
t.bm
|
||||
, t.dxze
|
||||
, t.hjxzze
|
||||
, t.id
|
||||
, t.mainid
|
||||
, t.rs
|
||||
</sql>
|
||||
|
||||
<!-- 查询全部 -->
|
||||
<select id="listAll" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb_dt2 t
|
||||
</select>
|
||||
|
||||
<!-- 根据主键获取单条记录 -->
|
||||
<select id="getById" resultMap="BaseResultMap" parameterType="Integer">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb_dt2 t
|
||||
WHERE id = #{id}
|
||||
</select>
|
||||
|
||||
<!-- 条件查询 -->
|
||||
<select id="listSome" resultMap="BaseResultMap" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt2PO">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb_dt2 t
|
||||
WHERE 1 = 1
|
||||
<if test="bm != null">
|
||||
AND bm = #{bm}
|
||||
</if>
|
||||
<if test="dxze != null">
|
||||
AND dxze = #{dxze}
|
||||
</if>
|
||||
<if test="hjxzze != null">
|
||||
AND hjxzze = #{hjxzze}
|
||||
</if>
|
||||
<if test="mainid != null">
|
||||
AND mainid = #{mainid}
|
||||
</if>
|
||||
<if test="rs != null">
|
||||
AND rs = #{rs}
|
||||
</if>
|
||||
<if test="ids != null and ids.size()>0">
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</if>
|
||||
ORDER BY id DESC
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 插入不为NULL的字段 -->
|
||||
<insert id="insertIgnoreNull" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt2PO">
|
||||
INSERT INTO uf_txjlgljmb_dt2
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
|
||||
<if test="bm != null">
|
||||
bm,
|
||||
</if>
|
||||
<if test="dxze != null">
|
||||
dxze,
|
||||
</if>
|
||||
<if test="hjxzze != null">
|
||||
hjxzze,
|
||||
</if>
|
||||
<if test="mainid != null">
|
||||
mainid,
|
||||
</if>
|
||||
<if test="rs != null">
|
||||
rs,
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="VALUES (" suffix=")" suffixOverrides=",">
|
||||
<if test="bm != null" >
|
||||
#{bm},
|
||||
</if>
|
||||
<if test="dxze != null" >
|
||||
#{dxze},
|
||||
</if>
|
||||
<if test="hjxzze != null" >
|
||||
#{hjxzze},
|
||||
</if>
|
||||
<if test="mainid != null" >
|
||||
#{mainid},
|
||||
</if>
|
||||
<if test="rs != null" >
|
||||
#{rs},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<!-- 更新,更新全部字段 -->
|
||||
<update id="update" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt2PO">
|
||||
UPDATE uf_txjlgljmb_dt2
|
||||
<set>
|
||||
bm=#{bm},
|
||||
dxze=#{dxze},
|
||||
hjxzze=#{hjxzze},
|
||||
mainid=#{mainid},
|
||||
rs=#{rs},
|
||||
</set>
|
||||
WHERE id = #{id}
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 更新不为NULL的字段 -->
|
||||
<update id="updateIgnoreNull" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt2PO">
|
||||
UPDATE uf_txjlgljmb_dt2
|
||||
<set>
|
||||
<if test="bm != null" >
|
||||
bm=#{bm},
|
||||
</if>
|
||||
<if test="dxze != null" >
|
||||
dxze=#{dxze},
|
||||
</if>
|
||||
<if test="hjxzze != null" >
|
||||
hjxzze=#{hjxzze},
|
||||
</if>
|
||||
<if test="mainid != null" >
|
||||
mainid=#{mainid},
|
||||
</if>
|
||||
<if test="rs != null" >
|
||||
rs=#{rs},
|
||||
</if>
|
||||
</set>
|
||||
WHERE id = #{id}
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 根据主键删除记录 -->
|
||||
<delete id="delete" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt2PO">
|
||||
delete from uf_txjlgljmb_dt2
|
||||
WHERE id = #{id}
|
||||
</delete>
|
||||
<delete id="deleteByMainId">
|
||||
delete from uf_txjlgljmb_dt2 where mainid = #{mainId}
|
||||
</delete>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
|
@ -0,0 +1,72 @@
|
|||
package com.engine.salary.mapper.salaryacct;
|
||||
|
||||
import com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt3PO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName UfTxjlgljmbDt3Mapper
|
||||
* @date 2024/09/09 10:06
|
||||
* @description
|
||||
*/
|
||||
public interface UfTxjlgljmbDt3Mapper {
|
||||
|
||||
/**
|
||||
* 查询所有记录
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<UfTxjlgljmbDt3PO> listAll();
|
||||
|
||||
/**
|
||||
* 条件查询
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<UfTxjlgljmbDt3PO> listSome(UfTxjlgljmbDt3PO ufTxjlgljmbDt3);
|
||||
|
||||
|
||||
/**
|
||||
* 根据主键查询
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 返回记录,没有返回null
|
||||
*/
|
||||
UfTxjlgljmbDt3PO getById(Integer id);
|
||||
|
||||
/**
|
||||
* 新增,忽略null字段
|
||||
*
|
||||
* @param ufTxjlgljmbDt3 新增的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int insertIgnoreNull(UfTxjlgljmbDt3PO ufTxjlgljmbDt3);
|
||||
|
||||
/**
|
||||
* 修改,修改所有字段
|
||||
*
|
||||
* @param ufTxjlgljmbDt3 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int update(UfTxjlgljmbDt3PO ufTxjlgljmbDt3);
|
||||
|
||||
/**
|
||||
* 修改,忽略null字段
|
||||
*
|
||||
* @param ufTxjlgljmbDt3 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int updateIgnoreNull(UfTxjlgljmbDt3PO ufTxjlgljmbDt3);
|
||||
|
||||
/**
|
||||
* 删除记录
|
||||
*
|
||||
* @param ufTxjlgljmbDt3 待删除的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int delete(UfTxjlgljmbDt3PO ufTxjlgljmbDt3);
|
||||
|
||||
void deleteByMainId(@Param("mainId") Integer mainId);
|
||||
}
|
||||
|
|
@ -0,0 +1,173 @@
|
|||
<?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.engine.salary.mapper.salaryacct.UfTxjlgljmbDt3Mapper">
|
||||
<resultMap id="BaseResultMap" type="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt3PO">
|
||||
<result column="bm" property="bm" />
|
||||
<result column="dxbl" property="dxbl" />
|
||||
<result column="dxye" property="dxye" />
|
||||
<result column="dxys" property="dxys" />
|
||||
<result column="dxysyed" property="dxysyed" />
|
||||
<result column="id" property="id" />
|
||||
<result column="mainid" property="mainid" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 表字段 -->
|
||||
<sql id="baseColumns">
|
||||
t.bm
|
||||
, t.dxbl
|
||||
, t.dxye
|
||||
, t.dxys
|
||||
, t.dxysyed
|
||||
, t.id
|
||||
, t.mainid
|
||||
</sql>
|
||||
|
||||
<!-- 查询全部 -->
|
||||
<select id="listAll" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb_dt3 t
|
||||
</select>
|
||||
|
||||
<!-- 根据主键获取单条记录 -->
|
||||
<select id="getById" resultMap="BaseResultMap" parameterType="Integer">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb_dt3 t
|
||||
WHERE id = #{id}
|
||||
</select>
|
||||
|
||||
<!-- 条件查询 -->
|
||||
<select id="listSome" resultMap="BaseResultMap" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt3PO">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb_dt3 t
|
||||
WHERE 1 = 1
|
||||
<if test="bm != null">
|
||||
AND bm = #{bm}
|
||||
</if>
|
||||
<if test="dxbl != null">
|
||||
AND dxbl = #{dxbl}
|
||||
</if>
|
||||
<if test="dxye != null">
|
||||
AND dxye = #{dxye}
|
||||
</if>
|
||||
<if test="dxys != null">
|
||||
AND dxys = #{dxys}
|
||||
</if>
|
||||
<if test="dxysyed != null">
|
||||
AND dxysyed = #{dxysyed}
|
||||
</if>
|
||||
<if test="mainid != null">
|
||||
AND mainid = #{mainid}
|
||||
</if>
|
||||
<if test="ids != null and ids.size()>0">
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</if>
|
||||
ORDER BY id DESC
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 插入不为NULL的字段 -->
|
||||
<insert id="insertIgnoreNull" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt3PO">
|
||||
INSERT INTO uf_txjlgljmb_dt3
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
|
||||
<if test="bm != null">
|
||||
bm,
|
||||
</if>
|
||||
<if test="dxbl != null">
|
||||
dxbl,
|
||||
</if>
|
||||
<if test="dxye != null">
|
||||
dxye,
|
||||
</if>
|
||||
<if test="dxys != null">
|
||||
dxys,
|
||||
</if>
|
||||
<if test="dxysyed != null">
|
||||
dxysyed,
|
||||
</if>
|
||||
<if test="mainid != null">
|
||||
mainid,
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="VALUES (" suffix=")" suffixOverrides=",">
|
||||
<if test="bm != null" >
|
||||
#{bm},
|
||||
</if>
|
||||
<if test="dxbl != null" >
|
||||
#{dxbl},
|
||||
</if>
|
||||
<if test="dxye != null" >
|
||||
#{dxye},
|
||||
</if>
|
||||
<if test="dxys != null" >
|
||||
#{dxys},
|
||||
</if>
|
||||
<if test="dxysyed != null" >
|
||||
#{dxysyed},
|
||||
</if>
|
||||
<if test="mainid != null" >
|
||||
#{mainid},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<!-- 更新,更新全部字段 -->
|
||||
<update id="update" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt3PO">
|
||||
UPDATE uf_txjlgljmb_dt3
|
||||
<set>
|
||||
bm=#{bm},
|
||||
dxbl=#{dxbl},
|
||||
dxye=#{dxye},
|
||||
dxys=#{dxys},
|
||||
dxysyed=#{dxysyed},
|
||||
mainid=#{mainid},
|
||||
</set>
|
||||
WHERE id = #{id}
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 更新不为NULL的字段 -->
|
||||
<update id="updateIgnoreNull" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt3PO">
|
||||
UPDATE uf_txjlgljmb_dt3
|
||||
<set>
|
||||
<if test="bm != null" >
|
||||
bm=#{bm},
|
||||
</if>
|
||||
<if test="dxbl != null" >
|
||||
dxbl=#{dxbl},
|
||||
</if>
|
||||
<if test="dxye != null" >
|
||||
dxye=#{dxye},
|
||||
</if>
|
||||
<if test="dxys != null" >
|
||||
dxys=#{dxys},
|
||||
</if>
|
||||
<if test="dxysyed != null" >
|
||||
dxysyed=#{dxysyed},
|
||||
</if>
|
||||
<if test="mainid != null" >
|
||||
mainid=#{mainid},
|
||||
</if>
|
||||
</set>
|
||||
WHERE id = #{id}
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 根据主键删除记录 -->
|
||||
<delete id="delete" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbDt3PO">
|
||||
delete from uf_txjlgljmb_dt3
|
||||
WHERE id = #{id}
|
||||
</delete>
|
||||
|
||||
<delete id="deleteByMainId">
|
||||
delete from uf_txjlgljmb_dt3 where mainid=#{mainId}
|
||||
</delete>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
package com.engine.salary.mapper.salaryacct;
|
||||
|
||||
import com.engine.salary.entity.salaryacct.po.UfTxjlgljmbPO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName UfTxjlgljmbMapper
|
||||
* @date 2024/09/09 10:05
|
||||
* @description
|
||||
*/
|
||||
public interface UfTxjlgljmbMapper {
|
||||
/**
|
||||
* 查询所有记录
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<UfTxjlgljmbPO> listAll();
|
||||
|
||||
/**
|
||||
* 条件查询
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
List<UfTxjlgljmbPO> listSome(UfTxjlgljmbPO ufTxjlgljmb);
|
||||
|
||||
|
||||
/**
|
||||
* 根据主键查询
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 返回记录,没有返回null
|
||||
*/
|
||||
UfTxjlgljmbPO getById(Integer id);
|
||||
|
||||
/**
|
||||
* 新增,忽略null字段
|
||||
*
|
||||
* @param ufTxjlgljmb 新增的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int insertIgnoreNull(UfTxjlgljmbPO ufTxjlgljmb);
|
||||
|
||||
/**
|
||||
* 修改,修改所有字段
|
||||
*
|
||||
* @param ufTxjlgljmb 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int update(UfTxjlgljmbPO ufTxjlgljmb);
|
||||
|
||||
/**
|
||||
* 修改,忽略null字段
|
||||
*
|
||||
* @param ufTxjlgljmb 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int updateIgnoreNull(UfTxjlgljmbPO ufTxjlgljmb);
|
||||
|
||||
/**
|
||||
* 删除记录
|
||||
*
|
||||
* @param ufTxjlgljmb 待删除的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
int delete(UfTxjlgljmbPO ufTxjlgljmb);
|
||||
}
|
||||
|
|
@ -0,0 +1,441 @@
|
|||
<?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.engine.salary.mapper.salaryacct.UfTxjlgljmbMapper">
|
||||
<resultMap id="BaseResultMap" type="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbPO">
|
||||
<result column="dxcj" property="dxcj" />
|
||||
<result column="dxdecjspr" property="dxdecjspr" />
|
||||
<result column="dxdlcjspr" property="dxdlcjspr" />
|
||||
<result column="dxdsacjspr" property="dxdsacjspr" />
|
||||
<result column="dxdsicjspr" property="dxdsicjspr" />
|
||||
<result column="dxdwcjspr" property="dxdwcjspr" />
|
||||
<result column="dxdycjspr" property="dxdycjspr" />
|
||||
<result column="form_biz_id" property="formBizId" />
|
||||
<result column="formmodeid" property="formmodeid" />
|
||||
<result column="fqrbm" property="fqrbm" />
|
||||
<result column="fqrgs" property="fqrgs" />
|
||||
<result column="fqrq" property="fqrq" />
|
||||
<result column="fqrxm" property="fqrxm" />
|
||||
<result column="id" property="id" />
|
||||
<result column="modedatacreatedate" property="modedatacreatedate" />
|
||||
<result column="modedatacreater" property="modedatacreater" />
|
||||
<result column="modedatacreatertype" property="modedatacreatertype" />
|
||||
<result column="modedatacreatetime" property="modedatacreatetime" />
|
||||
<result column="modedatamodifier" property="modedatamodifier" />
|
||||
<result column="modedatamodifydatetime" property="modedatamodifydatetime" />
|
||||
<result column="MODEUUID" property="modeuuid" />
|
||||
<result column="nd" property="nd" />
|
||||
<result column="requestId" property="requestId" />
|
||||
<result column="spr" property="spr" />
|
||||
<result column="Sxrq" property="Sxrq" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 表字段 -->
|
||||
<sql id="baseColumns">
|
||||
t.dxcj
|
||||
, t.dxdecjspr
|
||||
, t.dxdlcjspr
|
||||
, t.dxdsacjspr
|
||||
, t.dxdsicjspr
|
||||
, t.dxdwcjspr
|
||||
, t.dxdycjspr
|
||||
, t.form_biz_id
|
||||
, t.formmodeid
|
||||
, t.fqrbm
|
||||
, t.fqrgs
|
||||
, t.fqrq
|
||||
, t.fqrxm
|
||||
, t.id
|
||||
, t.modedatacreatedate
|
||||
, t.modedatacreater
|
||||
, t.modedatacreatertype
|
||||
, t.modedatacreatetime
|
||||
, t.modedatamodifier
|
||||
, t.modedatamodifydatetime
|
||||
, t.MODEUUID
|
||||
, t.nd
|
||||
, t.requestId
|
||||
, t.spr
|
||||
, t.Sxrq
|
||||
</sql>
|
||||
|
||||
<!-- 查询全部 -->
|
||||
<select id="listAll" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb t
|
||||
</select>
|
||||
|
||||
<!-- 根据主键获取单条记录 -->
|
||||
<select id="getById" resultMap="BaseResultMap" parameterType="Integer">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb t
|
||||
WHERE id = #{id}
|
||||
</select>
|
||||
|
||||
<!-- 条件查询 -->
|
||||
<select id="listSome" resultMap="BaseResultMap" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbPO">
|
||||
SELECT
|
||||
<include refid="baseColumns" />
|
||||
FROM uf_txjlgljmb t
|
||||
WHERE 1 = 1
|
||||
<if test="dxcj != null">
|
||||
AND dxcj = #{dxcj}
|
||||
</if>
|
||||
<if test="dxdecjspr != null">
|
||||
AND dxdecjspr = #{dxdecjspr}
|
||||
</if>
|
||||
<if test="dxdlcjspr != null">
|
||||
AND dxdlcjspr = #{dxdlcjspr}
|
||||
</if>
|
||||
<if test="dxdsacjspr != null">
|
||||
AND dxdsacjspr = #{dxdsacjspr}
|
||||
</if>
|
||||
<if test="dxdsicjspr != null">
|
||||
AND dxdsicjspr = #{dxdsicjspr}
|
||||
</if>
|
||||
<if test="dxdwcjspr != null">
|
||||
AND dxdwcjspr = #{dxdwcjspr}
|
||||
</if>
|
||||
<if test="dxdycjspr != null">
|
||||
AND dxdycjspr = #{dxdycjspr}
|
||||
</if>
|
||||
<if test="formBizId != null">
|
||||
AND form_biz_id = #{formBizId}
|
||||
</if>
|
||||
<if test="formmodeid != null">
|
||||
AND formmodeid = #{formmodeid}
|
||||
</if>
|
||||
<if test="fqrbm != null">
|
||||
AND fqrbm = #{fqrbm}
|
||||
</if>
|
||||
<if test="fqrgs != null">
|
||||
AND fqrgs = #{fqrgs}
|
||||
</if>
|
||||
<if test="fqrq != null">
|
||||
AND fqrq = #{fqrq}
|
||||
</if>
|
||||
<if test="fqrxm != null">
|
||||
AND fqrxm = #{fqrxm}
|
||||
</if>
|
||||
<if test="modedatacreatedate != null">
|
||||
AND modedatacreatedate = #{modedatacreatedate}
|
||||
</if>
|
||||
<if test="modedatacreater != null">
|
||||
AND modedatacreater = #{modedatacreater}
|
||||
</if>
|
||||
<if test="modedatacreatertype != null">
|
||||
AND modedatacreatertype = #{modedatacreatertype}
|
||||
</if>
|
||||
<if test="modedatacreatetime != null">
|
||||
AND modedatacreatetime = #{modedatacreatetime}
|
||||
</if>
|
||||
<if test="modedatamodifier != null">
|
||||
AND modedatamodifier = #{modedatamodifier}
|
||||
</if>
|
||||
<if test="modedatamodifydatetime != null">
|
||||
AND modedatamodifydatetime = #{modedatamodifydatetime}
|
||||
</if>
|
||||
<if test="modeuuid != null">
|
||||
AND MODEUUID = #{modeuuid}
|
||||
</if>
|
||||
<if test="nd != null">
|
||||
AND nd = #{nd}
|
||||
</if>
|
||||
<if test="requestId != null">
|
||||
AND requestId = #{requestId}
|
||||
</if>
|
||||
<if test="spr != null">
|
||||
AND spr = #{spr}
|
||||
</if>
|
||||
<if test="Sxrq != null">
|
||||
AND Sxrq = #{Sxrq}
|
||||
</if>
|
||||
<if test="ids != null and ids.size()>0">
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</if>
|
||||
ORDER BY id DESC
|
||||
</select>
|
||||
|
||||
|
||||
<!-- 插入不为NULL的字段 -->
|
||||
<insert id="insertIgnoreNull" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbPO"
|
||||
keyProperty="id" keyColumn="id" useGeneratedKeys="true">
|
||||
INSERT INTO uf_txjlgljmb
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
|
||||
<if test="dxcj != null">
|
||||
dxcj,
|
||||
</if>
|
||||
<if test="dxdecjspr != null">
|
||||
dxdecjspr,
|
||||
</if>
|
||||
<if test="dxdlcjspr != null">
|
||||
dxdlcjspr,
|
||||
</if>
|
||||
<if test="dxdsacjspr != null">
|
||||
dxdsacjspr,
|
||||
</if>
|
||||
<if test="dxdsicjspr != null">
|
||||
dxdsicjspr,
|
||||
</if>
|
||||
<if test="dxdwcjspr != null">
|
||||
dxdwcjspr,
|
||||
</if>
|
||||
<if test="dxdycjspr != null">
|
||||
dxdycjspr,
|
||||
</if>
|
||||
<if test="formBizId != null">
|
||||
form_biz_id,
|
||||
</if>
|
||||
<if test="formmodeid != null">
|
||||
formmodeid,
|
||||
</if>
|
||||
<if test="fqrbm != null">
|
||||
fqrbm,
|
||||
</if>
|
||||
<if test="fqrgs != null">
|
||||
fqrgs,
|
||||
</if>
|
||||
<if test="fqrq != null">
|
||||
fqrq,
|
||||
</if>
|
||||
<if test="fqrxm != null">
|
||||
fqrxm,
|
||||
</if>
|
||||
<if test="modedatacreatedate != null">
|
||||
modedatacreatedate,
|
||||
</if>
|
||||
<if test="modedatacreater != null">
|
||||
modedatacreater,
|
||||
</if>
|
||||
<if test="modedatacreatertype != null">
|
||||
modedatacreatertype,
|
||||
</if>
|
||||
<if test="modedatacreatetime != null">
|
||||
modedatacreatetime,
|
||||
</if>
|
||||
<if test="modedatamodifier != null">
|
||||
modedatamodifier,
|
||||
</if>
|
||||
<if test="modedatamodifydatetime != null">
|
||||
modedatamodifydatetime,
|
||||
</if>
|
||||
<if test="modeuuid != null">
|
||||
MODEUUID,
|
||||
</if>
|
||||
<if test="nd != null">
|
||||
nd,
|
||||
</if>
|
||||
<if test="requestId != null">
|
||||
requestId,
|
||||
</if>
|
||||
<if test="spr != null">
|
||||
spr,
|
||||
</if>
|
||||
<if test="Sxrq != null">
|
||||
Sxrq,
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="VALUES (" suffix=")" suffixOverrides=",">
|
||||
<if test="dxcj != null" >
|
||||
#{dxcj},
|
||||
</if>
|
||||
<if test="dxdecjspr != null" >
|
||||
#{dxdecjspr},
|
||||
</if>
|
||||
<if test="dxdlcjspr != null" >
|
||||
#{dxdlcjspr},
|
||||
</if>
|
||||
<if test="dxdsacjspr != null" >
|
||||
#{dxdsacjspr},
|
||||
</if>
|
||||
<if test="dxdsicjspr != null" >
|
||||
#{dxdsicjspr},
|
||||
</if>
|
||||
<if test="dxdwcjspr != null" >
|
||||
#{dxdwcjspr},
|
||||
</if>
|
||||
<if test="dxdycjspr != null" >
|
||||
#{dxdycjspr},
|
||||
</if>
|
||||
<if test="formBizId != null" >
|
||||
#{formBizId},
|
||||
</if>
|
||||
<if test="formmodeid != null" >
|
||||
#{formmodeid},
|
||||
</if>
|
||||
<if test="fqrbm != null" >
|
||||
#{fqrbm},
|
||||
</if>
|
||||
<if test="fqrgs != null" >
|
||||
#{fqrgs},
|
||||
</if>
|
||||
<if test="fqrq != null" >
|
||||
#{fqrq},
|
||||
</if>
|
||||
<if test="fqrxm != null" >
|
||||
#{fqrxm},
|
||||
</if>
|
||||
<if test="modedatacreatedate != null" >
|
||||
#{modedatacreatedate},
|
||||
</if>
|
||||
<if test="modedatacreater != null" >
|
||||
#{modedatacreater},
|
||||
</if>
|
||||
<if test="modedatacreatertype != null" >
|
||||
#{modedatacreatertype},
|
||||
</if>
|
||||
<if test="modedatacreatetime != null" >
|
||||
#{modedatacreatetime},
|
||||
</if>
|
||||
<if test="modedatamodifier != null" >
|
||||
#{modedatamodifier},
|
||||
</if>
|
||||
<if test="modedatamodifydatetime != null" >
|
||||
#{modedatamodifydatetime},
|
||||
</if>
|
||||
<if test="modeuuid != null" >
|
||||
#{modeuuid},
|
||||
</if>
|
||||
<if test="nd != null" >
|
||||
#{nd},
|
||||
</if>
|
||||
<if test="requestId != null" >
|
||||
#{requestId},
|
||||
</if>
|
||||
<if test="spr != null" >
|
||||
#{spr},
|
||||
</if>
|
||||
<if test="Sxrq != null" >
|
||||
#{Sxrq},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<!-- 更新,更新全部字段 -->
|
||||
<update id="update" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbPO">
|
||||
UPDATE uf_txjlgljmb
|
||||
<set>
|
||||
dxcj=#{dxcj},
|
||||
dxdecjspr=#{dxdecjspr},
|
||||
dxdlcjspr=#{dxdlcjspr},
|
||||
dxdsacjspr=#{dxdsacjspr},
|
||||
dxdsicjspr=#{dxdsicjspr},
|
||||
dxdwcjspr=#{dxdwcjspr},
|
||||
dxdycjspr=#{dxdycjspr},
|
||||
form_biz_id=#{formBizId},
|
||||
formmodeid=#{formmodeid},
|
||||
fqrbm=#{fqrbm},
|
||||
fqrgs=#{fqrgs},
|
||||
fqrq=#{fqrq},
|
||||
fqrxm=#{fqrxm},
|
||||
modedatacreatedate=#{modedatacreatedate},
|
||||
modedatacreater=#{modedatacreater},
|
||||
modedatacreatertype=#{modedatacreatertype},
|
||||
modedatacreatetime=#{modedatacreatetime},
|
||||
modedatamodifier=#{modedatamodifier},
|
||||
modedatamodifydatetime=#{modedatamodifydatetime},
|
||||
MODEUUID=#{modeuuid},
|
||||
nd=#{nd},
|
||||
requestId=#{requestId},
|
||||
spr=#{spr},
|
||||
Sxrq=#{Sxrq},
|
||||
</set>
|
||||
WHERE id = #{id}
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 更新不为NULL的字段 -->
|
||||
<update id="updateIgnoreNull" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbPO">
|
||||
UPDATE uf_txjlgljmb
|
||||
<set>
|
||||
<if test="dxcj != null" >
|
||||
dxcj=#{dxcj},
|
||||
</if>
|
||||
<if test="dxdecjspr != null" >
|
||||
dxdecjspr=#{dxdecjspr},
|
||||
</if>
|
||||
<if test="dxdlcjspr != null" >
|
||||
dxdlcjspr=#{dxdlcjspr},
|
||||
</if>
|
||||
<if test="dxdsacjspr != null" >
|
||||
dxdsacjspr=#{dxdsacjspr},
|
||||
</if>
|
||||
<if test="dxdsicjspr != null" >
|
||||
dxdsicjspr=#{dxdsicjspr},
|
||||
</if>
|
||||
<if test="dxdwcjspr != null" >
|
||||
dxdwcjspr=#{dxdwcjspr},
|
||||
</if>
|
||||
<if test="dxdycjspr != null" >
|
||||
dxdycjspr=#{dxdycjspr},
|
||||
</if>
|
||||
<if test="formBizId != null" >
|
||||
form_biz_id=#{formBizId},
|
||||
</if>
|
||||
<if test="formmodeid != null" >
|
||||
formmodeid=#{formmodeid},
|
||||
</if>
|
||||
<if test="fqrbm != null" >
|
||||
fqrbm=#{fqrbm},
|
||||
</if>
|
||||
<if test="fqrgs != null" >
|
||||
fqrgs=#{fqrgs},
|
||||
</if>
|
||||
<if test="fqrq != null" >
|
||||
fqrq=#{fqrq},
|
||||
</if>
|
||||
<if test="fqrxm != null" >
|
||||
fqrxm=#{fqrxm},
|
||||
</if>
|
||||
<if test="modedatacreatedate != null" >
|
||||
modedatacreatedate=#{modedatacreatedate},
|
||||
</if>
|
||||
<if test="modedatacreater != null" >
|
||||
modedatacreater=#{modedatacreater},
|
||||
</if>
|
||||
<if test="modedatacreatertype != null" >
|
||||
modedatacreatertype=#{modedatacreatertype},
|
||||
</if>
|
||||
<if test="modedatacreatetime != null" >
|
||||
modedatacreatetime=#{modedatacreatetime},
|
||||
</if>
|
||||
<if test="modedatamodifier != null" >
|
||||
modedatamodifier=#{modedatamodifier},
|
||||
</if>
|
||||
<if test="modedatamodifydatetime != null" >
|
||||
modedatamodifydatetime=#{modedatamodifydatetime},
|
||||
</if>
|
||||
<if test="modeuuid != null" >
|
||||
MODEUUID=#{modeuuid},
|
||||
</if>
|
||||
<if test="nd != null" >
|
||||
nd=#{nd},
|
||||
</if>
|
||||
<if test="requestId != null" >
|
||||
requestId=#{requestId},
|
||||
</if>
|
||||
<if test="spr != null" >
|
||||
spr=#{spr},
|
||||
</if>
|
||||
<if test="Sxrq != null" >
|
||||
Sxrq=#{Sxrq},
|
||||
</if>
|
||||
</set>
|
||||
WHERE id = #{id}
|
||||
</update>
|
||||
|
||||
|
||||
<!-- 根据主键删除记录 -->
|
||||
<delete id="delete" parameterType="com.engine.salary.entity.salaryacct.po.UfTxjlgljmbPO">
|
||||
delete from uf_txjlgljmb
|
||||
|
||||
WHERE id = #{id}
|
||||
</delete>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
|
@ -0,0 +1,79 @@
|
|||
package com.engine.salary.service;
|
||||
|
||||
import com.engine.salary.entity.salaryacct.param.gwPltxSaveParam;
|
||||
import com.engine.salary.entity.salaryacct.po.GwPltxDt1PO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName GwPltxDt1Service
|
||||
* @date 2024/09/08 20:13
|
||||
* @description
|
||||
*/
|
||||
public interface GwPltxDt1Service {
|
||||
/**
|
||||
* 查询所有记录
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
public List<GwPltxDt1PO> listAll();
|
||||
|
||||
List<GwPltxDt1PO> listSome(GwPltxDt1PO param);
|
||||
|
||||
|
||||
/**
|
||||
* 根据主键查询
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 返回记录,没有返回null
|
||||
*/
|
||||
public GwPltxDt1PO getById(Long id);
|
||||
|
||||
|
||||
/**
|
||||
* 新增,忽略null字段
|
||||
*
|
||||
* @param gwPltxDt1 新增的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
public int insertIgnoreNull(GwPltxDt1PO gwPltxDt1);
|
||||
|
||||
/**
|
||||
* 修改,修改所有字段
|
||||
*
|
||||
* @param gwPltxDt1 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
public int update(GwPltxDt1PO gwPltxDt1);
|
||||
|
||||
/**
|
||||
* 修改,忽略null字段
|
||||
*
|
||||
* @param gwPltxDt1 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
public int updateIgnoreNull(GwPltxDt1PO gwPltxDt1);
|
||||
|
||||
/**
|
||||
* 删除记录
|
||||
*
|
||||
* @param gwPltxDt1 待删除的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
public int delete(GwPltxDt1PO gwPltxDt1);
|
||||
|
||||
/**
|
||||
* 批量插入
|
||||
* @param needSaveList
|
||||
*/
|
||||
void batchInsert(List<gwPltxSaveParam> needSaveList);
|
||||
|
||||
/**
|
||||
* 批量更新
|
||||
* @param needUpdatelist
|
||||
*/
|
||||
void batchUpdate(List<gwPltxSaveParam> needUpdatelist);
|
||||
|
||||
void deleteByIds(List<Long> needDeleteIds);
|
||||
}
|
||||
|
|
@ -4,6 +4,7 @@ import com.engine.salary.entity.datacollection.DataCollectionEmployee;
|
|||
import com.engine.salary.entity.salaryacct.dto.ConsolidatedTaxDetailDTO;
|
||||
import com.engine.salary.entity.salaryacct.dto.SalaryAcctResultDetailDTO;
|
||||
import com.engine.salary.entity.salaryacct.dto.SalaryAcctResultListColumnDTO;
|
||||
import com.engine.salary.entity.salaryacct.dto.pltxEmployeeDTO;
|
||||
import com.engine.salary.entity.salaryacct.param.*;
|
||||
import com.engine.salary.entity.salaryacct.po.SalaryAcctResultPO;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
|
|
@ -225,4 +226,23 @@ public interface SalaryAcctResultService {
|
|||
* @return
|
||||
*/
|
||||
Map<String, Object> fygsdReport(SalaryAcctRecordQueryParam param);
|
||||
|
||||
/**
|
||||
* 保存批量调薪明细表1信息
|
||||
* @param saveParam
|
||||
*/
|
||||
void pltxSaveDetails(List<gwPltxSaveParam> saveParam);
|
||||
|
||||
/**
|
||||
* 批量调薪明细列表
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
List<pltxEmployeeDTO> pltxDetailsList(PltxInitEmployeeParam param);
|
||||
|
||||
/**
|
||||
* 流程转建模
|
||||
* @param saveParam
|
||||
*/
|
||||
void pltxDetailsToMode(pltxDetailsToModeSaveParam saveParam);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,111 @@
|
|||
package com.engine.salary.service.impl;
|
||||
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.entity.salaryacct.param.gwPltxSaveParam;
|
||||
import com.engine.salary.entity.salaryacct.po.GwPltxDt1PO;
|
||||
import com.engine.salary.mapper.salaryacct.GwPltxDt1Mapper;
|
||||
import com.engine.salary.service.GwPltxDt1Service;
|
||||
import com.engine.salary.util.db.MapperProxyFactory;
|
||||
import com.google.common.collect.Lists;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Harryxzy
|
||||
* @ClassName GwPltxDt1ServiceImpl
|
||||
* @date 2024/09/08 20:13
|
||||
* @description
|
||||
*/
|
||||
public class GwPltxDt1ServiceImpl extends Service implements GwPltxDt1Service {
|
||||
|
||||
|
||||
private GwPltxDt1Mapper getGwPltxDt1Mapper() {
|
||||
return MapperProxyFactory.getProxy(GwPltxDt1Mapper.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询所有记录
|
||||
*
|
||||
* @return 返回集合,没有返回空List
|
||||
*/
|
||||
public List<GwPltxDt1PO> listAll() {
|
||||
return getGwPltxDt1Mapper().listAll();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<GwPltxDt1PO> listSome(GwPltxDt1PO param) {
|
||||
return getGwPltxDt1Mapper().listSome(param);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据主键查询
|
||||
*
|
||||
* @param id 主键
|
||||
* @return 返回记录,没有返回null
|
||||
*/
|
||||
public GwPltxDt1PO getById(Long id) {
|
||||
return getGwPltxDt1Mapper().getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增,忽略null字段
|
||||
*
|
||||
* @param gwPltxDt1 新增的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
public int insertIgnoreNull(GwPltxDt1PO gwPltxDt1) {
|
||||
return getGwPltxDt1Mapper().insertIgnoreNull(gwPltxDt1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改,修改所有字段
|
||||
*
|
||||
* @param gwPltxDt1 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
public int update(GwPltxDt1PO gwPltxDt1) {
|
||||
return getGwPltxDt1Mapper().update(gwPltxDt1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改,忽略null字段
|
||||
*
|
||||
* @param gwPltxDt1 修改的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
public int updateIgnoreNull(GwPltxDt1PO gwPltxDt1) {
|
||||
return getGwPltxDt1Mapper().updateIgnoreNull(gwPltxDt1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除记录
|
||||
*
|
||||
* @param gwPltxDt1 待删除的记录
|
||||
* @return 返回影响行数
|
||||
*/
|
||||
public int delete(GwPltxDt1PO gwPltxDt1) {
|
||||
return getGwPltxDt1Mapper().delete(gwPltxDt1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void batchInsert(List<gwPltxSaveParam> needSaveList) {
|
||||
List<List<gwPltxSaveParam>> partition = Lists.partition(needSaveList, 100);
|
||||
partition.forEach(list -> getGwPltxDt1Mapper().batchInsert(list));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void batchUpdate(List<gwPltxSaveParam> needUpdatelist) {
|
||||
List<List<gwPltxSaveParam>> partition = Lists.partition(needUpdatelist, 100);
|
||||
partition.forEach(list -> getGwPltxDt1Mapper().batchUpdate(list));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteByIds(List<Long> needDeleteIds) {
|
||||
if (CollectionUtils.isEmpty(needDeleteIds)) {
|
||||
return;
|
||||
}
|
||||
List<List<Long>> partition = Lists.partition(needDeleteIds, 100);
|
||||
partition.forEach(list -> getGwPltxDt1Mapper().deleteByIds(list));
|
||||
}
|
||||
}
|
||||
|
|
@ -1802,6 +1802,8 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
|
|||
.employeeName(emp.getUsername())
|
||||
.bmId(emp.getDepartmentId())
|
||||
.bmName(emp.getDepartmentName())
|
||||
.jobTitleId(emp.getJobtitleId())
|
||||
.jobTitleName(emp.getJobtitleName())
|
||||
.gskjywr(rs.getString("gskjywr"))
|
||||
.qnjxfs(rs.getDouble("qnjxfs") == -1 ? null : rs.getDouble("qnjxfs"))
|
||||
.jbgz(rs.getDouble("jbgz") == -1 ? null : rs.getDouble("jbgz"))
|
||||
|
|
@ -1810,6 +1812,7 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
|
|||
.dxbl(rs.getDouble("dxbl") == -1 ? null : rs.getDouble("dxbl"))
|
||||
.hjgz(rs.getDouble("hjgz") == -1 ? null : rs.getDouble("hjgz"))
|
||||
.bz(rs.getString("bz"))
|
||||
.nzjj(rs.getDouble("nzjj") == -1 ? null : rs.getDouble("nzjj"))
|
||||
.build());
|
||||
}
|
||||
}
|
||||
|
|
@ -1930,11 +1933,26 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
|
|||
SalaryArchiveItemPO itemPO = jxgzArchiveItemList.get(0);
|
||||
jxgz = Double.valueOf(StringUtils.isEmpty(itemPO.getItemValue()) ? "0" : itemPO.getItemValue());
|
||||
}
|
||||
// 获取员工信息
|
||||
DataCollectionEmployee emp = getSalaryEmployeeService(user).getEmployeeById(salaryArchiveItemPO.getEmployeeId());
|
||||
int lastYear = new Integer(param.getSxrq()) - 1;
|
||||
RecordSet rs = new RecordSet();
|
||||
rs.execute("select jxjg,ygxm from uf_jxjjmb where nd = '" + lastYear +"' and ygxm in ( "+ salaryArchiveItemPO.getEmployeeId() + " )");
|
||||
double jxjg = 0;
|
||||
if (rs.next()) {
|
||||
jxjg = rs.getDouble("jxjg") == -1 ? 0 : rs.getDouble("jxjg");
|
||||
}
|
||||
return pltxEmployeeDTO.builder()
|
||||
.employee(salaryArchiveItemPO.getEmployeeId())
|
||||
.employeeName(emp.getUsername())
|
||||
.bmId(emp.getDepartmentId())
|
||||
.bmName(emp.getDepartmentName())
|
||||
.jobTitleId(emp.getJobtitleId())
|
||||
.jobTitleName(emp.getJobtitleName())
|
||||
.gskjywr(param.getGskjywr())
|
||||
.jbgz(jbgz)
|
||||
.hjgz(jbgz+gwgz+jxgz)
|
||||
.qnjxfs(jxjg)
|
||||
.build();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -29,13 +29,14 @@ import com.engine.salary.enums.OperateTypeEnum;
|
|||
import com.engine.salary.enums.SalaryValueTypeEnum;
|
||||
import com.engine.salary.enums.UserStatusEnum;
|
||||
import com.engine.salary.enums.common.FilterEnum;
|
||||
import com.engine.salary.enums.datacollection.UseEmployeeTypeEnum;
|
||||
import com.engine.salary.enums.salaryaccounting.LockStatusEnum;
|
||||
import com.engine.salary.enums.salaryaccounting.SalaryAcctRecordStatusEnum;
|
||||
import com.engine.salary.enums.salaryaccounting.SalaryAcctResultDataSourceEnum;
|
||||
import com.engine.salary.enums.salaryitem.SalaryDataTypeEnum;
|
||||
import com.engine.salary.enums.salarysob.IncomeCategoryEnum;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
import com.engine.salary.mapper.salaryacct.SalaryAcctResultMapper;
|
||||
import com.engine.salary.mapper.salaryacct.*;
|
||||
import com.engine.salary.report.service.SalaryStatisticsReportService;
|
||||
import com.engine.salary.report.service.impl.SalaryStatisticsReportServiceImpl;
|
||||
import com.engine.salary.service.*;
|
||||
|
|
@ -55,6 +56,7 @@ import com.engine.salary.util.valid.ValidUtil;
|
|||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
import com.google.common.collect.Sets;
|
||||
import com.weaver.general.TimeUtil;
|
||||
import com.weaver.util.threadPool.ThreadPoolUtil;
|
||||
import com.weaver.util.threadPool.constant.ModulePoolEnum;
|
||||
import com.weaver.util.threadPool.entity.LocalRunnable;
|
||||
|
|
@ -66,12 +68,14 @@ import org.apache.commons.lang3.math.NumberUtils;
|
|||
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
|
||||
import org.springframework.util.StopWatch;
|
||||
import weaver.conn.RecordSet;
|
||||
import weaver.formmode.setup.ModeRightInfo;
|
||||
import weaver.general.BaseBean;
|
||||
import weaver.general.Util;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.BlockingDeque;
|
||||
|
|
@ -197,6 +201,27 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
return ServiceUtil.getService(SalaryEmployeeServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private GwPltxDt1Service getGwPltxDt1Service(User user) {
|
||||
return ServiceUtil.getService(GwPltxDt1ServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalaryAcctExcelService getSalaryAcctExcelService(User user) {
|
||||
return ServiceUtil.getService(SalaryAcctExcelServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private UfTxjlgljmbMapper getUfTxjlgljmbMapper() {
|
||||
return MapperProxyFactory.getProxy(UfTxjlgljmbMapper.class);
|
||||
}
|
||||
private UfTxjlgljmbDt1Mapper getUfTxjlgljmbDt1Mapper() {
|
||||
return MapperProxyFactory.getProxy(UfTxjlgljmbDt1Mapper.class);
|
||||
}
|
||||
private UfTxjlgljmbDt2Mapper getUfTxjlgljmbDt2Mapper() {
|
||||
return MapperProxyFactory.getProxy(UfTxjlgljmbDt2Mapper.class);
|
||||
}
|
||||
private UfTxjlgljmbDt3Mapper getUfTxjlgljmbDt3Mapper() {
|
||||
return MapperProxyFactory.getProxy(UfTxjlgljmbDt3Mapper.class);
|
||||
}
|
||||
|
||||
|
||||
private SalaryCheckResultService salaryCheckResultService;
|
||||
|
||||
|
|
@ -1745,4 +1770,268 @@ public class SalaryAcctResultServiceImpl extends Service implements SalaryAcctRe
|
|||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pltxSaveDetails(List<gwPltxSaveParam> saveParam) {
|
||||
if (CollectionUtils.isEmpty(saveParam)) {
|
||||
return;
|
||||
}
|
||||
Optional<gwPltxSaveParam> mainIdNull = saveParam.stream().filter(param -> param.getMainid() == null).findFirst();
|
||||
if (mainIdNull.isPresent()) {
|
||||
throw new SalaryRunTimeException("流程id不能为空");
|
||||
}
|
||||
boolean isCreateNode = saveParam.get(0).isCreateNode();
|
||||
Long mainId = saveParam.get(0).getMainid();
|
||||
// 保存的明细数据
|
||||
List<gwPltxSaveParam> needSaveList = saveParam.stream().filter(param -> param.getId() == null).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(needSaveList)) {
|
||||
// 封装调薪后基本工资
|
||||
needSaveList.stream().forEach( param -> {
|
||||
param.setId(IdGenerator.generate());
|
||||
param.setDeleteType(0);
|
||||
BigDecimal dxValue = param.getDx() == null ? new BigDecimal(0) : param.getDx();
|
||||
BigDecimal jbgzValue = (param.getJbgz() == null || param.getJbgz().equals(BigDecimal.ZERO)) ? new BigDecimal("0") : param.getJbgz();
|
||||
param.setDxhjbgz(jbgzValue.add(dxValue));
|
||||
});
|
||||
getGwPltxDt1Service(user).batchInsert(needSaveList);
|
||||
}
|
||||
// 修改的明细数据
|
||||
List<gwPltxSaveParam> needUpdateList = saveParam.stream().filter(param -> param.getId() != null).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(needUpdateList)) {
|
||||
// 获取现有数据
|
||||
List<GwPltxDt1PO> gwPltxDt1POS = getGwPltxDt1Service(user).listSome(GwPltxDt1PO.builder().mainid(needUpdateList.get(0).getMainid()).build());
|
||||
Map<Long, GwPltxDt1PO> oldPOMap = SalaryEntityUtil.convert2Map(gwPltxDt1POS, GwPltxDt1PO::getId);
|
||||
needUpdateList.stream().forEach( param -> {
|
||||
GwPltxDt1PO oldValue = oldPOMap.get(param.getId());
|
||||
oldValue.setXm(param.getXm());
|
||||
oldValue.setBm(param.getBm());
|
||||
oldValue.setGw(param.getGw());
|
||||
oldValue.setQnjxfs(param.getQnjxfs());
|
||||
oldValue.setJbgz(param.getJbgz());
|
||||
oldValue.setDx(param.getDx());
|
||||
oldValue.setDxbl(param.getDxbl());
|
||||
oldValue.setGskjywr(param.getGskjywr());
|
||||
oldValue.setHjxz(param.getHjxz());
|
||||
oldValue.setDzhhjxz(param.getDzhhjxz());
|
||||
oldValue.setHjxzdzbl(param.getHjxzdzbl());
|
||||
oldValue.setBz(param.getBz());
|
||||
oldValue.setNzjj(param.getNzjj());
|
||||
oldValue.setDeleteType(0);
|
||||
BigDecimal dxValue = param.getDx() == null ? new BigDecimal(0) : param.getDx();
|
||||
BigDecimal jbgzValue = (param.getJbgz() == null || param.getJbgz().equals(BigDecimal.ZERO)) ? new BigDecimal("0") : param.getJbgz();
|
||||
oldValue.setDxhjbgz(jbgzValue.add(dxValue));
|
||||
|
||||
getGwPltxDt1Service(user).update(oldValue);
|
||||
});
|
||||
}
|
||||
|
||||
if (isCreateNode) {
|
||||
// 创建节点处理需要删除的数据
|
||||
List<GwPltxDt1PO> gwPltxDt1POS = getGwPltxDt1Service(user).listSome(GwPltxDt1PO.builder().mainid(mainId).build());
|
||||
if (CollectionUtils.isNotEmpty(gwPltxDt1POS)) {
|
||||
List<Long> existIds = gwPltxDt1POS.stream().map(GwPltxDt1PO::getId).collect(Collectors.toList());
|
||||
if (CollectionUtils.isEmpty(needUpdateList)) {
|
||||
// 删除所有数据
|
||||
getGwPltxDt1Service(user).deleteByIds(existIds);
|
||||
} else {
|
||||
List<Long> updateIds = needUpdateList.stream().map(gwPltxSaveParam::getId).collect(Collectors.toList());
|
||||
List<Long> needDeleteIds = existIds.stream().filter(id -> !updateIds.contains(id)).collect(Collectors.toList());
|
||||
getGwPltxDt1Service(user).deleteByIds(needDeleteIds);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<pltxEmployeeDTO> pltxDetailsList(PltxInitEmployeeParam param) {
|
||||
if (param.getTxcj() == null || param.getSpr() == null) {
|
||||
throw new SalaryRunTimeException("参数错误,调薪层级不存在");
|
||||
}
|
||||
if (param.getRequestId() == null ) {
|
||||
throw new SalaryRunTimeException("参数错误,requestid不存在");
|
||||
}
|
||||
|
||||
// 如果是创建人,则可以查看所有数据
|
||||
RecordSet rs = new RecordSet();
|
||||
rs.execute("select creater from workflow_requestbase where requestid = " + param.getRequestId());
|
||||
boolean isCreator = false;
|
||||
if (rs.next()) {
|
||||
int creater = rs.getInt("creater");
|
||||
if (creater == param.getSpr()) {
|
||||
isCreator = true;
|
||||
}
|
||||
}
|
||||
List<GwPltxDt1PO> gwPltxDt1POS = getGwPltxDt1Service(user).listSome(GwPltxDt1PO.builder().mainid(param.getRequestId()).build());
|
||||
// 获取能够管理的权限
|
||||
List<pltxEmployeeDTO> pltxEmployeeDTOS = getSalaryAcctExcelService(user).pltxFilterData(PltxInitEmployeeParam.builder().txcj(param.getTxcj()).spr(param.getSpr()).build());
|
||||
List<Long> canManageEmpIds = pltxEmployeeDTOS.stream().map(pltxEmployeeDTO::getEmployee).collect(Collectors.toList());
|
||||
if (!isCreator && CollectionUtils.isEmpty(canManageEmpIds)) {
|
||||
// 不是创建人也没有管理权限
|
||||
return Collections.emptyList();
|
||||
}
|
||||
if (!isCreator) {
|
||||
// 不是创建人,要分权
|
||||
gwPltxDt1POS = gwPltxDt1POS.stream().filter(po -> canManageEmpIds.contains(Long.valueOf(po.getXm()))).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
Map<Long, DataCollectionEmployee> empMap = SalaryEntityUtil.convert2Map(getSalaryEmployeeService(user).listAll(UseEmployeeTypeEnum.ORG), DataCollectionEmployee::getEmployeeId);
|
||||
return gwPltxDt1POS.stream()
|
||||
.map(po -> {
|
||||
Long empId = Long.valueOf(po.getXm());
|
||||
DataCollectionEmployee emp = empMap.getOrDefault(empId, DataCollectionEmployee.builder().username("").departmentName("").departmentId(0L).build());
|
||||
return pltxEmployeeDTO.builder()
|
||||
.id(po.getId())
|
||||
.employee(empId)
|
||||
.employeeName(emp.getUsername())
|
||||
.bmId(emp.getDepartmentId())
|
||||
.bmName(emp.getDepartmentName())
|
||||
.jobTitleId(emp.getJobtitleId())
|
||||
.jobTitleName(emp.getJobtitleName())
|
||||
.gskjywr(po.getGskjywr())
|
||||
.qnjxfs(po.getQnjxfs() == null ? null : po.getQnjxfs().doubleValue())
|
||||
.jbgz(po.getJbgz() == null ? null : po.getJbgz().doubleValue())
|
||||
.dx(po.getDx() == null ? null : po.getDx().doubleValue())
|
||||
.dxhjbgz(po.getDxhjbgz() == null ? null : po.getDxhjbgz().doubleValue())
|
||||
.dxbl(po.getDxbl() == null ? null : po.getDxbl().doubleValue())
|
||||
.hjgz(po.getHjxz() == null ? null : po.getHjxz().doubleValue())
|
||||
.nzjj(po.getNzjj() == null ? null : po.getNzjj().doubleValue())
|
||||
.bz(po.getBz())
|
||||
.build();
|
||||
}).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void pltxDetailsToMode(pltxDetailsToModeSaveParam saveParam) {
|
||||
// 处理主表, 先根据年度查询是否存在,若存在则更新
|
||||
Integer nd = saveParam.getTxjlgljmb().getNd();
|
||||
List<UfTxjlgljmbPO> ufTxjlgljmbPOS = getUfTxjlgljmbMapper().listSome(UfTxjlgljmbPO.builder().nd(nd).build());
|
||||
Integer mainId = 0;
|
||||
BaseBean baseBean = new BaseBean();
|
||||
Integer fieldValue = Integer.valueOf( baseBean.getPropValue("shgwSalary", "pltx_mode_field_id"));
|
||||
String currDate = TimeUtil.getCurrentDateString();
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
|
||||
String currTime = sdf.format(new Date());
|
||||
if (CollectionUtils.isNotEmpty(ufTxjlgljmbPOS)) {
|
||||
// 更新
|
||||
UfTxjlgljmbPO txjlgljmb = saveParam.getTxjlgljmb();
|
||||
UfTxjlgljmbPO ufTxjlgljmbPO = ufTxjlgljmbPOS.get(0);
|
||||
ufTxjlgljmbPO.setFqrxm(txjlgljmb.getFqrxm());
|
||||
ufTxjlgljmbPO.setFqrq(txjlgljmb.getFqrq());
|
||||
ufTxjlgljmbPO.setFqrbm(txjlgljmb.getFqrbm());
|
||||
ufTxjlgljmbPO.setFqrgs(txjlgljmb.getFqrgs());
|
||||
ufTxjlgljmbPO.setSxrq(txjlgljmb.getSxrq());
|
||||
ufTxjlgljmbPO.setSpr(txjlgljmb.getSpr());
|
||||
ufTxjlgljmbPO.setDxcj(txjlgljmb.getDxcj());
|
||||
ufTxjlgljmbPO.setDxdycjspr(txjlgljmb.getDxdycjspr());
|
||||
ufTxjlgljmbPO.setDxdecjspr(txjlgljmb.getDxdecjspr());
|
||||
ufTxjlgljmbPO.setDxdsacjspr(txjlgljmb.getDxdsacjspr());
|
||||
ufTxjlgljmbPO.setDxdsicjspr(txjlgljmb.getDxdsicjspr());
|
||||
ufTxjlgljmbPO.setDxdwcjspr(txjlgljmb.getDxdwcjspr());
|
||||
ufTxjlgljmbPO.setDxdlcjspr(txjlgljmb.getDxdlcjspr());
|
||||
ufTxjlgljmbPO.setNd(txjlgljmb.getNd());
|
||||
getUfTxjlgljmbMapper().update(ufTxjlgljmbPO);
|
||||
mainId = ufTxjlgljmbPO.getId();
|
||||
} else {
|
||||
// 新增
|
||||
UfTxjlgljmbPO txjlgljmb = saveParam.getTxjlgljmb();
|
||||
UfTxjlgljmbPO ufTxjlgljmbPO = new UfTxjlgljmbPO();
|
||||
ufTxjlgljmbPO.setFqrxm(txjlgljmb.getFqrxm());
|
||||
ufTxjlgljmbPO.setFqrq(txjlgljmb.getFqrq());
|
||||
ufTxjlgljmbPO.setFqrbm(txjlgljmb.getFqrbm());
|
||||
ufTxjlgljmbPO.setFqrgs(txjlgljmb.getFqrgs());
|
||||
ufTxjlgljmbPO.setSxrq(txjlgljmb.getSxrq());
|
||||
ufTxjlgljmbPO.setSpr(txjlgljmb.getSpr());
|
||||
ufTxjlgljmbPO.setDxcj(txjlgljmb.getDxcj());
|
||||
ufTxjlgljmbPO.setDxdycjspr(txjlgljmb.getDxdycjspr());
|
||||
ufTxjlgljmbPO.setDxdecjspr(txjlgljmb.getDxdecjspr());
|
||||
ufTxjlgljmbPO.setDxdsacjspr(txjlgljmb.getDxdsacjspr());
|
||||
ufTxjlgljmbPO.setDxdsicjspr(txjlgljmb.getDxdsicjspr());
|
||||
ufTxjlgljmbPO.setDxdwcjspr(txjlgljmb.getDxdwcjspr());
|
||||
ufTxjlgljmbPO.setDxdlcjspr(txjlgljmb.getDxdlcjspr());
|
||||
ufTxjlgljmbPO.setNd(txjlgljmb.getNd());
|
||||
ufTxjlgljmbPO.setFormmodeid(fieldValue);
|
||||
ufTxjlgljmbPO.setModedatacreater(1);
|
||||
ufTxjlgljmbPO.setModedatacreatertype(0);
|
||||
ufTxjlgljmbPO.setModedatacreatedate(currDate);
|
||||
ufTxjlgljmbPO.setModedatacreatetime(currTime);
|
||||
getUfTxjlgljmbMapper().insertIgnoreNull(ufTxjlgljmbPO);
|
||||
mainId = ufTxjlgljmbPO.getId();
|
||||
}
|
||||
ModeRightInfo ModeRightInfo = new ModeRightInfo();
|
||||
ModeRightInfo.setNewRight(true);
|
||||
ModeRightInfo.editModeDataShare(1, fieldValue,mainId);
|
||||
|
||||
Integer finalMainId = mainId;
|
||||
// 处理明细表1,先根据主表id查,再根据姓名更新
|
||||
List<UfTxjlgljmbDt1PO> dt1POS = getUfTxjlgljmbDt1Mapper().listSome(UfTxjlgljmbDt1PO.builder().mainid(mainId).build());
|
||||
Map<Integer, UfTxjlgljmbDt1PO> dt1MapByXm = SalaryEntityUtil.convert2Map(dt1POS, UfTxjlgljmbDt1PO::getXm);
|
||||
saveParam.getDt1().stream().forEach(dt1 -> {
|
||||
UfTxjlgljmbDt1PO dt1PO = dt1MapByXm.get(dt1.getXm());
|
||||
BigDecimal jbgzValue = (dt1.getJbgz() == null) ? new BigDecimal("0") : dt1.getJbgz();
|
||||
BigDecimal dxValue = (dt1.getDx() == null) ? new BigDecimal("0") : dt1.getDx();
|
||||
if (dt1PO == null) {
|
||||
// 新增
|
||||
UfTxjlgljmbDt1PO ufTxjlgljmbDt1PO = new UfTxjlgljmbDt1PO();
|
||||
ufTxjlgljmbDt1PO.setMainid(finalMainId);
|
||||
ufTxjlgljmbDt1PO.setXm(dt1.getXm());
|
||||
ufTxjlgljmbDt1PO.setBm(dt1.getBm());
|
||||
ufTxjlgljmbDt1PO.setGw(dt1.getGw());
|
||||
ufTxjlgljmbDt1PO.setQnjxfs(dt1.getQnjxfs());
|
||||
ufTxjlgljmbDt1PO.setJbgz(dt1.getJbgz());
|
||||
ufTxjlgljmbDt1PO.setDx(dt1.getDx());
|
||||
ufTxjlgljmbDt1PO.setDxhjbgz(jbgzValue.add(dxValue));
|
||||
ufTxjlgljmbDt1PO.setDxbl(dt1.getDxbl());
|
||||
ufTxjlgljmbDt1PO.setGskjywr(dt1.getGskjywr());
|
||||
ufTxjlgljmbDt1PO.setDzhhjxz(dt1.getDzhhjxz());
|
||||
ufTxjlgljmbDt1PO.setHjxzdzbl(dt1.getHjxzdzbl());
|
||||
ufTxjlgljmbDt1PO.setBz(dt1.getBz());
|
||||
ufTxjlgljmbDt1PO.setHjgz(dt1.getHjgz());
|
||||
ufTxjlgljmbDt1PO.setNzjj(dt1.getNzjj());
|
||||
getUfTxjlgljmbDt1Mapper().insertIgnoreNull(ufTxjlgljmbDt1PO);
|
||||
} else {
|
||||
// 更新
|
||||
dt1PO.setXm(dt1.getXm());
|
||||
dt1PO.setBm(dt1.getBm());
|
||||
dt1PO.setGw(dt1.getGw());
|
||||
dt1PO.setQnjxfs(dt1.getQnjxfs());
|
||||
dt1PO.setJbgz(dt1.getJbgz());
|
||||
dt1PO.setDx(dt1.getDx());
|
||||
dt1PO.setDxhjbgz(jbgzValue.add(dxValue));
|
||||
dt1PO.setDxbl(dt1.getDxbl());
|
||||
dt1PO.setGskjywr(dt1.getGskjywr());
|
||||
dt1PO.setDzhhjxz(dt1.getDzhhjxz());
|
||||
dt1PO.setHjxzdzbl(dt1.getHjxzdzbl());
|
||||
dt1PO.setBz(dt1.getBz());
|
||||
dt1PO.setHjgz(dt1.getHjgz());
|
||||
dt1PO.setNzjj(dt1.getNzjj());
|
||||
getUfTxjlgljmbDt1Mapper().update(dt1PO);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
// 处理明细表2,覆盖,先删除后添加
|
||||
if (saveParam.getDt2() != null) {
|
||||
getUfTxjlgljmbDt2Mapper().deleteByMainId(mainId);
|
||||
saveParam.getDt2().stream().forEach(dt2 -> {
|
||||
UfTxjlgljmbDt2PO ufTxjlgljmbDt2PO = new UfTxjlgljmbDt2PO();
|
||||
ufTxjlgljmbDt2PO.setMainid(finalMainId);
|
||||
ufTxjlgljmbDt2PO.setBm(dt2.getBm());
|
||||
ufTxjlgljmbDt2PO.setRs(dt2.getRs());
|
||||
ufTxjlgljmbDt2PO.setDxze(dt2.getDxze());
|
||||
ufTxjlgljmbDt2PO.setHjxzze(dt2.getHjxzze());
|
||||
getUfTxjlgljmbDt2Mapper().insertIgnoreNull(ufTxjlgljmbDt2PO);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
// 处理明细表3,覆盖,先删除后添加
|
||||
if (saveParam.getDt3() != null) {
|
||||
getUfTxjlgljmbDt3Mapper().deleteByMainId(mainId);
|
||||
if (saveParam.getDt3() != null) {
|
||||
saveParam.getDt3().setMainid(finalMainId);
|
||||
getUfTxjlgljmbDt3Mapper().insertIgnoreNull(saveParam.getDt3());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -505,7 +505,7 @@ public class SalaryArchiveExcelServiceImpl extends Service implements SalaryArch
|
|||
map = data.get(i);
|
||||
map.put("index", i + 2);
|
||||
// 3.校验行内容
|
||||
boolean isError = SalaryArchiveExcelBO.singleRowCheck(allTodoSalaryArchives, map, headers, effectiveTimeIndex, excelComments, errorCount, importHandleParam, user);
|
||||
boolean isError = SalaryArchiveExcelBO.singleRowCheck(allTodoSalaryArchives, map, headers, effectiveTimeIndex, excelComments, errorCount, importHandleParam, user, false, Collections.emptyMap());
|
||||
if (isError) {
|
||||
errorCount += 1;
|
||||
// 添加错误数据
|
||||
|
|
@ -586,6 +586,8 @@ public class SalaryArchiveExcelServiceImpl extends Service implements SalaryArch
|
|||
|
||||
// 错误sheet数据
|
||||
List<Map<String, Object>> errorData = new ArrayList<>();
|
||||
List<DataCollectionEmployee> employeeList = getSalaryEmployeeService(user).listAll(UseEmployeeTypeEnum.ALL);
|
||||
Map<Long, DataCollectionEmployee> empMap = SalaryEntityUtil.convert2Map(employeeList, DataCollectionEmployee::getEmployeeId);
|
||||
|
||||
for (int i = 0; i < data.size(); i++) {
|
||||
Map<String, Object> map = data.get(i);
|
||||
|
|
@ -613,7 +615,7 @@ public class SalaryArchiveExcelServiceImpl extends Service implements SalaryArch
|
|||
map = data.get(i);
|
||||
map.put("index", i + 2);
|
||||
// 3.校验行内容
|
||||
boolean isError = SalaryArchiveExcelBO.singleRowCheck(allTodoSalaryArchives, map, headers, effectiveTimeIndex, excelComments, errorCount, importHandleParam, user);
|
||||
boolean isError = SalaryArchiveExcelBO.singleRowCheck(allTodoSalaryArchives, map, headers, effectiveTimeIndex, excelComments, errorCount, importHandleParam, user, param.isGwpltxWorkflow(), empMap);
|
||||
if (isError) {
|
||||
errorCount += 1;
|
||||
// 添加错误数据
|
||||
|
|
|
|||
|
|
@ -964,6 +964,52 @@ public class SalaryAcctController {
|
|||
}
|
||||
/**********************************上海港湾 批量调薪流程 end*********************************/
|
||||
|
||||
/**********************************上海港湾 批量调薪流程 NEW start********************************/
|
||||
|
||||
/**
|
||||
* 保存批量调薪明细表1信息
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@POST
|
||||
@Path("/pltxSaveDetails")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String pltxSaveDetails(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody List<gwPltxSaveParam> saveParam) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<List<gwPltxSaveParam>, String>(user).run(getSalaryAcctResultWrapper(user)::pltxSaveDetails, saveParam);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取批量调薪明细表1数据
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@POST
|
||||
@Path("/pltxDetailsList")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String pltxDetailsList(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody PltxInitEmployeeParam param) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
param.setSpr(user.getUID());
|
||||
return new ResponseResult<PltxInitEmployeeParam, List<pltxEmployeeDTO>>(user).run(getSalaryAcctResultWrapper(user)::pltxDetailsList, param);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量调薪明细表 流程转建模
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@POST
|
||||
@Path("/pltxDetailsToMode")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String pltxDetailsList(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody pltxDetailsToModeSaveParam param) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<pltxDetailsToModeSaveParam, String>(user).run(getSalaryAcctResultWrapper(user)::pltxDetailsToMode, param);
|
||||
}
|
||||
/**********************************上海港湾 批量调薪流程 NEW end*********************************/
|
||||
|
||||
/**********************************上海港湾 薪酬报表 start*********************************/
|
||||
// 港湾费用归属地报表
|
||||
@POST
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import com.engine.salary.entity.progress.ProgressDTO;
|
|||
import com.engine.salary.entity.salaryacct.dto.ConsolidatedTaxDetailDTO;
|
||||
import com.engine.salary.entity.salaryacct.dto.SalaryAcctResultDetailDTO;
|
||||
import com.engine.salary.entity.salaryacct.dto.SalaryAcctResultListColumnDTO;
|
||||
import com.engine.salary.entity.salaryacct.dto.pltxEmployeeDTO;
|
||||
import com.engine.salary.entity.salaryacct.param.*;
|
||||
import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
|
|
@ -283,6 +284,22 @@ public class SalaryAcctResultWrapper extends Service {
|
|||
return getSalaryAcctResultService(user).fygsdReport(param);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存批量调薪明细表1信息
|
||||
* @param saveParam
|
||||
*/
|
||||
public void pltxSaveDetails(List<gwPltxSaveParam> saveParam) {
|
||||
getSalaryAcctResultService(user).pltxSaveDetails(saveParam);
|
||||
}
|
||||
|
||||
public List<pltxEmployeeDTO> pltxDetailsList(PltxInitEmployeeParam param) {
|
||||
return getSalaryAcctResultService(user).pltxDetailsList(param);
|
||||
}
|
||||
|
||||
public void pltxDetailsToMode(pltxDetailsToModeSaveParam saveParam) {
|
||||
getSalaryAcctResultService(user).pltxDetailsToMode(saveParam);
|
||||
}
|
||||
|
||||
/**
|
||||
* 薪资核算-校验
|
||||
*
|
||||
|
|
|
|||
Loading…
Reference in New Issue