Merge remote-tracking branch 'origin/master'

This commit is contained in:
wangzhijiang
2022-05-09 09:09:19 +08:00
42 changed files with 2024 additions and 585 deletions
@@ -11,7 +11,8 @@ public enum ModuleEnum {
FILE_SPLIT("文档拆分","3"), FILE_SPLIT("文档拆分","3"),
FILE_SPLIT_ITEMS("文档拆分条款","4"), FILE_SPLIT_ITEMS("文档拆分条款","4"),
ONL_CGFORM_COLLECTION("我的收藏","5"), ONL_CGFORM_COLLECTION("我的收藏","5"),
ONL_CGFORM_SUBSCRIBE("我的订阅","6"); ONL_CGFORM_SUBSCRIBE("我的订阅","6"),
PARAMS_COLLECT_MANIFEST("参数收集清单","7");
String name; String name;
@@ -13,7 +13,8 @@ public enum TableEnum {
TAG("onl_cgform_tag"), TAG("onl_cgform_tag"),
TAG_AREA("onl_cgform_area"), TAG_AREA("onl_cgform_area"),
ONL_CGFORM_COLLECTION("onl_cgform_collection"), ONL_CGFORM_COLLECTION("onl_cgform_collection"),
ONL_CGFORM_SUBSCRIBE("onl_cgform_subscribe"); ONL_CGFORM_SUBSCRIBE("onl_cgform_subscribe"),
PARAMS_COLLECT_MANIFEST("params_collect_manifest");
String table; String table;
@@ -826,6 +826,8 @@ public class OnlCgformFieldServiceImpl extends ServiceImpl<OnlCgformFieldMapper,
fieldList = onlCgformFieldMapper.getFieldList(TableEnum.ONL_CGFORM_COLLECTION.getTable()); fieldList = onlCgformFieldMapper.getFieldList(TableEnum.ONL_CGFORM_COLLECTION.getTable());
} else if (ModuleEnum.ONL_CGFORM_SUBSCRIBE.getValue().equals(flag)) { } else if (ModuleEnum.ONL_CGFORM_SUBSCRIBE.getValue().equals(flag)) {
fieldList = onlCgformFieldMapper.getFieldList(TableEnum.ONL_CGFORM_SUBSCRIBE.getTable()); fieldList = onlCgformFieldMapper.getFieldList(TableEnum.ONL_CGFORM_SUBSCRIBE.getTable());
} else if (ModuleEnum.PARAMS_COLLECT_MANIFEST.getValue().equals(flag)) {
fieldList = onlCgformFieldMapper.getFieldList(TableEnum.PARAMS_COLLECT_MANIFEST.getTable());
} }
return fieldList; return fieldList;
@@ -1,28 +1,26 @@
package com.jero.modules.cert.collect.controller; package com.jero.modules.cert.collect.controller;
import java.util.Arrays;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.jero.common.api.vo.Result; import com.jero.common.api.vo.Result;
import com.jero.common.system.query.QueryGenerator; import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.system.base.controller.JeroController;
import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO; import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO;
import com.jero.modules.cert.collect.service.IParamsCollectManifestEOService; import com.jero.modules.cert.collect.service.IParamsCollectManifestEOService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import io.swagger.annotations.Api;
import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.ApiOperation;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import com.jero.common.system.base.controller.JeroController;
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.*;
import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import javax.servlet.http.HttpServletRequest;
import com.jero.common.aspect.annotation.AutoLog; import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/** /**
* @Description: 参数收集清单 * @Description: 参数收集清单
* @Author: jero-boot * @Author: jero-boot
* @Date: 2022-05-05 * @Date: 2022-05-05
@@ -35,27 +33,20 @@ import com.jero.common.aspect.annotation.AutoLog;
public class ParamsCollectManifestEOController extends JeroController<ParamsCollectManifestEO, IParamsCollectManifestEOService> { public class ParamsCollectManifestEOController extends JeroController<ParamsCollectManifestEO, IParamsCollectManifestEOService> {
@Autowired @Autowired
private IParamsCollectManifestEOService paramsCollectManifestEOService; private IParamsCollectManifestEOService paramsCollectManifestEOService;
/** /**
* 分页列表查询 * 表头中英文切换
* *
* @param paramsCollectManifestEO
* @param pageNo
* @param pageSize
* @param req
* @return * @return
*/ */
@AutoLog(value = "参数收集清单-分页列表查询") @AutoLog(value = "参数收集清单-表头中英文切换")
@ApiOperation(value="参数收集清单-分页列表查询", notes="参数收集清单-分页列表查询") @ApiOperation(value="参数收集清单-表头中英文切换", notes="参数收集清单-表头中英文切换")
@GetMapping(value = "/page") @GetMapping(value = "/getHeader")
public Result<?> queryPageList(ParamsCollectManifestEO paramsCollectManifestEO, public Result<List<Map<String, Object>>> getHeader(@RequestParam(name = "paramsManifestId") String paramsManifestId,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name = "flag") String flag,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize, @RequestParam(name = "cut") String cut) {
HttpServletRequest req) { List<Map<String, Object>> list = paramsCollectManifestEOService.getHeader(paramsManifestId, flag, cut);
QueryWrapper<ParamsCollectManifestEO> queryWrapper = QueryGenerator.initQueryWrapper(paramsCollectManifestEO, req.getParameterMap()); return Result.OK(list);
Page<ParamsCollectManifestEO> page = new Page<ParamsCollectManifestEO>(pageNo, pageSize);
IPage<ParamsCollectManifestEO> pageList = paramsCollectManifestEOService.page(page, queryWrapper);
return Result.OK(pageList);
} }
/** /**
@@ -66,8 +57,9 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
@AutoLog(value = "参数收集清单-列表查询") @AutoLog(value = "参数收集清单-列表查询")
@ApiOperation(value="参数收集清单-列表查询", notes="参数收集清单-列表查询") @ApiOperation(value="参数收集清单-列表查询", notes="参数收集清单-列表查询")
@GetMapping(value = "/list") @GetMapping(value = "/list")
public Result<List<ParamsCollectManifestEO>> queryList() { public Result<List<Map<String, Object>>> queryList(ParamsCollectManifestEO paramsCollectManifestEO,
List<ParamsCollectManifestEO> list = paramsCollectManifestEOService.queryList(); @RequestParam(name = "cut") String cut) {
List<Map<String, Object>> list = paramsCollectManifestEOService.queryList(paramsCollectManifestEO, cut);
return Result.OK(list); return Result.OK(list);
} }
@@ -137,8 +137,9 @@ public class ParamsConfigDataEOController extends JeroController<ParamsConfigDat
@AutoLog(value = "参数配置数据-通过id查询") @AutoLog(value = "参数配置数据-通过id查询")
@ApiOperation(value="参数配置数据-通过id查询", notes="参数配置数据-通过id查询") @ApiOperation(value="参数配置数据-通过id查询", notes="参数配置数据-通过id查询")
@GetMapping(value = "/queryById") @GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name="id",required=true) String id) { public Result<?> queryById(@RequestParam(name="paramsConfigId",required=true) String paramsConfigId,
ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataEOService.queryById(id); @RequestParam(name="paramsCollectManifestId",required=true) String paramsCollectManifestId) {
ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataEOService.queryById(paramsConfigId, paramsCollectManifestId);
if(paramsConfigDataEO==null) { if(paramsConfigDataEO==null) {
return Result.error("未找到对应数据"); return Result.error("未找到对应数据");
} }
@@ -1,10 +1,9 @@
package com.jero.modules.cert.collect.controller; package com.jero.modules.cert.collect.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
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.system.base.controller.JeroController; import com.jero.common.system.base.controller.JeroController;
import com.jero.modules.cert.collect.ParamsConfigVO; import com.jero.modules.cert.collect.vo.ParamsConfigVO;
import com.jero.modules.cert.collect.entity.ParamsConfigEO; import com.jero.modules.cert.collect.entity.ParamsConfigEO;
import com.jero.modules.cert.collect.service.IParamsConfigEOService; import com.jero.modules.cert.collect.service.IParamsConfigEOService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@@ -41,10 +40,7 @@ public class ParamsConfigEOController extends JeroController<ParamsConfigEO, IPa
@GetMapping(value = "/list") @GetMapping(value = "/list")
public Result<List<ParamsConfigEO>> queryList(@RequestParam(name = "cut") String cut, public Result<List<ParamsConfigEO>> queryList(@RequestParam(name = "cut") String cut,
@RequestParam(name = "paramsManifestId") String paramsManifestId) { @RequestParam(name = "paramsManifestId") String paramsManifestId) {
LambdaQueryWrapper<ParamsConfigEO> queryWrapper = new LambdaQueryWrapper<>(); List<ParamsConfigEO> list = paramsConfigEOService.queryList(paramsManifestId);
queryWrapper.eq(ParamsConfigEO::getParamsManifestId, paramsManifestId);
queryWrapper.orderByAsc(ParamsConfigEO::getDisplaySeq);
List<ParamsConfigEO> list = paramsConfigEOService.list(queryWrapper);
return Result.OK(cut, list); return Result.OK(cut, list);
} }
@@ -1,21 +1,18 @@
package com.jero.modules.cert.collect.entity; package com.jero.modules.cert.collect.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import com.jero.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
/** /**
@@ -30,7 +27,7 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize;
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@ApiModel(value="params_collect_manifest对象", description="参数收集清单") @ApiModel(value="params_collect_manifest对象", description="参数收集清单")
public class ParamsCollectManifestEO implements Serializable { public class ParamsCollectManifestEO implements Serializable {
private static final long serialVersionUID = 1L; // private static final long serialVersionUID = 1L;
/**主键*/ /**主键*/
@TableId(type = IdType.ASSIGN_ID) @TableId(type = IdType.ASSIGN_ID)
@@ -157,5 +154,4 @@ public class ParamsCollectManifestEO implements Serializable {
@Excel(name = "是否冻结", width = 15) @Excel(name = "是否冻结", width = 15)
@ApiModelProperty(value = "是否冻结") @ApiModelProperty(value = "是否冻结")
private String isLock; private String isLock;
} }
@@ -0,0 +1,72 @@
package com.jero.modules.cert.collect.enums;
import com.jero.common.constant.enums.CutEnum;
import com.jero.modules.cert.template.enums.ControlTypeEnum;
import java.util.HashMap;
import java.util.Map;
/**
* @Author: liyawei
* @Description:
* @Date: Created in 15:17 2022/5/7
*/
public enum CollectManifestStateEnum {
WAIT_COLLECT("待发起收集","wait collect","1"),
WAIT_SDT("待工程接口人处理","wait sdt","2"),
SDT_BACK("工程接口人退回","sdt back","3"),
WAIT_FILL("待填写","wait fill","4"),
DRE_BACK("填写人退回","dre back","5"),
SUBMIT("已提交","submit","6"),
CERT_BACK("认证工程师退回","cert back","7"),
SYNC_REPORT("已同步至上报库","sync report","8"),
CHANGE("变更","change","9");
String name;
String enName;
String value;
CollectManifestStateEnum(String name, String enName, String value) {
this.name = name;
this.enName = enName;
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 String getEnName() {
return enName;
}
public void setEnName(String enName) {
this.enName = enName;
}
public static Map<String,String> toMap(String cut){
Map<String,String> map = new HashMap<>();
if (CutEnum.CN.getValue().equals(cut)) {
for (CollectManifestStateEnum collectManifestStateEnum : CollectManifestStateEnum.values()) {
map.put(collectManifestStateEnum.getValue(), collectManifestStateEnum.getName());
}
} else if (CutEnum.EN.getValue().equals(cut)) {
for (CollectManifestStateEnum collectManifestStateEnum : CollectManifestStateEnum.values()) {
map.put(collectManifestStateEnum.getValue(), collectManifestStateEnum.getEnName());
}
}
return map;
}
}
@@ -0,0 +1,37 @@
package com.jero.modules.cert.collect.enums;
/**
* @Author: liyawei
* @Description:
* @Date: Created in 11:33 2022/5/7
*/
public enum ConfigDataTypeEnum {
TEXT("文本","text"),
PULL("单选","pull"),
PULL_MORE("多选","pull_more"),
FILE("附件","file");
String name;
String value;
ConfigDataTypeEnum(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;
}
}
@@ -14,4 +14,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/ */
public interface ParamsCollectManifestEOMapper extends BaseMapper<ParamsCollectManifestEO> { public interface ParamsCollectManifestEOMapper extends BaseMapper<ParamsCollectManifestEO> {
} List<ParamsCollectManifestEO> listInfo(@Param("paramsCollectManifestEO") ParamsCollectManifestEO paramsCollectManifestEO);
}
@@ -28,4 +28,36 @@
<result column="params_manifest_id" property="paramsManifestId" /> <result column="params_manifest_id" property="paramsManifestId" />
<result column="is_lock" property="isLock" /> <result column="is_lock" property="isLock" />
</resultMap> </resultMap>
<sql id="BaseQuerySql">
<where>
<if test="paramsCollectManifestEO != null">
<if test="paramsCollectManifestEO.nioNumber !=null and paramsCollectManifestEO.nioNumber !=''">
AND nio_number LIKE CONCAT(CONCAT('%',#{paramsCollectManifestEO.nioNumber}),'%')
</if>
<if test="paramsCollectManifestEO.paramsName !=null and paramsCollectManifestEO.paramsName !=''">
AND params_name LIKE CONCAT(CONCAT('%',#{paramsCollectManifestEO.paramsName}),'%')
</if>
<if test="paramsCollectManifestEO.certCategory !=null and paramsCollectManifestEO.certCategory !=''">
AND cert_category LIKE CONCAT(CONCAT('%',#{paramsCollectManifestEO.certCategory}),'%')
</if>
<if test="paramsCollectManifestEO.dre !=null and paramsCollectManifestEO.dre !=''">
AND dre LIKE CONCAT(CONCAT('%',#{paramsCollectManifestEO.dre}),'%')
</if>
<if test="paramsCollectManifestEO.dutyTerritory !=null and paramsCollectManifestEO.dutyTerritory !=''">
AND duty_territory LIKE CONCAT(CONCAT('%',#{paramsCollectManifestEO.dutyTerritory}),'%')
</if>
<if test="paramsCollectManifestEO.paramsManifestId !=null and paramsCollectManifestEO.paramsManifestId !=''">
AND params_manifest_id LIKE CONCAT(CONCAT('%',#{paramsCollectManifestEO.paramsManifestId}),'%')
</if>
</if>
</where>
</sql>
<select id="listInfo" resultMap="ParamsCollectManifestEOResultMap">
select *
from params_collect_manifest
<include refid="BaseQuerySql"/>
</select>
</mapper> </mapper>
@@ -3,6 +3,7 @@ package com.jero.modules.cert.collect.service;
import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO; import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* @Description: 参数收集清单 * @Description: 参数收集清单
@@ -54,8 +55,18 @@ public interface IParamsCollectManifestEOService extends IService<ParamsCollectM
/** /**
* 列表查询 * 列表查询
* * @param paramsCollectManifestEO
* @param cut
* @return * @return
*/ */
List<ParamsCollectManifestEO> queryList(); List<Map<String, Object>> queryList(ParamsCollectManifestEO paramsCollectManifestEO, String cut);
/**
* 列表表头中英文切换
* @param paramsManifestId
* @param flag
* @param cut
* @return
*/
List<Map<String, Object>> getHeader(String paramsManifestId, String flag, String cut);
} }
@@ -47,10 +47,11 @@ public interface IParamsConfigDataEOService extends IService<ParamsConfigDataEO>
/** /**
* 通过id查询 * 通过id查询
* *
* @param id * @param paramsConfigId
* @param paramsCollectManifestId
* @return * @return
*/ */
ParamsConfigDataEO queryById(String id); ParamsConfigDataEO queryById(String paramsConfigId, String paramsCollectManifestId);
/** /**
* 列表查询 * 列表查询
@@ -1,7 +1,7 @@
package com.jero.modules.cert.collect.service; package com.jero.modules.cert.collect.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.cert.collect.ParamsConfigVO; import com.jero.modules.cert.collect.vo.ParamsConfigVO;
import com.jero.modules.cert.collect.entity.ParamsConfigEO; import com.jero.modules.cert.collect.entity.ParamsConfigEO;
import java.util.List; import java.util.List;
@@ -59,5 +59,5 @@ public interface IParamsConfigEOService extends IService<ParamsConfigEO> {
* *
* @return * @return
*/ */
List<ParamsConfigEO> queryList(); List<ParamsConfigEO> queryList(String paramsManifestId);
} }
@@ -1,12 +1,33 @@
package com.jero.modules.cert.collect.service.impl; package com.jero.modules.cert.collect.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.CutEnum;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.generater.modules.online.cgform.entity.OnlCgformField;
import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl;
import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO; import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO;
import com.jero.modules.cert.collect.entity.ParamsConfigDataEO;
import com.jero.modules.cert.collect.entity.ParamsConfigEO;
import com.jero.modules.cert.collect.enums.CollectManifestStateEnum;
import com.jero.modules.cert.collect.enums.ConfigDataTypeEnum;
import com.jero.modules.cert.collect.mapper.ParamsCollectManifestEOMapper; import com.jero.modules.cert.collect.mapper.ParamsCollectManifestEOMapper;
import com.jero.modules.cert.collect.service.IParamsCollectManifestEOService; import com.jero.modules.cert.collect.service.IParamsCollectManifestEOService;
import com.jero.modules.cert.collect.service.IParamsConfigDataEOService;
import com.jero.modules.cert.collect.service.IParamsConfigEOService;
import com.jero.modules.cert.collect.vo.ParamsConfigDataVO;
import com.jero.modules.cert.template.enums.ControlTypeEnum;
import com.jero.modules.ocr.util.LineHumpUtil;
import com.jero.modules.system.entity.SysDictItem;
import com.jero.modules.system.service.ISysDictItemService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Date; import java.lang.reflect.Field;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import java.util.*;
import java.util.stream.Collectors;
/** /**
* @Description: 参数收集清单 * @Description: 参数收集清单
@@ -17,6 +38,21 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@Service @Service
public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollectManifestEOMapper, ParamsCollectManifestEO> implements IParamsCollectManifestEOService { public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollectManifestEOMapper, ParamsCollectManifestEO> implements IParamsCollectManifestEOService {
@Autowired
private ParamsCollectManifestEOMapper paramsCollectManifestEOMapper;
@Autowired
private OnlCgformFieldServiceImpl onlCgformFieldService;
@Autowired
private IParamsConfigEOService paramsConfigEOService;
@Autowired
private IParamsConfigDataEOService paramsConfigDataEOService;
@Autowired
private ISysDictItemService sysDictItemService;
/** /**
* 保存 * 保存
* *
@@ -83,7 +119,317 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
* @return * @return
*/ */
@Override @Override
public List<ParamsCollectManifestEO> queryList() { public List<Map<String, Object>> queryList(ParamsCollectManifestEO paramsCollectManifestEO, String cut) {
return list(); String paramsManifestId = paramsCollectManifestEO.getParamsManifestId();
List<ParamsCollectManifestEO> list = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO); // 查询固定列
List<ParamsConfigEO> paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询配置列
// 普通数据字典
List<SysDictItem> dictItemList = new ArrayList<>();
List<String> dictCodeList = new ArrayList<>();
dictCodeList.add("duty_territory");
dictCodeList.add("cert_category");
for (String dictCode : dictCodeList) {
List<SysDictItem> dictItems = sysDictItemService.selectItemsByDictCode(dictCode);
dictItemList.addAll(dictItems);
}
List<Map<String, Object>> listMap = new ArrayList<>();
if (CollectionUtil.isNotEmpty(paramsConfigEOList)) {
list.forEach(collectManifestEO -> { // 参数收集清单
// 处理数据字典字段 中英文切换 认证类型,责任领域
List<String> certCategory = Arrays.asList(collectManifestEO.getCertCategory().split(","));
List<String> dutyTerritory = Arrays.asList(collectManifestEO.getDutyTerritory().split(","));
String certCategoryName = "";
String dutyTerritoryName = "";
if (CutEnum.CN.getValue().equals(cut)) {
certCategoryName = dictItemList.stream()
.filter(e -> certCategory.contains(e.getItemValue()))
.map(SysDictItem::getItemText)
.collect(Collectors.joining(","));
dutyTerritoryName = dictItemList.stream()
.filter(e -> dutyTerritory.contains(e.getItemValue()))
.map(SysDictItem::getItemText)
.collect(Collectors.joining(","));
} else if (CutEnum.EN.getValue().equals(cut)) {
certCategoryName = dictItemList.stream()
.filter(e -> certCategory.contains(e.getItemValue()))
.map(SysDictItem::getEnName)
.collect(Collectors.joining(","));
dutyTerritoryName = dictItemList.stream()
.filter(e -> dutyTerritory.contains(e.getItemValue()))
.map(SysDictItem::getEnName)
.collect(Collectors.joining(","));
}
// String certCategoryName = sysDictService.queryDictItemByValue("cert_category", collectManifestEO.getCertCategory(), cut);
collectManifestEO.setCertCategory(certCategoryName);
// String dutyTerritoryName = sysDictService.queryDictItemByValue("duty_territory", collectManifestEO.getDutyTerritory(), cut);
collectManifestEO.setDutyTerritory(dutyTerritoryName);
// 处理状态字段
Map<String, String> collectManifestStateMap = CollectManifestStateEnum.toMap(cut);
String stateName = collectManifestStateMap.get(collectManifestEO.getState());
collectManifestEO.setState(stateName);
Map<String, Object> manifestMap = objectToMap(collectManifestEO); // 对象转map
String controlType = collectManifestEO.getControlType();
String paramsCollectManifestId = collectManifestEO.getId();
if (CollectionUtil.isNotEmpty(paramsConfigEOList)) {
paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置
Map<String, Object> configMap = new HashMap<>();
String paramsConfigId = paramsConfigEO.getId();
ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataEOService.queryById(paramsConfigId, paramsCollectManifestId); // 参数配置数据
List<ParamsConfigDataVO> paramsConfigDataVOList = getConfigDataVOList(controlType, paramsConfigDataEO, collectManifestEO); // 重新组合配置数据
configMap.put("controlType", controlType);
configMap.put("list", paramsConfigDataVOList);
manifestMap.put(paramsConfigEO.getId(), configMap);
});
}
listMap.add(manifestMap);
});
}
return listMap;
} }
/**
* 重新组装配置数据 用于返回前端
* @param controlType
* @param paramsConfigDataEO
* @param paramsCollectManifestEO
* @return
*/
private List<ParamsConfigDataVO> getConfigDataVOList(String controlType, ParamsConfigDataEO paramsConfigDataEO, ParamsCollectManifestEO paramsCollectManifestEO) {
List<ParamsConfigDataVO> paramsConfigDataVOList = new ArrayList<>();
if (ControlTypeEnum.TEXT.getValue().equals(controlType)) {
ParamsConfigDataVO configDataVO = new ParamsConfigDataVO();
configDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
configDataVO.setControlValue(paramsCollectManifestEO.getControlVerify());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getTextData())) {
configDataVO.setDataValue(paramsConfigDataEO.getTextData());
}
paramsConfigDataVOList.add(configDataVO);
} else if (ControlTypeEnum.PULL_SINGLE.getValue().equals(controlType)) {
ParamsConfigDataVO configDataVO = new ParamsConfigDataVO();
configDataVO.setType(ConfigDataTypeEnum.PULL.getValue());
configDataVO.setControlValue(paramsCollectManifestEO.getControlValues());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getPullData())) {
configDataVO.setDataValue(paramsConfigDataEO.getPullData());
}
paramsConfigDataVOList.add(configDataVO);
} else if (ControlTypeEnum.PULL_MORE.getValue().equals(controlType)) {
ParamsConfigDataVO configDataVO = new ParamsConfigDataVO();
configDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue());
configDataVO.setControlValue(paramsCollectManifestEO.getControlValues());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getPullData())) {
configDataVO.setDataValue(paramsConfigDataEO.getPullData());
}
paramsConfigDataVOList.add(configDataVO);
} else if (ControlTypeEnum.FILE.getValue().equals(controlType)) {
ParamsConfigDataVO configDataVO = new ParamsConfigDataVO();
configDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getFileConnectId())) {
configDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
}
paramsConfigDataVOList.add(configDataVO);
} else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType)) {
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
textConfigDataVO.setControlValue(paramsCollectManifestEO.getControlVerify());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getTextData())) {
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
}
paramsConfigDataVOList.add(textConfigDataVO);
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue());
pullConfigDataVO.setControlValue(paramsCollectManifestEO.getControlValues());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getPullData())) {
pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
}
paramsConfigDataVOList.add(pullConfigDataVO);
} else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) {
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
textConfigDataVO.setControlValue(paramsCollectManifestEO.getControlVerify());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getTextData())) {
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
}
paramsConfigDataVOList.add(textConfigDataVO);
ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO();
pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue());
pullMoreConfigDataVO.setControlValue(paramsCollectManifestEO.getControlValues());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getPullData())) {
pullMoreConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
}
paramsConfigDataVOList.add(pullMoreConfigDataVO);
} else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) {
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
textConfigDataVO.setControlValue(paramsCollectManifestEO.getControlVerify());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getTextData())) {
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
}
paramsConfigDataVOList.add(textConfigDataVO);
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getFileConnectId())) {
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
}
paramsConfigDataVOList.add(fileConfigDataVO);
} else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) {
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue());
pullConfigDataVO.setControlValue(paramsCollectManifestEO.getControlValues());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getPullData())) {
pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
}
paramsConfigDataVOList.add(pullConfigDataVO);
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getFileConnectId())) {
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
}
paramsConfigDataVOList.add(fileConfigDataVO);
} else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) {
ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO();
pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue());
pullMoreConfigDataVO.setControlValue(paramsCollectManifestEO.getControlValues());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getPullData())) {
pullMoreConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
}
paramsConfigDataVOList.add(pullMoreConfigDataVO);
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getFileConnectId())) {
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
}
paramsConfigDataVOList.add(fileConfigDataVO);
} else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) {
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
textConfigDataVO.setControlValue(paramsCollectManifestEO.getControlVerify());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getTextData())) {
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
}
paramsConfigDataVOList.add(textConfigDataVO);
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue());
pullConfigDataVO.setControlValue(paramsCollectManifestEO.getControlValues());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getPullData())) {
pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
}
paramsConfigDataVOList.add(pullConfigDataVO);
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isEmpty(paramsConfigDataEO.getFileConnectId())) {
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
}
paramsConfigDataVOList.add(fileConfigDataVO);
}
return paramsConfigDataVOList;
}
/**
* 列表表头中英文切换
*
* @return
*/
@Override
public List<Map<String, Object>> getHeader(String paramsManifestId, String flag, String cut) {
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(flag); // flag--->7
if (fieldList.size() != 0) {
//过滤列表字段(is_show_list-->列表是否显示0否 1是)
fieldList = fieldList.stream().filter(e -> YesOrNoEnum.YES.getValue().equals(String.valueOf(e.getIsShowList()))).collect(Collectors.toList());
}
List<ParamsConfigEO> paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId);
List<Map<String, Object>> listConfig = new LinkedList<>();
for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) {
Map<String, Object> map = new HashMap<>();
map.put("db_field_name", paramsConfigEO.getId());
map.put("db_field_txt", paramsConfigEO.getConfigName());
map.put("type", true); //配置列 标识
listConfig.add(map);
}
List<Map<String, Object>> list = new LinkedList<>();
int indexOfDescription = 1; // 参数说明的位置
for (int i = 0; i < fieldList.size(); i++) {
OnlCgformField onlCgformField = fieldList.get(i);
Map<String, Object> map = new HashMap<>();
String dbFieldName = onlCgformField.getDbFieldName();
if ("description".equals(dbFieldName)) {
indexOfDescription = i;
}
map.put("db_field_name", LineHumpUtil.lineToHump(dbFieldName));
if(CutEnum.CN.getValue().equals(cut)){
map.put("db_field_txt", onlCgformField.getDbFieldTxt());//字段中文名
}else{
map.put("db_field_txt", onlCgformField.getDbFieldEnName());//字段英文名
}
list.add(map);
}
list.addAll(indexOfDescription+1, listConfig);
return list;
}
/**
* 实体对象转成Map
* @param obj 实体对象
* @return
*/
private Map<String, Object> objectToMap(Object obj) {
Map<String, Object> map = new HashMap<>();
if (obj == null) {
return map;
}
Class clazz = obj.getClass();
Field[] fields = clazz.getDeclaredFields();
try {
for (Field field : fields) {
field.setAccessible(true);
map.put(field.getName(), field.get(obj));
}
} catch (Exception e) {
e.printStackTrace();
}
return map;
}
} }
@@ -1,12 +1,14 @@
package com.jero.modules.cert.collect.service.impl; package com.jero.modules.cert.collect.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.modules.cert.collect.entity.ParamsConfigDataEO; import com.jero.modules.cert.collect.entity.ParamsConfigDataEO;
import com.jero.modules.cert.collect.mapper.ParamsConfigDataEOMapper; import com.jero.modules.cert.collect.mapper.ParamsConfigDataEOMapper;
import com.jero.modules.cert.collect.service.IParamsConfigDataEOService; import com.jero.modules.cert.collect.service.IParamsConfigDataEOService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import java.util.List;
/** /**
* @Description: 参数配置数据 * @Description: 参数配置数据
@@ -69,12 +71,17 @@ public class ParamsConfigDataEOServiceImpl extends ServiceImpl<ParamsConfigDataE
/** /**
* 通过id查询 * 通过id查询
* *
* @param id * @param paramsConfigId
* @param paramsCollectManifestId
* @return * @return
*/ */
@Override @Override
public ParamsConfigDataEO queryById(String id) { public ParamsConfigDataEO queryById(String paramsConfigId, String paramsCollectManifestId) {
return getById(id); LambdaQueryWrapper<ParamsConfigDataEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(ParamsConfigDataEO::getParamsConfigId, paramsConfigId);
queryWrapper.eq(ParamsConfigDataEO::getParamsCollectManifestId, paramsCollectManifestId);
getOne(queryWrapper);
return getOne(queryWrapper);
} }
/** /**
@@ -1,9 +1,10 @@
package com.jero.modules.cert.collect.service.impl; package com.jero.modules.cert.collect.service.impl;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.system.vo.LoginUser; import com.jero.common.system.vo.LoginUser;
import com.jero.modules.cert.collect.ParamsConfigVO; import com.jero.modules.cert.collect.vo.ParamsConfigVO;
import com.jero.modules.cert.collect.entity.ParamsConfigEO; import com.jero.modules.cert.collect.entity.ParamsConfigEO;
import com.jero.modules.cert.collect.mapper.ParamsConfigDataEOMapper; import com.jero.modules.cert.collect.mapper.ParamsConfigDataEOMapper;
import com.jero.modules.cert.collect.mapper.ParamsConfigEOMapper; import com.jero.modules.cert.collect.mapper.ParamsConfigEOMapper;
@@ -43,18 +44,18 @@ public class ParamsConfigEOServiceImpl extends ServiceImpl<ParamsConfigEOMapper,
String paramsManifestId = paramsConfigVO.getParamsManifestId(); String paramsManifestId = paramsConfigVO.getParamsManifestId();
List<ParamsConfigEO> paramsConfigEOList = paramsConfigVO.getParamsConfigEOList(); List<ParamsConfigEO> paramsConfigEOList = paramsConfigVO.getParamsConfigEOList();
int ind = 1; // int ind = 1;
List<ParamsConfigEO> addConfigList = new ArrayList<>(); // 新增的配置 List<ParamsConfigEO> addConfigList = new ArrayList<>(); // 新增的配置
List<ParamsConfigEO> updateConfigList = new ArrayList<>(); // 修改的配置 List<ParamsConfigEO> updateConfigList = new ArrayList<>(); // 修改的配置
for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) { for (ParamsConfigEO paramsConfigEO : paramsConfigEOList) {
paramsConfigEO.setParamsManifestId(paramsManifestId); paramsConfigEO.setParamsManifestId(paramsManifestId);
paramsConfigEO.setDisplaySeq(ind); // paramsConfigEO.setDisplaySeq(ind);
if (StringUtils.isEmpty(paramsConfigEO.getId())) { if (StringUtils.isEmpty(paramsConfigEO.getId())) {
addConfigList.add(paramsConfigEO); addConfigList.add(paramsConfigEO);
} else { } else {
updateConfigList.add(paramsConfigEO); updateConfigList.add(paramsConfigEO);
} }
ind++; // ind++;
} }
// 删除的配置 // 删除的配置
@@ -136,7 +137,11 @@ public class ParamsConfigEOServiceImpl extends ServiceImpl<ParamsConfigEOMapper,
* @return * @return
*/ */
@Override @Override
public List<ParamsConfigEO> queryList() { public List<ParamsConfigEO> queryList(String paramsManifestId) {
return list(); LambdaQueryWrapper<ParamsConfigEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(ParamsConfigEO::getParamsManifestId, paramsManifestId);
queryWrapper.orderByAsc(ParamsConfigEO::getDisplaySeq);
List<ParamsConfigEO> list = list(queryWrapper);
return list;
} }
} }
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO; import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO;
import com.jero.modules.cert.collect.entity.ParamsManifestEO; import com.jero.modules.cert.collect.entity.ParamsManifestEO;
import com.jero.modules.cert.collect.enums.CollectManifestStateEnum;
import com.jero.modules.cert.collect.enums.ManifestStateEnum; import com.jero.modules.cert.collect.enums.ManifestStateEnum;
import com.jero.modules.cert.collect.mapper.ParamsManifestEOMapper; import com.jero.modules.cert.collect.mapper.ParamsManifestEOMapper;
import com.jero.modules.cert.collect.service.IParamsCollectManifestEOService; import com.jero.modules.cert.collect.service.IParamsCollectManifestEOService;
@@ -64,6 +65,9 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
BeanUtils.copyProperties(source, target); BeanUtils.copyProperties(source, target);
target.setId(UUID.randomUUID().toString().replace("-","")); target.setId(UUID.randomUUID().toString().replace("-",""));
target.setParamsManifestId(paramsManifestId); target.setParamsManifestId(paramsManifestId);
target.setState(CollectManifestStateEnum.WAIT_COLLECT.getValue());
// TODO 根据负责领域处理工程接口人:零个,一个,多个
paramsCollectManifestEOList.add(target); paramsCollectManifestEOList.add(target);
} }
paramsCollectManifestEOService.saveBatch(paramsCollectManifestEOList); paramsCollectManifestEOService.saveBatch(paramsCollectManifestEOList);
@@ -0,0 +1,15 @@
package com.jero.modules.cert.collect.vo;
import lombok.Data;
/**
* @Author: liyawei
* @Description:
* @Date: Created in 13:34 2022/5/7
*/
@Data
public class ParamsConfigDataVO {
private String type; // 类型:文本,单选,多选,附件
private String controlValue; // 控件备选值,控件校验
private String dataValue; // 配置具体数据
}
@@ -1,4 +1,4 @@
package com.jero.modules.cert.collect; package com.jero.modules.cert.collect.vo;
import com.jero.modules.cert.collect.entity.ParamsConfigEO; import com.jero.modules.cert.collect.entity.ParamsConfigEO;
import lombok.Data; import lombok.Data;
@@ -1,27 +1,28 @@
package com.jero.modules.dummy.controller; package com.jero.modules.dummy.controller;
import java.util.Arrays; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import java.util.List; import com.baomidou.mybatisplus.core.metadata.IPage;
import javax.servlet.http.HttpServletRequest; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import javax.servlet.http.HttpServletResponse;
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.constant.enums.CutEnum; import com.jero.common.constant.enums.CutEnum;
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.service.IDummyInventoryBaseEOService; import com.jero.modules.dummy.service.IDummyInventoryBaseEOService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import io.swagger.annotations.Api;
import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.ApiOperation;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import com.jero.common.system.base.controller.JeroController;
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.*;
import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import javax.servlet.http.HttpServletRequest;
import com.jero.common.aspect.annotation.AutoLog; import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.List;
/** /**
@@ -212,16 +213,24 @@ public class DummyInventoryBaseEOController extends JeroController<DummyInventor
dummyInventoryBaseEOService.issue(dummyInventoryBaseEO); dummyInventoryBaseEOService.issue(dummyInventoryBaseEO);
} catch (Exception e) { } catch (Exception e) {
if(CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())){ if(CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())){
return Result.OK().success("发布失败!"); return Result.OK().error500(e.getMessage());
}else{ }else{
return Result.error("Post failure!"); return Result.error("Post failure!");
} }
} }
if(CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())){ if(InventoryStateEnum.ISSUE.getValue().equals(dummyInventoryBaseEO.getState())) {
return Result.OK().success("发布成功"); if (CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())) {
}else{ return Result.OK().success("发布成功");
return Result.error("Release success!"); } else {
} return Result.error("Release success!");
}
}else {
if (CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())) {
return Result.OK().success("撤回成功");
} else {
return Result.error("Withdrawal succeeded!");
}
}
} }
} }
@@ -9,11 +9,12 @@ public enum DummyInventoryBaseDictCodeEnum {
DELIVERABLE_TEMPLATE("交付物类型","deliverable_template"), DELIVERABLE_TEMPLATE("交付物类型","deliverable_template"),
FA1_QI3_REN2("发起人","fa1_qi3_ren2"), FA1_QI3_REN2("发起人","fa1_qi3_ren2"),
ZE2_REN2_REN2("责任人","ze2_ren4_ren2"), ZE2_REN2_REN2("责任人","ze2_ren4_ren2"),
SHI4_YONG4_FAN4_WEI2("适用范围","apply_scope"),
REGION("适用地区","region"),
; ;
String name; String name;
String value; String value;
@@ -3,10 +3,12 @@ package com.jero.modules.dummy.service.impl;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.MessageTypeEnum; import com.jero.common.constant.enums.MessageTypeEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.vo.LoginUser; import com.jero.common.system.vo.LoginUser;
import com.jero.modules.document.service.impl.BussDocumentLibraryEOServiceImpl; import com.jero.modules.document.service.impl.BussDocumentLibraryEOServiceImpl;
import com.jero.modules.domain.service.DomainUserRelService; import com.jero.modules.domain.service.DomainUserRelService;
@@ -17,6 +19,7 @@ import com.jero.modules.dummy.entity.DummyReadEO;
import com.jero.modules.dummy.enums.DummyInventoryBaseDictCodeEnum; import com.jero.modules.dummy.enums.DummyInventoryBaseDictCodeEnum;
import com.jero.modules.dummy.enums.InventoryStateEnum; import com.jero.modules.dummy.enums.InventoryStateEnum;
import com.jero.modules.dummy.enums.ReadFlagEnum; import com.jero.modules.dummy.enums.ReadFlagEnum;
import com.jero.modules.dummy.mapper.DummyContentChangeEOMapper;
import com.jero.modules.dummy.mapper.DummyInventoryBaseEOMapper; import com.jero.modules.dummy.mapper.DummyInventoryBaseEOMapper;
import com.jero.modules.dummy.service.IDummyContentChangeEOService; import com.jero.modules.dummy.service.IDummyContentChangeEOService;
import com.jero.modules.dummy.service.IDummyInventoryBaseEOService; import com.jero.modules.dummy.service.IDummyInventoryBaseEOService;
@@ -78,6 +81,8 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
private SysCategoryServiceImpl sysCategoryService; private SysCategoryServiceImpl sysCategoryService;
@Autowired @Autowired
private SysDictItemMapper sysDictItemMapper; private SysDictItemMapper sysDictItemMapper;
@Autowired
private DummyContentChangeEOMapper dummyContentChangeEOMapper;
/** /**
* 保存 * 保存
* *
@@ -227,7 +232,6 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
//先判断是发布还是撤回 1-->发布 2-->撤回 //先判断是发布还是撤回 1-->发布 2-->撤回
//撤回需要发消息 //撤回需要发消息
if(InventoryStateEnum.ISSUE.getValue().equals(dummyInventoryBaseEO.getState())){ if(InventoryStateEnum.ISSUE.getValue().equals(dummyInventoryBaseEO.getState())){
//先判断第一次发布的时候是否保存过数据 //先判断第一次发布的时候是否保存过数据
LambdaQueryWrapper<DummyContentChangeEO> wrapper =new LambdaQueryWrapper<>(); LambdaQueryWrapper<DummyContentChangeEO> wrapper =new LambdaQueryWrapper<>();
@@ -310,11 +314,8 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
//获取数据库和传入同时存在的编号 //获取数据库和传入同时存在的编号
//获取两个的编号 //获取两个的编号
List<String> infoCJBaseSerialNumberList = infoCJList.stream().map(e -> e.getSerialNumber()).collect(Collectors.toList()); List<String> infoCJBaseSerialNumberList = infoCJList.stream().map(e -> e.getSerialNumber()).collect(Collectors.toList());
List<String> dummyInventoryInfoEOSerialNumberList = dummyInventoryInfoEOList.stream().map(e -> e.getSerialNumber()).collect(Collectors.toList()); List<String> dummyInventoryInfoEOSerialNumberList = dummyInventoryInfoEOList.stream().map(e -> e.getSerialNumber()).collect(Collectors.toList());
List<DummyInventoryInfoEO> sameDummyInventoryInfoEOList = new ArrayList<>(); List<DummyInventoryInfoEO> sameDummyInventoryInfoEOList = new ArrayList<>();
List<DummyInventoryInfoEO> sameinfoCJList = new ArrayList<>(); List<DummyInventoryInfoEO> sameinfoCJList = new ArrayList<>();
if (CollectionUtils.isNotEmpty(dummyInventoryInfoEOSerialNumberList)) { if (CollectionUtils.isNotEmpty(dummyInventoryInfoEOSerialNumberList)) {
@@ -346,9 +347,15 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
List<Map<String, String>> infoDiffList=new ArrayList<>(); List<Map<String, String>> infoDiffList=new ArrayList<>();
for (int i = 0; i < sameinfoCJList.size(); i++) { for (int i = 0; i < sameinfoCJList.size(); i++) {
infoDiff = ListDiff.compareObject(sameinfoCJList.get(i), sameDummyInventoryInfoEOList.get(i)); try {//!!!
infoDiff = ListDiff.compareObject(sameinfoCJList.get(i), sameDummyInventoryInfoEOList.get(i));
}catch (Exception e){
e.printStackTrace();
}
if (MapUtils.isNotEmpty(infoDiff)) { if (MapUtils.isNotEmpty(infoDiff)) {
infoDiffList.add(infoDiff); if(infoDiff.size() > 1) {
infoDiffList.add(infoDiff);
}
} }
} }
@@ -375,35 +382,50 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
} }
deleteSerialNumber=StringUtils.join(infoCJSerialNumberList,","); deleteSerialNumber=StringUtils.join(infoCJSerialNumberList,",");
//向订阅该领域管理的人发消息和飞书 //列表和维护清单不同的字段都为空->不发送消息,数据不处理
sendMsg(baseDiff,dummyContentChangeEOBaseList.get(0).getConnectId(),infoDiffList,addSerialNumber,deleteSerialNumber); if(MapUtils.isNotEmpty(baseDiff) || CollectionUtils.isNotEmpty(infoDiffList)) {
//向订阅该领域管理的人发消息和飞书
sendMsg(baseDiff, dummyContentChangeEOBaseList.get(0).getConnectId(), infoDiffList, addSerialNumber, deleteSerialNumber,dummyInventoryBaseEO.getState());
//5.数据对比完成后.删除之前保存的dummy_inventory_info中的数据,重新保存最新的数据 Date now=new Date();
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
//5.数据对比完成后.更新之前保存的dummy_inventory_info中的content_json数据,重新保存最新的数据
if(MapUtils.isNotEmpty(baseDiff)){//列表有不同字段
String base = JSONArray.toJSONString(dummyInventoryBaseEOList);
UpdateWrapper<DummyContentChangeEO> baseUpdateWrapper=new UpdateWrapper<>();
baseUpdateWrapper.set("content_json",base)
.set("update_by",sysUser.getUsername())
.set("update_time",now)
.eq("connect_id",dummyInventoryBaseEOList.get(0).getId());
dummyContentChangeEOMapper.update(null,baseUpdateWrapper);
}
if(CollectionUtils.isNotEmpty(infoDiffList)){//维护清单有不同字段
String info = JSONArray.toJSONString(dummyInventoryInfoEOList);
UpdateWrapper<DummyContentChangeEO> infoUpdateWrapper=new UpdateWrapper<>();
infoUpdateWrapper.set("content_json",info)
.set("update_by",sysUser.getUsername())
.set("update_time",now)
.eq("parent_id",dummyInventoryBaseEOList.get(0).getId());
dummyContentChangeEOMapper.update(null,infoUpdateWrapper);
}
}
} }
}else{ }else{
//撤回 //撤回,需要发消息
sendMsg(null, dummyInventoryBaseEO.getId(),null, null , null,dummyInventoryBaseEO.getState());
} }
} }
public void disposeData(List<DummyInventoryInfoEO> records) { public void disposeData(List<DummyInventoryInfoEO> records) {
Set<String> technologyTerritorySet = new HashSet<>(); Set<String> technologyTerritorySet = new HashSet<>();
for (DummyInventoryInfoEO dummyInventoryInfoEO : records) { for (DummyInventoryInfoEO dummyInventoryInfoEO : records) {
//技术领域 //技术领域
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getTechnologyTerritory())){ if (StringUtils.isNotBlank(dummyInventoryInfoEO.getTechnologyTerritory())) {
List<String> list = Arrays.asList(dummyInventoryInfoEO.getTechnologyTerritory().split(",")); List<String> list = Arrays.asList(dummyInventoryInfoEO.getTechnologyTerritory().split(","));
technologyTerritorySet.addAll(list); technologyTerritorySet.addAll(list);
} }
//树形结构数据字典(技术领域) //树形结构数据字典(技术领域)
List<SysCategory> categoryList = new ArrayList<>(); List<SysCategory> categoryList = new ArrayList<>();
if(technologyTerritorySet.size() != 0){ if (technologyTerritorySet.size() != 0) {
LambdaQueryWrapper<SysCategory> wrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SysCategory> wrapper = new LambdaQueryWrapper<>();
wrapper.in(SysCategory::getId, technologyTerritorySet); wrapper.in(SysCategory::getId, technologyTerritorySet);
categoryList = sysCategoryService.list(wrapper); categoryList = sysCategoryService.list(wrapper);
@@ -414,9 +436,9 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
for (String technologyTerritory : technologyTerritoryList) { for (String technologyTerritory : technologyTerritoryList) {
List<SysCategory> collect = categoryList.stream().filter(e -> technologyTerritory.equals(e.getId())).collect(Collectors.toList()); List<SysCategory> collect = categoryList.stream().filter(e -> technologyTerritory.equals(e.getId())).collect(Collectors.toList());
if(collect.size() != 0){ if (collect.size() != 0) {
// if (CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())) { // if (CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())) {
sb.append(collect.get(0).getName()+ ","); sb.append(collect.get(0).getName() + ",");
// } else { // } else {
// sb.append(collect.get(0).getEnName()+ ","); // sb.append(collect.get(0).getEnName()+ ",");
// } // }
@@ -428,115 +450,169 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
} }
dummyInventoryInfoEO.setTechnologyTerritoryName(technologyTerritoryName); dummyInventoryInfoEO.setTechnologyTerritoryName(technologyTerritoryName);
} }
//责任领域
List<SysDictItem> dutyTerritory = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.DUTY_TERRITORY.getValue());
List<String> dutyTerritoryList = Arrays.asList(dummyInventoryInfoEO.getDutyTerritory().split(","));
StringBuilder dutyTerritoryBuilder =new StringBuilder();
for(String midDutyTerritory : dutyTerritoryList){
String dutyTerritoryName = dutyTerritory.stream().filter(e -> e.getItemValue().equals(midDutyTerritory)).map(f -> f.getItemText()).collect(Collectors.joining(","));
dutyTerritoryBuilder.append(dutyTerritoryName).append(",");
//适用范围 SHI4_YONG4_FAN4_WEI2("","apply_scope"),
// REGION("适用地区","region"),
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getShi4Yong4Fan4Wei2())) {
List<SysDictItem> shi4Yong4Fan4Wei2 = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.SHI4_YONG4_FAN4_WEI2.getValue());
List<String> shi4Yong4Fan4Wei2List = Arrays.asList(dummyInventoryInfoEO.getShi4Yong4Fan4Wei2().split(","));
StringBuilder shi4Yong4Fan4Wei2Builder = new StringBuilder();
for (String midshi4Yong4Fan4Wei2 : shi4Yong4Fan4Wei2List) {
String shi4Yong4Fan4Wei2Name = shi4Yong4Fan4Wei2.stream().filter(e -> e.getItemValue().equals(midshi4Yong4Fan4Wei2)).map(f -> f.getItemText()).collect(Collectors.joining(","));
shi4Yong4Fan4Wei2Builder.append(shi4Yong4Fan4Wei2Name).append(",");
}
dummyInventoryInfoEO.setShi4Yong4Fan4Wei2(shi4Yong4Fan4Wei2Builder.substring(0, shi4Yong4Fan4Wei2Builder.toString().length() - 1));
}
//适用地区
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getRegion())) {
List<SysDictItem> region = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.REGION.getValue());
List<String> regionList = Arrays.asList(dummyInventoryInfoEO.getRegion().split(","));
StringBuilder regionBuilder = new StringBuilder();
for (String midRegion : regionList) {
String regionName = region.stream().filter(e -> e.getItemValue().equals(midRegion)).map(f -> f.getItemText()).collect(Collectors.joining(","));
regionBuilder.append(regionName).append(",");
}
dummyInventoryInfoEO.setRegion(regionBuilder.substring(0, regionBuilder.toString().length() - 1));
}
//责任领域
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getDutyTerritory())) {
List<SysDictItem> dutyTerritory = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.DUTY_TERRITORY.getValue());
List<String> dutyTerritoryList = Arrays.asList(dummyInventoryInfoEO.getDutyTerritory().split(","));
StringBuilder dutyTerritoryBuilder = new StringBuilder();
for (String midDutyTerritory : dutyTerritoryList) {
String dutyTerritoryName = dutyTerritory.stream().filter(e -> e.getItemValue().equals(midDutyTerritory)).map(f -> f.getItemText()).collect(Collectors.joining(","));
dutyTerritoryBuilder.append(dutyTerritoryName).append(",");
}
dummyInventoryInfoEO.setDutyTerritory(dutyTerritoryBuilder.substring(0, dutyTerritoryBuilder.toString().length() - 1));
} }
dummyInventoryInfoEO.setDutyTerritory(dutyTerritoryBuilder.substring(0,dutyTerritoryBuilder.toString().length()-1));
//实施类别 //实施类别
List<SysDictItem> implementType = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.IMPLEMENT_TYPE.getValue()); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getImplementType())) {
String implementTypeName = implementType.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getImplementType())).map(f -> f.getItemText()).collect(Collectors.joining(",")); List<SysDictItem> implementType = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.IMPLEMENT_TYPE.getValue());
dummyInventoryInfoEO.setImplementType(implementTypeName); String implementTypeName = implementType.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getImplementType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setImplementType(implementTypeName);
}
//认证级别 //认证级别
List<SysDictItem> attestationType = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ATTESTATION_TYPE.getValue()); if(StringUtils.isNotBlank(dummyInventoryInfoEO.getAttestationType())) {
String attestationTypeName = attestationType.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getAttestationType())).map(f -> f.getItemText()).collect(Collectors.joining(",")); List<SysDictItem> attestationType = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ATTESTATION_TYPE.getValue());
dummyInventoryInfoEO.setAttestationType(attestationTypeName); String attestationTypeName = attestationType.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getAttestationType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setAttestationType(attestationTypeName);
}
//认证级别 //认证级别
List<SysDictItem> attestationRank = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ATTESTATION_RANK.getValue()); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getAttestationRank())) {
String attestationRankName = attestationRank.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getAttestationRank())).map(f -> f.getItemText()).collect(Collectors.joining(",")); List<SysDictItem> attestationRank = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ATTESTATION_RANK.getValue());
dummyInventoryInfoEO.setAttestationRank(attestationRankName); String attestationRankName = attestationRank.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getAttestationRank())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setAttestationRank(attestationRankName);
}
//交付物类型 //交付物类型
List<SysDictItem> deliverableTemplate = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.DELIVERABLE_TEMPLATE.getValue()); List<SysDictItem> deliverableTemplate = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.DELIVERABLE_TEMPLATE.getValue());
//设计符合性确认-交付物类型 //设计符合性确认-交付物类型
// designDeliverableType; // designDeliverableType;
String designDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(",")); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getDesignDeliverableType())) {
dummyInventoryInfoEO.setDesignDeliverableType(designDeliverableTypeName); String designDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setDesignDeliverableType(designDeliverableTypeName);
}
//prehomo确认-交付物类型 //prehomo确认-交付物类型
// prehomoDeliverableType; // prehomoDeliverableType;
String prehomoDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(",")); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getPrehomoDeliverableType())) {
dummyInventoryInfoEO.setPrehomoDeliverableType(prehomoDeliverableTypeName); String prehomoDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setPrehomoDeliverableType(prehomoDeliverableTypeName);
}
//验证符合性确认-交付物类型 //验证符合性确认-交付物类型
// verifyDeliverableType; // verifyDeliverableType;
String verifyDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(",")); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getVerifyDeliverableType())) {
dummyInventoryInfoEO.setVerifyDeliverableType(verifyDeliverableTypeName); String verifyDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setVerifyDeliverableType(verifyDeliverableTypeName);
}
//发起人 //发起人
List<SysDictItem> fa1_qi3_ren2 = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.FA1_QI3_REN2.getValue()); List<SysDictItem> fa1_qi3_ren2 = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.FA1_QI3_REN2.getValue());
//设计符合性确认-发起人 //设计符合性确认-发起人
// designInitiator; // designInitiator;
String designInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(",")); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getDesignInitiator())) {
dummyInventoryInfoEO.setDesignInitiator(designInitiatorName); String designInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setDesignInitiator(designInitiatorName);
}
//prehomo确认-发起人 //prehomo确认-发起人
// prehomoInitiator; // prehomoInitiator;
String prehomoInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(",")); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getPrehomoInitiator())) {
dummyInventoryInfoEO.setPrehomoInitiator(prehomoInitiatorName); String prehomoInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setPrehomoInitiator(prehomoInitiatorName);
}
//验证符合性确认-发起人 //验证符合性确认-发起人
// verifyInitiator; // verifyInitiator;
String verifyInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(",")); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getVerifyInitiator())) {
dummyInventoryInfoEO.setVerifyInitiator(verifyInitiatorName); String verifyInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setVerifyInitiator(verifyInitiatorName);
}
//责任人 //责任人
List<SysDictItem> ze2_ren4_ren2 = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ZE2_REN2_REN2.getValue()); List<SysDictItem> ze2_ren4_ren2 = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ZE2_REN2_REN2.getValue());
//设计符合性确认-责任人 //设计符合性确认-责任人
// designDuty; // designDuty;
String designDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignDuty())).map(f -> f.getItemText()).collect(Collectors.joining(",")); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getDesignDuty())) {
dummyInventoryInfoEO.setDesignDuty(designDutyName); String designDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignDuty())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setDesignDuty(designDutyName);
}
//prehomo确认-责任人 //prehomo确认-责任人
// prehomoDuty; // prehomoDuty;
String prehomoDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoDuty())).map(f -> f.getItemText()).collect(Collectors.joining(",")); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getPrehomoDuty())) {
dummyInventoryInfoEO.setPrehomoDuty(prehomoDutyName); String prehomoDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoDuty())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setPrehomoDuty(prehomoDutyName);
}
//验证符合性确认-责任人 //验证符合性确认-责任人
// verifyDuty; // verifyDuty;
String verifyDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyDuty())).map(f -> f.getItemText()).collect(Collectors.joining(",")); if (StringUtils.isNotBlank(dummyInventoryInfoEO.getVerifyDuty())) {
dummyInventoryInfoEO.setVerifyDuty(verifyDutyName); String verifyDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyDuty())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setVerifyDuty(verifyDutyName);
}
} }
} }
//发送消息 //发送消息
private void sendMsg(Map<String, String> baseDiff, String idTemp,List<Map<String, String>> infoDiffList,String addSerialNumber,String deleteSerialNumber) { private void sendMsg(Map<String, String> baseDiff, String idTemp,List<Map<String, String>> infoDiffList,
String addSerialNumber,String deleteSerialNumber,String state) {
String baseName=queryById(idTemp).getName();//基础表id String baseName = queryById(idTemp).getName();//基础表id
//查询订阅用户
List<String> userNameList = dummyReadEOService.queryReadUserInfo(idTemp); List<String> userNameList = dummyReadEOService.queryReadUserInfo(idTemp);
List<String> userIdList=sysUserService.queryUserIdListByNameList(userNameList).stream().map(e->e.getId()).collect(Collectors.toList()); if (CollectionUtils.isNotEmpty(userNameList)) {
//给发送消息的用户 List<String> userIdList = sysUserService.queryUserIdListByNameList(userNameList).stream().map(e -> e.getId()).collect(Collectors.toList());
if(userIdList.size() == 0){ //给发送消息的用户
return; if (userIdList.size() == 0) {
} return;
List<SysUser> sysUsers = sysUserService.listByIds(userIdList);
List<String> thirdIdList = sysUsers.stream().map(SysUser::getThirdId).collect(Collectors.toList());
if (userIdList.size() != 0) {
String href = backUrl + "/dummy/dummyInventoryBaseEO/issue?id=" + idTemp;
//The xx virtual list you subscribed to has been updated as follows:1 . xxxxx 2.xxxx
String content = "The " + baseName + " virtual list you subscribed to has been updated.";
String contentInfo = "The " + baseName + " virtual list you subscribed to has been updated as follows : " + "\r\n";
//拼接维护清单的消息
contentInfo =setContentInfo(contentInfo,baseDiff,infoDiffList,addSerialNumber,deleteSerialNumber);
System.out.println(contentInfo);
//封装消息的实体类
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, content, contentInfo);
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
bussDocumentLibraryEOService.sendWebsocket(idTemp, idTemp);
//飞书
try {
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), content, MessageTypeEnum.PUSH.getName(), href);
} catch (IOException e) {
log.error("飞书消息推送失败");
} }
List<SysUser> sysUsers = sysUserService.listByIds(userIdList);
List<String> thirdIdList = sysUsers.stream().map(SysUser::getThirdId).collect(Collectors.toList());
if (userIdList.size() != 0) {
String href = backUrl + "/dummy/dummyInventoryBaseEO/issue?id=" + idTemp;
String content = null;
String contentInfo = null;
if(InventoryStateEnum.ISSUE.getValue().equals(state)) {
//The xx virtual list you subscribed to has been updated as follows:1 . xxxxx 2.xxxx
content = "The " + baseName + " virtual list you subscribed to has been updated.";
contentInfo = "The " + baseName + " virtual list you subscribed to has been updated as follows : " + "\r\n";
//拼接维护清单的消息
contentInfo = setContentInfo(contentInfo, baseDiff, infoDiffList, addSerialNumber, deleteSerialNumber);
}else{//撤回的消息
content = "The " + baseName + " virtual list you subscribed to has been withdrawn,please note.";
contentInfo = "The " + baseName + " virtual list you subscribed to has been withdrawn,please note.";
}
//封装消息的实体类
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, content, contentInfo);
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
bussDocumentLibraryEOService.sendWebsocket(idTemp, idTemp);
//飞书
try {
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), content, MessageTypeEnum.PUSH.getName(), href);
} catch (IOException e) {
log.error("飞书消息推送失败");
}
}
} else {
throw new JeroBootException("该虚拟清单未被订阅,消息发送失败");
} }
} }
////拼接维护清单的消息 ////拼接维护清单的消息
public String setContentInfo(String contentInfo, Map<String, String> baseDiff, List<Map<String, String>> infoDiffList public String setContentInfo(String contentInfo, Map<String, String> baseDiff, List<Map<String, String>> infoDiffList
, String addSerialNumber, String deleteSerialNumber) { , String addSerialNumber, String deleteSerialNumber) {
@@ -575,187 +651,189 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
//设置维护清单的修改消息 //设置维护清单的修改消息
if(CollectionUtils.isNotEmpty(infoDiffList)) { if(CollectionUtils.isNotEmpty(infoDiffList)) {
for(Map<String, String> infoDiff: infoDiffList) { for (Map<String, String> infoDiff : infoDiffList) {
int infoDiffRow=1; if (infoDiff.size() > 1) {
contentInfo += row + ". The serial Number " + infoDiff.get("serialNumber") + " has been updated as follows : " + "\r\n"; int infoDiffRow = 1;
//技术领域 contentInfo += row + ". The serial Number " + infoDiff.get("serialNumber") + " has been updated as follows : " + "\r\n";
if (StringUtils.isNotBlank(infoDiff.get("technologyTerritoryName"))) { //技术领域
if (StringUtils.isNotBlank(infoDiff.get("technologyTerritoryName"))) {
List<String> list = Arrays.asList(infoDiff.get("technologyTerritoryName").split("\\|")); List<String> list = Arrays.asList(infoDiff.get("technologyTerritoryName").split("\\|"));
String infoDiffOld = list.get(0); String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译 String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Technology territory has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n"; contentInfo += "(" + infoDiffRow + "). Technology territory has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++; infoDiffRow++;
}
//新车型实施日期
if (StringUtils.isNotBlank(infoDiff.get("xin1Che1Xing2Shi2Shi1Ri4Qi1"))) {
List<String> list = Arrays.asList(infoDiff.get("xin1Che1Xing2Shi2Shi1Ri4Qi1").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). The implementation date of new model has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//在产车实施日期
if (StringUtils.isNotBlank(infoDiff.get("implementTime"))) {
List<String> list = Arrays.asList(infoDiff.get("implementTime").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Implement time has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//WVTA ID
if (StringUtils.isNotBlank(infoDiff.get("wvtaId"))) {
List<String> list = Arrays.asList(infoDiff.get("wvtaId").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). WVTA ID has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//子标题
if (StringUtils.isNotBlank(infoDiff.get("subtitle"))) {
List<String> list = Arrays.asList(infoDiff.get("subtitle").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Subtitle has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//实施类别
if (StringUtils.isNotBlank(infoDiff.get("implementType"))) {
List<String> list = Arrays.asList(infoDiff.get("implementType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Implement type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//认证类型
if (StringUtils.isNotBlank(infoDiff.get("attestationType"))) {
List<String> list = Arrays.asList(infoDiff.get("attestationType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Attestation type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//认证级别
if (StringUtils.isNotBlank(infoDiff.get("attestationRank"))) {
List<String> list = Arrays.asList(infoDiff.get("attestationRank").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Attestation rank has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//责任领域
if (StringUtils.isNotBlank(infoDiff.get("dutyTerritory"))) {
List<String> list = Arrays.asList(infoDiff.get("dutyTerritory").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Duty territory has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//备注
if (StringUtils.isNotBlank(infoDiff.get("remark"))) {
List<String> list = Arrays.asList(infoDiff.get("remark").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);
contentInfo += "(" + infoDiffRow + "). Remark has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("designDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("designDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("designDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("designDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("designInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("designInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("designDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("designDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("prehomoDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("prehomoDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("prehomoInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("prehomoDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("verifyDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("verifyDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("verifyInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("verifyDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
row++;
} }
//新车型实施日期
if (StringUtils.isNotBlank(infoDiff.get("xin1Che1Xing2Shi2Shi1Ri4Qi1"))) {
List<String> list = Arrays.asList(infoDiff.get("xin1Che1Xing2Shi2Shi1Ri4Qi1").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). The implementation date of new model has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//在产车实施日期
if (StringUtils.isNotBlank(infoDiff.get("implementTime"))) {
List<String> list = Arrays.asList(infoDiff.get("implementTime").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Implement time has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//WVTA ID
if (StringUtils.isNotBlank(infoDiff.get("wvtaId"))) {
List<String> list = Arrays.asList(infoDiff.get("wvtaId").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). WVTA ID has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//子标题
if (StringUtils.isNotBlank(infoDiff.get("subtitle"))) {
List<String> list = Arrays.asList(infoDiff.get("subtitle").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Subtitle has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//实施类别
if (StringUtils.isNotBlank(infoDiff.get("implementType"))) {
List<String> list = Arrays.asList(infoDiff.get("implementType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Implement type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//认证类型
if (StringUtils.isNotBlank(infoDiff.get("attestationType"))) {
List<String> list = Arrays.asList(infoDiff.get("attestationType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Attestation type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//认证级别
if (StringUtils.isNotBlank(infoDiff.get("attestationRank"))) {
List<String> list = Arrays.asList(infoDiff.get("attestationRank").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Attestation rank has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//责任领域
if (StringUtils.isNotBlank(infoDiff.get("dutyTerritory"))) {
List<String> list = Arrays.asList(infoDiff.get("dutyTerritory").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Duty territory has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//备注
if (StringUtils.isNotBlank(infoDiff.get("remark"))) {
List<String> list = Arrays.asList(infoDiff.get("remark").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);
contentInfo += "(" + infoDiffRow + "). Remark has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("designDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("designDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("designDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("designDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("designInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("designInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("designDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("designDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("prehomoDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("prehomoDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("prehomoInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("prehomoDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("verifyDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("verifyDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("verifyInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("verifyDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
row++;
} }
} }
return contentInfo; return contentInfo;
@@ -290,6 +290,20 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getDutyTerritory())){ if(StringUtils.isNotBlank(dummyInventoryInfoEO.getDutyTerritory())){
dummyInventoryInfoEOTemp.setDutyTerritory(dummyInventoryInfoEO.getDutyTerritory()); dummyInventoryInfoEOTemp.setDutyTerritory(dummyInventoryInfoEO.getDutyTerritory());
} }
//适用范围 shi4Yong4Fan4Wei2
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getShi4Yong4Fan4Wei2())){
dummyInventoryInfoEOTemp.setShi4Yong4Fan4Wei2(dummyInventoryInfoEO.getShi4Yong4Fan4Wei2());
}
//技术领域 technologyTerritory
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getTechnologyTerritory())){
dummyInventoryInfoEOTemp.setTechnologyTerritory(dummyInventoryInfoEO.getTechnologyTerritory());
}
//适用地区 region
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getRegion())){
dummyInventoryInfoEOTemp.setRegion(dummyInventoryInfoEO.getRegion());
}
dummyInventoryInfoEOList.add(dummyInventoryInfoEOTemp); dummyInventoryInfoEOList.add(dummyInventoryInfoEOTemp);
} }
this.updateBatchById(dummyInventoryInfoEOList); this.updateBatchById(dummyInventoryInfoEOList);
@@ -825,7 +839,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
String value = ""; String value = "";
boolean flag = true; boolean flag = true;
//编号验证 //编号验证
List<BussDocumentLibraryEO> bussDocumentLibraryEOList = verifySerialNumber(dataList,dummyInventoryInfoEOTemp); verifySerialNumber(dataList,dummyInventoryInfoEOTemp);
for (DummyInventoryInfoEO dummyInventoryInfoEO : dataList) { for (DummyInventoryInfoEO dummyInventoryInfoEO : dataList) {
i++; i++;
String errorMsg = ""; String errorMsg = "";
@@ -872,7 +886,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//实施类别(单选不必填) //实施类别(单选不必填)
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, implementType,msgList,"实施类别","implementation category"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, implementType,msgList,"实施类别","implementation category","implement_type");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setImplementType(value); dummyInventoryInfoEO.setImplementType(value);
} }
@@ -889,7 +903,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
// dummyInventoryInfoEO.setImplementTime(implementTime); // dummyInventoryInfoEO.setImplementTime(implementTime);
// } // }
//认证类型(单选不必填) //认证类型(单选不必填)
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, attestationType,msgList,"认证类型","certification type"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, attestationType,msgList,"认证类型","certification type","attestation_type");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setAttestationType(value); dummyInventoryInfoEO.setAttestationType(value);
} }
@@ -897,7 +911,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//认证级别(单选必填) //认证级别(单选必填)
flag = must(dummyInventoryInfoEO, errorMsg, msgList, attestationRank,"认证级别","certification level"); flag = must(dummyInventoryInfoEO, errorMsg, msgList, attestationRank,"认证级别","certification level");
if(flag){ if(flag){
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, attestationRank,msgList,"认证级别","certification level"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, attestationRank,msgList,"认证级别","certification level","attestation_rank");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setAttestationRank(value); dummyInventoryInfoEO.setAttestationRank(value);
} }
@@ -906,7 +920,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//责任领域(多选必填) //责任领域(多选必填)
flag = must(dummyInventoryInfoEO, errorMsg, msgList, dutyTerritory,"责任领域","area of responsibility"); flag = must(dummyInventoryInfoEO, errorMsg, msgList, dutyTerritory,"责任领域","area of responsibility");
if(flag){ if(flag){
value = pullMore(dictItemList, dummyInventoryInfoEO, errorMsg, dutyTerritory,msgList,"责任领域","area of responsibility"); value = pullMore(dictItemList, dummyInventoryInfoEO, errorMsg, dutyTerritory,msgList,"责任领域","area of responsibility","duty_territory");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setDutyTerritory(value); dummyInventoryInfoEO.setDutyTerritory(value);
} }
@@ -914,7 +928,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//设计 //设计
//交付物类型 //交付物类型
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designDeliverableType,msgList,"交付物类型","type of deliverables"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setDesignDeliverableType(value); dummyInventoryInfoEO.setDesignDeliverableType(value);
} }
@@ -926,20 +940,20 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
} }
//发起人 //发起人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designInitiator,msgList,"发起人","initiator"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designInitiator,msgList,"发起人","initiator","fa1_qi3_ren2");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setDesignInitiator(value); dummyInventoryInfoEO.setDesignInitiator(value);
} }
//责任人 //责任人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designDuty,msgList,"责任人","person liable"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designDuty,msgList,"责任人","person liable","ze2_ren4_ren2");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setDesignDuty(value); dummyInventoryInfoEO.setDesignDuty(value);
} }
//pre //pre
//交付物类型 //交付物类型
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoDeliverableType,msgList,"交付物类型","type of deliverables"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setPrehomoDeliverableType(value); dummyInventoryInfoEO.setPrehomoDeliverableType(value);
} }
@@ -951,20 +965,20 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
} }
//发起人 //发起人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoInitiator,msgList,"发起人","initiator"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoInitiator,msgList,"发起人","initiator","fa1_qi3_ren2");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setPrehomoInitiator(value); dummyInventoryInfoEO.setPrehomoInitiator(value);
} }
//责任人 //责任人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoDuty,msgList,"责任人","person liable"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoDuty,msgList,"责任人","person liable","ze2_ren4_ren2");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setPrehomoDuty(value); dummyInventoryInfoEO.setPrehomoDuty(value);
} }
//确认 //确认
//交付物类型 //交付物类型
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyDeliverableType,msgList,"交付物类型","type of deliverables"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setVerifyDeliverableType(value); dummyInventoryInfoEO.setVerifyDeliverableType(value);
} }
@@ -977,13 +991,13 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//发起人 //发起人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyInitiator,msgList,"发起人","initiator"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyInitiator,msgList,"发起人","initiator","fa1_qi3_ren2");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setVerifyInitiator(value); dummyInventoryInfoEO.setVerifyInitiator(value);
} }
//责任人 //责任人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyDuty,msgList,"责任人","person liable"); value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyDuty,msgList,"责任人","person liable","ze2_ren4_ren2");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setVerifyDuty(value); dummyInventoryInfoEO.setVerifyDuty(value);
} }
@@ -1004,52 +1018,60 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
} }
} }
private List<BussDocumentLibraryEO> verifySerialNumber(List<DummyInventoryInfoEO> dataList,DummyInventoryInfoEO dummyInventoryInfoEOTemp) { private void verifySerialNumber(List<DummyInventoryInfoEO> dataList,DummyInventoryInfoEO dummyInventoryInfoEOTemp) {
//文档库数据 //文档库数据
List<String> serialNumberList = dataList.stream().map(DummyInventoryInfoEO::getSerialNumber).collect(Collectors.toList()); List<String> serialNumberList = dataList.stream().map(DummyInventoryInfoEO::getSerialNumber).collect(Collectors.toList());
LambdaQueryWrapper<BussDocumentLibraryEO> wrapper = new LambdaQueryWrapper<>(); List<String> serialNumberS = new ArrayList<>();
wrapper.in(BussDocumentLibraryEO::getSerialNumber,serialNumberList); if(serialNumberList.size() != 0){
List<BussDocumentLibraryEO> bussDocumentLibraryEOList = iBussDocumentLibraryEOService.list(wrapper); for (String s : serialNumberList) {
//文档库中可能存在重复的标准号 if(StringUtils.isNotBlank(s)){
List<String> serialNumberListTemp = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).distinct().collect(Collectors.toList()); serialNumberS.add(s);
}
//虚拟清单数据
LambdaQueryWrapper<DummyInventoryInfoEO> wrapperTemp = new LambdaQueryWrapper<>();
wrapperTemp.in(DummyInventoryInfoEO::getSerialNumber,serialNumberList).in(DummyInventoryInfoEO::getDummyInventoryBaseId,dummyInventoryInfoEOTemp.getDummyInventoryBaseId());
List<DummyInventoryInfoEO> dummyInventoryInfoEOList = this.list(wrapperTemp);
List<String> serialNumberTempList = dummyInventoryInfoEOList.stream().map(DummyInventoryInfoEO::getSerialNumber).collect(Collectors.toList());
if(serialNumberList.size() != serialNumberListTemp.size()){
//存在文档库没有的数据
List<String> collect = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList());
List<String> serialNumbers = serialNumberList.stream().filter(e -> !collect.contains(e)).collect(Collectors.toList());
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumbers,",")+"文档库中不存在,不能添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumbers,",")+" does not exist in the document library and cannot be added");
} }
} }
if(dummyInventoryInfoEOList.size() > 0){ if(serialNumberS.size() != 0){
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){ LambdaQueryWrapper<BussDocumentLibraryEO> wrapper = new LambdaQueryWrapper<>();
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+"已存在,不能重复添加"); wrapper.in(BussDocumentLibraryEO::getSerialNumber,serialNumberS);
}else{ List<BussDocumentLibraryEO> bussDocumentLibraryEOList = iBussDocumentLibraryEOService.list(wrapper);
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+" already exists and cannot be added again"); //文档库中可能存在重复的标准号
List<String> serialNumberListTemp = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).distinct().collect(Collectors.toList());
//虚拟清单数据
LambdaQueryWrapper<DummyInventoryInfoEO> wrapperTemp = new LambdaQueryWrapper<>();
wrapperTemp.in(DummyInventoryInfoEO::getSerialNumber,serialNumberS).in(DummyInventoryInfoEO::getDummyInventoryBaseId,dummyInventoryInfoEOTemp.getDummyInventoryBaseId());
List<DummyInventoryInfoEO> dummyInventoryInfoEOList = this.list(wrapperTemp);
List<String> serialNumberTempList = dummyInventoryInfoEOList.stream().map(DummyInventoryInfoEO::getSerialNumber).collect(Collectors.toList());
if(serialNumberS.size() != serialNumberListTemp.size()){
//存在文档库没有的数据
List<String> collect = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList());
List<String> serialNumbers = serialNumberS.stream().filter(e -> !collect.contains(e)).collect(Collectors.toList());
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumbers,",")+"文档库中不存在,不能添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumbers,",")+" does not exist in the document library and cannot be added");
}
}
if(dummyInventoryInfoEOList.size() > 0){
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+"已存在,不能重复添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+" already exists and cannot be added again");
}
}
//通过编号将导入的数据与文档库进行关联
for (DummyInventoryInfoEO dummyInventoryInfoEO : dataList) {
List<BussDocumentLibraryEO> collect = bussDocumentLibraryEOList.stream()
.filter(e -> e.getSerialNumber().equals(dummyInventoryInfoEO.getSerialNumber())).collect(Collectors.toList());
dummyInventoryInfoEO.setTitle(collect.get(0).getTitle());
dummyInventoryInfoEO.setState(collect.get(0).getState());
dummyInventoryInfoEO.setCorrespondingStandard(collect.get(0).getCorrespondingStandard());
dummyInventoryInfoEO.setTechnologyTerritory(collect.get(0).getTechnologyTerritory());
dummyInventoryInfoEO.setRegion(collect.get(0).getRegion());
dummyInventoryInfoEO.setShi4Yong4Fan4Wei2(collect.get(0).getShi4Yong4Fan4Wei2());
dummyInventoryInfoEO.setImplementTime(collect.get(0).getImplementTime());
dummyInventoryInfoEO.setXin1Che1Xing2Shi2Shi1Ri4Qi1(collect.get(0).getXin1Che1Xing2Shi2Shi1Ri4Qi1());
} }
} }
//通过编号将导入的数据与文档库进行关联
for (DummyInventoryInfoEO dummyInventoryInfoEO : dataList) {
List<BussDocumentLibraryEO> collect = bussDocumentLibraryEOList.stream()
.filter(e -> e.getSerialNumber().equals(dummyInventoryInfoEO.getSerialNumber())).collect(Collectors.toList());
dummyInventoryInfoEO.setTitle(collect.get(0).getTitle());
dummyInventoryInfoEO.setState(collect.get(0).getState());
dummyInventoryInfoEO.setCorrespondingStandard(collect.get(0).getCorrespondingStandard());
dummyInventoryInfoEO.setTechnologyTerritory(collect.get(0).getTechnologyTerritory());
dummyInventoryInfoEO.setRegion(collect.get(0).getRegion());
dummyInventoryInfoEO.setShi4Yong4Fan4Wei2(collect.get(0).getShi4Yong4Fan4Wei2());
dummyInventoryInfoEO.setImplementTime(collect.get(0).getImplementTime());
dummyInventoryInfoEO.setXin1Che1Xing2Shi2Shi1Ri4Qi1(collect.get(0).getXin1Che1Xing2Shi2Shi1Ri4Qi1());
}
return bussDocumentLibraryEOList;
} }
private String template(String zipEntryName, DummyInventoryInfoEO dummyInventoryInfoEO, private String template(String zipEntryName, DummyInventoryInfoEO dummyInventoryInfoEO,
@@ -1137,7 +1159,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
private String pullSingle(List<SysDictItem> dictItemList, DummyInventoryInfoEO dummyInventoryInfoEO, private String pullSingle(List<SysDictItem> dictItemList, DummyInventoryInfoEO dummyInventoryInfoEO,
String errorMsg, String value,List<String> msgList, String errorMsg, String value,List<String> msgList,
String nameCn,String nameEn) { String nameCn,String nameEn,String dictCode) {
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
if(value.contains(",")){ if(value.contains(",")){
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){ if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
@@ -1147,7 +1169,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
} }
msgList.add(errorMsg); msgList.add(errorMsg);
}else{ }else{
List<SysDictItem> collect = dictItemList.stream().filter(e -> value.equals(e.getItemText())).collect(Collectors.toList()); List<SysDictItem> collect = dictItemList.stream().filter(e ->dictCode.equals(e.getDictCode()) && value.equals(e.getItemText())).collect(Collectors.toList());
if (collect.size() == 0) { if (collect.size() == 0) {
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){ if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
errorMsg += nameCn + "中的" + value + "与数据字典不匹配"; errorMsg += nameCn + "中的" + value + "与数据字典不匹配";
@@ -1164,11 +1186,11 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
} }
private String pullMore(List<SysDictItem> dictItemList, DummyInventoryInfoEO dummyInventoryInfoEO, private String pullMore(List<SysDictItem> dictItemList, DummyInventoryInfoEO dummyInventoryInfoEO,
String errorMsg, String value,List<String> msgList, String errorMsg, String value,List<String> msgList,
String nameCn,String nameEn) { String nameCn,String nameEn,String dictCode) {
List<String> valueList = new ArrayList<>(); List<String> valueList = new ArrayList<>();
if (StringUtils.isNotBlank(value)) { if (StringUtils.isNotBlank(value)) {
List<String> list = Arrays.asList(value.split(",")); List<String> list = Arrays.asList(value.split(","));
List<SysDictItem> collect = dictItemList.stream().filter(e -> list.contains(e.getItemText())).collect(Collectors.toList()); List<SysDictItem> collect = dictItemList.stream().filter(e -> dictCode.equals(e.getDictCode()) && list.contains(e.getItemText())).collect(Collectors.toList());
if(list.size() == collect.size()){ if(list.size() == collect.size()){
valueList = collect.stream().map(SysDictItem::getItemValue).collect(Collectors.toList()); valueList = collect.stream().map(SysDictItem::getItemValue).collect(Collectors.toList());
}else{ }else{
@@ -1192,9 +1214,9 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
if(StringUtils.isBlank(serialNumber)){ if(StringUtils.isBlank(serialNumber)){
errorCount ++; errorCount ++;
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){ if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
errorMsg += "编号为必填项,不能为空"; errorMsg += nameCn + "为必填项,不能为空";
}else{ }else{
errorMsg += "serial number this parameter is mandatory and cannot be empty"; errorMsg += nameEn + " this parameter is mandatory and cannot be empty";
} }
msgList.add(errorMsg); msgList.add(errorMsg);
} }
@@ -1,5 +1,7 @@
package com.jero.modules.dummy.util; package com.jero.modules.dummy.util;
import org.apache.commons.lang3.StringUtils;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.util.*; import java.util.*;
@@ -23,13 +25,24 @@ public class ListDiff <T> {
} }
if( ! equals(v1, v2) && !f.getName().contains("create") if( ! equals(v1, v2) && !f.getName().contains("create")
&& !f.getName().contains("update") && !f.getName().equals("id")){ && !f.getName().contains("update") && !f.getName().equals("id")){
if (StringUtils.isBlank(v1.toString())){
v1 = "null";
}
if (StringUtils.isBlank(v2.toString())){
v2 = "null";
}
StringBuilder v1String= new StringBuilder(String.valueOf(v1)); StringBuilder v1String= new StringBuilder(String.valueOf(v1));
StringBuilder v2String= new StringBuilder(String.valueOf(v2)); StringBuilder v2String= new StringBuilder(String.valueOf(v2));
if(f.getName().contains("erritory") || f.getName().contains("emplate")){ if(f.getName().contains("erritory") || f.getName().contains("emplate")
|| f.getName().equals(("shi4Yong4Fan4Wei2")) || f.getName().equals("region")){
result.put(f.getName(), v1String.append("|").append(v2String).toString()); result.put(f.getName(), v1String.append("|").append(v2String).toString());
}else { }else {
result.put(f.getName(), v1String.append(",").append(v2String).toString()); //
// if (StringUtils.isBlank(v2String)) {
// result.put(f.getName(), v1String.append(",").append("null").toString());
// }else {
result.put(f.getName(), v1String.append(",").append(v2String).toString());
// }
} }
} }
} }
@@ -138,8 +138,9 @@ public class ProjectTaskPlanningController extends JeroController<ProjectTaskPla
@AutoLog(value = "法规,认证任务计划 (各阶段确认进度) 表-通过projectId查询") @AutoLog(value = "法规,认证任务计划 (各阶段确认进度) 表-通过projectId查询")
@ApiOperation(value="法规,认证任务计划 (各阶段确认进度) 表-通过projectId查询", notes="法规,认证任务计划 (各阶段确认进度) 表-通过projectId查询") @ApiOperation(value="法规,认证任务计划 (各阶段确认进度) 表-通过projectId查询", notes="法规,认证任务计划 (各阶段确认进度) 表-通过projectId查询")
@GetMapping(value = "/queryByProjectId") @GetMapping(value = "/queryByProjectId")
public Result<?> queryByProjectId(@RequestParam(name="projectId",required=true) String projectId) { public Result<?> queryByProjectId(@RequestParam(name="projectId",required=true) String projectId,
List<TimeNodeVO> projectTaskPlanning = projectTaskPlanningService.queryByProjectId(projectId); @RequestParam(name="cut",required=true) String cut) {
List<TimeNodeVO> projectTaskPlanning = projectTaskPlanningService.queryByProjectId(projectId,cut);
if(projectTaskPlanning==null) { if(projectTaskPlanning==null) {
return Result.error("未找到对应数据"); return Result.error("未找到对应数据");
} }
@@ -1,21 +1,21 @@
package com.jero.modules.project.enums; package com.jero.modules.project.enums;
public enum ProjectTaskPlanningNameEnum { public enum ProjectTaskPlanningNameEnum {
LIST_CONFIRMATION("法规清单确认"), LIST_CONFIRMATION("法规清单确认","listConfirmation"),
LEGAL_TASK_CONFIRMATION("法规任务确认"), LEGAL_TASK_CONFIRMATION("法规任务确认","legalTaskConfirmation"),
DESIGN_DEADLINE("设计符合性确认截止时间"), DESIGN_DEADLINE("设计符合性确认截止时间","designDeadline"),
PREHOMO_DEADLINE("PreHomo确认截止时间"), PREHOMO_DEADLINE("PreHomo确认截止时间","prehomoDeadline"),
ATTESTATION_START_TIME("认证开始"), ATTESTATION_START_TIME("认证开始","attestationStartTime"),
ATTESTATION_END_TIME("认证结束"), ATTESTATION_END_TIME("认证结束","attestationEndTime"),
VERIFY_DEADLINE("验证符合性确认截止时间"), VERIFY_DEADLINE("验证符合性确认截止时间","verifyDeadline"),
; ;
String name; String name;
String value;
ProjectTaskPlanningNameEnum(String name, String value) {
ProjectTaskPlanningNameEnum(String name) {
this.name = name; this.name = name;
this.value = value;
} }
public String getName() { public String getName() {
@@ -25,4 +25,12 @@ public enum ProjectTaskPlanningNameEnum {
public void setName(String name) { public void setName(String name) {
this.name = name; this.name = name;
} }
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
} }
@@ -52,7 +52,7 @@ public interface IProjectTaskPlanningService extends IService<ProjectTaskPlannin
* @param projectId * @param projectId
* @return * @return
*/ */
List<TimeNodeVO> queryByProjectId(String projectId); List<TimeNodeVO> queryByProjectId(String projectId,String cut);
/** /**
* 列表查询 * 列表查询
@@ -1403,7 +1403,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}else{ }else{
titleOne = "*serial number,subtitle,WVTA ID," + titleOne = "*serial number,subtitle,WVTA ID," +
"*implementation category,certification type,*certification level," + "*implementation category,certification type,*certification level," +
"*area of responsibility,*laws engineer,*authentication engineer,*engineering interface person," + "*area of responsibility,laws engineer,authentication engineer,engineering interface person," +
"remarks," + "remarks," +
"design compliance check,pre-homo check,validation compliance chech"; "design compliance check,pre-homo check,validation compliance chech";
titleTwo = "type of deliverables,deliverable template,initiator,person liable,deadline," + titleTwo = "type of deliverables,deliverable template,initiator,person liable,deadline," +
@@ -1411,7 +1411,6 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
"type of deliverables,deliverable template,initiator,person liable,deadline"; "type of deliverables,deliverable template,initiator,person liable,deadline";
} }
List<String> list = Arrays.asList(titleOne.split(",")); List<String> list = Arrays.asList(titleOne.split(","));
int index = 0; int index = 0;
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){ if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
@@ -1599,12 +1598,21 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
public void importData(MultipartFile file, ProjectLawsInventoryEO projectLawsInventoryEO) { public void importData(MultipartFile file, ProjectLawsInventoryEO projectLawsInventoryEO) {
String title = ""; String title = "";
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){ if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
title = "*编号,子标题,WVTA ID,实施类别,认证类型,*认证级别,*责任领域,法规工程师,认证工程师,工程接口人,备注," + title = "*编号,子标题,WVTA ID," +
"实施类别,认证类型,*认证级别," +
"*责任领域,法规工程师,认证工程师,工程接口人," +
"备注," +
"设计交付物类型,设计交付物模板,设计发起人,设计责任人,设计截止时间," + "设计交付物类型,设计交付物模板,设计发起人,设计责任人,设计截止时间," +
"pre交付物类型,pre交付物模板,pre发起人,pre责任人,pre截止时间," + "pre交付物类型,pre交付物模板,pre发起人,pre责任人,pre截止时间," +
"验证交付物类型,验证交付物模板,验证发起人,验证责任人,验证截止时间"; "验证交付物类型,验证交付物模板,验证发起人,验证责任人,验证截止时间";
}else{ }else{
title = "*serial number,subtitle,WVTA ID," +
"*implementation category,certification type,*certification level," +
"*area of responsibility,laws engineer,authentication engineer,engineering interface person," +
"remarks," +
"design type of deliverables,design deliverable template,design initiator,design person liable,design deadline," +
"pre type of deliverables,pre deliverable template,pre initiator,pre person liable,pre deadline," +
"verify type of deliverables,verify deliverable template,verify initiator,verify person liable,verify deadline";
} }
int pos = file.getOriginalFilename().lastIndexOf("."); int pos = file.getOriginalFilename().lastIndexOf(".");
@@ -1727,17 +1735,28 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
if(j > 10){ if(j > 10){
String flag = ""; String flag = "";
if(10 < j && j < 16){ if(10 < j && j < 16){
flag ="设计"; if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
flag ="设计";
}else{
flag ="design ";
}
key = flag + headerCell.getStringCellValue(); key = flag + headerCell.getStringCellValue();
} }
if(15 < j && j < 21){ if(15 < j && j < 21){
flag ="pre"; if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
flag ="pre";
}else{
flag ="pre ";
}
key = flag + headerCell.getStringCellValue(); key = flag + headerCell.getStringCellValue();
} }
if(20 < j && j < 26){ if(20 < j && j < 26){
flag ="验证"; if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
flag ="验证";
}else{
flag ="verify ";
}
key = flag + headerCell.getStringCellValue(); key = flag + headerCell.getStringCellValue();
} }
headerSb.append(key + ","); headerSb.append(key + ",");
} }
@@ -1783,6 +1802,8 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
ProjectLawsInventoryEO projectLawsInventoryEOTemp = JSON.parseObject(JSON.toJSONString(stringStringMap), ProjectLawsInventoryEO.class); ProjectLawsInventoryEO projectLawsInventoryEOTemp = JSON.parseObject(JSON.toJSONString(stringStringMap), ProjectLawsInventoryEO.class);
projectLawsInventoryEOTemp.setCut(projectLawsInventoryEO.getCut()); projectLawsInventoryEOTemp.setCut(projectLawsInventoryEO.getCut());
projectLawsInventoryEOTemp.setProjectLibraryId(projectLawsInventoryEO.getProjectLibraryId()); projectLawsInventoryEOTemp.setProjectLibraryId(projectLawsInventoryEO.getProjectLibraryId());
projectLawsInventoryEOTemp.setTaskAffirmStatus(TaskAffirmStatusEnum.NOT_STARTED.getValue());
projectLawsInventoryEOTemp.setInventoryAffirmStatus(InventoryAffirmStatusEnum.NOT_STARTED.getValue());
datas.add(projectLawsInventoryEOTemp); datas.add(projectLawsInventoryEOTemp);
} }
} }
@@ -1829,10 +1850,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
List<String> msgList = new ArrayList<>(); List<String> msgList = new ArrayList<>();
String value = ""; String value = "";
boolean flag = true; boolean flag = true;
//iProjectRelatedPersonnelService
//编号验证 //编号验证
// List<BussDocumentLibraryEO> bussDocumentLibraryEOList = verifySerialNumber(dataList,projectLawsInventoryEOTemp); verifySerialNumber(dataList,projectLawsInventoryEOTemp);
for (ProjectLawsInventoryEO projectLawsInventoryEO : dataList) { for (ProjectLawsInventoryEO projectLawsInventoryEO : dataList) {
i++; i++;
String errorMsg = ""; String errorMsg = "";
@@ -1897,7 +1917,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//实施类别(单选不必填) //实施类别(单选不必填)
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, implementType,msgList,"实施类别","implementation category"); value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, implementType,msgList,"实施类别","implementation category","implement_type");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setImplementType(value); projectLawsInventoryEO.setImplementType(value);
} }
@@ -1914,7 +1934,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
// dummyInventoryInfoEO.setImplementTime(implementTime); // dummyInventoryInfoEO.setImplementTime(implementTime);
// } // }
//认证类型(单选不必填) //认证类型(单选不必填)
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, attestationType,msgList,"认证类型","certification type"); value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, attestationType,msgList,"认证类型","certification type","attestation_type");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setAttestationType(value); projectLawsInventoryEO.setAttestationType(value);
} }
@@ -1922,7 +1942,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//认证级别(单选必填) //认证级别(单选必填)
flag = must(projectLawsInventoryEO, errorMsg, msgList, attestationRank,"认证级别","certification level"); flag = must(projectLawsInventoryEO, errorMsg, msgList, attestationRank,"认证级别","certification level");
if(flag){ if(flag){
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, attestationRank,msgList,"认证级别","certification level"); value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, attestationRank,msgList,"认证级别","certification level","attestation_rank");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setAttestationRank(value); projectLawsInventoryEO.setAttestationRank(value);
} }
@@ -1931,7 +1951,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//责任领域(多选必填) //责任领域(多选必填)
flag = must(projectLawsInventoryEO, errorMsg, msgList, dutyTerritory,"责任领域","area of responsibility"); flag = must(projectLawsInventoryEO, errorMsg, msgList, dutyTerritory,"责任领域","area of responsibility");
if(flag){ if(flag){
value = pullMore(dictItemList, projectLawsInventoryEO, errorMsg, dutyTerritory,msgList,"责任领域","area of responsibility"); value = pullMore(dictItemList, projectLawsInventoryEO, errorMsg, dutyTerritory,msgList,"责任领域","area of responsibility","duty_territory");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setDutyTerritory(value); projectLawsInventoryEO.setDutyTerritory(value);
} }
@@ -1945,6 +1965,8 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
List<Map<String, String>> mapCertificationList = (List<Map<String, String>>) objectMap.get("certificationEngineerList"); List<Map<String, String>> mapCertificationList = (List<Map<String, String>>) objectMap.get("certificationEngineerList");
//工程接口人 //工程接口人
List<Map<String, String>> mapPersonList = (List<Map<String, String>>) objectMap.get("engineeringInterfacePersonList"); List<Map<String, String>> mapPersonList = (List<Map<String, String>>) objectMap.get("engineeringInterfacePersonList");
//所有人
List<Map<String, String>> allPersonList = (List<Map<String, String>>) objectMap.get("allPersonList");
String nameCn = ""; String nameCn = "";
String nameEn = ""; String nameEn = "";
@@ -1953,7 +1975,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
nameCn = "法规工程师"; nameCn = "法规工程师";
nameEn = "regulatory engineer"; nameEn = "regulatory engineer";
//验证人员是否存在 //验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, regulationOwnerId, mapLawList,nameCn,nameEn); personnelVerify(projectLawsInventoryEO, errorMsg, msgList, regulationOwnerId, mapLawList,nameCn,nameEn);
} }
//认证工程师 //认证工程师
@@ -1961,7 +1983,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
nameCn = "认证工程师"; nameCn = "认证工程师";
nameEn = "certification engineer "; nameEn = "certification engineer ";
//验证人员是否存在 //验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, homologationEngineerId, mapCertificationList,nameCn,nameEn); personnelVerify(projectLawsInventoryEO, errorMsg, msgList, homologationEngineerId, mapCertificationList,nameCn,nameEn);
} }
//工程接口人 //工程接口人
@@ -1969,13 +1991,13 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
nameCn = "工程接口人"; nameCn = "工程接口人";
nameEn = "engineering interface person "; nameEn = "engineering interface person ";
//验证人员是否存在 //验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, homologationEngineerId, mapPersonList,nameCn,nameEn); personnelVerify(projectLawsInventoryEO, errorMsg, msgList, homologationEngineerId, mapPersonList,nameCn,nameEn);
} }
//设计 //设计
//交付物类型 //交付物类型
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, designDeliverableType,msgList,"交付物类型","type of deliverables"); value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, designDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setDesignDeliverableType(value); projectLawsInventoryEO.setDesignDeliverableType(value);
} }
@@ -1987,15 +2009,19 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
} }
//发起人 //发起人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, designInitiator,msgList,"发起人","initiator"); if(StringUtils.isNotBlank(designInitiator)){
if(StringUtils.isNotBlank(value)){ nameCn = "设计符合性确认发起人";
projectLawsInventoryEO.setDesignInitiator(value); nameEn = "confirm design conformance initiator ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, designInitiator, allPersonList,nameCn,nameEn);
} }
//责任人 //责任人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, designDuty,msgList,"责任人","person liable"); if(StringUtils.isNotBlank(designDuty)){
if(StringUtils.isNotBlank(value)){ nameCn = "设计符合性确认责任人";
projectLawsInventoryEO.setDesignDuty(value); nameEn = "confirm design conformance responsible";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, designDuty, allPersonList,nameCn,nameEn);
} }
//截止时间 //截止时间
@@ -2007,7 +2033,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//pre //pre
//交付物类型 //交付物类型
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, prehomoDeliverableType,msgList,"交付物类型","type of deliverables"); value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, prehomoDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setPrehomoDeliverableType(value); projectLawsInventoryEO.setPrehomoDeliverableType(value);
} }
@@ -2019,15 +2045,19 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
} }
//发起人 //发起人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, prehomoInitiator,msgList,"发起人","initiator"); if(StringUtils.isNotBlank(prehomoInitiator)){
if(StringUtils.isNotBlank(value)){ nameCn = "Pre-homo确认发起人";
projectLawsInventoryEO.setPrehomoInitiator(value); nameEn = "Pre-homo identifies the initiator ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, prehomoInitiator, allPersonList,nameCn,nameEn);
} }
//责任人 //责任人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, prehomoDuty,msgList,"责任人","person liable"); if(StringUtils.isNotBlank(prehomoDuty)){
if(StringUtils.isNotBlank(value)){ nameCn = "Pre-homo确认责任人";
projectLawsInventoryEO.setPrehomoDuty(value); nameEn = "Pre-homo identifies the person responsible";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,prehomoDuty, allPersonList,nameCn,nameEn);
} }
//截止时间 //截止时间
@@ -2038,7 +2068,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//确认 //确认
//交付物类型 //交付物类型
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, verifyDeliverableType,msgList,"交付物类型","type of deliverables"); value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, verifyDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setVerifyDeliverableType(value); projectLawsInventoryEO.setVerifyDeliverableType(value);
} }
@@ -2051,17 +2081,22 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//发起人 //发起人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, verifyInitiator,msgList,"发起人","initiator"); if(StringUtils.isNotBlank(verifyInitiator)){
if(StringUtils.isNotBlank(value)){ nameCn = "验证符合性确认发起人";
projectLawsInventoryEO.setVerifyInitiator(value); nameEn = "verify conformance validates the originator ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,verifyInitiator, allPersonList,nameCn,nameEn);
} }
//责任人 //责任人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, verifyDuty,msgList,"责任人","person liable"); if(StringUtils.isNotBlank(verifyDuty)){
if(StringUtils.isNotBlank(value)){ nameCn = "验证符合性确认责任人";
projectLawsInventoryEO.setVerifyDuty(value); nameEn = "verify conformance to confirm the responsible person ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,verifyDuty, allPersonList,nameCn,nameEn);
} }
//截止时间 //截止时间
flag = dateVerify(projectLawsInventoryEO, errorMsg, verifyDueDate,msgList,"在产车实施日期","on the production vehicle implementation date"); flag = dateVerify(projectLawsInventoryEO, errorMsg, verifyDueDate,msgList,"在产车实施日期","on the production vehicle implementation date");
if(flag){ if(flag){
@@ -2084,10 +2119,54 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
} }
} }
private void verifySerialNumber(List<ProjectLawsInventoryEO> dataList,ProjectLawsInventoryEO projectLawsInventoryEOTemp){
//1. 验证标准号在文档库中是否存在
List<String> serialNumberList = dataList.stream().map(ProjectLawsInventoryEO::getSerialNumber).collect(Collectors.toList());
LambdaQueryWrapper<BussDocumentLibraryEO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(BussDocumentLibraryEO::getSerialNumber,serialNumberList);
List<BussDocumentLibraryEO> bussDocumentLibraryEOList = iBussDocumentLibraryEOService.list(wrapper);
//文档库中可能存在重复的标准号
List<String> serialNumberListTemp = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).distinct().collect(Collectors.toList());
if(serialNumberList.size() != serialNumberListTemp.size()){
//存在文档库没有的数据
List<String> collect = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList());
List<String> serialNumbers = serialNumberList.stream().filter(e -> !collect.contains(e)).collect(Collectors.toList());
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumbers,",")+"文档库中不存在,不能添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumbers,",")+" does not exist in the document library and cannot be added");
}
}
//2. 验证标准号在法规清单中是否添加过
LambdaQueryWrapper<ProjectLawsInventoryEO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(ProjectLawsInventoryEO::getSerialNumber,serialNumberList).in(ProjectLawsInventoryEO::getProjectLibraryId,projectLawsInventoryEOTemp.getProjectLibraryId());
List<ProjectLawsInventoryEO> projectLawsInventoryEOList = this.list(lambdaQueryWrapper);
List<String> serialNumberTempList = projectLawsInventoryEOList.stream().map(ProjectLawsInventoryEO::getSerialNumber).collect(Collectors.toList());
if(projectLawsInventoryEOList.size() > 0){
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+"已存在,不能重复添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+" already exists and cannot be added again");
}
}
//3. 通过编号将导入的数据与文档库进行关联
for (ProjectLawsInventoryEO projectLawsInventoryEO : dataList) {
List<BussDocumentLibraryEO> collect = bussDocumentLibraryEOList.stream()
.filter(e -> e.getSerialNumber().equals(projectLawsInventoryEO.getSerialNumber())).collect(Collectors.toList());
projectLawsInventoryEO.setTitle(collect.get(0).getTitle());//标题
projectLawsInventoryEO.setCorrespondingStandard(collect.get(0).getCorrespondingStandard());//对应标准
projectLawsInventoryEO.setRegion(collect.get(0).getRegion());//适用地区
projectLawsInventoryEO.setImplementTime(collect.get(0).getImplementTime());//在产车实施日期
projectLawsInventoryEO.setXin1Che1Xing2Shi2Shi1Ri4Qi1(collect.get(0).getXin1Che1Xing2Shi2Shi1Ri4Qi1());//新车实施日期
}
}
private void personnelVerify(ProjectLawsInventoryEO projectLawsInventoryEO, private void personnelVerify(ProjectLawsInventoryEO projectLawsInventoryEO,
String errorMsg, String regulationOwnerId, String errorMsg, List<String> msgList,
List<Map<String, String>> mapList, String regulationOwnerId,
String nameCn,String nameEn) { List<Map<String, String>> mapList,
String nameCn,String nameEn) {
//单选 //单选
if(regulationOwnerId.contains(",")){ if(regulationOwnerId.contains(",")){
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){ if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
@@ -2095,6 +2174,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}else{ }else{
errorMsg += "Only one user name can be entered for"+ nameEn +"import"; errorMsg += "Only one user name can be entered for"+ nameEn +"import";
} }
msgList.add(errorMsg);
} }
if(mapList.size() != 0){ if(mapList.size() != 0){
@@ -2113,6 +2193,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}else{ }else{
errorMsg += nameEn+regulationOwnerId+"does not match a person under the area of responsibility in the relevant person list"; errorMsg += nameEn+regulationOwnerId+"does not match a person under the area of responsibility in the relevant person list";
} }
msgList.add(errorMsg);
} }
}else{ }else{
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){ if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
@@ -2120,6 +2201,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}else{ }else{
errorMsg += nameEn+regulationOwnerId+"does not match a person under the area of responsibility in the relevant person list"; errorMsg += nameEn+regulationOwnerId+"does not match a person under the area of responsibility in the relevant person list";
} }
msgList.add(errorMsg);
} }
} }
@@ -2150,9 +2232,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
if(StringUtils.isBlank(serialNumber)){ if(StringUtils.isBlank(serialNumber)){
errorCount ++; errorCount ++;
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){ if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
errorMsg += "编号为必填项,不能为空"; errorMsg += nameCn + "为必填项,不能为空";
}else{ }else{
errorMsg += "serial number this parameter is mandatory and cannot be empty"; errorMsg += nameEn + "this parameter is mandatory and cannot be empty";
} }
msgList.add(errorMsg); msgList.add(errorMsg);
} }
@@ -2165,11 +2247,11 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
private String pullMore(List<SysDictItem> dictItemList, ProjectLawsInventoryEO projectLawsInventoryEO, private String pullMore(List<SysDictItem> dictItemList, ProjectLawsInventoryEO projectLawsInventoryEO,
String errorMsg, String value,List<String> msgList, String errorMsg, String value,List<String> msgList,
String nameCn,String nameEn) { String nameCn,String nameEn,String dictCode) {
List<String> valueList = new ArrayList<>(); List<String> valueList = new ArrayList<>();
if (StringUtils.isNotBlank(value)) { if (StringUtils.isNotBlank(value)) {
List<String> list = Arrays.asList(value.split(",")); List<String> list = Arrays.asList(value.split(","));
List<SysDictItem> collect = dictItemList.stream().filter(e -> list.contains(e.getItemText())).collect(Collectors.toList()); List<SysDictItem> collect = dictItemList.stream().filter(e ->dictCode.equals(e.getDictCode()) && list.contains(e.getItemText())).collect(Collectors.toList());
if(list.size() == collect.size()){ if(list.size() == collect.size()){
valueList = collect.stream().map(SysDictItem::getItemValue).collect(Collectors.toList()); valueList = collect.stream().map(SysDictItem::getItemValue).collect(Collectors.toList());
}else{ }else{
@@ -2189,7 +2271,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
private String pullSingle(List<SysDictItem> dictItemList, ProjectLawsInventoryEO projectLawsInventoryEO, private String pullSingle(List<SysDictItem> dictItemList, ProjectLawsInventoryEO projectLawsInventoryEO,
String errorMsg, String value,List<String> msgList, String errorMsg, String value,List<String> msgList,
String nameCn,String nameEn) { String nameCn,String nameEn,String dictCode) {
if(StringUtils.isNotBlank(value)){ if(StringUtils.isNotBlank(value)){
if(value.contains(",")){ if(value.contains(",")){
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){ if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
@@ -2199,7 +2281,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
} }
msgList.add(errorMsg); msgList.add(errorMsg);
}else{ }else{
List<SysDictItem> collect = dictItemList.stream().filter(e -> value.equals(e.getItemText())).collect(Collectors.toList()); List<SysDictItem> collect = dictItemList.stream().filter(e ->dictCode.equals(e.getDictCode()) && value.equals(e.getItemText())).collect(Collectors.toList());
if (collect.size() == 0) { if (collect.size() == 0) {
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){ if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
errorMsg += nameCn + "中的" + value + "与数据字典不匹配"; errorMsg += nameCn + "中的" + value + "与数据字典不匹配";
@@ -2256,34 +2338,66 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
if (field == null) return null; if (field == null) return null;
switch (field) { switch (field) {
case "*编号": return "serialNumber"; case "*编号": return "serialNumber";
case "*serial number": return "serialNumber";
case "标题": return "title"; case "标题": return "title";
case "子标题": return "subtitle"; case "子标题": return "subtitle";
case "subtitle": return "subtitle";
case "适用范围": return "shi4Yong4Fan4Wei2"; case "适用范围": return "shi4Yong4Fan4Wei2";
case "状态": return "state"; case "状态": return "state";
case "对应标准": return "correspondingStandard"; case "对应标准": return "correspondingStandard";
case "实施类别": return "implementType"; case "实施类别": return "implementType";
case "*implementation category": return "implementType";
case "新车实施日期": return "xin1Che1Xing2Shi2Shi1Ri4Qi1"; case "新车实施日期": return "xin1Che1Xing2Shi2Shi1Ri4Qi1";
case "在产车实施日期": return "implementTime"; case "在产车实施日期": return "implementTime";
case "WVTA ID": return "wvtaId"; case "WVTA ID": return "wvtaId";
case "认证类型": return "attestationType"; case "认证类型": return "attestationType";
case "certification type": return "attestationType";
case "*认证级别": return "attestationRank"; case "*认证级别": return "attestationRank";
case "*certification level": return "attestationRank";
case "技术领域": return "technologyTerritory"; case "技术领域": return "technologyTerritory";
case "*责任领域": return "dutyTerritory"; case "*责任领域": return "dutyTerritory";
case "*area of responsibility": return "dutyTerritory";
case "适用地区": return "region"; case "适用地区": return "region";
case "备注": return "remark"; case "备注": return "remark";
case "remark": return "remark";
case "法规工程师": return "regulationOwnerId";
case "laws engineer": return "regulationOwnerId";
case "认证工程师": return "homologationEngineerId";
case "authentication engineer": return "homologationEngineerId";
case "工程接口人": return "engineeringInterfacePerson";
case "engineering interface person": return "engineeringInterfacePerson";
case "设计交付物类型": return "designDeliverableType"; case "设计交付物类型": return "designDeliverableType";
case "design type of deliverables": return "designDeliverableType";
case "设计交付物模板": return "designDeliverableTemplate"; case "设计交付物模板": return "designDeliverableTemplate";
case "design deliverable template": return "designDeliverableTemplate";
case "设计发起人": return "designInitiator"; case "设计发起人": return "designInitiator";
case "design initiator": return "designInitiator";
case "设计责任人": return "designDuty"; case "设计责任人": return "designDuty";
case "design person liable": return "designDuty";
case "设计截止时间": return "designDueDate";
case "design deadline": return "designDueDate";
case "pre交付物类型": return "prehomoDeliverableType"; case "pre交付物类型": return "prehomoDeliverableType";
case "pre type of deliverables": return "prehomoDeliverableType";
case "pre交付物模板": return "prehomoDeliverableTemplate"; case "pre交付物模板": return "prehomoDeliverableTemplate";
case "pre deliverable template": return "prehomoDeliverableTemplate";
case "pre发起人": return "prehomoInitiator"; case "pre发起人": return "prehomoInitiator";
case "pre initiator": return "prehomoInitiator";
case "pre责任人": return "prehomoDuty"; case "pre责任人": return "prehomoDuty";
case "pre person liable": return "prehomoDuty";
case "pre截止时间": return "prehomoDueDate";
case "pre deadline": return "prehomoDueDate";
case "验证交付物类型": return "verifyDeliverableType"; case "验证交付物类型": return "verifyDeliverableType";
case "verify type of deliverables": return "verifyDeliverableType";
case "验证交付物模板": return "verifyDeliverableTemplate"; case "验证交付物模板": return "verifyDeliverableTemplate";
case "verify deliverable template": return "verifyDeliverableTemplate";
case "验证发起人": return "verifyInitiator"; case "验证发起人": return "verifyInitiator";
case "verify initiator": return "verifyInitiator";
case "验证责任人": return "verifyDuty"; case "验证责任人": return "verifyDuty";
case "verify person liable": return "verifyDuty";
case "验证截止时间": return "verifyDueDate";
case "verify deadline": return "verifyDueDate";
default: return null; default: return null;
//"type of deliverables,deliverable template,initiator,person liable,deadline," +
} }
} }
@@ -2,6 +2,7 @@ package com.jero.modules.project.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.CutEnum;
import com.jero.common.system.vo.LoginUser; import com.jero.common.system.vo.LoginUser;
import com.jero.modules.project.entity.ProjectTaskPlanning; import com.jero.modules.project.entity.ProjectTaskPlanning;
import com.jero.modules.project.enums.PlanStatusEnum; import com.jero.modules.project.enums.PlanStatusEnum;
@@ -89,7 +90,7 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
* @return * @return
*/ */
@Override @Override
public List<TimeNodeVO> queryByProjectId(String projectId) { public List<TimeNodeVO> queryByProjectId(String projectId,String cut) {
ProjectTaskPlanning projectTaskPlanning = projectTaskPlanningMapper.getByProjectId(projectId); ProjectTaskPlanning projectTaskPlanning = projectTaskPlanningMapper.getByProjectId(projectId);
List<TimeNodeVO> timeNodeVOS = new ArrayList<>(); List<TimeNodeVO> timeNodeVOS = new ArrayList<>();
TimeNodeVO listConfirmationVO=null; TimeNodeVO listConfirmationVO=null;
@@ -106,7 +107,13 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
if(StringUtils.isNotBlank(projectTaskPlanning.getListConfirmation().toString())) { if(StringUtils.isNotBlank(projectTaskPlanning.getListConfirmation().toString())) {
listConfirmationVO = new TimeNodeVO(); listConfirmationVO = new TimeNodeVO();
listConfirmationVO.setName(ProjectTaskPlanningNameEnum.LIST_CONFIRMATION.getName());
if(CutEnum.CN.getValue().equals(cut)){
listConfirmationVO.setName(ProjectTaskPlanningNameEnum.LIST_CONFIRMATION.getName());
}else{
listConfirmationVO.setName(ProjectTaskPlanningNameEnum.LIST_CONFIRMATION.getValue());
}
listConfirmationVO.setTime(projectTaskPlanning.getListConfirmation()); listConfirmationVO.setTime(projectTaskPlanning.getListConfirmation());
if(projectTaskPlanning.getListConfirmation().after(trueNow)){ if(projectTaskPlanning.getListConfirmation().after(trueNow)){
listConfirmationVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue()); listConfirmationVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
@@ -120,7 +127,13 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
if(!StringUtils.isEmpty(projectTaskPlanning.getLegalTaskConfirmation().toString())) { if(!StringUtils.isEmpty(projectTaskPlanning.getLegalTaskConfirmation().toString())) {
TimeNodeVO legalTaskConfirmationVO = new TimeNodeVO(); TimeNodeVO legalTaskConfirmationVO = new TimeNodeVO();
legalTaskConfirmationVO.setName(ProjectTaskPlanningNameEnum.LEGAL_TASK_CONFIRMATION.getName());
if(CutEnum.CN.getValue().equals(cut)){
legalTaskConfirmationVO.setName(ProjectTaskPlanningNameEnum.LEGAL_TASK_CONFIRMATION.getName());
}else{
legalTaskConfirmationVO.setName(ProjectTaskPlanningNameEnum.LEGAL_TASK_CONFIRMATION.getValue());
}
legalTaskConfirmationVO.setTime(projectTaskPlanning.getLegalTaskConfirmation()); legalTaskConfirmationVO.setTime(projectTaskPlanning.getLegalTaskConfirmation());
if(projectTaskPlanning.getLegalTaskConfirmation().after(trueNow)){ if(projectTaskPlanning.getLegalTaskConfirmation().after(trueNow)){
legalTaskConfirmationVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue()); legalTaskConfirmationVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
@@ -131,22 +144,36 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
} }
timeNodeVOS.add(legalTaskConfirmationVO); timeNodeVOS.add(legalTaskConfirmationVO);
} }
if(StringUtils.isNotBlank(projectTaskPlanning.getDesignDeadline().toString())) {
TimeNodeVO designDeadlineVO = new TimeNodeVO(); if(StringUtils.isNotBlank(projectTaskPlanning.getDesignDeadline().toString())) {
TimeNodeVO designDeadlineVO = new TimeNodeVO();
if(CutEnum.CN.getValue().equals(cut)){
designDeadlineVO.setName(ProjectTaskPlanningNameEnum.DESIGN_DEADLINE.getName()); designDeadlineVO.setName(ProjectTaskPlanningNameEnum.DESIGN_DEADLINE.getName());
designDeadlineVO.setTime(projectTaskPlanning.getDesignDeadline()); }else{
if(projectTaskPlanning.getDesignDeadline().after(trueNow)){ designDeadlineVO.setName(ProjectTaskPlanningNameEnum.DESIGN_DEADLINE.getValue());
designDeadlineVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
}else if(projectTaskPlanning.getDesignDeadline().before(trueNow)){
designDeadlineVO.setStatus(PlanStatusEnum.OUT_OF_DATE.getValue());
}else{
designDeadlineVO.setStatus(PlanStatusEnum.ON_GOING.getValue());
}
timeNodeVOS.add(designDeadlineVO);
} }
designDeadlineVO.setTime(projectTaskPlanning.getDesignDeadline());
if(projectTaskPlanning.getDesignDeadline().after(trueNow)){
designDeadlineVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
}else if(projectTaskPlanning.getDesignDeadline().before(trueNow)){
designDeadlineVO.setStatus(PlanStatusEnum.OUT_OF_DATE.getValue());
}else{
designDeadlineVO.setStatus(PlanStatusEnum.ON_GOING.getValue());
}
timeNodeVOS.add(designDeadlineVO);
}
if(StringUtils.isNotBlank(projectTaskPlanning.getPrehomoDeadline().toString())) { if(StringUtils.isNotBlank(projectTaskPlanning.getPrehomoDeadline().toString())) {
TimeNodeVO prehomoDeadlineVO = new TimeNodeVO(); TimeNodeVO prehomoDeadlineVO = new TimeNodeVO();
prehomoDeadlineVO.setName(ProjectTaskPlanningNameEnum.PREHOMO_DEADLINE.getName());
if(CutEnum.CN.getValue().equals(cut)){
prehomoDeadlineVO.setName(ProjectTaskPlanningNameEnum.PREHOMO_DEADLINE.getName());
}else{
prehomoDeadlineVO.setName(ProjectTaskPlanningNameEnum.PREHOMO_DEADLINE.getValue());
}
prehomoDeadlineVO.setTime(projectTaskPlanning.getPrehomoDeadline()); prehomoDeadlineVO.setTime(projectTaskPlanning.getPrehomoDeadline());
if(projectTaskPlanning.getPrehomoDeadline().after(trueNow)){ if(projectTaskPlanning.getPrehomoDeadline().after(trueNow)){
prehomoDeadlineVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue()); prehomoDeadlineVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
@@ -157,9 +184,16 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
} }
timeNodeVOS.add(prehomoDeadlineVO); timeNodeVOS.add(prehomoDeadlineVO);
} }
if(StringUtils.isNotBlank(projectTaskPlanning.getAttestationStartTime().toString())) { if(StringUtils.isNotBlank(projectTaskPlanning.getAttestationStartTime().toString())) {
TimeNodeVO attestationStartTimeVO = new TimeNodeVO(); TimeNodeVO attestationStartTimeVO = new TimeNodeVO();
attestationStartTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_START_TIME.getName());
if(CutEnum.CN.getValue().equals(cut)){
attestationStartTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_START_TIME.getName());
}else{
attestationStartTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_START_TIME.getValue());
}
attestationStartTimeVO.setTime(projectTaskPlanning.getAttestationStartTime()); attestationStartTimeVO.setTime(projectTaskPlanning.getAttestationStartTime());
if(projectTaskPlanning.getAttestationStartTime().after(trueNow)){ if(projectTaskPlanning.getAttestationStartTime().after(trueNow)){
attestationStartTimeVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue()); attestationStartTimeVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
@@ -172,7 +206,13 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
} }
if(StringUtils.isNotBlank(projectTaskPlanning.getAttestationEndTime().toString())) { if(StringUtils.isNotBlank(projectTaskPlanning.getAttestationEndTime().toString())) {
TimeNodeVO attestationEndTimeVO = new TimeNodeVO(); TimeNodeVO attestationEndTimeVO = new TimeNodeVO();
attestationEndTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_END_TIME.getName());
if(CutEnum.CN.getValue().equals(cut)){
attestationEndTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_END_TIME.getName());
}else{
attestationEndTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_END_TIME.getValue());
}
attestationEndTimeVO.setTime(projectTaskPlanning.getAttestationEndTime()); attestationEndTimeVO.setTime(projectTaskPlanning.getAttestationEndTime());
if(projectTaskPlanning.getAttestationEndTime().after(trueNow)){ if(projectTaskPlanning.getAttestationEndTime().after(trueNow)){
attestationEndTimeVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue()); attestationEndTimeVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
@@ -183,9 +223,16 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
} }
timeNodeVOS.add(attestationEndTimeVO); timeNodeVOS.add(attestationEndTimeVO);
} }
if(StringUtils.isNotBlank(projectTaskPlanning.getVerifyDeadline().toString())) { if(StringUtils.isNotBlank(projectTaskPlanning.getVerifyDeadline().toString())) {
TimeNodeVO verifyDeadlineVO = new TimeNodeVO(); TimeNodeVO verifyDeadlineVO = new TimeNodeVO();
verifyDeadlineVO.setName(ProjectTaskPlanningNameEnum.VERIFY_DEADLINE.getName());
if(CutEnum.CN.getValue().equals(cut)){
verifyDeadlineVO.setName(ProjectTaskPlanningNameEnum.VERIFY_DEADLINE.getName());
}else{
verifyDeadlineVO.setName(ProjectTaskPlanningNameEnum.VERIFY_DEADLINE.getValue());
}
verifyDeadlineVO.setTime(projectTaskPlanning.getVerifyDeadline()); verifyDeadlineVO.setTime(projectTaskPlanning.getVerifyDeadline());
if(projectTaskPlanning.getVerifyDeadline().after(trueNow)){ if(projectTaskPlanning.getVerifyDeadline().after(trueNow)){
verifyDeadlineVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue()); verifyDeadlineVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
+64 -63
View File
@@ -15,7 +15,7 @@ module.exports = {
frozen: 'frozen', frozen: 'frozen',
reset: 'reset', reset: 'reset',
putAway: 'Put away', putAway: 'Put away',
open: 'open', open: 'More',
addUser: 'add user', addUser: 'add user',
userInformation: 'user information', userInformation: 'user information',
export: 'export', export: 'export',
@@ -134,7 +134,7 @@ module.exports = {
enterMobileNumber: 'Please enter your mobile phone number', enterMobileNumber: 'Please enter your mobile phone number',
enterAddress: 'Please enter the address', enterAddress: 'Please enter the address',
address: 'address', address: 'address',
remarks: 'remarks', remarks: 'Comments',
enterComments: 'Please enter comments', enterComments: 'Please enter comments',
selectDepartmentFirst: 'Please select a department first!', selectDepartmentFirst: 'Please select a department first!',
OrganizationCode: 'Organization code', OrganizationCode: 'Organization code',
@@ -463,7 +463,7 @@ module.exports = {
charactersLength1to300: '1 - 300 characters in length', charactersLength1to300: '1 - 300 characters in length',
OnlyOneSelected: 'Only one piece of data can be selected', OnlyOneSelected: 'Only one piece of data can be selected',
OnlyPDF: 'Only PDF files can be imported', OnlyPDF: 'Only PDF files can be imported',
open: 'open', open: 'More',
away: 'away', away: 'away',
toDoProcess: 'To Do List', toDoProcess: 'To Do List',
processDone: 'Process done', processDone: 'Process done',
@@ -493,7 +493,7 @@ module.exports = {
ProcessType: 'Process type', ProcessType: 'Process type',
AddProcess: 'Add process', AddProcess: 'Add process',
RelatedItems: 'Related items', RelatedItems: 'Related items',
Sponsor: 'Sponsor', Sponsor: 'Initiator',
CurrentProcessor: 'Current processor', CurrentProcessor: 'Current processor',
LastProcessor: 'Last processor', LastProcessor: 'Last processor',
ProcessingTime: 'Processing time', ProcessingTime: 'Processing time',
@@ -534,7 +534,7 @@ module.exports = {
unsubscribeConfirm: 'unsubscribe confirm?', unsubscribeConfirm: 'unsubscribe confirm?',
confirmCancelCollection: 'confirm to cancel collection?', confirmCancelCollection: 'confirm to cancel collection?',
theRelease: 'The release date should not exceed the standard implementation date', theRelease: 'The release date should not exceed the standard implementation date',
zoneOfApplication: 'zone of application', zoneOfApplication: 'Area',
releaseDate: 'release Date', releaseDate: 'release Date',
standardImplementationTime: 'Standard implementation time', standardImplementationTime: 'Standard implementation time',
onlyPicture: 'only upload pictures!', onlyPicture: 'only upload pictures!',
@@ -582,20 +582,20 @@ module.exports = {
instructionForUse: 'instruction for use', instructionForUse: 'instruction for use',
subtitle: 'Sub-Title', subtitle: 'Sub-Title',
scopeOfApplication: 'Scope of application', scopeOfApplication: 'Scope of application',
correspondingStandard: 'Corresponding standard', correspondingStandard: 'Compare',
implementationCategory: 'Implementation category', implementationCategory: 'Usage',
certificationType: 'Certification Type', certificationType: 'Certification Type',
certificationLevel: 'Certification Level', certificationLevel: 'Certification Level',
areaOfResponsibility: 'Responsible Field', areaOfResponsibility: 'Responsible Field',
confirmationOfDesignConformity: 'Design Compliance Check Deliverable', confirmationOfDesignConformity: 'Design Compliance Check',
Deliverables: 'Deliverables', Deliverables: 'Deliverables',
personLiable: 'person liable', personLiable: 'Assignee',
PrehomoConfirmation: 'Prehomo confirmation', PrehomoConfirmation: 'Pre-homo Check',
verificationAndConformityconfirmation: 'Verification and conformity confirmation', verificationAndConformityconfirmation: 'Validation Compliance Check',
StandardImplementationDate: 'Standard implementation date', StandardImplementationDate: 'Standard implementation date',
regulatoryEngineer: 'Regulatory Engineer', regulatoryEngineer: 'Regulation Engineer',
certifiedEngineer: 'Certified Engineer', certifiedEngineer: 'Homologation Engineer',
engineeringInterfacePerson: 'Engineering interface person', engineeringInterfacePerson: 'Engineering Interface',
typeOfDeliverables: 'Type of deliverables', typeOfDeliverables: 'Type of deliverables',
deliverableTemplate: 'Deliverable template', deliverableTemplate: 'Deliverable template',
entryName: 'entry name', entryName: 'entry name',
@@ -609,7 +609,7 @@ module.exports = {
certificationProgramInformation: 'Certification program information', certificationProgramInformation: 'Certification program information',
taskReleaseStatus: 'Task release status', taskReleaseStatus: 'Task release status',
task: 'task', task: 'task',
TaskCutOffTime: 'Task cut-off time', TaskCutOffTime: 'Due Date',
Transfer: 'Transfer', Transfer: 'Transfer',
CertificationDirectory: 'Certification directory', CertificationDirectory: 'Certification directory',
TaskRequirements: 'Task requirements', TaskRequirements: 'Task requirements',
@@ -660,8 +660,8 @@ module.exports = {
initiateTaskConfirmation: 'Initiate task confirmation', initiateTaskConfirmation: 'Initiate task confirmation',
alteration: 'alteration', alteration: 'alteration',
fixedPlate: 'Fixed plate', fixedPlate: 'Fixed plate',
taskAffirmStatus: 'task Affirm Status', taskAffirmStatus: 'Task Confirmation Status',
listConfirmationStatus: 'List confirmation status', listConfirmationStatus: 'List Confirmation Status',
ListConfirmationDeadline: 'List confirmation deadline', ListConfirmationDeadline: 'List confirmation deadline',
dataConfirmation: 'Please select the data whose list confirmation status is not initiated or rejected, and the regulatory engineer and certification engineer are not empty', dataConfirmation: 'Please select the data whose list confirmation status is not initiated or rejected, and the regulatory engineer and certification engineer are not empty',
pleaseSelectPersonFirst: 'Please select a person first', pleaseSelectPersonFirst: 'Please select a person first',
@@ -741,50 +741,51 @@ module.exports = {
opinion: 'opinion', opinion: 'opinion',
operationNode: 'operation node', operationNode: 'operation node',
taskDataConfirmation: 'Please select the data whose list confirmation status is accepted and task confirmation status is not initiated or rejected, and the regulatory engineer and certification engineer are not empty', taskDataConfirmation: 'Please select the data whose list confirmation status is accepted and task confirmation status is not initiated or rejected, and the regulatory engineer and certification engineer are not empty',
selectIssuer:'Select issuer', selectIssuer: 'Select issuer',
sendBack:'send back', sendBack: 'send back',
taskConfirmationProcess:'Task confirmation process', taskConfirmationProcess: 'Task confirmation process',
notFinished:'not finished', notFinished: 'not finished',
Finished:'Finished', Finished: 'Finished',
theRequirementst:'The engineering interface person confirms the compliance requirements', theRequirementst: 'The engineering interface person confirms the compliance requirements',
dataLoading:'Data loading...', dataLoading: 'Data loading...',
Submitting:'Submitting', Submitting: 'Submitting',
Returning:'Returning', Returning: 'Returning',
terminationProcessing:'Termination process', terminationProcessing: 'Termination process',
publishComment:'publish comment', publishComment: 'publish comment',
record:'record', record: 'record',
replyToComments:'Reply to comments', replyToComments: 'Reply to comments',
noComment:'No comment', noComment: 'No comment',
theReceived:'The final version can be made only when the list confirmation status and task confirmation status of all data are received', theReceived: 'The final version can be made only when the list confirmation status and task confirmation status of all data are received',
notEvaluated:'Not evaluated', notEvaluated: 'Not evaluated',
cannotExceed:'cannot exceed', cannotExceed: 'cannot exceed',
Characters:'Characters', Characters: 'Characters',
standardInformation:'standardInformation', standardInformation: 'standardInformation',
VirtualList:'VirtualList', VirtualList: 'VirtualList',
importTemplate:'import template', importTemplate: 'import template',
verificationConfirmationDeadline:'Verification compliance confirmation deadline', verificationConfirmationDeadline: 'Verification compliance confirmation deadline',
technicalEvaluationResults:'technical evaluation results', technicalEvaluationResults: 'technical evaluation results',
engineeringConfirmation:'engineeringConfirmation', engineeringConfirmation: 'engineeringConfirmation',
feedbackFromTheEngineer:'Feedback from the Engineer', feedbackFromTheEngineer: 'Feedback from the Engineer',
completedBy:'Completed by', completedBy: 'Completed by',
completedTime:'Completed time', completedTime: 'Completed time',
replyFromProjectContactPerson:'Reply from project contact person', replyFromProjectContactPerson: 'Reply from project contact person',
answer:'answer', answer: 'answer',
distributionEngineer:'Distribution Engineer', distributionEngineer: 'Distribution Engineer',
reminderHandling:'Reminder handling', reminderHandling: 'Reminder handling',
addFeedback:'Add feedback', addFeedback: 'Add feedback',
engineer:'engineer', engineer: 'engineer',
engineeringConfirmationDetails:'Engineering confirmation details', engineeringConfirmationDetails: 'Engineering confirmation details',
reminder:'reminder', reminder: 'reminder',
adopt:'adopt', adopt: 'adopt',
reviewedByThePersonInCharge:'Reviewed by the person in charge', reviewedByThePersonInCharge: 'Reviewed by the person in charge',
onlyDeleted:'Only data whose list confirmation status is not initiated or rejected can be deleted', onlyDeleted: 'Only data whose list confirmation status is not initiated or rejected can be deleted',
experimentPassed:'Experiment passed', experimentPassed: 'Experiment passed',
experimentFailed:'Experiment failed', experimentFailed: 'Experiment failed',
toBeStarted:'To be started', toBeStarted: 'To be started',
inProgress:'In Progress', inProgress: 'In Progress',
green:'green', green: 'green',
red:'red', red: 'red',
blue:'blue', blue: 'blue',
yellow:'yellow', yellow: 'yellow',
resultReported:'Result Reported',
} }
+1
View File
@@ -792,4 +792,5 @@ module.exports = {
red:'红', red:'红',
blue:'蓝', blue:'蓝',
yellow:'黄', yellow:'黄',
resultReported:'结果报告',
} }
@@ -30,6 +30,7 @@
style="margin-bottom: 60px;height: 600px" style="margin-bottom: 60px;height: 600px"
v-if="treeVisible" v-if="treeVisible"
checkable checkable
checkStrictly
:loading="loading" :loading="loading"
:tree-data="gData" :tree-data="gData"
@check="onCheck" @check="onCheck"
@@ -0,0 +1,250 @@
<template>
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :md="10" :sm="8" v-for="(item,index) in searchList" :key="index" style="line-height: 48px">
<template v-if="index < 3">
<div class="box-title-text" v-if="item.field_show_type == '0'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-tree-select
class="box-input"
v-model="queryParam[item.db_field_name]"
:maxTagCount="1"
:tree-data="item.tree"
tree-checkable
:placeholder="$t('PleaseSelect')+item.db_field_txt"
/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '1' || item.field_show_type == '8' ||
item.field_show_type == '9' || item.field_show_type == '10' || item.field_show_type == '11'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-input class="box-input" :placeholder="$t('PleaseEnter')+item.db_field_txt"
v-model="queryParam[item.db_field_name]"></a-input>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '2'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-input-number class="box-input" :placeholder="$t('PleaseEnter')+item.db_field_txt"
v-model="queryParam[item.db_field_name]" :min="1" :max="99999999"/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '4'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<j-multi-select-tag class="box-input" v-model="queryParam[item.db_field_name]"
:placeholder="$t('PleaseSelect')+item.db_field_txt" :type="'select'"
:triggerChange="false" :dictCode="item.dict_field"/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '6' || item.field_show_type == '5'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-range-picker class="box-input" v-model="queryParam[item.db_field_name]"
:placeholder="$t('PleaseSelect')+item.db_field_txt"
@change="onChange(item.db_field_name)"></a-range-picker>
</div>
<!-- <div class="box-title-text" v-else-if="item.field_show_type == '5'">-->
<!-- <div class="title-text" :title="item.db_field_txt">-->
<!-- <span>{{item.db_field_txt}}</span>-->
<!-- </div>-->
<!-- <a-date-picker class="box-input"-->
<!-- :placeholder="$t('PleaseSelect')+item.db_field_txt"-->
<!-- @change="dateChange(item.db_field_name)"-->
<!-- v-model="queryParam[item.db_field_name]"/>-->
<!-- </div>-->
<div class="box-title-text" v-else-if="item.field_show_type == '3'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<j-dict-select-tag class="box-input" v-model="queryParam[item.db_field_name]"
:placeholder="$t('PleaseSelect')+item.db_field_txt"
:type="'select'"
:triggerChange="false" :dictCode="item.dict_field"/>
</div>
</template>
<template v-if="index >= 3 && toggleSearchStatus">
<div class="box-title-text" v-if="item.field_show_type == '0'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-tree-select
class="box-input"
v-model="queryParam[item.db_field_name]"
:maxTagCount="1"
:tree-data="item.tree"
tree-checkable
:placeholder="$t('PleaseSelect')+item.db_field_txt"
/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '1' || item.field_show_type == '8' ||
item.field_show_type == '9' || item.field_show_type == '10' || item.field_show_type == '11'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-input class="box-input" :placeholder="$t('PleaseEnter')+item.db_field_txt"
v-model="queryParam[item.db_field_name]"></a-input>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '2'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-input-number class="box-input" :placeholder="$t('PleaseEnter')+item.db_field_txt"
v-model="queryParam[item.db_field_name]" :min="1" :max="99999999"/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '4'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<j-multi-select-tag class="box-input" v-model="queryParam[item.db_field_name]"
:placeholder="$t('PleaseSelect')+item.db_field_txt" :type="'select'"
:triggerChange="false" :dictCode="item.dict_field"/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '6' || item.field_show_type == '5'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-range-picker class="box-input" v-model="queryParam[item.db_field_name]"
@change="onChange(item.db_field_name)"></a-range-picker>
</div>
<!-- <div class="box-title-text" v-else-if="item.field_show_type == '5'">-->
<!-- <div class="title-text" :title="item.db_field_txt">-->
<!-- <span>{{item.db_field_txt}}</span>-->
<!-- </div>-->
<!-- <a-date-picker class="box-input"-->
<!-- :placeholder="$t('PleaseSelect')+item.db_field_txt"-->
<!-- @change="dateChange(item.db_field_name)"-->
<!-- v-model="queryParam[item.db_field_name]"/>-->
<!-- </div>-->
<div class="box-title-text" v-else-if="item.field_show_type == '3'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<j-dict-select-tag class="box-input" v-model="queryParam[item.db_field_name]"
:placeholder="$t('PleaseSelect')+item.db_field_txt"
:type="'select'"
:triggerChange="false" :dictCode="item.dict_field"/>
</div>
</template>
</a-col>
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
<a-col :md="2" :sm="24" style='display: flex'>
<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 @click="handleToggleSearch" style="margin-left: 8px" v-if="searchList.length > 3">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
</a-form>
</template>
<script>
import { getAction } from '@/api/manage'
import eventBUs from '../../common/event.js'
import moment from 'moment'
export default {
name: 'index',
props: {
url: {
type: Object,
default: {}
},
flag: {
type: String,
default: ''
}
},
data() {
return {
queryParam: {},
toggleSearchStatus: false,
searchList: []
}
},
mounted() {
this.getSeach()
},
methods: {
searchQuery() {
eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(this.queryParam)))
},
searchReset() {
this.queryParam = {}
eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(this.queryParam)))
},
getSeach() {
let params = {
flag: this.flag
}
getAction(this.url.seachList, params).then((res) => {
if (res.success) {
this.searchList = res.result
}
})
},
// handleToggleSearch() {
// this.toggleSearchStatus = !this.toggleSearchStatus
// },
dateChange(item) {
this.queryParam[item] = moment(this.queryParam[item]).format('YYYY-MM-DD')
},
onChange(item) {
if (this.queryParam[item] && this.queryParam[item].length > 0) {
let dateOne = moment(this.queryParam[item][0]).format('YYYY-MM-DD')
let dateTwo = moment(this.queryParam[item][1]).format('YYYY-MM-DD')
this.queryParam[item] = [dateOne, dateTwo]
} else {
this.queryParam[item] = []
}
},
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
}
}
}
</script>
<style scoped>
.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;
/*margin-top: 2px;*/
}
</style>
@@ -0,0 +1,259 @@
<template>
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :md="6" :sm="8" v-for="(item,index) in searchList" :key="index" style="line-height: 48px">
<template v-if="index < 3">
<div class="box-title-text" v-if="item.field_show_type == '0'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-tree-select
class="box-input"
v-model="queryParam[item.db_field_name]"
:maxTagCount="1"
:tree-data="item.tree"
tree-checkable
:placeholder="$t('PleaseSelect')+item.db_field_txt"
/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '1' || item.field_show_type == '8' ||
item.field_show_type == '9' || item.field_show_type == '10' || item.field_show_type == '11'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-input class="box-input" :placeholder="$t('PleaseEnter')+item.db_field_txt"
v-model="queryParam[item.db_field_name]"></a-input>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '2'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-input-number class="box-input" :placeholder="$t('PleaseEnter')+item.db_field_txt"
v-model="queryParam[item.db_field_name]" :min="1" :max="99999999"/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '4'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<j-multi-select-tag class="box-input" v-model="queryParam[item.db_field_name]"
:placeholder="$t('PleaseSelect')+item.db_field_txt" :type="'select'"
:triggerChange="false" :dictCode="item.dict_field"/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '6' || item.field_show_type == '5'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-range-picker class="box-input" v-model="queryParam[item.db_field_name]"
:placeholder="$t('PleaseSelect')+item.db_field_txt"
@change="onChange(item.db_field_name)"></a-range-picker>
</div>
<!-- <div class="box-title-text" v-else-if="item.field_show_type == '5'">-->
<!-- <div class="title-text" :title="item.db_field_txt">-->
<!-- <span>{{item.db_field_txt}}</span>-->
<!-- </div>-->
<!-- <a-date-picker class="box-input"-->
<!-- :placeholder="$t('PleaseSelect')+item.db_field_txt"-->
<!-- @change="dateChange(item.db_field_name)"-->
<!-- v-model="queryParam[item.db_field_name]"/>-->
<!-- </div>-->
<div class="box-title-text" v-else-if="item.field_show_type == '3'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<j-dict-select-tag class="box-input" v-model="queryParam[item.db_field_name]"
:placeholder="$t('PleaseSelect')+item.db_field_txt"
:type="'select'"
:triggerChange="false" :dictCode="item.dict_field"/>
</div>
</template>
<template v-if="index >= 3 && toggleSearchStatus">
<div class="box-title-text" v-if="item.field_show_type == '0'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-tree-select
class="box-input"
v-model="queryParam[item.db_field_name]"
:maxTagCount="1"
:tree-data="item.tree"
tree-checkable
:placeholder="$t('PleaseSelect')+item.db_field_txt"
/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '1' || item.field_show_type == '8' ||
item.field_show_type == '9' || item.field_show_type == '10' || item.field_show_type == '11'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-input class="box-input" :placeholder="$t('PleaseEnter')+item.db_field_txt"
v-model="queryParam[item.db_field_name]"></a-input>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '2'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-input-number class="box-input" :placeholder="$t('PleaseEnter')+item.db_field_txt"
v-model="queryParam[item.db_field_name]" :min="1" :max="99999999"/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '4'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<j-multi-select-tag class="box-input" v-model="queryParam[item.db_field_name]"
:placeholder="$t('PleaseSelect')+item.db_field_txt" :type="'select'"
:triggerChange="false" :dictCode="item.dict_field"/>
</div>
<div class="box-title-text" v-else-if="item.field_show_type == '6' || item.field_show_type == '5'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<a-range-picker class="box-input" v-model="queryParam[item.db_field_name]"
@change="onChange(item.db_field_name)"></a-range-picker>
</div>
<!-- <div class="box-title-text" v-else-if="item.field_show_type == '5'">-->
<!-- <div class="title-text" :title="item.db_field_txt">-->
<!-- <span>{{item.db_field_txt}}</span>-->
<!-- </div>-->
<!-- <a-date-picker class="box-input"-->
<!-- :placeholder="$t('PleaseSelect')+item.db_field_txt"-->
<!-- @change="dateChange(item.db_field_name)"-->
<!-- v-model="queryParam[item.db_field_name]"/>-->
<!-- </div>-->
<div class="box-title-text" v-else-if="item.field_show_type == '3'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
</div>
<j-dict-select-tag class="box-input" v-model="queryParam[item.db_field_name]"
:placeholder="$t('PleaseSelect')+item.db_field_txt"
:type="'select'"
:triggerChange="false" :dictCode="item.dict_field"/>
</div>
</template>
</a-col>
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
<a-col :md="6" :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 @click="handleToggleSearch" style="margin-left: 8px" v-if="searchList.length > 3">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
</a-form>
</template>
<script>
import { getAction } from '@/api/manage'
import eventBUs from '../../common/event.js'
import moment from 'moment'
export default {
name: 'index',
props: {
url: {
type: Object,
default: {}
},
flag: {
type: String,
default: ''
},
searchalonesplit: {
type: String,
default: ''
}
},
data() {
return {
queryParam: {},
toggleSearchStatus: false,
searchList: []
}
},
mounted() {
this.getSeach()
},
methods: {
searchQuery() {
eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(this.queryParam)))
},
searchReset() {
this.queryParam = {}
eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(this.queryParam)))
},
getSeach() {
let params = {
flag: this.flag
}
getAction(this.url.seachList, params).then((res) => {
if (res.success) {
this.searchList = res.result
this.searchList.forEach((item, index) => {
if(item.db_field_name === 'serialNumber') {
this.queryParam[item.db_field_name] = this.searchalonesplit
}
})
}
})
},
// handleToggleSearch() {
// this.toggleSearchStatus = !this.toggleSearchStatus
// },
dateChange(item) {
this.queryParam[item] = moment(this.queryParam[item]).format('YYYY-MM-DD')
},
onChange(item) {
if (this.queryParam[item] && this.queryParam[item].length > 0) {
let dateOne = moment(this.queryParam[item][0]).format('YYYY-MM-DD')
let dateTwo = moment(this.queryParam[item][1]).format('YYYY-MM-DD')
this.queryParam[item] = [dateOne, dateTwo]
} else {
this.queryParam[item] = []
}
},
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
}
}
}
</script>
<style scoped>
.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;
/*margin-top: 2px;*/
}
</style>
+4 -2
View File
@@ -49,8 +49,9 @@ router.beforeEach((to, from, next) => {
message: '系统提示', message: '系统提示',
description: '请求用户信息失败,请重试!' description: '请求用户信息失败,请重试!'
})*/ })*/
// query: { redirect: to.fullPath }
store.dispatch('Logout').then(() => { store.dispatch('Logout').then(() => {
next({ path: '/user/login', query: { redirect: to.fullPath } }) next({ path: '/user/login', })
}) })
}) })
} else { } else {
@@ -62,7 +63,8 @@ router.beforeEach((to, from, next) => {
// 在免登录白名单,直接进入 // 在免登录白名单,直接进入
next() next()
} else { } else {
next({ path: '/user/login', query: { redirect: to.fullPath } }) //query: { redirect: to.fullPath }
next({ path: '/user/login', })
NProgress.done() // if current page is login will not trigger afterEach hook, so manually handle it NProgress.done() // if current page is login will not trigger afterEach hook, so manually handle it
} }
} }
@@ -11,7 +11,7 @@
> >
<div class="doc-table-content"> <div class="doc-table-content">
<div class="doc-header"> <div class="doc-header">
<search :url="url" :flag="'condition'"></search> <searchaloneorc :url="url" :flag="'condition'"></searchaloneorc>
</div> </div>
</div> </div>
<div class="doc-table-detail"> <div class="doc-table-detail">
@@ -34,13 +34,13 @@
<script> <script>
import { getAction, postAction, deleteAction } from '@/api/manage' import { getAction, postAction, deleteAction } from '@/api/manage'
import search from '@/components/search/index' import searchaloneorc from '@/components/searchaloneorc/index'
import TableData from '@/components/OcrTable/DocTable' import TableData from '@/components/OcrTable/DocTable'
import eventBUs from '../../../../common/event' import eventBUs from '../../../../common/event'
export default { export default {
name: 'docTable', name: 'docTable',
components:{ components:{
search, searchaloneorc,
TableData, TableData,
}, },
@@ -2,7 +2,7 @@
<div class="splitting"> <div class="splitting">
<a-card :bordered="false"> <a-card :bordered="false">
<div class="splitting-search-wrapper"> <div class="splitting-search-wrapper">
<search :flag="'3'" :url="url"/> <searchalonesplit :flag="'3'" :url="url" :searchalonesplit='serialnumber'/>
</div> </div>
<div class="table-operator"> <div class="table-operator">
<div class="operator-text" @click="handleModule" v-has="'split:sarFileSplitInfo:splitFile'"> <div class="operator-text" @click="handleModule" v-has="'split:sarFileSplitInfo:splitFile'">
@@ -37,7 +37,7 @@
</template> </template>
<script> <script>
import search from '@/components/search/index' import searchalonesplit from '@/components/searchalonesplit/index'
import TableData from '@/components/SplitTable/index' import TableData from '@/components/SplitTable/index'
import SplitText from './modules/SplitText' import SplitText from './modules/SplitText'
import ImportResult from './modules/ImportResult' import ImportResult from './modules/ImportResult'
@@ -50,7 +50,7 @@
export default { export default {
name: 'splitting', name: 'splitting',
components: { components: {
search, searchalonesplit,
TableData, TableData,
SplitText, SplitText,
ImportResult ImportResult
@@ -129,7 +129,7 @@
pageSize:10 pageSize:10
}, },
token:Vue.ls.get(ACCESS_TOKEN), token:Vue.ls.get(ACCESS_TOKEN),
serialnumber: '',
} }
}, },
props:{ props:{
@@ -139,7 +139,9 @@
}, },
mounted() { mounted() {
// this.loadData() if(this.$route.query.serial_number !== undefined) {
this.serialnumber = this.$route.query.serial_number
}
}, },
methods:{ methods:{
//获取列表数据 //获取列表数据
@@ -210,6 +210,7 @@ export default {
{ min:1, max: 20, message: this.$t('cantExeed')+'20'+this.$t('characters'), trigger: 'blur' }, { min:1, max: 20, message: this.$t('cantExeed')+'20'+this.$t('characters'), trigger: 'blur' },
], ],
dbFieldEnName:[ dbFieldEnName:[
{ required: true, message: this.$t('PleaseEnterYourEnglishName'),trigger: 'change'},
{ max: 50, message: this.$t('cantExeed')+'50'+this.$t('characters'), trigger: 'blur' }, { max: 50, message: this.$t('cantExeed')+'50'+this.$t('characters'), trigger: 'blur' },
], ],
fieldShowType: [ fieldShowType: [
@@ -67,6 +67,54 @@
</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('zoneOfApplication')">{{$t('zoneOfApplication')}}</span>
</div>
<a-form-model-item class="itemModel" prop="region">
<j-multi-select-tag class="box-input" v-model="formInline.region"
:placeholder="$t('PleaseSelect')+$t('zoneOfApplication')"
:type="'select'"
:triggerChange="false" :dictCode="'region'"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('scopeOfApplication')">{{$t('scopeOfApplication')}}</span>
</div>
<a-form-model-item class="itemModel">
<j-multi-select-tag class="box-input" v-model="formInline.shi4Yong4Fan4Wei2"
@input="handleInput('shi4Yong4Fan4Wei2')"
:placeholder="$t('PleaseSelect')+$t('scopeOfApplication')"
:type="'select'"
:triggerChange="false" :dictCode="'apply_scope'"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('technicalField')">{{$t('technicalField')}}</span>
</div>
<a-form-model-item class="itemModel" prop="technologyTerritory">
<a-tree-select
v-model="formInline.technologyTerritory"
:maxTagCount="1"
class="box-input"
style="width: 100%"
:tree-data="CategoryTreeList"
tree-checkable
:placeholder="$t('PleaseSelect')+$t('technicalField')"
/>
</a-form-model-item>
</div>
</a-col>
</a-row> </a-row>
</a-form-model> </a-form-model>
</a-modal> </a-modal>
@@ -84,14 +132,26 @@
confirmLoading: false, confirmLoading: false,
formInline: {}, formInline: {},
rules: {}, rules: {},
ids: [] ids: [],
CategoryTreeList: []
} }
}, },
mounted() { mounted() {
this.getSysCategoryTree()
}, },
methods: { methods: {
getSysCategoryTree() {
getAction(this.url.getSysCategoryTree, {}).then((res) => {
if (res.success) {
this.CategoryTreeList = res.result
} else {
this.CategoryTreeList = []
}
})
},
edit(data) { edit(data) {
this.visible = true this.visible = true
this.getSysCategoryTree()
this.$nextTick(() => { this.$nextTick(() => {
this.ids = data || [] this.ids = data || []
this.formInline = {} this.formInline = {}
@@ -274,10 +274,10 @@
onOk() { onOk() {
postAction(_this.url.urlWithdraw, item).then((res) => { postAction(_this.url.urlWithdraw, item).then((res) => {
if (res.success) { if (res.success) {
_this.$message.success(res.message) _this.$message.success(_this.$t('OperationSuccessful'))
_this.getList() _this.getList()
} else { } else {
_this.$message.warning(res.message) _this.$message.warning(_this.$t('operationFailed'))
} }
}) })
} }
@@ -145,7 +145,8 @@
@click="deleteLib(record)"> @click="deleteLib(record)">
{{ $t('deleteLib') }} {{ $t('deleteLib') }}
</a> </a>
<a @click="addProcess(record)">发起</a> <!-- <a class="text-operation" @click="resultReportedClick(record)">{{$t('resultReported')}}</a>-->
<a @click="addProcess(record)">发起</a>
</span> </span>
<span slot="titleName" slot-scope="text,record" :title="text"> <span slot="titleName" slot-scope="text,record" :title="text">
{{ text && text.length > 10 ? text.slice(0, 9) + '...' : text }} {{ text && text.length > 10 ? text.slice(0, 9) + '...' : text }}
@@ -260,6 +261,7 @@
</span> </span>
</a-table> </a-table>
</a-modal> </a-modal>
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"/>
</a-card> </a-card>
</template> </template>
@@ -267,6 +269,7 @@
import ImportFile from '@/components/ImportFile/index' import ImportFile from '@/components/ImportFile/index'
import listAddModel from './listAddModel' import listAddModel from './listAddModel'
import listEditModel from './listEditModel' import listEditModel from './listEditModel'
import uploadFile from '@/components/uploadFile/file'
import batSetting from './batSetting' import batSetting from './batSetting'
import transferList from './transferList' import transferList from './transferList'
import fixedPlate from './fixedPlateForm' import fixedPlate from './fixedPlateForm'
@@ -283,6 +286,7 @@
listAddModel, listAddModel,
listEditModel, listEditModel,
batSetting, batSetting,
uploadFile,
transferList, transferList,
globalAdvancedQuery, globalAdvancedQuery,
fixedPlate fixedPlate
@@ -492,7 +496,7 @@
title: this.$t('operation'), title: this.$t('operation'),
align: 'center', align: 'center',
fixed: 'right', fixed: 'right',
width: 140, width: 210,
scopedSlots: { customRender: 'operation' } scopedSlots: { customRender: 'operation' }
} }
], ],
@@ -819,6 +823,7 @@
this.$message.warning(this.$t('selectLeastOne')) this.$message.warning(this.$t('selectLeastOne'))
} }
}, },
initiateTaskConfirmationClick(name) { initiateTaskConfirmationClick(name) {
this.timeName = name this.timeName = name
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) { if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
@@ -846,6 +851,7 @@
this.$message.warning(this.$t('selectLeastOne')) this.$message.warning(this.$t('selectLeastOne'))
} }
}, },
handleOk() { handleOk() {
this.$refs.ruleForm.validate(valid => { this.$refs.ruleForm.validate(valid => {
if (valid) { if (valid) {
@@ -891,6 +897,7 @@
} }
}) })
}, },
startProcess(value) { startProcess(value) {
let query = { let query = {
type: 1, type: 1,
@@ -905,6 +912,7 @@
} }
}) })
}, },
completeTask(value, taskId) { completeTask(value, taskId) {
let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss') let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
value.handlingTime = handlingTime value.handlingTime = handlingTime
@@ -926,6 +934,7 @@
} }
}) })
}, },
getRowKeys(value, callBack) { getRowKeys(value, callBack) {
let isTrue = true let isTrue = true
for (let i = 0; i < this.dataSource.length; i++) { for (let i = 0; i < this.dataSource.length; i++) {
@@ -957,6 +966,7 @@
callBack() callBack()
} }
}, },
updateStatusBatch(num, selectedRowKeys) { updateStatusBatch(num, selectedRowKeys) {
let _this = this let _this = this
let query = { let query = {
@@ -978,6 +988,7 @@
} }
}) })
}, },
submitClick(num) { submitClick(num) {
let _this = this let _this = this
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) { if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
@@ -994,13 +1005,16 @@
this.$message.warning(this.$t('selectLeastOne')) this.$message.warning(this.$t('selectLeastOne'))
} }
}, },
handleCancel() { handleCancel() {
this.formInline = {} this.formInline = {}
this.visible = false this.visible = false
}, },
dateChange(item) { dateChange(item) {
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : '' this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
}, },
pdfPreview(fileQuery) { pdfPreview(fileQuery) {
let fileName = fileQuery.fileName let fileName = fileQuery.fileName
let index1 = fileName.lastIndexOf('.') let index1 = fileName.lastIndexOf('.')
@@ -1018,6 +1032,7 @@
downloadFile('/sys/common/downLoadFile', fileQuery.fileName, { id: fileQuery.id }) downloadFile('/sys/common/downLoadFile', fileQuery.fileName, { id: fileQuery.id })
} }
}, },
pdfPreviewClick(name, id) { pdfPreviewClick(name, id) {
let fileName = name let fileName = name
let index1 = fileName.lastIndexOf('.') let index1 = fileName.lastIndexOf('.')
@@ -1035,9 +1050,11 @@
downloadFile('/sys/common/downLoadFile', name, { id: id }) downloadFile('/sys/common/downLoadFile', name, { id: id })
} }
}, },
download(item) { download(item) {
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id }) downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id })
}, },
clickButtonToUpload(item) { clickButtonToUpload(item) {
this.loading = true this.loading = true
this.visibleFile = true this.visibleFile = true
@@ -1058,6 +1075,7 @@
} }
}) })
}, },
bringInRelevantPersonnelClick() { bringInRelevantPersonnelClick() {
let _this = this let _this = this
this.$confirm({ this.$confirm({
@@ -1074,14 +1092,16 @@
} }
}) })
}, },
addProcess(val) { addProcess(val) {
let num = 2 let num = 2
// for (let i = 0; i < 3; i++) { // for (let i = 0; i < 3; i++) {
// setTimeout(() => { // setTimeout(() => {
this.startProcessDesign(val) this.startProcessDesign(val)
// }, 500) // }, 500)
// } // }
}, },
startProcessDesign(value, num) { startProcessDesign(value, num) {
let query = { let query = {
type: 2, type: 2,
@@ -1093,6 +1113,7 @@
} }
}) })
}, },
completeTaskDesign(value, taskId) { completeTaskDesign(value, taskId) {
let query = { let query = {
userid: this.userInfo().id, userid: this.userInfo().id,
@@ -1110,6 +1131,34 @@
this.$message.warning(this.$t('operationFailed')) this.$message.warning(this.$t('operationFailed'))
} }
}) })
},
resultReportedClick(val) {
this.clickButtonToUploadFile()
},
clickButtonToUploadFile(item) {
this.$refs.uploadFile.perentHandleFunc()
this.$refs.uploadFile.visible = true
this.uploadName = item
getAction('sys/common/getFileInfos', { id: this.formInline[item] }).then((res) => {
if (res.success) {
this.$refs.uploadFile.perentHandleFunc(res.result)
} else {
this.$refs.uploadFile.perentHandleFunc()
}
})
},
/** 上传文件的回调 */
uploadSuccess(data) {
let attIdList = []
if (data && data.length > 0) {
data.map(item => {
attIdList.push(item.id || data.name)
})
}
/** 赋值给当前对应的表单文件 */
this.formInline[this.uploadName] = attIdList.join(',')
this.formInline = { ...this.formInline }
} }
} }
} }