Commit 971a26e1 authored by huyuchen's avatar huyuchen

Merge remote-tracking branch 'origin/MVP1.5.9' into MVP1.5.9

parents 1729eafd 99b04c33
......@@ -16,7 +16,9 @@
*/
package com.yifu.cloud.plus.v1.yifu.archives.entity;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.HeadFontStyle;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
......@@ -25,6 +27,7 @@ import com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
......
package com.yifu.cloud.plus.v1.yifu.archives.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.HeadFontStyle;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import java.io.Serializable;
......@@ -53,5 +57,17 @@ public class UpProjectSocialFundVo implements Serializable {
String detailId;
String contactAddress;
String highEducation;
/**
* 学校
*/
@Schema(description = "学校" )
private String schoolName;
/**
* 专业
*/
@Schema(description = "专业" )
private String major;
// 是否更新学历标识
String flag;
}
......@@ -185,6 +185,7 @@ public class TCutsomerDataPermissonServiceImpl extends ServiceImpl<TCutsomerData
data.setRowIndex(rowIndex+1);
ErrorMessage errorMessage = util1.checkEntity(data, data.getRowIndex());
if (Common.isNotNull(errorMessage)){
errorMessage.setData(data);
errorMessageList.add(errorMessage);
}else {
cachedDataList.add(data);
......@@ -255,24 +256,24 @@ public class TCutsomerDataPermissonServiceImpl extends ServiceImpl<TCutsomerData
user = res.getData();
userMap.put(user.getUsername(),user);
}else {
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),CommonConstants.USER_FAIL));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),CommonConstants.USER_FAIL,excel));
continue;
}
}
if (Common.isEmpty(user.getDeptName())){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应登录账号无部门信息,请完善后导入"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应登录账号无部门信息,请完善后导入",excel));
continue;
}
// 项目信息验证
domain = domainMap.get(excel.getSettleDomainNo());
if (Common.isEmpty(domain)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),CommonConstants.SETTLE_DOMAIN_NOT_EXIST));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),CommonConstants.SETTLE_DOMAIN_NOT_EXIST,excel));
continue;
}
// 重复校验
temp = existMap.get(excel.getUserLoginName()+CommonConstants.DOWN_LINE_STRING+excel.getSettleDomainNo());
if (Common.isNotNull(temp)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入",excel));
continue;
}else {
exist = baseMapper.selectOne(Wrappers.<TCutsomerDataPermisson>query().lambda()
......@@ -280,7 +281,7 @@ public class TCutsomerDataPermissonServiceImpl extends ServiceImpl<TCutsomerData
.eq(TCutsomerDataPermisson::getUserLoginName,excel.getUserLoginName())
.last(CommonConstants.LAST_ONE_SQL));
if (Common.isNotNull(exist)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入",excel));
continue;
}
}
......@@ -299,7 +300,7 @@ public class TCutsomerDataPermissonServiceImpl extends ServiceImpl<TCutsomerData
insertExcel(permission);
// 加入map 验证当前表单数据是否重复
existMap.put(excel.getUserLoginName()+CommonConstants.DOWN_LINE_STRING+excel.getSettleDomainNo(),excel.getSettleDomainNo());
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),CommonConstants.SAVE_SUCCESS,CommonConstants.GREEN));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),CommonConstants.SAVE_SUCCESS,CommonConstants.GREEN,excel));
// 清理缓存
redisUtil.remove(CacheConstants.WXHR_SETTLE_DOMAIN_VOS_BY_USERID +"_"+user.getUserId());
redisUtil.remove(CacheConstants.WXHR_SETTLE_DOMAIN_NOS_BY_USERID +"_"+user.getUserId());
......
......@@ -1418,6 +1418,12 @@ public class TEmployeeProjectServiceImpl extends ServiceImpl<TEmployeeProjectMap
if (Common.isNotNull(vo.getHighEducation())) {
employee.setHignEducation(vo.getHighEducation());
}
if (Common.isNotNull(vo.getSchoolName())){
employee.setSchool(vo.getSchoolName());
}
if (Common.isNotNull(vo.getMajor())){
employee.setMajor(vo.getMajor());
}
}
tEmployeeInfoMapper.updateSocialInfoById(employee);
}
......
......@@ -1140,6 +1140,8 @@
<if test="tEmployeeInfo.socialStatus != null">SOCIAL_STATUS=#{tEmployeeInfo.socialStatus},</if>
<if test="tEmployeeInfo.fundStatus != null">FUND_STATUS=#{tEmployeeInfo.fundStatus},</if>
<if test="tEmployeeInfo.hignEducation != null">HIGN_EDUCATION=#{tEmployeeInfo.hignEducation},</if>
<if test="tEmployeeInfo.school != null">SCHOOL=#{tEmployeeInfo.school},</if>
<if test="tEmployeeInfo.major != null">MAJOR=#{tEmployeeInfo.major},</if>
<if test="tEmployeeInfo.contactAddress != null">CONTACT_ADDRESS=#{tEmployeeInfo.contactAddress},</if>
<if test="tEmployeeInfo.isCollege != null">IS_COLLEGE='1',</if>
<if test="tEmployeeInfo.fileProvince != null">a.FILE_PROVINCE=#{tEmployeeInfo.fileProvince},</if>
......
......@@ -475,6 +475,10 @@ public class ExcelUtil <T> implements Serializable {
return (String)RedisUtil.redis.opsForValue().get(CacheConstants.AREA_LABEL + c);
}
public String getAreaLabelPublic(String c) {
return (String)RedisUtil.redis.opsForValue().get(CacheConstants.AREA_LABEL + c);
}
private String getAreaValue(String c, String tempStr, ExcelAttribute attr,Integer rowNum, ErrorMessage errorTemp) {
tempStr = String.valueOf(RedisUtil.redis.opsForValue().get(CacheConstants.AREA_VALUE + c));
if (Common.isEmpty(tempStr)){
......
......@@ -90,7 +90,6 @@ public class TSalaryEmpModLogController {
@Operation(summary = "新增薪资人员档案变更记录", description = "新增薪资人员档案变更记录:hasPermission('demo_tsalaryempmodlog_add')")
@SysLog("新增薪资人员档案变更记录" )
@PostMapping
@PreAuthorize("@pms.hasPermission('demo_tsalaryempmodlog_add')" )
public R<Boolean> save(@RequestBody TSalaryEmpModLog tSalaryEmpModLog) {
return R.ok(tSalaryEmpModLogService.save(tSalaryEmpModLog));
}
......@@ -103,7 +102,6 @@ public class TSalaryEmpModLogController {
@Operation(summary = "修改薪资人员档案变更记录", description = "修改薪资人员档案变更记录:hasPermission('demo_tsalaryempmodlog_edit')")
@SysLog("修改薪资人员档案变更记录" )
@PutMapping
@PreAuthorize("@pms.hasPermission('demo_tsalaryempmodlog_edit')" )
public R<Boolean> updateById(@RequestBody TSalaryEmpModLog tSalaryEmpModLog) {
return R.ok(tSalaryEmpModLogService.updateById(tSalaryEmpModLog));
}
......@@ -116,7 +114,6 @@ public class TSalaryEmpModLogController {
@Operation(summary = "通过id删除薪资人员档案变更记录", description = "通过id删除薪资人员档案变更记录:hasPermission('demo_tsalaryempmodlog_del')")
@SysLog("通过id删除薪资人员档案变更记录" )
@DeleteMapping("/{id}" )
@PreAuthorize("@pms.hasPermission('demo_tsalaryempmodlog_del')" )
public R<Boolean> removeById(@PathVariable String id) {
return R.ok(tSalaryEmpModLogService.removeById(id));
}
......
......@@ -128,7 +128,7 @@ public class TSalaryEmployeeController {
@PutMapping
@PreAuthorize("@pms.hasPermission('salary_tsalaryemployee_edit')")
public R<Boolean> updateById(@RequestBody TSalaryEmployee tSalaryEmployee) {
return R.ok(tSalaryEmployeeService.updateById(tSalaryEmployee));
return tSalaryEmployeeService.updateByIdDiy(tSalaryEmployee);
}
/**
......
......@@ -21,8 +21,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ExcelUtil;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryEmpModLog;
import com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryEmployee;
import com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryEmpModLogSearchVo;
import javax.servlet.http.HttpServletResponse;
......@@ -44,4 +46,6 @@ public interface TSalaryEmpModLogService extends IService<TSalaryEmpModLog> {
IPage<TSalaryEmpModLog> getTSalaryEmpModLogPage(Page<TSalaryEmpModLog> page, TSalaryEmpModLogSearchVo tSalaryEmpModLog);
List<TSalaryEmpModLog> noPageDiy(TSalaryEmpModLogSearchVo searchVo);
void initModLog(TSalaryEmployee newEntity, TSalaryEmployee oldEntity, String type, String userName, ExcelUtil<TSalaryEmployee> util);
}
......@@ -123,4 +123,7 @@ public interface TSalaryEmployeeService extends IService<TSalaryEmployee> {
R updateEmployeeFromEkp(TSalaryEmployeeEkpUpdateVo vo);
List<TSalaryEmpRosterVo> getSalaryEmpRoster(List<String> idCardList);
R<Boolean> updateByIdDiy(TSalaryEmployee tSalaryEmployee);
}
......@@ -22,9 +22,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.esotericsoftware.minlog.Log;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.util.Common;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ExcelUtil;
import com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity;
import com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryEmpModLog;
import com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryEmployee;
import com.yifu.cloud.plus.v1.yifu.salary.mapper.TSalaryEmpModLogMapper;
import com.yifu.cloud.plus.v1.yifu.salary.service.TSalaryEmpModLogService;
import com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryEmpModLogSearchVo;
......@@ -64,6 +68,118 @@ public class TSalaryEmpModLogServiceImpl extends ServiceImpl<TSalaryEmpModLogMap
wrapper.orderByDesc(BaseEntity::getCreateTime);
return baseMapper.selectList(wrapper);
}
/**
* @Author fxj
* @Description 记录变更日志
* @Date 17:59 2023/10/24
* @Param type 0 编辑 1 批量更新 3 EKP 更新
* @return
**/
@Override
public void initModLog(TSalaryEmployee newEntity, TSalaryEmployee oldEntity, String type,String userName,ExcelUtil<TSalaryEmployee> util) {
if (Common.isNotNull(newEntity) && Common.isNotNull(oldEntity)){
TSalaryEmpModLog log = new TSalaryEmpModLog();
log.setIdNum(newEntity.getEmpIdcard());
log.setParentId(newEntity.getId());
log.setType(type);
log.setCreateName(userName);
StringBuilder str = new StringBuilder();
//编辑
if (Common.isEmpty(util)){
util = new ExcelUtil<>(TSalaryEmployee.class);
}
extracted(newEntity, oldEntity, str);
//计税月份
if (Common.isNotNull(newEntity.getTaxMonth()) && !oldEntity.getTaxMonth().equals(newEntity.getTaxMonth())){
str.append("计税月份:");
str.append(oldEntity.getTaxMonth());
str.append("->");
str.append(newEntity.getTaxMonth());
str.append(" /n ");
}
//开户行省
if (Common.isNotNull(newEntity.getBankProvince())
&& !oldEntity.getBankProvince().equals(newEntity.getBankProvince())){
str.append("开户行省:");
str.append(Common.isEmpty(oldEntity.getBankProvince())?"":util.getAreaLabelPublic(oldEntity.getBankProvince()));
str.append("->");
str.append(Common.isEmpty(newEntity.getBankProvince())?"":util.getAreaLabelPublic(newEntity.getBankProvince()));
str.append(" /n ");
}
//开户行市
if (Common.isNotNull(newEntity.getBankCity()) && !oldEntity.getBankCity().equals(newEntity.getBankCity())){
str.append("开户行市:");
str.append(Common.isEmpty(oldEntity.getBankCity())?"":util.getAreaLabelPublic(oldEntity.getBankCity()));
str.append("->");
str.append(Common.isEmpty(newEntity.getBankCity())?"":util.getAreaLabelPublic(newEntity.getBankCity()));
str.append(" /n ");
}
log.setContent(str.toString());
Log.error("薪资人员变更记录表:"+str.toString());
if (Common.isNotNull(log.getContent())){
baseMapper.insert(log);
}
}
}
private void extracted(TSalaryEmployee newEntity, TSalaryEmployee oldEntity, StringBuilder str) {
//姓名
if (Common.isNotNull(newEntity.getEmpName())
&& !oldEntity.getEmpName().equals(newEntity.getEmpName())){
str.append("员工姓名:");
str.append(oldEntity.getEmpName());
str.append("->");
str.append(newEntity.getEmpName());
str.append(" /n ");
}
//开户行
if (Common.isNotNull(newEntity.getBankName())
&& !oldEntity.getBankName().equals(newEntity.getBankName())){
str.append("开户行:");
str.append(oldEntity.getBankName());
str.append("->");
str.append(newEntity.getBankName());
str.append(" /n ");
}
//银行卡号
if (Common.isNotNull(newEntity.getBankNo())
&& !oldEntity.getBankNo().equals(newEntity.getBankNo())){
str.append("银行卡号:");
str.append(oldEntity.getBankNo());
str.append("->");
str.append(newEntity.getBankNo());
str.append(" /n ");
}
//开户行支行
if ((Common.isEmpty(oldEntity.getBankSubName())
&& Common.isNotNull(newEntity.getBankSubName()))
|| (Common.isNotNull(newEntity.getBankSubName())
&& !newEntity.getBankSubName().equals(oldEntity.getBankSubName()))){
str.append("开户行支行:");
str.append(oldEntity.getBankSubName());
str.append("->");
str.append(newEntity.getBankSubName());
str.append(" /n ");
}
//在职状态
if (Common.isNotNull(newEntity.getFileStatus())
&& !oldEntity.getFileStatus().equals(newEntity.getFileStatus())){
str.append("在职状态:");
str.append(CommonConstants.ZERO_STRING.equals(oldEntity.getFileStatus())?"在职":"离职");
str.append("->");
str.append(CommonConstants.ZERO_STRING.equals(newEntity.getFileStatus())?"在职":"离职");
str.append(" /n ");
}
//手机号码
if (Common.isNotNull(newEntity.getEmpPhone())
&& !oldEntity.getEmpPhone().equals(newEntity.getEmpPhone())){
str.append("手机号码:");
str.append(oldEntity.getEmpPhone());
str.append("->");
str.append(newEntity.getEmpPhone());
str.append(" /n ");
}
}
private LambdaQueryWrapper buildQueryWrapper(TSalaryEmpModLogSearchVo entity){
LambdaQueryWrapper<TSalaryEmpModLog> wrapper = Wrappers.lambdaQuery();
......
......@@ -26,33 +26,40 @@ import com.alibaba.excel.read.listener.ReadListener;
import com.alibaba.excel.read.metadata.holder.ReadRowHolder;
import com.alibaba.excel.util.ListUtils;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.esotericsoftware.minlog.Log;
import com.yifu.cloud.plus.v1.check.entity.TCheckBankNo;
import com.yifu.cloud.plus.v1.check.entity.TCheckIdCard;
import com.yifu.cloud.plus.v1.check.entity.TCheckMobile;
import com.yifu.cloud.plus.v1.check.vo.CheckBankNoVo;
import com.yifu.cloud.plus.v1.check.vo.CheckBatchVo;
import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysUser;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TSettleDomain;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CacheConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.SecurityConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.util.*;
import com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser;
import com.yifu.cloud.plus.v1.yifu.common.dapr.config.DaprCheckProperties;
import com.yifu.cloud.plus.v1.yifu.common.dapr.util.HttpDaprUtil;
import com.yifu.cloud.plus.v1.yifu.common.security.util.SecurityUtils;
import com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryAccountItem;
import com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryEmployee;
import com.yifu.cloud.plus.v1.yifu.salary.mapper.TSalaryEmployeeMapper;
import com.yifu.cloud.plus.v1.yifu.salary.service.TBankSetService;
import com.yifu.cloud.plus.v1.yifu.salary.service.TSalaryEmpModLogService;
import com.yifu.cloud.plus.v1.yifu.salary.service.TSalaryEmployeeService;
import com.yifu.cloud.plus.v1.yifu.salary.util.SalaryConstants;
import com.yifu.cloud.plus.v1.yifu.salary.vo.*;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
......@@ -82,6 +89,9 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
@Autowired
private TBankSetService tBankSetService;
@Autowired
private TSalaryEmpModLogService logService;
/**
* 薪酬人员表简单分页查询
*
......@@ -531,6 +541,11 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
* @return: void
**/
public void updateTSalaryEmployee(List<TSalaryEmployeeUpdateVo> excelVOList, List<ErrorMessage> errorMessageList) {
YifuUser user = SecurityUtils.getUser();
if (Common.isEmpty(user)){
errorMessageList.add(new ErrorMessage(CommonConstants.ONE_INT_NEGATE, CommonConstants.USER_FAIL));
return;
}
/// 个性化校验逻辑
TSalaryEmployeeUpdateVo excel;
List<String> idCardList = new ArrayList<>();
......@@ -549,11 +564,15 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
String areaStr;
boolean curTaxMonth;
Map<String, String> bankMap = tBankSetService.getBankMap(null);
ExcelUtil<TSalaryEmployee> util = new ExcelUtil<>(TSalaryEmployee.class);
TSalaryEmployee old =null;
for (int i = 0; i < excelVOList.size(); i++) {
excel = excelVOList.get(i);
if (excel != null) {
if (Common.isNotNull(excel.getEmpIdcard())) {
emp = empMap.get(excel.getEmpIdcard());
old = new TSalaryEmployee();
BeanUtil.copyProperties(emp,old);
if (Common.isNotNull(emp)) {
curTaxMonth = false;
if (Common.isNotNull(emp.getTaxMonth()) && Common.isNotNull(excel.getTaxMonth()) && emp.getTaxMonth().length()==6) {
......@@ -599,6 +618,8 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
if (Common.isNotNull(excel.getEmpName())) {
emp.setEmpName(excel.getEmpName());
}
// 变更日志 fxj 2023-10-24
logService.initModLog(old,emp,CommonConstants.ONE_STRING,user.getNickname(),util);
baseMapper.updateById(emp);
if (curTaxMonth) {
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), SalaryConstants.CUR_TAX_INFO));
......@@ -691,6 +712,7 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
+ "行:-上次代发户未校验【姓名与卡号】,本次校验结果:不匹配。请去薪酬人员查询处更新卡号信息!"));
return false;
}
}
this.saveOrUpdateBatch(empList);
}
......@@ -902,17 +924,17 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
@Override
@Transactional(rollbackFor = Exception.class)
public R updateEmployeeFromEkp(TSalaryEmployeeEkpUpdateVo vo) {
if (Common.isEmpty(vo.getEmpIdcard())) {
return R.failed(CommonConstants.PARAM_IS_NOT_ERROR);
}
TSalaryEmployee one = baseMapper.selectOne(Wrappers.<TSalaryEmployee>query().lambda()
.eq(TSalaryEmployee::getEmpIdcard, vo.getEmpIdcard())
.last(CommonConstants.LAST_ONE_SQL));
TSalaryEmployee old = new TSalaryEmployee();
BeanUtil.copyProperties(one,old);
if (Common.isNotNull(one)) {
one.setBankNo(vo.getBankNo());
one.setEmpName(vo.getEmpName());
one.setBankName(vo.getBankName());
baseMapper.updateById(one);
logService.initModLog(old,one,CommonConstants.TWO_STRING, "ekp",null);
}
return R.ok();
}
......@@ -930,4 +952,24 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
}
return null;
}
@Override
public R<Boolean> updateByIdDiy(TSalaryEmployee tSalaryEmployee) {
if (Common.isEmpty(tSalaryEmployee.getId())){
return R.failed(CommonConstants.PARAM_INFO_ERROR);
}
YifuUser user = SecurityUtils.getUser();
if (Common.isEmpty(user)){
return R.failed(CommonConstants.USER_FAIL);
}
// 变更日志 fxj 2023-10-24
TSalaryEmployee old = baseMapper.selectById(tSalaryEmployee.getId());
logService.initModLog(old,tSalaryEmployee,CommonConstants.ZERO_STRING,user.getNickname(),null);
int res = baseMapper.updateById(tSalaryEmployee);
if (res >= CommonConstants.ZERO_INT){
return R.ok();
}else {
return R.failed(CommonConstants.UPDATE_DATA_FAIL);
}
}
}
......@@ -53,7 +53,7 @@
AND a.id = #{tSalaryEmpModLog.id}
</if>
<if test="tSalaryEmpModLog.content != null and tSalaryEmpModLog.content.trim() != ''">
AND a.content like concat('%',tSalaryEmpModLog.content,'%')
AND a.content like concat('%',#{tSalaryEmpModLog.content},'%')
</if>
<if test="tSalaryEmpModLog.type != null and tSalaryEmpModLog.type.trim() != ''">
AND a.type = #{tSalaryEmpModLog.type}
......
......@@ -626,6 +626,36 @@ public class TDispatchInfo extends BaseEntity {
@Schema(description = "学历", name = "contractName")
private String educationName;
/**
* 学校
*/
@ExcelAttribute(name = "学校",isNotEmpty = false)
@Length(max = 50, message = "学校不能超过50个字符")
@Schema(description = "学校:派增只做记录" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="学校")
private String schoolName;
/**
* 专业
*/
@ExcelAttribute(name = "专业",isNotEmpty = false)
@Length(max = 50, message = "学校不能超过50个字符")
@Schema(description = "专业:派增只做记录" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="专业")
private String major;
/**
* 首次至缴纳地时间
*/
@ExcelAttribute(name = "首次至缴纳地时间",isNotEmpty = false, isDate = true)
@Length(max = 50, message = "学校不能超过50个字符")
@Schema(description = "首次至缴纳地时间" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="首次至缴纳地时间")
private Date firstPayTime;
/**
* 试用期(单位月)
*/
......
......@@ -955,4 +955,14 @@ public class TSocialInfo extends BaseEntity {
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty("个人社保合计")
private BigDecimal personalSocialSum;
/**
* 首次至缴纳地时间
*/
@ExcelAttribute(name = "首次至缴纳地时间",isNotEmpty = false, isDate = true)
@Length(max = 50, message = "学校不能超过50个字符")
@Schema(description = "首次至缴纳地时间" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="首次至缴纳地时间")
private Date firstPayTime;
}
......@@ -4,13 +4,16 @@ import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.alibaba.excel.annotation.write.style.HeadFontStyle;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttributeConstants;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* @Author fxj
......@@ -435,4 +438,33 @@ public class SocialHandleExportVo implements Serializable {
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty("是否已导出" )
private String exportSocialFlag;
/**
* 学校
*/
@ExcelAttribute(name = "学校",isNotEmpty = false)
@Schema(description = "学校:派增只做记录" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="学校")
private String schoolName;
/**
* 专业
*/
@ExcelAttribute(name = "专业",isNotEmpty = false)
@Length(max = 50, message = "学校不能超过50个字符")
@Schema(description = "专业:派增只做记录" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="专业")
private String major;
/**
* 首次至缴纳地时间
*/
@DateTimeFormat("yyyy-MM-dd")
@ExcelAttribute(name = "首次至缴纳地时间",isNotEmpty = false,isDate = true)
@Schema(description = "首次至缴纳地时间" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="首次至缴纳地时间")
private Date firstPayTime;
}
......@@ -350,5 +350,32 @@ public class TDispatchAuditExportVo {
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty("个人公积金缴纳比例" )
private BigDecimal personalProvidentPer;
/**
* 学校
*/
@ExcelAttribute(name = "学校",isNotEmpty = false)
@Schema(description = "学校:派增只做记录" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="学校")
private String schoolName;
/**
* 专业
*/
@ExcelAttribute(name = "专业",isNotEmpty = false)
@Length(max = 50, message = "学校不能超过50个字符")
@Schema(description = "专业:派增只做记录" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="专业")
private String major;
/**
* 首次至缴纳地时间
*/
@DateTimeFormat("yyyy-MM-dd")
@ExcelAttribute(name = "首次至缴纳地时间",isNotEmpty = false,isDate = true)
@Schema(description = "首次至缴纳地时间" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="首次至缴纳地时间")
private Date firstPayTime;
}
......@@ -280,6 +280,36 @@ public class TDispatchImportVo extends RowIndex implements Serializable {
@ExcelProperty(value ="学历")
private String educationName;
/**
* 学校
*/
@ExcelAttribute(name = "学校",isNotEmpty = false)
@Length(max = 50, message = "学校不能超过50个字符")
@Schema(description = "学校:派增只做记录" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="学校")
private String schoolName;
/**
* 专业
*/
@ExcelAttribute(name = "专业",isNotEmpty = false)
@Length(max = 50, message = "学校不能超过50个字符")
@Schema(description = "专业:派增只做记录" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="专业")
private String major;
/**
* 首次至缴纳地时间
*/
@ExcelAttribute(name = "首次至缴纳地时间",isNotEmpty = false,isDate = true)
@Length(max = 50, message = "学校不能超过50个字符")
@Schema(description = "首次至缴纳地时间" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="首次至缴纳地时间")
private Date firstPayTime;
/**
* 备案基数
*/
......
......@@ -476,4 +476,32 @@ public class TDispatchInfoExportVo {
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty("公积金办理备注" )
private String fundHandleRemark;
/**
* 学校
*/
@ExcelAttribute(name = "学校",isNotEmpty = false)
@Schema(description = "学校:派增只做记录" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="学校")
private String schoolName;
/**
* 专业
*/
@ExcelAttribute(name = "专业",isNotEmpty = false)
@Schema(description = "专业:派增只做记录" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="专业")
private String major;
/**
* 首次至缴纳地时间
*/
@DateTimeFormat("yyyy-MM-dd")
@ExcelAttribute(name = "首次至缴纳地时间",isNotEmpty = false,isDate = true)
@Schema(description = "首次至缴纳地时间" )
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty(value ="首次至缴纳地时间")
private Date firstPayTime;
}
......@@ -738,7 +738,7 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
if (Common.isNotNull(socialFund) && Common.isNotNull(socialFund.getId())){
forecastLibraryService.updateForecastLibaryByDispatch(null,null,socialFund);
}
// 同步更新人员档案和项目档案的社保公积金状态
// 同步更新人员档案和项目档案的社保公积金状态 学历信息
updateDocSocialFund(social, fund, socialFund,empVoMap,excel);
errorMessageList.add(new ErrorMessage(excel.getRowIndex(), CommonConstants.SAVE_SUCCESS, CommonConstants.GREEN));
......@@ -848,6 +848,12 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
else {
vo.setHighEducation("");
}
if (Common.isNotNull(excel.getSchoolName())){
vo.setSchoolName(excel.getSchoolName());
}
if (Common.isNotNull(excel.getMajor())){
vo.setMajor(excel.getMajor());
}
}
}
}
......@@ -1320,6 +1326,9 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
dispatch.setBelongUnit(excel.getCustomerId());
dispatch.setBelongUnitName(excel.getCustomerName());
dispatch.setEducationName(excel.getEducationName());
dispatch.setSchoolName(excel.getSchoolName());
dispatch.setMajor(excel.getMajor());
dispatch.setFirstPayTime(excel.getFirstPayTime());
dispatch.setIdCardProvince(excel.getIdCardProvince());
dispatch.setIdCardCity(excel.getIdCardCity());
dispatch.setIdCardTown(excel.getIdCardTown());
......@@ -1598,6 +1607,7 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
social.setHandleStatus(CommonConstants.ZERO_STRING);
social.setDeleteFlag(CommonConstants.ZERO_STRING);
social.setTrustRemark(excel.getTrustRemark());
social.setFirstPayTime(excel.getFirstPayTime());
List<Date> lstDate = new ArrayList<>();
if (Common.isNotNull(excel.getPensionStart())) {
lstDate.add(excel.getPensionStart());
......@@ -2125,6 +2135,8 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
emp.setEmpPhone(excel.getEmpMobile());
emp.setEmpRegisType(excel.getEmpRegisType());
emp.setHignEducation(excel.getEducationName());
emp.setMajor(excel.getMajor());
emp.setSchool(excel.getSchoolName());
emp.setContractStatus(CommonConstants.ZERO_INT);
emp.setDeleteFlag(CommonConstants.ZERO_STRING);
emp.setFileSource(CommonConstants.ONE_STRING);
......
......@@ -216,6 +216,7 @@ public class TSocialfundHouseResServiceImpl extends ServiceImpl<TSocialfundHouse
data.setRowIndex(rowIndex+1);
ErrorMessage errorMessage = util1.checkEntity(data, data.getRowIndex());
if (Common.isNotNull(errorMessage)){
errorMessage.setData(data);
errorMessageList.add(errorMessage);
}else {
cachedDataList.add(data);
......@@ -276,26 +277,26 @@ public class TSocialfundHouseResServiceImpl extends ServiceImpl<TSocialfundHouse
user = res.getData();
userMap.put(user.getUsername(),user);
}else {
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"无有效状态的用户信息!"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"无有效状态的用户信息!",excel));
continue;
}
}
if (Common.isEmpty(user.getDeptName())){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应登录账号无部门信息,请完善后导入"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应登录账号无部门信息,请完善后导入",excel));
continue;
}
// 户验证
if (CommonConstants.ZERO_STRING.equals(excel.getType())){
baseSet = socialBaseSetMap.get(excel.getHouseHold());
if (Common.isEmpty(baseSet)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"未找到对应社保户数据!"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"未找到对应社保户数据!",excel));
continue;
}
}
if (CommonConstants.ONE_STRING.equals(excel.getType())){
baseSet = fundBaseSetMap.get(excel.getHouseHold());
if (Common.isEmpty(baseSet)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"未找到对应公积金户数据!"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"未找到对应公积金户数据!",excel));
continue;
}
}
......@@ -304,16 +305,17 @@ public class TSocialfundHouseResServiceImpl extends ServiceImpl<TSocialfundHouse
+CommonConstants.DOWN_LINE_STRING
+excel.getHouseHold());
if (Common.isNotNull(temp)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入",excel));
continue;
}else {
exist = baseMapper.selectOne(Wrappers.<TSocialfundHouseRes>query().lambda()
.eq(TSocialfundHouseRes::getFundHousehold,excel.getHouseHold())
.eq(TSocialfundHouseRes::getHouseNameType,excel.getType())
.eq(TSocialfundHouseRes::getUserId,user.getUserId())
.eq(TSocialfundHouseRes::getAuthType,CommonConstants.ZERO_STRING)
.last(CommonConstants.LAST_ONE_SQL));
if (Common.isNotNull(exist)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入",excel));
continue;
}
}
......@@ -333,7 +335,7 @@ public class TSocialfundHouseResServiceImpl extends ServiceImpl<TSocialfundHouse
existMap.put(excel.getUserLoginName()
+CommonConstants.DOWN_LINE_STRING
+excel.getHouseHold(),excel.getHouseHold());
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),CommonConstants.SAVE_SUCCESS,CommonConstants.GREEN));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),CommonConstants.SAVE_SUCCESS,CommonConstants.GREEN,excel));
}
}
/**
......@@ -371,7 +373,7 @@ public class TSocialfundHouseResServiceImpl extends ServiceImpl<TSocialfundHouse
ExcelUtil<SocialAuthHandleImportVo> util1 = new ExcelUtil<>(SocialAuthHandleImportVo.class);
Map<String, SysBaseSetInfo> baseSetInfoMap= new HashMap<>();
List<SysBaseSetInfo> setInfos = baseSetInfoService.list(Wrappers.<SysBaseSetInfo>query().lambda()
.eq(SysBaseSetInfo::getBaseType,CommonConstants.ZERO_STRING)
.eq(SysBaseSetInfo::getBaseType,type)
.eq(SysBaseSetInfo::getDeleteFlag,CommonConstants.ZERO_STRING)
.groupBy(SysBaseSetInfo::getDepartName,SysBaseSetInfo::getProvince,SysBaseSetInfo::getCity,SysBaseSetInfo::getTown));
if (Common.isNotNull(setInfos)){
......@@ -404,6 +406,7 @@ public class TSocialfundHouseResServiceImpl extends ServiceImpl<TSocialfundHouse
data.setRowIndex(rowIndex+1);
ErrorMessage errorMessage = util1.checkEntity(data, data.getRowIndex());
if (Common.isNotNull(errorMessage)){
errorMessage.setData(data);
errorMessageList.add(errorMessage);
}else {
cachedDataList.add(data);
......@@ -462,26 +465,26 @@ public class TSocialfundHouseResServiceImpl extends ServiceImpl<TSocialfundHouse
user = res.getData();
userMap.put(user.getUsername(),user);
}else {
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"无有效状态的用户信息!"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"无有效状态的用户信息!",excel));
continue;
}
}
if (Common.isEmpty(user.getDeptName())){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应登录账号无部门信息,请完善后导入"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应登录账号无部门信息,请完善后导入",excel));
continue;
}
// 户验证
if (CommonConstants.ZERO_STRING.equals(type)){
baseSet = baseSetInfoMap.get(excel.getHouseHold());
if (Common.isEmpty(baseSet)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"未找到对应社保户数据!"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"未找到对应社保户数据!",excel));
continue;
}
}
if (CommonConstants.ONE_STRING.equals(type)){
baseSet = baseSetInfoMap.get(excel.getHouseHold());
if (Common.isEmpty(baseSet)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"未找到对应公积金户数据!"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"未找到对应公积金户数据!",excel));
continue;
}
}
......@@ -490,7 +493,7 @@ public class TSocialfundHouseResServiceImpl extends ServiceImpl<TSocialfundHouse
+CommonConstants.DOWN_LINE_STRING
+excel.getHouseHold());
if (Common.isNotNull(temp)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入",excel));
continue;
}else {
if (CommonConstants.ZERO_STRING.equals(type)){
......@@ -498,16 +501,18 @@ public class TSocialfundHouseResServiceImpl extends ServiceImpl<TSocialfundHouse
.eq(TSocialfundHouseRes::getSocialHousehold,excel.getHouseHold())
.eq(TSocialfundHouseRes::getUserId,user.getUserId())
.eq(TSocialfundHouseRes::getHouseNameType,type)
.eq(TSocialfundHouseRes::getAuthType,CommonConstants.ONE_STRING)
.last(CommonConstants.LAST_ONE_SQL));
}else {
exist = baseMapper.selectOne(Wrappers.<TSocialfundHouseRes>query().lambda()
.eq(TSocialfundHouseRes::getFundHousehold,excel.getHouseHold())
.eq(TSocialfundHouseRes::getUserId,user.getUserId())
.eq(TSocialfundHouseRes::getHouseNameType,type)
.eq(TSocialfundHouseRes::getAuthType,CommonConstants.ONE_STRING)
.last(CommonConstants.LAST_ONE_SQL));
}
if (Common.isNotNull(exist)){
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入"));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),"对应账号的权限已存在,请勿重复导入",excel));
continue;
}
}
......@@ -527,7 +532,7 @@ public class TSocialfundHouseResServiceImpl extends ServiceImpl<TSocialfundHouse
existMap.put(excel.getUserLoginName()
+CommonConstants.DOWN_LINE_STRING
+excel.getHouseHold(),excel.getUserLoginName());
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),CommonConstants.SAVE_SUCCESS,CommonConstants.GREEN));
errorMessageList.add(new ErrorMessage(excel.getRowIndex(),CommonConstants.SAVE_SUCCESS,CommonConstants.GREEN,excel));
}
}
}
......@@ -99,6 +99,10 @@
<result property="createTime" column="CREATE_TIME"/>
<result property="orderId" column="ORDER_ID"/>
<result property="schoolName" column="SCHOOL_NAME"/>
<result property="major" column="MAJOR"/>
<result property="firstPayTime" column="FIRST_PAY_TIME"/>
</resultMap>
<resultMap id="dispatchPageMap" type="com.yifu.cloud.plus.v1.yifu.social.vo.TDispatchInfoPageVo" extends="tDispatchInfoMap">
<result property="providentHouseholdName" column="PROVIDENT_HOUSEHOLD_NAME"/>
......@@ -163,6 +167,10 @@
<result property="unitWorkInjuryCardinal" column="UNIT_WORK_INJURY_CARDINAL"/>
<result property="unitBirthCardinal" column="UNIT_BIRTH_CARDINAL"/>
<result property="empMobile" column="EMP_MOBILE"/>
<result property="schoolName" column="SCHOOL_NAME"/>
<result property="major" column="MAJOR"/>
<result property="firstPayTime" column="FIRST_PAY_TIME"/>
</resultMap>
<resultMap id="fundSupplementaryMap" type="com.yifu.cloud.plus.v1.yifu.social.vo.FundSupplementaryExportVo">
......@@ -327,6 +335,10 @@
<result property="personalProvidentCardinal" column="PERSONAL_PROVIDENT_CARDINAL"/>
<result property="unitProvidentPer" column="UNIT_PROVIDENT_PER"/>
<result property="personalProvidentPer" column="PERSONAL_PROVIDENT_PER"/>
<result property="schoolName" column="SCHOOL_NAME"/>
<result property="major" column="MAJOR"/>
<result property="firstPayTime" column="FIRST_PAY_TIME"/>
</resultMap>
<sql id="Base_Column_List">
......@@ -403,7 +415,10 @@
a.ID_CARD_TOWN,
a.ID_CARD_ADDRESS,
a.APPLY_NO,
a.ORDER_ID
a.ORDER_ID,
a.SCHOOL_NAME,
a.MAJOR,
a.FIRST_PAY_TIME
</sql>
<sql id="tDispatchInfo_where">
<if test="tDispatchInfo != null">
......@@ -934,7 +949,10 @@
c.PROVIDENT_HOUSEHOLD_NAME,
c.UNIT_PROVIDENG_CARDINAL,
c.UNIT_PROVIDENT_PER,
a.EMP_MOBILE
a.EMP_MOBILE,
a.SCHOOL_NAME,
a.MAJOR,
a.FIRST_PAY_TIME
from t_dispatch_info a
left join t_social_info s on s.id=a.SOCIAL_ID
......@@ -991,7 +1009,10 @@
c.PROVIDENT_START,
c.PERSONAL_PROVIDENT_CARDINAL,
c.UNIT_PROVIDENT_PER,
c.PERSONAL_PROVIDENT_PER
c.PERSONAL_PROVIDENT_PER,
a.SCHOOL_NAME,
a.MAJOR,
a.FIRST_PAY_TIME
from t_dispatch_info a
left join t_social_info b on a.SOCIAL_ID = b.ID
left join t_provident_fund c on a.FUND_ID = C.ID
......@@ -1075,6 +1096,9 @@
<result property="birthStart" column="BIRTH_START"/>
<result property="bigailmentStart" column="BIGAILMENT_START"/>
<result property="exportSocialFlag" column="EXPORT_SOCIAL_FLAG"/>
<result property="schoolName" column="SCHOOL_NAME"/>
<result property="major" column="MAJOR"/>
<result property="firstPayTime" column="FIRST_PAY_TIME"/>
</resultMap>
<resultMap id="fundHandleMap" type="com.yifu.cloud.plus.v1.yifu.social.vo.FundHandleExportVo">
......@@ -1160,7 +1184,10 @@
s.PERSONAL_BIGAILMENT_MONEY,
a.TRUST_REMARK,
a.REDUCE_REASON,
'1' as EXPORT_SOCIAL_FLAG
'1' as EXPORT_SOCIAL_FLAG,
a.SCHOOL_NAME,
a.MAJOR,
a.FIRST_PAY_TIME
FROM t_dispatch_info a
left join t_social_info s on a.SOCIAL_ID = s.id
<include refid="where_getSocialRecordRoster"/>
......
......@@ -134,6 +134,8 @@
<result property="upperLimit" column="UPPER_LIMIT"/>
<result property="unitSocialSum" column="UNIT_SOCIAL_SUM"/>
<result property="personalSocialSum" column="PERSONAL_SOCIAL_SUM"/>
<result property="firstPayTime" column="FIRST_PAY_TIME"/>
</resultMap>
<sql id="Base_Column_List">
a.ID,
......@@ -236,7 +238,8 @@
a.UPDATE_TIME,
a.PAY_POLICY,
a.LOWER_LIMIT,
a.UPPER_LIMIT,a.UNIT_SOCIAL_SUM,a.PERSONAL_SOCIAL_SUM
a.UPPER_LIMIT,a.UNIT_SOCIAL_SUM,a.PERSONAL_SOCIAL_SUM,
a.FIRST_PAY_TIME
</sql>
<sql id="tSocialInfo_where">
<if test="tSocialInfo != null">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment