Merge remote-tracking branch 'origin/dev_third_stage'

This commit is contained in:
zer0Black
2022-07-01 15:01:16 +08:00
36 changed files with 2607 additions and 2181 deletions
@@ -54,7 +54,7 @@
<if test="paramsCollectManifestEO.userTypes !=null and paramsCollectManifestEO.userTypes !=''"> <if test="paramsCollectManifestEO.userTypes !=null and paramsCollectManifestEO.userTypes !=''">
<choose> <choose>
<when test="paramsCollectManifestEO.userTypes == 'sdt'"> <when test="paramsCollectManifestEO.userTypes == 'sdt'">
AND sdt = #{paramsCollectManifestEO.sdt} AND state in ('2','4','5','6','7') AND sdt = #{paramsCollectManifestEO.sdt} AND state in ('2','4','5','6','7','8')
</when> </when>
<when test="paramsCollectManifestEO.userTypes == 'dre'"> <when test="paramsCollectManifestEO.userTypes == 'dre'">
AND dre = #{paramsCollectManifestEO.dreForAuth} AND state in ('4','6','7','8') AND dre = #{paramsCollectManifestEO.dreForAuth} AND state in ('4','6','7','8')
@@ -102,6 +102,8 @@ public interface IParamsCollectManifestEOService extends IService<ParamsCollectM
boolean getManifestConfigFlag(String paramsManifestId); boolean getManifestConfigFlag(String paramsManifestId);
Map<String, List<ParamsCollectManifestEO>> queryByManifestIdList(List<String> manifestIdList);
// 退回 // 退回
boolean goBack(ParamsCollectManifestVO paramsCollectManifestVO); boolean goBack(ParamsCollectManifestVO paramsCollectManifestVO);
@@ -62,4 +62,11 @@ public interface IParamsConfigDataEOService extends IService<ParamsConfigDataEO>
* @return * @return
*/ */
List<ParamsConfigDataEO> queryList(); List<ParamsConfigDataEO> queryList();
/**
* 查询清单的所有配置数据
* @param configIdList
* @return
*/
List<ParamsConfigDataEO> queryListByConfigIdList(List<String> configIdList);
} }
@@ -1,8 +1,11 @@
package com.jero.modules.cert.collect.service; package com.jero.modules.cert.collect.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.cert.collect.entity.ParamsConfigDataEO;
import com.jero.modules.cert.collect.entity.ParamsConfigDataHistoryEO; import com.jero.modules.cert.collect.entity.ParamsConfigDataHistoryEO;
import java.util.List;
/** /**
* @Description: 参数配置数据历史版本 * @Description: 参数配置数据历史版本
* @Author: jero-boot * @Author: jero-boot
@@ -19,4 +22,11 @@ public interface IParamsConfigDataHistoryEOService extends IService<ParamsConfig
* @return * @return
*/ */
ParamsConfigDataHistoryEO queryByConfigIdAndCollectManifestId(String paramsConfigId, String paramsCollectManifestId); ParamsConfigDataHistoryEO queryByConfigIdAndCollectManifestId(String paramsConfigId, String paramsCollectManifestId);
/**
* 查询清单的所有配置数据
* @param configIdList
* @return
*/
List<ParamsConfigDataHistoryEO> queryListByConfigIdList(List<String> configIdList);
} }
@@ -166,6 +166,18 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
paramsCollectManifestEOList.add(target); paramsCollectManifestEOList.add(target);
} }
// 判断清单状态是否为已完成,若是,更改为收集中
ParamsManifestEO paramsManifestEO = paramsManifestEOService.getById(paramsManifestId);
if (ManifestStateEnum.FINISHED.getValue().equals(paramsManifestEO.getState())) {
// 更新清单状态和完成时间
ParamsManifestEO updateParamsManifestEO = new ParamsManifestEO();
updateParamsManifestEO.setId(paramsManifestId);
updateParamsManifestEO.setState(ManifestStateEnum.COLLECTING.getValue());
updateParamsManifestEO.setFinishTime(null);
paramsManifestEOService.updateById(updateParamsManifestEO);
}
return saveBatch(paramsCollectManifestEOList); return saveBatch(paramsCollectManifestEOList);
} }
@@ -217,6 +229,14 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
return getById(id); return getById(id);
} }
private ParamsConfigDataEO getConfigDataEOByConfigIdAndCollectManifestId(String configId, String collectManifestId, List<ParamsConfigDataEO> paramsConfigDataEOList) {
List<ParamsConfigDataEO> configDataEOList = paramsConfigDataEOList.stream().filter(e-> configId.equals(e.getParamsConfigId()) && collectManifestId.equals(e.getParamsCollectManifestId())).collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(configDataEOList)) {
return configDataEOList.get(0);
}
return null;
}
/** /**
* 列表查询 * 列表查询
* *
@@ -255,6 +275,8 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
} }
List<ParamsCollectManifestEO> list = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); // 查询固定列 List<ParamsCollectManifestEO> list = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); // 查询固定列
List<ParamsConfigEO> paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询配置列 List<ParamsConfigEO> paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询配置列
List<String> paramsConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList());
List<ParamsConfigDataEO> paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(paramsConfigIdList); // 查询所有配置数据
// 普通数据字典 // 普通数据字典
List<SysDictItem> dictItemList = new ArrayList<>(); List<SysDictItem> dictItemList = new ArrayList<>();
@@ -318,7 +340,8 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置 paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置
Map<String, Object> configMap = new HashMap<>(); Map<String, Object> configMap = new HashMap<>();
String paramsConfigId = paramsConfigEO.getId(); String paramsConfigId = paramsConfigEO.getId();
ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId); // 参数配置数据 // ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId); // 参数配置数据
ParamsConfigDataEO paramsConfigDataEO = getConfigDataEOByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId, paramsConfigDataEOList); // 参数配置数据
List<ParamsConfigDataVO> paramsConfigDataVOList = getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据 List<ParamsConfigDataVO> paramsConfigDataVOList = getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据
configMap.put("controlType", controlType); configMap.put("controlType", controlType);
configMap.put("list", paramsConfigDataVOList); configMap.put("list", paramsConfigDataVOList);
@@ -1027,6 +1050,20 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
} }
} }
@Override
public Map<String, List<ParamsCollectManifestEO>> queryByManifestIdList(List<String> manifestIdList){
Map<String, List<ParamsCollectManifestEO>> map = new HashMap<>();
LambdaQueryWrapper<ParamsCollectManifestEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(ParamsCollectManifestEO::getParamsManifestId, manifestIdList);
List<ParamsCollectManifestEO> list = list(queryWrapper);
for (String manifestId : manifestIdList) {
List<ParamsCollectManifestEO> collectManifestEOList = list.stream().filter(e->manifestId.equals(e.getParamsManifestId())).collect(Collectors.toList());
map.put(manifestId, collectManifestEOList);
}
return map;
}
@Override @Override
public boolean goBack(ParamsCollectManifestVO paramsCollectManifestVO) { public boolean goBack(ParamsCollectManifestVO paramsCollectManifestVO) {
if (StringUtils.isEmpty(paramsCollectManifestVO.getIds())) { if (StringUtils.isEmpty(paramsCollectManifestVO.getIds())) {
@@ -1490,7 +1527,24 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
updateEO.setState(CollectManifestStateEnum.SYNC_REPORT.getValue()); // 设置状态为:待工程接口人处理 updateEO.setState(CollectManifestStateEnum.SYNC_REPORT.getValue()); // 设置状态为:待工程接口人处理
updateEOList.add(updateEO); updateEOList.add(updateEO);
} }
return updateBatchById(updateEOList);
boolean isSuccess = updateBatchById(updateEOList);
// 判断清单是否已完成,修改清单状态
Map<String, Object> map = isCollectFinished(paramsManifestId);
Boolean finish = (Boolean) map.get("finish");
Date time = (Date) map.get("time");
if (finish) {
// 更新清单状态和完成时间
ParamsManifestEO updateParamsManifestEO = new ParamsManifestEO();
updateParamsManifestEO.setId(paramsManifestId);
updateParamsManifestEO.setState(ManifestStateEnum.FINISHED.getValue());
updateParamsManifestEO.setFinishTime(time);
paramsManifestEOService.updateById(updateParamsManifestEO);
}
return isSuccess;
} }
/** /**
@@ -58,6 +58,14 @@ public class ParamsCollectManifestHistoryEOServiceImpl extends ServiceImpl<Param
private IOSSFileService ossFileService; private IOSSFileService ossFileService;
private ParamsConfigDataHistoryEO getConfigDataEOByConfigIdAndCollectManifestId(String configId, String collectManifestId, List<ParamsConfigDataHistoryEO> paramsConfigDataEOList) {
List<ParamsConfigDataHistoryEO> configDataEOList = paramsConfigDataEOList.stream().filter(e-> configId.equals(e.getParamsConfigId()) && collectManifestId.equals(e.getParamsCollectManifestId())).collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(configDataEOList)) {
return configDataEOList.get(0);
}
return null;
}
/** /**
* 列表查询 * 列表查询
* *
@@ -69,6 +77,9 @@ public class ParamsCollectManifestHistoryEOServiceImpl extends ServiceImpl<Param
List<ParamsCollectManifestHistoryEO> list = paramsCollectManifestHistoryEOMapper.listInfo(paramsCollectManifestEO); // 查询固定列 List<ParamsCollectManifestHistoryEO> list = paramsCollectManifestHistoryEOMapper.listInfo(paramsCollectManifestEO); // 查询固定列
List<ParamsConfigHistoryEO> paramsConfigEOList = paramsConfigHistoryEOService.queryList(paramsManifestId); // 查询配置列 List<ParamsConfigHistoryEO> paramsConfigEOList = paramsConfigHistoryEOService.queryList(paramsManifestId); // 查询配置列
List<String> paramsConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList());
List<ParamsConfigDataHistoryEO> paramsConfigDataEOList = paramsConfigDataHistoryEOService.queryListByConfigIdList(paramsConfigIdList); // 查询所有配置数据
// 普通数据字典 // 普通数据字典
List<SysDictItem> dictItemList = new ArrayList<>(); List<SysDictItem> dictItemList = new ArrayList<>();
@@ -132,8 +143,9 @@ public class ParamsCollectManifestHistoryEOServiceImpl extends ServiceImpl<Param
paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置 paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置
Map<String, Object> configMap = new HashMap<>(); Map<String, Object> configMap = new HashMap<>();
String paramsConfigId = paramsConfigEO.getId(); String paramsConfigId = paramsConfigEO.getId();
ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataHistoryEOService.queryByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId); // 参数配置数据 // ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataHistoryEOService.queryByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId); // 参数配置数据
List<ParamsConfigDataVO> paramsConfigDataVOList = getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据 ParamsConfigDataHistoryEO paramsConfigDataHistoryEO = getConfigDataEOByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId, paramsConfigDataEOList); // 参数配置数据
List<ParamsConfigDataVO> paramsConfigDataVOList = getConfigDataVOList(controlType, paramsConfigEO, paramsConfigDataHistoryEO, collectManifestEO); // 重新组合配置数据
configMap.put("controlType", controlType); configMap.put("controlType", controlType);
configMap.put("list", paramsConfigDataVOList); configMap.put("list", paramsConfigDataVOList);
manifestMap.put(paramsConfigEO.getId(), configMap); manifestMap.put(paramsConfigEO.getId(), configMap);
@@ -166,7 +178,7 @@ public class ParamsCollectManifestHistoryEOServiceImpl extends ServiceImpl<Param
* @param paramsCollectManifestEO * @param paramsCollectManifestEO
* @return * @return
*/ */
private List<ParamsConfigDataVO> getConfigDataVOList(String controlType, ParamsConfigEO paramsConfigEO, ParamsConfigDataEO paramsConfigDataEO, ParamsCollectManifestHistoryEO paramsCollectManifestEO) { private List<ParamsConfigDataVO> getConfigDataVOList(String controlType, ParamsConfigEO paramsConfigEO, ParamsConfigDataHistoryEO paramsConfigDataEO, ParamsCollectManifestHistoryEO paramsCollectManifestEO) {
List<ParamsConfigDataVO> paramsConfigDataVOList = new ArrayList<>(); List<ParamsConfigDataVO> paramsConfigDataVOList = new ArrayList<>();
String templateId = null; String templateId = null;
String templateName = null; String templateName = null;
@@ -1,5 +1,6 @@
package com.jero.modules.cert.collect.service.impl; package com.jero.modules.cert.collect.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.modules.cert.collect.entity.ParamsConfigDataEO; import com.jero.modules.cert.collect.entity.ParamsConfigDataEO;
@@ -107,4 +108,19 @@ public class ParamsConfigDataEOServiceImpl extends ServiceImpl<ParamsConfigDataE
public List<ParamsConfigDataEO> queryList() { public List<ParamsConfigDataEO> queryList() {
return list(); return list();
} }
/**
* 查询清单的所有配置数据
* @param configIdList
* @return
*/
@Override
public List<ParamsConfigDataEO> queryListByConfigIdList(List<String> configIdList) {
if (CollectionUtil.isNotEmpty(configIdList)) {
LambdaQueryWrapper<ParamsConfigDataEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(ParamsConfigDataEO::getParamsConfigId, configIdList);
return list(queryWrapper);
}
return null;
}
} }
@@ -1,12 +1,16 @@
package com.jero.modules.cert.collect.service.impl; package com.jero.modules.cert.collect.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.modules.cert.collect.entity.ParamsConfigDataEO;
import com.jero.modules.cert.collect.entity.ParamsConfigDataHistoryEO; import com.jero.modules.cert.collect.entity.ParamsConfigDataHistoryEO;
import com.jero.modules.cert.collect.mapper.ParamsConfigDataHistoryEOMapper; import com.jero.modules.cert.collect.mapper.ParamsConfigDataHistoryEOMapper;
import com.jero.modules.cert.collect.service.IParamsConfigDataHistoryEOService; import com.jero.modules.cert.collect.service.IParamsConfigDataHistoryEOService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* @Description: 参数配置数据历史版本 * @Description: 参数配置数据历史版本
* @Author: jero-boot * @Author: jero-boot
@@ -31,4 +35,19 @@ public class ParamsConfigDataHistoryEOServiceImpl extends ServiceImpl<ParamsConf
getOne(queryWrapper); getOne(queryWrapper);
return getOne(queryWrapper); return getOne(queryWrapper);
} }
/**
* 查询清单的所有配置数据
* @param configIdList
* @return
*/
@Override
public List<ParamsConfigDataHistoryEO> queryListByConfigIdList(List<String> configIdList) {
if (CollectionUtil.isNotEmpty(configIdList)) {
LambdaQueryWrapper<ParamsConfigDataHistoryEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(ParamsConfigDataHistoryEO::getParamsConfigId, configIdList);
return list(queryWrapper);
}
return null;
}
} }
@@ -107,9 +107,11 @@ public class ParamsConfigEOServiceImpl extends ServiceImpl<ParamsConfigEOMapper,
}); });
// saveBatch(addConfigList); // saveBatch(addConfigList);
// 修改所有参数项状态为:待发起收集 // 修改所有参数项状态为:待发起收集
if (CollectionUtil.isNotEmpty(paramsCollectManifestEOList)) { List<ParamsCollectManifestEO> updateList = paramsCollectManifestEOList.stream()
.filter(e-> !CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.getState())).collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(updateList)) {
List<ParamsCollectManifestEO> updateCollectManifestEOList = new ArrayList<>(); List<ParamsCollectManifestEO> updateCollectManifestEOList = new ArrayList<>();
paramsCollectManifestEOList.forEach(collectManifestEO -> { updateList.forEach(collectManifestEO -> {
ParamsCollectManifestEO updateCollectManifestEO = new ParamsCollectManifestEO(); ParamsCollectManifestEO updateCollectManifestEO = new ParamsCollectManifestEO();
updateCollectManifestEO.setId(collectManifestEO.getId()); updateCollectManifestEO.setId(collectManifestEO.getId());
updateCollectManifestEO.setState(CollectManifestStateEnum.WAIT_COLLECT.getValue()); updateCollectManifestEO.setState(CollectManifestStateEnum.WAIT_COLLECT.getValue());
@@ -80,6 +80,10 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
@Autowired @Autowired
private IParamsConfigEOService paramsConfigEOService; private IParamsConfigEOService paramsConfigEOService;
@Autowired
private IParamsConfigDataEOService paramsConfigDataEOService;
/** /**
@@ -288,8 +292,12 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
IPage rows = paramsManifestEOMapper.pageInfo(page, paramsManifestEO); IPage rows = paramsManifestEOMapper.pageInfo(page, paramsManifestEO);
// 根据参数项状态更新清单状态 // 根据参数项状态更新清单状态
List<ParamsManifestEO> paramsManifestEOList = rows.getRecords(); List<ParamsManifestEO> paramsManifestEOList = rows.getRecords();
if (CollectionUtil.isNotEmpty(paramsManifestEOList)) {
List<String> manifestIdList = paramsManifestEOList.stream().map(ParamsManifestEO::getId).collect(Collectors.toList());
Map<String, List<ParamsCollectManifestEO>> manifestMap = paramsCollectManifestEOService.queryByManifestIdList(manifestIdList);
paramsManifestEOList.forEach(manifestEO -> { paramsManifestEOList.forEach(manifestEO -> {
Map<String, Object> map = paramsCollectManifestEOService.isCollectFinished(manifestEO.getId()); /*Map<String, Object> map = paramsCollectManifestEOService.isCollectFinished(manifestEO.getId());
Boolean finish = (Boolean) map.get("finish"); Boolean finish = (Boolean) map.get("finish");
Date time = (Date) map.get("time"); Date time = (Date) map.get("time");
if (finish) { if (finish) {
@@ -304,8 +312,6 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
updateById(updateParamsManifestEO); updateById(updateParamsManifestEO);
} else { } else {
manifestEO.setState(ManifestStateEnum.COLLECTING.getValue());
manifestEO.setFinishTime(null);
if (ManifestStateEnum.FINISHED.getValue().equals(manifestEO.getState())) { if (ManifestStateEnum.FINISHED.getValue().equals(manifestEO.getState())) {
// 更新清单状态和完成时间 // 更新清单状态和完成时间
ParamsManifestEO updateParamsManifestEO = new ParamsManifestEO(); ParamsManifestEO updateParamsManifestEO = new ParamsManifestEO();
@@ -314,19 +320,29 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
updateParamsManifestEO.setFinishTime(null); updateParamsManifestEO.setFinishTime(null);
updateById(updateParamsManifestEO); updateById(updateParamsManifestEO);
} }
} manifestEO.setState(ManifestStateEnum.COLLECTING.getValue());
manifestEO.setFinishTime(null);
}*/
// 添加配置标识,清单参数项状态为 待发起、变更时,可添加配置 // 添加配置标识,清单参数项状态为 待发起、变更时,可添加配置
boolean configFlag = paramsCollectManifestEOService.getManifestConfigFlag(manifestEO.getId()); boolean configFlag = getManifestConfigFlag(manifestMap.get(manifestEO.getId()));
manifestEO.setConfigFlag(configFlag); manifestEO.setConfigFlag(configFlag);
}); });
}
return rows; return rows;
} }
@Autowired private boolean getManifestConfigFlag(List<ParamsCollectManifestEO> list) {
private IParamsConfigDataEOService paramsConfigDataEOService; int number = (int) list.stream().filter(e->CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.getState())
|| CollectManifestStateEnum.CHANGE.getValue().equals(e.getState())).count();
if (number == list.size() && list.size() > 0) {
return true;
} else {
return false;
}
}
/** /**
* 变更扩展 * 变更扩展
@@ -468,6 +484,7 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
updateManifestEO.setId(id); updateManifestEO.setId(id);
updateManifestEO.setVersion(paramsManifestEO.getVersion() + 1); updateManifestEO.setVersion(paramsManifestEO.getVersion() + 1);
updateManifestEO.setParamsTemplatePublishVersion(newestVersion); updateManifestEO.setParamsTemplatePublishVersion(newestVersion);
updateManifestEO.setState(ManifestStateEnum.COLLECTING.getValue()); // 变更扩展后,清单状态为收集中
return updateById(updateManifestEO); return updateById(updateManifestEO);
} }
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.common.api.vo.Result; import com.jero.common.api.vo.Result;
import com.jero.common.aspect.annotation.AutoLog; import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.constant.enums.CutEnum;
import com.jero.common.system.base.controller.JeroController; import com.jero.common.system.base.controller.JeroController;
import com.jero.modules.cert.template.entity.ParamsTemplateEO; import com.jero.modules.cert.template.entity.ParamsTemplateEO;
import com.jero.modules.cert.template.service.IParamsTemplateEOService; import com.jero.modules.cert.template.service.IParamsTemplateEOService;
@@ -188,10 +189,15 @@ public class ParamsTemplateEOController extends JeroController<ParamsTemplateEO,
@GetMapping(value = "/copyById") @GetMapping(value = "/copyById")
@RequiresPermissions("params:template:copy") @RequiresPermissions("params:template:copy")
public Result<?> copyById(@RequestParam(name="id") String id, public Result<?> copyById(@RequestParam(name="id") String id,
@RequestParam(name="paramsTemplateName") String paramsTemplateName) { @RequestParam(name="paramsTemplateName") String paramsTemplateName,
@RequestParam(name="cut") String cut) {
ParamsTemplateEO paramsTemplateEO = paramsTemplateEOService.copyById(id, paramsTemplateName); ParamsTemplateEO paramsTemplateEO = paramsTemplateEOService.copyById(id, paramsTemplateName);
if (CutEnum.EN.getValue().equals(cut)) {
return Result.OK("Copy successful", paramsTemplateEO);
} else {
return Result.OK("复制成功", paramsTemplateEO); return Result.OK("复制成功", paramsTemplateEO);
} }
}
/** /**
@@ -8,8 +8,8 @@ import org.apache.commons.lang3.StringUtils;
*/ */
public enum GatherResultEnum { public enum GatherResultEnum {
UNDERWAY("进行中","underway","underway"), UNDERWAY("进行中","Underway","Underway"),
COMPLETED("已完成","completed","completed"), COMPLETED("已完成","Completed","Completed"),
; ;
@@ -0,0 +1,64 @@
package com.jero.modules.lawsOpinionGather.job;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jero.common.api.vo.Result;
import com.jero.modules.lawsOpinionGather.entity.LawsOpinionGatherEO;
import com.jero.modules.lawsOpinionGather.enums.GatherResultEnum;
import com.jero.modules.lawsOpinionGather.service.ILawsOpinionGatherEOService;
import com.jero.modules.wkflow.feginClient.WorkFlowFeignClient;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.jeecg.modules.jmreport.common.constant.CommonConstant;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* 法规意见收集表 - 定时器
* 作用:当前日期大于等于截止日志的时候,把该数据的收集结果,更新为已完成,同时把当前这条数据的所有待办任务提交
*/
@Slf4j
public class LawsOpinionGatherJob implements Job {
@Autowired
private ILawsOpinionGatherEOService lawsOpinionGatherEOService;
@Autowired
private WorkFlowFeignClient workFlowFeignClient;
@Override
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
log.info("法规意见收集流程,定时任务开启 =====================================================");
QueryWrapper<LawsOpinionGatherEO> lawsOpinionGatherEOQueryWrapper = new QueryWrapper<>();
lawsOpinionGatherEOQueryWrapper.lambda().eq(LawsOpinionGatherEO::getGatherResult, GatherResultEnum.UNDERWAY.getValue());
List<LawsOpinionGatherEO> lawsOpinionGatherEOList = this.lawsOpinionGatherEOService.list(lawsOpinionGatherEOQueryWrapper);
if (CollectionUtils.isNotEmpty(lawsOpinionGatherEOList)) {
Date currentDate = new Date();
List<LawsOpinionGatherEO> updateLawsOpinionGatherEOList = lawsOpinionGatherEOList.stream().filter(e -> {
boolean flag = false;
if(currentDate.after(e.getEndTime())){
flag = true;
}
return flag;
}).collect(Collectors.toList());
if(CollectionUtils.isNotEmpty(updateLawsOpinionGatherEOList)){
List<String> actiProcInstIdList = updateLawsOpinionGatherEOList.stream().map(LawsOpinionGatherEO::getActiProcInstId).distinct().collect(Collectors.toList());
String actiProcInstIds = StringUtils.join(actiProcInstIdList,",");
//将这些流程实例下的待办任务提交
Result<String> result = this.workFlowFeignClient.completeTaskByPids(actiProcInstIds);
if(result.getCode().equals(CommonConstant.SC_OK_200)){
updateLawsOpinionGatherEOList.forEach(lawsOpinionGatherEO -> {
lawsOpinionGatherEO.setGatherResult(GatherResultEnum.COMPLETED.getValue());
});
this.lawsOpinionGatherEOService.updateBatchById(updateLawsOpinionGatherEOList);
}
}
}
log.info("法规意见收集流程,定时任务开启 =====================================================");
}
}
@@ -53,8 +53,9 @@ public class LawsMonthlyReportTitleTemplateEOController extends JeroController<L
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) { HttpServletRequest req) {
QueryWrapper<LawsMonthlyReportTitleTemplateEO> queryWrapper = QueryGenerator.initQueryWrapper(lawsMonthlyReportTitleTemplateEO, req.getParameterMap()); QueryWrapper<LawsMonthlyReportTitleTemplateEO> queryWrapper = QueryGenerator.initQueryWrapper(lawsMonthlyReportTitleTemplateEO, req.getParameterMap());
Page<LawsMonthlyReportTitleTemplateEO> page = new Page<LawsMonthlyReportTitleTemplateEO>(pageNo, pageSize); // Page<LawsMonthlyReportTitleTemplateEO> page = new Page<LawsMonthlyReportTitleTemplateEO>(pageNo, pageSize);
IPage<LawsMonthlyReportTitleTemplateEO> pageList = lawsMonthlyReportTitleTemplateEOService.page(page, queryWrapper); // IPage<LawsMonthlyReportTitleTemplateEO> pageList = lawsMonthlyReportTitleTemplateEOService.page(page, queryWrapper);
IPage<LawsMonthlyReportTitleTemplateEO> pageList = lawsMonthlyReportTitleTemplateEOService.getPageInfo(pageNo,pageSize, queryWrapper);
return Result.OK(pageList); return Result.OK(pageList);
} }
@@ -167,4 +168,17 @@ public class LawsMonthlyReportTitleTemplateEOController extends JeroController<L
return super.importExcel(request, response, LawsMonthlyReportTitleTemplateEO.class); return super.importExcel(request, response, LawsMonthlyReportTitleTemplateEO.class);
} }
/**
* 列表查询
*
* @return
*/
@AutoLog(value = "月报标题模板-列表查询")
@ApiOperation(value="月报标题模板-列表查询", notes="月报标题模板-列表查询")
@GetMapping(value = "/oneMenu")
public Result<List<LawsMonthlyReportTitleTemplateEO>> OneMenuList() {
List<LawsMonthlyReportTitleTemplateEO> list = lawsMonthlyReportTitleTemplateEOService.OneMenuList();
return Result.OK(list);
}
} }
@@ -1,21 +1,21 @@
package com.jero.modules.report.entity; package com.jero.modules.report.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import com.jero.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/** /**
@@ -76,4 +76,14 @@ public class LawsMonthlyReportTitleTemplateEO implements Serializable {
@ApiModelProperty(value = "英文标题") @ApiModelProperty(value = "英文标题")
private java.lang.String titleEn; private java.lang.String titleEn;
@TableField(exist = false)
private List<LawsMonthlyReportTitleTemplateEO> children = new ArrayList<>();
//标识(上移-->0,下移-->1)
@TableField(exist = false)
private String flag;
//排序
private int sort;
} }
@@ -11,5 +11,6 @@
<result column="parent_id" property="parentId" /> <result column="parent_id" property="parentId" />
<result column="title_cn" property="titleCn" /> <result column="title_cn" property="titleCn" />
<result column="title_en" property="titleEn" /> <result column="title_en" property="titleEn" />
<result column="sort" property="sort" />
</resultMap> </resultMap>
</mapper> </mapper>
@@ -1,7 +1,10 @@
package com.jero.modules.report.service; package com.jero.modules.report.service;
import com.jero.modules.report.entity.LawsMonthlyReportTitleTemplateEO; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.report.entity.LawsMonthlyReportTitleTemplateEO;
import java.util.List; import java.util.List;
/** /**
@@ -58,4 +61,18 @@ public interface ILawsMonthlyReportTitleTemplateEOService extends IService<LawsM
* @return * @return
*/ */
List<LawsMonthlyReportTitleTemplateEO> queryList(); List<LawsMonthlyReportTitleTemplateEO> queryList();
/**
* 分页
* @param pageNo
* @param pageSize
* @param queryWrapper
* @return
*/
IPage<LawsMonthlyReportTitleTemplateEO> getPageInfo(Integer pageNo,Integer pageSize, QueryWrapper<LawsMonthlyReportTitleTemplateEO> queryWrapper);
/**
* 以及菜单
*/
List<LawsMonthlyReportTitleTemplateEO> OneMenuList();
} }
@@ -1,12 +1,22 @@
package com.jero.modules.report.service.impl; package com.jero.modules.report.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
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.jero.modules.report.entity.LawsMonthlyReportTitleTemplateEO; import com.jero.modules.report.entity.LawsMonthlyReportTitleTemplateEO;
import com.jero.modules.report.mapper.LawsMonthlyReportTitleTemplateEOMapper; import com.jero.modules.report.mapper.LawsMonthlyReportTitleTemplateEOMapper;
import com.jero.modules.report.service.ILawsMonthlyReportTitleTemplateEOService; import com.jero.modules.report.service.ILawsMonthlyReportTitleTemplateEOService;
import com.jero.modules.system.util.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import java.util.List;
import java.util.stream.Collectors;
/** /**
* @Description: 月报标题模板 * @Description: 月报标题模板
@@ -25,6 +35,28 @@ public class LawsMonthlyReportTitleTemplateEOServiceImpl extends ServiceImpl<Law
*/ */
@Override @Override
public void add(LawsMonthlyReportTitleTemplateEO lawsMonthlyReportTitleTemplateEO) { public void add(LawsMonthlyReportTitleTemplateEO lawsMonthlyReportTitleTemplateEO) {
List<LawsMonthlyReportTitleTemplateEO> lawsMonthlyReportTitleTemplateEOS = this.list();
List<LawsMonthlyReportTitleTemplateEO> parent = lawsMonthlyReportTitleTemplateEOS.stream().filter(e -> StringUtils.isBlank(e.getParentId())).collect(Collectors.toList());
List<LawsMonthlyReportTitleTemplateEO> children = lawsMonthlyReportTitleTemplateEOS.stream().filter(e -> StringUtils.isNotBlank(e.getParentId())).collect(Collectors.toList());
int sort = 0;
if(StringUtils.isBlank(lawsMonthlyReportTitleTemplateEO.getParentId())){
if(parent.size() == 0){
lawsMonthlyReportTitleTemplateEO.setSort(0);
}else{
List<Integer> sortList = parent.stream().map(LawsMonthlyReportTitleTemplateEO::getSort).collect(Collectors.toList());
Collections.sort(sortList);
sort = sortList.get(sortList.size()-1) + 1;
}
}else{
if(children.size() == 0){
lawsMonthlyReportTitleTemplateEO.setSort(0);
}else{
List<Integer> sortList = parent.stream().map(LawsMonthlyReportTitleTemplateEO::getSort).collect(Collectors.toList());
Collections.sort(sortList);
sort = sortList.get(sortList.size()-1) + 1;
}
}
lawsMonthlyReportTitleTemplateEO.setSort(sort);
Date now = new Date(); Date now = new Date();
lawsMonthlyReportTitleTemplateEO.setCreateTime(now); lawsMonthlyReportTitleTemplateEO.setCreateTime(now);
lawsMonthlyReportTitleTemplateEO.setUpdateTime(now); lawsMonthlyReportTitleTemplateEO.setUpdateTime(now);
@@ -86,4 +118,71 @@ public class LawsMonthlyReportTitleTemplateEOServiceImpl extends ServiceImpl<Law
public List<LawsMonthlyReportTitleTemplateEO> queryList() { public List<LawsMonthlyReportTitleTemplateEO> queryList() {
return list(); return list();
} }
@Override
public IPage<LawsMonthlyReportTitleTemplateEO> getPageInfo( Integer pageNo,Integer pageSize,QueryWrapper<LawsMonthlyReportTitleTemplateEO> queryWrapper) {
List<LawsMonthlyReportTitleTemplateEO> lawsMonthlyReportTitleTemplateEOS = this.list();
List<LawsMonthlyReportTitleTemplateEO> parentList = lawsMonthlyReportTitleTemplateEOS.stream()
.filter(e -> StringUtils.isBlank(e.getParentId())).collect(Collectors.toList());
Collections.sort(parentList, new Comparator<LawsMonthlyReportTitleTemplateEO>() {
@Override
public int compare(LawsMonthlyReportTitleTemplateEO p1, LawsMonthlyReportTitleTemplateEO p2) {
return String.valueOf(p1.getSort()).compareTo(String.valueOf(p2.getSort()));
}
});
for (LawsMonthlyReportTitleTemplateEO lawsMonthlyReportTitleTemplateEO : parentList) {
List<LawsMonthlyReportTitleTemplateEO> children = lawsMonthlyReportTitleTemplateEOS.stream()
.filter(e -> lawsMonthlyReportTitleTemplateEO.getId().equals(e.getParentId())).collect(Collectors.toList());
if(children.size() != 0){
Collections.sort(children, new Comparator<LawsMonthlyReportTitleTemplateEO>() {
@Override
public int compare(LawsMonthlyReportTitleTemplateEO p1, LawsMonthlyReportTitleTemplateEO p2) {
return String.valueOf(p1.getSort()).compareTo(String.valueOf(p2.getSort()));
}
});
lawsMonthlyReportTitleTemplateEO.setChildren(children);
}
}
Page pages = getPages(pageNo, pageSize, parentList);
return pages;
}
/**
* 以及菜单
* @return
*/
@Override
public List<LawsMonthlyReportTitleTemplateEO> OneMenuList() {
LambdaQueryWrapper<LawsMonthlyReportTitleTemplateEO> wrapper = new LambdaQueryWrapper<>();
wrapper.isNull(LawsMonthlyReportTitleTemplateEO::getParentId);
return this.list(wrapper);
}
public Page getPages(Integer currentPage, Integer pageSize, List<LawsMonthlyReportTitleTemplateEO> list){
Page page =new Page();
if(list==null){
return null;
}
int size = list.size();
if(pageSize > size){
pageSize = size;
}
if(pageSize!=0){
//求出最⼤页数,防⽌currentPage越界
int maxPage = size % pageSize ==0? size / pageSize : size / pageSize +1;
if(currentPage > maxPage){
currentPage = maxPage;
}
}
//当前页第⼀条数据的下标
int curIdx = currentPage >1?(currentPage -1)* pageSize :0;
List pageList =new ArrayList();
//将当前页的数据放进pageList
for(int i =0; i < pageSize && curIdx + i < size; i++){
pageList.add(list.get(curIdx + i));
}
page.setCurrent(currentPage).setSize(pageSize).setTotal(list.size()).setRecords(pageList);
return page;
}
} }
@@ -135,4 +135,6 @@ public interface WorkFlowFeignClient {
@RequestMapping(value = "/bat-wkflow/task/queryProcessHistoryByPrcId",method = RequestMethod.GET) @RequestMapping(value = "/bat-wkflow/task/queryProcessHistoryByPrcId",method = RequestMethod.GET)
List<Map<String, Object>> queryProcessHistoryByPrcId(@RequestParam("prcId") String prcId, @RequestParam("cut") String cut,@RequestParam("prcType") String prcType,@RequestParam(value="sortWord",required = false)String sortWord, @RequestParam(value="shunxu",required = false) String shunxu); List<Map<String, Object>> queryProcessHistoryByPrcId(@RequestParam("prcId") String prcId, @RequestParam("cut") String cut,@RequestParam("prcType") String prcType,@RequestParam(value="sortWord",required = false)String sortWord, @RequestParam(value="shunxu",required = false) String shunxu);
@RequestMapping(value = "/bat-wkflow/task/completeTaskByPids",method = RequestMethod.GET)
Result<String> completeTaskByPids(@RequestParam("actiProcInstIds") String actiProcInstIds);
} }
+2
View File
@@ -1028,6 +1028,7 @@ module.exports = {
FNumber: 'Number', FNumber: 'Number',
NNNiONumber: 'Number', NNNiONumber: 'Number',
NNiONumber: 'NIO Number', NNiONumber: 'NIO Number',
ParameterNo: 'Number',
NRequired: 'Is Must', NRequired: 'Is Must',
NParameterName: 'Params Name', NParameterName: 'Params Name',
NtechnicalField: 'Technical Field', NtechnicalField: 'Technical Field',
@@ -1063,4 +1064,5 @@ module.exports = {
Templatenamelist: 'Template name - parameter item collection list', Templatenamelist: 'Template name - parameter item collection list',
newNiONumber: 'Number', newNiONumber: 'Number',
English: 'English', English: 'English',
requiredParametersEmpty:'Required parameters cannot be empty',
} }
+2
View File
@@ -1033,6 +1033,7 @@ module.exports = {
FNumber: '账号', FNumber: '账号',
NNNiONumber: 'NIO编号', NNNiONumber: 'NIO编号',
NNiONumber: 'NIO编号', NNiONumber: 'NIO编号',
ParameterNo: '编号',
NRequired: '是否必填', NRequired: '是否必填',
NParameterName: '参数名称', NParameterName: '参数名称',
NtechnicalField: '技术领域', NtechnicalField: '技术领域',
@@ -1067,4 +1068,5 @@ module.exports = {
Templatenamelist: '模板名称-参数项收集清单', Templatenamelist: '模板名称-参数项收集清单',
newNiONumber: 'NIO编号', newNiONumber: 'NIO编号',
English:'英文', English:'英文',
requiredParametersEmpty:'必填参数不能为空',
} }
@@ -98,7 +98,8 @@
<div v-if='detailDate.controlType === "2"' class='add_flex'> <div v-if='detailDate.controlType === "2"' class='add_flex'>
<div v-for='(item,index) in detailDate.list' :key='index' class='add-width'> <div v-for='(item,index) in detailDate.list' :key='index' class='add-width'>
<div v-if='item.type === "pull"'> <div v-if='item.type === "pull"'>
<a-select v-model="item.dataValue" class='selectWid' :disabled="item.isLock == '1' ? true: false" allowClear> <a-select v-model="item.dataValue" class='selectWid' :disabled="item.isLock == '1' ? true: false"
allowClear>
<a-select-option v-for="(item, key) in item.controlValue" :key="key" :value="item.value"> <a-select-option v-for="(item, key) in item.controlValue" :key="key" :value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.label "> <span style="display: inline-block;width: 100%" :title=" item.label ">
{{ item.label }} {{ item.label }}
@@ -112,7 +113,8 @@
<div v-if='detailDate.controlType === "3"' class='add_flex'> <div v-if='detailDate.controlType === "3"' class='add_flex'>
<div v-for='(item,index) in detailDate.list' :key='index' style='flex: 1' class='add-width'> <div v-for='(item,index) in detailDate.list' :key='index' style='flex: 1' class='add-width'>
<div v-if='item.type==="pull_more"'> <div v-if='item.type==="pull_more"'>
<a-select v-model="item.dataValue" mode="multiple" class='selectWid' :disabled="item.isLock == '1' ? true: false" allowClear> <a-select v-model="item.dataValue" mode="multiple" class='selectWid'
:disabled="item.isLock == '1' ? true: false" allowClear>
<a-select-option v-for="(item, key) in item.controlValue" :key="key" :value="item.value"> <a-select-option v-for="(item, key) in item.controlValue" :key="key" :value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.label "> <span style="display: inline-block;width: 100%" :title=" item.label ">
{{ item.label }} {{ item.label }}
@@ -138,7 +140,8 @@
<div v-if='detailDate.controlType === "5"' class='add_flex'> <div v-if='detailDate.controlType === "5"' class='add_flex'>
<div v-for='(item,index) in detailDate.list' :key='index' class='add-width'> <div v-for='(item,index) in detailDate.list' :key='index' class='add-width'>
<div v-if='item.type==="pull"'> <div v-if='item.type==="pull"'>
<a-select v-model="item.dataValue" class='selectWid' :disabled="item.isLock == '1' ? true: false" allowClear> <a-select v-model="item.dataValue" class='selectWid' :disabled="item.isLock == '1' ? true: false"
allowClear>
<a-select-option v-for="(itemin, key) in item.controlValue" :key="key" :value="itemin.value"> <a-select-option v-for="(itemin, key) in item.controlValue" :key="key" :value="itemin.value">
<span style="display: inline-block;width: 100%" :title=" itemin.label "> <span style="display: inline-block;width: 100%" :title=" itemin.label ">
{{ itemin.label }} {{ itemin.label }}
@@ -328,7 +331,8 @@
</div> </div>
</div> </div>
<div v-if='item.type==="pull_more"'> <div v-if='item.type==="pull_more"'>
<a-select v-model="item.dataValue" mode="multiple" class='selectWid' :disabled="item.isLock == '1' ? true: false" allowClear> <a-select v-model="item.dataValue" mode="multiple" class='selectWid'
:disabled="item.isLock == '1' ? true: false" allowClear>
<a-select-option v-for="(item, key) in item.controlValue" :key="key" :value="item.value"> <a-select-option v-for="(item, key) in item.controlValue" :key="key" :value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.label "> <span style="display: inline-block;width: 100%" :title=" item.label ">
{{ item.label }} {{ item.label }}
@@ -442,7 +446,8 @@
<div v-if='detailDate.controlType === "8"' class='add_flex'> <div v-if='detailDate.controlType === "8"' class='add_flex'>
<div v-for='(item,index) in detailDate.list' :key='index' class='add-width'> <div v-for='(item,index) in detailDate.list' :key='index' class='add-width'>
<div v-if='item.type==="pull"'> <div v-if='item.type==="pull"'>
<a-select v-model="item.dataValue" class='selectWid' :disabled="item.isLock == '1' ? true: false" allowClear> <a-select v-model="item.dataValue" class='selectWid' :disabled="item.isLock == '1' ? true: false"
allowClear>
<a-select-option v-for="(itemin, key) in item.controlValue" :key="key" :value="itemin.value"> <a-select-option v-for="(itemin, key) in item.controlValue" :key="key" :value="itemin.value">
<span style="display: inline-block;width: 100%" :title=" itemin.label "> <span style="display: inline-block;width: 100%" :title=" itemin.label ">
{{ itemin.label }} {{ itemin.label }}
@@ -463,7 +468,8 @@
<div v-if='detailDate.controlType === "9"' class='add_flex'> <div v-if='detailDate.controlType === "9"' class='add_flex'>
<div v-for='(item,index) in detailDate.list' :key='index' class='add-width'> <div v-for='(item,index) in detailDate.list' :key='index' class='add-width'>
<div v-if='item.type==="pull_more"'> <div v-if='item.type==="pull_more"'>
<a-select v-model="item.dataValue" mode="multiple" class='selectWid' :disabled="item.isLock == '1' ? true: false" allowClear> <a-select v-model="item.dataValue" mode="multiple" class='selectWid'
:disabled="item.isLock == '1' ? true: false" allowClear>
<a-select-option v-for="(item, key) in item.controlValue" :key="key" :value="item.value"> <a-select-option v-for="(item, key) in item.controlValue" :key="key" :value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.label "> <span style="display: inline-block;width: 100%" :title=" item.label ">
{{ item.label }} {{ item.label }}
@@ -484,7 +490,8 @@
<div v-if='detailDate.controlType === "10"' class='add_flex'> <div v-if='detailDate.controlType === "10"' class='add_flex'>
<div v-for='(item,index) in detailDate.list' :key='index' class='add-width'> <div v-for='(item,index) in detailDate.list' :key='index' class='add-width'>
<div v-if='item.type==="pull"'> <div v-if='item.type==="pull"'>
<a-select v-model="item.dataValue" class='selectWid' :disabled="item.isLock == '1' ? true: false" allowClear> <a-select v-model="item.dataValue" class='selectWid' :disabled="item.isLock == '1' ? true: false"
allowClear>
<a-select-option v-for="(itemin, key) in item.controlValue" :key="key" :value="itemin.value"> <a-select-option v-for="(itemin, key) in item.controlValue" :key="key" :value="itemin.value">
<span style="display: inline-block;width: 100%" :title=" itemin.label "> <span style="display: inline-block;width: 100%" :title=" itemin.label ">
{{ itemin.label }} {{ itemin.label }}
@@ -590,13 +597,15 @@
</div> </div>
</div> </div>
</div> </div>
<uploadFileChangeDown ref="uploadFile" @uploadSuccess="uploadSuccess" :detailDate='detailDate'></uploadFileChangeDown> <uploadFileChangeDown ref="uploadFile" @uploadSuccess="uploadSuccess"
:detailDate='detailDate'></uploadFileChangeDown>
</div> </div>
</template> </template>
<script> <script>
import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage' import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage'
import uploadFileChangeDown from '@/components/uploadFileChangeDown/file' import uploadFileChangeDown from '@/components/uploadFileChangeDown/file'
export default { export default {
name: 'index', name: 'index',
props: { props: {
@@ -632,11 +641,6 @@ export default {
data.map(item => { data.map(item => {
attIdList.push(item.id || data.name) attIdList.push(item.id || data.name)
}) })
this.detailDate.list.forEach((item, index) => {
if(item.type === 'file') {
item.dataValue = attIdList.join(',')
}
})
/** 赋值给当前对应的表单文件 */ /** 赋值给当前对应的表单文件 */
// this.formInline[this.uploadName] = attIdList.join(',') // this.formInline[this.uploadName] = attIdList.join(',')
// this.formInline = { ...this.formInline } // this.formInline = { ...this.formInline }
@@ -647,8 +651,18 @@ export default {
// console.log('form',this.formInline) // console.log('form',this.formInline)
} }
this.detailDate.list.forEach((item, index) => {
if (item.type === 'file') {
item.dataValue = attIdList.join(',')
}
})
}, },
clickButtonToUpload(item) { clickButtonToUpload(item) {
if (item.isLock == '1') {
this.$refs.uploadFile.disabled = true
} else {
this.$refs.uploadFile.disabled = false
}
this.$refs.uploadFile.visible = true this.$refs.uploadFile.visible = true
getAction('sys/common/getFileInfos', { id: item.dataValue }).then((res) => { getAction('sys/common/getFileInfos', { id: item.dataValue }).then((res) => {
if (res.success) { if (res.success) {
@@ -657,7 +671,7 @@ export default {
this.$refs.uploadFile.perentHandleFunc() this.$refs.uploadFile.perentHandleFunc()
} }
}) })
}, }
}, },
watch: { watch: {
detailDate(newold, oldold) { detailDate(newold, oldold) {
@@ -696,27 +710,41 @@ export default {
text-align: right; text-align: right;
margin-top: 20px; margin-top: 20px;
} }
.add_flex { .add_flex {
display: flex; display: flex;
} }
/deep/ .box { /deep/ .box {
overflow: hidden; overflow: hidden;
} }
.add_flex_item { .add_flex_item {
width: 30%; width: 30%;
flex: 1; flex: 1;
} }
.selectWid { .selectWid {
min-width: 150px; min-width: 150px;
} }
.inputWid { .inputWid {
min-width: 150px; min-width: 150px;
} }
.add-width { .add-width {
width: 33%; width: 33%;
margin-right: 5px; margin-right: 5px;
} }
.add--number { .add--number {
width: 101%; width: 101%;
} }
.ant-input-disabled {
color: rgba(0, 0, 0, 0.65);
}
.ant-select-disabled{
color: rgba(0, 0, 0, 0.65);
}
</style> </style>
@@ -2,6 +2,7 @@
<div class='diolag-area'> <div class='diolag-area'>
<a-spin :spinning='spinLoading'> <a-spin :spinning='spinLoading'>
<a-form-model <a-form-model
@keyup.enter.native="searchQuery"
class='tag-module' class='tag-module'
ref='ruleForm' ref='ruleForm'
:model='form' :model='form'
@@ -2,7 +2,8 @@
<a-checkbox-group v-if="tagType=='checkbox'" @change="onChange" :value="arrayValue" :disabled="disabled"> <a-checkbox-group v-if="tagType=='checkbox'" @change="onChange" :value="arrayValue" :disabled="disabled">
<a-checkbox v-for="(item, key) in dictOptions" :key="key" :value="item.value"> <a-checkbox v-for="(item, key) in dictOptions" :key="key" :value="item.value">
<span :title='item.text||item.label'> <span :title='item.text||item.label'>
{{ (item.text && item.text.length > 6 ? item.text.slice(0, 5) + '...' : item.text) || (item.label && item.label.length > 6 ? item.label.slice(0, 5) + '...' : item.label) }} <!-- {{ (item.text && item.text.length > 6 ? item.text.slice(0, 20) + '...' : item.text) || (item.label && item.label.length > 6 ? item.label.slice(0, 10) + '...' : item.label) }}-->
{{ item.text || item.label}}
</span> </span>
</a-checkbox> </a-checkbox>
</a-checkbox-group> </a-checkbox-group>
@@ -1,22 +1,24 @@
<template> <template>
<div style="height: 100%"> <div style="height: 100%">
<div class="box"> <div class="box">
<!-- -->
<a-table <a-table
class="table" class="table"
rowKey="id" rowKey="id"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
:pagination="false" :pagination="false"
:scroll="{x: true}" :scroll="{x: '100%',y:'calc(100vh - 160px)'}"
:data-source="dataSource" :data-source="dataSource"
:loading="loading" :loading="loading"
sticky
:components="components"
:columns="columns" :columns="columns"
:rowClassName="rowClassName" :rowClassName="rowClassName"
:components="components"
@change="tableOnChange" @change="tableOnChange"
@onHeaderRow='onHeaderRow' @onHeaderRow='onHeaderRow'
> >
<span slot="titleName" slot-scope="text,record" :title="text"> <span slot="titleName" slot-scope="text,record" :title="text">
{{ text && text.length > 10 ? text.slice(0, 9) + '...' : text }} {{ text }}
</span> </span>
<div :slot="'titleName'+(index+1)" v-for="(item,index) in content"> <div :slot="'titleName'+(index+1)" v-for="(item,index) in content">
<span style='padding-right: 20px'>{{ item.db_field_txt }} </span> <span style='padding-right: 20px'>{{ item.db_field_txt }} </span>
@@ -26,7 +28,8 @@
<span slot="operationbtn" slot-scope="record"> <span slot="operationbtn" slot-scope="record">
<span v-if='currentPersonRole === "homo"'> <span v-if='currentPersonRole === "homo"'>
<!-- 认证工程师 --> <!-- 认证工程师 -->
<span v-if='record.state == "待发起收集" || record.state == "工程接口人退回" || record.state == "变更" || record.state == "Wait Collect" || record.state == "Sdt Back" || record.state == "Change"'> <span
v-if='record.state == "待发起收集" || record.state == "工程接口人退回" || record.state == "变更" || record.state == "Wait Collect" || record.state == "Sdt Back" || record.state == "Change"'>
<span <span
@click='ondataValueTobeinitiated(record)'>{{ (record.dataValue == null || record.dataValue == 'undefined')? '--': record.dataValue}}</span> @click='ondataValueTobeinitiated(record)'>{{ (record.dataValue == null || record.dataValue == 'undefined')? '--': record.dataValue}}</span>
</span> </span>
@@ -44,7 +47,8 @@
</a-table> </a-table>
</div> </div>
<!-- 修改工程接口人---> <!-- 修改工程接口人--->
<a-modal v-model="areaVisible" :title="$t('modifyprojectInterfacePerson')" width='500px' :footer="null"> <a-modal v-model="areaVisible" :title="$t('modifyprojectInterfacePerson')" width='620px' :footer="null"
@cancel="cancleImports">
<a-form-model <a-form-model
class='tag-module' class='tag-module'
ref='ruleForm' ref='ruleForm'
@@ -52,11 +56,13 @@
:rules='rules' :rules='rules'
:label-col='labelCol' :label-col='labelCol'
:wrapper-col='wrapperCol' :wrapper-col='wrapperCol'
> >
<a-row :gutter='24'> <a-row :gutter='24'>
<a-col :span='24'> <a-col :span='24'>
<a-form-model-item ref='region' :label="$t('engineeringInterfacePerson')" prop='querySdt'> <a-form-model-item ref='region' :label="$t('engineeringInterfacePerson')" prop='querySdt'>
<a-select allowClear :placeholder="$t('PleaseSelect')+$t('engineeringInterfacePerson')" v-model="Dateline.querySdt"> <a-select allowClear :placeholder="$t('PleaseSelect')+$t('engineeringInterfacePerson')"
v-model="Dateline.querySdt">
<a-select-option v-for="(item, key) in querySdtList" :key="key" :value="item.value"> <a-select-option v-for="(item, key) in querySdtList" :key="key" :value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.label "> <span style="display: inline-block;width: 100%" :title=" item.label ">
{{ item.label }} {{ item.label }}
@@ -174,7 +180,7 @@
x: col.width, x: col.width,
z: 1, z: 1,
axis: 'x', axis: 'x',
draggable: true, draggable: false,
resizable: false resizable: false
}, },
on: { on: {
@@ -213,7 +219,11 @@
form: {}, form: {},
rules: { rules: {
querySdt: [ querySdt: [
{ required: true, message: this.$t('PleaseSelect')+this.$t('engineeringInterfacePerson'), trigger: 'blur' } {
required: true,
message: this.$t('PleaseSelect') + this.$t('engineeringInterfacePerson'),
trigger: 'change'
}
] ]
}, },
wrapperCol: { wrapperCol: {
@@ -235,7 +245,12 @@
}, },
methods: { methods: {
rowClassName(row, index) { rowClassName(row, index) {
return row.changeFlag == '1'? 'yellow' : 'red' if (row.changeFlag == '1') {
return 'rowClassRedYellow'
}
if (row.delFlag == '1') {
return 'rowClassRed'
}
}, },
// 查看配置详细信息 // 查看配置详细信息
onClickSee(val) { onClickSee(val) {
@@ -322,11 +337,17 @@
// 工程接口人 取消 // 工程接口人 取消
cancleImports() { cancleImports() {
this.areaVisible = false this.areaVisible = false
this.$refs['ruleForm'].resetFields()
}, },
// 点击工程接口人的详情人员 有权限 // 点击工程接口人的详情人员 有权限
ondataValueTobeinitiated(record) { ondataValueTobeinitiated(record) {
this.areaVisible = true this.areaVisible = true
// this.$refs.ruleForm.clearValidate()
this.$nextTick(() => {
this.getquerySdtList(record) this.getquerySdtList(record)
})
this.$refs.ruleForm.clearValidate()
}, },
dataValueTobeinitiated() { dataValueTobeinitiated() {
this.$message.warning(this.$t('certifiedEngineer') + this.$t('and') + this.$t('Statusis') + this.$t('CollectionInitiated') + this.$t('ReturnedPerson') + this.$t('alteration') + this.$t('toHavePermission')) this.$message.warning(this.$t('certifiedEngineer') + this.$t('and') + this.$t('Statusis') + this.$t('CollectionInitiated') + this.$t('ReturnedPerson') + this.$t('alteration') + this.$t('toHavePermission'))
@@ -345,8 +366,8 @@
} }
getAction(this.url.getLoginUserType, params).then((res) => { getAction(this.url.getLoginUserType, params).then((res) => {
if (res.success) { if (res.success) {
this.getTableList() this.getTableList(res.result[0].value)
this.$emit('LoginUserType', res.result) this.$emit('LoginUserType', res.result, this.currentPersonRole)
} }
}) })
}, },
@@ -380,7 +401,8 @@
align: 'center', align: 'center',
ellipsis: true, ellipsis: true,
sorter: res.sort, sorter: res.sort,
sortOrder: res.db_field_txt sortOrder: res.db_field_txt,
width: 500
}) })
num++ num++
this.content.push(res) this.content.push(res)
@@ -395,10 +417,11 @@
dataIndex: res.db_field_name, dataIndex: res.db_field_name,
align: 'center', align: 'center',
ellipsis: true, ellipsis: true,
sorter: res.sort sorter: res.sort,
width: 160
}) })
this.columns[index].scopedSlots = { this.columns[index].scopedSlots = {
customRender: 'titleName', customRender: 'titleName'
} }
if (res.click) { if (res.click) {
// 工程接口人列表修改 // 工程接口人列表修改
@@ -426,7 +449,36 @@
// todo // todo
getAction(this.url.tableList, params).then((res) => { getAction(this.url.tableList, params).then((res) => {
if (res.success) { if (res.success) {
this.dataSource = res.result let tt = []
if (this.currentPersonRole !== 'dre') {
res.result.forEach((Obj) => {
Object.keys(Obj).forEach((item) => {
if (Obj[item] instanceof Object && Obj[item].controlType !== undefined) {
Obj[item].list.forEach((itemLi) => {
itemLi.isLock = 1
if (itemLi.type === 'pull_more') {
itemLi.dataValue = itemLi.dataValue === null ? [] : itemLi.dataValue.split(',')
}
})
}
})
tt.push(Obj)
})
} else {
res.result.forEach((Obj) => {
Object.keys(Obj).forEach((item) => {
if (Obj[item] instanceof Object && Obj[item].controlType !== undefined) {
Obj[item].list.forEach((itemLi) => {
if (itemLi.type === 'pull_more') {
itemLi.dataValue = itemLi.dataValue === null ? [] : itemLi.dataValue.split(',')
}
})
}
})
tt.push(Obj)
})
}
this.dataSource = tt
this.total = res.result.total this.total = res.result.total
this.selectedRowKeys = [] this.selectedRowKeys = []
this.loading = false this.loading = false
@@ -435,7 +487,10 @@
} }
}) })
}, },
getTableList() { cancleoperationFailed() {
this.selectedRowKeys = []
},
getTableList(currentPersonRole) {
// todo // todo
let paramsManifestid let paramsManifestid
let url let url
@@ -444,13 +499,12 @@
paramsManifestid = this.$route.query.id paramsManifestid = this.$route.query.id
url = this.url.tableList url = this.url.tableList
} else { } else {
console.log('历史版本呢')
// 历史版本 // 历史版本
paramsManifestid = this.$route.query.it paramsManifestid = this.$route.query.it
url = 'params/collectManifestHistory/list' url = 'params/collectManifestHistory/list'
} }
let params = { let params = {
userTypes: this.currentPersonRole, userTypes: this.currentPersonRole || currentPersonRole,
paramsManifestId: paramsManifestid, paramsManifestId: paramsManifestid,
...this.formInline ...this.formInline
} }
@@ -612,6 +666,18 @@
margin-top: 20px; margin-top: 20px;
} }
/deep/ .ant-table-tbody .yellow {
background-color: #ffff001f !important;
height: 40px !important;
border: none !important;
padding: 0 !important;
}
</style>
<style>
.resize-table-th {
position: relative;
}
.table-draggable-handle { .table-draggable-handle {
/* width: 10px !important; */ /* width: 10px !important; */
height: 100% !important; height: 100% !important;
@@ -624,14 +690,10 @@
transform: none !important; transform: none !important;
bottom: 0; bottom: 0;
} }
.rowClassRed{
.resize-table-th { background: #f3d9de;
position: relative;
} }
/deep/.ant-table-tbody .yellow { .rowClassRedYellow{
background-color: #ffff001f !important; background: yellow;
height: 40px !important;
border: none !important;
padding: 0 !important;
} }
</style> </style>
@@ -5,7 +5,8 @@
<span style='flex: 1'> <span style='flex: 1'>
{{ this.template.templateName === undefined || this.template.templateName === null? '暂无模板': this.template.templateName }} {{ this.template.templateName === undefined || this.template.templateName === null? '暂无模板': this.template.templateName }}
</span> </span>
<span style='flex: none' @click='download' v-if='this.template.templateName !== undefined && this.template.templateName !== null'> <span style='flex: none' @click='download'
v-if='this.template.templateName !== undefined && this.template.templateName !== null'>
<a-icon type="download"/> <a-icon type="download"/>
</span> </span>
</div> </div>
@@ -60,13 +61,12 @@ export default {
} }
}, },
created() { created() {
this.detailDate.list.forEach((item) => {
console.log('ppp')
if(item.type == 'file' && item.isLock == '1') {
this.disabled = true
}
})
console.log(this.detailDate, 'detailDate') console.log(this.detailDate, 'detailDate')
// this.detailDate.list.forEach((item) => {
// if (item.type == 'file' && item.isLock == '1') {
// this.disabled = true
// }
// })
const token = Vue.ls.get(ACCESS_TOKEN) const token = Vue.ls.get(ACCESS_TOKEN)
this.headers = { 'X-Access-Token': token } this.headers = { 'X-Access-Token': token }
this.containerId = 'container-ty-' + new Date().getTime() this.containerId = 'container-ty-' + new Date().getTime()
@@ -22,7 +22,7 @@
<a-form-model-item class="itemModel" prop="paramsTemplateName"> <a-form-model-item class="itemModel" prop="paramsTemplateName">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model="formInline.paramsTemplateName" v-model.trim="formInline.paramsTemplateName"
:placeholder="$t('PleaseEnter')+$t('parameterTemplate')"/> :placeholder="$t('PleaseEnter')+$t('parameterTemplate')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -87,7 +87,7 @@ export default {
visible: false, visible: false,
rules: { rules: {
paramsTemplateName:[ paramsTemplateName:[
{ required: true, message: this.$t('PleaseEnter')+this.$t('parameterTemplate'), trigger: 'change' }, { required: true, message: this.$t('PleaseEnter')+this.$t('parameterTemplate'), trigger: 'blur' },
{ min:1, max: 50, message: this.$t('cantExeed')+'50'+this.$t('characters'), trigger: 'blur' }, { min:1, max: 50, message: this.$t('cantExeed')+'50'+this.$t('characters'), trigger: 'blur' },
], ],
description:[ description:[
@@ -132,6 +132,7 @@ export default {
rules: { rules: {
paramsTemplateName:[ paramsTemplateName:[
{ required: true, message: this.$t('PleaseEnter')+this.$t('templateName'), trigger: 'change' }, { required: true, message: this.$t('PleaseEnter')+this.$t('templateName'), trigger: 'change' },
{ min:1, max: 50, message: this.$t('cantExeed')+'50'+this.$t('characters'), trigger: 'blur' },
], ],
}, },
visible: false, visible: false,
@@ -243,6 +244,7 @@ export default {
}, },
hideModal(){ hideModal(){
this.visible = false; this.visible = false;
this.$refs['ruleForm'].resetFields()
}, },
//批量删除 //批量删除
handleDel() { handleDel() {
@@ -22,7 +22,7 @@
<a-form-model-item class="itemModel" prop="nioNumber"> <a-form-model-item class="itemModel" prop="nioNumber">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model="formInline.nioNumber" v-model.trim="formInline.nioNumber"
:placeholder="$t('PleaseEnter')+$t('NNiONumber')"/> :placeholder="$t('PleaseEnter')+$t('NNiONumber')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -55,7 +55,7 @@
<a-form-model-item class="itemModel" prop="paramsName"> <a-form-model-item class="itemModel" prop="paramsName">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model="formInline.paramsName" v-model.trim="formInline.paramsName"
:placeholder="$t('PleaseEnter')+$t('NParameterName')"/> :placeholder="$t('PleaseEnter')+$t('NParameterName')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -127,7 +127,7 @@
style='height: 95px; width: 100%' style='height: 95px; width: 100%'
type="textarea" type="textarea"
:disabled="disabled" :disabled="disabled"
v-model="formInline.description" v-model.trim="formInline.description"
:placeholder="$t('PleaseEnter')+$t('NParameterDescription')"/> :placeholder="$t('PleaseEnter')+$t('NParameterDescription')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -204,7 +204,7 @@
<a-input class="box-input add-input" <a-input class="box-input add-input"
:disabled="disabled" :disabled="disabled"
type="textarea" type="textarea"
v-model="formInline.controlValues" v-model.trim="formInline.controlValues"
:placeholder="$t('PleaseEnter')+$t('NcontrolAlternatives')"/> :placeholder="$t('PleaseEnter')+$t('NcontrolAlternatives')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -229,20 +229,20 @@
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :span="24" > <a-col :span="24" >
<a-tabs> <a-tabs>
<a-tab-pane v-for='(item,index) in contentList' :tab="item.textVal === undefined ? item.text : item.textVal" :key="index + 1"> <a-tab-pane v-for='(item,index) in contentList' :tab="item.cut == 'cn' ? item.text : item.textEn" :key="index + 1">
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :span="12"> <a-col :span="12">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text"> <div class="title-text">
<span class="Required">*</span> <span class="Required">*</span>
<span class="title-text-text" <span class="title-text-text"
:title="$t('NNNiONumber')">{{$t('NNNiONumber')}}</span> :title="$t('ParameterNo')">{{$t('ParameterNo')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model="item.paramsNumber" v-model.trim="item.paramsNumber"
:placeholder="$t('PleaseEnter')+$t('NNNiONumber')"/> :placeholder="$t('PleaseEnter')+$t('ParameterNo')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -255,7 +255,7 @@
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model="item.paramsName" v-model.trim="item.paramsName"
:placeholder="$t('PleaseEnter')+$t('NParameterName')"/> :placeholder="$t('PleaseEnter')+$t('NParameterName')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -349,12 +349,12 @@ export default {
visible: false, visible: false,
rules: { rules: {
nioNumber:[ nioNumber:[
{ required: true, message: this.$t('PleaseEnter')+this.$t('NiONumber'), trigger: 'change' }, { required: true, message: this.$t('PleaseEnter')+this.$t('NiONumber'), trigger: 'blur' },
{ min:1, max: 15, message: this.$t('cantExeed')+'15'+this.$t('characters'), trigger: 'blur' }, { min:1, max: 15, message: this.$t('cantExeed')+'15'+this.$t('characters'), trigger: 'blur' },
{ {
pattern: /^[0-9a-zA-Z-]{1,}$/, pattern: /^[0-9a-zA-Z-]{1,}$/,
message: this.$t('onlyThree'), message: this.$t('onlyThree'),
trigger: 'change' trigger: 'blur'
} }
], ],
certCategory: [ certCategory: [
@@ -364,7 +364,7 @@ export default {
{ required: true, message: this.$t('pleaseSelect')+this.$t('Required'), trigger: 'change' }, { required: true, message: this.$t('pleaseSelect')+this.$t('Required'), trigger: 'change' },
], ],
paramsName: [ paramsName: [
{ required: true, message: this.$t('pleaseSelect')+this.$t('ParameterName'), trigger: 'change' }, { required: true, message: this.$t('pleaseSelect')+this.$t('ParameterName'), trigger: 'blur' },
{ min:1, max: 30, message: this.$t('cantExeed')+'30'+this.$t('characters'), trigger: 'blur' }, { min:1, max: 30, message: this.$t('cantExeed')+'30'+this.$t('characters'), trigger: 'blur' },
], ],
technologyTerritory: [ technologyTerritory: [
@@ -386,7 +386,7 @@ export default {
{ required: true, message: this.$t('PleaseEnter')+this.$t('controlVerification'), trigger: 'change' }, { required: true, message: this.$t('PleaseEnter')+this.$t('controlVerification'), trigger: 'change' },
], ],
controlValues: [ controlValues: [
{ required: true, message: this.$t('PleaseEnter')+this.$t('controlAlternatives'), trigger: 'change' }, { required: true, message: this.$t('PleaseEnter')+this.$t('controlAlternatives'), trigger: 'blur' },
{ min:1, max: 500, message: this.$t('cantExeed')+'500'+this.$t('characters'), trigger: 'blur' }, { min:1, max: 500, message: this.$t('cantExeed')+'500'+this.$t('characters'), trigger: 'blur' },
], ],
}, },
@@ -398,6 +398,7 @@ export default {
disabled: false, disabled: false,
projectNameList: [], projectNameList: [],
title: '', title: '',
cut:'',
stateOne: '', stateOne: '',
contentList : [], contentList : [],
contentListed: [], // 编辑 contentList 所带出来的数据 contentListed: [], // 编辑 contentList 所带出来的数据
@@ -411,6 +412,14 @@ export default {
mounted() { mounted() {
this.getNameList() this.getNameList()
this.getSysCategoryTree() this.getSysCategoryTree()
let long = localStorage.getItem('language')
this.cut = ''
if (long && long == 'zh-cn') {
this.cut = 'cn'
} else if (long && long == 'en-us') {
this.cut = 'en'
}
console.log(this.cut)
}, },
methods: { methods: {
getcontentListedEdit() { getcontentListedEdit() {
@@ -427,6 +436,7 @@ export default {
tt.push(Object.assign(obj,item)) tt.push(Object.assign(obj,item))
}) })
this.contentListStart = tt this.contentListStart = tt
console.log(this.contentListStart)
} }
}) })
}, },
@@ -455,19 +465,35 @@ export default {
Onchangelabel(val) { Onchangelabel(val) {
let _tt = [] let _tt = []
if(this.flag == 1) { if(this.flag == 1) {
if(this.cut == 'cn'){
this.contentListStart.forEach((itemVal) => { this.contentListStart.forEach((itemVal) => {
val.forEach((item) => { val.forEach((item) => {
if(itemVal.value === item.value) { if(itemVal.value === item.value) {
itemVal.cut = 'cn'
_tt.push(itemVal) _tt.push(itemVal)
} }
}) })
}) })
this.contentList = _tt
}else { }else {
let _mm = []
this.contentListStart.forEach((itemVal) => { this.contentListStart.forEach((itemVal) => {
val.forEach((item) => { val.forEach((item) => {
if(itemVal.value === item.value) { if(itemVal.value === item.value) {
itemVal.cut = 'en'
_tt.push(itemVal)
}
})
})
}
this.contentList = _tt
} else {
let _mm = []
if(this.cut == 'cn'){
this.contentListStart.forEach((itemVal) => {
val.forEach((item) => {
if(itemVal.value === item.value) {
itemVal.cut = 'cn'
_mm.push(itemVal) _mm.push(itemVal)
} }
}) })
@@ -480,17 +506,64 @@ export default {
item.certCategory= itemVal.certCategory, item.certCategory= itemVal.certCategory,
item.paramsNumber= itemVal.paramsNumber, // 编号 item.paramsNumber= itemVal.paramsNumber, // 编号
item.paramsName= itemVal.paramsName, //参数名称 item.paramsName= itemVal.paramsName, //参数名称
item.cut= itemVal.cut, //中英文标识
item.description= itemVal.description // 描述 item.description= itemVal.description // 描述
} }
}) })
}) })
}else {
this.contentListStart.forEach((itemVal) => {
val.forEach((item) => {
if(itemVal.value === item.value) {
itemVal.cut = 'en'
_mm.push(itemVal)
}
})
})
_mm.forEach((item) => {
this.contentListed.forEach((itemVal) => {
// 原编辑的数据
if(itemVal.certCategory === item.value) {
item.textVal= itemVal.textVal,
item.certCategory= itemVal.certCategory,
item.paramsNumber= itemVal.paramsNumber, // 编号
item.paramsName= itemVal.paramsName, //参数名称
item.cut= itemVal.cut, //中英文标识
item.description= itemVal.description // 描述
}
})
})
}
this.contentList = _mm this.contentList = _mm
console.log(this.contentList)
} }
}, },
Onchange(val) { Onchange(val) {
if(this.formInline.certCategory == '') { let tabList = []
this.contentList = [] let arr = []
let newArray = []
this.arr = []
this.contentListStart.forEach((item,index) => {
this.arr.push(item.certCategory)
})
console.log(this.arr)
this.tabList = val.split(',')
this.arr.forEach(item => {
if (!this.tabList.includes(item)) {
newArray.push(item);
this.contentList.forEach((item1,index1) => {
if(item == item1.certCategory){
item1.paramsNumber= '', // 编号
item1.paramsName= '', //参数名称
item1.description= '' // 描述
} }
})
};
})
}, },
getSysCategoryTree() { getSysCategoryTree() {
getAction('/sys/category/getSysCategoryTree', {}).then((res) => { getAction('/sys/category/getSysCategoryTree', {}).then((res) => {
@@ -540,13 +613,23 @@ export default {
// 获取认证类别 // 获取认证类别
this.getcontentListedEdit() this.getcontentListedEdit()
value.certCategoryParamsInfoEOList.map((item, index) => { value.certCategoryParamsInfoEOList.map((item, index) => {
item.textVal = item.certCategory_dictText if(this.cut == 'cn'){
item.cut = 'cn'
this.contentListed.push(item) this.contentListed.push(item)
item.text = item.certCategory_dictText
}else {
item.cut = 'en'
this.contentListed.push(item)
item.textEn = item.certCategory_dictText
}
}) })
this.contentList = this.contentListed this.contentList = this.contentListed
console.log(this.contentList)
}, },
handleCancel() { handleCancel() {
this.visible = false this.visible = false
this.$refs['ruleForm'].resetFields()
}, },
handleSubmit() { handleSubmit() {
if(this.formInline.certCategory == undefined) { if(this.formInline.certCategory == undefined) {
@@ -229,7 +229,7 @@ export default {
if (res.success) { if (res.success) {
this.$message.success(res.result) this.$message.success(res.result)
} else { } else {
this.$message.warning(res.result) this.$message.warning(res.message)
} }
}) })
}, },
@@ -1,262 +0,0 @@
<template>
<div class="doc-detail">
<!-- 认证参数收集——清单信息-->
<div class="Virtual-detail-header" style="position: fixed;top: 0">
<div class="Virtual-detail-title">
<span style="line-height: 74px;display: inline-block;float: left">
<a-icon type="left-circle" theme="filled" style="margin-right: 6px;font-size: 30px;color: #21c9cc;"/>
</span>
<span>
{{this.title}}
</span>
</div>
<div class="Virtual-detail-text-right" v-if="textTitle === $t('listOfRegulations')">
<div class="operator-text" @click="commentClick">
<a-icon type="message"/>
{{$t('comment')}}
</div>
<div class="operator-text" @click="historicalVersionClick">
<a-icon type="clock-circle"/>
{{$t('historicalVersion')}}
</div>
<div class="operator-text" @click="UpdateLogClick">
<a-icon type="reload"/>
{{$t('UpdateLog')}}
</div>
</div>
</div>
<div style="padding: 67px 0 0 0;background: #ffffff;height:100%">
<div class="detail-content" style="height: 100%">
<div class="Virtual-detail-left">
<div class="Virtual-detail-left-text" :title="$t('projectDetails')"
@click="textClick(0,$t('projectDetails'))">
<a-icon type="container"/>
{{$t('projectDetails')}}
</div>
<div class="Virtual-detail-left-text" v-has="'projectLawsInventory:list'" :title="$t('listOfRegulations')"
@click="textClick(1,$t('listOfRegulations'))">
<a-icon type="container"/>
{{$t('listOfRegulations')}}
</div>
<div class="Virtual-detail-left-text" :title="$t('taskList')" @click="textClick(2,$t('taskList'))">
<a-icon type="container"/>
{{$t('taskList')}}
</div>
<div class="Virtual-detail-left-text" v-has="'ncrTrack:queryPageInfo'" :title="$t('nonConformance')"
@click="textClick(3,$t('nonConformance'))">
<a-icon type="container"/>
{{$t('nonConformance')}}
</div>
<div class="Virtual-detail-left-text" :title="$t('TaskParameterCollection')"
@click="textClick(4,$t('TaskParameterCollection'))">
<a-icon type="container"/>
{{$t('TaskParameterCollection')}}
</div>
</div>
<div class="Virtual-detail-right">
<ProjectDetailsName @TaskListChange="TaskListChange" v-if="textTitle === $t('projectDetails')"/>
<listOfRegulations v-else-if="textTitle === $t('listOfRegulations')"/>
<TaskList :isDisplayNum="isDisplayNum" :areaOfResponsibility="areaOfResponsibility"
v-else-if="textTitle === $t('taskList')"/>
<ParameterItemCollectionList v-else-if="textTitle === $t('TaskParameterCollection')"
:paramsManifest='paramsManifest'/>
<nonConformance v-else-if="textTitle === $t('nonConformance')"/>
</div>
</div>
</div>
<updateLog :url="url" ref="updateLogRef"/>
<historicalVersionList ref="historicalVersionListRef"/>
<commentList ref="commentListRef"/>
</div>
</template>
<script>
import TaskList from '@views/projectManagement/components/TaskList'
import listOfRegulations from '@views/projectManagement/components/listOfRegulations'
import ProjectDetailsName from '@views/projectManagement/components/ProjectDetails'
import ParameterItemCollectionList from '../components/ParameterItemCollectionList'
import nonConformance from '@views/projectManagement/components/nonConformance'
import updateLog from '@comp/UpdateLog'
import historicalVersionList from '@views/projectManagement/components/historicalVersionList'
import commentList from '@views/projectManagement/components/commentList'
import { getAction, postAction, deleteAction, downloadFile } from '@api/manage'
export default {
name: 'ProjectDetails',
components: {
TaskList,
listOfRegulations,
ProjectDetailsName,
ParameterItemCollectionList,
nonConformance,
updateLog,
historicalVersionList,
commentList
},
data() {
return {
title: this.$t('projectDetails'),
textTitle: this.$t('TaskParameterCollection'),
isDisplayNum: '',
areaOfResponsibility: {},
url: {
logList: '/project/projectLawsInventoryLogEO/page',
historicalVersionUrl: '',
queryUserPremissionByProjectLibraryId: '/project/projectCertificationDirectoryEO/queryUserPremissionByProjectLibraryId'
},
paramsManifest: {}
}
},
mounted() {
this.textColor()
this.getTaskId()
// 清单信息
this.paramsManifest = JSON.parse(localStorage.getItem('paramsManifest'))
},
created() {
document.title = this.$t('projectDetails') + '-' + this.$route.query.projectName
},
methods: {
textColor() {
let textColor = document.getElementsByClassName('Virtual-detail-left-text-color')
if (textColor && textColor.length > 0) {
textColor[0].classList.remove('Virtual-detail-left-text-color')
}
let text = document.getElementsByClassName('Virtual-detail-left-text')
if (text && text.length > 0) {
for (let i = 0; i < text.length; i++) {
if (text[i].title == this.$t('TaskParameterCollection')) {
text[i].classList.add('Virtual-detail-left-text-color')
}
}
}
},
textClick(num, name) {
this.textTitle = name
let textColor = document.getElementsByClassName('Virtual-detail-left-text-color')
if (textColor && textColor.length > 0) {
textColor[0].classList.remove('Virtual-detail-left-text-color')
}
let text = document.getElementsByClassName('Virtual-detail-left-text')
for (let i = 0; i < text.length; i++) {
if (text[i].title == name) {
text[i].classList.add('Virtual-detail-left-text-color')
} else if (text[i].title == name) {
text[i].classList.add('Virtual-detail-left-text-color')
} else if (text[i].title == name) {
text[i].classList.add('Virtual-detail-left-text-color')
} else if (text[i].title == name) {
text[i].classList.add('Virtual-detail-left-text-color')
} else if (text[i].title == name) {
text[i].classList.add('Virtual-detail-left-text-color')
}
}
},
UpdateLogClick() {
this.$refs.updateLogRef.getList({ projectLibraryId: this.$route.query.id })
},
historicalVersionClick() {
this.$refs.historicalVersionListRef.getList()
},
commentClick() {
this.$refs.commentListRef.getData()
},
getTaskId() {
let query = {
projectLibraryId: this.$route.query.id
}
getAction(this.url.queryUserPremissionByProjectLibraryId, query).then((res) => {
if (res.success) {
this.isDisplayNum = res.result
}
})
},
TaskListChange(item) {
this.areaOfResponsibility = item
this.textTitle = this.$t('taskList')
let textColor = document.getElementsByClassName('Virtual-detail-left-text-color')
if (textColor && textColor.length > 0) {
textColor[0].classList.remove('Virtual-detail-left-text-color')
}
let text = document.getElementsByClassName('Virtual-detail-left-text')
for (let i = 0; i < text.length; i++) {
if (text[i].title == this.$t('taskList')) {
text[i].classList.add('Virtual-detail-left-text-color')
}
}
}
}
}
</script>
<style lang="less" scoped>
@import '~@assets/less/common.less';
.doc-detail {
background: #fff;
height: 100%;
.Virtual-detail-header {
width: 100%;
height: 68px;
line-height: 68px;
padding: 0 32px 0 32px;
box-sizing: border-box;
display: flex;
justify-content: space-between;
border-bottom: 2px #eff1f3 solid;
background: #fff;
.Virtual-detail-title {
display: inline-block;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
font-size: 20px;
font-weight: 400;
color: #040B29;
line-height: 68px;
}
.doc-detail-right {
width: 800px;
line-height: 68px;
display: flex;
}
}
.Virtual-detail-left {
width: 240px;
padding: 16px 24px;
box-sizing: border-box;
font-size: 16px;
line-height: 3;
float: left;
.Virtual-detail-left-text {
padding: 2px 12px;
cursor: pointer;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
.Virtual-detail-right {
border-left: 2px #eff1f3 solid;
width: calc(100% - 240px);
height: 100%;
float: left;
overflow: auto;
}
}
.Virtual-detail-left-text-color {
background: #eff1f3;
border-radius: 4px;
}
.Virtual-detail-text-right {
}
</style>
@@ -1,13 +1,16 @@
<template> <template>
<a-card :bordered="false"> <div class="doc-detail">
<div class="table-page-search-wrapper doc-detail"> <div class="Virtual-detail-header" style="position: fixed;top: 0">
<div class="Virtual-detail-header" style="top: 0">
<div class="Virtual-detail-title"> <div class="Virtual-detail-title">
<span> <span>
{{$t('ParameteItemCollectionList')}} {{$t('ParameteItemCollectionList')}}
</span> </span>
</div> </div>
</div> </div>
<div style="padding-top: 54px;background: #fff;height: 100%">
<div class="detail-content" style="height: 100%">
<a-card :bordered="false" class="card">
<div class="table-page-search-wrapper">
<!-- 认证参数收集-参数项收集清单-10控件--> <!-- 认证参数收集-参数项收集清单-10控件-->
<div class='Virtual-detail-content' style='margin-top: 15px'> <div class='Virtual-detail-content' style='margin-top: 15px'>
<a-form layout="inline" @keyup.enter.native="searchQuery"> <a-form layout="inline" @keyup.enter.native="searchQuery">
@@ -61,7 +64,8 @@
v-model="formInline.dre"></a-input> v-model="formInline.dre"></a-input>
</div> </div>
</a-col> </a-col>
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons"> <span style="float: right;overflow: hidden;margin-right: 11px"
class="table-page-search-submitButtons">
<a-col :md="6" :sm="24"> <a-col :md="6" :sm="24">
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button> <a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button> <a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
@@ -132,12 +136,14 @@
{{$t('submit')}} {{$t('submit')}}
</div> </div>
<!-- 退回--> <!-- 退回-->
<div @click="returnDataJurisdiction" class="operator-text" v-if='currentPersonRole == "sdt" || currentPersonRole == "homo" || currentPersonRole == "dre"'> <div @click="returnDataJurisdiction" class="operator-text"
v-if='currentPersonRole == "sdt" || currentPersonRole == "homo" || currentPersonRole == "dre"'>
<a-icon type="delete"/> <a-icon type="delete"/>
{{$t('sendBack')}} {{$t('sendBack')}}
</div> </div>
<!-- 强制撤回--> <!-- 强制撤回-->
<div @click="compulsoryWithdrawaljurisdiction" class="operator-text" v-if='currentPersonRole == "homo" || currentPersonRole == "sdt" ||currentPersonRole == "dre"'> <div @click="compulsoryWithdrawaljurisdiction" class="operator-text"
v-if='currentPersonRole == "homo" || currentPersonRole == "sdt" ||currentPersonRole == "dre"'>
<a-icon type="delete"/> <a-icon type="delete"/>
{{$t('CompulsoryWithdrawal')}} {{$t('CompulsoryWithdrawal')}}
</div> </div>
@@ -151,14 +157,19 @@
<div style="width: 100%"> <div style="width: 100%">
<!-- 表格-10控件--> <!-- 表格-10控件-->
<table-collection ref="CollectionTabel" :url='url' :paramsManifest='paramsManifest' @rowValue='rowValue' <table-collection ref="CollectionTabel" :url='url' :paramsManifest='paramsManifest' @rowValue='rowValue'
:formInline='formInline' :currentPersonRole='currentPersonRole' @value='value' @listReset='listReset' @LoginUserType='LoginUserType'/> :formInline='formInline' :currentPersonRole='currentPersonRole' @value='value'
@listReset='listReset' @LoginUserType='LoginUserType'/>
</div>
</a-card>
</div>
</div> </div>
<!-- 添加---> <!-- 添加--->
<a-modal v-model="areaVisible" :title="$t('ParameterLibrary')" width='750px' :footer="null"> <a-modal v-model="areaVisible" :title="$t('ParameterLibrary')" width='750px' :footer="null">
<parameter-library-add v-if='areaVisible' :paramsManifest='paramsManifest' @areaVisible='areaVisible = false' @GetgetTableList='GetgetTableList'/> <parameter-library-add v-if='areaVisible' :paramsManifest='paramsManifest' @areaVisible='areaVisible = false'
@GetgetTableList='GetgetTableList'/>
</a-modal> </a-modal>
<!-- 冻结配置---> <!-- 冻结配置--->
<a-modal v-model="areaVisibleFreeze" :title="$t('FreezeConfiguration')" width='500px' :footer="null"> <a-modal v-model="areaVisibleFreeze" :title="$t('FreezeConfiguration')" width='600px' :footer="null">
<a-form-model <a-form-model
class='tag-module' class='tag-module'
ref='ruleForm' ref='ruleForm'
@@ -170,7 +181,8 @@
<a-row :gutter='24'> <a-row :gutter='24'>
<a-col :span='24'> <a-col :span='24'>
<a-form-model-item ref='region' :label="$t('FreezeConfiguration')" prop='region'> <a-form-model-item ref='region' :label="$t('FreezeConfiguration')" prop='region'>
<a-select :placeholder="$t('PleaseSelect')+$t('FreezeConfiguration')" v-model="Dateline.paramsConfig" allowClear mode="multiple"> <a-select :placeholder="$t('PleaseSelect')+$t('FreezeConfiguration')" v-model="Dateline.paramsConfig"
allowClear mode="multiple">
<a-select-option v-for="(item, key) in FreezeList" :key="key" :value="item.value"> <a-select-option v-for="(item, key) in FreezeList" :key="key" :value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.label "> <span style="display: inline-block;width: 100%" :title=" item.label ">
{{ item.label }} {{ item.label }}
@@ -195,7 +207,8 @@
</a-modal> </a-modal>
<!-- 分配填写人---> <!-- 分配填写人--->
<a-modal v-model="areaVisibleAssignedby" :title="$t('Assignedby')" width='950px' :footer="null"> <a-modal v-model="areaVisibleAssignedby" :title="$t('Assignedby')" width='950px' :footer="null">
<assigned-by v-if='areaVisibleAssignedby' :selectedRowKeysArray='selectedRowKeysArray' @GetgetTableList='GetgetTableList' <assigned-by v-if='areaVisibleAssignedby' :selectedRowKeysArray='selectedRowKeysArray'
@GetgetTableList='GetgetTableList'
@GetgetLoginUserType='GetgetLoginUserType' @GetgetLoginUserType='GetgetLoginUserType'
@areaVisibleAssignedbyflag='areaVisibleAssignedbyflag' @areaVisible='areaVisibleAssignedby = false'/> @areaVisibleAssignedbyflag='areaVisibleAssignedbyflag' @areaVisible='areaVisibleAssignedby = false'/>
</a-modal> </a-modal>
@@ -207,14 +220,17 @@
</a-modal> </a-modal>
<!-- 引用参数---> <!-- 引用参数--->
<a-modal v-model="areaVisiblereferenceparameter" :title="$t('referenceparameter')" width='650px' :footer="null"> <a-modal v-model="areaVisiblereferenceparameter" :title="$t('referenceparameter')" width='650px' :footer="null">
<reference-parameter v-if='areaVisiblereferenceparameter' :paramsManifest='paramsManifest' @GetgetTableList='GetgetTableList' <reference-parameter v-if='areaVisiblereferenceparameter' :paramsManifest='paramsManifest'
@GetgetTableList='GetgetTableList'
@areaVisibleAssignedbyflag='areaVisiblereferenceparameter = false' @areaVisibleAssignedbyflag='areaVisiblereferenceparameter = false'
:selectedRowKeysArray='selectedRowKeysArray'/> :selectedRowKeysArray='selectedRowKeysArray'/>
</a-modal> </a-modal>
<!-- 同步上报库---> <!-- 同步上报库--->
<a-modal v-model="areaVisibsynchronous" :title="$t('SynchronousReportLibrary')" width='650px' :footer="null"> <a-modal v-model="areaVisibsynchronous" :title="$t('SynchronousReportLibrary')" width='650px' :footer="null">
<synchronous-submission-library v-if='areaVisibsynchronous' :paramsManifest='paramsManifest' @GetgetTableList='GetgetTableList' <synchronous-submission-library v-if='areaVisibsynchronous' :paramsManifest='paramsManifest'
:selectedRowKeysArray='selectedRowKeysArray' @areaVisibsynchronous='areaVisibsynchronous = false'/> @GetgetTableList='GetgetTableList'
:selectedRowKeysArray='selectedRowKeysArray'
@areaVisibsynchronous='areaVisibsynchronous = false'/>
</a-modal> </a-modal>
<!-- 切换角色--> <!-- 切换角色-->
<a-modal <a-modal
@@ -264,19 +280,24 @@
<span v-if='NoEngineer === 0'> <span v-if='NoEngineer === 0'>
{{$t('NiOnumberis')}} {{$t('NiOnumberis')}}
</span> </span>
<span style='font-size: 16px;margin-bottom: 20px;' v-for='(item,key) in NotSelectedNoEngineerValue' v-if='NoEngineer === 0'> <span style='font-size: 16px;margin-bottom: 20px;' v-for='(item,key) in NotSelectedNoEngineerValue'
v-if='NoEngineer === 0'>
<span style='color: red'>{{ item.nioNumber }}、</span> <span style='color: red'>{{ item.nioNumber }}、</span>
</span> </span>
<span v-if='NoEngineer === 0'> <span v-if='NoEngineer === 0'>
{{$t('Filledperson')}} {{$t('Filledperson')}}
</span> </span>
<!-- 状态不符合,导致不能操作按钮,没有权限--> <!-- 状态不符合,导致不能操作按钮,没有权限-->
<div style='font-size: 18px;margin-bottom: 20px;display: flex;justify-content: center' class="box-title-text-index" v-for='(item,key) in NotSelectedRowKeysValue' v-if='NoEngineer === 1'> <div style='font-size: 18px;margin-bottom: 20px;display: flex;justify-content: center'
<div>{{$t('NiOnumberis')}}{{ item.nioNumber }},{{$t('Statusis')}}<span style='color: red'>{{ item.state }}</span>,{{$t('NoOperationPermissionForthisbutton')}}。</div> class="box-title-text-index" v-for='(item,key) in NotSelectedRowKeysValue' v-if='NoEngineer === 1'>
<div>{{$t('NiOnumberis')}}{{ item.nioNumber }},{{$t('Statusis')}}<span
style='color: red'>{{ item.state }}</span>,{{$t('NoOperationPermissionForthisbutton')}}。
</div>
</div> </div>
<!-- 认证工程师-提示--> <!-- 认证工程师-提示-->
<div style='font-size: 16px;color: red;display: flex;justify-content: center' v-if='NoEngineer === 1'> <div style='font-size: 16px;color: red;display: flex;justify-content: center' v-if='NoEngineer === 1'>
{{ currentPersonRole =='homo'? $t('certifiedEngineer'): (currentPersonRole =='sdt'? $t('engineeringInterfacePerson'): $t('completedBy')) }}{{$t('Datastatusis')}} {{ currentPersonRole =='homo'? $t('certifiedEngineer'): (currentPersonRole =='sdt'?
$t('engineeringInterfacePerson'): $t('completedBy')) }}{{$t('Datastatusis')}}
<!-- 下发收集时--> <!-- 下发收集时-->
<span v-if='jurisdiction === "HOMOZFSJ"'> <span v-if='jurisdiction === "HOMOZFSJ"'>
'{{$t('CollectionInitiated')}}'、'{{$t('ReturnedPerson')}}'{{$t('or')}}'{{$t('alteration')}}' '{{$t('CollectionInitiated')}}'、'{{$t('ReturnedPerson')}}'{{$t('or')}}'{{$t('alteration')}}'
@@ -327,7 +348,8 @@
</div> </div>
</div> </div>
</a-modal> </a-modal>
</a-card> <JLoading :loading="textLoading">{{this.$t('pleaseWaitWhileRunning')}}</JLoading>
</div>
</template> </template>
<script> <script>
@@ -341,6 +363,7 @@ import AssignedBy from '@/components/AssignedBy/index'
import axios from 'axios' import axios from 'axios'
import { ACCESS_TOKEN } from '@/store/mutation-types' import { ACCESS_TOKEN } from '@/store/mutation-types'
import Vue from 'vue' import Vue from 'vue'
export default { export default {
name: 'ParameterItemCollectionList', name: 'ParameterItemCollectionList',
components: { components: {
@@ -370,32 +393,32 @@ export default {
{ {
title: this.$t('status'), title: this.$t('status'),
align: 'center', align: 'center',
dataIndex: 'state', dataIndex: 'state'
}, },
{ {
title: this.$t('parameterTemplateName'), title: this.$t('parameterTemplateName'),
align: 'center', align: 'center',
dataIndex: 'paramsTemplateName', dataIndex: 'paramsTemplateName'
}, },
{ {
title: this.$t('collectionCompletionTime'), title: this.$t('collectionCompletionTime'),
align: 'center', align: 'center',
dataIndex: 'finishTime', dataIndex: 'finishTime'
}, },
{ {
title: this.$t('Version'), title: this.$t('Version'),
align: 'center', align: 'center',
dataIndex: 'version', dataIndex: 'version'
}, },
{ {
title: this.$t('creator'), title: this.$t('creator'),
align: 'center', align: 'center',
dataIndex: 'createBy', dataIndex: 'createBy'
}, },
{ {
title: this.$t('createTime'), title: this.$t('createTime'),
align: 'center', align: 'center',
dataIndex: 'createTime', dataIndex: 'createTime'
}, },
{ {
title: this.$t('operation'), title: this.$t('operation'),
@@ -406,6 +429,7 @@ export default {
} }
], ],
selectedRowKeys: [], selectedRowKeys: [],
textLoading: false,
formInline: {}, formInline: {},
url: { url: {
tableHeader: 'params/collectManifest/getHeader', tableHeader: 'params/collectManifest/getHeader',
@@ -414,7 +438,7 @@ export default {
getLoginUserType: 'params/collectManifest/getLoginUserType', // 获取当前登陆人 getLoginUserType: 'params/collectManifest/getLoginUserType', // 获取当前登陆人
getquerySdtList: 'params/collectManifest/querySdtList', // 获取工程接口人的列表 getquerySdtList: 'params/collectManifest/querySdtList', // 获取工程接口人的列表
updateSdt: 'params/collectManifest/updateSdt', // 提交工程接口人 updateSdt: 'params/collectManifest/updateSdt', // 提交工程接口人
deleteBatch: 'params/collectManifest/deleteBatch', deleteBatch: 'params/collectManifest/deleteBatch'
}, },
loading: false, loading: false,
dataSource: [], dataSource: [],
@@ -504,7 +528,8 @@ export default {
cancleoperationFailed() { cancleoperationFailed() {
this.selectedRowKeysValue = [] this.selectedRowKeysValue = []
this.visibleoperationFailed = false this.visibleoperationFailed = false
this.GetgetTableList() this.$refs.CollectionTabel.cancleoperationFailed()
// this.GetgetTableList()
}, },
// 一下为认证工程师 // 一下为认证工程师
// 认证工程师 下发收集 权限 // 认证工程师 下发收集 权限
@@ -767,13 +792,13 @@ export default {
} }
return flag return flag
}, },
LoginUserType(val) { LoginUserType(val, currentPersonRole) {
this.RoleType = [] this.RoleType = []
if (this.currentPersonRole == '') { if (this.currentPersonRole == '') {
this.currentPersonRole = val.length >= 1 ? val[0].value : '' this.currentPersonRole = val.length >= 1 ? val[0].value : ''
} }
this.RoleType = val this.RoleType = val
this.formInlineRoleSwitching.roleSwitchingCode = JSON.parse(localStorage.getItem('currentPersonRole')) === null ? this.currentPersonRole : JSON.parse(localStorage.getItem('currentPersonRole')) this.formInlineRoleSwitching.roleSwitchingCode = currentPersonRole || val[0].value
this.formInlineRoleSwitching = { ...this.formInlineRoleSwitching } this.formInlineRoleSwitching = { ...this.formInlineRoleSwitching }
}, },
// 表格所选中得行内容 // 表格所选中得行内容
@@ -798,6 +823,7 @@ export default {
let _this = this let _this = this
let paramsConfig = this.Dateline.paramsConfig === undefined ? '' : this.Dateline.paramsConfig.join(',') let paramsConfig = this.Dateline.paramsConfig === undefined ? '' : this.Dateline.paramsConfig.join(',')
let param = { paramsManifestId: this.paramsManifest.id, paramsConfigIds: paramsConfig } let param = { paramsManifestId: this.paramsManifest.id, paramsConfigIds: paramsConfig }
this.textLoading = true
axios({ axios({
url: '/jero-boot/params/collectManifest/lockConfigColumn', url: '/jero-boot/params/collectManifest/lockConfigColumn',
method: 'post', method: 'post',
@@ -816,15 +842,18 @@ export default {
}) })
.then((res) => { .then((res) => {
if (res.data.success) { if (res.data.success) {
this.textLoading = false
_this.$message.success(res.data.result) _this.$message.success(res.data.result)
this.areaVisibleFreeze = false this.areaVisibleFreeze = false
this.$refs.CollectionTabel.getTableList() this.$refs.CollectionTabel.getTableList()
} else { } else {
this.textLoading = false
_this.$message.warning(res.data.result) _this.$message.warning(res.data.result)
} }
}) })
.catch((error) => { .catch((error) => {
}); this.textLoading = false
})
}, },
// 冻结配置取消 // 冻结配置取消
cancleImportsFreeze() { cancleImportsFreeze() {
@@ -857,7 +886,7 @@ export default {
} }
}) })
.catch((error) => { .catch((error) => {
}); })
}, },
// 下发收集的权限 // 下发收集的权限
distributionAndCollectionJurisdiction() { distributionAndCollectionJurisdiction() {
@@ -874,12 +903,18 @@ export default {
}, },
// 下发收集---请求接口 // 下发收集---请求接口
distributionAndCollection() { distributionAndCollection() {
let _array = [] let _array = []
this.selectedRowKeysValue.forEach((item, index) => { this.selectedRowKeysValue.forEach((item, index) => {
_array.push(item.id) _array.push(item.id)
}) })
let _this = this let _this = this
let param = {paramsManifestId: this.$route.query.id,projectId:this.$route.query.projectId, ids: _array.join(',')} let param = {
paramsManifestId: this.$route.query.id,
projectId: this.$route.query.projectId,
ids: _array.join(',')
}
this.textLoading = true
axios({ axios({
url: '/jero-boot/params/collectManifest/issueCollection', url: '/jero-boot/params/collectManifest/issueCollection',
method: 'post', method: 'post',
@@ -900,13 +935,16 @@ export default {
if (res.data.success) { if (res.data.success) {
_this.$message.success(this.$t('OperationSuccessful')) _this.$message.success(this.$t('OperationSuccessful'))
_this.areaVisible = false _this.areaVisible = false
this.textLoading = false
_this.GetgetTableList() _this.GetgetTableList()
} else { } else {
this.textLoading = false
_this.$message.warning(this.$t('operationFailed')) _this.$message.warning(this.$t('operationFailed'))
} }
}) })
.catch((error) => { .catch((error) => {
}); this.textLoading = false
})
}, },
// 同步上报库 权限 // 同步上报库 权限
handleSynchronousReportLibraryJurisdiction() { handleSynchronousReportLibraryJurisdiction() {
@@ -942,26 +980,33 @@ export default {
ishandleSubmit() { ishandleSubmit() {
let _this = this let _this = this
let postDate = [] let postDate = []
this.selectedRowKeysValue.forEach((item, index) => { for (let i = 0; i < this.selectedRowKeysValue.length; i++) {
let postDateobj = {} let postDateobj = {}
Object.keys(item).forEach((itemIn, index) => { let itemIn = Object.keys(this.selectedRowKeysValue[i])
if(itemIn !== 'sdt') { for (let j = 0; j < itemIn.length; j++) {
if(item[itemIn] instanceof Object && !(item[itemIn] instanceof Array)) { if (itemIn[j] !== 'sdt') {
postDateobj[itemIn] = item[itemIn] if (this.selectedRowKeysValue[i][itemIn[j]] instanceof Object && !(this.selectedRowKeysValue[i][itemIn[j]] instanceof Array)) {
item[itemIn].list.forEach((item,index) => { postDateobj[itemIn[j]] = this.selectedRowKeysValue[i][itemIn[j]]
if(item.type == 'pull_more'){ for (let k = 0; k < this.selectedRowKeysValue[i][itemIn[j]].list.length; k++) {
item.dataValue = item.dataValue.join(',') if (this.selectedRowKeysValue[i][itemIn[j]].list[k].type == 'pull_more') {
this.selectedRowKeysValue[i][itemIn[j]].list[k].dataValue = this.selectedRowKeysValue[i][itemIn[j]].list[k].dataValue.join(',')
} }
if(item.type == 'text' && item.dataValue !== null){ if (this.selectedRowKeysValue[i][itemIn[j]].list[k].type == 'text' && this.selectedRowKeysValue[i][itemIn[j]].list[k].dataValue !== null) {
item.dataValue = item.dataValue.toString() this.selectedRowKeysValue[i][itemIn[j]].list[k].dataValue = this.selectedRowKeysValue[i][itemIn[j]].list[k].dataValue.toString()
} }
}) if (!this.selectedRowKeysValue[i][itemIn[j]].list[k].dataValue && this.selectedRowKeysValue[i][itemIn[j]].list[k].isMust == '1'
&& this.selectedRowKeysValue[i][itemIn[j]].list[k].isLock == '0') {
this.$message.warning(this.selectedRowKeysValue[i].nioNumber + ',' + this.$t('requiredParametersEmpty'))
return
} }
} }
}) }
postDateobj.id = item.id }
}
postDateobj.id = this.selectedRowKeysValue[i].id
postDate.push(postDateobj) postDate.push(postDateobj)
}) }
let configDataList = { configDataList: postDate } let configDataList = { configDataList: postDate }
if (this.selectedRowKeys.length == 0) { if (this.selectedRowKeys.length == 0) {
this.$message.warning(this.$t('selectLeastOne')) this.$message.warning(this.$t('selectLeastOne'))
@@ -1026,7 +1071,7 @@ export default {
} }
}) })
.catch((error) => { .catch((error) => {
}); })
}, },
// 强制撤回权限 // 强制撤回权限
compulsoryWithdrawaljurisdiction() { compulsoryWithdrawaljurisdiction() {
@@ -1071,7 +1116,7 @@ export default {
} }
}) })
.catch((error) => { .catch((error) => {
}); })
}, },
// 分配填写人 // 分配填写人
assignedBy() { assignedBy() {
@@ -1194,58 +1239,6 @@ export default {
<style lang="less" scoped> <style lang="less" scoped>
@import '~@assets/less/common.less'; @import '~@assets/less/common.less';
.doc-detail {
background: #fff;
height: 100%;
.Virtual-detail-header {
width: 100%;
height: 68px;
line-height: 68px;
padding: 0 32px 0 32px;
box-sizing: border-box;
display: flex;
justify-content: space-between;
border-bottom: 2px #eff1f3 solid;
background: #fff;
.Virtual-detail-title {
display: inline-block;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
font-size: 20px;
font-weight: 400;
color: #040B29;
line-height: 68px;
}
.doc-detail-right {
width: 800px;
line-height: 68px;
display: flex;
}
}
.Virtual-detail-content {
margin-top: 68px;
padding: 0 38px 0 38px;
box-sizing: border-box;
font-size: 16px;
.box-title-text-add {
line-height: 1.4;
}
.title-text-add {
display: inline-block;
font-weight: 500;
margin-right: 16px;
height: 42px;
line-height: 42px;
}
}
}
.header-text { .header-text {
font-size: 16px; font-size: 16px;
font-weight: 400; font-weight: 400;
@@ -1304,6 +1297,7 @@ export default {
cursor: pointer; cursor: pointer;
border-radius: 4px; border-radius: 4px;
} }
.operator-text-title { .operator-text-title {
cursor: pointer; cursor: pointer;
margin-right: 22px; margin-right: 22px;
@@ -1312,10 +1306,12 @@ export default {
color: #040B29; color: #040B29;
margin-bottom: 22px; margin-bottom: 22px;
} }
.box-title-text-index { .box-title-text-index {
line-height: 1.4; line-height: 1.4;
display: flex; display: flex;
} }
.title-text-Comment { .title-text-Comment {
width: 74px; width: 74px;
text-align: right; text-align: right;
@@ -1329,16 +1325,122 @@ export default {
height: 42px; height: 42px;
line-height: 36px; line-height: 36px;
} }
.box-input .ant-select-selection { .box-input .ant-select-selection {
height: 38px !important; height: 38px !important;
} }
.itemitem { .itemitem {
width: 250px; width: 250px;
} }
.box-input .ant-select-selection__rendered { .box-input .ant-select-selection__rendered {
line-height: 38px; line-height: 38px;
} }
.Required { .Required {
color: red; color: red;
} }
.doc-detail {
background: #fff;
height: 100%;
.Virtual-detail-header {
width: 100%;
height: 68px;
line-height: 68px;
padding: 0 32px 0 32px;
box-sizing: border-box;
display: flex;
justify-content: space-between;
border-bottom: 2px #eff1f3 solid;
background: #fff;
.Virtual-detail-title {
display: inline-block;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
font-size: 20px;
font-weight: 400;
color: #040B29;
line-height: 68px;
}
.doc-detail-right {
width: 800px;
line-height: 68px;
display: flex;
}
}
.Virtual-detail-content {
margin-top: 68px;
padding: 0 38px 0 38px;
box-sizing: border-box;
font-size: 16px;
.box-title-text-add {
line-height: 1.4;
}
.title-text-add {
display: inline-block;
font-weight: 500;
margin-right: 16px;
height: 42px;
line-height: 42px;
}
}
.Virtual-detail-header {
width: 100%;
height: 68px;
line-height: 68px;
padding: 0 32px 0 32px;
box-sizing: border-box;
display: flex;
justify-content: space-between;
border-bottom: 2px #eff1f3 solid;
background: #fff;
z-index: 1000;
.Virtual-detail-title {
display: inline-block;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
font-size: 20px;
font-weight: 400;
color: #040B29;
line-height: 68px;
}
.doc-detail-right {
width: 800px;
line-height: 68px;
display: flex;
}
}
.Virtual-detail-content {
padding: 0 32px 0 32px;
box-sizing: border-box;
font-size: 16px;
.box-title-text-add {
line-height: 1.4;
}
.title-text-add {
display: inline-block;
width: 100%;
font-weight: 500;
margin-right: 16px;
height: 42px;
line-height: 42px;
}
}
}
</style> </style>
@@ -49,14 +49,19 @@
:dataSource='dataSource' :dataSource='dataSource'
:pagination='false' :pagination='false'
:loading='loading' :loading='loading'
:scroll='{x: 600}' :scroll="{x: '100%',y:'calc(100vh - 320px)'}"
:rowSelection='{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}' :rowSelection='{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}'
@change='handleTableChange'> @change='handleTableChange'>
<span slot="paramsManifestClick" slot-scope="text,record"> <span slot="paramsManifestClick" slot-scope="text,record">
<a @click="paramsManifestClick(record)"> <a class="textName" :title="text" @click="paramsManifestClick(record)">
{{ text && text.length > 50 ? text.slice(0, 49) + '...' : text }} {{ text && text.length > 50 ? text.slice(0, 49) + '...' : text }}
</a> </a>
</span> </span>
<span slot="collectionCompletionTime" slot-scope="text,record">
<span class="textName" :title="record.finishTime">
{{record.finishTime ? record.finishTime : '-'}}
</span>
</span>
<span slot="operation" slot-scope="text,record"> <span slot="operation" slot-scope="text,record">
<a class="text-operation" @click="configure(record)">{{$t('configure')}}</a> <a class="text-operation" @click="configure(record)">{{$t('configure')}}</a>
<a class="text-operation" @click="edit(record)">{{$t('edit')}}</a> <a class="text-operation" @click="edit(record)">{{$t('edit')}}</a>
@@ -77,8 +82,9 @@
/> />
</div> </div>
<!-- 参数模板--> <!-- 参数模板-->
<a-modal v-model="areaVisible" :title="$t('parameterTemplate')" width='750px' :footer="null"> <a-modal v-model="areaVisible" :maskClosable="false" :title="$t('parameterTemplate')" width='750px' :footer="null">
<parameter-template-add :url='url' ref='templateRef' v-if='areaVisible' @areaVisible='handleCancel' :version='version' <parameter-template-add :url='url' ref='templateRef' v-if='areaVisible' @areaVisible='handleCancel'
:version='version'
:projectId='this.$route.query.id'></parameter-template-add> :projectId='this.$route.query.id'></parameter-template-add>
</a-modal> </a-modal>
<!-- 配置--> <!-- 配置-->
@@ -89,7 +95,8 @@
</a-modal> </a-modal>
<!-- 复制参数模板--> <!-- 复制参数模板-->
<a-modal class="show-drawer" :title="$t('Copyparameterlist')" width="700px" v-model="drawerVisible" :footer="null"> <a-modal class="show-drawer" :title="$t('Copyparameterlist')" width="700px" v-model="drawerVisible" :footer="null">
<project-collection-parameters v-if='drawerVisible' @areaVisible='drawerhandleCancel' :templateTitle='templatetitle' @copysubmit='copysubmit' <project-collection-parameters v-if='drawerVisible' @areaVisible='drawerhandleCancel'
:templateTitle='templatetitle' @copysubmit='copysubmit'
:selectedRowKeyS='selectedRowKeys' :rowId='rowId' :version='version' :url='url' :selectedRowKeyS='selectedRowKeys' :rowId='rowId' :version='version' :url='url'
:projectId='this.$route.query.id'></project-collection-parameters> :projectId='this.$route.query.id'></project-collection-parameters>
</a-modal> </a-modal>
@@ -124,44 +131,57 @@
title: this.$t('title'), title: this.$t('title'),
align: 'center', align: 'center',
dataIndex: 'title', dataIndex: 'title',
width: 240,
scopedSlots: { customRender: 'paramsManifestClick' } scopedSlots: { customRender: 'paramsManifestClick' }
}, },
{ {
title: this.$t('status'), title: this.$t('status'),
align: 'center', align: 'center',
width: 80,
ellipsis: true,
dataIndex: 'state' dataIndex: 'state'
}, },
{ {
title: this.$t('parameterTemplateName'), title: this.$t('parameterTemplateName'),
align: 'center', align: 'center',
width: 180,
ellipsis: true,
dataIndex: 'paramsTemplateName' dataIndex: 'paramsTemplateName'
}, },
{ {
title: this.$t('collectionCompletionTime'), title: this.$t('collectionCompletionTime'),
align: 'center', align: 'center',
dataIndex: 'finishTime' dataIndex: 'finishTime',
width: 160,
ellipsis: true,
scopedSlots: { customRender: 'collectionCompletionTime' }
}, },
{ {
title: this.$t('Version'), title: this.$t('Version'),
align: 'center', align: 'center',
width: 50,
ellipsis: true,
dataIndex: 'version' dataIndex: 'version'
}, },
{ {
title: this.$t('creator'), title: this.$t('creator'),
align: 'center', align: 'center',
width: 110,
ellipsis: true,
dataIndex: 'createBy' dataIndex: 'createBy'
}, },
{ {
title: this.$t('createTime'), title: this.$t('createTime'),
align: 'center', align: 'center',
width: 160, width: 160,
ellipsis: true,
dataIndex: 'createTime' dataIndex: 'createTime'
}, },
{ {
title: this.$t('operation'), title: this.$t('operation'),
align: 'center', align: 'center',
fixed: 'right', fixed: 'right',
width: 310, width: 210,
scopedSlots: { customRender: 'operation' } scopedSlots: { customRender: 'operation' }
} }
], ],
@@ -199,7 +219,7 @@
drawerVisible: false, drawerVisible: false,
drawerVisibleitem: false, drawerVisibleitem: false,
titleTag: '', titleTag: '',
selectedRowKeysvalArray: [], selectedRowKeysvalArray: []
} }
}, },
mounted() { mounted() {
@@ -214,7 +234,7 @@
localStorage.setItem('paramsManifest', JSON.stringify(item)) localStorage.setItem('paramsManifest', JSON.stringify(item))
let newUrl = _this.$router.resolve({ let newUrl = _this.$router.resolve({
path: '/ParameterItemCollection', path: '/ParameterItemCollection',
query: item, query: item
}) })
window.open(newUrl.href, '_blank') window.open(newUrl.href, '_blank')
} else { } else {
@@ -365,6 +385,7 @@
pageNo: this.pageNo, pageNo: this.pageNo,
...this.queryParam ...this.queryParam
} }
this.loading = true
getAction(this.url.list, query).then((res) => { getAction(this.url.list, query).then((res) => {
if (res.success) { if (res.success) {
if (res.result.current > 1 && res.result.records.length == 0) { if (res.result.current > 1 && res.result.records.length == 0) {
@@ -501,9 +522,23 @@
cursor: pointer; cursor: pointer;
border-radius: 4px; border-radius: 4px;
} }
/deep/ .add-padding { /deep/ .add-padding {
margin-left: -89px !important; margin-left: -89px !important;
} }
.textName {
width: 100%;
overflow: hidden;
display: -webkit-box;
text-overflow: ellipsis;
/*! autoprefixer: off */
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
/*! autoprefixer: on;*/
text-justify: inter-ideograph;
word-break: break-all
}
</style> </style>
<style> <style>
.box-input .ant-select-selection { .box-input .ant-select-selection {
@@ -11,16 +11,16 @@
> >
<a-row :gutter='24'> <a-row :gutter='24'>
<a-col :span='9'> <a-col :span='9'>
<a-form-model-item :label="$t('title')" prop='title'> <a-form-model-item class="itemAddAdmin" :label="$t('title')" prop='title'>
<a-input style='width: 420px' <a-input style='width: 420px'
:placeholder="$t('PleaseEnter')+$t('title')" :placeholder="$t('PleaseEnter')+$t('title')"
v-model='formData.title'/> v-model='formData.title'/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span='9'> <!-- <a-col :span='9'>-->
</a-col> <!-- </a-col>-->
<a-col :span='6'> <!-- <a-col :span='6'>-->
</a-col> <!-- </a-col>-->
</a-row> </a-row>
<a-row :gutter='24'> <a-row :gutter='24'>
<a-col :span='9'> <a-col :span='9'>
@@ -119,7 +119,12 @@ export default {
formData: {}, formData: {},
rules: { rules: {
title: [ title: [
{ required: true, message: this.$t('enterTitle'), trigger: 'blur' } { required: true, message: this.$t('enterTitle'), trigger: 'blur' },
{
max: 200,
message: this.$t('title') + this.$t('cannotExceed') + 200 + this.$t('Characters'),
trigger: 'blur'
}
] ]
}, },
areaTable: [], areaTable: [],
@@ -303,7 +308,7 @@ export default {
}) })
} }
}) })
}, }
// 编辑 // 编辑
}, },
watch: { watch: {
@@ -331,10 +336,12 @@ export default {
color: red; color: red;
} }
} }
.drawer-bootom-button { .drawer-bootom-button {
display: flex; display: flex;
justify-content: center; justify-content: center;
} }
.Required { .Required {
color: red; color: red;
margin-right: 4px; margin-right: 4px;
@@ -353,3 +360,8 @@ export default {
} }
} }
</style> </style>
<style>
.itemAddAdmin .ant-form-item-control-wrapper .has-error .ant-form-explain {
white-space: nowrap!important;
}
</style>
@@ -174,7 +174,7 @@ export default {
methods: { methods: {
// 清单列表传出数据 // 清单列表传出数据
listVisibleRow(val) { listVisibleRow(val) {
this.selectedRowKeys = [] // this.selectedRowKeys = []
let newAreaTable=JSON.parse(JSON.stringify(this.areaTable)) let newAreaTable=JSON.parse(JSON.stringify(this.areaTable))
newAreaTable.forEach((item, index) => { newAreaTable.forEach((item, index) => {
if( item.id == this.listVisibleRowDate.id ) { if( item.id == this.listVisibleRowDate.id ) {
@@ -95,8 +95,11 @@
<div class="title-text"> <div class="title-text">
<!-- <span class="title-text-text" :title="$t('Required')">{{$t('Required')}}</span>--> <!-- <span class="title-text-text" :title="$t('Required')">{{$t('Required')}}</span>-->
</div> </div>
<a-button style="margin-right: .8rem" @click="addConfiguration(index)">{{$t('addConfiguration')}}</a-button> <a-button style="margin-right: .8rem" @click="addConfiguration(index)">{{$t('addConfiguration')}}
<a-button @click="deleteConfiguration(item.id,index)" type="primary" :loading="confirmLoading">{{$t('deleteConfiguration')}}</a-button> </a-button>
<a-button @click="deleteConfiguration(item.id,index)" type="primary" :loading="confirmLoading">
{{$t('deleteConfiguration')}}
</a-button>
</div> </div>
</a-col> </a-col>
</a-row> </a-row>
@@ -115,6 +118,7 @@
import { getAction, postAction, downloadFile, putAction } from '@/api/manage' import { getAction, postAction, downloadFile, putAction } from '@/api/manage'
import uploadFile from '@/components/uploadFile/file' import uploadFile from '@/components/uploadFile/file'
import axios from 'axios' import axios from 'axios'
export default { export default {
name: 'addModel', name: 'addModel',
components: { components: {
@@ -160,7 +164,7 @@ export default {
version: '', // 版本 version: '', // 版本
carType: '', // 车型 carType: '', // 车型
battery: '', // 电池 battery: '', // 电池
motor: '', // 电机 motor: '' // 电机
} }
], ],
conIndex: 0, conIndex: 0,
@@ -200,7 +204,7 @@ export default {
version: '', // 版本 version: '', // 版本
carType: '', // 车型 carType: '', // 车型
battery: '', // 电池 battery: '', // 电池
motor: '', // 电机 motor: '' // 电机
} }
] ]
} else { } else {
@@ -220,7 +224,7 @@ export default {
version: '', // 版本 version: '', // 版本
carType: '', // 车型 carType: '', // 车型
battery: '', // 电池 battery: '', // 电池
motor: '', // 电机 motor: '' // 电机
}) })
} else { } else {
this.$message.warning(this.$t('Theselectedconfiguration')) this.$message.warning(this.$t('Theselectedconfiguration'))
@@ -235,7 +239,9 @@ export default {
this.$confirm({ this.$confirm({
content: _this.$t('ConfirmDelete'), content: _this.$t('ConfirmDelete'),
onOk() { onOk() {
if (displaySeq) {
_this.deleteConfigIdsArray.push(displaySeq) _this.deleteConfigIdsArray.push(displaySeq)
}
_this.deleteConfigIds = _this.deleteConfigIdsArray.join(',') _this.deleteConfigIds = _this.deleteConfigIdsArray.join(',')
let _tt = _this.paramsConfigEOList.splice(index, 1) let _tt = _this.paramsConfigEOList.splice(index, 1)
if (_tt.length === 1) { if (_tt.length === 1) {
@@ -327,7 +333,7 @@ export default {
} }
}) })
} }
}, }
} }
} }
</script> </script>