commit
2c23c05dee
|
|
@ -6,12 +6,15 @@ import com.alibaba.nacos.client.naming.utils.CollectionUtils;
|
|||
import com.api.browser.bean.SearchConditionGroup;
|
||||
import com.api.browser.bean.SearchConditionItem;
|
||||
import com.api.browser.bean.SearchConditionOption;
|
||||
import com.engine.salary.constant.SalaryDefaultTenantConstant;
|
||||
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
|
||||
import com.engine.salary.entity.siarchives.bo.InsuranceArchivesBO;
|
||||
import com.engine.salary.entity.siarchives.dto.InsuranceArchivesBaseDTO;
|
||||
import com.engine.salary.entity.siarchives.dto.InsuranceArchivesFundSchemeDTO;
|
||||
import com.engine.salary.entity.siarchives.dto.InsuranceArchivesOtherSchemeDTO;
|
||||
import com.engine.salary.entity.siarchives.dto.InsuranceArchivesSocialSchemeDTO;
|
||||
import com.engine.salary.entity.siarchives.param.InsuranceArchivesSaveParam;
|
||||
import com.engine.salary.entity.siarchives.param.InsuranceArchivesSocialSaveParam;
|
||||
import com.engine.salary.entity.siarchives.po.InsuranceArchivesFundSchemePO;
|
||||
import com.engine.salary.entity.siarchives.po.InsuranceArchivesOtherSchemePO;
|
||||
import com.engine.salary.entity.siarchives.po.InsuranceArchivesSocialSchemePO;
|
||||
|
|
@ -19,9 +22,11 @@ import com.engine.salary.entity.sicategory.po.ICategoryPO;
|
|||
import com.engine.salary.entity.sischeme.po.InsuranceSchemeDetailPO;
|
||||
import com.engine.salary.entity.sischeme.po.InsuranceSchemePO;
|
||||
import com.engine.salary.entity.taxrate.TaxAgent;
|
||||
import com.engine.salary.enums.sicategory.DeleteTypeEnum;
|
||||
import com.engine.salary.enums.sicategory.IsPaymentEnum;
|
||||
import com.engine.salary.enums.sicategory.UndertakerEnum;
|
||||
import com.engine.salary.enums.sicategory.WelfareTypeEnum;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
import com.engine.salary.mapper.TaxAgentMapper;
|
||||
import com.engine.salary.mapper.siarchives.FundSchemeMapper;
|
||||
import com.engine.salary.mapper.siarchives.OtherSchemeMapper;
|
||||
|
|
@ -391,4 +396,69 @@ public class SIArchivesBiz {
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* 新增
|
||||
* @param param
|
||||
* @param employeeId
|
||||
*/
|
||||
public void insert(InsuranceArchivesSaveParam param, long employeeId) {
|
||||
SalaryAssert.notNull(param.getWelfareType(), "福利类型为空");
|
||||
switch (param.getWelfareType()) {
|
||||
case SOCIAL_SECURITY:
|
||||
socialSave(param, employeeId);
|
||||
break;
|
||||
case ACCUMULATION_FUND:
|
||||
//fundSave(param, employeeId);
|
||||
break;
|
||||
case OTHER:
|
||||
//otherSave(param, employeeId);
|
||||
break;
|
||||
default:
|
||||
throw new SalaryRunTimeException("福利类型不存在");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param paramReq
|
||||
* @param employeeId
|
||||
*/
|
||||
public void socialSave(InsuranceArchivesSaveParam paramReq, long employeeId) {
|
||||
|
||||
SqlSession sqlSession = MyBatisFactory.sqlSessionFactory.openSession();
|
||||
try {
|
||||
SocialSchemeMapper socialSchemeMapper = sqlSession.getMapper(SocialSchemeMapper.class);
|
||||
|
||||
InsuranceArchivesSocialSaveParam param = JSONObject.parseObject(paramReq.getBaseForm(), InsuranceArchivesSocialSaveParam.class);
|
||||
SalaryAssert.notNull("员工id为空", param, param.getEmployeeId());
|
||||
//删除社保数据
|
||||
socialSchemeMapper.batchDeleteByEmployeeIds(Collections.singletonList(param.getEmployeeId()));
|
||||
|
||||
InsuranceArchivesSocialSchemePO insuranceArchivesSocialSchemePO =
|
||||
InsuranceArchivesSocialSchemePO.builder()
|
||||
//.id(IdGenerator.generate())
|
||||
.welfareType(paramReq.getWelfareType().getValue())
|
||||
.deleteType(DeleteTypeEnum.NOT_DELETED.getValue())
|
||||
.socialPaymentBaseString(paramReq.getPaymentForm())
|
||||
.socialSchemeId(param.getSocialName())
|
||||
.createTime(new Date())
|
||||
.socialEndTime(param.getSocialEndTime())
|
||||
.socialStartTime(param.getSocialStartTime())
|
||||
.creator(employeeId)
|
||||
.nonPayment(param.getNonPayment())
|
||||
.tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
|
||||
.employeeId(param.getEmployeeId())
|
||||
.updateTime(new Date())
|
||||
.underTake(param.getUnderTake().getValue())
|
||||
.socialAccount(param.getSchemeAccount())
|
||||
.paymentOrganization(param.getPaymentOrganization())
|
||||
.build();
|
||||
socialSchemeMapper.batchSave(Collections.singletonList(insuranceArchivesSocialSchemePO));
|
||||
|
||||
sqlSession.commit();
|
||||
}finally {
|
||||
sqlSession.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
package com.engine.salary.cmd.archives;
|
||||
package com.engine.salary.cmd.siarchives;
|
||||
|
||||
import com.engine.common.biz.AbstractCommonCommand;
|
||||
import com.engine.common.entity.BizLogContext;
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
package com.engine.salary.entity.siarchives.param;
|
||||
|
||||
import com.engine.salary.enums.sicategory.WelfareTypeEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @Author weaver_cl
|
||||
* @Description: TODO 社保档案保存
|
||||
* @Date 2022/3/16
|
||||
* @Version V1.0
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class InsuranceArchivesSaveParam {
|
||||
|
||||
private WelfareTypeEnum welfareType;
|
||||
|
||||
private String baseForm;
|
||||
|
||||
private String paymentForm;
|
||||
}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
package com.engine.salary.entity.siarchives.param;
|
||||
|
||||
import com.engine.salary.enums.sicategory.UndertakerEnum;
|
||||
import com.engine.salary.enums.sicategory.WelfareTypeEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @Author weaver_cl
|
||||
* @Description: TODO 社保档案保存
|
||||
* @Date 2022/3/16
|
||||
* @Version V1.0
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class InsuranceArchivesSocialSaveParam {
|
||||
|
||||
//主键id
|
||||
private Long id;
|
||||
|
||||
//员工id
|
||||
private Long employeeId;
|
||||
|
||||
//暂不缴纳
|
||||
private Integer nonPayment;
|
||||
|
||||
//福利类型
|
||||
private WelfareTypeEnum welfareType;
|
||||
|
||||
//社保起始缴纳月
|
||||
private String socialStartTime;
|
||||
|
||||
//社保最后缴纳月
|
||||
private String socialEndTime;
|
||||
|
||||
//社保方案id
|
||||
private Long socialSchemeId;
|
||||
|
||||
//社保方案id
|
||||
//todo 前端需要调整
|
||||
private Long socialName;
|
||||
|
||||
//社保账号
|
||||
private String schemeAccount;
|
||||
|
||||
//社保缴纳组织
|
||||
private Long paymentOrganization;
|
||||
|
||||
//社保个人实际承担方
|
||||
private UndertakerEnum underTake;
|
||||
|
||||
//基数jsonString
|
||||
private String paymentForm;
|
||||
}
|
||||
|
|
@ -3,6 +3,9 @@ package com.engine.salary.mapper.siarchives;
|
|||
import com.engine.salary.entity.siarchives.po.InsuranceArchivesSocialSchemePO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Author weaver_cl
|
||||
* @Description: TODO
|
||||
|
|
@ -17,4 +20,16 @@ public interface SocialSchemeMapper {
|
|||
* @return
|
||||
*/
|
||||
InsuranceArchivesSocialSchemePO getSocialByEmployeeId(@Param("employeeId")Long employeeId);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
* @param singletonList
|
||||
*/
|
||||
void batchDeleteByEmployeeIds(@Param("employeeIds") Collection<Long> singletonList);
|
||||
|
||||
/**
|
||||
* 批量保存
|
||||
* @param singletonList
|
||||
*/
|
||||
void batchSave(List<InsuranceArchivesSocialSchemePO> singletonList);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,4 +53,6 @@
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
</mapper>
|
||||
|
|
@ -1,5 +1,7 @@
|
|||
package com.engine.salary.service;
|
||||
|
||||
import com.engine.salary.entity.siarchives.param.InsuranceArchivesSaveParam;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
|
|
@ -15,4 +17,6 @@ public interface SIArchivesService {
|
|||
Map<String, Object> getBaseForm(Map<String, Object> params);
|
||||
|
||||
Map<String, Object> getPaymentForm(Map<String, Object> params);
|
||||
|
||||
String insert(InsuranceArchivesSaveParam param);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -224,7 +224,7 @@ public class AttendQuoteFieldServiceImpl extends Service implements AttendQuoteF
|
|||
// 本地已存在则更新【交集】
|
||||
List<String> updateCodes = localFieldCodes.stream().filter(item -> attendFieldCodes.contains(item)).collect(Collectors.toList());
|
||||
// 本地比attend多,则删除【差集(local - attend)】
|
||||
List<String> deleteCodes = localFieldCodes.stream().filter(item -> !attendFieldCodes.contains(item)).collect(Collectors.toList());
|
||||
Collection<String> deleteCodes = localFieldCodes.stream().filter(item -> !attendFieldCodes.contains(item)).collect(Collectors.toList());
|
||||
// attend比本地多,则新增【差集(attend - local)】
|
||||
List<String> saveCodes = attendFieldCodes.stream().filter(item -> !localFieldCodes.contains(item)).collect(Collectors.toList());
|
||||
String hourI18n = SalaryI18nUtil.getI18nLabel(100743, "小时");
|
||||
|
|
|
|||
|
|
@ -2,10 +2,13 @@ package com.engine.salary.service.impl;
|
|||
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.biz.SIArchivesBiz;
|
||||
import com.engine.salary.cmd.archives.SIArchivesTipsCmd;
|
||||
import com.engine.salary.entity.siarchives.dto.InsuranceArchivesBaseDTO;
|
||||
import com.engine.salary.cmd.siarchives.SIArchivesTipsCmd;
|
||||
import com.engine.salary.entity.siarchives.param.InsuranceArchivesSaveParam;
|
||||
import com.engine.salary.enums.sicategory.WelfareTypeEnum;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
import com.engine.salary.service.SIArchivesService;
|
||||
import com.engine.salary.util.SalaryAssert;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import weaver.general.Util;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
|
@ -44,4 +47,12 @@ public class SIArchivesServiceImpl extends Service implements SIArchivesService
|
|||
apidatas = siArchivesBiz.getPaymentForm(user,welfareTypeEnum, employeeId,(long) user.getUID(),schemeId);
|
||||
return apidatas;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String insert(InsuranceArchivesSaveParam param) {
|
||||
SIArchivesBiz siArchivesBiz = new SIArchivesBiz();
|
||||
siArchivesBiz.insert(param,(long) user.getUID());
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,10 +2,12 @@ package com.engine.salary.web;
|
|||
|
||||
import com.engine.common.util.ParamUtil;
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.salary.entity.siarchives.param.InsuranceArchivesSaveParam;
|
||||
import com.engine.salary.enums.sicategory.WelfareTypeEnum;
|
||||
import com.engine.salary.service.SIArchivesService;
|
||||
import com.engine.salary.service.impl.SIArchivesServiceImpl;
|
||||
import com.engine.salary.util.ResponseResult;
|
||||
import io.swagger.v3.oas.annotations.parameters.RequestBody;
|
||||
import weaver.hrm.HrmUserVarify;
|
||||
import weaver.hrm.User;
|
||||
|
||||
|
|
@ -38,6 +40,8 @@ public class SIArchivesController {
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 查询档案基本信息表单
|
||||
* @param request
|
||||
|
|
@ -55,7 +59,13 @@ public class SIArchivesController {
|
|||
return ResponseResult.run(getService(user)::getBaseForm, map);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 查询档案缴纳基数表单
|
||||
* @param request
|
||||
* @param response
|
||||
* @param welfareTypeEnum
|
||||
* @return
|
||||
*/
|
||||
@GET
|
||||
@Path("/getPaymentForm")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
|
|
@ -67,5 +77,20 @@ public class SIArchivesController {
|
|||
return ResponseResult.run(getService(user)::getPaymentForm, map);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存档案
|
||||
* @param request
|
||||
* @param response
|
||||
* @param param
|
||||
* @return
|
||||
*/
|
||||
@POST
|
||||
@Path("/save")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String insert(@Context HttpServletRequest request, @Context HttpServletResponse response,@RequestBody InsuranceArchivesSaveParam param) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<InsuranceArchivesSaveParam,String>().run(getService(user)::insert, param);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue