合并代码
This commit is contained in:
@@ -127,6 +127,10 @@ ADD COLUMN `brand` varchar(255) NULL COMMENT '品牌' AFTER `prc_num`;
|
|||||||
ALTER TABLE `laws_opinion_gather`
|
ALTER TABLE `laws_opinion_gather`
|
||||||
ADD COLUMN `brand` varchar(255) NULL COMMENT '品牌' AFTER `evaluator_ids`;
|
ADD COLUMN `brand` varchar(255) NULL COMMENT '品牌' AFTER `evaluator_ids`;
|
||||||
|
|
||||||
|
-- 参数导出模板管理添加字段 2022-12-19(未同步生产库)
|
||||||
|
ALTER TABLE `params_export_template`
|
||||||
|
ADD COLUMN `region` varchar(1000) NULL COMMENT '适用地区' AFTER `file_connect_id`;
|
||||||
|
|
||||||
-- 参数收集清单-操作记录(历史日志) 2022-12-26 未同步生产环境
|
-- 参数收集清单-操作记录(历史日志) 2022-12-26 未同步生产环境
|
||||||
CREATE TABLE `laws_weilai`.`params_collect_manifest_log` (
|
CREATE TABLE `laws_weilai`.`params_collect_manifest_log` (
|
||||||
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
|
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
|
||||||
|
|||||||
+21
@@ -16,6 +16,7 @@ import com.jero.common.system.vo.LoginUser;
|
|||||||
import com.jero.common.util.ImportExcelUtil;
|
import com.jero.common.util.ImportExcelUtil;
|
||||||
import com.jero.common.util.SqlInjectionUtil;
|
import com.jero.common.util.SqlInjectionUtil;
|
||||||
import com.jero.common.util.oConvertUtils;
|
import com.jero.common.util.oConvertUtils;
|
||||||
|
import com.jero.modules.enums.DictCodeEnum;
|
||||||
import com.jero.modules.enums.FixedFieldEnum;
|
import com.jero.modules.enums.FixedFieldEnum;
|
||||||
import com.jero.modules.enums.IsTagDict;
|
import com.jero.modules.enums.IsTagDict;
|
||||||
import com.jero.modules.system.entity.SysDict;
|
import com.jero.modules.system.entity.SysDict;
|
||||||
@@ -23,8 +24,10 @@ import com.jero.modules.system.entity.SysDictItem;
|
|||||||
import com.jero.modules.system.entity.SysUser;
|
import com.jero.modules.system.entity.SysUser;
|
||||||
import com.jero.modules.system.model.SysDictTree;
|
import com.jero.modules.system.model.SysDictTree;
|
||||||
import com.jero.modules.system.model.TreeSelectModel;
|
import com.jero.modules.system.model.TreeSelectModel;
|
||||||
|
import com.jero.modules.system.service.IProjectUserBrandService;
|
||||||
import com.jero.modules.system.service.ISysDictItemService;
|
import com.jero.modules.system.service.ISysDictItemService;
|
||||||
import com.jero.modules.system.service.ISysDictService;
|
import com.jero.modules.system.service.ISysDictService;
|
||||||
|
import com.jero.modules.system.service.ISysUserService;
|
||||||
import com.jero.modules.system.vo.SysDictPage;
|
import com.jero.modules.system.vo.SysDictPage;
|
||||||
import com.jero.modules.utils.HanYuPinYinUtil;
|
import com.jero.modules.utils.HanYuPinYinUtil;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
@@ -53,6 +56,7 @@ 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.*;
|
import java.util.*;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
@@ -74,6 +78,10 @@ public class SysDictController {
|
|||||||
private ISysDictItemService sysDictItemService;
|
private ISysDictItemService sysDictItemService;
|
||||||
@Autowired
|
@Autowired
|
||||||
public RedisTemplate<String, Object> redisTemplate;
|
public RedisTemplate<String, Object> redisTemplate;
|
||||||
|
@Autowired
|
||||||
|
private ISysUserService sysUserService;
|
||||||
|
@Autowired
|
||||||
|
private IProjectUserBrandService projectUserBrandService;
|
||||||
|
|
||||||
@RequestMapping(value = "/page", method = RequestMethod.GET)
|
@RequestMapping(value = "/page", method = RequestMethod.GET)
|
||||||
@ApiOperation(value = "字典控制器-分页列表查询", notes = "字典控制器-分页列表查询")
|
@ApiOperation(value = "字典控制器-分页列表查询", notes = "字典控制器-分页列表查询")
|
||||||
@@ -757,4 +765,17 @@ public class SysDictController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiOperation(value = "查询出当前用户可配置品牌")
|
||||||
|
@GetMapping(value = "/getBrandDict")
|
||||||
|
public Result<List<DictModel>> getBrandDict() {
|
||||||
|
List<DictModel> dictModels = sysDictService.queryDictItemsByCode(DictCodeEnum.BRAND.getValue());
|
||||||
|
if (!sysUserService.isAdministrator()) {
|
||||||
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
|
List<String> brands = projectUserBrandService.queryBrandByUserId(sysUser.getId());
|
||||||
|
dictModels = dictModels.stream().filter(dictModel -> brands.contains(dictModel.getValue())).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
return Result.OK(dictModels);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+11
-4
@@ -11,11 +11,9 @@ import com.jero.common.constant.CommonConstant;
|
|||||||
import com.jero.common.system.query.QueryGenerator;
|
import com.jero.common.system.query.QueryGenerator;
|
||||||
import com.jero.common.util.oConvertUtils;
|
import com.jero.common.util.oConvertUtils;
|
||||||
import com.jero.modules.system.entity.*;
|
import com.jero.modules.system.entity.*;
|
||||||
|
import com.jero.modules.system.enums.AdmininstratorAuthRoleEnum;
|
||||||
import com.jero.modules.system.model.TreeModel;
|
import com.jero.modules.system.model.TreeModel;
|
||||||
import com.jero.modules.system.service.ISysPermissionDataRuleService;
|
import com.jero.modules.system.service.*;
|
||||||
import com.jero.modules.system.service.ISysPermissionService;
|
|
||||||
import com.jero.modules.system.service.ISysRolePermissionService;
|
|
||||||
import com.jero.modules.system.service.ISysRoleService;
|
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@@ -36,6 +34,7 @@ import javax.servlet.http.HttpServletRequest;
|
|||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
@@ -62,6 +61,9 @@ public class SysRoleController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private ISysPermissionService sysPermissionService;
|
private ISysPermissionService sysPermissionService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ISysUserService sysUserService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页列表查询
|
* 分页列表查询
|
||||||
* @param role
|
* @param role
|
||||||
@@ -187,6 +189,11 @@ public class SysRoleController {
|
|||||||
public Result<List<SysRole>> queryall() {
|
public Result<List<SysRole>> queryall() {
|
||||||
Result<List<SysRole>> result = new Result<>();
|
Result<List<SysRole>> result = new Result<>();
|
||||||
List<SysRole> list = sysRoleService.list();
|
List<SysRole> list = sysRoleService.list();
|
||||||
|
//系统管理员才能授权的角色
|
||||||
|
if (!sysUserService.isAdministrator()) {
|
||||||
|
List<String> roleCodes = AdmininstratorAuthRoleEnum.getRoleCodes();
|
||||||
|
list = list.stream().filter(sysRole -> !roleCodes.contains(sysRole.getRoleCode())).collect(Collectors.toList());
|
||||||
|
}
|
||||||
if(list==null||list.size()<=0) {
|
if(list==null||list.size()<=0) {
|
||||||
result.error500("未找到角色信息");
|
result.error500("未找到角色信息");
|
||||||
}else {
|
}else {
|
||||||
|
|||||||
+36
@@ -0,0 +1,36 @@
|
|||||||
|
package com.jero.modules.system.enums;
|
||||||
|
|
||||||
|
import com.jero.common.util.oConvertUtils;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public enum AdmininstratorAuthRoleEnum {
|
||||||
|
|
||||||
|
admin("admin","系统管理员"),
|
||||||
|
//brand_administrator("BrandAdministrator","品牌管理员"),
|
||||||
|
external_reports_manager("ExternalReportsManager","对外报告管理员"),
|
||||||
|
country_card_manage("countryCardManage","countryCard管理员");
|
||||||
|
|
||||||
|
String roleCode;
|
||||||
|
String roleName;
|
||||||
|
|
||||||
|
AdmininstratorAuthRoleEnum() {
|
||||||
|
}
|
||||||
|
|
||||||
|
AdmininstratorAuthRoleEnum(String roleCode, String roleName) {
|
||||||
|
this.roleCode = roleCode;
|
||||||
|
this.roleName = roleName;
|
||||||
|
}
|
||||||
|
public static List<String> getRoleCodes(){
|
||||||
|
List<String> list = new ArrayList<>();
|
||||||
|
for (AdmininstratorAuthRoleEnum val : AdmininstratorAuthRoleEnum.values()) {
|
||||||
|
list.add(val.roleCode);
|
||||||
|
}
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
+8
@@ -109,6 +109,14 @@ public class ParamsManifestEO implements Serializable {
|
|||||||
@ApiModelProperty(value = "说明")
|
@ApiModelProperty(value = "说明")
|
||||||
private String explanation;
|
private String explanation;
|
||||||
|
|
||||||
|
//排序字段
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderByField;
|
||||||
|
|
||||||
|
//排序规则
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderBy;
|
||||||
|
|
||||||
@ApiModelProperty(value = "项目相关版本对应的项目id")
|
@ApiModelProperty(value = "项目相关版本对应的项目id")
|
||||||
private String projectVersionId;
|
private String projectVersionId;
|
||||||
|
|
||||||
|
|||||||
+39
-2
@@ -73,7 +73,44 @@
|
|||||||
from params_manifest pm left join params_template pt on pm.params_template_id = pt.id
|
from params_manifest pm left join params_template pt on pm.params_template_id = pt.id
|
||||||
) tmp_tb
|
) tmp_tb
|
||||||
<include refid="BaseQuerySql"/>
|
<include refid="BaseQuerySql"/>
|
||||||
order by create_time desc
|
<if test="paramsManifestEO.orderByField == 'create_time'">
|
||||||
|
order by CONVERT( tmp_tb.create_time USING gbk) COLLATE gbk_chinese_ci
|
||||||
|
</if>
|
||||||
|
<if test="paramsManifestEO.orderByField == 'create_by'">
|
||||||
|
order by CONVERT( tmp_tb.create_by USING gbk) COLLATE gbk_chinese_ci
|
||||||
|
</if>
|
||||||
|
<if test="paramsManifestEO.orderByField == 'version'">
|
||||||
|
order by CONVERT( tmp_tb.version USING gbk) COLLATE gbk_chinese_ci
|
||||||
|
</if>
|
||||||
|
<if test="paramsManifestEO.orderByField == 'finish_time'">
|
||||||
|
order by CONVERT( tmp_tb.finish_time USING gbk) COLLATE gbk_chinese_ci
|
||||||
|
</if>
|
||||||
|
<if test="paramsManifestEO.orderByField == 'project_version'">
|
||||||
|
order by CONVERT( tmp_tb.project_version USING gbk) COLLATE gbk_chinese_ci
|
||||||
|
</if>
|
||||||
|
<if test="paramsManifestEO.orderByField == 'params_template_name'">
|
||||||
|
order by CONVERT( tmp_tb.params_template_name USING gbk) COLLATE gbk_chinese_ci
|
||||||
|
</if>
|
||||||
|
<if test="paramsManifestEO.orderByField == 'state'">
|
||||||
|
order by CONVERT( tmp_tb.state USING gbk) COLLATE gbk_chinese_ci
|
||||||
|
</if>
|
||||||
|
<if test="paramsManifestEO.orderByField == 'title'">
|
||||||
|
order by CONVERT( tmp_tb.title USING gbk) COLLATE gbk_chinese_ci
|
||||||
|
</if>
|
||||||
|
<if test="paramsManifestEO.orderBy == 1 and paramsManifestEO.orderByField != null and paramsManifestEO.orderByField != ''">
|
||||||
|
asc
|
||||||
|
</if>
|
||||||
|
<if test="paramsManifestEO.orderBy == 2 and paramsManifestEO.orderByField != null and paramsManifestEO.orderByField != ''">
|
||||||
|
desc
|
||||||
|
</if>
|
||||||
|
<if test="paramsManifestEO.orderByField == null or paramsManifestEO.orderByField == ''">
|
||||||
|
order by tmp_tb.create_time desc
|
||||||
|
</if>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="pageInfoAll" resultMap="ParamsManifestEOResultMapForCopy">
|
<select id="pageInfoAll" resultMap="ParamsManifestEOResultMapForCopy">
|
||||||
@@ -194,4 +231,4 @@
|
|||||||
WHERE user_id = #{userId}) a ON pm.project_id = a.id
|
WHERE user_id = #{userId}) a ON pm.project_id = a.id
|
||||||
where pm.state = #{state}
|
where pm.state = #{state}
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
+3
@@ -379,6 +379,9 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IPage pageInfo(IPage page, ParamsManifestEO paramsManifestEO) {
|
public IPage pageInfo(IPage page, ParamsManifestEO paramsManifestEO) {
|
||||||
|
// paramsManifestEO.setOrderByField("title");
|
||||||
|
// paramsManifestEO.setOrderBy("1");
|
||||||
|
|
||||||
IPage rows = paramsManifestEOMapper.pageInfo(page, paramsManifestEO);
|
IPage rows = paramsManifestEOMapper.pageInfo(page, paramsManifestEO);
|
||||||
return rows;
|
return rows;
|
||||||
}
|
}
|
||||||
|
|||||||
+97
-7
@@ -11,6 +11,10 @@ import com.jero.common.system.vo.DictModel;
|
|||||||
import com.jero.modules.cert.report.entity.ParamsExportTemplateEO;
|
import com.jero.modules.cert.report.entity.ParamsExportTemplateEO;
|
||||||
import com.jero.modules.cert.report.enums.ExportTemplateStateEnum;
|
import com.jero.modules.cert.report.enums.ExportTemplateStateEnum;
|
||||||
import com.jero.modules.cert.report.service.IParamsExportTemplateEOService;
|
import com.jero.modules.cert.report.service.IParamsExportTemplateEOService;
|
||||||
|
import com.jero.modules.dummy.enums.DummyInventoryBaseFieldEnum;
|
||||||
|
import com.jero.modules.dummy.enums.OrderEnum;
|
||||||
|
import com.jero.modules.system.entity.SysDictItem;
|
||||||
|
import com.jero.modules.system.mapper.SysDictItemMapper;
|
||||||
import com.jero.modules.ocr.util.LineHumpUtil;
|
import com.jero.modules.ocr.util.LineHumpUtil;
|
||||||
import com.jero.modules.system.enums.DicCodeEnum;
|
import com.jero.modules.system.enums.DicCodeEnum;
|
||||||
import com.jero.modules.system.service.ISysDictService;
|
import com.jero.modules.system.service.ISysDictService;
|
||||||
@@ -21,14 +25,23 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
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.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.text.Collator;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@@ -49,6 +62,9 @@ public class ParamsExportTemplateEOController extends JeroController<ParamsExpor
|
|||||||
@Autowired
|
@Autowired
|
||||||
private ISysDictService sysDictService;
|
private ISysDictService sysDictService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private SysDictItemMapper sysDictItemMapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页列表查询
|
* 分页列表查询
|
||||||
*
|
*
|
||||||
@@ -70,20 +86,31 @@ public class ParamsExportTemplateEOController extends JeroController<ParamsExpor
|
|||||||
paramsExportTemplateEO.setTemplateName(paramsExportTemplateEO.getTemplateName().replace("%", "\\%"));
|
paramsExportTemplateEO.setTemplateName(paramsExportTemplateEO.getTemplateName().replace("%", "\\%"));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (StringUtils.isNotBlank(paramsExportTemplateEO.getOrderByField())) {
|
// if (StringUtils.isNotBlank(paramsExportTemplateEO.getOrderByField())) {
|
||||||
paramsExportTemplateEO.setOrderByField(LineHumpUtil.humpToLine2(paramsExportTemplateEO.getOrderByField()));
|
// paramsExportTemplateEO.setOrderByField(LineHumpUtil.humpToLine2(paramsExportTemplateEO.getOrderByField()));
|
||||||
}
|
// }
|
||||||
|
|
||||||
QueryWrapper<ParamsExportTemplateEO> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<ParamsExportTemplateEO> queryWrapper = new QueryWrapper<>();
|
||||||
if(StringUtils.isNotBlank(paramsExportTemplateEO.getRegion())){
|
if(StringUtils.isNotBlank(paramsExportTemplateEO.getRegion())){
|
||||||
queryWrapper.in("region",paramsExportTemplateEO.getRegion());
|
queryWrapper.in("region",paramsExportTemplateEO.getRegion());
|
||||||
}
|
}
|
||||||
queryWrapper.lambda().like(StringUtils.isNotEmpty(paramsExportTemplateEO.getTemplateName()), ParamsExportTemplateEO::getTemplateName, paramsExportTemplateEO.getTemplateName());
|
queryWrapper.lambda().like(StringUtils.isNotEmpty(paramsExportTemplateEO.getTemplateName()), ParamsExportTemplateEO::getTemplateName, paramsExportTemplateEO.getTemplateName());
|
||||||
queryWrapper.orderBy(StringUtils.isNotBlank(paramsExportTemplateEO.getOrderByField()), "1".equals(paramsExportTemplateEO.getOrderBy())?true:false, paramsExportTemplateEO.getOrderByField())
|
if(StringUtils.isNotBlank(paramsExportTemplateEO.getOrderByField())){
|
||||||
.orderBy(StringUtils.isBlank(paramsExportTemplateEO.getOrderByField()), false, "create_time"); // 默认按创建时间降序
|
if("template_name".equals(paramsExportTemplateEO.getOrderByField())
|
||||||
|
|| "update_time".equals(paramsExportTemplateEO.getOrderByField())){
|
||||||
|
queryWrapper.orderBy(org.apache.commons.lang.StringUtils.isNotBlank(paramsExportTemplateEO.getOrderByField()),
|
||||||
|
OrderEnum.POSITIVE.getValue().equals(paramsExportTemplateEO.getOrderBy())?true:false,
|
||||||
|
"convert("+paramsExportTemplateEO.getOrderByField()+" using gbk)");
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
queryWrapper.orderBy(StringUtils.isBlank(paramsExportTemplateEO.getOrderByField()), false, "create_time");
|
||||||
|
}
|
||||||
|
|
||||||
Page<ParamsExportTemplateEO> page = new Page<ParamsExportTemplateEO>(pageNo, pageSize);
|
Page<ParamsExportTemplateEO> page = new Page<ParamsExportTemplateEO>(pageNo, pageSize);
|
||||||
IPage<ParamsExportTemplateEO> pageList = paramsExportTemplateEOService.page(page, queryWrapper);
|
IPage<ParamsExportTemplateEO> pageList = paramsExportTemplateEOService.page(page, queryWrapper);
|
||||||
|
|
||||||
|
//适用地区排序(特殊处理)
|
||||||
|
pageList = regionSort(paramsExportTemplateEO,pageNo,pageSize,queryWrapper,pageList);
|
||||||
|
|
||||||
// 处理 状态 中英文
|
// 处理 状态 中英文
|
||||||
List<ParamsExportTemplateEO> rows = pageList.getRecords();
|
List<ParamsExportTemplateEO> rows = pageList.getRecords();
|
||||||
Map<String, String> stateMap = ExportTemplateStateEnum.toMap(cut);
|
Map<String, String> stateMap = ExportTemplateStateEnum.toMap(cut);
|
||||||
@@ -99,6 +126,69 @@ public class ParamsExportTemplateEOController extends JeroController<ParamsExpor
|
|||||||
return Result.OK(pageList);
|
return Result.OK(pageList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private IPage<ParamsExportTemplateEO> regionSort(ParamsExportTemplateEO paramsExportTemplateEO,
|
||||||
|
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||||
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
||||||
|
QueryWrapper<ParamsExportTemplateEO> queryWrapper,
|
||||||
|
IPage<ParamsExportTemplateEO> pageList) {
|
||||||
|
if(org.apache.commons.lang.StringUtils.isNotBlank(paramsExportTemplateEO.getOrderByField())
|
||||||
|
&& "region".equals(paramsExportTemplateEO.getOrderByField())){
|
||||||
|
List<SysDictItem> regionDictItemList = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseFieldEnum.REGION.getValue());
|
||||||
|
List<ParamsExportTemplateEO> list = paramsExportTemplateEOService.list(queryWrapper);
|
||||||
|
for (ParamsExportTemplateEO paramsExportTemplateEOTemp : list) {
|
||||||
|
if(org.apache.commons.lang.StringUtils.isNotEmpty(paramsExportTemplateEOTemp.getRegion())){
|
||||||
|
StringBuilder regionBuilder = new StringBuilder();
|
||||||
|
for (String s : paramsExportTemplateEOTemp.getRegion().split(",")) {
|
||||||
|
String regionName = regionDictItemList.stream().filter(e -> e.getItemValue().equals(s)).map(f -> f.getItemText()).collect(Collectors.joining(","));
|
||||||
|
regionBuilder.append(regionName).append(",");
|
||||||
|
}
|
||||||
|
paramsExportTemplateEOTemp.setRegionName(regionBuilder.substring(0, regionBuilder.toString().length() - 1));
|
||||||
|
}else{
|
||||||
|
paramsExportTemplateEOTemp.setRegionName("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(paramsExportTemplateEO.getOrderBy())) {
|
||||||
|
Collections.sort(list, (e1, e2) -> {
|
||||||
|
return comparator.compare(e1.getRegionName(), e2.getRegionName());
|
||||||
|
});
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(paramsExportTemplateEO.getOrderBy())) {
|
||||||
|
Collections.sort(list, (e1, e2) -> {
|
||||||
|
return comparator.compare(e2.getRegionName(), e1.getRegionName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
pageList = getPages(pageNo, pageSize, list);
|
||||||
|
}
|
||||||
|
return pageList;
|
||||||
|
}
|
||||||
|
public Page getPages(Integer currentPage, Integer pageSize, List<ParamsExportTemplateEO> 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;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
private String getRegion(ParamsExportTemplateEO paramsExportTemplateEO, List<DictModel> regionList, ParamsExportTemplateEO exportTemplateEO) {
|
private String getRegion(ParamsExportTemplateEO paramsExportTemplateEO, List<DictModel> regionList, ParamsExportTemplateEO exportTemplateEO) {
|
||||||
//适用地区
|
//适用地区
|
||||||
List<DictModel> dictModelList = new ArrayList<>();
|
List<DictModel> dictModelList = new ArrayList<>();
|
||||||
|
|||||||
+115
-7
@@ -4,27 +4,46 @@ 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.report.entity.ParamsReportConfigEO;
|
import com.jero.modules.cert.report.entity.ParamsReportConfigEO;
|
||||||
|
import com.jero.common.system.vo.DictModel;
|
||||||
import com.jero.modules.cert.report.entity.ParamsReportEO;
|
import com.jero.modules.cert.report.entity.ParamsReportEO;
|
||||||
import com.jero.modules.cert.report.entity.ParamsReportExportHistoryEO;
|
import com.jero.modules.cert.report.entity.ParamsReportExportHistoryEO;
|
||||||
import com.jero.modules.cert.report.service.IParamsReportConfigEOService;
|
import com.jero.modules.cert.report.service.IParamsReportConfigEOService;
|
||||||
import com.jero.modules.cert.report.service.IParamsReportEOService;
|
import com.jero.modules.cert.report.service.IParamsReportEOService;
|
||||||
import com.jero.modules.cert.report.service.IParamsReportExportHistoryEOService;
|
import com.jero.modules.cert.report.service.IParamsReportExportHistoryEOService;
|
||||||
|
import com.jero.modules.dummy.enums.OrderEnum;
|
||||||
|
import com.jero.modules.system.enums.DicCodeEnum;
|
||||||
|
import com.jero.modules.system.service.ISysDictService;
|
||||||
import com.jero.modules.system.util.StringUtils;
|
import com.jero.modules.system.util.StringUtils;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
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.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
import java.text.Collator;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -46,7 +65,11 @@ public class ParamsReportEOController extends JeroController<ParamsReportEO, IPa
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private IParamsReportConfigEOService paramsReportConfigEOService;
|
private IParamsReportConfigEOService paramsReportConfigEOService;
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ISysDictService sysDictService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页列表查询
|
* 分页列表查询
|
||||||
*
|
*
|
||||||
@@ -72,12 +95,44 @@ public class ParamsReportEOController extends JeroController<ParamsReportEO, IPa
|
|||||||
paramsReportEO.setTitle(paramsReportEO.getTitle().replace("%", "\\%"));
|
paramsReportEO.setTitle(paramsReportEO.getTitle().replace("%", "\\%"));
|
||||||
}
|
}
|
||||||
|
|
||||||
IPage page = new Page(pageNo, pageSize);
|
// IPage page = new Page(pageNo, pageSize);
|
||||||
IPage pageList = paramsReportEOService.pageInfo(page, paramsReportEO);
|
// IPage pageList = paramsReportEOService.pageInfo(page, paramsReportEO);
|
||||||
List<ParamsReportEO> rows = pageList.getRecords();
|
// List<ParamsReportEO> rows = pageList.getRecords();
|
||||||
for (ParamsReportEO row : rows) {
|
// for (ParamsReportEO row : rows) {
|
||||||
row.setPageName(row.getProjectName() + "-" + row.getTargetMarket() + "-" + row.getTitle());
|
// row.setPageName(row.getProjectName() + "-" + row.getTargetMarket() + "-" + row.getTitle());
|
||||||
|
// }
|
||||||
|
//目标市场
|
||||||
|
List<DictModel> targetMarketList = sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode());
|
||||||
|
List<ParamsReportEO> paramsReportEOS = paramsReportEOService.listInfo(paramsReportEO);
|
||||||
|
for (ParamsReportEO row : paramsReportEOS) {
|
||||||
|
String market = getMarket(paramsReportEO, targetMarketList, row);
|
||||||
|
if(StringUtils.isNotBlank(row.getProjectName())){
|
||||||
|
if(StringUtils.isBlank(market)){
|
||||||
|
row.setProjectName(row.getProjectName()+ "-00");
|
||||||
|
}else{
|
||||||
|
row.setProjectName(row.getProjectName()+"-" +market+ "-00");
|
||||||
|
}
|
||||||
|
row.setPageName(row.getProjectName());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
String orderBy = paramsReportEO.getOrderBy();
|
||||||
|
String orderByField = paramsReportEO.getOrderByField();
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField)) {
|
||||||
|
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||||
|
//项目名称 pageName
|
||||||
|
if ("pageName".equals(orderByField)) {
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(paramsReportEOS, (e1, e2) -> {
|
||||||
|
return comparator.compare(e1.getPageName(), e2.getPageName());
|
||||||
|
});
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(paramsReportEOS, (e1, e2) -> {
|
||||||
|
return comparator.compare(e2.getPageName(), e1.getPageName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
IPage pageList = getPages(pageNo,pageSize,paramsReportEOS);
|
||||||
return Result.OK(pageList);
|
return Result.OK(pageList);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -128,6 +183,59 @@ public class ParamsReportEOController extends JeroController<ParamsReportEO, IPa
|
|||||||
return Result.OK(pageList);
|
return Result.OK(pageList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String getMarket(ParamsReportEO paramsReportEO, List<DictModel> targetMarketList, ParamsReportEO row) {
|
||||||
|
List<DictModel> dictModelList = new ArrayList<>();
|
||||||
|
String targetMarket = "";
|
||||||
|
if(StringUtils.isNotBlank(row.getTargetMarket())){
|
||||||
|
for (String s : row.getTargetMarket().split(",")) {
|
||||||
|
List<DictModel> dictModelListTemp = targetMarketList.stream()
|
||||||
|
.filter(e -> s.equals(e.getValue())).collect(Collectors.toList());
|
||||||
|
dictModelList.addAll(dictModelListTemp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(dictModelList.size() != 0){
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
for (DictModel dictModel : dictModelList) {
|
||||||
|
if(CutEnum.CN.getValue().equals(paramsReportEO)){
|
||||||
|
sb.append(dictModel.getText()+",");
|
||||||
|
}else{
|
||||||
|
sb.append(dictModel.getTextEn()+",");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(StringUtils.isNotBlank(sb)){
|
||||||
|
targetMarket = sb.substring(0,sb.length()-1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return targetMarket;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Page getPages(Integer currentPage, Integer pageSize, List<ParamsReportEO> 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;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页列表查询
|
* 分页列表查询
|
||||||
*
|
*
|
||||||
|
|||||||
+5
@@ -97,4 +97,9 @@ public class ParamsExportTemplateEO implements Serializable {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String orderByField; // 字段
|
private String orderByField; // 字段
|
||||||
|
|
||||||
|
//适用地区
|
||||||
|
private String region;
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String regionName;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+12
@@ -81,9 +81,21 @@ public class ParamsReportEO implements Serializable {
|
|||||||
@ApiModelProperty(value = "目标市场")
|
@ApiModelProperty(value = "目标市场")
|
||||||
private String targetMarket;
|
private String targetMarket;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String cut;
|
||||||
|
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String pageName; // 项目名称-国家-清单名称
|
private String pageName; // 项目名称-国家-清单名称
|
||||||
|
|
||||||
|
//排序(1->正序, 2->倒序)
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderBy;
|
||||||
|
|
||||||
|
//排序字段
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderByField;
|
||||||
|
|
||||||
|
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private List<HashMap<String, String>> configList;
|
private List<HashMap<String, String>> configList;
|
||||||
|
|
||||||
|
|||||||
+3
@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|||||||
import com.jero.modules.cert.report.entity.ParamsReportEO;
|
import com.jero.modules.cert.report.entity.ParamsReportEO;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 上报库
|
* @Description: 上报库
|
||||||
* @Author: jero-boot
|
* @Author: jero-boot
|
||||||
@@ -14,5 +16,6 @@ import org.apache.ibatis.annotations.Param;
|
|||||||
public interface ParamsReportEOMapper extends BaseMapper<ParamsReportEO> {
|
public interface ParamsReportEOMapper extends BaseMapper<ParamsReportEO> {
|
||||||
|
|
||||||
IPage pageInfo(@Param("page") IPage page, @Param("paramsReportEO") ParamsReportEO paramsReportEO);
|
IPage pageInfo(@Param("page") IPage page, @Param("paramsReportEO") ParamsReportEO paramsReportEO);
|
||||||
|
List<ParamsReportEO> listInfo(@Param("paramsReportEO") ParamsReportEO paramsReportEO);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+13
-1
@@ -57,5 +57,17 @@
|
|||||||
<include refid="BaseQuerySql"/>
|
<include refid="BaseQuerySql"/>
|
||||||
order by create_time desc
|
order by create_time desc
|
||||||
</select>
|
</select>
|
||||||
|
<select id="listInfo" resultMap="ParamsReportEOResultMap">
|
||||||
|
select tmp_tb.* from(
|
||||||
|
select <include refid="BaseColumnList"/>
|
||||||
|
from params_report pr
|
||||||
|
left join params_manifest as pm on pm.id = pr.old_params_manifest_id
|
||||||
|
left join project_library_base as plb on plb.id = pm.project_id
|
||||||
|
left join project_name_info as pni on plb.project_name_id = pni.id
|
||||||
|
left join project_year_name_info as pyni on plb.year_name_id=pyni.id
|
||||||
|
) tmp_tb
|
||||||
|
<include refid="BaseQuerySql"/>
|
||||||
|
order by create_time desc
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
+1
@@ -62,6 +62,7 @@ public interface IParamsReportEOService extends IService<ParamsReportEO> {
|
|||||||
List<ParamsReportEO> queryList();
|
List<ParamsReportEO> queryList();
|
||||||
|
|
||||||
IPage pageInfo(IPage page, ParamsReportEO paramsReportEO);
|
IPage pageInfo(IPage page, ParamsReportEO paramsReportEO);
|
||||||
|
List<ParamsReportEO> listInfo(ParamsReportEO paramsReportEO);
|
||||||
|
|
||||||
boolean isSync(String oldParamsManifestId, Integer version);
|
boolean isSync(String oldParamsManifestId, Integer version);
|
||||||
|
|
||||||
|
|||||||
+4
@@ -138,6 +138,10 @@ public class ParamsReportEOServiceImpl extends ServiceImpl<ParamsReportEOMapper,
|
|||||||
public IPage pageInfo(IPage page, ParamsReportEO paramsReportEO) {
|
public IPage pageInfo(IPage page, ParamsReportEO paramsReportEO) {
|
||||||
return paramsReportEOMapper.pageInfo(page, paramsReportEO);
|
return paramsReportEOMapper.pageInfo(page, paramsReportEO);
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
public List<ParamsReportEO> listInfo(ParamsReportEO paramsReportEO) {
|
||||||
|
return paramsReportEOMapper.listInfo(paramsReportEO);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSync(String oldParamsManifestId, Integer version) {
|
public boolean isSync(String oldParamsManifestId, Integer version) {
|
||||||
|
|||||||
+94
-11
@@ -9,7 +9,11 @@ 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;
|
||||||
|
import com.jero.modules.dummy.enums.DummyInventoryBaseFieldEnum;
|
||||||
|
import com.jero.modules.dummy.enums.OrderEnum;
|
||||||
import com.jero.modules.ocr.util.LineHumpUtil;
|
import com.jero.modules.ocr.util.LineHumpUtil;
|
||||||
|
import com.jero.modules.system.entity.SysDictItem;
|
||||||
|
import com.jero.modules.system.mapper.SysDictItemMapper;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@@ -17,16 +21,28 @@ import org.apache.commons.lang.StringUtils;
|
|||||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PutMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
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.text.Collator;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 参数模板表
|
* @Description: 参数模板表
|
||||||
* @Author: jero-boot
|
* @Author: jero-boot
|
||||||
* @Date: 2022-04-21
|
* @Date: 2022-04-21
|
||||||
@@ -39,7 +55,9 @@ import java.util.List;
|
|||||||
public class ParamsTemplateEOController extends JeroController<ParamsTemplateEO, IParamsTemplateEOService> {
|
public class ParamsTemplateEOController extends JeroController<ParamsTemplateEO, IParamsTemplateEOService> {
|
||||||
@Autowired
|
@Autowired
|
||||||
private IParamsTemplateEOService paramsTemplateEOService;
|
private IParamsTemplateEOService paramsTemplateEOService;
|
||||||
|
@Autowired
|
||||||
|
private SysDictItemMapper sysDictItemMapper;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页列表查询
|
* 分页列表查询
|
||||||
*
|
*
|
||||||
@@ -63,22 +81,87 @@ public class ParamsTemplateEOController extends JeroController<ParamsTemplateEO,
|
|||||||
paramsTemplateEO.setParamsTemplateName(paramsTemplateEO.getParamsTemplateName().replace("%","\\%"));
|
paramsTemplateEO.setParamsTemplateName(paramsTemplateEO.getParamsTemplateName().replace("%","\\%"));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (StringUtils.isNotBlank(paramsTemplateEO.getOrderByField())) {
|
|
||||||
paramsTemplateEO.setOrderByField(LineHumpUtil.humpToLine2(paramsTemplateEO.getOrderByField()));
|
|
||||||
}
|
|
||||||
|
|
||||||
QueryWrapper<ParamsTemplateEO> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<ParamsTemplateEO> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.lambda().like(StringUtils.isNotEmpty(paramsTemplateEO.getParamsTemplateName()), ParamsTemplateEO::getParamsTemplateName, paramsTemplateEO.getParamsTemplateName())
|
queryWrapper.lambda().like(StringUtils.isNotEmpty(paramsTemplateEO.getParamsTemplateName()), ParamsTemplateEO::getParamsTemplateName, paramsTemplateEO.getParamsTemplateName())
|
||||||
.eq(StringUtils.isNotEmpty(paramsTemplateEO.getRegion()), ParamsTemplateEO::getRegion, paramsTemplateEO.getRegion());
|
.eq(StringUtils.isNotEmpty(paramsTemplateEO.getRegion()), ParamsTemplateEO::getRegion, paramsTemplateEO.getRegion());
|
||||||
// .eq(StringUtils.isNotEmpty(paramsTemplateEO.getState()), ParamsTemplateEO::getState, paramsTemplateEO.getState())
|
if(StringUtils.isNotBlank(paramsTemplateEO.getOrderByField())){
|
||||||
queryWrapper.orderBy(StringUtils.isNotBlank(paramsTemplateEO.getOrderByField()), "1".equals(paramsTemplateEO.getOrderBy())?true:false, paramsTemplateEO.getOrderByField())
|
if("params_template_name".equals(paramsTemplateEO.getOrderByField())
|
||||||
.orderBy(StringUtils.isBlank(paramsTemplateEO.getOrderByField()), false, "update_time");
|
|| "create_time".equals(paramsTemplateEO.getOrderByField())
|
||||||
|
|| "update_time".equals(paramsTemplateEO.getOrderByField())){
|
||||||
|
queryWrapper.orderBy(StringUtils.isNotBlank(paramsTemplateEO.getOrderByField()),
|
||||||
|
OrderEnum.POSITIVE.getValue().equals(paramsTemplateEO.getOrderBy())?true:false,
|
||||||
|
"convert("+paramsTemplateEO.getOrderByField()+" using gbk)");
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
queryWrapper.orderBy(StringUtils.isBlank(paramsTemplateEO.getOrderByField()), false, "update_time");
|
||||||
|
}
|
||||||
Page<ParamsTemplateEO> page = new Page<ParamsTemplateEO>(pageNo, pageSize);
|
Page<ParamsTemplateEO> page = new Page<ParamsTemplateEO>(pageNo, pageSize);
|
||||||
IPage<ParamsTemplateEO> pageList = paramsTemplateEOService.page(page, queryWrapper);
|
IPage<ParamsTemplateEO> pageList = paramsTemplateEOService.page(page, queryWrapper);
|
||||||
|
|
||||||
|
//适用地区排序(特殊处理)
|
||||||
|
pageList = regionSort(paramsTemplateEO, pageNo, pageSize, queryWrapper, pageList);
|
||||||
return Result.OK(cut, pageList);
|
return Result.OK(cut, pageList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private IPage<ParamsTemplateEO> regionSort(ParamsTemplateEO paramsTemplateEO, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, QueryWrapper<ParamsTemplateEO> queryWrapper, IPage<ParamsTemplateEO> pageList) {
|
||||||
|
if(StringUtils.isNotBlank(paramsTemplateEO.getOrderByField())
|
||||||
|
&& "region".equals(paramsTemplateEO.getOrderByField())){
|
||||||
|
List<SysDictItem> regionDictItemList = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseFieldEnum.REGION.getValue());
|
||||||
|
List<ParamsTemplateEO> list = paramsTemplateEOService.list(queryWrapper);
|
||||||
|
for (ParamsTemplateEO templateEO : list) {
|
||||||
|
if(StringUtils.isNotEmpty(templateEO.getRegion())){
|
||||||
|
StringBuilder regionBuilder = new StringBuilder();
|
||||||
|
for (String s : templateEO.getRegion().split(",")) {
|
||||||
|
String regionName = regionDictItemList.stream().filter(e -> e.getItemValue().equals(s)).map(f -> f.getItemText()).collect(Collectors.joining(","));
|
||||||
|
regionBuilder.append(regionName).append(",");
|
||||||
|
}
|
||||||
|
templateEO.setRegionName(regionBuilder.substring(0, regionBuilder.toString().length() - 1));
|
||||||
|
}else{
|
||||||
|
templateEO.setRegionName("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(paramsTemplateEO.getOrderBy())) {
|
||||||
|
Collections.sort(list, (e1, e2) -> {
|
||||||
|
return comparator.compare(e1.getRegionName(), e2.getRegionName());
|
||||||
|
});
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(paramsTemplateEO.getOrderBy())) {
|
||||||
|
Collections.sort(list, (e1, e2) -> {
|
||||||
|
return comparator.compare(e2.getRegionName(), e1.getRegionName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
pageList = getPages(pageNo, pageSize, list);
|
||||||
|
}
|
||||||
|
return pageList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Page getPages(Integer currentPage, Integer pageSize, List<ParamsTemplateEO> 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;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 列表查询
|
* 列表查询
|
||||||
*
|
*
|
||||||
|
|||||||
+2
@@ -76,6 +76,8 @@ public class ParamsTemplateEO implements Serializable {
|
|||||||
@Dict(dicCode = "region")
|
@Dict(dicCode = "region")
|
||||||
@ApiModelProperty(value = "适用地区")
|
@ApiModelProperty(value = "适用地区")
|
||||||
private java.lang.String region;
|
private java.lang.String region;
|
||||||
|
@TableField(exist = false)
|
||||||
|
private java.lang.String regionName;
|
||||||
|
|
||||||
/**内容说明*/
|
/**内容说明*/
|
||||||
@Excel(name = "内容说明", width = 15)
|
@Excel(name = "内容说明", width = 15)
|
||||||
|
|||||||
+3
-1
@@ -3,8 +3,8 @@ package com.jero.modules.collection.mapper;
|
|||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.jero.modules.collection.entity.OnlCgformCollection;
|
import com.jero.modules.collection.entity.OnlCgformCollection;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.apache.ibatis.annotations.Select;
|
import org.apache.ibatis.annotations.Select;
|
||||||
import org.springframework.data.repository.query.Param;
|
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -22,4 +22,6 @@ public interface OnlCgformCollectionMapper extends BaseMapper<OnlCgformCollectio
|
|||||||
List<OnlCgformCollection> queryListByDocumentId(@Param("document_id") String document_id);
|
List<OnlCgformCollection> queryListByDocumentId(@Param("document_id") String document_id);
|
||||||
|
|
||||||
IPage queryPageList(IPage page,@Param("params") Map<String, Object> params);
|
IPage queryPageList(IPage page,@Param("params") Map<String, Object> params);
|
||||||
|
|
||||||
|
List<Map<String,Object>> infoList(@Param("params") Map<String, Object> params);
|
||||||
}
|
}
|
||||||
|
|||||||
+61
-2
@@ -54,6 +54,65 @@
|
|||||||
#{item}
|
#{item}
|
||||||
</foreach>
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
order by occ.create_time desc
|
<if test="params.orderByField == 'serial_number' or params.orderByField == 'title'">
|
||||||
|
order by CONVERT( ${params.orderByField} USING gbk) COLLATE gbk_chinese_ci
|
||||||
|
|
||||||
|
</if>
|
||||||
|
<if test="params.orderByField == 'create_time'">
|
||||||
|
order by occ.create_time
|
||||||
|
</if>
|
||||||
|
<if test="params.orderBy == 1">
|
||||||
|
asc
|
||||||
|
</if>
|
||||||
|
<if test="params.orderBy == 2">
|
||||||
|
desc
|
||||||
|
</if>
|
||||||
|
<if test="params.orderByField == null or params.orderByField == ''">
|
||||||
|
order by occ.create_time desc
|
||||||
|
</if>
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
<select id="infoList" parameterType="java.util.Map" resultType="hashmap">
|
||||||
|
select
|
||||||
|
occ.id,
|
||||||
|
occ.create_time as createTime,
|
||||||
|
occ.create_by as createBy,
|
||||||
|
bdl.serial_number as serialNumber,
|
||||||
|
bdl.title,
|
||||||
|
bdl.state,
|
||||||
|
occ.document_id as documentId
|
||||||
|
from
|
||||||
|
onl_cgform_collection occ
|
||||||
|
right join buss_document_library bdl on occ.document_id = bdl.id
|
||||||
|
where occ.create_by = #{params.createBy}
|
||||||
|
<if test="params.serialNumber != null and params.serialNumber != ''">
|
||||||
|
<!--搜索条件:编号;包含%,单独搜索-->
|
||||||
|
<choose>
|
||||||
|
<when test='params.serialNumber != null and params.serialNumber != "" and params.serialNumber.contains("%")'>
|
||||||
|
and bdl.serial_number like '%1%%' escape '1'
|
||||||
|
</when>
|
||||||
|
<otherwise>
|
||||||
|
and bdl.serial_number like concat(concat('%',#{params.serialNumber}),'%')
|
||||||
|
</otherwise>
|
||||||
|
</choose>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="params.title != null and params.title != ''">
|
||||||
|
<!--搜索条件:标题;包含%,单独搜索-->
|
||||||
|
<choose>
|
||||||
|
<when test='params.title != null and params.title != "" and params.title.contains("%")'>
|
||||||
|
and bdl.title like '%1%%' escape '1'
|
||||||
|
</when>
|
||||||
|
<otherwise>
|
||||||
|
and bdl.title like concat(concat('%',#{params.title}),'%')
|
||||||
|
</otherwise>
|
||||||
|
</choose>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="params.state != null and params.state != '' ">
|
||||||
|
and bdl.state in
|
||||||
|
<foreach collection="params.state.split(',')" index="index" item="item" open="(" separator="," close=")">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
</select>
|
||||||
|
</mapper>
|
||||||
|
|||||||
+84
-3
@@ -13,12 +13,14 @@ import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServi
|
|||||||
import com.jero.modules.collection.entity.OnlCgformCollection;
|
import com.jero.modules.collection.entity.OnlCgformCollection;
|
||||||
import com.jero.modules.collection.mapper.OnlCgformCollectionMapper;
|
import com.jero.modules.collection.mapper.OnlCgformCollectionMapper;
|
||||||
import com.jero.modules.collection.service.IOnlCgformCollectionService;
|
import com.jero.modules.collection.service.IOnlCgformCollectionService;
|
||||||
|
import com.jero.modules.document.enums.LawsStateEnum;
|
||||||
import com.jero.modules.ocr.util.LineHumpUtil;
|
import com.jero.modules.ocr.util.LineHumpUtil;
|
||||||
import com.jero.modules.subscribe.entity.OnlCgformSubscribe;
|
import com.jero.modules.subscribe.entity.OnlCgformSubscribe;
|
||||||
import com.jero.modules.subscribe.mapper.OnlCgformSubscribeMapper;
|
import com.jero.modules.subscribe.mapper.OnlCgformSubscribeMapper;
|
||||||
import com.jero.modules.system.entity.SysDictItem;
|
import com.jero.modules.system.entity.SysDictItem;
|
||||||
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
|
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.SecurityUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@@ -26,7 +28,12 @@ import org.springframework.stereotype.Service;
|
|||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -221,16 +228,90 @@ public class OnlCgformCollectionServiceImpl extends ServiceImpl<OnlCgformCollect
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IPage<OnlCgformCollection> queryPageList(Map<String, Object> params) {
|
public IPage<OnlCgformCollection> queryPageList(Map<String, Object> params) {
|
||||||
|
// params.put("orderByField","serial_number");
|
||||||
|
// params.put("orderBy","1");
|
||||||
|
if(ObjectUtils.isEmpty(params.get("orderByField"))){
|
||||||
|
params.put("orderBy","");
|
||||||
|
}
|
||||||
Integer pageNo = Integer.parseInt(params.get("pageNo").toString());
|
Integer pageNo = Integer.parseInt(params.get("pageNo").toString());
|
||||||
Integer pageSize = Integer.parseInt(params.get("pageSize").toString());
|
Integer pageSize = Integer.parseInt(params.get("pageSize").toString());
|
||||||
IPage page = new Page(pageNo, pageSize);
|
IPage page = new Page(pageNo, pageSize);
|
||||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
params.put("createBy",sysUser.getUsername());
|
params.put("createBy",sysUser.getUsername());
|
||||||
IPage result = onlCgformCollectionMapper.queryPageList(page,params);
|
IPage result = new Page();
|
||||||
|
//表头排序(状态单独处理)
|
||||||
|
if(ObjectUtils.isNotEmpty(params.get("orderByField")) && "state".equals((String) params.get("orderByField"))){
|
||||||
|
List<Map<String, Object>> infoList = onlCgformCollectionMapper.infoList(params);
|
||||||
|
result = stateSort(params,pageNo,pageSize,result,infoList);
|
||||||
|
}else{
|
||||||
|
result = onlCgformCollectionMapper.queryPageList(page,params);
|
||||||
|
}
|
||||||
List<Map<String,Object>> records = result.getRecords();
|
List<Map<String,Object>> records = result.getRecords();
|
||||||
dataDispose(records,params);
|
dataDispose(records,params);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
public IPage stateSort(Map<String, Object> parameter, int pageNo, int pageSize, IPage infoPage,List<Map<String, Object>> infoList) {
|
||||||
|
List<Map<String,Object>> list = new LinkedList<>();
|
||||||
|
//状态排序,需要特殊处理 现行,即将实施,草稿,被替代,废止
|
||||||
|
if(ObjectUtils.isNotEmpty(parameter.get("orderByField")) && "state".equals((String) parameter.get("orderByField"))){
|
||||||
|
List<Map<String, Object>> active = infoList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.ACTIVE.getValue().equals(e.get("state"))).collect(Collectors.toList());
|
||||||
|
List<Map<String, Object>> theUpcoming = infoList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.THE_UPCOMING.getValue().equals(e.get("state"))).collect(Collectors.toList());
|
||||||
|
List<Map<String, Object>> draft = infoList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.DRAFT.getValue().equals(e.get("state"))).collect(Collectors.toList());
|
||||||
|
List<Map<String, Object>> beReplaced = infoList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.BE_REPLACED.getValue().equals(e.get("state"))).collect(Collectors.toList());
|
||||||
|
List<Map<String, Object>> abolish = infoList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.ABOLISH.getValue().equals(e.get("state"))).collect(Collectors.toList());
|
||||||
|
if ("1".equals((String) parameter.get("orderBy"))) {
|
||||||
|
//正序
|
||||||
|
list.addAll(active);
|
||||||
|
list.addAll(theUpcoming);
|
||||||
|
list.addAll(draft);
|
||||||
|
list.addAll(beReplaced);
|
||||||
|
list.addAll(abolish);
|
||||||
|
|
||||||
|
} else if ("2".equals((String) parameter.get("orderBy"))) {
|
||||||
|
//倒序
|
||||||
|
list.addAll(abolish);
|
||||||
|
list.addAll(beReplaced);
|
||||||
|
list.addAll(draft);
|
||||||
|
list.addAll(theUpcoming);
|
||||||
|
list.addAll(active);
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isNotEmpty(list)){
|
||||||
|
infoPage = getPages(pageNo, pageSize, list);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return infoPage;
|
||||||
|
}
|
||||||
|
public IPage getPages(Integer currentPage, Integer pageSize, List<Map<String,Object>> list){
|
||||||
|
IPage 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;
|
||||||
|
}
|
||||||
|
|
||||||
public void dataDispose(List<Map<String,Object>> datas, Map<String,Object> params){
|
public void dataDispose(List<Map<String,Object>> datas, Map<String,Object> params){
|
||||||
if(CollectionUtils.isNotEmpty(datas)){
|
if(CollectionUtils.isNotEmpty(datas)){
|
||||||
@@ -297,4 +378,4 @@ public class OnlCgformCollectionServiceImpl extends ServiceImpl<OnlCgformCollect
|
|||||||
throw new JeroBootException("删除订阅信息失败!");
|
throw new JeroBootException("删除订阅信息失败!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+105
-6
@@ -32,6 +32,7 @@ import com.jero.modules.collection.service.IOnlCgformCollectionService;
|
|||||||
import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
||||||
import com.jero.modules.document.entity.OSSFileForDocumentLibrary;
|
import com.jero.modules.document.entity.OSSFileForDocumentLibrary;
|
||||||
import com.jero.modules.document.enums.FieldTypeEnum;
|
import com.jero.modules.document.enums.FieldTypeEnum;
|
||||||
|
import com.jero.modules.document.enums.LawsStateEnum;
|
||||||
import com.jero.modules.document.enums.SearchEnum;
|
import com.jero.modules.document.enums.SearchEnum;
|
||||||
import com.jero.modules.document.mapper.BussDocumentLibraryEOMapper;
|
import com.jero.modules.document.mapper.BussDocumentLibraryEOMapper;
|
||||||
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
||||||
@@ -613,10 +614,25 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
//跳转详情的标识
|
//跳转详情的标识
|
||||||
map.put("click", "true");
|
map.put("click", "true");
|
||||||
}
|
}
|
||||||
//单独处理发布日期和标准实施日期
|
//单独处理发布日期,编号,标题,状态,技术领域,适用地区
|
||||||
if ("issue_time".equals(onlCgformField.getDbFieldName())) {
|
if ("issue_time".equals(onlCgformField.getDbFieldName())) {
|
||||||
map.put("sort", "true");//列表排序标识
|
map.put("sort", "true");//列表排序标识
|
||||||
}
|
}
|
||||||
|
if ("serial_number".equals(onlCgformField.getDbFieldName())) {
|
||||||
|
map.put("sort", "true");//列表排序标识
|
||||||
|
}
|
||||||
|
if ("title".equals(onlCgformField.getDbFieldName())) {
|
||||||
|
map.put("sort", "true");//列表排序标识
|
||||||
|
}
|
||||||
|
if ("state".equals(onlCgformField.getDbFieldName())) {
|
||||||
|
map.put("sort", "true");//列表排序标识
|
||||||
|
}
|
||||||
|
if ("technology_territory".equals(onlCgformField.getDbFieldName())) {
|
||||||
|
map.put("sort", "true");//列表排序标识
|
||||||
|
}
|
||||||
|
if ("region".equals(onlCgformField.getDbFieldName())) {
|
||||||
|
map.put("sort", "true");//列表排序标识
|
||||||
|
}
|
||||||
map.put("db_field_name", onlCgformField.getDbFieldName());//字段
|
map.put("db_field_name", onlCgformField.getDbFieldName());//字段
|
||||||
if (CutEnum.CN.getValue().equals(cut)) {
|
if (CutEnum.CN.getValue().equals(cut)) {
|
||||||
map.put("db_field_txt", onlCgformField.getDbFieldTxt());//字段中文名
|
map.put("db_field_txt", onlCgformField.getDbFieldTxt());//字段中文名
|
||||||
@@ -3962,6 +3978,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
IPage page = new Page(pageNo, pageSize);
|
IPage page = new Page(pageNo, pageSize);
|
||||||
IPage infoPage = bussDocumentLibraryEOMapper.getInfoPage(page, " " + StringUtils.join(fieldListNew, ","), condition);
|
IPage infoPage = bussDocumentLibraryEOMapper.getInfoPage(page, " " + StringUtils.join(fieldListNew, ","), condition);
|
||||||
|
|
||||||
|
infoPage = stateSort(parameter, fieldListNew, condition, pageNo, pageSize, infoPage);
|
||||||
|
|
||||||
|
|
||||||
//树形数据字典
|
//树形数据字典
|
||||||
List<SysCategory> categoryList = sysCategoryService.list();
|
List<SysCategory> categoryList = sysCategoryService.list();
|
||||||
//过滤出树形字段
|
//过滤出树形字段
|
||||||
@@ -4021,6 +4040,71 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
return infoPage;
|
return infoPage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private IPage stateSort(Map<String, Object> parameter, List<String> fieldListNew, String condition, int pageNo, int pageSize, IPage infoPage) {
|
||||||
|
List<Map<String,Object>> list = new LinkedList<>();
|
||||||
|
//状态排序,需要特殊处理 现行,即将实施,草稿,被替代,废止
|
||||||
|
if(ObjectUtils.isNotEmpty(parameter.get("orderByField")) && "state".equals((String) parameter.get("orderByField"))){
|
||||||
|
List<Map<String, Object>> infoList = bussDocumentLibraryEOMapper.getInfoList(" " + StringUtils.join(fieldListNew, ","), condition);
|
||||||
|
List<Map<String, Object>> active = infoList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.ACTIVE.getValue().equals(e.get("state"))).collect(Collectors.toList());
|
||||||
|
List<Map<String, Object>> theUpcoming = infoList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.THE_UPCOMING.getValue().equals(e.get("state"))).collect(Collectors.toList());
|
||||||
|
List<Map<String, Object>> draft = infoList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.DRAFT.getValue().equals(e.get("state"))).collect(Collectors.toList());
|
||||||
|
List<Map<String, Object>> beReplaced = infoList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.BE_REPLACED.getValue().equals(e.get("state"))).collect(Collectors.toList());
|
||||||
|
List<Map<String, Object>> abolish = infoList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.ABOLISH.getValue().equals(e.get("state"))).collect(Collectors.toList());
|
||||||
|
if ("1".equals((String) parameter.get("orderBy"))) {
|
||||||
|
//正序
|
||||||
|
list.addAll(active);
|
||||||
|
list.addAll(theUpcoming);
|
||||||
|
list.addAll(draft);
|
||||||
|
list.addAll(beReplaced);
|
||||||
|
list.addAll(abolish);
|
||||||
|
|
||||||
|
} else if ("2".equals((String) parameter.get("orderBy"))) {
|
||||||
|
//倒序
|
||||||
|
list.addAll(abolish);
|
||||||
|
list.addAll(beReplaced);
|
||||||
|
list.addAll(draft);
|
||||||
|
list.addAll(theUpcoming);
|
||||||
|
list.addAll(active);
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isNotEmpty(list)){
|
||||||
|
infoPage = getPages(pageNo, pageSize, list);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return infoPage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public IPage getPages(Integer currentPage, Integer pageSize, List<Map<String,Object>> list){
|
||||||
|
IPage 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;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
public String getConditionStr(Map<String, Object> parameter) {
|
public String getConditionStr(Map<String, Object> parameter) {
|
||||||
@@ -4134,11 +4218,18 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
}else{
|
}else{
|
||||||
//处理列表表头排序
|
//处理列表表头排序
|
||||||
if (StringUtils.isNotBlank((String) parameter.get("orderByField"))) {
|
if (StringUtils.isNotBlank((String) parameter.get("orderByField"))) {
|
||||||
conditionSb.append(" order by " + (String) parameter.get("orderByField"));
|
String orderByField = (String) parameter.get("orderByField");
|
||||||
if ("1".equals((String) parameter.get("orderBy"))) {
|
if("serial_number".equals(orderByField)
|
||||||
conditionSb.append(" asc");//正序
|
|| "title".equals(orderByField)
|
||||||
} else if ("2".equals((String) parameter.get("orderBy"))) {
|
|| "title_en".equals(orderByField)
|
||||||
conditionSb.append(" desc");//倒序
|
|| "region".equals(orderByField)
|
||||||
|
|| "technology_territory".equals(orderByField)){
|
||||||
|
|
||||||
|
conditionSb.append(" order by " + "CONVERT("+orderByField +" USING gbk) COLLATE gbk_chinese_ci");
|
||||||
|
orderBySort(parameter, conditionSb);
|
||||||
|
}else if("issue_time".equals(orderByField)){
|
||||||
|
conditionSb.append(" order by " + (String) parameter.get("orderByField"));
|
||||||
|
orderBySort(parameter, conditionSb);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
conditionSb.append(" order by create_time desc");
|
conditionSb.append(" order by create_time desc");
|
||||||
@@ -4148,6 +4239,14 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
return condition;
|
return condition;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void orderBySort(Map<String, Object> parameter, StringBuilder conditionSb) {
|
||||||
|
if ("1".equals((String) parameter.get("orderBy"))) {
|
||||||
|
conditionSb.append(" asc");//正序
|
||||||
|
} else if ("2".equals((String) parameter.get("orderBy"))) {
|
||||||
|
conditionSb.append(" desc");//倒序
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 收藏和订阅
|
* 收藏和订阅
|
||||||
|
|||||||
+27
-2
@@ -10,11 +10,13 @@ import com.jero.common.system.base.controller.JeroController;
|
|||||||
import com.jero.common.system.query.QueryGenerator;
|
import com.jero.common.system.query.QueryGenerator;
|
||||||
import com.jero.modules.dummy.entity.DummyInventoryBaseEO;
|
import com.jero.modules.dummy.entity.DummyInventoryBaseEO;
|
||||||
import com.jero.modules.dummy.enums.InventoryStateEnum;
|
import com.jero.modules.dummy.enums.InventoryStateEnum;
|
||||||
|
import com.jero.modules.dummy.enums.OrderEnum;
|
||||||
import com.jero.modules.dummy.service.IDummyInventoryBaseEOService;
|
import com.jero.modules.dummy.service.IDummyInventoryBaseEOService;
|
||||||
import com.jero.modules.dummy.vo.VirtualCreaterVo;
|
import com.jero.modules.dummy.vo.VirtualCreaterVo;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
@@ -58,9 +60,32 @@ public class DummyInventoryBaseEOController extends JeroController<DummyInventor
|
|||||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||||
HttpServletRequest req) {
|
HttpServletRequest req) {
|
||||||
// dummyInventoryBaseEO.setName("*发*");
|
|
||||||
QueryWrapper<DummyInventoryBaseEO> queryWrapper = QueryGenerator.initQueryWrapper(dummyInventoryBaseEO, req.getParameterMap());
|
QueryWrapper<DummyInventoryBaseEO> queryWrapper = QueryGenerator.initQueryWrapper(dummyInventoryBaseEO, req.getParameterMap());
|
||||||
queryWrapper.orderByDesc("create_time");
|
//处理表头排序
|
||||||
|
if(StringUtils.isNotBlank(dummyInventoryBaseEO.getOrderByField())){
|
||||||
|
//名称,创建人
|
||||||
|
if("name".equals(dummyInventoryBaseEO.getOrderByField())
|
||||||
|
|| "create_By".equals(dummyInventoryBaseEO.getOrderByField())){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(dummyInventoryBaseEO.getOrderBy())){
|
||||||
|
//conditionSb.append(" order by " + "CONVERT("+orderByField +"USING gbk) COLLATE gbk_chinese_ci");
|
||||||
|
queryWrapper.orderBy(true,true,"convert("+dummyInventoryBaseEO.getOrderByField()+" using gbk)");
|
||||||
|
// queryWrapper.orderBy(true,true,"convert("+dummyInventoryBaseEO.getOrderByField()+" using gbk");
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(dummyInventoryBaseEO.getOrderBy())){
|
||||||
|
queryWrapper.orderBy(true,false,"convert("+dummyInventoryBaseEO.getOrderByField()+" using gbk)");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//清单状态
|
||||||
|
if("state".equals(dummyInventoryBaseEO.getOrderByField())){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(dummyInventoryBaseEO.getOrderBy())){
|
||||||
|
queryWrapper.orderByAsc("state");
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(dummyInventoryBaseEO.getOrderBy())){
|
||||||
|
queryWrapper.orderByDesc("state");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}else{
|
||||||
|
queryWrapper.orderByDesc("create_time");
|
||||||
|
}
|
||||||
Page<DummyInventoryBaseEO> page = new Page<DummyInventoryBaseEO>(pageNo, pageSize);
|
Page<DummyInventoryBaseEO> page = new Page<DummyInventoryBaseEO>(pageNo, pageSize);
|
||||||
IPage<DummyInventoryBaseEO> pageList = dummyInventoryBaseEOService.getPageInfo(page,queryWrapper);
|
IPage<DummyInventoryBaseEO> pageList = dummyInventoryBaseEOService.getPageInfo(page,queryWrapper);
|
||||||
return Result.OK(dummyInventoryBaseEO.getCut(),pageList);
|
return Result.OK(dummyInventoryBaseEO.getCut(),pageList);
|
||||||
|
|||||||
+8
@@ -87,4 +87,12 @@ public class DummyInventoryBaseEO implements Serializable {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String cut;
|
private String cut;
|
||||||
|
|
||||||
|
//排序(1->正序, 2->倒序)
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderBy;
|
||||||
|
|
||||||
|
//排序字段
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderByField;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+19
@@ -94,6 +94,8 @@ public class DummyInventoryInfoEO implements Serializable {
|
|||||||
private java.lang.String shi4Yong4Fan4Wei2;
|
private java.lang.String shi4Yong4Fan4Wei2;
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String shi4Yong4Fan4Wei2_dictText;
|
private String shi4Yong4Fan4Wei2_dictText;
|
||||||
|
@TableField(exist = false)
|
||||||
|
private java.lang.String shi4Yong4Fan4Wei2Str;
|
||||||
|
|
||||||
/**状态*/
|
/**状态*/
|
||||||
@Excel(name = "状态", width = 15,dicCode ="state")
|
@Excel(name = "状态", width = 15,dicCode ="state")
|
||||||
@@ -103,6 +105,9 @@ public class DummyInventoryInfoEO implements Serializable {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String state_dictText;
|
private String state_dictText;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private java.lang.String stateStr;
|
||||||
|
|
||||||
/**对应标准*/
|
/**对应标准*/
|
||||||
@Excel(name = "对应标准", width = 15)
|
@Excel(name = "对应标准", width = 15)
|
||||||
@ApiModelProperty(value = "对应标准")
|
@ApiModelProperty(value = "对应标准")
|
||||||
@@ -159,6 +164,9 @@ public class DummyInventoryInfoEO implements Serializable {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String attestationRank_dictText;
|
private String attestationRank_dictText;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private java.lang.String attestationRankStr;
|
||||||
|
|
||||||
/**适用增补件*/
|
/**适用增补件*/
|
||||||
@ApiModelProperty(value = "适用增补件")
|
@ApiModelProperty(value = "适用增补件")
|
||||||
@Excel(name = "适用增补件", width = 15)
|
@Excel(name = "适用增补件", width = 15)
|
||||||
@@ -180,6 +188,9 @@ public class DummyInventoryInfoEO implements Serializable {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String dutyTerritory_dictText;
|
private String dutyTerritory_dictText;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private java.lang.String dutyTerritoryStr;
|
||||||
|
|
||||||
/**备注*/
|
/**备注*/
|
||||||
@Excel(name = "备注", width = 15)
|
@Excel(name = "备注", width = 15)
|
||||||
@ApiModelProperty(value = "备注")
|
@ApiModelProperty(value = "备注")
|
||||||
@@ -313,6 +324,14 @@ public class DummyInventoryInfoEO implements Serializable {
|
|||||||
//文档库id
|
//文档库id
|
||||||
private String bussDocumentLibraryId;
|
private String bussDocumentLibraryId;
|
||||||
|
|
||||||
|
//排序(1->正序, 2->倒序)
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderBy;
|
||||||
|
|
||||||
|
//排序字段
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderByField;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+40
@@ -0,0 +1,40 @@
|
|||||||
|
package com.jero.modules.dummy.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @description
|
||||||
|
* @date 2022/1/21 15:22
|
||||||
|
* @auth zhn
|
||||||
|
*/
|
||||||
|
public enum AttestationRankEnum {
|
||||||
|
WVTA("WVTA","WVTA"),
|
||||||
|
VTA("Com.Cert-VTA","Com.Cert-VTA"),
|
||||||
|
MARKET("Com.Cert-Market","Com.Cert-Market"),
|
||||||
|
REGU("Regu-Market","Regu-Market"),
|
||||||
|
NA("NA","NA");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
String name;
|
||||||
|
String value;
|
||||||
|
|
||||||
|
private AttestationRankEnum(String name, String value) {
|
||||||
|
this.name = name;
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(String value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
package com.jero.modules.dummy.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @description
|
||||||
|
* @date 2022/1/21 15:22
|
||||||
|
* @auth zhn
|
||||||
|
*/
|
||||||
|
public enum OrderEnum {
|
||||||
|
POSITIVE("正序","1"),
|
||||||
|
REVERSE("倒序","2");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
String name;
|
||||||
|
String value;
|
||||||
|
|
||||||
|
private OrderEnum(String name, String value) {
|
||||||
|
this.name = name;
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(String value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
+228
-3
@@ -16,11 +16,14 @@ import com.jero.common.system.vo.LoginUser;
|
|||||||
import com.jero.common.util.DateUtils;
|
import com.jero.common.util.DateUtils;
|
||||||
import com.jero.common.util.oss.CosBootUtil;
|
import com.jero.common.util.oss.CosBootUtil;
|
||||||
import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
||||||
|
import com.jero.modules.document.enums.LawsStateEnum;
|
||||||
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
||||||
import com.jero.modules.dummy.entity.DummyInventoryBaseEO;
|
import com.jero.modules.dummy.entity.DummyInventoryBaseEO;
|
||||||
import com.jero.modules.dummy.entity.DummyInventoryInfoEO;
|
import com.jero.modules.dummy.entity.DummyInventoryInfoEO;
|
||||||
import com.jero.modules.dummy.entity.DummyInventoryInfoEOEn;
|
import com.jero.modules.dummy.entity.DummyInventoryInfoEOEn;
|
||||||
|
import com.jero.modules.dummy.enums.AttestationRankEnum;
|
||||||
import com.jero.modules.dummy.enums.DummyInventoryBaseFieldEnum;
|
import com.jero.modules.dummy.enums.DummyInventoryBaseFieldEnum;
|
||||||
|
import com.jero.modules.dummy.enums.OrderEnum;
|
||||||
import com.jero.modules.dummy.mapper.DummyInventoryInfoEOMapper;
|
import com.jero.modules.dummy.mapper.DummyInventoryInfoEOMapper;
|
||||||
import com.jero.modules.dummy.service.IDummyInventoryInfoEOService;
|
import com.jero.modules.dummy.service.IDummyInventoryInfoEOService;
|
||||||
import com.jero.modules.dummy.util.DeepCopyListUtil;
|
import com.jero.modules.dummy.util.DeepCopyListUtil;
|
||||||
@@ -60,6 +63,7 @@ import org.springframework.web.multipart.MultipartFile;
|
|||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
|
import java.text.Collator;
|
||||||
import java.text.DateFormat;
|
import java.text.DateFormat;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@@ -379,20 +383,181 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
|
|||||||
@Override
|
@Override
|
||||||
public List<DummyInventoryInfoEO> queryList(DummyInventoryInfoEO dummyInventoryInfoEO,HttpServletRequest req) {
|
public List<DummyInventoryInfoEO> queryList(DummyInventoryInfoEO dummyInventoryInfoEO,HttpServletRequest req) {
|
||||||
long startTime = System.currentTimeMillis();
|
long startTime = System.currentTimeMillis();
|
||||||
|
// dummyInventoryInfoEO.setOrderBy("2");
|
||||||
|
// dummyInventoryInfoEO.setOrderByField("shi4Yong4Fan4Wei2");
|
||||||
|
String orderBy = dummyInventoryInfoEO.getOrderBy();
|
||||||
|
String orderByField = dummyInventoryInfoEO.getOrderByField();
|
||||||
|
|
||||||
QueryWrapper<DummyInventoryInfoEO> queryWrapper = QueryGenerator.initQueryWrapper(dummyInventoryInfoEO,req.getParameterMap());
|
QueryWrapper<DummyInventoryInfoEO> queryWrapper = QueryGenerator.initQueryWrapper(dummyInventoryInfoEO,req.getParameterMap());
|
||||||
// queryWrapper.in("dummy_inventory_base_id",dummyInventoryInfoEO.getDummyInventoryBaseId());
|
//新车型实施日期,在产车实施日期(排序)
|
||||||
queryWrapper.orderByDesc("create_time","serial_number");
|
if("xin1_che1_xing2_shi2_shi1_ri4_qi1".equals(orderByField) || "implement_time".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
queryWrapper.orderByAsc(orderByField);
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
queryWrapper.orderByDesc(orderByField);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(StringUtils.isBlank(orderByField)){
|
||||||
|
queryWrapper.orderByDesc("create_time","serial_number");
|
||||||
|
}
|
||||||
|
|
||||||
List<DummyInventoryInfoEO> dummyInventoryInfoEOList = this.list(queryWrapper);
|
List<DummyInventoryInfoEO> dummyInventoryInfoEOList = this.list(queryWrapper);
|
||||||
log.info("一阶段消耗时间:" + (System.currentTimeMillis() - startTime));
|
log.info("一阶段消耗时间:" + (System.currentTimeMillis() - startTime));
|
||||||
|
//数据字典
|
||||||
|
List<SysDictItem> sysDictItems = sysDictItemServiceImpl.selectItemsAll();
|
||||||
//技术领域处理
|
//技术领域处理
|
||||||
treeDict(dummyInventoryInfoEO, dummyInventoryInfoEOList);
|
treeDict(dummyInventoryInfoEO, dummyInventoryInfoEOList);
|
||||||
log.info("二阶段消耗时间:" + (System.currentTimeMillis() - startTime));
|
log.info("二阶段消耗时间:" + (System.currentTimeMillis() - startTime));
|
||||||
this.dataDicDispose(dummyInventoryInfoEOList,dummyInventoryInfoEO.getCut());
|
this.dataDicDispose(dummyInventoryInfoEOList,dummyInventoryInfoEO.getCut());
|
||||||
log.info("三阶段消耗时间:" + (System.currentTimeMillis() - startTime));
|
log.info("三阶段消耗时间:" + (System.currentTimeMillis() - startTime));
|
||||||
|
treeDict(dummyInventoryInfoEO, dummyInventoryInfoEOList,sysDictItems);
|
||||||
|
|
||||||
|
//表头排序
|
||||||
|
dummyInventoryInfoEOList = hearSort(orderBy, orderByField, dummyInventoryInfoEOList);
|
||||||
|
|
||||||
|
|
||||||
return dummyInventoryInfoEOList;
|
return dummyInventoryInfoEOList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private List<DummyInventoryInfoEO> hearSort(String orderBy, String orderByField, List<DummyInventoryInfoEO> dummyInventoryInfoEOList) {
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField)){
|
||||||
|
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||||
|
//编号
|
||||||
|
if("serialNumber".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(dummyInventoryInfoEOList,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getSerialNumber(),e2.getSerialNumber());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(dummyInventoryInfoEOList,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getSerialNumber(),e1.getSerialNumber());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//适用范围
|
||||||
|
if("shi4Yong4Fan4Wei2".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(dummyInventoryInfoEOList,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getShi4Yong4Fan4Wei2Str(),e2.getShi4Yong4Fan4Wei2Str());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(dummyInventoryInfoEOList,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getShi4Yong4Fan4Wei2Str(),e1.getShi4Yong4Fan4Wei2Str());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//WVTA ID
|
||||||
|
if("wvtaId".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(dummyInventoryInfoEOList,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getWvtaId(),e2.getWvtaId());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(dummyInventoryInfoEOList,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getWvtaId(),e1.getWvtaId());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
List<DummyInventoryInfoEO> list = new LinkedList<>();
|
||||||
|
//状态(现行,即将实施,草稿,被替代,废止)
|
||||||
|
dummyInventoryInfoEOList = stateSort(orderBy, orderByField, dummyInventoryInfoEOList, list);
|
||||||
|
|
||||||
|
//认证级别(WVTA,Com.-VTA,Cert.-Market,Reg.-Market,NA)
|
||||||
|
dummyInventoryInfoEOList = attestationRankSort(orderBy, orderByField, dummyInventoryInfoEOList, list);
|
||||||
|
|
||||||
|
//责任领域
|
||||||
|
if("dutyTerritory".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(dummyInventoryInfoEOList,(e1,e2)->{
|
||||||
|
return comparator.compare(e1.getDutyTerritoryStr(),e2.getDutyTerritoryStr());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(dummyInventoryInfoEOList,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getDutyTerritoryStr(),e1.getDutyTerritoryStr());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return dummyInventoryInfoEOList;
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<DummyInventoryInfoEO> attestationRankSort(String orderBy, String orderByField, List<DummyInventoryInfoEO> dummyInventoryInfoEOList, List<DummyInventoryInfoEO> list) {
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField) && "attestationRank".equals(orderByField)){
|
||||||
|
List<DummyInventoryInfoEO> wvta = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getAttestationRankStr().startsWith(AttestationRankEnum.WVTA.getValue())).collect(Collectors.toList());
|
||||||
|
List<DummyInventoryInfoEO> vta = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getAttestationRankStr().startsWith(AttestationRankEnum.VTA.getValue())).collect(Collectors.toList());
|
||||||
|
List<DummyInventoryInfoEO> market = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getAttestationRankStr().startsWith(AttestationRankEnum.MARKET.getValue())).collect(Collectors.toList());
|
||||||
|
List<DummyInventoryInfoEO> regu = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getAttestationRankStr().startsWith(AttestationRankEnum.REGU.getValue())).collect(Collectors.toList());
|
||||||
|
List<DummyInventoryInfoEO> na = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getAttestationRankStr().startsWith(AttestationRankEnum.NA.getValue())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
//正序
|
||||||
|
list.addAll(wvta);
|
||||||
|
list.addAll(vta);
|
||||||
|
list.addAll(market);
|
||||||
|
list.addAll(regu);
|
||||||
|
list.addAll(na);
|
||||||
|
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
//倒序
|
||||||
|
list.addAll(na);
|
||||||
|
list.addAll(regu);
|
||||||
|
list.addAll(market);
|
||||||
|
list.addAll(vta);
|
||||||
|
list.addAll(wvta);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isNotEmpty(list)){
|
||||||
|
return list;
|
||||||
|
}else{
|
||||||
|
return dummyInventoryInfoEOList;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<DummyInventoryInfoEO> stateSort(String orderBy, String orderByField, List<DummyInventoryInfoEO> dummyInventoryInfoEOList, List<DummyInventoryInfoEO> list) {
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField) && "state".equals(orderByField)){
|
||||||
|
List<DummyInventoryInfoEO> active = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.ACTIVE.getName().equals(e.getStateStr())).collect(Collectors.toList());
|
||||||
|
List<DummyInventoryInfoEO> theUpcoming = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.THE_UPCOMING.getName().equals(e.getStateStr())).collect(Collectors.toList());
|
||||||
|
List<DummyInventoryInfoEO> draft = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.DRAFT.getName().equals(e.getStateStr())).collect(Collectors.toList());
|
||||||
|
List<DummyInventoryInfoEO> beReplaced = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.BE_REPLACED.getName().equals(e.getStateStr())).collect(Collectors.toList());
|
||||||
|
List<DummyInventoryInfoEO> abolish = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> LawsStateEnum.ABOLISH.getName().equals(e.getStateStr())).collect(Collectors.toList());
|
||||||
|
if ("1".equals(orderBy)) {
|
||||||
|
//正序
|
||||||
|
list.addAll(active);
|
||||||
|
list.addAll(theUpcoming);
|
||||||
|
list.addAll(draft);
|
||||||
|
list.addAll(beReplaced);
|
||||||
|
list.addAll(abolish);
|
||||||
|
|
||||||
|
} else if ("2".equals(orderBy)) {
|
||||||
|
//倒序
|
||||||
|
list.addAll(abolish);
|
||||||
|
list.addAll(beReplaced);
|
||||||
|
list.addAll(draft);
|
||||||
|
list.addAll(theUpcoming);
|
||||||
|
list.addAll(active);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isNotEmpty(list)){
|
||||||
|
return list;
|
||||||
|
}else{
|
||||||
|
return dummyInventoryInfoEOList;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 数据字典数据处理方法 -> 虚拟清单使用@Dict翻译效率太慢了,200条数据需要处理1分钟。
|
* 数据字典数据处理方法 -> 虚拟清单使用@Dict翻译效率太慢了,200条数据需要处理1分钟。
|
||||||
* @param datas
|
* @param datas
|
||||||
@@ -997,7 +1162,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
|
|||||||
* @param dummyInventoryInfoEO
|
* @param dummyInventoryInfoEO
|
||||||
* @param dummyInventoryInfoEOList
|
* @param dummyInventoryInfoEOList
|
||||||
*/
|
*/
|
||||||
private void treeDict(DummyInventoryInfoEO dummyInventoryInfoEO, List<DummyInventoryInfoEO> dummyInventoryInfoEOList) {
|
private void treeDict(DummyInventoryInfoEO dummyInventoryInfoEO, List<DummyInventoryInfoEO> dummyInventoryInfoEOList,List<SysDictItem> sysDictItems) {
|
||||||
|
|
||||||
List<String> deliverableList = new ArrayList<>();
|
List<String> deliverableList = new ArrayList<>();
|
||||||
if(dummyInventoryInfoEOList.size() != 0){
|
if(dummyInventoryInfoEOList.size() != 0){
|
||||||
@@ -1026,6 +1191,42 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
|
|||||||
List<SysCategory> categoryList = sysCategoryService.list();
|
List<SysCategory> categoryList = sysCategoryService.list();
|
||||||
|
|
||||||
for (DummyInventoryInfoEO record : dummyInventoryInfoEOList) {
|
for (DummyInventoryInfoEO record : dummyInventoryInfoEOList) {
|
||||||
|
String shi4Yong4Fan4Wei2 = record.getShi4Yong4Fan4Wei2();
|
||||||
|
String state = record.getState();
|
||||||
|
String attestationRank = record.getAttestationRank();
|
||||||
|
String dutyTerritory = record.getDutyTerritory();
|
||||||
|
if(StringUtils.isBlank(record.getWvtaId())){
|
||||||
|
record.setWvtaId("");
|
||||||
|
}
|
||||||
|
|
||||||
|
//适用范围 apply_scope
|
||||||
|
if(StringUtils.isNotBlank(shi4Yong4Fan4Wei2)){
|
||||||
|
String applyScope = getItemText(dummyInventoryInfoEO.getCut(), sysDictItems, shi4Yong4Fan4Wei2, "apply_scope");
|
||||||
|
record.setShi4Yong4Fan4Wei2Str(applyScope);
|
||||||
|
}else{
|
||||||
|
record.setShi4Yong4Fan4Wei2Str("");
|
||||||
|
}
|
||||||
|
//状态 state
|
||||||
|
if(StringUtils.isNotBlank(state)){
|
||||||
|
String stateTemp = getItemText(dummyInventoryInfoEO.getCut(), sysDictItems, state, "state");
|
||||||
|
record.setStateStr(stateTemp);
|
||||||
|
}else{
|
||||||
|
record.setStateStr("");
|
||||||
|
}
|
||||||
|
//认证级别 attestation_rank
|
||||||
|
if(StringUtils.isNotBlank(attestationRank)){
|
||||||
|
String attestationRankTemp = getItemText(dummyInventoryInfoEO.getCut(), sysDictItems, attestationRank, "attestation_rank");
|
||||||
|
record.setAttestationRankStr(attestationRankTemp);
|
||||||
|
}else{
|
||||||
|
record.setAttestationRankStr("");
|
||||||
|
}
|
||||||
|
//责任领域 duty_territory
|
||||||
|
if(StringUtils.isNotBlank(dutyTerritory)){
|
||||||
|
String dutyTerritoryTemp = getItemText(dummyInventoryInfoEO.getCut(), sysDictItems, dutyTerritory, "duty_territory");
|
||||||
|
record.setDutyTerritoryStr(dutyTerritoryTemp);
|
||||||
|
}else{
|
||||||
|
record.setDutyTerritoryStr("");
|
||||||
|
}
|
||||||
//技术领域
|
//技术领域
|
||||||
if (categoryList.size() != 0 && StringUtils.isNotBlank(record.getTechnologyTerritory())) {
|
if (categoryList.size() != 0 && StringUtils.isNotBlank(record.getTechnologyTerritory())) {
|
||||||
List<String> technologyTerritoryList = Arrays.asList(record.getTechnologyTerritory().split(","));
|
List<String> technologyTerritoryList = Arrays.asList(record.getTechnologyTerritory().split(","));
|
||||||
@@ -1079,6 +1280,30 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String getItemText(String cut, List<SysDictItem> sysDictItems, String field,String dictCode) {
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
for (String s : field.split(",")) {
|
||||||
|
List<SysDictItem> sysDictItemList = sysDictItems.stream()
|
||||||
|
.filter(e -> StringUtils.isNotBlank(e.getDictCode()) && e.getDictCode().equals(dictCode))
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
if(ObjectUtils.isNotEmpty(sysDictItemList)){
|
||||||
|
List<SysDictItem> collect = sysDictItemList.stream().filter(e -> s.equals(e.getItemValue())).collect(Collectors.toList());
|
||||||
|
if(ObjectUtils.isNotEmpty(collect)){
|
||||||
|
if(CutEnum.CN.getValue().equals(cut)){
|
||||||
|
sb.append(collect.get(0).getItemText());
|
||||||
|
}else{
|
||||||
|
sb.append(collect.get(0).getEnName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String substring = "";
|
||||||
|
if(StringUtils.isNotBlank(sb)){
|
||||||
|
substring = sb.substring(0, sb.length());
|
||||||
|
}
|
||||||
|
return substring;
|
||||||
|
}
|
||||||
|
|
||||||
private String getTreeName(DummyInventoryInfoEO dummyInventoryInfoEO, List<SysCategory> categoryList, List<String> technologyTerritoryList) {
|
private String getTreeName(DummyInventoryInfoEO dummyInventoryInfoEO, List<SysCategory> categoryList, List<String> technologyTerritoryList) {
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
for (String technologyTerritory : technologyTerritoryList) {
|
for (String technologyTerritory : technologyTerritoryList) {
|
||||||
|
|||||||
+2
-2
@@ -34,7 +34,7 @@ public class ConfigManager
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
// get stream from the settings.properties resource and load it
|
// get from the settings.properties resource and load it
|
||||||
properties = new Properties();
|
properties = new Properties();
|
||||||
InputStream stream = Thread.currentThread().getContextClassLoader().getResourceAsStream("settings.properties");
|
InputStream stream = Thread.currentThread().getContextClassLoader().getResourceAsStream("settings.properties");
|
||||||
properties.load(stream);
|
properties.load(stream);
|
||||||
@@ -58,4 +58,4 @@ public class ConfigManager
|
|||||||
|
|
||||||
return property == null ? "" : property;
|
return property == null ? "" : property;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+196
@@ -3,11 +3,14 @@ package com.jero.modules.project.controller;
|
|||||||
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.modules.dummy.enums.OrderEnum;
|
||||||
import com.jero.modules.project.service.INcrTrackService;
|
import com.jero.modules.project.service.INcrTrackService;
|
||||||
import com.jero.modules.project.vo.NcrTrackVO;
|
import com.jero.modules.project.vo.NcrTrackVO;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
@@ -19,7 +22,10 @@ import org.springframework.web.bind.annotation.RestController;
|
|||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.text.Collator;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description
|
* @description
|
||||||
@@ -51,10 +57,116 @@ public class NcrTrackController {
|
|||||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||||
HttpServletRequest req) {
|
HttpServletRequest req) {
|
||||||
List<NcrTrackVO> pageInfo = iNcrTrackService.getPageInfo(ncrTrackVO);
|
List<NcrTrackVO> pageInfo = iNcrTrackService.getPageInfo(ncrTrackVO);
|
||||||
|
//表头排序
|
||||||
|
orderHeader(ncrTrackVO, pageInfo);
|
||||||
Page pages = iNcrTrackService.getPages(pageNo, pageSize, pageInfo);
|
Page pages = iNcrTrackService.getPages(pageNo, pageSize, pageInfo);
|
||||||
return Result.OK(ncrTrackVO.getCut(),pages);
|
return Result.OK(ncrTrackVO.getCut(),pages);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void orderHeader(NcrTrackVO ncrTrackVO, List<NcrTrackVO> pageInfo) {
|
||||||
|
String orderBy = ncrTrackVO.getOrderBy();
|
||||||
|
String orderByField = ncrTrackVO.getOrderByField();
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField)){
|
||||||
|
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||||
|
//编号
|
||||||
|
if("serialNumber".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getSerialNumber(),e2.getSerialNumber());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getSerialNumber(),e1.getSerialNumber());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//标题
|
||||||
|
if("title".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e1.getTitle(),e2.getTitle());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getTitle(),e1.getTitle());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//流程类型
|
||||||
|
if("flowType".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e1.getFlowType(),e2.getFlowType());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getFlowType(),e1.getFlowType());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//责任领域
|
||||||
|
if("dutyTerritory".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e1.getDutyTerritory(),e2.getDutyTerritory());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getDutyTerritory(),e1.getDutyTerritory());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//相关项目
|
||||||
|
if("projectName".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e1.getProjectName(),e2.getProjectName());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getProjectName(),e1.getProjectName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//问题类型
|
||||||
|
if("problemType".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e1.getProblemType(),e2.getProblemType());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getProblemType(),e1.getProblemType());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//发起人
|
||||||
|
if("initiator".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e1.getInitiator(),e2.getInitiator());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getInitiator(),e1.getInitiator());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//责任人
|
||||||
|
if("duty".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e1.getDuty(),e2.getDuty());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(pageInfo,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getDuty(),e1.getDuty());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 项目详情中项目未符合项跟踪
|
* 项目详情中项目未符合项跟踪
|
||||||
*
|
*
|
||||||
@@ -73,10 +185,94 @@ public class NcrTrackController {
|
|||||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||||
HttpServletRequest req) {
|
HttpServletRequest req) {
|
||||||
List<NcrTrackVO> pageInfo = iNcrTrackService.getPageInfo(ncrTrackVO);
|
List<NcrTrackVO> pageInfo = iNcrTrackService.getPageInfo(ncrTrackVO);
|
||||||
|
String orderBy = ncrTrackVO.getOrderBy();
|
||||||
|
String orderByField = ncrTrackVO.getOrderByField();
|
||||||
|
//表头排序
|
||||||
|
hearSort(ncrTrackVO, pageInfo, orderBy, orderByField);
|
||||||
|
|
||||||
Page pages = iNcrTrackService.getPages(pageNo, pageSize, pageInfo);
|
Page pages = iNcrTrackService.getPages(pageNo, pageSize, pageInfo);
|
||||||
return Result.OK(pages);
|
return Result.OK(pages);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void hearSort(NcrTrackVO ncrTrackVO, List<NcrTrackVO> pageInfo, String orderBy, String orderByField) {
|
||||||
|
if(StringUtils.isNotBlank(orderByField)) {
|
||||||
|
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||||
|
//编号 serialNumber
|
||||||
|
if ("serialNumber".equals(orderByField)) {
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e1.getSerialNumber(), e2.getSerialNumber());
|
||||||
|
});
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e2.getSerialNumber(), e1.getSerialNumber());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//流程类型 flowType
|
||||||
|
if ("flowType".equals(orderByField)) {
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e1.getFlowType(), e2.getFlowType());
|
||||||
|
});
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e2.getFlowType(), e1.getFlowType());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//责任领域 dutyTerritory
|
||||||
|
if ("dutyTerritory".equals(orderByField)) {
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e1.getDutyTerritory(), e2.getDutyTerritory());
|
||||||
|
});
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e2.getDutyTerritory(), e1.getDutyTerritory());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//问题类型 problemType
|
||||||
|
if ("problemType".equals(orderByField)) {
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e1.getProblemType(), e2.getProblemType());
|
||||||
|
});
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e2.getProblemType(), e1.getProblemType());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//发起人 initiator
|
||||||
|
if ("initiator".equals(orderByField)) {
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e1.getInitiator(), e2.getInitiator());
|
||||||
|
});
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e2.getInitiator(), e1.getInitiator());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//责任人 duty
|
||||||
|
if ("duty".equals(orderByField)) {
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e1.getDuty(), e2.getDuty());
|
||||||
|
});
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(pageInfo, (e1, e2) -> {
|
||||||
|
return comparator.compare(e2.getDuty(), e1.getDuty());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 导出数据
|
* 导出数据
|
||||||
* @param request
|
* @param request
|
||||||
|
|||||||
+12
@@ -468,6 +468,18 @@ public class ProjectLawsInventoryEO implements Serializable {
|
|||||||
@ApiModelProperty(value = "文档库id/标准id")
|
@ApiModelProperty(value = "文档库id/标准id")
|
||||||
private String standId;
|
private String standId;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
@ApiModelProperty(value = "调取虚拟清单中文档ids")
|
||||||
|
private String dummyids;//调取虚拟清单中文档ids
|
||||||
|
|
||||||
|
//排序(1->正序, 2->倒序)
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderBy;
|
||||||
|
|
||||||
|
//排序字段
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderByField;
|
||||||
|
|
||||||
@ApiModelProperty(value = "导出的excel的名称")
|
@ApiModelProperty(value = "导出的excel的名称")
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String excelName;
|
private String excelName;
|
||||||
|
|||||||
+12
@@ -120,6 +120,8 @@ public class ProjectTaskInventoryEO implements Serializable {
|
|||||||
@ApiModelProperty(value = "认证进度")
|
@ApiModelProperty(value = "认证进度")
|
||||||
@Dict(dicCode = "certification_progress")
|
@Dict(dicCode = "certification_progress")
|
||||||
private String certificationProgress;
|
private String certificationProgress;
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String certificationProgressName;
|
||||||
|
|
||||||
/**认证进度备注*/
|
/**认证进度备注*/
|
||||||
@Excel(name = "认证进度备注", width = 15)
|
@Excel(name = "认证进度备注", width = 15)
|
||||||
@@ -150,6 +152,8 @@ public class ProjectTaskInventoryEO implements Serializable {
|
|||||||
@Dict(dicCode ="duty_territory")
|
@Dict(dicCode ="duty_territory")
|
||||||
@Excel(name = "责任领域", width = 20)
|
@Excel(name = "责任领域", width = 20)
|
||||||
private String dutyTerritory;
|
private String dutyTerritory;
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String dutyTerritoryName;
|
||||||
|
|
||||||
/**设计符合性 待办id**/
|
/**设计符合性 待办id**/
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
@@ -337,4 +341,12 @@ public class ProjectTaskInventoryEO implements Serializable {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String prehomoDutyId;
|
private String prehomoDutyId;
|
||||||
|
|
||||||
|
//排序(1->正序, 2->倒序)
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderBy;
|
||||||
|
|
||||||
|
//排序字段
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String orderByField;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+48
@@ -0,0 +1,48 @@
|
|||||||
|
package com.jero.modules.project.enums;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 当前状态枚举类
|
||||||
|
*/
|
||||||
|
public enum ColourEnum {
|
||||||
|
|
||||||
|
RED("红色","1"), // 未完成
|
||||||
|
YELLOW("黄色","2"), // 已完成
|
||||||
|
GREEN("绿色","3"), // 展示数据
|
||||||
|
BLUE("蓝色","4") // 展示数据
|
||||||
|
;
|
||||||
|
|
||||||
|
|
||||||
|
String name;
|
||||||
|
String value;
|
||||||
|
|
||||||
|
private ColourEnum(String name, String value) {
|
||||||
|
this.name = name;
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValue(String value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getTextByValue(String value) {
|
||||||
|
ColourEnum[] values = values();
|
||||||
|
for (ColourEnum taskStatusEnum : values) {
|
||||||
|
if (taskStatusEnum.value.equals(value)) {
|
||||||
|
return taskStatusEnum.name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
+4
@@ -153,6 +153,8 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
|
|||||||
if(StringUtils.isNotBlank(trackVO.getDutyTerritory())){
|
if(StringUtils.isNotBlank(trackVO.getDutyTerritory())){
|
||||||
String dutyTerritory = pull(dictItemList, trackVO.getDutyTerritory(), "duty_territory", ncrTrackVO.getCut());
|
String dutyTerritory = pull(dictItemList, trackVO.getDutyTerritory(), "duty_territory", ncrTrackVO.getCut());
|
||||||
trackVO.setDutyTerritory(dutyTerritory);
|
trackVO.setDutyTerritory(dutyTerritory);
|
||||||
|
}else{
|
||||||
|
trackVO.setDutyTerritory("");
|
||||||
}
|
}
|
||||||
//设计符合性确认
|
//设计符合性确认
|
||||||
String designPId = trackVO.getDesignPId();//流程实例id
|
String designPId = trackVO.getDesignPId();//流程实例id
|
||||||
@@ -431,6 +433,8 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
|
|||||||
ncrTrackVO.setTitle(title);//标题
|
ncrTrackVO.setTitle(title);//标题
|
||||||
if(StringUtils.isNotBlank(flowType)){
|
if(StringUtils.isNotBlank(flowType)){
|
||||||
ncrTrackVO.setFlowType(name);//流程类型
|
ncrTrackVO.setFlowType(name);//流程类型
|
||||||
|
}else{
|
||||||
|
ncrTrackVO.setFlowType("");//流程类型
|
||||||
}
|
}
|
||||||
ncrTrackVO.setDutyTerritory(dutyTerritory);//责任领域
|
ncrTrackVO.setDutyTerritory(dutyTerritory);//责任领域
|
||||||
ncrTrackVO.setProjectName(projectName);//相关项目
|
ncrTrackVO.setProjectName(projectName);//相关项目
|
||||||
|
|||||||
+253
-2
@@ -31,7 +31,9 @@ import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
|||||||
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
||||||
import com.jero.modules.dummy.entity.DummyInventoryBaseEO;
|
import com.jero.modules.dummy.entity.DummyInventoryBaseEO;
|
||||||
import com.jero.modules.dummy.entity.DummyInventoryInfoEO;
|
import com.jero.modules.dummy.entity.DummyInventoryInfoEO;
|
||||||
|
import com.jero.modules.dummy.enums.AttestationRankEnum;
|
||||||
import com.jero.modules.dummy.enums.DummyInventoryBaseFieldEnum;
|
import com.jero.modules.dummy.enums.DummyInventoryBaseFieldEnum;
|
||||||
|
import com.jero.modules.dummy.enums.OrderEnum;
|
||||||
import com.jero.modules.dummy.service.IDummyInventoryInfoEOService;
|
import com.jero.modules.dummy.service.IDummyInventoryInfoEOService;
|
||||||
import com.jero.modules.dummy.service.impl.DummyInventoryBaseEOServiceImpl;
|
import com.jero.modules.dummy.service.impl.DummyInventoryBaseEOServiceImpl;
|
||||||
import com.jero.modules.dummy.util.DeepCopyListUtil;
|
import com.jero.modules.dummy.util.DeepCopyListUtil;
|
||||||
@@ -114,6 +116,7 @@ import javax.servlet.http.HttpServletRequest;
|
|||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
import java.net.URLEncoder;
|
import java.net.URLEncoder;
|
||||||
|
import java.text.Collator;
|
||||||
import java.text.DateFormat;
|
import java.text.DateFormat;
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
@@ -265,10 +268,10 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
List<ProjectLawsInventoryEO> projectLawsInventoryEOList = this.list(wrapperTemp);
|
List<ProjectLawsInventoryEO> projectLawsInventoryEOList = this.list(wrapperTemp);
|
||||||
//调取
|
//调取
|
||||||
String dummyInventoryBaseId = projectLawsInventoryEO.getDummyInventoryBaseId();
|
String dummyInventoryBaseId = projectLawsInventoryEO.getDummyInventoryBaseId();
|
||||||
if(StringUtils.isNotBlank(dummyInventoryBaseId)){
|
if(StringUtils.isNotBlank(projectLawsInventoryEO.getDummyids())){
|
||||||
//查询虚拟清单对应清单维护中的数据
|
//查询虚拟清单对应清单维护中的数据
|
||||||
LambdaQueryWrapper<DummyInventoryInfoEO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<DummyInventoryInfoEO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
lambdaQueryWrapper.in(DummyInventoryInfoEO::getDummyInventoryBaseId,projectLawsInventoryEO.getDummyInventoryBaseId());
|
lambdaQueryWrapper.in(DummyInventoryInfoEO::getId,Arrays.asList(projectLawsInventoryEO.getDummyids().split(",")));
|
||||||
List<DummyInventoryInfoEO> dummyInventoryInfoEOList = dummyInventoryInfoEOService.list(lambdaQueryWrapper);
|
List<DummyInventoryInfoEO> dummyInventoryInfoEOList = dummyInventoryInfoEOService.list(lambdaQueryWrapper);
|
||||||
List<DummyInventoryInfoEO> dummyInventoryInfoEOListNew = new ArrayList<>();
|
List<DummyInventoryInfoEO> dummyInventoryInfoEOListNew = new ArrayList<>();
|
||||||
if(dummyInventoryInfoEOList.size() != 0){
|
if(dummyInventoryInfoEOList.size() != 0){
|
||||||
@@ -873,10 +876,244 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
dataDispose(result,currentUser,isProjectRole,projectLawsInventoryEO.getCut());
|
dataDispose(result,currentUser,isProjectRole,projectLawsInventoryEO.getCut());
|
||||||
log.info("三阶段消耗时间:" + (System.currentTimeMillis() - startTime));
|
log.info("三阶段消耗时间:" + (System.currentTimeMillis() - startTime));
|
||||||
dataDictDispose(result,projectLawsInventoryEO.getCut());
|
dataDictDispose(result,projectLawsInventoryEO.getCut());
|
||||||
|
log.debug("处理数据字典消耗时间:" + (System.currentTimeMillis() - startTime));
|
||||||
|
//表头排序
|
||||||
|
result = hearSort(projectLawsInventoryEO, result);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<ProjectLawsInventoryEO> hearSort(ProjectLawsInventoryEO projectLawsInventoryEO, List<ProjectLawsInventoryEO> result) {
|
||||||
|
// String orderBy = "1";
|
||||||
|
// String orderByField = "serialNumber";
|
||||||
|
String orderBy = projectLawsInventoryEO.getOrderBy();
|
||||||
|
String orderByField = projectLawsInventoryEO.getOrderByField();
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField)){
|
||||||
|
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||||
|
//编号 serialNumber
|
||||||
|
if("serialNumber".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getSerialNumber(),e2.getSerialNumber());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getSerialNumber(),e1.getSerialNumber());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// WVTA ID wvtaId
|
||||||
|
if("wvtaId".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getWvtaId(),e2.getWvtaId());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getWvtaId(),e1.getWvtaId());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 责任领域 dutyTerritory_dictText
|
||||||
|
if("dutyTerritory".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getDutyTerritory_dictText(),e2.getDutyTerritory_dictText());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getDutyTerritory_dictText(),e1.getDutyTerritory_dictText());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 法规工程师 regulationOwnerName
|
||||||
|
if("regulationOwnerName".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getRegulationOwnerName(),e2.getRegulationOwnerName());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getRegulationOwnerName(),e1.getRegulationOwnerName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 认证工程师 homologationEngineerName
|
||||||
|
if("homologationEngineerName".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getHomologationEngineerName(),e2.getHomologationEngineerName());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getHomologationEngineerName(),e1.getHomologationEngineerName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 工程接口人 engineeringInterfacePersonName
|
||||||
|
if("engineeringInterfacePersonName".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getEngineeringInterfacePersonName(),e2.getEngineeringInterfacePersonName());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getEngineeringInterfacePersonName(),e1.getEngineeringInterfacePersonName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
List<ProjectLawsInventoryEO> list = new LinkedList<>();
|
||||||
|
// 清单确认状态(未发起,法规待确认,认证待确认,接受,法规拒绝,认证拒绝) inventoryAffirmStatusName
|
||||||
|
//InventoryAffirmStatusEnum
|
||||||
|
if("inventoryAffirmStatusName".equals(orderByField)){
|
||||||
|
result = inventorySort(orderBy,orderByField,result,list);
|
||||||
|
}
|
||||||
|
// 任务确认状态(未发起,待确认,接受,拒绝) taskAffirmStatusName
|
||||||
|
//TaskAffirmStatusEnum
|
||||||
|
if("taskAffirmStatusName".equals(orderByField)){
|
||||||
|
result = taskSort(orderBy,orderByField,result,list);
|
||||||
|
}
|
||||||
|
// 认证级别(WVTA,Com.-VTA,Cert.-Market,Reg.-Market) attestationRank_dictText
|
||||||
|
if("attestationRank".equals(orderByField)){
|
||||||
|
result = attestationRankSort(orderBy,orderByField,result,list);
|
||||||
|
}
|
||||||
|
}
|
||||||
log.info("四阶段消耗时间:" + (System.currentTimeMillis() - startTime));
|
log.info("四阶段消耗时间:" + (System.currentTimeMillis() - startTime));
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//清单确认状态排序
|
||||||
|
private List<ProjectLawsInventoryEO> inventorySort(String orderBy, String orderByField,
|
||||||
|
List<ProjectLawsInventoryEO> dummyInventoryInfoEOList,
|
||||||
|
List<ProjectLawsInventoryEO> list) {
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField) && "inventoryAffirmStatusName".equals(orderByField)){
|
||||||
|
List<ProjectLawsInventoryEO> notStarted = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getInventoryAffirmStatusName().equals(InventoryAffirmStatusEnum.NOT_STARTED.getName())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> regEngToConfirm = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getInventoryAffirmStatusName().equals(InventoryAffirmStatusEnum.REG_ENG_TO_CONFIRM.getName())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> homoEngToConfirm = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getInventoryAffirmStatusName().equals(InventoryAffirmStatusEnum.HOMO_ENG_TO_CONFIRM.getName())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> accepted = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getInventoryAffirmStatusName().equals(InventoryAffirmStatusEnum.ACCEPTED.getName())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> regEngRejected = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getInventoryAffirmStatusName().equals(InventoryAffirmStatusEnum.REG_ENG_REJECTED.getName())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> homoEngRejected = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getInventoryAffirmStatusName().equals(InventoryAffirmStatusEnum.HOMO_ENG_REJECTED.getName())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> listToConfirm = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getInventoryAffirmStatusName().equals(InventoryAffirmStatusEnum.LIST_TO_CONFIRM.getName())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> rejected = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getInventoryAffirmStatusName().equals(InventoryAffirmStatusEnum.REJECTED.getName())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
//正序
|
||||||
|
list.addAll(notStarted);
|
||||||
|
list.addAll(listToConfirm);
|
||||||
|
list.addAll(regEngToConfirm);
|
||||||
|
list.addAll(homoEngToConfirm);
|
||||||
|
list.addAll(accepted);
|
||||||
|
list.addAll(rejected);
|
||||||
|
list.addAll(regEngRejected);
|
||||||
|
list.addAll(homoEngRejected);
|
||||||
|
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
//倒序
|
||||||
|
list.addAll(homoEngRejected);
|
||||||
|
list.addAll(regEngRejected);
|
||||||
|
list.addAll(rejected);
|
||||||
|
list.addAll(accepted);
|
||||||
|
list.addAll(homoEngToConfirm);
|
||||||
|
list.addAll(regEngToConfirm);
|
||||||
|
list.addAll(listToConfirm);
|
||||||
|
list.addAll(notStarted);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isNotEmpty(list)){
|
||||||
|
return list;
|
||||||
|
}else{
|
||||||
|
return dummyInventoryInfoEOList;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 任务确认状态排序
|
||||||
|
private List<ProjectLawsInventoryEO> taskSort(String orderBy, String orderByField,
|
||||||
|
List<ProjectLawsInventoryEO> dummyInventoryInfoEOList,
|
||||||
|
List<ProjectLawsInventoryEO> list) {
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField) && "taskAffirmStatusName".equals(orderByField)){
|
||||||
|
List<ProjectLawsInventoryEO> notStarted = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getTaskAffirmStatusName().equals(TaskAffirmStatusEnum.NOT_STARTED.getName())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> listToConfirm = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getTaskAffirmStatusName().equals(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getName())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> accepted = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getTaskAffirmStatusName().equals(TaskAffirmStatusEnum.ACCEPTED.getName())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> rejected = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getTaskAffirmStatusName().equals(TaskAffirmStatusEnum.REJECTED.getName())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
//正序
|
||||||
|
list.addAll(notStarted);
|
||||||
|
list.addAll(listToConfirm);
|
||||||
|
list.addAll(accepted);
|
||||||
|
list.addAll(rejected);
|
||||||
|
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
//倒序
|
||||||
|
list.addAll(rejected);
|
||||||
|
list.addAll(accepted);
|
||||||
|
list.addAll(listToConfirm);
|
||||||
|
list.addAll(notStarted);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isNotEmpty(list)){
|
||||||
|
return list;
|
||||||
|
}else{
|
||||||
|
return dummyInventoryInfoEOList;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//认证级别
|
||||||
|
private List<ProjectLawsInventoryEO> attestationRankSort(String orderBy, String orderByField,
|
||||||
|
List<ProjectLawsInventoryEO> dummyInventoryInfoEOList,
|
||||||
|
List<ProjectLawsInventoryEO> list) {
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField) && "attestationRank".equals(orderByField)){
|
||||||
|
List<ProjectLawsInventoryEO> wvta = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getAttestationRank_dictText().startsWith(AttestationRankEnum.WVTA.getValue())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> vta = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getAttestationRank_dictText().startsWith(AttestationRankEnum.VTA.getValue())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> market = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getAttestationRank_dictText().startsWith(AttestationRankEnum.MARKET.getValue())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> regu = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getAttestationRank_dictText().startsWith(AttestationRankEnum.REGU.getValue())).collect(Collectors.toList());
|
||||||
|
List<ProjectLawsInventoryEO> na = dummyInventoryInfoEOList.stream()
|
||||||
|
.filter(e -> e.getAttestationRank_dictText().startsWith(AttestationRankEnum.NA.getValue())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
//正序
|
||||||
|
List<ProjectLawsInventoryEO> collect = dummyInventoryInfoEOList.stream().filter(e -> StringUtils.isBlank(e.getAttestationRank_dictText())).collect(Collectors.toList());
|
||||||
|
list.addAll(collect);
|
||||||
|
list.addAll(wvta);
|
||||||
|
list.addAll(vta);
|
||||||
|
list.addAll(market);
|
||||||
|
list.addAll(regu);
|
||||||
|
list.addAll(na);
|
||||||
|
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
//倒序
|
||||||
|
list.addAll(na);
|
||||||
|
list.addAll(regu);
|
||||||
|
list.addAll(market);
|
||||||
|
list.addAll(vta);
|
||||||
|
list.addAll(wvta);
|
||||||
|
List<ProjectLawsInventoryEO> collect = dummyInventoryInfoEOList.stream().filter(e -> StringUtils.isBlank(e.getAttestationRank_dictText())).collect(Collectors.toList());
|
||||||
|
list.addAll(collect);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isNotEmpty(list)){
|
||||||
|
return list;
|
||||||
|
}else{
|
||||||
|
return dummyInventoryInfoEOList;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 数据字典数据处理方法
|
* 数据字典数据处理方法
|
||||||
* @param result 返回值
|
* @param result 返回值
|
||||||
@@ -886,6 +1123,12 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
if(CollectionUtils.isNotEmpty(result)){
|
if(CollectionUtils.isNotEmpty(result)){
|
||||||
List<SysDictItem> sysDictItems = sysDictItemServiceImpl.getBaseMapper().selectItemsAll();
|
List<SysDictItem> sysDictItems = sysDictItemServiceImpl.getBaseMapper().selectItemsAll();
|
||||||
for (ProjectLawsInventoryEO projectLawsInventoryEO : result) {
|
for (ProjectLawsInventoryEO projectLawsInventoryEO : result) {
|
||||||
|
if(StringUtils.isBlank(projectLawsInventoryEO.getWvtaId())){
|
||||||
|
projectLawsInventoryEO.setWvtaId("");
|
||||||
|
}
|
||||||
|
if(StringUtils.isBlank(projectLawsInventoryEO.getDutyTerritory_dictText())){
|
||||||
|
projectLawsInventoryEO.setDutyTerritory_dictText("");
|
||||||
|
}
|
||||||
//处理适用地区
|
//处理适用地区
|
||||||
String region = projectLawsInventoryEO.getRegion();
|
String region = projectLawsInventoryEO.getRegion();
|
||||||
if(StringUtils.isNotEmpty(region)){
|
if(StringUtils.isNotEmpty(region)){
|
||||||
@@ -912,6 +1155,8 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
if(StringUtils.isNotEmpty(attestationRank)){
|
if(StringUtils.isNotEmpty(attestationRank)){
|
||||||
String attestationRank_dictText = disposeShowDictItemValue(sysDictItems, attestationRank,cut,ProjectInventoryFieldEnum.ATTESTATION_RANK.getValue());
|
String attestationRank_dictText = disposeShowDictItemValue(sysDictItems, attestationRank,cut,ProjectInventoryFieldEnum.ATTESTATION_RANK.getValue());
|
||||||
projectLawsInventoryEO.setAttestationRank_dictText(attestationRank_dictText);
|
projectLawsInventoryEO.setAttestationRank_dictText(attestationRank_dictText);
|
||||||
|
}else{
|
||||||
|
projectLawsInventoryEO.setAttestationRank_dictText("");
|
||||||
}
|
}
|
||||||
|
|
||||||
//处理责任领域
|
//处理责任领域
|
||||||
@@ -1099,14 +1344,20 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
//认证工程师id
|
//认证工程师id
|
||||||
if(StringUtils.isNotEmpty(projectLawsInventoryEO.getHomologationEngineerId())){
|
if(StringUtils.isNotEmpty(projectLawsInventoryEO.getHomologationEngineerId())){
|
||||||
userIdList.add(projectLawsInventoryEO.getHomologationEngineerId());
|
userIdList.add(projectLawsInventoryEO.getHomologationEngineerId());
|
||||||
|
}else{
|
||||||
|
projectLawsInventoryEO.setHomologationEngineerName("");
|
||||||
}
|
}
|
||||||
//法规工程师id
|
//法规工程师id
|
||||||
if(StringUtils.isNotEmpty(projectLawsInventoryEO.getRegulationOwnerId())){
|
if(StringUtils.isNotEmpty(projectLawsInventoryEO.getRegulationOwnerId())){
|
||||||
userIdList.add(projectLawsInventoryEO.getRegulationOwnerId());
|
userIdList.add(projectLawsInventoryEO.getRegulationOwnerId());
|
||||||
|
}else{
|
||||||
|
projectLawsInventoryEO.setRegulationOwnerName("");
|
||||||
}
|
}
|
||||||
//工程接口人id
|
//工程接口人id
|
||||||
if(StringUtils.isNotEmpty(projectLawsInventoryEO.getEngineeringInterfacePerson())){
|
if(StringUtils.isNotEmpty(projectLawsInventoryEO.getEngineeringInterfacePerson())){
|
||||||
userIdList.add(projectLawsInventoryEO.getEngineeringInterfacePerson());
|
userIdList.add(projectLawsInventoryEO.getEngineeringInterfacePerson());
|
||||||
|
}else{
|
||||||
|
projectLawsInventoryEO.setEngineeringInterfacePersonName("");
|
||||||
}
|
}
|
||||||
|
|
||||||
//设计符合性确认
|
//设计符合性确认
|
||||||
|
|||||||
+112
-18
@@ -10,10 +10,33 @@ import com.jero.common.exception.JeroBootException;
|
|||||||
import com.jero.common.system.vo.DictModel;
|
import com.jero.common.system.vo.DictModel;
|
||||||
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.collect.service.IParamsManifestEOService;
|
||||||
|
import com.jero.modules.dummy.enums.OrderEnum;
|
||||||
import com.jero.modules.enums.DictCodeEnum;
|
import com.jero.modules.enums.DictCodeEnum;
|
||||||
import com.jero.modules.project.entity.*;
|
import com.jero.modules.project.entity.ConditionAssessmentEO;
|
||||||
import com.jero.modules.project.enums.*;
|
import com.jero.modules.project.entity.ProjectLawsInventoryEO;
|
||||||
import com.jero.modules.project.mapper.*;
|
import com.jero.modules.project.entity.ProjectLawsInventoryLogEO;
|
||||||
|
import com.jero.modules.project.entity.ProjectLibraryBase;
|
||||||
|
import com.jero.modules.project.entity.ProjectLibraryRoleRelEO;
|
||||||
|
import com.jero.modules.project.entity.ProjectRelatedPersonnel;
|
||||||
|
import com.jero.modules.project.entity.ProjectTaskInventoryEO;
|
||||||
|
import com.jero.modules.project.entity.ProjectTaskPlanning;
|
||||||
|
import com.jero.modules.project.entity.ProjectUserPermission;
|
||||||
|
import com.jero.modules.project.enums.CertificationProgressEnum;
|
||||||
|
import com.jero.modules.project.enums.CurrentProjectStatusEnum;
|
||||||
|
import com.jero.modules.project.enums.DesignComplianceStatusEnum;
|
||||||
|
import com.jero.modules.project.enums.InventoryAffirmStatusEnum;
|
||||||
|
import com.jero.modules.project.enums.OperatorTypeEnum;
|
||||||
|
import com.jero.modules.project.enums.PermissionDescriptionEnum;
|
||||||
|
import com.jero.modules.project.enums.ProjectRoleEnum;
|
||||||
|
import com.jero.modules.project.enums.ProjectUserLocationEnum;
|
||||||
|
import com.jero.modules.project.enums.TaskAffirmStatusEnum;
|
||||||
|
import com.jero.modules.project.enums.TopEnum;
|
||||||
|
import com.jero.modules.project.mapper.ProjectLawsInventoryEOMapper;
|
||||||
|
import com.jero.modules.project.mapper.ProjectLibraryBaseMapper;
|
||||||
|
import com.jero.modules.project.mapper.ProjectNameInfoEOMapper;
|
||||||
|
import com.jero.modules.project.mapper.ProjectRelatedPersonnelMapper;
|
||||||
|
import com.jero.modules.project.mapper.ProjectTaskInventoryEOMapper;
|
||||||
|
import com.jero.modules.project.mapper.ProjectUserPermissionMapper;
|
||||||
import com.jero.modules.project.service.IConditionAssessmentEOService;
|
import com.jero.modules.project.service.IConditionAssessmentEOService;
|
||||||
import com.jero.modules.project.service.IProjectLibraryBaseService;
|
import com.jero.modules.project.service.IProjectLibraryBaseService;
|
||||||
import com.jero.modules.project.service.IProjectLibraryRoleRelEOService;
|
import com.jero.modules.project.service.IProjectLibraryRoleRelEOService;
|
||||||
@@ -46,8 +69,20 @@ import javax.servlet.http.HttpServletRequest;
|
|||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.OutputStream;
|
import java.io.OutputStream;
|
||||||
|
import java.text.Collator;
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
import java.util.*;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.UUID;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -740,17 +775,17 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
|||||||
projectIds.addAll(permissionProjectIds);
|
projectIds.addAll(permissionProjectIds);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//if (sysRoleMapper.queryUserRoleByCode(ProjectRoleEnum.VIEWER.getName(), loginUser.getId()) > 0) {
|
if (sysRoleMapper.queryUserRoleByCode(ProjectRoleEnum.VIEWER.getName(), loginUser.getId()) > 0) {
|
||||||
// //如果是Viewer,根据配置的品牌筛选可访问的项目
|
//如果是Viewer,根据配置的品牌筛选可访问的项目
|
||||||
// List<String> brandTypes = projectUserBrandService.queryBrandByUserId(loginUser.getId());
|
List<String> brandTypes = projectUserBrandService.queryBrandByUserId(loginUser.getId());
|
||||||
// if (ObjectUtils.isNotEmpty(brandTypes)) {
|
if (ObjectUtils.isNotEmpty(brandTypes)) {
|
||||||
// QueryWrapper<ProjectLibraryBase> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<ProjectLibraryBase> queryWrapper = new QueryWrapper<>();
|
||||||
// queryWrapper.in("brand",brandTypes);
|
queryWrapper.in("brand",brandTypes);
|
||||||
// if (ObjectUtils.isNotEmpty(list(queryWrapper))) {
|
if (ObjectUtils.isNotEmpty(list(queryWrapper))) {
|
||||||
// projectIds.addAll(list(queryWrapper).stream().map(ProjectLibraryBase::getId).collect(Collectors.toSet()));
|
projectIds.addAll(list(queryWrapper).stream().map(ProjectLibraryBase::getId).collect(Collectors.toSet()));
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
//}
|
}
|
||||||
|
|
||||||
List<ProjectLibraryBase> result = projectLibraryBaseMapper.queryPageList(params);
|
List<ProjectLibraryBase> result = projectLibraryBaseMapper.queryPageList(params);
|
||||||
disposeData(result,"",false);
|
disposeData(result,"",false);
|
||||||
@@ -837,11 +872,12 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
List<ProjectLibraryBase> resultLast = new ArrayList<>();
|
||||||
//权限筛选
|
//权限筛选
|
||||||
if (isViewer != 0) {
|
if (isViewer != 0) {
|
||||||
return resultNew;
|
resultLast = resultNew;
|
||||||
} else {
|
} else {
|
||||||
List<ProjectLibraryBase> resultLast = new ArrayList<>();
|
|
||||||
for (ProjectLibraryBase projectLibraryBase : resultNew) {
|
for (ProjectLibraryBase projectLibraryBase : resultNew) {
|
||||||
//判断父项目是否有权限
|
//判断父项目是否有权限
|
||||||
if (!projectIds.contains(projectLibraryBase.getId())) {
|
if (!projectIds.contains(projectLibraryBase.getId())) {
|
||||||
@@ -871,7 +907,65 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return resultLast;
|
}
|
||||||
|
//表头排序
|
||||||
|
// params.put("orderBy","1");
|
||||||
|
// params.put("orderByField","digitalPlatform");
|
||||||
|
hearSort(params, resultLast);
|
||||||
|
return resultLast;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void hearSort(Map<String, Object> params, List<ProjectLibraryBase> resultLast) {
|
||||||
|
if(ObjectUtils.isNotEmpty(params.get("orderByField"))){
|
||||||
|
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||||
|
//项目名称,R&H Studio,车型平台,数字平台
|
||||||
|
if("projectName".equals(params.get("orderByField"))){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))){
|
||||||
|
Collections.sort(resultLast,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getProjectName(),e2.getProjectName());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))){
|
||||||
|
Collections.sort(resultLast,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getProjectName(),e1.getProjectName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//R&H Studio
|
||||||
|
if("studioEngineerName".equals(params.get("orderByField"))){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))){
|
||||||
|
Collections.sort(resultLast,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getStudioEngineerName(),e2.getStudioEngineerName());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))){
|
||||||
|
Collections.sort(resultLast,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getStudioEngineerName(),e1.getStudioEngineerName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//车型平台
|
||||||
|
if("vehiclePlatform".equals(params.get("orderByField"))){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))){
|
||||||
|
Collections.sort(resultLast,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getVehiclePlatform(),e2.getVehiclePlatform());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))){
|
||||||
|
Collections.sort(resultLast,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getVehiclePlatform(),e1.getVehiclePlatform());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//数字平台
|
||||||
|
if("digitalPlatform".equals(params.get("orderByField"))){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))){
|
||||||
|
Collections.sort(resultLast,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getDigitalPlatform(),e2.getDigitalPlatform());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))){
|
||||||
|
Collections.sort(resultLast,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getDigitalPlatform(),e1.getDigitalPlatform());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+283
@@ -14,6 +14,7 @@ import com.jero.common.system.query.QueryGenerator;
|
|||||||
import com.jero.common.system.vo.LoginUser;
|
import com.jero.common.system.vo.LoginUser;
|
||||||
import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
import com.jero.modules.document.entity.BussDocumentLibraryEO;
|
||||||
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
||||||
|
import com.jero.modules.dummy.enums.OrderEnum;
|
||||||
import com.jero.modules.feishu.service.IFeishuService;
|
import com.jero.modules.feishu.service.IFeishuService;
|
||||||
import com.jero.modules.feishu.vo.FeishuMsg2Vo;
|
import com.jero.modules.feishu.vo.FeishuMsg2Vo;
|
||||||
import com.jero.modules.feishu.vo.FeishuMsgVo;
|
import com.jero.modules.feishu.vo.FeishuMsgVo;
|
||||||
@@ -51,6 +52,7 @@ import javax.servlet.http.HttpServletRequest;
|
|||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.OutputStream;
|
import java.io.OutputStream;
|
||||||
|
import java.text.Collator;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -289,9 +291,264 @@ public class ProjectTaskInventoryEOServiceImpl extends ServiceImpl<ProjectTaskIn
|
|||||||
).collect(Collectors.toList());
|
).collect(Collectors.toList());
|
||||||
disposeData(result,projectTaskInventoryEO.getCut());
|
disposeData(result,projectTaskInventoryEO.getCut());
|
||||||
}
|
}
|
||||||
|
result = hearSort(projectTaskInventoryEO, result);
|
||||||
|
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private List<ProjectTaskInventoryEO> hearSort(ProjectTaskInventoryEO projectTaskInventoryEO, List<ProjectTaskInventoryEO> result) {
|
||||||
|
//标准信息 serialNumber
|
||||||
|
// String orderBy = "1";
|
||||||
|
// String orderByField = "projectStatusAssess";
|
||||||
|
String orderBy = projectTaskInventoryEO.getOrderBy();
|
||||||
|
String orderByField = projectTaskInventoryEO.getOrderByField();
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField)) {
|
||||||
|
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||||
|
//编号 serialNumber
|
||||||
|
if ("serialNumber".equals(orderByField)) {
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(result, (e1, e2) -> {
|
||||||
|
return comparator.compare(e1.getSerialNumber(), e2.getSerialNumber());
|
||||||
|
});
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
Collections.sort(result, (e1, e2) -> {
|
||||||
|
return comparator.compare(e2.getSerialNumber(), e1.getSerialNumber());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 责任领域 dutyTerritoryName
|
||||||
|
if("dutyTerritory".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1, e2)->{
|
||||||
|
return comparator.compare(e1.getDutyTerritoryName(),e2.getDutyTerritoryName());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1,e2)->{
|
||||||
|
return comparator.compare(e2.getDutyTerritoryName(),e1.getDutyTerritoryName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 认证进度 certificationProgressName
|
||||||
|
if("certificationProgressName".equals(orderByField)){
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1, e2)->{
|
||||||
|
return comparator.compare(e2.getCertificationProgressName(),e1.getCertificationProgressName());
|
||||||
|
});
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
Collections.sort(result,(e1,e2)->{
|
||||||
|
return comparator.compare(e1.getCertificationProgressName(),e2.getCertificationProgressName());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
List<ProjectTaskInventoryEO> list = new LinkedList<>();
|
||||||
|
// 设计符合性确认 designFlowTaskStatus ReviewResultEnum
|
||||||
|
result = designSort(result, orderBy, orderByField, list);
|
||||||
|
|
||||||
|
// Pre-Homo确认 prehomoFlowTaskStatus ReviewResultEnum
|
||||||
|
result = preSort(result, orderBy, orderByField, list);
|
||||||
|
|
||||||
|
// 验证符合性确认 verifyFlowTaskStatus ReviewResultEnum
|
||||||
|
result = verifySort(result, orderBy, orderByField, list);
|
||||||
|
|
||||||
|
// 当前状态 projectStatusAssess
|
||||||
|
result = colourSort(result, orderBy, orderByField, list);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<ProjectTaskInventoryEO> designSort(List<ProjectTaskInventoryEO> result,
|
||||||
|
String orderBy,
|
||||||
|
String orderByField,
|
||||||
|
List<ProjectTaskInventoryEO> list) {
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField) && "designFlowTaskStatus".equals(orderByField)){
|
||||||
|
List<ProjectTaskInventoryEO> conformity = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.CONFORMITY.getValue().equals(e.getDesignFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> inconformity = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.INCONFORMITY.getValue().equals(e.getDesignFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> toTrack = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.TO_TRACK.getValue().equals(e.getDesignFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> uninvolved = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.UNINVOLVED.getValue().equals(e.getDesignFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> toBeConfirmed = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.TO_BE_CONFIRMED.getValue().equals(e.getDesignFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> terminationOfTask = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.TERMINATION_OF_TASK.getValue().equals(e.getDesignFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
//正序
|
||||||
|
//状态为空的
|
||||||
|
List<ProjectTaskInventoryEO> collect = result.stream()
|
||||||
|
.filter(e -> StringUtils.isBlank(e.getDesignFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
list.addAll(collect);
|
||||||
|
list.addAll(toBeConfirmed);
|
||||||
|
list.addAll(conformity);
|
||||||
|
list.addAll(inconformity);
|
||||||
|
list.addAll(toTrack);
|
||||||
|
list.addAll(uninvolved);
|
||||||
|
list.addAll(terminationOfTask);
|
||||||
|
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
//倒序
|
||||||
|
list.addAll(terminationOfTask);
|
||||||
|
list.addAll(uninvolved);
|
||||||
|
list.addAll(toTrack);
|
||||||
|
list.addAll(inconformity);
|
||||||
|
list.addAll(conformity);
|
||||||
|
list.addAll(toBeConfirmed);
|
||||||
|
List<ProjectTaskInventoryEO> collect = result.stream()
|
||||||
|
.filter(e -> StringUtils.isBlank(e.getDesignFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
list.addAll(collect);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isEmpty(list)){
|
||||||
|
return result;
|
||||||
|
}else{
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private List<ProjectTaskInventoryEO> preSort(List<ProjectTaskInventoryEO> result,
|
||||||
|
String orderBy,
|
||||||
|
String orderByField,
|
||||||
|
List<ProjectTaskInventoryEO> list) {
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField) && "prehomoFlowTaskStatus".equals(orderByField)){
|
||||||
|
List<ProjectTaskInventoryEO> conformity = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.CONFORMITY.getValue().equals(e.getPrehomoFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> inconformity = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.INCONFORMITY.getValue().equals(e.getPrehomoFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> toTrack = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.TO_TRACK.getValue().equals(e.getPrehomoFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> uninvolved = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.UNINVOLVED.getValue().equals(e.getPrehomoFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> toBeConfirmed = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.TO_BE_CONFIRMED.getValue().equals(e.getPrehomoFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> terminationOfTask = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.TERMINATION_OF_TASK.getValue().equals(e.getPrehomoFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
//正序
|
||||||
|
List<ProjectTaskInventoryEO> collect = result.stream()
|
||||||
|
.filter(e -> StringUtils.isBlank(e.getPrehomoFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
list.addAll(collect);
|
||||||
|
list.addAll(toBeConfirmed);
|
||||||
|
list.addAll(conformity);
|
||||||
|
list.addAll(inconformity);
|
||||||
|
list.addAll(toTrack);
|
||||||
|
list.addAll(uninvolved);
|
||||||
|
list.addAll(terminationOfTask);
|
||||||
|
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
//倒序
|
||||||
|
list.addAll(terminationOfTask);
|
||||||
|
list.addAll(uninvolved);
|
||||||
|
list.addAll(toTrack);
|
||||||
|
list.addAll(inconformity);
|
||||||
|
list.addAll(conformity);
|
||||||
|
list.addAll(toBeConfirmed);
|
||||||
|
List<ProjectTaskInventoryEO> collect = result.stream()
|
||||||
|
.filter(e -> StringUtils.isBlank(e.getPrehomoFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
list.addAll(collect);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isEmpty(list)){
|
||||||
|
return result;
|
||||||
|
}else{
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private List<ProjectTaskInventoryEO> verifySort(List<ProjectTaskInventoryEO> result,
|
||||||
|
String orderBy,
|
||||||
|
String orderByField,
|
||||||
|
List<ProjectTaskInventoryEO> list) {
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField) && "verifyFlowTaskStatus".equals(orderByField)){
|
||||||
|
List<ProjectTaskInventoryEO> conformity = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.CONFORMITY.getValue().equals(e.getVerifyFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> inconformity = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.INCONFORMITY.getValue().equals(e.getVerifyFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> toTrack = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.TO_TRACK.getValue().equals(e.getVerifyFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> uninvolved = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.UNINVOLVED.getValue().equals(e.getVerifyFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> toBeConfirmed = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.TO_BE_CONFIRMED.getValue().equals(e.getVerifyFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> terminationOfTask = result.stream()
|
||||||
|
.filter(e -> ReviewResultEnum.TERMINATION_OF_TASK.getValue().equals(e.getVerifyFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
//正序
|
||||||
|
List<ProjectTaskInventoryEO> collect = result.stream()
|
||||||
|
.filter(e -> StringUtils.isBlank(e.getVerifyFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
list.addAll(collect);
|
||||||
|
list.addAll(toBeConfirmed);
|
||||||
|
list.addAll(conformity);
|
||||||
|
list.addAll(inconformity);
|
||||||
|
list.addAll(toTrack);
|
||||||
|
list.addAll(uninvolved);
|
||||||
|
list.addAll(terminationOfTask);
|
||||||
|
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
//倒序
|
||||||
|
list.addAll(terminationOfTask);
|
||||||
|
list.addAll(uninvolved);
|
||||||
|
list.addAll(toTrack);
|
||||||
|
list.addAll(inconformity);
|
||||||
|
list.addAll(conformity);
|
||||||
|
list.addAll(toBeConfirmed);
|
||||||
|
List<ProjectTaskInventoryEO> collect = result.stream()
|
||||||
|
.filter(e -> StringUtils.isBlank(e.getVerifyFlowTaskStatus())).collect(Collectors.toList());
|
||||||
|
list.addAll(collect);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isEmpty(list)){
|
||||||
|
return result;
|
||||||
|
}else{
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private List<ProjectTaskInventoryEO> colourSort(List<ProjectTaskInventoryEO> result,
|
||||||
|
String orderBy,
|
||||||
|
String orderByField,
|
||||||
|
List<ProjectTaskInventoryEO> list) {
|
||||||
|
if(ObjectUtils.isNotEmpty(orderByField) && "projectStatusAssess".equals(orderByField)){
|
||||||
|
List<ProjectTaskInventoryEO> red = result.stream()
|
||||||
|
.filter(e -> ColourEnum.RED.getValue().equals(e.getProjectStatusAssess())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> yellow = result.stream()
|
||||||
|
.filter(e -> ColourEnum.YELLOW.getValue().equals(e.getProjectStatusAssess())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> green = result.stream()
|
||||||
|
.filter(e -> ColourEnum.GREEN.getValue().equals(e.getProjectStatusAssess())).collect(Collectors.toList());
|
||||||
|
List<ProjectTaskInventoryEO> blue = result.stream()
|
||||||
|
.filter(e -> ColourEnum.BLUE.getValue().equals(e.getProjectStatusAssess())).collect(Collectors.toList());
|
||||||
|
|
||||||
|
if (OrderEnum.POSITIVE.getValue().equals(orderBy)) {
|
||||||
|
//正序
|
||||||
|
List<ProjectTaskInventoryEO> collect = result.stream()
|
||||||
|
.filter(e -> StringUtils.isBlank(e.getProjectStatusAssess())).collect(Collectors.toList());
|
||||||
|
blue.addAll(collect);
|
||||||
|
list.addAll(green);
|
||||||
|
list.addAll(yellow);
|
||||||
|
list.addAll(red);
|
||||||
|
list.addAll(blue);
|
||||||
|
|
||||||
|
} else if (OrderEnum.REVERSE.getValue().equals(orderBy)) {
|
||||||
|
//倒序
|
||||||
|
List<ProjectTaskInventoryEO> collect = result.stream()
|
||||||
|
.filter(e -> StringUtils.isBlank(e.getProjectStatusAssess())).collect(Collectors.toList());
|
||||||
|
blue.addAll(collect);
|
||||||
|
list.addAll(blue);
|
||||||
|
list.addAll(red);
|
||||||
|
list.addAll(yellow);
|
||||||
|
list.addAll(green);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(ObjectUtils.isEmpty(list)){
|
||||||
|
return result;
|
||||||
|
}else{
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Result<?> processCall(JSONObject jsonObject) {
|
public Result<?> processCall(JSONObject jsonObject) {
|
||||||
String requestSource = jsonObject.getString("requestSource");
|
String requestSource = jsonObject.getString("requestSource");
|
||||||
@@ -1341,7 +1598,33 @@ public class ProjectTaskInventoryEOServiceImpl extends ServiceImpl<ProjectTaskIn
|
|||||||
*/
|
*/
|
||||||
public void disposeData(List<ProjectTaskInventoryEO> result,String cut){
|
public void disposeData(List<ProjectTaskInventoryEO> result,String cut){
|
||||||
if(CollectionUtils.isNotEmpty(result)){
|
if(CollectionUtils.isNotEmpty(result)){
|
||||||
|
List<SysDictItem> dictItemList = sysDictItemServiceImpl.selectItemsByDictCode("duty_territory");
|
||||||
|
List<SysDictItem> certificationProgress = sysDictItemServiceImpl.selectItemsByDictCode("certification_progress");
|
||||||
for (ProjectTaskInventoryEO projectTaskInventoryEO : result) {
|
for (ProjectTaskInventoryEO projectTaskInventoryEO : result) {
|
||||||
|
//责任领域
|
||||||
|
if(StringUtils.isNotEmpty(projectTaskInventoryEO.getDutyTerritory())){
|
||||||
|
List<SysDictItem> collect = dictItemList.stream()
|
||||||
|
.filter(dict -> StringUtils.equals(dict.getItemValue(), projectTaskInventoryEO.getDutyTerritory())).collect(Collectors.toList());
|
||||||
|
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
|
||||||
|
projectTaskInventoryEO.setDutyTerritoryName(collect.get(0).getItemText());
|
||||||
|
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||||
|
projectTaskInventoryEO.setDutyTerritoryName(collect.get(0).getEnName());
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
projectTaskInventoryEO.setDutyTerritoryName("");
|
||||||
|
}
|
||||||
|
//认证进度 certificationProgress
|
||||||
|
if(StringUtils.isNotEmpty(projectTaskInventoryEO.getCertificationProgress())){
|
||||||
|
List<SysDictItem> collect = certificationProgress.stream()
|
||||||
|
.filter(dict -> StringUtils.equals(dict.getItemValue(), projectTaskInventoryEO.getCertificationProgress())).collect(Collectors.toList());
|
||||||
|
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
|
||||||
|
projectTaskInventoryEO.setCertificationProgressName(collect.get(0).getItemText());
|
||||||
|
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||||
|
projectTaskInventoryEO.setCertificationProgressName(collect.get(0).getEnName());
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
projectTaskInventoryEO.setCertificationProgressName("");
|
||||||
|
}
|
||||||
if(StringUtils.isNotEmpty(projectTaskInventoryEO.getDesignStatus())){
|
if(StringUtils.isNotEmpty(projectTaskInventoryEO.getDesignStatus())){
|
||||||
String textByValue = DesignComplianceStatusEnum.getTextByValue(projectTaskInventoryEO.getDesignStatus(), cut);
|
String textByValue = DesignComplianceStatusEnum.getTextByValue(projectTaskInventoryEO.getDesignStatus(), cut);
|
||||||
projectTaskInventoryEO.setDesignStatus(textByValue);
|
projectTaskInventoryEO.setDesignStatus(textByValue);
|
||||||
|
|||||||
@@ -147,6 +147,13 @@ public class NcrTrackVO implements Serializable {
|
|||||||
private String administrator;
|
private String administrator;
|
||||||
|
|
||||||
|
|
||||||
|
//排序(1->正序, 2->倒序)
|
||||||
|
private String orderBy;
|
||||||
|
|
||||||
|
//排序字段
|
||||||
|
private String orderByField;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+4
-1
@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.jero.modules.subscribe.entity.OnlCgformSubscribe;
|
import com.jero.modules.subscribe.entity.OnlCgformSubscribe;
|
||||||
import org.apache.ibatis.annotations.Select;
|
import org.apache.ibatis.annotations.Select;
|
||||||
import org.springframework.data.repository.query.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -21,4 +21,7 @@ public interface OnlCgformSubscribeMapper extends BaseMapper<OnlCgformSubscribe>
|
|||||||
List<OnlCgformSubscribe> queryListByDocumentId(@Param("document_id") String document_id);
|
List<OnlCgformSubscribe> queryListByDocumentId(@Param("document_id") String document_id);
|
||||||
|
|
||||||
IPage queryPageList(IPage page, @Param("params") Map<String,Object> params);
|
IPage queryPageList(IPage page, @Param("params") Map<String,Object> params);
|
||||||
|
|
||||||
|
List<Map<String,Object>> infoList(@Param("params") Map<String,Object> params);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+62
-2
@@ -48,7 +48,67 @@
|
|||||||
</otherwise>
|
</otherwise>
|
||||||
</choose>
|
</choose>
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
|
<if test="params.state != null and params.state != '' ">
|
||||||
|
and bdl.state in
|
||||||
|
<foreach collection="params.state.split(',')" index="index" item="item" open="(" separator="," close=")">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
<if test="params.orderByField == 'serial_number' or params.orderByField == 'title'">
|
||||||
|
order by CONVERT( ${params.orderByField} USING gbk) COLLATE gbk_chinese_ci
|
||||||
|
</if>
|
||||||
|
<if test="params.orderByField == 'create_time'">
|
||||||
|
order by ocs.create_time
|
||||||
|
</if>
|
||||||
|
<if test="params.orderBy == 1">
|
||||||
|
asc
|
||||||
|
</if>
|
||||||
|
<if test="params.orderBy == 2">
|
||||||
|
desc
|
||||||
|
</if>
|
||||||
|
<if test="params.orderByField == null or params.orderByField == ''">
|
||||||
|
order by ocs.create_time desc
|
||||||
|
</if>
|
||||||
|
</select>
|
||||||
|
<select id="infoList" parameterType="java.util.Map" resultType="hashmap">
|
||||||
|
select
|
||||||
|
ocs.id,
|
||||||
|
ocs.create_time as createTime,
|
||||||
|
ocs.create_by as createBy,
|
||||||
|
bdl.serial_number as serialNumber,
|
||||||
|
bdl.title,
|
||||||
|
bdl.state,
|
||||||
|
ocs.document_id as documentId
|
||||||
|
from
|
||||||
|
onl_cgform_subscribe ocs
|
||||||
|
right join
|
||||||
|
buss_document_library bdl on ocs.document_id = bdl.id
|
||||||
|
where ocs.create_by = #{params.createBy}
|
||||||
|
<if test="params.serialNumber != null and params.serialNumber != ''">
|
||||||
|
<!--搜索条件:编号;包含%,单独搜索-->
|
||||||
|
<choose>
|
||||||
|
<when test='params.serialNumber != null and params.serialNumber != "" and params.serialNumber.contains("%")'>
|
||||||
|
and bdl.serial_number like '%1%%' escape '1'
|
||||||
|
</when>
|
||||||
|
<otherwise>
|
||||||
|
and bdl.serial_number like concat(concat('%',#{params.serialNumber}),'%')
|
||||||
|
</otherwise>
|
||||||
|
</choose>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="params.title != null and params.title != ''">
|
||||||
|
<!--搜索条件:标题;包含%,单独搜索-->
|
||||||
|
<choose>
|
||||||
|
<when test='params.title != null and params.title != "" and params.title.contains("%")'>
|
||||||
|
and bdl.title like '%1%%' escape '1'
|
||||||
|
</when>
|
||||||
|
<otherwise>
|
||||||
|
and bdl.title like concat(concat('%',#{params.title}),'%')
|
||||||
|
</otherwise>
|
||||||
|
</choose>
|
||||||
|
</if>
|
||||||
|
|
||||||
<if test="params.state != null and params.state != '' ">
|
<if test="params.state != null and params.state != '' ">
|
||||||
and bdl.state in
|
and bdl.state in
|
||||||
<foreach collection="params.state.split(',')" index="index" item="item" open="(" separator="," close=")">
|
<foreach collection="params.state.split(',')" index="index" item="item" open="(" separator="," close=")">
|
||||||
@@ -57,4 +117,4 @@
|
|||||||
</if>
|
</if>
|
||||||
order by ocs.create_time desc
|
order by ocs.create_time desc
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
+23
-3
@@ -10,6 +10,7 @@ import com.jero.common.exception.JeroBootException;
|
|||||||
import com.jero.common.system.vo.LoginUser;
|
import com.jero.common.system.vo.LoginUser;
|
||||||
import com.jero.generater.modules.online.cgform.entity.OnlCgformField;
|
import com.jero.generater.modules.online.cgform.entity.OnlCgformField;
|
||||||
import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl;
|
import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl;
|
||||||
|
import com.jero.modules.collection.service.impl.OnlCgformCollectionServiceImpl;
|
||||||
import com.jero.modules.ocr.util.LineHumpUtil;
|
import com.jero.modules.ocr.util.LineHumpUtil;
|
||||||
import com.jero.modules.subscribe.entity.OnlCgformSubscribe;
|
import com.jero.modules.subscribe.entity.OnlCgformSubscribe;
|
||||||
import com.jero.modules.subscribe.mapper.OnlCgformSubscribeMapper;
|
import com.jero.modules.subscribe.mapper.OnlCgformSubscribeMapper;
|
||||||
@@ -17,13 +18,18 @@ import com.jero.modules.subscribe.service.IOnlCgformSubscribeService;
|
|||||||
import com.jero.modules.system.entity.SysDictItem;
|
import com.jero.modules.system.entity.SysDictItem;
|
||||||
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
|
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.SecurityUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -40,6 +46,8 @@ public class OnlCgformSubscribeServiceImpl extends ServiceImpl<OnlCgformSubscrib
|
|||||||
private OnlCgformSubscribeMapper onlCgformSubscribeMapper;
|
private OnlCgformSubscribeMapper onlCgformSubscribeMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private SysDictItemServiceImpl sysDictItemServiceImpl;
|
private SysDictItemServiceImpl sysDictItemServiceImpl;
|
||||||
|
@Autowired
|
||||||
|
private OnlCgformCollectionServiceImpl onlCgformCollectionService;
|
||||||
/**
|
/**
|
||||||
* 保存
|
* 保存
|
||||||
*
|
*
|
||||||
@@ -203,12 +211,24 @@ public class OnlCgformSubscribeServiceImpl extends ServiceImpl<OnlCgformSubscrib
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IPage<OnlCgformSubscribe> queryPageList(Map<String,Object> params) {
|
public IPage<OnlCgformSubscribe> queryPageList(Map<String,Object> params) {
|
||||||
|
// params.put("orderByField","title");
|
||||||
|
// params.put("orderBy","1");
|
||||||
|
if(ObjectUtils.isEmpty(params.get("orderByField"))){
|
||||||
|
params.put("orderBy",null);
|
||||||
|
}
|
||||||
Integer pageNo = Integer.parseInt(params.get("pageNo").toString());
|
Integer pageNo = Integer.parseInt(params.get("pageNo").toString());
|
||||||
Integer pageSize = Integer.parseInt(params.get("pageSize").toString());
|
Integer pageSize = Integer.parseInt(params.get("pageSize").toString());
|
||||||
IPage page = new Page(pageNo, pageSize);
|
IPage page = new Page(pageNo, pageSize);
|
||||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
params.put("createBy",sysUser.getUsername());
|
params.put("createBy",sysUser.getUsername());
|
||||||
IPage result = onlCgformSubscribeMapper.queryPageList(page,params);
|
IPage result = new Page();
|
||||||
|
//表头排序(状态单独处理)
|
||||||
|
if(ObjectUtils.isNotEmpty(params.get("orderByField")) && "state".equals((String) params.get("orderByField"))){
|
||||||
|
List<Map<String, Object>> mapList = onlCgformSubscribeMapper.infoList(params);
|
||||||
|
result = onlCgformCollectionService.stateSort(params,pageNo,pageSize,result,mapList);
|
||||||
|
}else{
|
||||||
|
result = onlCgformSubscribeMapper.queryPageList(page,params);
|
||||||
|
}
|
||||||
List<Map<String,Object>> records = result.getRecords();
|
List<Map<String,Object>> records = result.getRecords();
|
||||||
dataDispose(records,params);
|
dataDispose(records,params);
|
||||||
return result;
|
return result;
|
||||||
@@ -271,4 +291,4 @@ public class OnlCgformSubscribeServiceImpl extends ServiceImpl<OnlCgformSubscrib
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -65,6 +65,7 @@
|
|||||||
:dataSource="tableData"
|
:dataSource="tableData"
|
||||||
:pagination="false"
|
:pagination="false"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
@change="tableOnChange"
|
||||||
:rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
|
:rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
|
||||||
>
|
>
|
||||||
<span slot="serialNumber" slot-scope="text, record">
|
<span slot="serialNumber" slot-scope="text, record">
|
||||||
@@ -115,6 +116,8 @@
|
|||||||
pageSize: 10
|
pageSize: 10
|
||||||
}, //搜索条件
|
}, //搜索条件
|
||||||
total: 0,
|
total: 0,
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
//列表表头
|
//列表表头
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
@@ -123,6 +126,7 @@
|
|||||||
key: 'serialNumber',
|
key: 'serialNumber',
|
||||||
scopedSlots: { customRender: 'serialNumber' },
|
scopedSlots: { customRender: 'serialNumber' },
|
||||||
align: 'center',
|
align: 'center',
|
||||||
|
sorter:true,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
width: 180
|
width: 180
|
||||||
},
|
},
|
||||||
@@ -139,6 +143,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'state'
|
dataIndex: 'state'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -146,6 +151,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'createTime'
|
dataIndex: 'createTime'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -167,9 +173,22 @@
|
|||||||
this.loadData()
|
this.loadData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
if(sorter.columnKey == 'serialNumber'){
|
||||||
|
this.orderByField = 'serial_number'
|
||||||
|
} else if(sorter.columnKey == 'createTime') {
|
||||||
|
this.orderByField = 'create_time'
|
||||||
|
} else{
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
}
|
||||||
|
this.loadData()
|
||||||
|
},
|
||||||
//获取列表数据
|
//获取列表数据
|
||||||
loadData() {
|
loadData() {
|
||||||
let params = {
|
let params = {
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...this.queryParams
|
...this.queryParams
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -68,6 +68,7 @@
|
|||||||
:dataSource="tableData"
|
:dataSource="tableData"
|
||||||
:pagination="false"
|
:pagination="false"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
@change="tableOnChange"
|
||||||
:rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
|
:rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
|
||||||
>
|
>
|
||||||
<span slot="serialNumber" slot-scope="text, record">
|
<span slot="serialNumber" slot-scope="text, record">
|
||||||
@@ -114,6 +115,8 @@
|
|||||||
pageSize: 10
|
pageSize: 10
|
||||||
}, //搜索条件
|
}, //搜索条件
|
||||||
total: 0,
|
total: 0,
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
//列表表头
|
//列表表头
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
@@ -123,6 +126,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
scopedSlots: { customRender: 'serialNumber' },
|
scopedSlots: { customRender: 'serialNumber' },
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -138,6 +142,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
dataIndex: 'state',
|
dataIndex: 'state',
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -145,6 +150,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
dataIndex: 'createTime',
|
dataIndex: 'createTime',
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -177,9 +183,22 @@
|
|||||||
this.loadData()
|
this.loadData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
if(sorter.columnKey == 'serialNumber'){
|
||||||
|
this.orderByField = 'serial_number'
|
||||||
|
} else if(sorter.columnKey == 'createTime') {
|
||||||
|
this.orderByField = 'create_time'
|
||||||
|
} else{
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
}
|
||||||
|
this.loadData()
|
||||||
|
},
|
||||||
//获取列表数据
|
//获取列表数据
|
||||||
loadData() {
|
loadData() {
|
||||||
let params = {
|
let params = {
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...this.queryParams
|
...this.queryParams
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -0,0 +1,261 @@
|
|||||||
|
<template>
|
||||||
|
<a-drawer
|
||||||
|
:title="$t('Transfer')"
|
||||||
|
: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">
|
||||||
|
<div class="table-page-search-wrapper">
|
||||||
|
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||||
|
<a-row :gutter="24">
|
||||||
|
<a-col :md="12" :sm="8">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text" :title="$t('VirtualListName')">
|
||||||
|
<span>{{$t('VirtualListName')}}</span>
|
||||||
|
</div>
|
||||||
|
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('VirtualListName')"
|
||||||
|
v-model="queryParam.name"></j-input>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
||||||
|
<a-col :md="12" :sm="24">
|
||||||
|
<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-col>
|
||||||
|
</span>
|
||||||
|
</a-row>
|
||||||
|
</a-form>
|
||||||
|
</div>
|
||||||
|
<a-table
|
||||||
|
:columns="columns"
|
||||||
|
rowKey="id"
|
||||||
|
:scroll="{x: 800}"
|
||||||
|
:data-source="dataList"
|
||||||
|
:pagination="false"
|
||||||
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:' ' }"
|
||||||
|
:loading="loading">
|
||||||
|
|
||||||
|
</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" style="margin-right: 16px">{{$t('cancel')}}</a-button>
|
||||||
|
<a-button @click="handleSubmit(undefined)" type="primary" :loading="confirmLoading">{{$t('determine')}}</a-button>
|
||||||
|
</div>
|
||||||
|
</a-drawer>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { getAction, postAction } from '@/api/manage'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'transferList',
|
||||||
|
components: {},
|
||||||
|
props: ['url'],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
queryParam: {},
|
||||||
|
confirmLoading: false,
|
||||||
|
selectedRowKeys: [],
|
||||||
|
columns: [
|
||||||
|
{
|
||||||
|
title: this.$t('VirtualListName'),
|
||||||
|
dataIndex: 'name',
|
||||||
|
align: 'center',
|
||||||
|
ellipsis: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('instructionForUse'),
|
||||||
|
dataIndex: 'useExplain',
|
||||||
|
align: 'center',
|
||||||
|
ellipsis: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('updateTime'),
|
||||||
|
dataIndex: 'updateTime',
|
||||||
|
align: 'center',
|
||||||
|
ellipsis: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('creater'),
|
||||||
|
dataIndex: 'createBy',
|
||||||
|
align: 'center',
|
||||||
|
ellipsis: true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
dataList: [],
|
||||||
|
content: [],
|
||||||
|
loading: false,
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
total: 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
transferModel() {
|
||||||
|
this.visible = true
|
||||||
|
this.queryParam = {}
|
||||||
|
this.selectedRowKeys = []
|
||||||
|
this.replacePage()
|
||||||
|
},
|
||||||
|
searchQuery() {
|
||||||
|
this.pageNo = 1
|
||||||
|
this.replacePage()
|
||||||
|
},
|
||||||
|
searchReset() {
|
||||||
|
this.pageNo = 1
|
||||||
|
this.queryParam = {}
|
||||||
|
this.replacePage()
|
||||||
|
},
|
||||||
|
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.queryParam
|
||||||
|
}
|
||||||
|
this.loading = true
|
||||||
|
postAction('/project/projectLawsInventoryEO/getPageInfoDummy', query).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.dataList = res.result.records || []
|
||||||
|
this.total = res.result.total
|
||||||
|
this.loading = false
|
||||||
|
} else {
|
||||||
|
this.loading = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
onSelectChange(value) {
|
||||||
|
this.selectedRowKeys = value
|
||||||
|
if (this.selectedRowKeys.length > 1) {
|
||||||
|
this.selectedRowKeys.shift()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
handleCancel() {
|
||||||
|
this.visible = false
|
||||||
|
},
|
||||||
|
handleSubmit(flag) {
|
||||||
|
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||||
|
this.confirmLoading = true
|
||||||
|
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||||
|
this.confirmLoading = false
|
||||||
|
this.$emit('transferListForm',selectedRowKeys.join(','))
|
||||||
|
this.selectedRowKeys = []
|
||||||
|
// postAction('project/projectLawsInventoryEO/add', {
|
||||||
|
// dummyInventoryBaseId: selectedRowKeys.join(','),
|
||||||
|
// projectLibraryId: this.$route.query.id,
|
||||||
|
// flag: flag
|
||||||
|
// }).then((res) => {
|
||||||
|
// if (res.success) {
|
||||||
|
// this.confirmLoading = false
|
||||||
|
// // this.$message.success(this.$t('OperationSuccessful'))
|
||||||
|
// // this.visible = false
|
||||||
|
// this.selectedRowKeys = []
|
||||||
|
// this.$emit('transferListForm',selectedRowKeys.join(','))
|
||||||
|
// } else {
|
||||||
|
// // if (res.message == '该虚拟清单的维护清单中没有数据,是否需要添加') {
|
||||||
|
// // this.confirmLoading = false
|
||||||
|
// // this.getAdd()
|
||||||
|
// // return
|
||||||
|
// // }
|
||||||
|
// this.$message.warning(this.$t('operationFailed'))
|
||||||
|
// this.confirmLoading = false
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
} else {
|
||||||
|
this.$message.warning(this.$t('selectLeastOne'))
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getAdd() {
|
||||||
|
let _this = this
|
||||||
|
this.$confirm({
|
||||||
|
content: _this.$t('TheDoesNotContainData'),
|
||||||
|
onOk() {
|
||||||
|
_this.handleSubmit('1')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.page {
|
||||||
|
text-align: right;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.drawer-bootom-button {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0;
|
||||||
|
z-index: 100;
|
||||||
|
width: 100%;
|
||||||
|
border-top: 1px solid #e8e8e8;
|
||||||
|
padding: 10px 16px;
|
||||||
|
text-align: right;
|
||||||
|
left: 0;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 0 0 2px 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-title-text {
|
||||||
|
line-height: 1.4;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title-text {
|
||||||
|
width: 20%;
|
||||||
|
min-width: 110px;
|
||||||
|
color: #000F16;
|
||||||
|
display: inline-block;
|
||||||
|
font-weight: 500;
|
||||||
|
font-size: 14px;
|
||||||
|
margin-right: 16px;
|
||||||
|
margin-top: 3px;
|
||||||
|
text-align: right;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-input {
|
||||||
|
display: inline-block;
|
||||||
|
width: 70%;
|
||||||
|
height: 38px;
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-button {
|
||||||
|
height: 38px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,254 @@
|
|||||||
|
<template>
|
||||||
|
<a-drawer
|
||||||
|
:title="$t('Transfer')"
|
||||||
|
: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">
|
||||||
|
<div class="table-page-search-wrapper">
|
||||||
|
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||||
|
<a-row :gutter="24">
|
||||||
|
<a-col :md="12" :sm="5">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text" :title="$t('standard')">
|
||||||
|
<span>{{$t('standard')}}</span>
|
||||||
|
</div>
|
||||||
|
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('standard')"
|
||||||
|
v-model="queryParam.serialNumber"></j-input>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<a-col :md="12" :sm="5">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text" :title="$t('title')">
|
||||||
|
<span>{{$t('title')}}</span>
|
||||||
|
</div>
|
||||||
|
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('title')"
|
||||||
|
v-model="queryParam.title"></j-input>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
||||||
|
<a-col :md="12" :sm="24">
|
||||||
|
<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-col>
|
||||||
|
</span>
|
||||||
|
</a-row>
|
||||||
|
</a-form>
|
||||||
|
</div>
|
||||||
|
<a-table
|
||||||
|
:columns="columns"
|
||||||
|
rowKey="id"
|
||||||
|
:scroll="{x: 800}"
|
||||||
|
:data-source="dataList"
|
||||||
|
:pagination="false"
|
||||||
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:' ' }"
|
||||||
|
:loading="loading">
|
||||||
|
|
||||||
|
</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" style="margin-right: 16px">{{$t('cancel')}}</a-button>
|
||||||
|
<a-button @click="handleSubmit(undefined)" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
|
||||||
|
</div>
|
||||||
|
</a-drawer>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { getAction, postAction } from '@/api/manage'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'transferList',
|
||||||
|
components: {},
|
||||||
|
props: ['url'],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
queryParam: {},
|
||||||
|
confirmLoading: false,
|
||||||
|
selectedRowKeys: [],
|
||||||
|
columns: [
|
||||||
|
{
|
||||||
|
title: this.$t('standard'),
|
||||||
|
align: 'center',
|
||||||
|
dataIndex: 'serialNumber',
|
||||||
|
scopedSlots: { customRender: 'standard' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('title'),
|
||||||
|
align: 'center',
|
||||||
|
dataIndex: 'title',
|
||||||
|
scopedSlots: { customRender: 'titleName' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('subtitle'),
|
||||||
|
align: 'center',
|
||||||
|
dataIndex: 'subtitle',
|
||||||
|
ellipsis: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('areaOfResponsibility'),
|
||||||
|
align: 'center',
|
||||||
|
ellipsis: true,
|
||||||
|
dataIndex: 'dutyTerritory_dictText'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
dataList: [],
|
||||||
|
content: [],
|
||||||
|
loading: false,
|
||||||
|
dummyInventoryBaseId:'',
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
total: 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
transferModel(id) {
|
||||||
|
this.visible = true
|
||||||
|
this.dummyInventoryBaseId = id
|
||||||
|
this.queryParam = {}
|
||||||
|
this.selectedRowKeys = []
|
||||||
|
this.replacePage()
|
||||||
|
},
|
||||||
|
searchQuery() {
|
||||||
|
this.pageNo = 1
|
||||||
|
this.replacePage()
|
||||||
|
},
|
||||||
|
searchReset() {
|
||||||
|
this.pageNo = 1
|
||||||
|
this.queryParam = {}
|
||||||
|
this.replacePage()
|
||||||
|
},
|
||||||
|
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.queryParam,
|
||||||
|
dummyInventoryBaseId: this.dummyInventoryBaseId
|
||||||
|
}
|
||||||
|
this.loading = true
|
||||||
|
getAction('/dummy/dummyInventoryInfoEO/list', query).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.dataList = res.result || []
|
||||||
|
this.loading = false
|
||||||
|
} else {
|
||||||
|
this.loading = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
onSelectChange(value) {
|
||||||
|
this.selectedRowKeys = value
|
||||||
|
// if (this.selectedRowKeys.length > 1) {
|
||||||
|
// this.selectedRowKeys.shift()
|
||||||
|
// }
|
||||||
|
},
|
||||||
|
handleCancel() {
|
||||||
|
this.visible = false
|
||||||
|
},
|
||||||
|
handleSubmit(flag) {
|
||||||
|
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||||
|
this.confirmLoading = true
|
||||||
|
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||||
|
postAction('/dummy/dummyInventoryInfoEO/acquireAdd', {
|
||||||
|
dummyInventoryBaseId: this.$route.query.id,
|
||||||
|
ids: selectedRowKeys.join(','),
|
||||||
|
}).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.confirmLoading = false
|
||||||
|
this.$message.success(this.$t('OperationSuccessful'))
|
||||||
|
this.visible = false
|
||||||
|
this.selectedRowKeys = []
|
||||||
|
this.$emit('transferListFormHomo')
|
||||||
|
} else {
|
||||||
|
this.$message.warning(this.$t('operationFailed'))
|
||||||
|
this.confirmLoading = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$message.warning(this.$t('selectLeastOne'))
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.page {
|
||||||
|
text-align: right;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.drawer-bootom-button {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0;
|
||||||
|
z-index: 100;
|
||||||
|
width: 100%;
|
||||||
|
border-top: 1px solid #e8e8e8;
|
||||||
|
padding: 10px 16px;
|
||||||
|
text-align: right;
|
||||||
|
left: 0;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 0 0 2px 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-title-text {
|
||||||
|
line-height: 1.4;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title-text {
|
||||||
|
width: 20%;
|
||||||
|
min-width: 110px;
|
||||||
|
color: #000F16;
|
||||||
|
display: inline-block;
|
||||||
|
font-weight: 500;
|
||||||
|
font-size: 14px;
|
||||||
|
margin-right: 16px;
|
||||||
|
margin-top: 3px;
|
||||||
|
text-align: right;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-input {
|
||||||
|
display: inline-block;
|
||||||
|
width: 70%;
|
||||||
|
height: 38px;
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-button {
|
||||||
|
height: 38px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -90,6 +90,7 @@
|
|||||||
<!-- style="float: left;font-size: 16px;font-weight: 400;color: #040B29;">-->
|
<!-- style="float: left;font-size: 16px;font-weight: 400;color: #040B29;">-->
|
||||||
<!-- {{$t('DocumentStandard')}}-->
|
<!-- {{$t('DocumentStandard')}}-->
|
||||||
<!-- </div>-->
|
<!-- </div>-->
|
||||||
|
|
||||||
<div class="operator-text" v-has="'dummyInventoryInfo:importData'" v-if="isTrue">
|
<div class="operator-text" v-has="'dummyInventoryInfo:importData'" v-if="isTrue">
|
||||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" @getList="getPersonnelList"
|
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" @getList="getPersonnelList"
|
||||||
:accept="'.zip'"/>
|
:accept="'.zip'"/>
|
||||||
@@ -122,6 +123,13 @@
|
|||||||
<a-icon type="setting"/>
|
<a-icon type="setting"/>
|
||||||
{{$t('batSetting')}}
|
{{$t('batSetting')}}
|
||||||
</div>
|
</div>
|
||||||
|
<!-- 调取-->
|
||||||
|
<div @click="transferClick"
|
||||||
|
v-has="'dummyInventoryInfo:copyInfoByIds'"
|
||||||
|
class="operator-text" v-if="isTrue">
|
||||||
|
<a-icon type="profile"/>
|
||||||
|
{{$t('Transfer')}}
|
||||||
|
</div>
|
||||||
<!-- 添加-->
|
<!-- 添加-->
|
||||||
<div @click="handleAdd"
|
<div @click="handleAdd"
|
||||||
v-has="'dummyInventoryInfo:add'"
|
v-has="'dummyInventoryInfo:add'"
|
||||||
@@ -146,6 +154,7 @@
|
|||||||
:scroll="{x: '100%',y:'calc(100vh - 356px)'}"
|
:scroll="{x: '100%',y:'calc(100vh - 356px)'}"
|
||||||
rowKey="id"
|
rowKey="id"
|
||||||
:data-source="dataSource"
|
:data-source="dataSource"
|
||||||
|
@change="tableOnChange"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
>
|
>
|
||||||
@@ -215,6 +224,8 @@
|
|||||||
<addModel :url="url" ref="addModelRef" @addModelList="addModelList"/>
|
<addModel :url="url" ref="addModelRef" @addModelList="addModelList"/>
|
||||||
<editModel :url="url" ref="editModelRef" @editModelList="editModelList"/>
|
<editModel :url="url" ref="editModelRef" @editModelList="editModelList"/>
|
||||||
<UpdateLog :url="url" ref="UpdateLogRef"/>
|
<UpdateLog :url="url" ref="UpdateLogRef"/>
|
||||||
|
<transferList :url="url" @transferListForm="transferListForm" ref="transferListRef"/>
|
||||||
|
<transferListvirtal :url="url" @transferListFormHomo="transferListFormHomo" ref="transferListvirtalRef"/>
|
||||||
<batSetting :url="url" ref="batSettingRef" @batSettingList="batSettingList"/>
|
<batSetting :url="url" ref="batSettingRef" @batSettingList="batSettingList"/>
|
||||||
<a-modal
|
<a-modal
|
||||||
:title="$t('deliverableTemplate')"
|
:title="$t('deliverableTemplate')"
|
||||||
@@ -258,6 +269,8 @@
|
|||||||
import UpdateLog from '@/components/UpdateLog/index'
|
import UpdateLog from '@/components/UpdateLog/index'
|
||||||
import batSetting from './batSetting'
|
import batSetting from './batSetting'
|
||||||
import globalAdvancedQuery from '@/components/globalAdvancedQuery/index'
|
import globalAdvancedQuery from '@/components/globalAdvancedQuery/index'
|
||||||
|
import transferList from './transferList'
|
||||||
|
import transferListvirtal from './transferListvirtal'
|
||||||
import { getAction, postAction, downloadFile } from '@/api/manage'
|
import { getAction, postAction, downloadFile } from '@/api/manage'
|
||||||
import { Base64 } from 'js-base64'
|
import { Base64 } from 'js-base64'
|
||||||
import { mapGetters } from 'vuex'
|
import { mapGetters } from 'vuex'
|
||||||
@@ -267,6 +280,8 @@
|
|||||||
components: {
|
components: {
|
||||||
ImportFile,
|
ImportFile,
|
||||||
addModel,
|
addModel,
|
||||||
|
transferList,
|
||||||
|
transferListvirtal,
|
||||||
editModel,
|
editModel,
|
||||||
UpdateLog,
|
UpdateLog,
|
||||||
batSetting,
|
batSetting,
|
||||||
@@ -278,6 +293,9 @@
|
|||||||
queryParam: {},
|
queryParam: {},
|
||||||
components: {},
|
components: {},
|
||||||
visibleFile: false,
|
visibleFile: false,
|
||||||
|
transferList: false,
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
|
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
|
||||||
downLoadImgUrl: window._CONFIG['domianWebImgURL'] + '/sys/common/download',
|
downLoadImgUrl: window._CONFIG['domianWebImgURL'] + '/sys/common/download',
|
||||||
dataSourceFile: [],
|
dataSourceFile: [],
|
||||||
@@ -319,6 +337,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'serialNumber',
|
dataIndex: 'serialNumber',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
sorter:true,
|
||||||
fixed: 'left',
|
fixed: 'left',
|
||||||
scopedSlots: { customRender: 'standard' }
|
scopedSlots: { customRender: 'standard' }
|
||||||
},
|
},
|
||||||
@@ -349,6 +368,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'shi4Yong4Fan4Wei2_dictText'
|
dataIndex: 'shi4Yong4Fan4Wei2_dictText'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -356,6 +376,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 100,
|
width: 100,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'state_dictText'
|
dataIndex: 'state_dictText'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -377,6 +398,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 200,
|
width: 200,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'xin1Che1Xing2Shi2Shi1Ri4Qi1'
|
dataIndex: 'xin1Che1Xing2Shi2Shi1Ri4Qi1'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -384,6 +406,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 210,
|
width: 210,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'implementTime'
|
dataIndex: 'implementTime'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -391,6 +414,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'wvtaId',
|
dataIndex: 'wvtaId',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -405,6 +429,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 200,
|
width: 200,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'attestationRank_dictText'
|
dataIndex: 'attestationRank_dictText'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -426,6 +451,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'dutyTerritory_dictText'
|
dataIndex: 'dutyTerritory_dictText'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -674,6 +700,10 @@
|
|||||||
handleModule() {
|
handleModule() {
|
||||||
downloadFile(this.url.exportTemplate, this.$t('VirtualList') + this.$t('importTemplate') + '.xls', {})
|
downloadFile(this.url.exportTemplate, this.$t('VirtualList') + this.$t('importTemplate') + '.xls', {})
|
||||||
},
|
},
|
||||||
|
//调取
|
||||||
|
transferClick() {
|
||||||
|
this.$refs.transferListRef.transferModel()
|
||||||
|
},
|
||||||
//导出
|
//导出
|
||||||
handleExport() {
|
handleExport() {
|
||||||
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||||
@@ -717,10 +747,38 @@
|
|||||||
editModelList() {
|
editModelList() {
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
|
transferListForm(id){
|
||||||
|
this.$refs.transferListvirtalRef.transferModel(id)
|
||||||
|
},
|
||||||
|
transferListFormHomo(){
|
||||||
|
this.$refs.transferListRef.handleCancel()
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
if(sorter.columnKey == 'shi4Yong4Fan4Wei2_dictText'){
|
||||||
|
this.orderByField = 'shi4Yong4Fan4Wei2'
|
||||||
|
} else if(sorter.columnKey == 'state_dictText') {
|
||||||
|
this.orderByField = 'state'
|
||||||
|
} else if(sorter.columnKey == 'xin1Che1Xing2Shi2Shi1Ri4Qi1') {
|
||||||
|
this.orderByField = 'xin1_che1_xing2_shi2_shi1_ri4_qi1'
|
||||||
|
} else if(sorter.columnKey == 'implementTime') {
|
||||||
|
this.orderByField = 'implement_time'
|
||||||
|
} else if(sorter.columnKey == 'dutyTerritory_dictText') {
|
||||||
|
this.orderByField = 'dutyTerritory'
|
||||||
|
} else if(sorter.columnKey == 'attestationRank_dictText') {
|
||||||
|
this.orderByField = 'attestationRank'
|
||||||
|
} else{
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
}
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
getList() {
|
getList() {
|
||||||
let query = {
|
let query = {
|
||||||
...this.queryParam,
|
...this.queryParam,
|
||||||
...this.queryParamQuery,
|
...this.queryParamQuery,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
dummyInventoryBaseId: this.$route.query.id
|
dummyInventoryBaseId: this.$route.query.id
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -56,6 +56,7 @@
|
|||||||
:scroll="{x: '100%'}"
|
:scroll="{x: '100%'}"
|
||||||
rowKey="id"
|
rowKey="id"
|
||||||
:data-source="dataSource"
|
:data-source="dataSource"
|
||||||
|
@change="tableOnChange"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
>
|
>
|
||||||
@@ -246,6 +247,8 @@
|
|||||||
],
|
],
|
||||||
queryParam: {},
|
queryParam: {},
|
||||||
administrators:false,
|
administrators:false,
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@@ -269,6 +272,11 @@
|
|||||||
this.selectedRowKeys = []
|
this.selectedRowKeys = []
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
setCreatorClick() {
|
setCreatorClick() {
|
||||||
if (this.selectedRowKeys.length > 0) {
|
if (this.selectedRowKeys.length > 0) {
|
||||||
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||||
@@ -415,6 +423,8 @@
|
|||||||
let query = {
|
let query = {
|
||||||
pageNo: this.pageNo,
|
pageNo: this.pageNo,
|
||||||
pageSize: this.pageSize,
|
pageSize: this.pageSize,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...this.queryParam
|
...this.queryParam
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -56,6 +56,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:data-source="dataSource"
|
:data-source="dataSource"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||||
|
@change="tableOnChange"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
>
|
>
|
||||||
<span slot="projectName" slot-scope="text,record" :title="text">
|
<span slot="projectName" slot-scope="text,record" :title="text">
|
||||||
@@ -131,6 +132,8 @@ export default {
|
|||||||
toggleSearchStatus: false,
|
toggleSearchStatus: false,
|
||||||
selectedRowKeys: [],
|
selectedRowKeys: [],
|
||||||
selectedRowKeysArray: '',
|
selectedRowKeysArray: '',
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
formInline: {},
|
formInline: {},
|
||||||
rules: {
|
rules: {
|
||||||
paramsTemplateName:[
|
paramsTemplateName:[
|
||||||
@@ -154,11 +157,20 @@ export default {
|
|||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
title: '新增',
|
title: '新增',
|
||||||
columns: [
|
columns: [
|
||||||
|
{
|
||||||
|
title: this.$t('zoneOfApplication'),
|
||||||
|
align: 'center',
|
||||||
|
width: 160,
|
||||||
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
|
dataIndex: 'region_dictText',
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('parameterTemplate'),
|
title: this.$t('parameterTemplate'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'paramsTemplateName',
|
dataIndex: 'paramsTemplateName',
|
||||||
scopedSlots: { customRender: 'projectName' }
|
scopedSlots: { customRender: 'projectName' }
|
||||||
},
|
},
|
||||||
@@ -181,6 +193,7 @@ export default {
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'createTime',
|
dataIndex: 'createTime',
|
||||||
width: 160,
|
width: 160,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -188,6 +201,7 @@ export default {
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 160,
|
width: 160,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'updateTime'
|
dataIndex: 'updateTime'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -354,10 +368,27 @@ export default {
|
|||||||
this.queryParam[value] = id
|
this.queryParam[value] = id
|
||||||
this.queryParam = { ...this.queryParam }
|
this.queryParam = { ...this.queryParam }
|
||||||
},
|
},
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
if(sorter.columnKey == 'region_dictText'){
|
||||||
|
this.orderByField = 'region'
|
||||||
|
} else if(sorter.columnKey == 'paramsTemplateName') {
|
||||||
|
this.orderByField = 'params_template_name'
|
||||||
|
} else if(sorter.columnKey == 'createTime') {
|
||||||
|
this.orderByField = 'create_time'
|
||||||
|
} else if(sorter.columnKey == 'updateTime') {
|
||||||
|
this.orderByField = 'update_time'
|
||||||
|
} else{
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
}
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
getList() {
|
getList() {
|
||||||
let query = {
|
let query = {
|
||||||
pageNo: this.pageNo,
|
pageNo: this.pageNo,
|
||||||
pageSize: this.pageSize,
|
pageSize: this.pageSize,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...this.queryParam
|
...this.queryParam
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
:scroll="{x: '100%',y:'calc(100vh - 158px)'}"
|
:scroll="{x: '100%',y:'calc(100vh - 158px)'}"
|
||||||
rowKey="id"
|
rowKey="id"
|
||||||
:data-source="dataSource"
|
:data-source="dataSource"
|
||||||
|
@change="tableOnChange"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
>
|
>
|
||||||
@@ -126,6 +127,8 @@
|
|||||||
paramsManifestId:'',
|
paramsManifestId:'',
|
||||||
selectedRowKeysArray: '',
|
selectedRowKeysArray: '',
|
||||||
formInline: {},
|
formInline: {},
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
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' }
|
||||||
@@ -156,6 +159,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: '17%',
|
width: '17%',
|
||||||
dataIndex: 'projectName',
|
dataIndex: 'projectName',
|
||||||
|
sorter:true,
|
||||||
scopedSlots: { customRender: 'projectName' }
|
scopedSlots: { customRender: 'projectName' }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -304,10 +308,21 @@
|
|||||||
// }
|
// }
|
||||||
// })
|
// })
|
||||||
},
|
},
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
if(sorter.columnKey == 'projectName') {
|
||||||
|
this.orderByField = 'pageName'
|
||||||
|
} else{
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
}
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
getList() {
|
getList() {
|
||||||
let query = {
|
let query = {
|
||||||
pageNo: this.pageNo,
|
pageNo: this.pageNo,
|
||||||
pageSize: this.pageSize,
|
pageSize: this.pageSize,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...this.queryParam
|
...this.queryParam
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -51,6 +51,7 @@
|
|||||||
:scroll="{x: '100%',y:'calc(100vh - 160px)'}"
|
:scroll="{x: '100%',y:'calc(100vh - 160px)'}"
|
||||||
rowKey="id"
|
rowKey="id"
|
||||||
:data-source="dataSource"
|
:data-source="dataSource"
|
||||||
|
@change="tableOnChange"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
>
|
>
|
||||||
@@ -126,6 +127,8 @@ export default {
|
|||||||
selectedRowKeys: [],
|
selectedRowKeys: [],
|
||||||
selectedRowKeysArray: '',
|
selectedRowKeysArray: '',
|
||||||
formInline: {},
|
formInline: {},
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
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' },
|
||||||
@@ -161,6 +164,7 @@ export default {
|
|||||||
title: this.$t('templateName'),
|
title: this.$t('templateName'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'templateName',
|
dataIndex: 'templateName',
|
||||||
|
sorter:true,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
width: 300,
|
width: 300,
|
||||||
scopedSlots: { customRender: 'templateName' }
|
scopedSlots: { customRender: 'templateName' }
|
||||||
@@ -199,6 +203,7 @@ export default {
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'updateTime'
|
dataIndex: 'updateTime'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -352,10 +357,23 @@ export default {
|
|||||||
this.queryParam[value] = id
|
this.queryParam[value] = id
|
||||||
this.queryParam = { ...this.queryParam }
|
this.queryParam = { ...this.queryParam }
|
||||||
},
|
},
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
if(sorter.columnKey == 'templateName') {
|
||||||
|
this.orderByField = 'template_name'
|
||||||
|
} else if(sorter.columnKey == 'updateTime') {
|
||||||
|
this.orderByField = 'update_time'
|
||||||
|
} else{
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
}
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
getList() {
|
getList() {
|
||||||
let query = {
|
let query = {
|
||||||
pageNo: this.pageNo,
|
pageNo: this.pageNo,
|
||||||
pageSize: this.pageSize,
|
pageSize: this.pageSize,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...this.queryParam
|
...this.queryParam
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -59,6 +59,13 @@
|
|||||||
@click="urlClick(queryForm.ipdInfo)"
|
@click="urlClick(queryForm.ipdInfo)"
|
||||||
>{{queryForm.ipdInfo}}</span>
|
>{{queryForm.ipdInfo}}</span>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="text-field">
|
||||||
|
<span class="text-field-left" :title="$t('brand')">{{$t('brand')}}</span>
|
||||||
|
<span class="text-field-right text-field-right-color"
|
||||||
|
:title="queryForm.brand"
|
||||||
|
@click="urlClick(queryForm.brand)"
|
||||||
|
>{{queryForm.brand}}</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="content-text">
|
<div class="content-text">
|
||||||
<div class="text-field">
|
<div class="text-field">
|
||||||
|
|||||||
@@ -109,6 +109,7 @@
|
|||||||
:scroll="{x: true,y:'calc(100vh - 335px)'}"
|
:scroll="{x: true,y:'calc(100vh - 335px)'}"
|
||||||
:data-source="dataSource"
|
:data-source="dataSource"
|
||||||
rowKey="id"
|
rowKey="id"
|
||||||
|
@change="tableOnChange"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
>
|
>
|
||||||
@@ -255,12 +256,14 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'standard',
|
dataIndex: 'standard',
|
||||||
width: 202,
|
width: 202,
|
||||||
|
sorter:true,
|
||||||
scopedSlots: { customRender: 'standardInformation' }
|
scopedSlots: { customRender: 'standardInformation' }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('areaOfResponsibility'),
|
title: this.$t('areaOfResponsibility'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'areaOfResponsibility',
|
dataIndex: 'areaOfResponsibility',
|
||||||
scopedSlots: { customRender: 'areaOfResponsibility' }
|
scopedSlots: { customRender: 'areaOfResponsibility' }
|
||||||
},
|
},
|
||||||
@@ -268,6 +271,7 @@
|
|||||||
title: this.$t('confirmationOfDesignConformity'),
|
title: this.$t('confirmationOfDesignConformity'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: 240,
|
width: 240,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'confirmationOfDesignConformity',
|
dataIndex: 'confirmationOfDesignConformity',
|
||||||
scopedSlots: { customRender: 'confirmationOfDesignConformity' }
|
scopedSlots: { customRender: 'confirmationOfDesignConformity' }
|
||||||
},
|
},
|
||||||
@@ -275,6 +279,7 @@
|
|||||||
title: this.$t('PrehomoConfirmation'),
|
title: this.$t('PrehomoConfirmation'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: 240,
|
width: 240,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'PrehomoConfirmation',
|
dataIndex: 'PrehomoConfirmation',
|
||||||
scopedSlots: { customRender: 'PrehomoConfirmation' }
|
scopedSlots: { customRender: 'PrehomoConfirmation' }
|
||||||
},
|
},
|
||||||
@@ -282,6 +287,7 @@
|
|||||||
title: this.$t('verificationAndConformityconfirmation'),
|
title: this.$t('verificationAndConformityconfirmation'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: 240,
|
width: 240,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'verificationAndConformityconfirmation',
|
dataIndex: 'verificationAndConformityconfirmation',
|
||||||
scopedSlots: { customRender: 'verificationAndConformityconfirmation' }
|
scopedSlots: { customRender: 'verificationAndConformityconfirmation' }
|
||||||
},
|
},
|
||||||
@@ -289,6 +295,7 @@
|
|||||||
title: this.$t('CertificationProgress'),
|
title: this.$t('CertificationProgress'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: 150,
|
width: 150,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'CertificationProgress',
|
dataIndex: 'CertificationProgress',
|
||||||
scopedSlots: { customRender: 'CertificationProgress' }
|
scopedSlots: { customRender: 'CertificationProgress' }
|
||||||
},
|
},
|
||||||
@@ -296,11 +303,14 @@
|
|||||||
title: this.$t('CurrentStatus'),
|
title: this.$t('CurrentStatus'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: 150,
|
width: 150,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'CurrentProjectStatusEvaluation',
|
dataIndex: 'CurrentProjectStatusEvaluation',
|
||||||
scopedSlots: { customRender: 'CurrentProjectStatusEvaluation' }
|
scopedSlots: { customRender: 'CurrentProjectStatusEvaluation' }
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
selectedRowKeys: [],
|
selectedRowKeys: [],
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
|
|
||||||
status: {
|
status: {
|
||||||
'NotDone': '待办',
|
'NotDone': '待办',
|
||||||
@@ -536,7 +546,27 @@
|
|||||||
CertificationDirectory() {
|
CertificationDirectory() {
|
||||||
this.$refs.certificationDirectoryRef.addModel()
|
this.$refs.certificationDirectoryRef.addModel()
|
||||||
},
|
},
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
if(sorter.columnKey == 'standard'){
|
||||||
|
this.orderByField = 'serialNumber'
|
||||||
|
} else if(sorter.columnKey == 'areaOfResponsibility') {
|
||||||
|
this.orderByField = 'dutyTerritory'
|
||||||
|
} else if(sorter.columnKey == 'confirmationOfDesignConformity') {
|
||||||
|
this.orderByField = 'designFlowTaskStatus'
|
||||||
|
} else if(sorter.columnKey == 'PrehomoConfirmation') {
|
||||||
|
this.orderByField = 'prehomoFlowTaskStatus'
|
||||||
|
} else if(sorter.columnKey == 'verificationAndConformityconfirmation') {
|
||||||
|
this.orderByField = 'verifyFlowTaskStatus'
|
||||||
|
} else if(sorter.columnKey == 'CertificationProgress') {
|
||||||
|
this.orderByField = 'certificationProgressName'
|
||||||
|
} else if(sorter.columnKey == 'CurrentProjectStatusEvaluation') {
|
||||||
|
this.orderByField = 'projectStatusAssess'
|
||||||
|
} else{
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
}
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
getList() {
|
getList() {
|
||||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||||
Object.keys(queryParam).forEach(val => {
|
Object.keys(queryParam).forEach(val => {
|
||||||
@@ -549,6 +579,8 @@
|
|||||||
}
|
}
|
||||||
let query = {
|
let query = {
|
||||||
projectLibraryId: this.$route.query.id,
|
projectLibraryId: this.$route.query.id,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...queryParam
|
...queryParam
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -163,6 +163,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 80,
|
width: 80,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'state'
|
dataIndex: 'state'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -177,6 +178,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 120,
|
width: 120,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'projectVersion'
|
dataIndex: 'projectVersion'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -185,6 +187,7 @@
|
|||||||
dataIndex: 'finishTime',
|
dataIndex: 'finishTime',
|
||||||
width: 180,
|
width: 180,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
scopedSlots: { customRender: 'collectionCompletionTime' }
|
scopedSlots: { customRender: 'collectionCompletionTime' }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -192,6 +195,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 80,
|
width: 80,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'version'
|
dataIndex: 'version'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -206,6 +210,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 160,
|
width: 160,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'createTime'
|
dataIndex: 'createTime'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -219,6 +224,8 @@
|
|||||||
token: Vue.ls.get(ACCESS_TOKEN),
|
token: Vue.ls.get(ACCESS_TOKEN),
|
||||||
selectedRowKeys: [],
|
selectedRowKeys: [],
|
||||||
queryParam: {},
|
queryParam: {},
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
url: {
|
url: {
|
||||||
list: 'params/manifest/page',
|
list: 'params/manifest/page',
|
||||||
add: 'params/manifest/add',
|
add: 'params/manifest/add',
|
||||||
@@ -312,9 +319,6 @@
|
|||||||
} else {
|
} else {
|
||||||
this.$message.warning(this.$t('thisbuttonCompleted'))
|
this.$message.warning(this.$t('thisbuttonCompleted'))
|
||||||
}
|
}
|
||||||
},
|
|
||||||
handleTableChange() {
|
|
||||||
|
|
||||||
},
|
},
|
||||||
// 历史版本
|
// 历史版本
|
||||||
historicalVersion(historicalRow) {
|
historicalVersion(historicalRow) {
|
||||||
@@ -431,11 +435,26 @@
|
|||||||
this.pageSize = pageSize
|
this.pageSize = pageSize
|
||||||
this.getlist()
|
this.getlist()
|
||||||
},
|
},
|
||||||
|
handleTableChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
if(sorter.columnKey == 'projectVersion'){
|
||||||
|
this.orderByField = 'project_version'
|
||||||
|
} else if(sorter.columnKey == 'finishTime') {
|
||||||
|
this.orderByField = 'finish_time'
|
||||||
|
} else if(sorter.columnKey == 'createTime') {
|
||||||
|
this.orderByField = 'create_time'
|
||||||
|
} else{
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
}
|
||||||
|
this.getlist()
|
||||||
|
},
|
||||||
getlist() {
|
getlist() {
|
||||||
let query = {
|
let query = {
|
||||||
projectId: this.$route.query.parentId ? this.$route.query.parentId : this.$route.query.id,
|
projectId: this.$route.query.parentId ? this.$route.query.parentId : this.$route.query.id,
|
||||||
pageSize: this.pageSize,
|
pageSize: this.pageSize,
|
||||||
pageNo: this.pageNo,
|
pageNo: this.pageNo,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...this.queryParam
|
...this.queryParam
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -224,6 +224,20 @@
|
|||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text">
|
||||||
|
<span class="title-text-text"
|
||||||
|
:title="$t('brand')">{{$t('brand')}}</span>
|
||||||
|
</div>
|
||||||
|
<a-form-model-item class="itemModel" :prop="'brand'">
|
||||||
|
<j-multi-select-tag v-model="formInline.brand"
|
||||||
|
:placeholder="$t('PleaseSelect')+$t('brand')"
|
||||||
|
:type="'select'"
|
||||||
|
:triggerChange="false" :dictCode="'brand'"/>
|
||||||
|
</a-form-model-item>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
|
|||||||
@@ -208,6 +208,7 @@
|
|||||||
:scroll="{x: '100%',y:'calc(100vh - 356px)'}"
|
:scroll="{x: '100%',y:'calc(100vh - 356px)'}"
|
||||||
rowKey="id"
|
rowKey="id"
|
||||||
:data-source="dataSource"
|
:data-source="dataSource"
|
||||||
|
@change="tableOnChange"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
>
|
>
|
||||||
@@ -300,7 +301,8 @@
|
|||||||
<listAddModel :url="url" @addModelList="addModelList" ref="addModelRef"/>
|
<listAddModel :url="url" @addModelList="addModelList" ref="addModelRef"/>
|
||||||
<listEditModel :url="url" @editModelList="addModelList" ref="editModelRef"/>
|
<listEditModel :url="url" @editModelList="addModelList" ref="editModelRef"/>
|
||||||
<batSetting :url="url" @batSettingList="addModelList" ref="batSettingRef"/>
|
<batSetting :url="url" @batSettingList="addModelList" ref="batSettingRef"/>
|
||||||
<transferList :url="url" @transferListForm="addModelList" ref="transferListRef"/>
|
<transferList :url="url" @transferListForm="transferListForm" ref="transferListRef"/>
|
||||||
|
<transferListvirtal :url="url" @transferListFormHomo="transferListFormHomo" ref="transferListvirtalRef"/>
|
||||||
<fixedPlate @fixedPlateForm="addModelList" ref="fixedPlateRef"/>
|
<fixedPlate @fixedPlateForm="addModelList" ref="fixedPlateRef"/>
|
||||||
<a-modal
|
<a-modal
|
||||||
:title="listTitle"
|
:title="listTitle"
|
||||||
@@ -456,6 +458,7 @@
|
|||||||
import listEditModel from './listEditModel'
|
import listEditModel from './listEditModel'
|
||||||
import batSetting from './batSetting'
|
import batSetting from './batSetting'
|
||||||
import transferList from './transferList'
|
import transferList from './transferList'
|
||||||
|
import transferListvirtal from './transferListvirtal'
|
||||||
import fixedPlate from './fixedPlateForm'
|
import fixedPlate from './fixedPlateForm'
|
||||||
import resultReportedUpload from './resultReportedUpload'
|
import resultReportedUpload from './resultReportedUpload'
|
||||||
import listOfRegulationsView from './listOfRegulationsView'
|
import listOfRegulationsView from './listOfRegulationsView'
|
||||||
@@ -475,6 +478,7 @@
|
|||||||
listEditModel,
|
listEditModel,
|
||||||
batSetting,
|
batSetting,
|
||||||
transferList,
|
transferList,
|
||||||
|
transferListvirtal,
|
||||||
globalAdvancedQuery,
|
globalAdvancedQuery,
|
||||||
fixedPlate,
|
fixedPlate,
|
||||||
resultReportedUpload,
|
resultReportedUpload,
|
||||||
@@ -485,6 +489,8 @@
|
|||||||
return {
|
return {
|
||||||
roleSwitchingList: [],
|
roleSwitchingList: [],
|
||||||
listTitle: '',
|
listTitle: '',
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
columnsAll: [
|
columnsAll: [
|
||||||
{
|
{
|
||||||
title: this.$t('standard'),
|
title: this.$t('standard'),
|
||||||
@@ -492,6 +498,7 @@
|
|||||||
dataIndex: 'serialNumber',
|
dataIndex: 'serialNumber',
|
||||||
width: 180,
|
width: 180,
|
||||||
fixed: 'left',
|
fixed: 'left',
|
||||||
|
sorter:true,
|
||||||
scopedSlots: { customRender: 'standard' }
|
scopedSlots: { customRender: 'standard' }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -514,11 +521,13 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'inventoryAffirmStatusName',
|
dataIndex: 'inventoryAffirmStatusName',
|
||||||
width: 240,
|
width: 240,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('taskAffirmStatus'),
|
title: this.$t('taskAffirmStatus'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'taskAffirmStatusName',
|
dataIndex: 'taskAffirmStatusName',
|
||||||
width: 240,
|
width: 240,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
@@ -575,6 +584,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'attestationRank_dictText',
|
dataIndex: 'attestationRank_dictText',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -589,12 +599,14 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'wvtaId',
|
dataIndex: 'wvtaId',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('areaOfResponsibility'),
|
title: this.$t('areaOfResponsibility'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'dutyTerritory_dictText',
|
dataIndex: 'dutyTerritory_dictText',
|
||||||
width: 180
|
width: 180
|
||||||
},
|
},
|
||||||
@@ -602,6 +614,7 @@
|
|||||||
title: this.$t('regulatoryEngineer'),
|
title: this.$t('regulatoryEngineer'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'regulationOwnerName',
|
dataIndex: 'regulationOwnerName',
|
||||||
width: 180
|
width: 180
|
||||||
},
|
},
|
||||||
@@ -609,6 +622,7 @@
|
|||||||
title: this.$t('certifiedEngineer'),
|
title: this.$t('certifiedEngineer'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'homologationEngineerName',
|
dataIndex: 'homologationEngineerName',
|
||||||
width: 180
|
width: 180
|
||||||
},
|
},
|
||||||
@@ -616,6 +630,7 @@
|
|||||||
title: this.$t('engineeringInterfacePerson'),
|
title: this.$t('engineeringInterfacePerson'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'engineeringInterfacePersonName',
|
dataIndex: 'engineeringInterfacePersonName',
|
||||||
width: 180
|
width: 180
|
||||||
},
|
},
|
||||||
@@ -1477,6 +1492,13 @@
|
|||||||
this.selectedRowKeys = []
|
this.selectedRowKeys = []
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
|
transferListForm(id){
|
||||||
|
this.$refs.transferListvirtalRef.transferModel(id)
|
||||||
|
},
|
||||||
|
transferListFormHomo(){
|
||||||
|
this.$refs.transferListRef.handleCancel()
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
handleSuperQuery(params, matchType) {
|
handleSuperQuery(params, matchType) {
|
||||||
let sqp = {}
|
let sqp = {}
|
||||||
if (!params || (params && params.length == 0)) {
|
if (!params || (params && params.length == 0)) {
|
||||||
@@ -1490,6 +1512,17 @@
|
|||||||
this.queryParamQuery = sqp
|
this.queryParamQuery = sqp
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
if(sorter.columnKey == 'attestationRank_dictText'){
|
||||||
|
this.orderByField = 'attestationRank'
|
||||||
|
} else if(sorter.columnKey == 'dutyTerritory_dictText'){
|
||||||
|
this.orderByField = 'dutyTerritory'
|
||||||
|
} else{
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
}
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
getList() {
|
getList() {
|
||||||
let roleCode
|
let roleCode
|
||||||
if (this.isDisplay) {
|
if (this.isDisplay) {
|
||||||
@@ -1515,6 +1548,8 @@
|
|||||||
...this.queryParamQuery,
|
...this.queryParamQuery,
|
||||||
...queryParam,
|
...queryParam,
|
||||||
projectLibraryId: this.$route.query.id,
|
projectLibraryId: this.$route.query.id,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
roleCode: roleCode
|
roleCode: roleCode
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -56,6 +56,7 @@
|
|||||||
:pagination="false"
|
:pagination="false"
|
||||||
:scroll="{x: '100%'}"
|
:scroll="{x: '100%'}"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||||
|
@change="tableOnChange"
|
||||||
:data-source="dataSource"
|
:data-source="dataSource"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
>
|
>
|
||||||
@@ -91,6 +92,8 @@
|
|||||||
return {
|
return {
|
||||||
queryParam: {},
|
queryParam: {},
|
||||||
loading: false,
|
loading: false,
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
dataSource: [],
|
dataSource: [],
|
||||||
selectedRowKeys: [],
|
selectedRowKeys: [],
|
||||||
columns: [
|
columns: [
|
||||||
@@ -100,6 +103,7 @@
|
|||||||
dataIndex: 'serialNumber',
|
dataIndex: 'serialNumber',
|
||||||
scopedSlots: { customRender: 'standard' },
|
scopedSlots: { customRender: 'standard' },
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
width: 180
|
width: 180
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -115,6 +119,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'flowType',
|
dataIndex: 'flowType',
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
width: 180
|
width: 180
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -122,6 +127,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'dutyTerritory',
|
dataIndex: 'dutyTerritory',
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
width: 180
|
width: 180
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -129,6 +135,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'problemType',
|
dataIndex: 'problemType',
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
width: 180
|
width: 180
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -136,6 +143,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'initiator',
|
dataIndex: 'initiator',
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
width: 140
|
width: 140
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -143,6 +151,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'duty',
|
dataIndex: 'duty',
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
width: 140
|
width: 140
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -218,11 +227,18 @@
|
|||||||
}
|
}
|
||||||
downloadFilePost(this.url.exportData, this.$t('NonConformance') + '.xls', query, this.Deselect)
|
downloadFilePost(this.url.exportData, this.$t('NonConformance') + '.xls', query, this.Deselect)
|
||||||
},
|
},
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
getList() {
|
getList() {
|
||||||
let query = {
|
let query = {
|
||||||
pageNo: this.pageNo,
|
pageNo: this.pageNo,
|
||||||
pageSize: this.pageSize,
|
pageSize: this.pageSize,
|
||||||
projectLibraryId: this.$route.query.id,
|
projectLibraryId: this.$route.query.id,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...this.queryParam
|
...this.queryParam
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
|
|
||||||
<div class="drawer-bootom-button">
|
<div class="drawer-bootom-button">
|
||||||
<a-button @click="handleCancel" style="margin-right: 16px">{{$t('cancel')}}</a-button>
|
<a-button @click="handleCancel" style="margin-right: 16px">{{$t('cancel')}}</a-button>
|
||||||
<a-button @click="handleSubmit(undefined)" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
|
<a-button @click="handleSubmit(undefined)" type="primary" :loading="confirmLoading">{{$t('determine')}}</a-button>
|
||||||
</div>
|
</div>
|
||||||
</a-drawer>
|
</a-drawer>
|
||||||
</template>
|
</template>
|
||||||
@@ -166,27 +166,30 @@
|
|||||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||||
this.confirmLoading = true
|
this.confirmLoading = true
|
||||||
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||||
postAction(this.url.addModel, {
|
this.confirmLoading = false
|
||||||
dummyInventoryBaseId: selectedRowKeys.join(','),
|
this.$emit('transferListForm',selectedRowKeys.join(','))
|
||||||
projectLibraryId: this.$route.query.id,
|
this.selectedRowKeys = []
|
||||||
flag: flag
|
// postAction(this.url.addModel, {
|
||||||
}).then((res) => {
|
// dummyInventoryBaseId: selectedRowKeys.join(','),
|
||||||
if (res.success) {
|
// projectLibraryId: this.$route.query.id,
|
||||||
this.confirmLoading = false
|
// flag: flag
|
||||||
this.$message.success(this.$t('OperationSuccessful'))
|
// }).then((res) => {
|
||||||
this.visible = false
|
// if (res.success) {
|
||||||
this.selectedRowKeys = []
|
// this.confirmLoading = false
|
||||||
this.$emit('transferListForm')
|
// this.$message.success(this.$t('OperationSuccessful'))
|
||||||
} else {
|
// this.visible = false
|
||||||
if (res.message == '该虚拟清单的维护清单中没有数据,是否需要添加') {
|
// this.selectedRowKeys = []
|
||||||
this.confirmLoading = false
|
// this.$emit('transferListForm')
|
||||||
this.getAdd()
|
// } else {
|
||||||
return
|
// if (res.message == '该虚拟清单的维护清单中没有数据,是否需要添加') {
|
||||||
}
|
// this.confirmLoading = false
|
||||||
this.$message.warning(this.$t('operationFailed'))
|
// this.getAdd()
|
||||||
this.confirmLoading = false
|
// return
|
||||||
}
|
// }
|
||||||
})
|
// this.$message.warning(this.$t('operationFailed'))
|
||||||
|
// this.confirmLoading = false
|
||||||
|
// }
|
||||||
|
// })
|
||||||
} else {
|
} else {
|
||||||
this.$message.warning(this.$t('selectLeastOne'))
|
this.$message.warning(this.$t('selectLeastOne'))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,255 @@
|
|||||||
|
<template>
|
||||||
|
<a-drawer
|
||||||
|
:title="$t('Transfer')"
|
||||||
|
: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">
|
||||||
|
<div class="table-page-search-wrapper">
|
||||||
|
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||||
|
<a-row :gutter="24">
|
||||||
|
<a-col :md="12" :sm="5">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text" :title="$t('standard')">
|
||||||
|
<span>{{$t('standard')}}</span>
|
||||||
|
</div>
|
||||||
|
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('standard')"
|
||||||
|
v-model="queryParam.serialNumber"></j-input>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<a-col :md="12" :sm="5">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text" :title="$t('title')">
|
||||||
|
<span>{{$t('title')}}</span>
|
||||||
|
</div>
|
||||||
|
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('title')"
|
||||||
|
v-model="queryParam.title"></j-input>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
||||||
|
<a-col :md="12" :sm="24">
|
||||||
|
<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-col>
|
||||||
|
</span>
|
||||||
|
</a-row>
|
||||||
|
</a-form>
|
||||||
|
</div>
|
||||||
|
<a-table
|
||||||
|
:columns="columns"
|
||||||
|
rowKey="id"
|
||||||
|
:scroll="{x: 800}"
|
||||||
|
:data-source="dataList"
|
||||||
|
:pagination="false"
|
||||||
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:' ' }"
|
||||||
|
:loading="loading">
|
||||||
|
|
||||||
|
</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" style="margin-right: 16px">{{$t('cancel')}}</a-button>
|
||||||
|
<a-button @click="handleSubmit(undefined)" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
|
||||||
|
</div>
|
||||||
|
</a-drawer>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { getAction, postAction } from '@/api/manage'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'transferList',
|
||||||
|
components: {},
|
||||||
|
props: ['url'],
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
queryParam: {},
|
||||||
|
confirmLoading: false,
|
||||||
|
selectedRowKeys: [],
|
||||||
|
columns: [
|
||||||
|
{
|
||||||
|
title: this.$t('standard'),
|
||||||
|
align: 'center',
|
||||||
|
dataIndex: 'serialNumber',
|
||||||
|
scopedSlots: { customRender: 'standard' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('title'),
|
||||||
|
align: 'center',
|
||||||
|
dataIndex: 'title',
|
||||||
|
scopedSlots: { customRender: 'titleName' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('subtitle'),
|
||||||
|
align: 'center',
|
||||||
|
dataIndex: 'subtitle',
|
||||||
|
ellipsis: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('areaOfResponsibility'),
|
||||||
|
align: 'center',
|
||||||
|
ellipsis: true,
|
||||||
|
dataIndex: 'dutyTerritory_dictText'
|
||||||
|
},
|
||||||
|
],
|
||||||
|
dataList: [],
|
||||||
|
content: [],
|
||||||
|
loading: false,
|
||||||
|
dummyInventoryBaseId:'',
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
total: 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
transferModel(id) {
|
||||||
|
this.visible = true
|
||||||
|
this.dummyInventoryBaseId = id
|
||||||
|
this.queryParam = {}
|
||||||
|
this.selectedRowKeys = []
|
||||||
|
this.replacePage()
|
||||||
|
},
|
||||||
|
searchQuery() {
|
||||||
|
this.pageNo = 1
|
||||||
|
this.replacePage()
|
||||||
|
},
|
||||||
|
searchReset() {
|
||||||
|
this.pageNo = 1
|
||||||
|
this.queryParam = {}
|
||||||
|
this.replacePage()
|
||||||
|
},
|
||||||
|
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.queryParam,
|
||||||
|
dummyInventoryBaseId: this.dummyInventoryBaseId
|
||||||
|
}
|
||||||
|
this.loading = true
|
||||||
|
getAction('/dummy/dummyInventoryInfoEO/list', query).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.dataList = res.result || []
|
||||||
|
this.loading = false
|
||||||
|
} else {
|
||||||
|
this.loading = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
onSelectChange(value) {
|
||||||
|
this.selectedRowKeys = value
|
||||||
|
// if (this.selectedRowKeys.length > 1) {
|
||||||
|
// this.selectedRowKeys.shift()
|
||||||
|
// }
|
||||||
|
},
|
||||||
|
handleCancel() {
|
||||||
|
this.visible = false
|
||||||
|
},
|
||||||
|
handleSubmit(flag) {
|
||||||
|
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||||
|
this.confirmLoading = true
|
||||||
|
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||||
|
postAction('project/projectLawsInventoryEO/add', {
|
||||||
|
dummyInventoryBaseId: this.dummyInventoryBaseId,
|
||||||
|
projectLibraryId: this.$route.query.id,
|
||||||
|
dummyids: selectedRowKeys.join(','),
|
||||||
|
}).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.confirmLoading = false
|
||||||
|
this.$message.success(this.$t('OperationSuccessful'))
|
||||||
|
this.visible = false
|
||||||
|
this.selectedRowKeys = []
|
||||||
|
this.$emit('transferListFormHomo')
|
||||||
|
} else {
|
||||||
|
this.$message.warning(this.$t('operationFailed'))
|
||||||
|
this.confirmLoading = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$message.warning(this.$t('selectLeastOne'))
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.page {
|
||||||
|
text-align: right;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.drawer-bootom-button {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0;
|
||||||
|
z-index: 100;
|
||||||
|
width: 100%;
|
||||||
|
border-top: 1px solid #e8e8e8;
|
||||||
|
padding: 10px 16px;
|
||||||
|
text-align: right;
|
||||||
|
left: 0;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 0 0 2px 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-title-text {
|
||||||
|
line-height: 1.4;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title-text {
|
||||||
|
width: 20%;
|
||||||
|
min-width: 110px;
|
||||||
|
color: #000F16;
|
||||||
|
display: inline-block;
|
||||||
|
font-weight: 500;
|
||||||
|
font-size: 14px;
|
||||||
|
margin-right: 16px;
|
||||||
|
margin-top: 3px;
|
||||||
|
text-align: right;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-input {
|
||||||
|
display: inline-block;
|
||||||
|
width: 70%;
|
||||||
|
height: 38px;
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-button {
|
||||||
|
height: 38px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -88,6 +88,17 @@
|
|||||||
<!-- :triggerChange="false" :dictCode="'digital_platform'"/>-->
|
<!-- :triggerChange="false" :dictCode="'digital_platform'"/>-->
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
<a-col :md="6" :sm="8">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text" :title="$t('brand')">
|
||||||
|
<span>{{$t('brand')}}</span>
|
||||||
|
</div>
|
||||||
|
<j-dict-select-tag class="box-input" v-model="queryParam.brand"
|
||||||
|
:placeholder="$t('PleaseSelect')+$t('brand')"
|
||||||
|
:type="'select'"
|
||||||
|
:triggerChange="false" :dictCode="'brand'"/>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
</template>
|
</template>
|
||||||
<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">
|
||||||
@@ -120,6 +131,7 @@
|
|||||||
:pagination="false"
|
:pagination="false"
|
||||||
:scroll="{x: '100%'}"
|
:scroll="{x: '100%'}"
|
||||||
rowKey="id"
|
rowKey="id"
|
||||||
|
@change="tableOnChange"
|
||||||
:data-source="dataSource"
|
:data-source="dataSource"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
@@ -203,6 +215,7 @@
|
|||||||
align: 'left',
|
align: 'left',
|
||||||
dataIndex: 'projectName',
|
dataIndex: 'projectName',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
scopedSlots: { customRender: 'projectName' }
|
scopedSlots: { customRender: 'projectName' }
|
||||||
},
|
},
|
||||||
@@ -224,9 +237,17 @@
|
|||||||
title: this.$t('StudioEngineer'),
|
title: this.$t('StudioEngineer'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
dataIndex: 'studioEngineerName'
|
dataIndex: 'studioEngineerName'
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('brand'),
|
||||||
|
align: 'center',
|
||||||
|
width: 180,
|
||||||
|
ellipsis: true,
|
||||||
|
dataIndex: 'brand'
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('explain'),
|
title: this.$t('explain'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
@@ -246,6 +267,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'vehiclePlatform'
|
dataIndex: 'vehiclePlatform'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -253,6 +275,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 180,
|
width: 180,
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
sorter:true,
|
||||||
dataIndex: 'digitalPlatform'
|
dataIndex: 'digitalPlatform'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -265,6 +288,8 @@
|
|||||||
],
|
],
|
||||||
userInfoQuery: {},
|
userInfoQuery: {},
|
||||||
queryParam: {},
|
queryParam: {},
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
administrators: false
|
administrators: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -396,10 +421,17 @@
|
|||||||
this.queryParam[value] = id
|
this.queryParam[value] = id
|
||||||
this.queryParam = { ...this.queryParam }
|
this.queryParam = { ...this.queryParam }
|
||||||
},
|
},
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
getList() {
|
getList() {
|
||||||
let query = {
|
let query = {
|
||||||
pageNo: this.pageNo,
|
pageNo: this.pageNo,
|
||||||
pageSize: this.pageSize,
|
pageSize: this.pageSize,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...this.queryParam
|
...this.queryParam
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -155,6 +155,7 @@
|
|||||||
:loading="loading"
|
:loading="loading"
|
||||||
:pagination="false"
|
:pagination="false"
|
||||||
:scroll="{x: '100%'}"
|
:scroll="{x: '100%'}"
|
||||||
|
@change="tableOnChange"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||||
:data-source="dataSource"
|
:data-source="dataSource"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
@@ -205,6 +206,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'serialNumber',
|
dataIndex: 'serialNumber',
|
||||||
width: 170,
|
width: 170,
|
||||||
|
sorter:true,
|
||||||
scopedSlots: { customRender: 'standard' }
|
scopedSlots: { customRender: 'standard' }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -219,6 +221,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'flowType',
|
dataIndex: 'flowType',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -226,6 +229,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'dutyTerritory',
|
dataIndex: 'dutyTerritory',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -233,6 +237,7 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'projectName',
|
dataIndex: 'projectName',
|
||||||
width: 180,
|
width: 180,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -240,24 +245,29 @@
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'problemType',
|
dataIndex: 'problemType',
|
||||||
width: 140,
|
width: 140,
|
||||||
|
sorter:true,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('Sponsor'),
|
title: this.$t('Sponsor'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'initiator',
|
dataIndex: 'initiator',
|
||||||
|
sorter:true,
|
||||||
width: 140
|
width: 140
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('personLiable'),
|
title: this.$t('personLiable'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
dataIndex: 'duty',
|
dataIndex: 'duty',
|
||||||
|
sorter:true,
|
||||||
width: 140
|
width: 140
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
total: 0,
|
total: 0,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
|
orderBy: '1',
|
||||||
|
orderByField: '',
|
||||||
url: {
|
url: {
|
||||||
page: '/project/ncrTrackController/queryPage',
|
page: '/project/ncrTrackController/queryPage',
|
||||||
exportData: '/project/ncrTrackController/exportData'
|
exportData: '/project/ncrTrackController/exportData'
|
||||||
@@ -333,10 +343,17 @@
|
|||||||
this.pageSize = pageSize
|
this.pageSize = pageSize
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
|
tableOnChange(pagination, filters, sorter) {
|
||||||
|
this.orderBy = sorter.order == 'ascend' ? '1' : '2'
|
||||||
|
this.orderByField = sorter.columnKey
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
getList() {
|
getList() {
|
||||||
let query = {
|
let query = {
|
||||||
pageNo: this.pageNo,
|
pageNo: this.pageNo,
|
||||||
pageSize: this.pageSize,
|
pageSize: this.pageSize,
|
||||||
|
orderBy: this.orderBy,
|
||||||
|
orderByField: this.orderByField,
|
||||||
...this.queryParam
|
...this.queryParam
|
||||||
}
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
@@ -23,6 +23,17 @@
|
|||||||
:triggerChange="false" :dictCode="'region'"/>
|
:triggerChange="false" :dictCode="'region'"/>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
<a-col :md="6" :sm="8">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text" :title="$t('brand')">
|
||||||
|
<span>{{$t('brand')}}</span>
|
||||||
|
</div>
|
||||||
|
<j-dict-select-tag class="box-input" v-model="queryParam.brand"
|
||||||
|
:placeholder="$t('PleaseSelect')+$t('brand')"
|
||||||
|
:type="'select'"
|
||||||
|
:triggerChange="false" :dictCode="'brand'"/>
|
||||||
|
</div>
|
||||||
|
</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>
|
||||||
|
|||||||
@@ -86,14 +86,14 @@
|
|||||||
:columns="columns"
|
:columns="columns"
|
||||||
@change="tableOnChange"
|
@change="tableOnChange"
|
||||||
>
|
>
|
||||||
<span slot="technicalField" slot-scope="text,record" :title="text">
|
<span slot="standard" slot-scope="text,record" :title="text">
|
||||||
<a @click="entryNameClick(record)">
|
<a @click="entryNameClick(record)">
|
||||||
{{ text }}
|
{{ text }}
|
||||||
</a>
|
</a>
|
||||||
</span>
|
</span>
|
||||||
<span slot="standard" slot-scope="text,record" :title="text">
|
<!-- <span slot="standard" slot-scope="text,record" :title="text">-->
|
||||||
{{ text }}
|
<!-- {{ text }}-->
|
||||||
</span>
|
<!-- </span>-->
|
||||||
<!-- <span slot="serialNumber" slot-scope="text,record" :title="text">-->
|
<!-- <span slot="serialNumber" slot-scope="text,record" :title="text">-->
|
||||||
<!-- {{ text && text.length > 15 ? text.slice(0, 14) + '...' : text }}-->
|
<!-- {{ text && text.length > 15 ? text.slice(0, 14) + '...' : text }}-->
|
||||||
<!-- </span>-->
|
<!-- </span>-->
|
||||||
|
|||||||
@@ -103,104 +103,105 @@ import DynamicNotice from '../../components/tools/DynamicNotice'
|
|||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
import { ACCESS_TOKEN } from '@/store/mutation-types'
|
import { ACCESS_TOKEN } from '@/store/mutation-types'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'UserAnnouncementList',
|
name: 'UserAnnouncementList',
|
||||||
mixins: [JeroListMixin],
|
mixins: [JeroListMixin],
|
||||||
components: {
|
components: {
|
||||||
DynamicNotice,
|
DynamicNotice,
|
||||||
ShowAnnouncement
|
ShowAnnouncement
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
description: '系统通告表管理页面',
|
description: '系统通告表管理页面',
|
||||||
queryParam: {},
|
queryParam: {},
|
||||||
selectedRowKeys: [],
|
selectedRowKeys: [],
|
||||||
// '5': this.$t('taskRegulationComplianceTask'),
|
// '5': this.$t('taskRegulationComplianceTask'),
|
||||||
msgCategoryQuery: {
|
msgCategoryQuery: {
|
||||||
'1': this.$t('SubscriptionNotification'),
|
'1': this.$t('SubscriptionNotification'),
|
||||||
'2': this.$t('warningInformation'),
|
'2': this.$t('warningInformation'),
|
||||||
'3': this.$t('ForwardPush')
|
'3': this.$t('ForwardPush')
|
||||||
// '4': this.$t('CollectinguthenticationParameters'),
|
// '4': this.$t('CollectinguthenticationParameters'),
|
||||||
// '6':this.$t('RegulationListConfirmationTask'),
|
// '6':this.$t('RegulationListConfirmationTask'),
|
||||||
// '7':this.$t('RegulationListConfirmationNotification'),
|
// '7':this.$t('RegulationListConfirmationNotification'),
|
||||||
// '8':this.$t('RegulationTaskConfirmation'),
|
// '8':this.$t('RegulationTaskConfirmation'),
|
||||||
// '9':this.$t('DesignComplianceTask'),
|
// '9':this.$t('DesignComplianceTask'),
|
||||||
// '10':this.$t('PreHomoTask'),
|
// '10':this.$t('PreHomoTask'),
|
||||||
// '11':this.$t('ValidationTask'),
|
// '11':this.$t('ValidationTask'),
|
||||||
// '12':this.$t('DesignComplianceNotification'),
|
// '12':this.$t('DesignComplianceNotification'),
|
||||||
// '13':this.$t('PreHomoNotification'),
|
// '13':this.$t('PreHomoNotification'),
|
||||||
// '14':this.$t('ValidationComplianceNotification'),
|
// '14':this.$t('ValidationComplianceNotification'),
|
||||||
// '15':this.$t('RegulationTaskConfirmationNotification'),
|
// '15':this.$t('RegulationTaskConfirmationNotification'),
|
||||||
// '17':this.$t('listConfirmation'),
|
// '17':this.$t('listConfirmation'),
|
||||||
// '18':this.$t('taskAffirm'),
|
// '18':this.$t('taskAffirm'),
|
||||||
// '19':this.$t('complianceConfirmation'),
|
// '19':this.$t('complianceConfirmation'),
|
||||||
// '20':this.$t('collectionLegislativeComments'),
|
// '20':this.$t('collectionLegislativeComments'),
|
||||||
// '21':this.$t('regulatoryAndTechnicalAssessment'),
|
// '21':this.$t('regulatoryAndTechnicalAssessment'),
|
||||||
},
|
|
||||||
columns: [
|
|
||||||
{
|
|
||||||
title: this.$t('MessageContent'),
|
|
||||||
align: 'left',
|
|
||||||
dataIndex: 'msgContent',
|
|
||||||
ellipsis: true,
|
|
||||||
scopedSlots: { customRender: 'msgTitile' }
|
|
||||||
},
|
},
|
||||||
{
|
columns: [
|
||||||
title: this.$t('Sponsor'),
|
{
|
||||||
align: 'left',
|
title: this.$t('MessageContent'),
|
||||||
ellipsis: true,
|
align: 'left',
|
||||||
dataIndex: 'initiator',
|
dataIndex: 'msgContent',
|
||||||
width: 200
|
ellipsis: true,
|
||||||
|
scopedSlots: { customRender: 'msgTitile' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('Sponsor'),
|
||||||
|
align: 'left',
|
||||||
|
ellipsis: true,
|
||||||
|
dataIndex: 'initiator',
|
||||||
|
width: 200
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('MessageType'),
|
||||||
|
align: 'left',
|
||||||
|
ellipsis: true,
|
||||||
|
dataIndex: 'msgCategory',
|
||||||
|
width: 200,
|
||||||
|
scopedSlots: { customRender: 'msgCategory' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('NotificationTime'),
|
||||||
|
align: 'left',
|
||||||
|
ellipsis: true,
|
||||||
|
width: 200,
|
||||||
|
dataIndex: 'sendTime'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '',
|
||||||
|
align: 'left',
|
||||||
|
ellipsis: true,
|
||||||
|
width: 50
|
||||||
|
}
|
||||||
|
],
|
||||||
|
url: {
|
||||||
|
list: '/sys/sysAnnouncementSend/getMyAnnouncementSend',
|
||||||
|
editCementSend: 'sys/sysAnnouncementSend/editByAnntIdAndUserId',
|
||||||
|
readAllMsg: 'sys/sysAnnouncementSend/read',
|
||||||
|
deleteUrl: 'sys/sysAnnouncementSend/deleteBatch'
|
||||||
},
|
},
|
||||||
{
|
loading: false,
|
||||||
title: this.$t('MessageType'),
|
openPath: '',
|
||||||
align: 'left',
|
formData: '',
|
||||||
ellipsis: true,
|
language: ''
|
||||||
dataIndex: 'msgCategory',
|
}
|
||||||
width: 200,
|
},
|
||||||
scopedSlots: { customRender: 'msgCategory' }
|
watch: {
|
||||||
},
|
$route: function(res) {
|
||||||
{
|
console.log(res)
|
||||||
title: this.$t('NotificationTime'),
|
this.loadData()
|
||||||
align: 'left',
|
}
|
||||||
ellipsis: true,
|
},
|
||||||
width: 200,
|
mounted() {
|
||||||
dataIndex: 'sendTime'
|
this.language = localStorage.getItem('language') || ''
|
||||||
},
|
},
|
||||||
{
|
methods: {
|
||||||
title: '',
|
expandIcon(props) {
|
||||||
align: 'left',
|
if (props.expanded) {
|
||||||
ellipsis: true,
|
return <a-icon type = 'down'onClick = { e=>
|
||||||
width: 50
|
{
|
||||||
}
|
props.onExpand(props.record, e)
|
||||||
],
|
}
|
||||||
url: {
|
|
||||||
list: '/sys/sysAnnouncementSend/getMyAnnouncementSend',
|
|
||||||
editCementSend: 'sys/sysAnnouncementSend/editByAnntIdAndUserId',
|
|
||||||
readAllMsg: 'sys/sysAnnouncementSend/read',
|
|
||||||
deleteUrl: 'sys/sysAnnouncementSend/deleteBatch'
|
|
||||||
},
|
|
||||||
loading: false,
|
|
||||||
openPath: '',
|
|
||||||
formData: '',
|
|
||||||
language: ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
watch: {
|
|
||||||
$route: function(res) {
|
|
||||||
console.log(res)
|
|
||||||
this.loadData()
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.language = localStorage.getItem('language') || ''
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
expandIcon(props) {
|
|
||||||
if (props.expanded) {
|
|
||||||
return <a-icon type="down" onClick={e => {
|
|
||||||
props.onExpand(props.record, e)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -80,11 +80,19 @@
|
|||||||
:type="'select'"
|
:type="'select'"
|
||||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item v-if='viewshow' :label="$t('brand')" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form-item v-if='viewshowbrand' :label="$t('brand')" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
<j-multi-select-tag v-model="brands"
|
<!-- <j-multi-select-tag v-model="brands"-->
|
||||||
:placeholder="$t('PleaseSelect')+$t('brand')"
|
<!-- :placeholder="$t('PleaseSelect')+$t('brand')"-->
|
||||||
:type="'select'"
|
<!-- :type="'select'"-->
|
||||||
:triggerChange="false" :dictCode="'brand'"/>
|
<!-- :triggerChange="false" :dictCode="'brand'"/>-->
|
||||||
|
<a-select allowClear :placeholder="$t('PleaseSelect')+$t('engineeringInterfacePerson')"
|
||||||
|
v-model="brands">
|
||||||
|
<a-select-option v-for="(item, key) in brandsList" :key="key" :value="item.value">
|
||||||
|
<span style="display: inline-block;width: 100%" :title=" item.text || item.label ">
|
||||||
|
{{ item.text || item.label }}
|
||||||
|
</span>
|
||||||
|
</a-select-option>
|
||||||
|
</a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
|
|
||||||
@@ -230,7 +238,9 @@
|
|||||||
modaltoggleFlag: true,
|
modaltoggleFlag: true,
|
||||||
confirmDirty: false,
|
confirmDirty: false,
|
||||||
viewshow: false,
|
viewshow: false,
|
||||||
|
viewshowbrand: false,
|
||||||
selectedDepartKeys: [], //保存用户选择部门id
|
selectedDepartKeys: [], //保存用户选择部门id
|
||||||
|
brandsList: [], //保存用户选择部门id
|
||||||
checkedDepartKeys: [],
|
checkedDepartKeys: [],
|
||||||
checkedDepartNames: [], // 保存部门的名称 =>title
|
checkedDepartNames: [], // 保存部门的名称 =>title
|
||||||
checkedDepartNameString: '', // 保存部门的名称 =>title
|
checkedDepartNameString: '', // 保存部门的名称 =>title
|
||||||
@@ -360,8 +370,16 @@
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
barndslist(){
|
||||||
|
getAction('/sys/dict/getBrandDict', {}).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.brandsList = res.result
|
||||||
|
} else {
|
||||||
|
this.brandsList = []
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
loadUserRoles(userid) {
|
loadUserRoles(userid) {
|
||||||
console.log(11)
|
|
||||||
queryUserRole({ userid: userid }).then((res) => {
|
queryUserRole({ userid: userid }).then((res) => {
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
this.selectedRole = res.result
|
this.selectedRole = res.result
|
||||||
@@ -370,10 +388,17 @@
|
|||||||
if(val.roleCode == 'Viewer' && item == val.id){
|
if(val.roleCode == 'Viewer' && item == val.id){
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.viewshow = true
|
this.viewshow = true
|
||||||
|
this.viewshowbrand = true
|
||||||
|
})
|
||||||
|
return
|
||||||
|
} else if(val.roleCode == 'BrandAdministrator' && item == val.id) {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.viewshowbrand = true
|
||||||
})
|
})
|
||||||
return
|
return
|
||||||
}else{
|
}else{
|
||||||
this.viewshow = false
|
this.viewshow = false
|
||||||
|
this.viewshowbrand = false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@@ -398,10 +423,17 @@
|
|||||||
if(val.roleCode == 'Viewer' && item == val.id){
|
if(val.roleCode == 'Viewer' && item == val.id){
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.viewshow = true
|
this.viewshow = true
|
||||||
|
this.viewshowbrand = true
|
||||||
|
})
|
||||||
|
return
|
||||||
|
} else if(val.roleCode == 'BrandAdministrator' && item == val.id) {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.viewshowbrand = true
|
||||||
})
|
})
|
||||||
return
|
return
|
||||||
}else{
|
}else{
|
||||||
this.viewshow = false
|
this.viewshow = false
|
||||||
|
this.viewshowbrand = false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@@ -465,6 +497,7 @@
|
|||||||
let that = this
|
let that = this
|
||||||
this.disabled = false
|
this.disabled = false
|
||||||
that.initialRoleList()
|
that.initialRoleList()
|
||||||
|
that.barndslist()
|
||||||
if (record.activitiSync) {
|
if (record.activitiSync) {
|
||||||
this.disabled = true
|
this.disabled = true
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user