Merge remote-tracking branch 'origin/dev_third_stage' into dev_third_stage

# Conflicts:
#	jero-boot/db/蔚来标准sql/dev_third_record.sql
This commit is contained in:
wangzhijiang
2022-08-04 14:29:24 +08:00
21 changed files with 596 additions and 31 deletions
@@ -506,6 +506,7 @@ INSERT INTO `laws_weilai`.`sys_permission`(`id`, `parent_id`, `name`, `url`, `co
INSERT INTO `laws_weilai`.`sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `menu_en`) VALUES ('1552484136976973825', '1539426795780005889', '新增', NULL, NULL, NULL, NULL, 2, 'report:exportTemplate:add', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2022-07-28 10:40:37', NULL, NULL, 0, 0, '1', 0, 'Add'); INSERT INTO `laws_weilai`.`sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `menu_en`) VALUES ('1552484136976973825', '1539426795780005889', '新增', NULL, NULL, NULL, NULL, 2, 'report:exportTemplate:add', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2022-07-28 10:40:37', NULL, NULL, 0, 0, '1', 0, 'Add');
UPDATE `laws_weilai`.`sys_permission` SET `parent_id` = '1516964175944798210', `name` = '上报库管理', `url` = '/escalationlibrary', `component` = 'parameter/escalationlibrary/index', `component_name` = NULL, `redirect` = NULL, `menu_type` = 1, `perms` = 'params:report:page', `perms_type` = '1', `sort_no` = 3.00, `always_show` = 0, `icon` = NULL, `is_route` = 1, `is_leaf` = 0, `keep_alive` = 0, `hidden` = 0, `description` = NULL, `create_by` = 'admin', `create_time` = '2022-06-22 10:05:03', `update_by` = 'admin', `update_time` = '2022-07-28 10:52:00', `del_flag` = 0, `rule_flag` = 0, `status` = '1', `internal_or_external` = 0, `menu_en` = 'Escalation library management' WHERE `id` = '1539429224550457346'; UPDATE `laws_weilai`.`sys_permission` SET `parent_id` = '1516964175944798210', `name` = '上报库管理', `url` = '/escalationlibrary', `component` = 'parameter/escalationlibrary/index', `component_name` = NULL, `redirect` = NULL, `menu_type` = 1, `perms` = 'params:report:page', `perms_type` = '1', `sort_no` = 3.00, `always_show` = 0, `icon` = NULL, `is_route` = 1, `is_leaf` = 0, `keep_alive` = 0, `hidden` = 0, `description` = NULL, `create_by` = 'admin', `create_time` = '2022-06-22 10:05:03', `update_by` = 'admin', `update_time` = '2022-07-28 10:52:00', `del_flag` = 0, `rule_flag` = 0, `status` = '1', `internal_or_external` = 0, `menu_en` = 'Escalation library management' WHERE `id` = '1539429224550457346';
UPDATE `laws_weilai`.`sys_permission` SET `parent_id` = '1516964175944798210', `name` = '参数导出模板管理', `url` = '/Parameterexport', `component` = 'parameter/parameterexport/index', `component_name` = NULL, `redirect` = NULL, `menu_type` = 1, `perms` = 'report:exportTemplate:page', `perms_type` = '1', `sort_no` = 2.00, `always_show` = 0, `icon` = NULL, `is_route` = 1, `is_leaf` = 0, `keep_alive` = 0, `hidden` = 0, `description` = NULL, `create_by` = 'admin', `create_time` = '2022-06-22 09:55:24', `update_by` = 'admin', `update_time` = '2022-07-28 10:40:02', `del_flag` = 0, `rule_flag` = 0, `status` = '1', `internal_or_external` = 0, `menu_en` = 'Parameter export template management' WHERE `id` = '1539426795780005889'; UPDATE `laws_weilai`.`sys_permission` SET `parent_id` = '1516964175944798210', `name` = '参数导出模板管理', `url` = '/Parameterexport', `component` = 'parameter/parameterexport/index', `component_name` = NULL, `redirect` = NULL, `menu_type` = 1, `perms` = 'report:exportTemplate:page', `perms_type` = '1', `sort_no` = 2.00, `always_show` = 0, `icon` = NULL, `is_route` = 1, `is_leaf` = 0, `keep_alive` = 0, `hidden` = 0, `description` = NULL, `create_by` = 'admin', `create_time` = '2022-06-22 09:55:24', `update_by` = 'admin', `update_time` = '2022-07-28 10:40:02', `del_flag` = 0, `rule_flag` = 0, `status` = '1', `internal_or_external` = 0, `menu_en` = 'Parameter export template management' WHERE `id` = '1539426795780005889';
INSERT INTO `laws_weilai`.`sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `menu_en`) VALUES ('1554745894282264577', '1552487412749369345', '保存', NULL, NULL, NULL, NULL, 2, 'report:detail:export:save', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2022-08-03 16:28:02', NULL, NULL, 0, 0, '1', 0, 'Save');
-- 角色表-增加对外报告管理员角色 2022-7-28 已同步生产环境 -- 角色表-增加对外报告管理员角色 2022-7-28 已同步生产环境
INSERT INTO `sys_role` VALUES ('1552536424587862017', '对外报告管理员', 'ExternalReportsManager', '对外报告文件夹列表的管理员', 'admin', '2022-7-28 14:08:23', NULL, NULL, NULL, NULL); INSERT INTO `sys_role` VALUES ('1552536424587862017', '对外报告管理员', 'ExternalReportsManager', '对外报告文件夹列表的管理员', 'admin', '2022-7-28 14:08:23', NULL, NULL, NULL, NULL);
@@ -693,6 +694,11 @@ CREATE TABLE `laws_weilai`.`problem_knowledge_base_collect` (
PRIMARY KEY (`id`) USING BTREE PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '问题知识库收藏表' ROW_FORMAT = Dynamic; ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '问题知识库收藏表' ROW_FORMAT = Dynamic;
-- 参数清单 添加字段 2022-08-04
ALTER TABLE `laws_weilai`.`params_manifest`
ADD COLUMN `params_template_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数模板名称' AFTER `params_template_publish_version`;
ALTER TABLE `laws_weilai`.`params_manifest_history`
ADD COLUMN `params_template_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数模板名称' AFTER `source_params_manifest_id`;
-- 问题知识库-country_card-管理发布表 2022-08-04 -- 问题知识库-country_card-管理发布表 2022-08-04
CREATE TABLE `laws_weilai`.`country_card_manage_release` ( CREATE TABLE `laws_weilai`.`country_card_manage_release` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, `id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
@@ -23,7 +23,6 @@ import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -173,15 +172,15 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
/** /**
* 批量删除 * 批量删除
* *
* @param ids * @param paramsCollectManifestVO
* @return * @return
*/ */
@AutoLog(value = "参数项收集清单-批量删除") @AutoLog(value = "参数项收集清单-批量删除")
@ApiOperation(value="参数项收集清单-批量删除", notes="参数项收集清单-批量删除") @ApiOperation(value="参数项收集清单-批量删除", notes="参数项收集清单-批量删除")
@PostMapping(value = "/deleteBatch") @PostMapping(value = "/deleteBatch")
// @RequiresPermissions("params:collectManifest:delete") // @RequiresPermissions("params:collectManifest:delete")
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) { public Result<?> deleteBatch(ParamsCollectManifestVO paramsCollectManifestVO) {
boolean isSuccess = paramsCollectManifestEOService.deleteByIds(Arrays.asList(ids.split(","))); boolean isSuccess = paramsCollectManifestEOService.deleteBatch(paramsCollectManifestVO);
if (isSuccess) { if (isSuccess) {
return Result.OK("批量删除成功!"); return Result.OK("批量删除成功!");
} else { } else {
@@ -94,7 +94,7 @@ public class ParamsManifestEO implements Serializable {
@ApiModelProperty(value = "对应参数模板发布版本") @ApiModelProperty(value = "对应参数模板发布版本")
private Integer paramsTemplatePublishVersion; private Integer paramsTemplatePublishVersion;
@TableField(exist = false) @ApiModelProperty(value = "参数模板名称")
private String paramsTemplateName; private String paramsTemplateName;
@TableField(exist = false) @TableField(exist = false)
@@ -43,7 +43,7 @@
pm.project_id as project_id, pm.project_id as project_id,
pm.params_template_id as params_template_id, pm.params_template_id as params_template_id,
pm.params_template_publish_version as params_template_publish_version, pm.params_template_publish_version as params_template_publish_version,
pt.params_template_name as params_template_name if (pt.params_template_name is not null, pt.params_template_name, pm.params_template_name) as params_template_name
</sql> </sql>
<sql id="BaseQuerySql"> <sql id="BaseQuerySql">
@@ -43,13 +43,22 @@ public interface IParamsCollectManifestEOService extends IService<ParamsCollectM
void deleteById(String id); void deleteById(String id);
/** /**
* 批量删除 * 批量删除-参数清单页面级
* *
* @param ids * @param ids
* @return * @return
*/ */
boolean deleteByIds(List<String> ids); boolean deleteByIds(List<String> ids);
/**
* 批量删除-参数项收集页面级
*
* @param paramsCollectManifestVO
* @return
*/
boolean deleteBatch(ParamsCollectManifestVO paramsCollectManifestVO);
/** /**
* 通过id查询 * 通过id查询
* *
@@ -87,4 +87,7 @@ public interface IParamsManifestEOService extends IService<ParamsManifestEO> {
List<Map<String, String>> labelListForProjectDetails(String projectId); List<Map<String, String>> labelListForProjectDetails(String projectId);
Map<String, Object> getStatisticsForProjectDetails(String paramsManifestId, String cut); Map<String, Object> getStatisticsForProjectDetails(String paramsManifestId, String cut);
// 参数模板删除时,记录参数模板名称到清单
boolean setTemplateName(List<String> paramsTemplateIds);
} }
@@ -235,7 +235,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
} }
/** /**
* 批量删除 * 批量删除-参数清单页面级
* *
* @param ids * @param ids
* @return * @return
@@ -247,6 +247,41 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
return removeByIds(ids); return removeByIds(ids);
} }
/**
* 批量删除-参数项收集页面级
*
* @param paramsCollectManifestVO
* @return
*/
@Override
public boolean deleteBatch(ParamsCollectManifestVO paramsCollectManifestVO) {
List<String> ids = Arrays.asList(paramsCollectManifestVO.getIds().split(","));
String paramsManifestId = paramsCollectManifestVO.getParamsManifestId();
// 删除参数项
boolean isSuccess = removeByIds(ids);
// 关联删除配置数据
paramsConfigDataEOService.deleteByParamsCollectManifestIdList(ids);
// 判断清单收集状态
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);
boolean isSuccess2 = paramsManifestEOService.updateById(updateParamsManifestEO);
if (isSuccess2) {
webSocketServer.sendMessage();
}
}
return isSuccess;
}
/** /**
* 通过id查询 * 通过id查询
* *
@@ -1901,6 +1936,18 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
addReportDetailEO.setParamsManifestId(reportId); addReportDetailEO.setParamsManifestId(reportId);
addReportDetailEO.setSyncTime(syncTime); addReportDetailEO.setSyncTime(syncTime);
addReportDetailEOList.add(addReportDetailEO); addReportDetailEOList.add(addReportDetailEO);
// 添加配置数据
for (ParamsConfigEO configEO : paramsConfigEOList) {
ParamsReportConfigDataEO addReportConfigDataEO = new ParamsReportConfigDataEO();
addReportConfigDataEO.setId(UUID.randomUUID().toString().replace("-",""));
addReportConfigDataEO.setParamsConfigId(configIdMap.get(configEO.getId()));
addReportConfigDataEO.setParamsCollectManifestId(reportDetailId);
addReportConfigDataEO.setTextData(item.getTitleDefaultValue()); //标题默认值
addReportConfigDataEOList.add(addReportConfigDataEO);
}
} }
} }
@@ -705,6 +705,40 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
return result; return result;
} }
@Override
public boolean setTemplateName(List<String> paramsTemplateIds) {
List<ParamsManifestEO> updateManifestEOList = new ArrayList<>();
// 查询被删除模板信息
LambdaQueryWrapper<ParamsTemplateEO> paramsTemplateEOLambdaQueryWrapper = new LambdaQueryWrapper<>();
paramsTemplateEOLambdaQueryWrapper.in(ParamsTemplateEO::getId, paramsTemplateIds);
List<ParamsTemplateEO> paramsTemplateEOList = paramsTemplateEOService.list(paramsTemplateEOLambdaQueryWrapper);
List<String> paramsTemplateIdList = paramsTemplateEOList.stream().map(ParamsTemplateEO::getId).collect(Collectors.toList());
// 查询被删除模板的所有清单
LambdaQueryWrapper<ParamsManifestEO> paramsManifestEOLambdaQueryWrapper = new LambdaQueryWrapper<>();
paramsManifestEOLambdaQueryWrapper.in(ParamsManifestEO::getParamsTemplateId, paramsTemplateIdList);
List<ParamsManifestEO> paramsManifestEOList = list(paramsManifestEOLambdaQueryWrapper);
paramsTemplateEOList.forEach(templateEO-> {
// 查询使用该模板的所有清单
List<ParamsManifestEO> paramsManifestEOS = paramsManifestEOList.stream()
.filter(e-> templateEO.getId().equals(e.getParamsTemplateId()))
.collect(Collectors.toList());
paramsManifestEOS.forEach(manifestEO -> {
ParamsManifestEO updateManifestEO = new ParamsManifestEO();
updateManifestEO.setId(manifestEO.getId());
updateManifestEO.setParamsTemplateName(templateEO.getParamsTemplateName());
updateManifestEO.setFinishTime(manifestEO.getFinishTime());
updateManifestEOList.add(updateManifestEO);
});
});
return updateBatchById(updateManifestEOList);
}
private void getData(List<Map<String, Object>> data, double quantity, String percentage) { private void getData(List<Map<String, Object>> data, double quantity, String percentage) {
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
map.put("quantity", quantity); map.put("quantity", quantity);
@@ -423,8 +423,8 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
configDataVO.setType(ConfigDataTypeEnum.TEXT.getValue()); configDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
configDataVO.setIsMust(paramsCollectManifestEO.getIsMust()); configDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
configDataVO.setIsLock(paramsConfigEO.getIsLock()); configDataVO.setIsLock(paramsConfigEO.getIsLock());
if (StringUtils.isNotEmpty(paramsCollectManifestEO.getTitleDefaultValue())) { if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) {
configDataVO.setDataValue(paramsCollectManifestEO.getTitleDefaultValue()); configDataVO.setDataValue(paramsConfigDataEO.getTextData());
} }
paramsConfigDataVOList.add(configDataVO); paramsConfigDataVOList.add(configDataVO);
@@ -1,5 +1,6 @@
package com.jero.modules.cert.report.service.impl; package com.jero.modules.cert.report.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.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -14,6 +15,7 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
/** /**
* @Description: 上报库 * @Description: 上报库
@@ -132,18 +134,31 @@ public class ParamsReportEOServiceImpl extends ServiceImpl<ParamsReportEOMapper,
List<ParamsReportEO> updateEOList = new ArrayList<>(); List<ParamsReportEO> updateEOList = new ArrayList<>();
List<ParamsManifestVO> paramsManifestEOList = paramsManifestEOMapper.listInfoAll(oldParamsManifestIdList); List<ParamsManifestVO> paramsManifestEOList = paramsManifestEOMapper.listInfoAll(oldParamsManifestIdList);
List<String> paramsManifestIdList = paramsManifestEOList.stream().map(ParamsManifestVO::getId).collect(Collectors.toList());
List<Integer> paramsManifestVersionList = paramsManifestEOList.stream().map(ParamsManifestVO::getVersion).collect(Collectors.toList());
LambdaQueryWrapper<ParamsReportEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(ParamsReportEO::getOldParamsManifestId, paramsManifestIdList)
.in(ParamsReportEO::getVersion, paramsManifestVersionList);
List<ParamsReportEO> paramsReportEOList = list(queryWrapper);
paramsManifestEOList.forEach(paramsManifestVO -> { paramsManifestEOList.forEach(paramsManifestVO -> {
LambdaQueryWrapper<ParamsReportEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(ParamsReportEO::getOldParamsManifestId, paramsManifestVO.getId())
.eq(ParamsReportEO::getVersion, paramsManifestVO.getVersion());
ParamsReportEO paramsReportEO = getOne(queryWrapper);
ParamsReportEO updateEO = new ParamsReportEO(); List<ParamsReportEO> paramsReportEOS = paramsReportEOList.stream()
updateEO.setId(paramsReportEO.getId()); .filter(e-> paramsManifestVO.getId().equals(e.getOldParamsManifestId()) && paramsManifestVO.getVersion().equals(e.getVersion()))
updateEO.setTitle(paramsManifestVO.getTitle()); .collect(Collectors.toList());
updateEO.setProjectName(paramsManifestVO.getProjectName());
if (CollectionUtil.isNotEmpty(paramsReportEOS)) {
ParamsReportEO paramsReportEO = paramsReportEOS.get(0);
ParamsReportEO updateEO = new ParamsReportEO();
updateEO.setId(paramsReportEO.getId());
updateEO.setTitle(paramsManifestVO.getTitle());
updateEO.setProjectName(paramsManifestVO.getProjectName());
updateEOList.add(updateEO);
}
updateEOList.add(updateEO);
}); });
return updateBatchById(updateEOList); return updateBatchById(updateEOList);
@@ -2,6 +2,7 @@ package com.jero.modules.cert.template.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.system.vo.LoginUser; import com.jero.common.system.vo.LoginUser;
import com.jero.modules.cert.collect.service.IParamsManifestEOService;
import com.jero.modules.cert.template.entity.CertCategoryParamsInfoEO; import com.jero.modules.cert.template.entity.CertCategoryParamsInfoEO;
import com.jero.modules.cert.template.entity.ParamsInfoEO; import com.jero.modules.cert.template.entity.ParamsInfoEO;
import com.jero.modules.cert.template.entity.ParamsTemplateEO; import com.jero.modules.cert.template.entity.ParamsTemplateEO;
@@ -16,10 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.transaction.Transactional; import javax.transaction.Transactional;
import java.util.ArrayList; import java.util.*;
import java.util.Date;
import java.util.List;
import java.util.UUID;
/** /**
* @Description: 参数模板表 * @Description: 参数模板表
@@ -37,6 +35,9 @@ public class ParamsTemplateEOServiceImpl extends ServiceImpl<ParamsTemplateEOMap
@Autowired @Autowired
private ICertCategoryParamsInfoEOService certCategoryParamsInfoEOService; private ICertCategoryParamsInfoEOService certCategoryParamsInfoEOService;
@Autowired
private IParamsManifestEOService paramsManifestEOService;
/** /**
* 保存 * 保存
* *
@@ -79,6 +80,10 @@ public class ParamsTemplateEOServiceImpl extends ServiceImpl<ParamsTemplateEOMap
// 关联删除参数项 // 关联删除参数项
certCategoryParamsInfoEOService.deleteByParamsTemplateIds(id); certCategoryParamsInfoEOService.deleteByParamsTemplateIds(id);
paramsInfoEOService.deleteByParamsTemplateIds(id); paramsInfoEOService.deleteByParamsTemplateIds(id);
// 收集清单 添加参数模板名称
paramsManifestEOService.setTemplateName(Arrays.asList(id));
return removeById(id); return removeById(id);
} }
@@ -93,6 +98,10 @@ public class ParamsTemplateEOServiceImpl extends ServiceImpl<ParamsTemplateEOMap
// 关联删除参数项 // 关联删除参数项
certCategoryParamsInfoEOService.deleteByParamsTemplateIds(StringUtils.join(ids, ",")); certCategoryParamsInfoEOService.deleteByParamsTemplateIds(StringUtils.join(ids, ","));
paramsInfoEOService.deleteByParamsTemplateIds(StringUtils.join(ids, ",")); paramsInfoEOService.deleteByParamsTemplateIds(StringUtils.join(ids, ","));
// 收集清单 添加参数模板名称
paramsManifestEOService.setTemplateName(ids);
return removeByIds(ids); return removeByIds(ids);
} }
+2
View File
@@ -1233,4 +1233,6 @@ module.exports = {
displayInformation:'Display information', displayInformation:'Display information',
addComparison:'Add comparison', addComparison:'Add comparison',
showOrNot:'Show or not', showOrNot:'Show or not',
comparisonMarket:'Comparison Market',
share:'share',
} }
+2
View File
@@ -1336,4 +1336,6 @@ module.exports = {
displayInformation:'展示信息', displayInformation:'展示信息',
addComparison:'添加对比', addComparison:'添加对比',
showOrNot:'是否展示', showOrNot:'是否展示',
comparisonMarket:'对比市场',
share:'分享',
} }
@@ -240,7 +240,7 @@ export default {
let postDate = { let postDate = {
paramsInfoPublishEOList: this.selectedRowKeysDate, paramsInfoPublishEOList: this.selectedRowKeysDate,
paramsManifestId: this.paramsManifest.id, paramsManifestId: this.paramsManifest.id,
projectId: this.$route.query.id projectId: this.$route.query.projectId
} }
postAction(`params/collectManifest/add`, postDate).then(res => { postAction(`params/collectManifest/add`, postDate).then(res => {
if (res.success) { if (res.success) {
@@ -322,6 +322,8 @@
xs: { span: 24 }, xs: { span: 24 },
sm: { span: 7 } sm: { span: 7 }
}, },
queryParamQuery:{},
queryParam:{},
querySdtList: [], // 工程接口人 querySdtList: [], // 工程接口人
Dateline: {}, Dateline: {},
getquerySdtId: '', // 当前工程接口人的id getquerySdtId: '', // 当前工程接口人的id
@@ -331,6 +333,9 @@
}, },
mounted() { mounted() {
this.getHeader() this.getHeader()
eventBUs.$on('getTableList', search => {
this.queryParamQuery = search
})
}, },
watch: { watch: {
currentPersonRole: { currentPersonRole: {
@@ -565,7 +570,9 @@
if (!(result.some(val => val.value == res.result.userType))) { if (!(result.some(val => val.value == res.result.userType))) {
res.result.userType = result[0] ? result[0].value : '' res.result.userType = result[0] ? result[0].value : ''
} }
this.queryParam = {...this.queryParamQuery}
this.getTableList(res.result.userType) this.getTableList(res.result.userType)
} else { } else {
this.getTableList(result[0].value) this.getTableList(result[0].value)
} }
@@ -650,6 +657,7 @@
}, },
getTableListReset() { getTableListReset() {
this.formInline = {} this.formInline = {}
this.queryParam = {}
let params = { let params = {
paramsManifestId: this.$route.query.id, paramsManifestId: this.$route.query.id,
pageNo: this.pageNo, pageNo: this.pageNo,
@@ -735,7 +743,8 @@
userTypes: this.currentPersonRole || currentPersonRole, userTypes: this.currentPersonRole || currentPersonRole,
paramsManifestId: paramsManifestid, paramsManifestId: paramsManifestid,
...this.formInline, ...this.formInline,
...currentPersonRole ...currentPersonRole,
...this.queryParam
} }
this.loading = true this.loading = true
getAction(url, params).then((res) => { getAction(url, params).then((res) => {
@@ -96,17 +96,20 @@
</div> </div>
</div> </div>
<countryCardReleaseModel ref="countryCardReleaseModelRef"/> <countryCardReleaseModel ref="countryCardReleaseModelRef"/>
<countryCardReleaseAdd ref="countryCardReleaseAddRef"/>
</div> </div>
</template> </template>
<script> <script>
import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage' import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage'
import countryCardReleaseModel from './countryCardReleaseModel' import countryCardReleaseModel from './countryCardReleaseModel'
import countryCardReleaseAdd from './countryCardReleaseAdd'
export default { export default {
name: 'countryCardRelease', name: 'countryCardRelease',
components: { components: {
countryCardReleaseModel countryCardReleaseModel,
countryCardReleaseAdd
}, },
data() { data() {
return { return {
@@ -193,7 +196,7 @@
this.selectedRowKeys = value this.selectedRowKeys = value
}, },
newlyAddedClick() { newlyAddedClick() {
this.$refs.countryCardReleaseAddRef.add()
}, },
templateMaintenanceClick() { templateMaintenanceClick() {
this.$refs.countryCardReleaseModelRef.getData() this.$refs.countryCardReleaseModelRef.getData()
@@ -221,7 +224,7 @@
} }
}, },
edit() { edit() {
this.$refs.countryCardReleaseAddRef.edit()
}, },
subscribe() { subscribe() {
@@ -0,0 +1,230 @@
<template>
<div>
<a-drawer
:title="title"
:maskClosable="false"
:width="1000"
placement="right"
:closable="true"
@close="handleCancel"
:visible="visible"
style="height: 100%;overflow: auto;padding-bottom: 53px;">
<div style="margin-bottom: 60px">
<a-table
:columns="columns"
:scroll="{x: '100%',y:'calc(100vh - 300px)'}"
:data-source="dataList"
:pagination="false"
:loading="loading">
<span slot="content" slot-scope="text,record,index">
<a-input class="box-input"
v-if="false"
v-model="record.problemLabel"
:placeholder="$t('PleaseEnter')"/>
<a-select :placeholder="$t('PleaseSelect')"
style="width: 100%"
v-if="false"
v-model="record.projectNameId">
<a-select-option v-for="(item, key) in record.projectNameList"
:key="key"
:value="item.id">
<span style="display: inline-block;width: 100%" :title=" item.projectName ">
{{ item.projectName}}
</span>
</a-select-option>
</a-select>
<a-button type="primary" class="button-text"
@click="clickButtonToUpload('verifyDeliverableTemplate',index)">
{{ (record.verifyDeliverableTemplate === 'null' || record.verifyDeliverableTemplate === '' ||
record.verifyDeliverableTemplate == null) ? $t('clickUpload') : $t('viewUploadedFiles')
}}
</a-button>
</span>
</a-table>
<div class="page" v-if="dataList.length > 0">
<a-pagination
:show-total="total => $t('total')+`${total}`+$t('strip')"
show-quick-jumper
show-size-changer
:page-size.sync="pageSize"
:total="total"
:current="pageNo"
@change="onChange"
@showSizeChange="SizeChange"
/>
</div>
</div>
<div class="drawer-bootom-button">
<a-button @click="handleCancel" type="danger" style="margin-right: 16px">{{$t('cancel')}}</a-button>
<a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
</div>
</a-drawer>
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"/>
</div>
</template>
<script>
import { getAction, postAction, deleteAction } from '@/api/manage'
import uploadFile from '@/components/uploadFile/file'
export default {
name: 'countryCardReleaseAdd',
components: {
uploadFile
},
data() {
return {
url: {
list: '',
deleteOne: ''
},
title: '',
visible: false,
selectedRowKeys: [],
dataList: [{}],
loading: false,
pageNo: 1,
pageSize: 10,
total: 0,
confirmLoading: false,
index: '',
columns: [
{
title: this.$t('LabelName'),
dataIndex: 'LabelName',
align: 'center',
ellipsis: true
},
{
title: this.$t('describe'),
dataIndex: 'describe',
align: 'center',
ellipsis: true
},
{
title: this.$t('content'),
align: 'center',
fixed: 'right',
width: 180,
scopedSlots: { customRender: 'content' }
}
]
}
},
mounted() {
},
methods: {
add() {
this.visible = true
this.title = this.$t('newlyAdded')
},
edit() {
this.visible = true
this.title = this.$t('edit')
},
clickButtonToUpload(item, index) {
this.$refs.uploadFile.perentHandleFunc()
this.index = index
this.$refs.uploadFile.visible = true
this.uploadName = item
getAction('sys/common/getFileInfos', { id: this.dataList[this.index][this.uploadName] }).then((res) => {
if (res.success) {
this.$refs.uploadFile.perentHandleFunc(res.result)
} else {
this.$refs.uploadFile.perentHandleFunc()
}
})
},
/** 上传文件的回调 */
uploadSuccess(data) {
let attIdList = []
if (data && data.length > 0) {
data.map(item => {
attIdList.push(item.id || data.name)
})
}
/** 赋值给当前对应的表单文件 */
this.dataList[this.index][this.uploadName] = attIdList.join(',')
this.dataList = [...this.dataList]
},
handleCancel() {
this.visible = false
},
handleSubmit() {
},
onChange(page, pageSize) {
this.pageNo = page
this.replacePage()
},
SizeChange(page, pageSize) {
this.pageNo = 1
this.pageSize = pageSize
this.replacePage()
},
replacePage() {
let query = {
pageNo: this.pageNo,
pageSize: this.pageSize
}
this.loading = true
postAction(this.url.list, query).then((res) => {
if (res.success) {
this.dataList = res.result.records || []
this.total = res.result.total
this.loading = false
} else {
this.dataList = []
this.total = 0
this.loading = false
}
})
}
}
}
</script>
<style scoped>
.page {
text-align: right;
margin-top: 20px;
}
.drawer-bootom-button {
position: absolute;
bottom: 0;
width: 100%;
z-index: 100;
border-top: 1px solid #e8e8e8;
padding: 10px 16px;
text-align: right;
left: 0;
background: #fff;
border-radius: 0 0 2px 2px;
}
.box-title {
width: 100%;
text-align: right;
margin-bottom: 20px;
}
.operator-text {
cursor: pointer;
margin-right: 13px;
font-size: 14px;
font-weight: 400;
color: #040B29;
display: inline-block;
}
.button-text {
height: 38px;
width: 100%;
line-height: 38px;
background: #fff;
border: 1px #00B3BE solid;
color: #00B3BE;
}
</style>
@@ -70,17 +70,19 @@
</div> </div>
</div> </div>
<displayInformationModel ref="displayInformationModelRef"/> <displayInformationModel ref="displayInformationModelRef"/>
<countryCardViewAdd ref="countryCardViewAddRef" @countryCardViewAddForm="countryCardViewAddForm"/>
</div> </div>
</template> </template>
<script> <script>
import { getAction, postAction, downloadFile } from '@/api/manage' import { getAction, postAction, downloadFile } from '@/api/manage'
import displayInformationModel from './displayInformationModel' import displayInformationModel from './displayInformationModel'
import countryCardViewAdd from './countryCardViewAdd'
export default { export default {
name: 'countryCardView', name: 'countryCardView',
components: { components: {
displayInformationModel displayInformationModel,
countryCardViewAdd
}, },
data() { data() {
return {} return {}
@@ -92,6 +94,9 @@
this.$refs.displayInformationModelRef.getData() this.$refs.displayInformationModelRef.getData()
}, },
newlyAddedClick() { newlyAddedClick() {
this.$refs.countryCardViewAddRef.add()
},
countryCardViewAddForm(){
} }
} }
@@ -0,0 +1,189 @@
<template>
<a-modal
:title="$t('addComparison')"
:width="700"
:height="500"
:visible="visible"
:confirm-loading="confirmLoading"
:maskClosable="false"
@ok="handleOk"
@cancel="handleCancel"
>
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('applicableMarket')">{{$t('applicableMarket')}}</span>
</div>
<a-form-model-item class="itemModel" prop="applicableMarket">
<a-input class="box-input"
v-model="formInline.applicableMarket"
:placeholder="$t('PleaseEnter')+$t('applicableMarket')"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-for="(item,index) in formInline.dataList">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text" :title="$t('comparisonMarket')+(index+1)">{{$t('comparisonMarket')+(index+1)}}</span>
</div>
<a-form-model-item class="itemModel" style="width: calc(100% - 220px)" prop="comparisonMarket">
<a-input class="box-input"
v-model="formInline.comparisonMarket"
:placeholder="$t('PleaseEnter')+$t('comparisonMarket')"/>
</a-form-model-item>
<a-icon class="icon-size"
style="margin-left: 8px"
@click="addData"
v-if="(formInline.dataList.length-1) == index"
type="plus-circle"/>
<a-icon class="icon-size"
@click="deleteData"
v-if="formInline.dataList.length > 1 && (formInline.dataList.length - 1) == index"
type="minus-circle"/>
</div>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</template>
<script>
import { getAction, postAction, downloadFile } from '@/api/manage'
export default {
name: 'countryCardViewAd',
data() {
return {
visible: false,
confirmLoading: false,
formInline: {},
rules: {
personChargeName: [
{
required: true,
message: this.$t('personCharge') + this.$t('cannotEmpty'),
trigger: 'change'
},
{
max: 100,
message: this.$t('personCharge') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'change'
}
],
problemLabel: [
{
required: true,
message: this.$t('problemLabel') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 100,
message: this.$t('problemLabel') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
]
},
title: ''
}
},
mounted() {
},
methods: {
add() {
this.visible = true
this.$nextTick(() => {
this.formInline = {}
this.formInline.dataList = [{
relatedSection: ''
}]
this.formInline = { ...this.formInline }
this.$refs.ruleForm.clearValidate()
})
},
PersonnelSelectionChange(value, id) {
this.formInline[value] = id
this.formInline = { ...this.formInline }
},
handleOk() {
this.$refs.ruleForm.validate(valid => {
if (valid) {
}
})
},
handleCancel() {
this.visible = false
},
addData() {
this.formInline.dataList.push({
relatedSection: ''
})
this.formInline = { ...this.formInline }
},
deleteData() {
this.formInline.dataList.pop()
this.formInline = { ...this.formInline }
}
}
}
</script>
<style scoped>
.box-title-text {
line-height: 1.4;
display: flex;
}
.title-text {
width: 84px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 42px;
}
.box-input {
display: inline-block;
height: 38px;
width: 100%;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
}
.title-text-text {
margin-top: 9px;
}
.formAdd {
margin-bottom: 40px;
}
.Required {
color: red;
margin-right: 4px;
}
.icon-size {
font-size: 18px;
margin-top: 14px;
margin-right: 4px;
}
</style>
@@ -18,7 +18,7 @@
</div> </div>
<div @click="handleCompare" class="operator-text" v-has="'document:pullMessage'"> <div @click="handleCompare" class="operator-text" v-has="'document:pullMessage'">
<a-icon type="rocket" :rotate="45"/> <a-icon type="rocket" :rotate="45"/>
{{$t('Push')}} {{$t('share')}}
</div> </div>
<div @click="handleModule" class="operator-text" v-has="'document:exportTemplate'"> <div @click="handleModule" class="operator-text" v-has="'document:exportTemplate'">
<a-icon type="download"/> <a-icon type="download"/>
@@ -424,6 +424,7 @@
<script> <script>
import TableCollection from '@/components/tableCollection/index' import TableCollection from '@/components/tableCollection/index'
import { getAction, postAction } from '../../../api/manage' import { getAction, postAction } from '../../../api/manage'
import eventBUs from '../../../common/event'
import ParameterLibraryAdd from '@/components/ParameterLibraryAdd/index' import ParameterLibraryAdd from '@/components/ParameterLibraryAdd/index'
import globalAdvancedQuery from '@/components/globalAdvancedQuery/index' import globalAdvancedQuery from '@/components/globalAdvancedQuery/index'
import SynchronousSubmissionLibrary from '@/components/SynchronousSubmissionLibrary/index' import SynchronousSubmissionLibrary from '@/components/SynchronousSubmissionLibrary/index'
@@ -854,6 +855,7 @@
} }
this.queryParamQuery = sqp this.queryParamQuery = sqp
this.$refs.CollectionTabel.getTableList(this.queryParamQuery) this.$refs.CollectionTabel.getTableList(this.queryParamQuery)
eventBUs.$emit('getTableList',this.queryParamQuery)
}, },
// 认证工程师 批量删除 权限 // 认证工程师 批量删除 权限
// 仅仅状态为 待发起收集 工程接口人退回 变更 可以批量删除 // 仅仅状态为 待发起收集 工程接口人退回 变更 可以批量删除
@@ -1530,6 +1532,7 @@
}, },
searchReset() { searchReset() {
this.formInline = {} this.formInline = {}
this.queryParamQuery = {}
this.$refs.CollectionTabel.getTableListReset() this.$refs.CollectionTabel.getTableListReset()
this.$refs.globalAdvancedQueryRef.handleReset() this.$refs.globalAdvancedQueryRef.handleReset()
// this.$refs.globalAdvancedQueryRef.emitCallback() // this.$refs.globalAdvancedQueryRef.emitCallback()