|
@@ -14,13 +14,25 @@ package vip.xiaonuo.biz.modular.qyrecordinfo.service.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.collection.CollStreamUtil;
|
|
|
+import cn.hutool.core.collection.CollectionUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import jakarta.annotation.Resource;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
+import vip.xiaonuo.biz.modular.qyrecardbody.entity.QyRecardBody;
|
|
|
+import vip.xiaonuo.biz.modular.qyrecardbody.param.QyRecardBodyAddParam;
|
|
|
+import vip.xiaonuo.biz.modular.qyrecardbody.param.QyRecardBodyEditParam;
|
|
|
+import vip.xiaonuo.biz.modular.qyrecardbody.param.QyRecardBodyIdParam;
|
|
|
+import vip.xiaonuo.biz.modular.qyrecardbody.service.QyRecardBodyService;
|
|
|
+import vip.xiaonuo.biz.modular.qyrecordattachment.entity.QyRecordAttachment;
|
|
|
+import vip.xiaonuo.biz.modular.qyrecordattachment.param.QyRecordAttachmentAddParam;
|
|
|
+import vip.xiaonuo.biz.modular.qyrecordattachment.param.QyRecordAttachmentEditParam;
|
|
|
+import vip.xiaonuo.biz.modular.qyrecordattachment.service.QyRecordAttachmentService;
|
|
|
import vip.xiaonuo.common.enums.CommonSortOrderEnum;
|
|
|
import vip.xiaonuo.common.exception.CommonException;
|
|
|
import vip.xiaonuo.common.page.CommonPageRequest;
|
|
@@ -32,33 +44,41 @@ import vip.xiaonuo.biz.modular.qyrecordinfo.param.QyRecordInfoIdParam;
|
|
|
import vip.xiaonuo.biz.modular.qyrecordinfo.param.QyRecordInfoPageParam;
|
|
|
import vip.xiaonuo.biz.modular.qyrecordinfo.service.QyRecordInfoService;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* 企业备案信息Service接口实现类
|
|
|
*
|
|
|
* @author hgx
|
|
|
- * @date 2024/07/06 11:20
|
|
|
+ * @date 2024/07/06 11:20
|
|
|
**/
|
|
|
@Service
|
|
|
public class QyRecordInfoServiceImpl extends ServiceImpl<QyRecordInfoMapper, QyRecordInfo> implements QyRecordInfoService {
|
|
|
|
|
|
+ @Resource
|
|
|
+ private QyRecordAttachmentService qyRecordAttachmentService;
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private QyRecardBodyService qyRecardBodyService;
|
|
|
+
|
|
|
@Override
|
|
|
public Page<QyRecordInfo> page(QyRecordInfoPageParam qyRecordInfoPageParam) {
|
|
|
QueryWrapper<QyRecordInfo> queryWrapper = new QueryWrapper<QyRecordInfo>().checkSqlInjection();
|
|
|
- if(ObjectUtil.isNotEmpty(qyRecordInfoPageParam.getYlTzCode())) {
|
|
|
+ if (ObjectUtil.isNotEmpty(qyRecordInfoPageParam.getYlTzCode())) {
|
|
|
queryWrapper.lambda().like(QyRecordInfo::getYlTzCode, qyRecordInfoPageParam.getYlTzCode());
|
|
|
}
|
|
|
- if(ObjectUtil.isNotEmpty(qyRecordInfoPageParam.getTzType())) {
|
|
|
+ if (ObjectUtil.isNotEmpty(qyRecordInfoPageParam.getTzType())) {
|
|
|
queryWrapper.lambda().like(QyRecordInfo::getTzType, qyRecordInfoPageParam.getTzType());
|
|
|
}
|
|
|
- if(ObjectUtil.isNotEmpty(qyRecordInfoPageParam.getCompanyMainHgCode())) {
|
|
|
+ if (ObjectUtil.isNotEmpty(qyRecordInfoPageParam.getCompanyMainHgCode())) {
|
|
|
queryWrapper.lambda().like(QyRecordInfo::getCompanyMainHgCode, qyRecordInfoPageParam.getCompanyMainHgCode());
|
|
|
}
|
|
|
- if(ObjectUtil.isNotEmpty(qyRecordInfoPageParam.getCompanyType())) {
|
|
|
+ if (ObjectUtil.isNotEmpty(qyRecordInfoPageParam.getCompanyType())) {
|
|
|
queryWrapper.lambda().like(QyRecordInfo::getCompanyType, qyRecordInfoPageParam.getCompanyType());
|
|
|
}
|
|
|
- if(ObjectUtil.isAllNotEmpty(qyRecordInfoPageParam.getSortField(), qyRecordInfoPageParam.getSortOrder())) {
|
|
|
+ if (ObjectUtil.isAllNotEmpty(qyRecordInfoPageParam.getSortField(), qyRecordInfoPageParam.getSortOrder())) {
|
|
|
CommonSortOrderEnum.validate(qyRecordInfoPageParam.getSortOrder());
|
|
|
queryWrapper.orderBy(true, qyRecordInfoPageParam.getSortOrder().equalsIgnoreCase(CommonSortOrderEnum.ASC.getValue()),
|
|
|
StrUtil.toUnderlineCase(qyRecordInfoPageParam.getSortField()));
|
|
@@ -73,6 +93,24 @@ public class QyRecordInfoServiceImpl extends ServiceImpl<QyRecordInfoMapper, QyR
|
|
|
public void add(QyRecordInfoAddParam qyRecordInfoAddParam) {
|
|
|
QyRecordInfo qyRecordInfo = BeanUtil.toBean(qyRecordInfoAddParam, QyRecordInfo.class);
|
|
|
this.save(qyRecordInfo);
|
|
|
+ QyRecordInfo recordInfo = this.getOne(new LambdaQueryWrapper<QyRecordInfo>().eq(QyRecordInfo::getYlTzCode, qyRecordInfo.getYlTzCode()));
|
|
|
+ List<QyRecardBodyAddParam> qyRecardBodyAddParams = qyRecordInfoAddParam.getQyRecardBodyAddParams();
|
|
|
+ if(CollectionUtil.isNotEmpty(qyRecardBodyAddParams)){
|
|
|
+ qyRecardBodyAddParams.stream().forEach(qyRecardBodyAddParam -> {
|
|
|
+ qyRecardBodyAddParam.setQyRecordInfoId(recordInfo.getId());
|
|
|
+ QyRecardBody qyRecardBody = BeanUtil.toBean(qyRecardBodyAddParam, QyRecardBody.class);
|
|
|
+ qyRecardBody.setQyRecordInfoId(qyRecordInfo.getId());
|
|
|
+ qyRecardBodyService.save(qyRecardBody);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ List<QyRecordAttachmentAddParam> qyRecordAttachmentAddParams = qyRecordInfoAddParam.getQyRecordAttachmentAddParams();
|
|
|
+ if(CollectionUtil.isNotEmpty(qyRecordAttachmentAddParams)){
|
|
|
+ qyRecordAttachmentAddParams.stream().forEach(qyRecordAttachmentAddParam -> {
|
|
|
+ qyRecordAttachmentAddParam.setQyRecordInfoId(recordInfo.getId());
|
|
|
+ QyRecordAttachment qyRecordAttachment = BeanUtil.toBean(qyRecordAttachmentAddParam, QyRecordAttachment.class);
|
|
|
+ qyRecordAttachmentService.save(qyRecordAttachment);
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@@ -81,6 +119,33 @@ public class QyRecordInfoServiceImpl extends ServiceImpl<QyRecordInfoMapper, QyR
|
|
|
QyRecordInfo qyRecordInfo = this.queryEntity(qyRecordInfoEditParam.getId());
|
|
|
BeanUtil.copyProperties(qyRecordInfoEditParam, qyRecordInfo);
|
|
|
this.updateById(qyRecordInfo);
|
|
|
+ List<QyRecardBody> list = qyRecardBodyService.list(new LambdaQueryWrapper<QyRecardBody>().eq(QyRecardBody::getQyRecordInfoId, qyRecordInfo.getId()));
|
|
|
+ if(CollectionUtil.isNotEmpty(list)){
|
|
|
+ List<String> ids = list.stream().map(qyRecardBody -> qyRecardBody.getId()).collect(Collectors.toList());
|
|
|
+ List<QyRecardBodyIdParam> bodyIdParams = new ArrayList<>();
|
|
|
+ ids.forEach(id ->{
|
|
|
+ bodyIdParams.add(new QyRecardBodyIdParam(id));
|
|
|
+ });
|
|
|
+ qyRecardBodyService.delete(bodyIdParams);
|
|
|
+ }
|
|
|
+ List<QyRecardBodyEditParam> bodyAddParams = qyRecordInfoEditParam.getQyRecardBodyEditParams();
|
|
|
+ if (CollectionUtil.isNotEmpty(bodyAddParams)){
|
|
|
+ bodyAddParams.stream().forEach(qyRecardBodyAddParam -> {
|
|
|
+ qyRecardBodyAddParam.setQyRecordInfoId(qyRecordInfo.getId());
|
|
|
+ QyRecardBody qyRecardBody = BeanUtil.toBean(qyRecardBodyAddParam, QyRecardBody.class);
|
|
|
+ qyRecardBody.setQyRecordInfoId(qyRecordInfo.getId());
|
|
|
+ qyRecardBodyService.save(qyRecardBody);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ List<QyRecordAttachmentEditParam> attachmentEditParams = qyRecordInfoEditParam.getQyRecordAttachmentEditParams();
|
|
|
+ if(CollectionUtil.isNotEmpty(attachmentEditParams)){
|
|
|
+ attachmentEditParams.stream().forEach(qyRecordAttachmentAddParam -> {
|
|
|
+ qyRecordAttachmentAddParam.setQyRecordInfoId(qyRecordInfo.getId());
|
|
|
+ QyRecordAttachment qyRecordAttachment = BeanUtil.toBean(qyRecordAttachmentAddParam, QyRecordAttachment.class);
|
|
|
+ qyRecordAttachmentService.save(qyRecordAttachment);
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@@ -98,7 +163,7 @@ public class QyRecordInfoServiceImpl extends ServiceImpl<QyRecordInfoMapper, QyR
|
|
|
@Override
|
|
|
public QyRecordInfo queryEntity(String id) {
|
|
|
QyRecordInfo qyRecordInfo = this.getById(id);
|
|
|
- if(ObjectUtil.isEmpty(qyRecordInfo)) {
|
|
|
+ if (ObjectUtil.isEmpty(qyRecordInfo)) {
|
|
|
throw new CommonException("企业备案信息不存在,id值为:{}", id);
|
|
|
}
|
|
|
return qyRecordInfo;
|