From 8853292babb2ad94de4a3207966f1e83b767cd2d Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Sun, 17 Sep 2023 16:38:34 +0800
Subject: [PATCH] 新增流程节点进程查询接口
---
src/main/java/org/springblade/modules/social/service/impl/SocialServiceImpl.java | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 100 insertions(+), 4 deletions(-)
diff --git a/src/main/java/org/springblade/modules/social/service/impl/SocialServiceImpl.java b/src/main/java/org/springblade/modules/social/service/impl/SocialServiceImpl.java
index 3a0a965..e363e47 100644
--- a/src/main/java/org/springblade/modules/social/service/impl/SocialServiceImpl.java
+++ b/src/main/java/org/springblade/modules/social/service/impl/SocialServiceImpl.java
@@ -19,14 +19,24 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.AllArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
+import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.modules.social.entity.Social;
import org.springblade.modules.social.excel.SocialExcel;
import org.springblade.modules.social.mapper.SocialMapper;
import org.springblade.modules.social.service.ISocialService;
import org.springblade.modules.social.vo.SocialVO;
+import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.service.IUserService;
+import org.springblade.modules.system.service.MyAsyncService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -38,18 +48,104 @@
*/
@Service
public class SocialServiceImpl extends ServiceImpl<SocialMapper, Social> implements ISocialService {
+
+ @Autowired
+ private MyAsyncService myAsyncService;
+
+ @Autowired
+ private IUserService userService;
+
+
@Override
public IPage<SocialVO> selectSocialPage(IPage<SocialVO> page, SocialVO social) {
return page.setRecords(baseMapper.selectSocialPage(page, social));
}
@Override
+// @Transactional(rollbackFor = Exception.class)
public void importUser(List<SocialExcel> data, Boolean isCovered,String deptid) {
- data.forEach(SocialExcel -> {
- Social social = Objects.requireNonNull(BeanUtil.copy(SocialExcel, Social.class));
+ //没有录入的人员
+ List<String> notFoundList = new ArrayList<>();
+ int num = 0;
+ //遍历
+ for (SocialExcel socialExcel : data) {
+ Social social = Objects.requireNonNull(BeanUtil.copy(socialExcel, Social.class));
+ if (StringUtils.isBlank(social.getCardid())){
+ throw new ServiceException("身份证号不能为空!");
+ }
+ //判断人员是否已录入
+ User user = userService.getUserInfoByIdCardNo(social.getCardid());
+ if (null == user){
+ notFoundList.add(social.getCardid());
+ num ++;
+ //终止本个循环,继续下一个循环
+ continue;
+ }
+
+ //设置用户id
+ social.setNamb(user.getId().toString());
+
+// if (null!=social.getSex() && !"".equals(social.getSex())) {
+// if (social.getSex().contains("男")){
+// social.setSex("1");
+// }
+// if (social.getSex().contains("女")){
+// social.setSex("2");
+// }
+// }
+ if (null!=social.getBirthday()) {
+ social.setBirthday(social.getBirthday());
+ }
+ if (null!=social.getTelephone() && !"".equals(social.getTelephone())) {
+ social.setTelephone(social.getTelephone());
+ }
+ if (null!=social.getResidence() && !"".equals(social.getResidence())) {
+ social.setResidence(social.getResidence());
+ }
+ if (null!=social.getAddress() && !"".equals(social.getAddress())) {
+ social.setAddress(social.getAddress());
+ }
+ if (null!=social.getNature() && !"".equals(social.getNature())) {
+ social.setNature(social.getNature());
+ }
+ if (null!=social.getNation() && !"".equals(social.getNation())) {
+ social.setNation(social.getNation());
+ }
social.setDeptid(deptid);
- this.save(social);
- });
+ //设置状态
+ this.upSoil(social.getCardid());
+ //新增
+ boolean save = this.save(social);
+
+ if (save) {
+ //内网同步
+ String sql =
+ "insert into sys_socil(id,namb,sex,nation,telephone,cardid,residence,amount,insuredtime,deptid) " +
+ "values(" + "'" + social.getId() + "'"
+ + "," + "'" + social.getNamb() + "'"
+ + "," + "'" + social.getSex() + "'" +
+ "," + "'" + social.getNation() + "'" +
+ "," + "'" + social.getTelephone() + "'" +
+ "," + "'" + social.getCardid() + "'" +
+ "," + "'" + social.getResidence() + "'" +
+ "," + "'" + social.getAmount() + "'" +
+ "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(social.getInsuredtime()) + "'" +
+ "," + "'" + social.getDeptid() + "'" + ")";
+ myAsyncService.dataSync(sql);
+ }
+ }
+
+ //如果所有数据导入有一个异常
+ StringBuilder errorBuilder = new StringBuilder();
+ if (num>0){
+ String errorAccount = StringUtils.join(notFoundList, "\\\n");
+ errorBuilder.append("用户:[" + errorAccount + "]社保记录导入失败!该人员尚未录入!");
+ }
+ //抛出异常
+ if (errorBuilder.length()>0){
+ throw new ServiceException(errorBuilder.toString());
+ }
+
}
@Override
--
Gitblit v1.9.3