修改下发通知
This commit is contained in:
+92
-15
@@ -9,6 +9,7 @@ import com.jero.common.util.oConvertUtils;
|
|||||||
import com.jero.modules.cert.template.entity.CertCategoryParamsInfoEO;
|
import com.jero.modules.cert.template.entity.CertCategoryParamsInfoEO;
|
||||||
import com.jero.modules.dummy.enums.OrderEnum;
|
import com.jero.modules.dummy.enums.OrderEnum;
|
||||||
import com.jero.modules.ota.entity.OtaManageApplyEO;
|
import com.jero.modules.ota.entity.OtaManageApplyEO;
|
||||||
|
import com.jero.modules.ota.entity.OtaManagePermission;
|
||||||
import com.jero.modules.ota.entity.OtaManageReceive;
|
import com.jero.modules.ota.entity.OtaManageReceive;
|
||||||
import com.jero.modules.ota.entity.OtaManageReceiveNsdpEO;
|
import com.jero.modules.ota.entity.OtaManageReceiveNsdpEO;
|
||||||
import com.jero.modules.ota.enums.OtaCarEnum;
|
import com.jero.modules.ota.enums.OtaCarEnum;
|
||||||
@@ -17,6 +18,7 @@ import com.jero.modules.ota.enums.OtaStatusEnum;
|
|||||||
import com.jero.modules.ota.mapper.OtaManageApplyEOMapper;
|
import com.jero.modules.ota.mapper.OtaManageApplyEOMapper;
|
||||||
import com.jero.modules.ota.service.IOtaManageApplyEOService;
|
import com.jero.modules.ota.service.IOtaManageApplyEOService;
|
||||||
import com.jero.modules.ota.service.IOtaManageHistoryService;
|
import com.jero.modules.ota.service.IOtaManageHistoryService;
|
||||||
|
import com.jero.modules.ota.service.IOtaManagePermissionService;
|
||||||
import com.jero.modules.ota.vo.AllCarExportCnVO;
|
import com.jero.modules.ota.vo.AllCarExportCnVO;
|
||||||
import com.jero.modules.ota.vo.AllCarExportEnVO;
|
import com.jero.modules.ota.vo.AllCarExportEnVO;
|
||||||
import com.jero.modules.ota.vo.OneCarExportCnVO;
|
import com.jero.modules.ota.vo.OneCarExportCnVO;
|
||||||
@@ -83,6 +85,8 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl<OtaManageApplyEOMap
|
|||||||
private IOtaManageHistoryService otaManageHistoryService;
|
private IOtaManageHistoryService otaManageHistoryService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private IOtaManageReceiveService otaManageReceiveService;
|
private IOtaManageReceiveService otaManageReceiveService;
|
||||||
|
@Autowired
|
||||||
|
private IOtaManagePermissionService otaManagePermissionService;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -866,23 +870,96 @@ public class OtaManageApplyEOServiceImpl extends ServiceImpl<OtaManageApplyEOMap
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void issueNotice(String id) {
|
public void issueNotice(String id) {
|
||||||
//根据版本查出所有vdr
|
if (StringUtils.isNotEmpty(id)) {
|
||||||
List<OtaManageReceive> omrList = otaManageReceiveService.getReceiveByplanned(id);
|
//根据版本查出所有vdr
|
||||||
List<String> appliedVehicleProjectList = omrList.stream()
|
List<OtaManageReceive> omrList = otaManageReceiveService.getReceiveByplanned(id);
|
||||||
.filter(e -> StringUtils.isNotBlank(e.getAppliedVehicleProject()))
|
List<String> appliedVehicleProjectList = omrList.stream()
|
||||||
.map(OtaManageReceive::getAppliedVehicleProject).distinct().collect(Collectors.toList());
|
.filter(e -> StringUtils.isNotBlank(e.getAppliedVehicleProject()))
|
||||||
Map<String,String> appMap = new HashMap<>();
|
.map(OtaManageReceive::getAppliedVehicleProject).distinct().collect(Collectors.toList());
|
||||||
for (String appStr : appliedVehicleProjectList) {
|
Map<String, Set> appMap = new HashMap<>();
|
||||||
if(StringUtils.isNotEmpty(appStr)){
|
for (String appStr : appliedVehicleProjectList) {
|
||||||
String[] appStrs = appStr.split(" ");
|
if (StringUtils.isNotEmpty(appStr)) {
|
||||||
|
String[] appStrs = appStr.split(",");
|
||||||
|
for (String str : appStrs) {
|
||||||
|
String[] s = str.split(" ");
|
||||||
|
if (appStrs.length == 1) {
|
||||||
|
if (!appMap.containsKey(s[0])) {
|
||||||
|
appMap.put(s[0], null);
|
||||||
|
}
|
||||||
|
} else if (s.length == 2) {
|
||||||
|
String projectName = s[0].toUpperCase(Locale.ROOT);
|
||||||
|
Set appSet = appMap.get(projectName);
|
||||||
|
if (ObjectUtils.isEmpty(appSet)) {
|
||||||
|
appSet = new HashSet();
|
||||||
|
}
|
||||||
|
if(s[1].equals("CN")){
|
||||||
|
appSet.add("China");
|
||||||
|
}else if(s[1].equals("RHD")){
|
||||||
|
appSet.add("UK");
|
||||||
|
}else{
|
||||||
|
appSet.add(s[1]);
|
||||||
|
}
|
||||||
|
appMap.put(projectName, appSet);
|
||||||
|
} else if (s.length == 3) {
|
||||||
|
String projectName = s[0].toUpperCase(Locale.ROOT);
|
||||||
|
Set appSet = appMap.get(projectName);
|
||||||
|
if (ObjectUtils.isEmpty(appSet)) {
|
||||||
|
appSet = new HashSet();
|
||||||
|
}
|
||||||
|
if(s[2].equals("CN")){
|
||||||
|
appSet.add("China");
|
||||||
|
}else if(s[2].equals("RHD")){
|
||||||
|
appSet.add("UK");
|
||||||
|
}else{
|
||||||
|
appSet.add(s[2]);
|
||||||
|
}
|
||||||
|
appMap.put(projectName, appSet);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
//查询所有NT2平台的项目
|
||||||
|
ProjectLibraryBase plbSearch = new ProjectLibraryBase();
|
||||||
|
plbSearch.setDigitalPlatform("NT2");
|
||||||
|
List<ProjectLibraryBase> plbList = projectLibraryBaseService.getList(plbSearch);
|
||||||
|
//存储符合条件的项目中Studio的用户ID
|
||||||
|
Set<String> matchStudioSet = new HashSet();
|
||||||
|
for (ProjectLibraryBase plb : plbList) {
|
||||||
|
boolean flag = false;
|
||||||
|
if (appMap.containsKey("All")) {
|
||||||
|
matchStudioSet.add(plb.getStudioEngineer());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
String targetMarket = plb.getTargetMarket();
|
||||||
|
String projectName = plb.getProjectName().toUpperCase(Locale.ROOT);
|
||||||
|
String[] targetMarkets = targetMarket.split(",");
|
||||||
|
for (String tm : targetMarkets) {
|
||||||
|
if ((appMap.containsKey("CN") && tm.equals("China"))
|
||||||
|
|| (appMap.containsKey("EU") && tm.equals("EU"))
|
||||||
|
|| (appMap.containsKey("RHD") && tm.equals("UK"))) {
|
||||||
|
//三个ALL的市场类型
|
||||||
|
matchStudioSet.add(plb.getStudioEngineer());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if(appMap.containsKey(projectName)){
|
||||||
|
Set appSet = appMap.get(projectName);
|
||||||
|
if(appSet.contains(tm)){
|
||||||
|
matchStudioSet.add(plb.getStudioEngineer());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//TODO 给studio发消息
|
||||||
|
List<OtaManagePermission> ompList = new ArrayList<>();
|
||||||
|
for (String studioId : matchStudioSet) {
|
||||||
|
OtaManagePermission omp = new OtaManagePermission();
|
||||||
|
omp.setApplyId(id);
|
||||||
|
omp.setUserId(studioId);
|
||||||
|
ompList.add(omp);
|
||||||
|
}
|
||||||
|
otaManagePermissionService.saveBatch(ompList);
|
||||||
}
|
}
|
||||||
//查询所有NT2平台的项目
|
|
||||||
ProjectLibraryBase plb = new ProjectLibraryBase();
|
|
||||||
plb.setDigitalPlatform("NT2");
|
|
||||||
List<ProjectLibraryBase> plbList = projectLibraryBaseService.getList(plb);
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user