diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/enums/DicCodeEnum.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/enums/DicCodeEnum.java new file mode 100644 index 000000000..d109cf276 --- /dev/null +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/enums/DicCodeEnum.java @@ -0,0 +1,52 @@ +package com.jero.modules.system.enums; + +/** + * 数据字典code枚举类 + */ +public enum DicCodeEnum { + REGION("适用地区","0","region"), + ; + + String name; + String value; + String code; + + private DicCodeEnum(String name, String value, String code) { + this.name = name; + this.value = value; + this.code = code; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public static String getTextByValue(String value) { + DicCodeEnum[] values = values(); + for (DicCodeEnum dicCodeEnum : values) { + if (dicCodeEnum.value.equals(value)) { + return dicCodeEnum.name; + } + } + return null; + } +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/CountryCardManageReleaseEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/CountryCardManageReleaseEOController.java index ae2e63e86..2830d355d 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/CountryCardManageReleaseEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/CountryCardManageReleaseEOController.java @@ -8,6 +8,7 @@ import javax.servlet.http.HttpServletResponse; import com.alibaba.fastjson.JSONObject; import com.jero.common.api.vo.Result; import com.jero.common.system.query.QueryGenerator; +import com.jero.common.system.vo.DictModel; import com.jero.modules.problemKnowledgeBase.entity.CountryCardManageReleaseEO; import com.jero.modules.problemKnowledgeBase.service.ICountryCardManageReleaseEOService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -185,4 +186,16 @@ public class CountryCardManageReleaseEOController extends JeroController> getApplyMarketList() { + Result> result = this.countryCardManageReleaseEOService.getApplyMarketList(); + return result; + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/ICountryCardManageReleaseEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/ICountryCardManageReleaseEOService.java index 68de81566..90fd6f872 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/ICountryCardManageReleaseEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/ICountryCardManageReleaseEOService.java @@ -1,6 +1,8 @@ package com.jero.modules.problemKnowledgeBase.service; import com.alibaba.fastjson.JSONObject; +import com.jero.common.api.vo.Result; +import com.jero.common.system.vo.DictModel; import com.jero.modules.problemKnowledgeBase.entity.CountryCardManageReleaseEO; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; @@ -72,4 +74,10 @@ public interface ICountryCardManageReleaseEOService extends IService> getApplyMarketList(); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/CountryCardManageReleaseEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/CountryCardManageReleaseEOServiceImpl.java index a0a0f6c04..e39493645 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/CountryCardManageReleaseEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/CountryCardManageReleaseEOServiceImpl.java @@ -2,17 +2,22 @@ package com.jero.modules.problemKnowledgeBase.service.impl; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.jero.common.api.vo.Result; +import com.jero.common.system.vo.DictModel; import com.jero.modules.problemKnowledgeBase.entity.CountryCardManageReleaseDetailEO; import com.jero.modules.problemKnowledgeBase.entity.CountryCardManageReleaseEO; import com.jero.modules.problemKnowledgeBase.enums.ReleaseStatusEnum; import com.jero.modules.problemKnowledgeBase.mapper.CountryCardManageReleaseEOMapper; import com.jero.modules.problemKnowledgeBase.service.ICountryCardManageReleaseDetailEOService; import com.jero.modules.problemKnowledgeBase.service.ICountryCardManageReleaseEOService; +import com.jero.modules.system.enums.DicCodeEnum; +import com.jero.modules.system.service.ISysDictService; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Date; @@ -34,6 +39,8 @@ public class CountryCardManageReleaseEOServiceImpl extends ServiceImpl> getApplyMarketList() { + List result = new ArrayList<>(); + + //获取所有的适用地区 + List dictModelList = sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode()); + + //获取已经创建了country Card的适用地区,该接口只返回,在country Card里面没有的适用地区。 + List countryCardManageReleaseEOList = this.list(); + if(CollectionUtils.isEmpty(countryCardManageReleaseEOList)){ + result = dictModelList; + }else { + for (DictModel dictModel : dictModelList) { + boolean flag = true; + for (CountryCardManageReleaseEO countryCardManageReleaseEO : countryCardManageReleaseEOList) { + if(StringUtils.equals(dictModel.getValue(),countryCardManageReleaseEO.getApplyMarket())){ + flag = false; + break; + } + } + + if(flag){ + result.add(dictModel); + } + } + } + + return Result.OK(result); + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseClassifyEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseClassifyEOServiceImpl.java index 4949d9f5f..c8359bbdc 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseClassifyEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseClassifyEOServiceImpl.java @@ -9,6 +9,9 @@ import com.jero.modules.system.util.StringUtils; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.Date; import java.util.stream.Collectors; @@ -102,21 +105,33 @@ public class ProblemKnowledgeBaseClassifyEOServiceImpl extends ServiceImpl datas) { if (CollectionUtils.isNotEmpty(datas)) { - List userIdList = datas.stream().map(ProblemKnowledgeBaseClassifyEO::getChargePersonId).distinct().collect(Collectors.toList()); + + StringBuffer userIdSb = new StringBuffer(); + for (ProblemKnowledgeBaseClassifyEO data : datas) { + userIdSb.append(data.getChargePersonId() + ","); + } + List userIdList = new ArrayList<>(); + if(StringUtils.isNotEmpty(userIdSb.toString())){ + userIdList = Arrays.asList(userIdSb.toString().substring(0,userIdSb.length()-1).split(",")); + } List userList = this.sysUserService.querySysUserListByIdList(userIdList); datas.forEach(data -> { if(CollectionUtils.isNotEmpty(userList)){ - List sysUsers = userList.stream().filter(user -> { - boolean flag = false; - if (StringUtils.equals(data.getId(), user.getId())) { - flag = true; - } - return flag; - }).collect(Collectors.toList()); - if(CollectionUtils.isNotEmpty(sysUsers)){ - data.setChargePersonIdName(sysUsers.get(0).getUsername()); + String chargePersonId = data.getChargePersonId(); + if(StringUtils.isNotEmpty(chargePersonId)){ + String[] chargePersonIdArr = chargePersonId.split(","); + String chargePersonIdName = userList.stream().filter(user -> { + boolean flag = false; + for (String chargePerson : chargePersonIdArr) { + if(StringUtils.equals(user.getId(),chargePerson)){ + flag = true; + } + } + return flag; + }).map(SysUser::getUsername).collect(Collectors.joining(",")); + data.setChargePersonIdName(chargePersonIdName); } } });