|
@@ -6,10 +6,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.qmth.distributed.print.business.bean.dto.BasicPrintConfigDto;
|
|
|
+import com.qmth.distributed.print.business.entity.BasicTemplateOrg;
|
|
|
import com.qmth.distributed.print.business.enums.TemplateTypeEnum;
|
|
|
import com.qmth.distributed.print.business.mapper.BasicPrintConfigMapper;
|
|
|
import com.qmth.distributed.print.business.service.BasicExamService;
|
|
|
import com.qmth.distributed.print.business.service.BasicPrintConfigService;
|
|
|
+import com.qmth.distributed.print.business.service.BasicTemplateOrgService;
|
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
|
import com.qmth.teachcloud.common.entity.BasicExam;
|
|
|
import com.qmth.teachcloud.common.entity.BasicPrintConfig;
|
|
@@ -27,6 +29,7 @@ import javax.annotation.Resource;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
import java.util.Objects;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* <p>
|
|
@@ -48,10 +51,26 @@ public class BasicPrintConfigServiceImpl extends ServiceImpl<BasicPrintConfigMap
|
|
|
@Autowired
|
|
|
private SysOrgService sysOrgService;
|
|
|
|
|
|
+ @Resource
|
|
|
+ BasicTemplateOrgService basicTemplateOrgService;
|
|
|
+
|
|
|
@Override
|
|
|
public IPage<BasicPrintConfigDto> listPage(Long examId, Boolean enable, Long createStartTime, Long createEndTime, Integer pageNumber, Integer pageSize) {
|
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
|
- return this.baseMapper.listPage(new Page<>(pageNumber, pageSize), schoolId, examId, enable, createStartTime, createEndTime);
|
|
|
+ Page<BasicPrintConfigDto> page = new Page<>(pageNumber, pageSize);
|
|
|
+ IPage<BasicPrintConfigDto> printConfigDtoIPage = this.baseMapper.listPage(page, schoolId, examId, enable, createStartTime, createEndTime);
|
|
|
+ if (printConfigDtoIPage.getRecords().size() > 0) {
|
|
|
+ printConfigDtoIPage.getRecords().forEach(m -> {
|
|
|
+ //查询适用学院
|
|
|
+ List<SysOrg> sysOrgs = basicTemplateOrgService.listByTypeAndTemplateId(TemplateTypeEnum.PRINT_CONFIG.name(), Long.valueOf(m.getId()));
|
|
|
+ if (sysOrgs != null && sysOrgs.size() > 0) {
|
|
|
+ String orgNames = sysOrgs.stream().map(SysOrg::getName).collect(Collectors.joining(","));
|
|
|
+ m.setOrgNames(orgNames);
|
|
|
+ }
|
|
|
+ m.setOrgs(sysOrgs);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ return printConfigDtoIPage;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -72,21 +91,21 @@ public class BasicPrintConfigServiceImpl extends ServiceImpl<BasicPrintConfigMap
|
|
|
|
|
|
// 新增
|
|
|
if (Objects.isNull(basicPrintConfig.getId())) {
|
|
|
-// QueryWrapper<BasicPrintConfig> queryWrapper = new QueryWrapper<>();
|
|
|
-// queryWrapper.lambda().eq(BasicPrintConfig::getSchoolId, schoolId).eq(BasicPrintConfig::getExamId, basicPrintConfig.getExamId());
|
|
|
-// List<BasicPrintConfig> basicPrintConfigs = this.list(queryWrapper);
|
|
|
- // 同一个考试下,一个学院只能对应一个印品配置方案
|
|
|
-// Long[] orgIds = basicPrintConfig.getOrgIds();
|
|
|
-// if (basicPrintConfigs != null && basicPrintConfigs.size() > 0) {
|
|
|
-// List<Long> printConfigIds = basicPrintConfigs.stream().map(BasicPrintConfig::getId).collect(Collectors.toList());
|
|
|
-// QueryWrapper<BasicTemplateOrg> basicTemplateOrgQueryWrapper = new QueryWrapper<>();
|
|
|
-// basicTemplateOrgQueryWrapper.lambda().in(BasicTemplateOrg::getRuleId, printConfigIds).eq(BasicTemplateOrg::getType, TemplateTypeEnum.PRINT_CONFIG)
|
|
|
-// .in(BasicTemplateOrg::getOrgId, orgIds);
|
|
|
-// List<BasicTemplateOrg> basicTemplateOrgList = basicTemplateOrgService.list(basicTemplateOrgQueryWrapper);
|
|
|
-// if (basicTemplateOrgList != null && basicTemplateOrgList.size() > 0) {
|
|
|
-// throw ExceptionResultEnum.ERROR.exception("有" + basicTemplateOrgList.size() + "个机构已经设置了印品,不能重复设置");
|
|
|
-// }
|
|
|
-// }
|
|
|
+ QueryWrapper<BasicPrintConfig> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.lambda().eq(BasicPrintConfig::getSchoolId, schoolId).eq(BasicPrintConfig::getExamId, basicPrintConfig.getExamId());
|
|
|
+ List<BasicPrintConfig> basicPrintConfigs = this.list(queryWrapper);
|
|
|
+ //同一个考试下,一个学院只能对应一个印品配置方案
|
|
|
+ Long[] orgIds = basicPrintConfig.getOrgIds();
|
|
|
+ if (basicPrintConfigs != null && basicPrintConfigs.size() > 0) {
|
|
|
+ List<Long> printConfigIds = basicPrintConfigs.stream().map(BasicPrintConfig::getId).collect(Collectors.toList());
|
|
|
+ QueryWrapper<BasicTemplateOrg> basicTemplateOrgQueryWrapper = new QueryWrapper<>();
|
|
|
+ basicTemplateOrgQueryWrapper.lambda().in(BasicTemplateOrg::getRuleId, printConfigIds).eq(BasicTemplateOrg::getType, TemplateTypeEnum.PRINT_CONFIG)
|
|
|
+ .in(BasicTemplateOrg::getOrgId, orgIds);
|
|
|
+ List<BasicTemplateOrg> basicTemplateOrgList = basicTemplateOrgService.list(basicTemplateOrgQueryWrapper);
|
|
|
+ if (basicTemplateOrgList != null && basicTemplateOrgList.size() > 0) {
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("有" + basicTemplateOrgList.size() + "个机构已经设置了印品,不能重复设置");
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
basicPrintConfig.setId(SystemConstant.getDbUuid());
|
|
|
basicPrintConfig.setCreateId(sysUser.getId());
|
|
@@ -95,35 +114,35 @@ public class BasicPrintConfigServiceImpl extends ServiceImpl<BasicPrintConfigMap
|
|
|
}
|
|
|
// 修改
|
|
|
else {
|
|
|
-// QueryWrapper<BasicPrintConfig> queryWrapper = new QueryWrapper<>();
|
|
|
-// queryWrapper.lambda().eq(BasicPrintConfig::getSchoolId, schoolId)
|
|
|
-// .eq(BasicPrintConfig::getExamId, basicPrintConfig.getExamId())
|
|
|
-// .ne(BasicPrintConfig::getId, basicPrintConfig.getId());
|
|
|
-// List<BasicPrintConfig> basicPrintConfigs = this.list(queryWrapper);
|
|
|
- // 一个学院只能对应一个印品配置方案
|
|
|
-// Long[] orgIds = basicPrintConfig.getOrgIds();
|
|
|
-// if (basicPrintConfigs != null && basicPrintConfigs.size() > 0) {
|
|
|
-// List<Long> printConfigIds = basicPrintConfigs.stream().map(BasicPrintConfig::getId).collect(Collectors.toList());
|
|
|
-// QueryWrapper<BasicTemplateOrg> basicTemplateOrgQueryWrapper = new QueryWrapper<>();
|
|
|
-// basicTemplateOrgQueryWrapper.lambda().in(BasicTemplateOrg::getRuleId, printConfigIds)
|
|
|
-// .eq(BasicTemplateOrg::getType, TemplateTypeEnum.PRINT_CONFIG)
|
|
|
-// .in(BasicTemplateOrg::getOrgId, orgIds);
|
|
|
-// List<BasicTemplateOrg> basicTemplateOrgList = basicTemplateOrgService.list(basicTemplateOrgQueryWrapper);
|
|
|
-// if (basicTemplateOrgList != null && basicTemplateOrgList.size() > 0) {
|
|
|
-// throw ExceptionResultEnum.ERROR.exception("有" + basicTemplateOrgList.size() + "个机构已经设置了印品,不能重复设置");
|
|
|
-// }
|
|
|
-// }
|
|
|
+ QueryWrapper<BasicPrintConfig> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.lambda().eq(BasicPrintConfig::getSchoolId, schoolId)
|
|
|
+ .eq(BasicPrintConfig::getExamId, basicPrintConfig.getExamId())
|
|
|
+ .ne(BasicPrintConfig::getId, basicPrintConfig.getId());
|
|
|
+ List<BasicPrintConfig> basicPrintConfigs = this.list(queryWrapper);
|
|
|
+ //一个学院只能对应一个印品配置方案
|
|
|
+ Long[] orgIds = basicPrintConfig.getOrgIds();
|
|
|
+ if (basicPrintConfigs != null && basicPrintConfigs.size() > 0) {
|
|
|
+ List<Long> printConfigIds = basicPrintConfigs.stream().map(BasicPrintConfig::getId).collect(Collectors.toList());
|
|
|
+ QueryWrapper<BasicTemplateOrg> basicTemplateOrgQueryWrapper = new QueryWrapper<>();
|
|
|
+ basicTemplateOrgQueryWrapper.lambda().in(BasicTemplateOrg::getRuleId, printConfigIds)
|
|
|
+ .eq(BasicTemplateOrg::getType, TemplateTypeEnum.PRINT_CONFIG)
|
|
|
+ .in(BasicTemplateOrg::getOrgId, orgIds);
|
|
|
+ List<BasicTemplateOrg> basicTemplateOrgList = basicTemplateOrgService.list(basicTemplateOrgQueryWrapper);
|
|
|
+ if (basicTemplateOrgList != null && basicTemplateOrgList.size() > 0) {
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("有" + basicTemplateOrgList.size() + "个机构已经设置了印品,不能重复设置");
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
basicPrintConfig.setUpdateId(sysUser.getId());
|
|
|
basicPrintConfig.setUpdateTime(System.currentTimeMillis());
|
|
|
|
|
|
//删除权限
|
|
|
-// basicTemplateOrgService.removeByRuleId(basicPrintConfig.getId());
|
|
|
+ basicTemplateOrgService.removeByRuleId(basicPrintConfig.getId());
|
|
|
isSuccess = this.updateById(basicPrintConfig);
|
|
|
}
|
|
|
|
|
|
// 新增权限
|
|
|
-// basicTemplateOrgService.saveBatch(schoolId, TemplateTypeEnum.PRINT_CONFIG, basicPrintConfig.getId(), basicPrintConfig.getOrgIds(), basicPrintConfig.getCreateId());
|
|
|
+ basicTemplateOrgService.saveBatch(schoolId, TemplateTypeEnum.PRINT_CONFIG, basicPrintConfig.getId(), basicPrintConfig.getOrgIds(), basicPrintConfig.getCreateId());
|
|
|
return isSuccess;
|
|
|
}
|
|
|
|
|
@@ -179,14 +198,14 @@ public class BasicPrintConfigServiceImpl extends ServiceImpl<BasicPrintConfigMap
|
|
|
if (id != null) {
|
|
|
queryWrapper.lambda().ne(BasicPrintConfig::getId, id);
|
|
|
}
|
|
|
-// List<BasicPrintConfig> basicPrintConfigs = this.list(queryWrapper);
|
|
|
+ List<BasicPrintConfig> basicPrintConfigs = this.list(queryWrapper);
|
|
|
List<String> orgIds = new ArrayList<>();
|
|
|
-// for (BasicPrintConfig basicPrintConfig : basicPrintConfigs) {
|
|
|
-// List<SysOrg> sysOrgList = basicTemplateOrgService.listByTypeAndTemplateId(TemplateTypeEnum.PRINT_CONFIG.name(), basicPrintConfig.getId());
|
|
|
-// for (SysOrg sysOrg : sysOrgList) {
|
|
|
-// orgIds.add(String.valueOf(sysOrg.getId()));
|
|
|
-// }
|
|
|
-// }
|
|
|
+ for (BasicPrintConfig basicPrintConfig : basicPrintConfigs) {
|
|
|
+ List<SysOrg> sysOrgList = basicTemplateOrgService.listByTypeAndTemplateId(TemplateTypeEnum.PRINT_CONFIG.name(), basicPrintConfig.getId());
|
|
|
+ for (SysOrg sysOrg : sysOrgList) {
|
|
|
+ orgIds.add(String.valueOf(sysOrg.getId()));
|
|
|
+ }
|
|
|
+ }
|
|
|
return orgIds;
|
|
|
}
|
|
|
|