Merge branch 'dev_third_stage'

# Conflicts:
#	jero-web/src/common/lang/en-us.js
#	jero-web/src/common/lang/zh-cn.js
This commit is contained in:
lixuetao
2022-07-05 15:34:57 +08:00
100 changed files with 2523 additions and 352 deletions
@@ -143,6 +143,8 @@ public class ShiroConfig {
filterChainDefinitionMap.put("/project/projectLawsInventoryEO/processCall", "anon"); // 项目库-法规清单 工作流处理数据接口排除 filterChainDefinitionMap.put("/project/projectLawsInventoryEO/processCall", "anon"); // 项目库-法规清单 工作流处理数据接口排除
filterChainDefinitionMap.put("/project/projectTaskInventoryEO/processCall", "anon"); // 项目库-任务清单 工作流处理数据接口排除 filterChainDefinitionMap.put("/project/projectTaskInventoryEO/processCall", "anon"); // 项目库-任务清单 工作流处理数据接口排除
filterChainDefinitionMap.put("/wkflow/processHistoryEO/processCall", "anon"); // 流程历史 工作流处理数据接口排除 filterChainDefinitionMap.put("/wkflow/processHistoryEO/processCall", "anon"); // 流程历史 工作流处理数据接口排除
filterChainDefinitionMap.put("/lawsOpinionGather/lawsOpinionGatherEO/processCall", "anon"); // 法规收集表 工作流处理数据接口排除
filterChainDefinitionMap.put("/lawsOpinionGather/lawsProcessHistoryEO/processCall", "anon"); // 法规收集历史 工作流处理数据接口排除
filterChainDefinitionMap.put("/sys/user/querySysUserListByIdList", "anon"); // 工作流根据用户idList获取用户信息接口 filterChainDefinitionMap.put("/sys/user/querySysUserListByIdList", "anon"); // 工作流根据用户idList获取用户信息接口
// 添加自己的过滤器并且取名为jwt // 添加自己的过滤器并且取名为jwt
@@ -76,7 +76,7 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
// @RequiresPermissions("params:collectManifest:list") // @RequiresPermissions("params:collectManifest:list")
public Result<?> queryList(ParamsCollectManifestEO paramsCollectManifestEO, public Result<?> queryList(ParamsCollectManifestEO paramsCollectManifestEO,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="500") Integer pageSize, @RequestParam(name="pageSize", defaultValue="100") Integer pageSize,
@RequestParam(name = "cut") String cut) { @RequestParam(name = "cut") String cut) {
if (StringUtils.isNotEmpty(paramsCollectManifestEO.getNioNumber())) { if (StringUtils.isNotEmpty(paramsCollectManifestEO.getNioNumber())) {
paramsCollectManifestEO.setNioNumber(paramsCollectManifestEO.getNioNumber().replace("%","\\%")); paramsCollectManifestEO.setNioNumber(paramsCollectManifestEO.getNioNumber().replace("%","\\%"));
@@ -113,21 +113,21 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
} }
/** /**
* *
* *
* @param paramsCollectManifestVO * @param paramsCollectManifestVO
* @return * @return
*/ */
@AutoLog(value = "参数项收集清单-") @AutoLog(value = "参数项收集清单-")
@ApiOperation(value="参数项收集清单-", notes="参数项收集清单-") @ApiOperation(value="参数项收集清单-", notes="参数项收集清单-")
@PostMapping(value = "/save") @PostMapping(value = "/save")
// @RequiresPermissions("params:collectManifest:save") // @RequiresPermissions("params:collectManifest:save")
public Result<?> save(@RequestBody ParamsCollectManifestVO paramsCollectManifestVO) { public Result<?> save(@RequestBody ParamsCollectManifestVO paramsCollectManifestVO) {
boolean isSuccess = paramsCollectManifestEOService.save(paramsCollectManifestVO.getConfigDataList()); boolean isSuccess = paramsCollectManifestEOService.save(paramsCollectManifestVO.getConfigDataList(), paramsCollectManifestVO.getParamsManifestId());
if (isSuccess) { if (isSuccess) {
return Result.OK("存成功!"); return Result.OK("存成功!");
} else { } else {
return Result.error("存失败!"); return Result.error("存失败!");
} }
} }
@@ -140,7 +140,7 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
@ApiOperation(value="参数项收集清单-添加查询", notes="参数项收集清单-添加查询") @ApiOperation(value="参数项收集清单-添加查询", notes="参数项收集清单-添加查询")
@GetMapping(value = "/paramsInfoList") @GetMapping(value = "/paramsInfoList")
// @RequiresPermissions("params:collectManifest:add") // @RequiresPermissions("params:collectManifest:add")
public Result<List<ParamsInfoPublishEO>> paramsInfoList(ParamsCollectManifestVO paramsCollectManifestVO, public Result<List<Map<String, Object>>> paramsInfoList(ParamsCollectManifestVO paramsCollectManifestVO,
@RequestParam(name = "cut") String cut) { @RequestParam(name = "cut") String cut) {
if (StringUtils.isNotEmpty(paramsCollectManifestVO.getNioNumber())) { if (StringUtils.isNotEmpty(paramsCollectManifestVO.getNioNumber())) {
paramsCollectManifestVO.setNioNumber(paramsCollectManifestVO.getNioNumber().replace("%","\\%")); paramsCollectManifestVO.setNioNumber(paramsCollectManifestVO.getNioNumber().replace("%","\\%"));
@@ -149,8 +149,8 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
paramsCollectManifestVO.setParamsName(paramsCollectManifestVO.getParamsName().replace("%","\\%")); paramsCollectManifestVO.setParamsName(paramsCollectManifestVO.getParamsName().replace("%","\\%"));
} }
List<ParamsInfoPublishEO> list = paramsCollectManifestEOService.getParamsInfoPublishListForAdd(paramsCollectManifestVO); List<Map<String, Object>> list = paramsCollectManifestEOService.getParamsInfoPublishListForAdd(paramsCollectManifestVO);
return Result.OK(cut, list); return Result.OK(list);
} }
/** /**
@@ -388,6 +388,21 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
return Result.OK(configLableList); return Result.OK(configLableList);
} }
/**
* 冻结配置-回显已冻结的配置
*
* @param paramsCollectManifestVO
* @return
*/
@AutoLog(value = "参数项收集清单-回显已冻结的配置")
@ApiOperation(value="参数项收集清单-回显已冻结的配置", notes="参数项收集清单-回显已冻结的配置")
@GetMapping(value = "/getLockedConfigIdList")
// @RequiresPermissions("params:collectManifest:lock")
public Result<?> getLockedConfigIdList(ParamsCollectManifestVO paramsCollectManifestVO) {
List<String> lockedConfigIdList = paramsCollectManifestEOService.getLockedConfigIdList(paramsCollectManifestVO);
return Result.OK(lockedConfigIdList);
}
/** /**
* 冻结配置 * 冻结配置
* *
@@ -464,6 +479,21 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
} }
} }
/**
* 带入工程接口人
*
* @param paramsCollectManifestVO
* @return
*/
@AutoLog(value = "参数项收集清单-带入工程接口人")
@ApiOperation(value="参数项收集清单-带入工程接口人", notes="参数项收集清单-带入工程接口人")
@GetMapping(value = "/bringSdtInto")
// @RequiresPermissions("params:collectManifest:bring")
public Result<?> bringSdtInto(ParamsCollectManifestVO paramsCollectManifestVO) {
paramsCollectManifestEOService.bringSdtInto(paramsCollectManifestVO);
return Result.OK("带入工程接口人成功!");
}
@@ -48,6 +48,9 @@
<if test="paramsCollectManifestEO.dutyTerritory !=null and paramsCollectManifestEO.dutyTerritory !=''"> <if test="paramsCollectManifestEO.dutyTerritory !=null and paramsCollectManifestEO.dutyTerritory !=''">
AND duty_territory = #{paramsCollectManifestEO.dutyTerritory} AND duty_territory = #{paramsCollectManifestEO.dutyTerritory}
</if> </if>
<if test="paramsCollectManifestEO.state !=null and paramsCollectManifestEO.state !=''">
AND state = #{paramsCollectManifestEO.state}
</if>
<if test="paramsCollectManifestEO.paramsManifestId !=null and paramsCollectManifestEO.paramsManifestId !=''"> <if test="paramsCollectManifestEO.paramsManifestId !=null and paramsCollectManifestEO.paramsManifestId !=''">
AND params_manifest_id = #{paramsCollectManifestEO.paramsManifestId} AND params_manifest_id = #{paramsCollectManifestEO.paramsManifestId}
</if> </if>
@@ -85,16 +85,17 @@ public interface IParamsCollectManifestEOService extends IService<ParamsCollectM
/** /**
* 保存 * 保存
* @param configDataList * @param configDataList
* @param paramsManifestId
* @return * @return
*/ */
boolean save(List<Map<String, Object>> configDataList); boolean save(List<Map<String, Object>> configDataList, String paramsManifestId);
/** /**
* 查询清单所用模版参数项列表(过滤清单已添加的参数项) * 查询清单所用模版参数项列表(过滤清单已添加的参数项)
* @param paramsCollectManifestVO * @param paramsCollectManifestVO
* @return * @return
*/ */
List<ParamsInfoPublishEO> getParamsInfoPublishListForAdd(ParamsCollectManifestVO paramsCollectManifestVO); List<Map<String, Object>> getParamsInfoPublishListForAdd(ParamsCollectManifestVO paramsCollectManifestVO);
List<Map<String,String>> querySdtList(ParamsCollectManifestVO paramsCollectManifestVO); List<Map<String,String>> querySdtList(ParamsCollectManifestVO paramsCollectManifestVO);
@@ -127,6 +128,9 @@ public interface IParamsCollectManifestEOService extends IService<ParamsCollectM
// 配置-下拉选项 // 配置-下拉选项
List<Map<String, String>> getConfigLabelList(ParamsCollectManifestVO paramsCollectManifestVO); List<Map<String, String>> getConfigLabelList(ParamsCollectManifestVO paramsCollectManifestVO);
// 冻结配置-回显已冻结的配置
List<String> getLockedConfigIdList(ParamsCollectManifestVO paramsCollectManifestVO);
// 冻结配置 // 冻结配置
boolean lockConfigColumn(ParamsCollectManifestVO paramsCollectManifestVO); boolean lockConfigColumn(ParamsCollectManifestVO paramsCollectManifestVO);
@@ -135,4 +139,7 @@ public interface IParamsCollectManifestEOService extends IService<ParamsCollectM
// 同步上报库 // 同步上报库
boolean syncReport(ParamsCollectManifestVO paramsCollectManifestVO); boolean syncReport(ParamsCollectManifestVO paramsCollectManifestVO);
// 带入工程接口人
boolean bringSdtInto(ParamsCollectManifestVO paramsCollectManifestVO);
} }
@@ -63,6 +63,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.io.IOException; import java.io.IOException;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -747,8 +748,11 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
} }
@Override @Override
public boolean save(List<Map<String, Object>> configDataList) { public boolean save(List<Map<String, Object>> configDataList, String paramsManifestId) {
List<ParamsConfigDataEO> newConfigDataEOList = new ArrayList<>(); List<ParamsConfigDataEO> newConfigDataEOList = new ArrayList<>();
List<ParamsConfigEO> paramsConfigEOList = paramsConfigEOService.queryList(paramsManifestId); // 查询配置列
List<String> paramsConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList());
List<ParamsConfigDataEO> paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(paramsConfigIdList); // 查询所有配置数据
// 处理数据 // 处理数据
for (Map<String, Object> map : configDataList) { for (Map<String, Object> map : configDataList) {
@@ -768,7 +772,8 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
List<Map<String, Object>> paramsConfigDataVOList = (List<Map<String, Object>>) paramsConfigDataMap.get("list"); List<Map<String, Object>> paramsConfigDataVOList = (List<Map<String, Object>>) paramsConfigDataMap.get("list");
// 判断是新增还是修改 // 判断是新增还是修改
ParamsConfigDataEO oldConfigDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(paramsConfigEOId, paramsCollectManifestId); // ParamsConfigDataEO oldConfigDataEO = paramsConfigDataEOService.queryByConfigIdAndCollectManifestId(paramsConfigEOId, paramsCollectManifestId);
ParamsConfigDataEO oldConfigDataEO = getConfigDataEOByConfigIdAndCollectManifestId(paramsConfigEOId, paramsCollectManifestId,paramsConfigDataEOList);
if (ObjectUtil.isNotEmpty(oldConfigDataEO)) { if (ObjectUtil.isNotEmpty(oldConfigDataEO)) {
paramsConfigDataEO.setId(oldConfigDataEO.getId()); paramsConfigDataEO.setId(oldConfigDataEO.getId());
@@ -836,7 +841,9 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
* @return * @return
*/ */
@Override @Override
public List<ParamsInfoPublishEO> getParamsInfoPublishListForAdd(ParamsCollectManifestVO paramsCollectManifestVO) { public List<Map<String, Object>> getParamsInfoPublishListForAdd(ParamsCollectManifestVO paramsCollectManifestVO) {
String cut = paramsCollectManifestVO.getCut();
LambdaQueryWrapper<ParamsInfoPublishEO> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ParamsInfoPublishEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(ParamsInfoPublishEO::getParamsTemplateId, paramsCollectManifestVO.getParamsTemplateId()) queryWrapper.eq(ParamsInfoPublishEO::getParamsTemplateId, paramsCollectManifestVO.getParamsTemplateId())
.eq(ParamsInfoPublishEO::getVersion, paramsCollectManifestVO.getParamsTemplatePublishVersion()) .eq(ParamsInfoPublishEO::getVersion, paramsCollectManifestVO.getParamsTemplatePublishVersion())
@@ -854,7 +861,27 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
List<String> nioNumberList = paramsCollectManifestEOList.stream().map(ParamsCollectManifestEO::getNioNumber).collect(Collectors.toList()); List<String> nioNumberList = paramsCollectManifestEOList.stream().map(ParamsCollectManifestEO::getNioNumber).collect(Collectors.toList());
paramsInfoPublishEOList = paramsInfoPublishEOList.stream().filter(e-> !nioNumberList.contains(e.getNioNumber())).collect(Collectors.toList()); paramsInfoPublishEOList = paramsInfoPublishEOList.stream().filter(e-> !nioNumberList.contains(e.getNioNumber())).collect(Collectors.toList());
return paramsInfoPublishEOList; // 查询 责任领域 数据字典
List<SysDictItem> dictItems = sysDictItemService.selectItemsByDictCode("duty_territory");
Map<String, String> dictItemsMap = new HashMap<>();
if (CutEnum.EN.getValue().equals(cut)) {
dictItemsMap = dictItems.stream().collect(Collectors.toMap(SysDictItem::getItemValue, SysDictItem::getEnName));
} else {
dictItemsMap = dictItems.stream().collect(Collectors.toMap(SysDictItem::getItemValue, SysDictItem::getItemText));
}
// 处理数据 返回map ---> 解决数据量大,系统拦截器转换数据字典慢的问题
List<Map<String, Object>> listMapForAdd = new ArrayList<>();
Map<String, String> finalDictItemsMap = dictItemsMap;
paramsInfoPublishEOList.forEach(paramsInfoPublishEO -> {
Map<String, Object> paramsInfoPublishMap = objectToMap(paramsInfoPublishEO);
// 处理责任领域数据字典
paramsInfoPublishMap.put("dutyTerritory_dictText", finalDictItemsMap.get(paramsInfoPublishEO.getDutyTerritory()));
listMapForAdd.add(paramsInfoPublishMap);
});
return listMapForAdd;
} }
@Override @Override
@@ -1323,6 +1350,22 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
return configLabelList; return configLabelList;
} }
@Override
public List<String> getLockedConfigIdList(ParamsCollectManifestVO paramsCollectManifestVO) {
String paramsManifestId = paramsCollectManifestVO.getParamsManifestId();
// 查询配置列
LambdaQueryWrapper<ParamsConfigEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(ParamsConfigEO::getParamsManifestId, paramsManifestId);
queryWrapper.eq(ParamsConfigEO::getIsLock, ConfigLockEnum.YES.getValue()); // 指定查询非冻结配置
queryWrapper.orderByAsc(ParamsConfigEO::getDisplaySeq);
List<ParamsConfigEO> paramsConfigEOList = paramsConfigEOService.list(queryWrapper);
List<String> lockedConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList());
return lockedConfigIdList;
}
@Override @Override
public boolean lockConfigColumn(ParamsCollectManifestVO paramsCollectManifestVO) { public boolean lockConfigColumn(ParamsCollectManifestVO paramsCollectManifestVO) {
if (StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) { if (StringUtils.isEmpty(paramsCollectManifestVO.getParamsManifestId())) {
@@ -1559,6 +1602,44 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
return isSuccess; return isSuccess;
} }
@Override
public boolean bringSdtInto(ParamsCollectManifestVO paramsCollectManifestVO) {
String paramsManifestId = paramsCollectManifestVO.getParamsManifestId();
String projectId = paramsCollectManifestVO.getProjectId();
// 查询所有收集参数项
ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO();
paramsCollectManifestEO.setParamsManifestId(paramsManifestId);
List<ParamsCollectManifestEO> list = paramsCollectManifestEOMapper.listInfo(paramsCollectManifestEO);
// 过滤出 状态为:待发起收集,且工程接口人处为空的参数项
list = list.stream().filter(e-> CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.getState()) && StringUtils.isBlank(e.getSdt())).collect(Collectors.toList());
List<ParamsCollectManifestEO> updateCollectManifestEOList = new ArrayList<>();
if (CollectionUtil.isNotEmpty(list)) {
list.forEach(collectManifestEO -> {
// 根据负责领域处理工程接口人(零个,一个,多个): 领域中仅有一个人时,添加该字段
ProjectRelatedPersonnel projectRelatedPersonnel = projectRelatedPersonnelService.queryByProjectIdAndDutyTerritory(projectId, collectManifestEO.getDutyTerritory());
if (ObjectUtil.isNotEmpty(projectRelatedPersonnel)) {
String sdtId = projectRelatedPersonnel.getEngineeringInterfacePerson();
if (org.apache.commons.lang.StringUtils.isNotBlank(sdtId) && !sdtId.contains(",")) { // 领域中仅有一个人时,添加该字段
SysUser sysUser = sysUserService.getById(sdtId);
if (ObjectUtil.isNotEmpty(sysUser)) {
ParamsCollectManifestEO updateCollectManifestEO = new ParamsCollectManifestEO();
updateCollectManifestEO.setId(collectManifestEO.getId());
updateCollectManifestEO.setSdt(sysUser.getUsername());
updateCollectManifestEOList.add(updateCollectManifestEO);
}
}
}
});
}
return updateBatchById(updateCollectManifestEOList);
}
/** /**
* 获取一个类和其父类的所有属性 * 获取一个类和其父类的所有属性
* *
@@ -1602,8 +1683,22 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
field.setAccessible(true); field.setAccessible(true);
// 获取在对象f中属性fields[i]对应的对象中的变量 // 获取在对象f中属性fields[i]对应的对象中的变量
Object o = field.get(obj); Object o = field.get(obj);
if (o != null) if (o != null) {
map.put(varName, o); if (Date.class.equals(field.getType())) {
Date date = (Date) o;
String pattern = "";
if ("deadline".equals(varName)) {
pattern = "yyyy-MM-dd";
} else {
pattern = "yyyy-MM-dd HH:mm:ss";
}
SimpleDateFormat formatter=new SimpleDateFormat(pattern);
String time=formatter.format(date);
map.put(varName, time);
} else {
map.put(varName, o);
}
}
// 恢复访问控制权限 // 恢复访问控制权限
field.setAccessible(accessFlag); field.setAccessible(accessFlag);
} catch (IllegalArgumentException ex) { } catch (IllegalArgumentException ex) {
@@ -28,6 +28,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -497,8 +498,22 @@ public class ParamsCollectManifestHistoryEOServiceImpl extends ServiceImpl<Param
field.setAccessible(true); field.setAccessible(true);
// 获取在对象f中属性fields[i]对应的对象中的变量 // 获取在对象f中属性fields[i]对应的对象中的变量
Object o = field.get(obj); Object o = field.get(obj);
if (o != null) if (o != null) {
map.put(varName, o); if (Date.class.equals(field.getType())) {
Date date = (Date) o;
String pattern = "";
if ("deadline".equals(varName)) {
pattern = "yyyy-MM-dd";
} else {
pattern = "yyyy-MM-dd HH:mm:ss";
}
SimpleDateFormat formatter=new SimpleDateFormat(pattern);
String time=formatter.format(date);
map.put(varName, time);
} else {
map.put(varName, o);
}
}
// 恢复访问控制权限 // 恢复访问控制权限
field.setAccessible(accessFlag); field.setAccessible(accessFlag);
} catch (IllegalArgumentException ex) { } catch (IllegalArgumentException ex) {
@@ -1,6 +1,8 @@
package com.jero.modules.cert.report.controller; package com.jero.modules.cert.report.controller;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.common.api.vo.Result; import com.jero.common.api.vo.Result;
import com.jero.common.aspect.annotation.AutoLog; import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.system.base.controller.JeroController; import com.jero.common.system.base.controller.JeroController;
@@ -62,8 +64,10 @@ public class ParamsReportDetailEOController extends JeroController<ParamsReportD
@ApiOperation(value="上报库参数项-列表查询", notes="上报库参数项-列表查询") @ApiOperation(value="上报库参数项-列表查询", notes="上报库参数项-列表查询")
@GetMapping(value = "/list") @GetMapping(value = "/list")
// @RequiresPermissions("report:detail:list") // @RequiresPermissions("report:detail:list")
public Result<List<Map<String, Object>>> queryList(ParamsReportDetailEO paramsReportDetailEO, public Result<?> queryList(ParamsReportDetailEO paramsReportDetailEO,
@RequestParam(name = "cut") String cut) { @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="100") Integer pageSize,
@RequestParam(name = "cut") String cut) {
if (StringUtils.isNotEmpty(paramsReportDetailEO.getNioNumber())) { if (StringUtils.isNotEmpty(paramsReportDetailEO.getNioNumber())) {
paramsReportDetailEO.setNioNumber(paramsReportDetailEO.getNioNumber().replace("%","\\%")); paramsReportDetailEO.setNioNumber(paramsReportDetailEO.getNioNumber().replace("%","\\%"));
} }
@@ -77,7 +81,8 @@ public class ParamsReportDetailEOController extends JeroController<ParamsReportD
paramsReportDetailEO.setDre(paramsReportDetailEO.getDre().replace("%","\\%")); paramsReportDetailEO.setDre(paramsReportDetailEO.getDre().replace("%","\\%"));
} }
List<Map<String, Object>> list = paramsReportDetailEOService.queryList(paramsReportDetailEO, cut); IPage page = new Page(pageNo, pageSize);
IPage list = paramsReportDetailEOService.queryList(page, paramsReportDetailEO, cut);
return Result.OK(list); return Result.OK(list);
} }
@@ -98,7 +103,7 @@ public class ParamsReportDetailEOController extends JeroController<ParamsReportD
*/ */
@AutoLog(value = "上报库参数项-配置下拉选项(常规导出)") @AutoLog(value = "上报库参数项-配置下拉选项(常规导出)")
@ApiOperation(value="上报库参数项-配置下拉选项(常规导出)", notes="上报库参数项-配置下拉选项(常规导出)") @ApiOperation(value="上报库参数项-配置下拉选项(常规导出)", notes="上报库参数项-配置下拉选项(常规导出)")
@PostMapping(value = "/getConfigLabelList") @GetMapping(value = "/getConfigLabelList")
// @RequiresPermissions("report:detail:export:normal") // @RequiresPermissions("report:detail:export:normal")
public Result<?> getConfigLableList(ParamsReportDetailVO paramsReportDetailVO) { public Result<?> getConfigLableList(ParamsReportDetailVO paramsReportDetailVO) {
List<Map<String, String>> configLabelList = paramsReportDetailEOService.getConfigLabelList(paramsReportDetailVO); List<Map<String, String>> configLabelList = paramsReportDetailEOService.getConfigLabelList(paramsReportDetailVO);
@@ -6,7 +6,9 @@ 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.report.entity.ParamsReportEO; import com.jero.modules.cert.report.entity.ParamsReportEO;
import com.jero.modules.cert.report.entity.ParamsReportExportHistoryEO;
import com.jero.modules.cert.report.service.IParamsReportEOService; import com.jero.modules.cert.report.service.IParamsReportEOService;
import com.jero.modules.cert.report.service.IParamsReportExportHistoryEOService;
import com.jero.modules.system.util.StringUtils; import com.jero.modules.system.util.StringUtils;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
@@ -35,6 +37,9 @@ import java.util.List;
public class ParamsReportEOController extends JeroController<ParamsReportEO, IParamsReportEOService> { public class ParamsReportEOController extends JeroController<ParamsReportEO, IParamsReportEOService> {
@Autowired @Autowired
private IParamsReportEOService paramsReportEOService; private IParamsReportEOService paramsReportEOService;
@Autowired
private IParamsReportExportHistoryEOService paramsReportExportHistoryEOService;
/** /**
* 分页列表查询 * 分页列表查询
@@ -58,7 +63,7 @@ public class ParamsReportEOController extends JeroController<ParamsReportEO, IPa
} }
if (StringUtils.isNotEmpty(paramsReportEO.getTitle())) { if (StringUtils.isNotEmpty(paramsReportEO.getTitle())) {
paramsReportEO.setProjectName(paramsReportEO.getTitle().replace("%", "\\%")); paramsReportEO.setTitle(paramsReportEO.getTitle().replace("%", "\\%"));
} }
IPage page = new Page(pageNo, pageSize); IPage page = new Page(pageNo, pageSize);
@@ -66,6 +71,37 @@ public class ParamsReportEOController extends JeroController<ParamsReportEO, IPa
return Result.OK(pageList); return Result.OK(pageList);
} }
/**
* 分页列表查询
*
* @param paramsReportExportHistoryEO
* @param pageNo
* @param pageSize
* @return
*/
@AutoLog(value = "上报库-导出历史分页查询")
@ApiOperation(value="上报库-导出历史分页查询", notes="上报库-导出历史分页查询")
@GetMapping(value = "/exportHistoryPage")
// @RequiresPermissions("params:report:history")
public Result<?> exportHistoryPage(ParamsReportExportHistoryEO paramsReportExportHistoryEO,
@RequestParam(name="cut") String cut,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
if (StringUtils.isNotEmpty(paramsReportExportHistoryEO.getProjectName())) {
paramsReportExportHistoryEO.setProjectName(paramsReportExportHistoryEO.getProjectName().replace("%", "\\%"));
}
if (StringUtils.isNotEmpty(paramsReportExportHistoryEO.getTitle())) {
paramsReportExportHistoryEO.setTitle(paramsReportExportHistoryEO.getTitle().replace("%", "\\%"));
}
IPage page = new Page(pageNo, pageSize);
IPage pageList = paramsReportExportHistoryEOService.queryPage(page, paramsReportExportHistoryEO, cut);
return Result.OK(pageList);
}
@@ -0,0 +1,98 @@
package com.jero.modules.cert.report.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
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.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
/**
* @Description: 上报库导出历史
* @Author: jero-boot
* @Date: 2022-07-04
* @Version: V1.0
*/
@Data
@TableName("params_report_export_history")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="params_report_export_history对象", description="上报库导出历史")
public class ParamsReportExportHistoryEO implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**所属部门*/
@ApiModelProperty(value = "所属部门")
private String sysOrgCode;
/**上报库id*/
@Excel(name = "上报库id", width = 15)
@ApiModelProperty(value = "上报库id")
private String paramsManifestId;
/**导出类型*/
@Excel(name = "导出类型", width = 15)
@ApiModelProperty(value = "导出类型")
private String exportType;
/**导出时间*/
@Excel(name = "导出时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "导出时间")
private java.util.Date exportTime;
/**导出文件id*/
@Excel(name = "导出文件id", width = 15)
@ApiModelProperty(value = "导出文件id")
private String exportFileId;
@TableField(exist = false)
@ApiModelProperty(value = "导出文件名称")
private String exportFileName;
@TableField(exist = false)
@ApiModelProperty(value = "项目名称")
private String projectName;
@TableField(exist = false)
@ApiModelProperty(value = "清单标题")
private String title;
}
@@ -0,0 +1,59 @@
package com.jero.modules.cert.report.enums;
import com.jero.common.constant.enums.CutEnum;
import java.util.HashMap;
import java.util.Map;
public enum ExportTypeEnum {
NORMAL("常规导出","1","Normal export"),
CUSTOM("自定义导出","2","Custom export");
String name;
String value;
String enName;
ExportTypeEnum(String name, String value, String enName) {
this.name = name;
this.value = value;
this.enName = enName;
}
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 (ExportTypeEnum exportTypeEnum : ExportTypeEnum.values()) {
map.put(exportTypeEnum.getValue(), exportTypeEnum.getName());
}
} else if (CutEnum.EN.getValue().equals(cut)) {
for (ExportTypeEnum exportTypeEnum : ExportTypeEnum.values()) {
map.put(exportTypeEnum.getValue(), exportTypeEnum.getEnName());
}
}
return map;
}
}
@@ -1,6 +1,7 @@
package com.jero.modules.cert.report.mapper; package com.jero.modules.cert.report.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO; import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO;
import com.jero.modules.cert.report.entity.ParamsReportDetailEO; import com.jero.modules.cert.report.entity.ParamsReportDetailEO;
import com.jero.modules.cert.report.vo.ParamsReportDetailVO; import com.jero.modules.cert.report.vo.ParamsReportDetailVO;
@@ -19,6 +20,8 @@ public interface ParamsReportDetailEOMapper extends BaseMapper<ParamsReportDetai
List<ParamsReportDetailEO> listInfo(@Param("paramsReportDetailEO") ParamsReportDetailEO paramsReportDetailEO); List<ParamsReportDetailEO> listInfo(@Param("paramsReportDetailEO") ParamsReportDetailEO paramsReportDetailEO);
IPage pageInfo(@Param("page") IPage page, @Param("paramsReportDetailEO") ParamsReportDetailEO paramsReportDetailEO);
List<Map<String, Object>> listInfoForExport(@Param("idList") List<String> idList, List<Map<String, Object>> listInfoForExport(@Param("idList") List<String> idList,
@Param("paramsReportDetailVO") ParamsReportDetailVO paramsReportDetailVO); @Param("paramsReportDetailVO") ParamsReportDetailVO paramsReportDetailVO);
@@ -0,0 +1,19 @@
package com.jero.modules.cert.report.mapper;
import java.util.List;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import com.jero.modules.cert.report.entity.ParamsReportExportHistoryEO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 上报库导出历史
* @Author: jero-boot
* @Date: 2022-07-04
* @Version: V1.0
*/
public interface ParamsReportExportHistoryEOMapper extends BaseMapper<ParamsReportExportHistoryEO> {
IPage pageInfo(@Param("page") IPage page, ParamsReportExportHistoryEO paramsReportExportHistoryEO);
}
@@ -91,6 +91,13 @@
order by nio_number asc, sync_time desc order by nio_number asc, sync_time desc
</select> </select>
<select id="pageInfo" resultMap="ParamsReportDetailEOResultMap">
select *
from params_report_detail
<include refid="BaseQuerySql"/>
order by nio_number asc, sync_time desc
</select>
<select id="listInfoForExport" resultType="java.util.LinkedHashMap"> <select id="listInfoForExport" resultType="java.util.LinkedHashMap">
select select
prd.id as id, prd.id as id,
@@ -32,7 +32,7 @@
<where> <where>
<if test="paramsReportEO != null"> <if test="paramsReportEO != null">
<if test="paramsReportEO.title !=null and paramsReportEO.title !=''"> <if test="paramsReportEO.title !=null and paramsReportEO.title !=''">
AND title LIKE CONCAT(CONCAT('%',#{paramsReportEO.paramsManifestTitle}),'%') AND title LIKE CONCAT(CONCAT('%',#{paramsReportEO.title}),'%')
</if> </if>
<if test="paramsReportEO.projectName !=null and paramsReportEO.projectName !=''"> <if test="paramsReportEO.projectName !=null and paramsReportEO.projectName !=''">
AND project_name LIKE CONCAT(CONCAT('%',#{paramsReportEO.projectName}),'%') AND project_name LIKE CONCAT(CONCAT('%',#{paramsReportEO.projectName}),'%')
@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jero.modules.cert.report.mapper.ParamsReportExportHistoryEOMapper">
<resultMap id="ParamsReportExportHistoryEOResultMap" type="com.jero.modules.cert.report.entity.ParamsReportExportHistoryEO">
<id column="id" property="id" />
<result column="create_by" property="createBy" />
<result column="create_time" property="createTime" />
<result column="update_by" property="updateBy" />
<result column="update_time" property="updateTime" />
<result column="sys_org_code" property="sysOrgCode" />
<result column="params_manifest_id" property="paramsManifestId" />
<result column="export_type" property="exportType" />
<result column="export_time" property="exportTime" />
<result column="export_file_id" property="exportFileId" />
</resultMap>
<sql id="BaseColumnList">
preh.id as id,
preh.export_type as export_type,
preh.export_time as export_time,
preh.export_file_id as export_file_id,
preh.params_manifest_id as params_manifest_id,
pr.create_by as create_by,
pr.create_time as create_time,
pr.update_by as update_by,
pr.update_time as update_time,
pm.title as title,
concat(pni.project_name,'-',pyni.year_name) as project_name
</sql>
<sql id="BaseQuerySql">
<where>
<if test="paramsReportExportHistoryEO != null">
<if test="paramsReportExportHistoryEO.projectName !=null and paramsReportExportHistoryEO.projectName !=''">
AND project_name LIKE CONCAT(CONCAT('%',#{paramsReportExportHistoryEO.projectName}),'%')
</if>
<if test="paramsReportExportHistoryEO.title !=null and paramsReportExportHistoryEO.title !=''">
AND title LIKE CONCAT(CONCAT('%',#{paramsReportExportHistoryEO.title}),'%')
</if>
<if test="paramsReportExportHistoryEO.paramsManifestId !=null and paramsReportExportHistoryEO.paramsManifestId !=''">
AND params_manifest_id = #{paramsReportExportHistoryEO.paramsManifestId}
</if>
</if>
</where>
</sql>
<select id="pageInfo" resultMap="ParamsReportExportHistoryEOResultMap">
select tmp_tb.* from(
select <include refid="BaseColumnList"/>
from params_report_export_history preh
left join params_report as pr on pr.id = preh.params_manifest_id
left join params_manifest as pm on pm.id = pr.old_params_manifest_id
left join project_library_base as plb on plb.id = pm.project_id
left join project_name_info as pni on plb.project_name_id = pni.id
left join project_year_name_info as pyni on plb.year_name_id = pyni.id
) tmp_tb
<include refid="BaseQuerySql"/>
order by export_time desc
</select>
</mapper>
@@ -1,5 +1,6 @@
package com.jero.modules.cert.report.service; package com.jero.modules.cert.report.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.cert.report.entity.ParamsReportDetailEO; import com.jero.modules.cert.report.entity.ParamsReportDetailEO;
import com.jero.modules.cert.report.vo.ParamsReportDetailVO; import com.jero.modules.cert.report.vo.ParamsReportDetailVO;
@@ -19,11 +20,12 @@ public interface IParamsReportDetailEOService extends IService<ParamsReportDetai
/** /**
* 列表查询 * 列表查询
* @param page
* @param paramsReportDetailEO * @param paramsReportDetailEO
* @param cut * @param cut
* @return * @return
*/ */
List<Map<String, Object>> queryList(ParamsReportDetailEO paramsReportDetailEO, String cut); IPage queryList(IPage page, ParamsReportDetailEO paramsReportDetailEO, String cut);
/** /**
* 列表表头中英文切换 * 列表表头中英文切换
@@ -0,0 +1,64 @@
package com.jero.modules.cert.report.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.modules.cert.report.entity.ParamsReportExportHistoryEO;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* @Description: 上报库导出历史
* @Author: jero-boot
* @Date: 2022-07-04
* @Version: V1.0
*/
public interface IParamsReportExportHistoryEOService extends IService<ParamsReportExportHistoryEO> {
/**
* 保存
*
* @param paramsReportExportHistoryEO
* @return
*/
void add(ParamsReportExportHistoryEO paramsReportExportHistoryEO);
/**
* 更新
*
* @param paramsReportExportHistoryEO
* @return
*/
void editById(ParamsReportExportHistoryEO paramsReportExportHistoryEO);
/**
* 通过id删除
*
* @param id
* @return
*/
void deleteById(String id);
/**
* 批量删除
*
* @param ids
* @return
*/
void deleteByIds(List<String> ids);
/**
* 通过id查询
*
* @param id
* @return
*/
ParamsReportExportHistoryEO queryById(String id);
/**
* 列表查询
*
* @return
*/
List<ParamsReportExportHistoryEO> queryList();
IPage queryPage(IPage page, ParamsReportExportHistoryEO paramsReportExportHistoryEO, String cut);
}
@@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.ZipUtil; import cn.hutool.core.util.ZipUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.jero.common.constant.enums.CutEnum; import com.jero.common.constant.enums.CutEnum;
@@ -20,10 +21,13 @@ import com.jero.modules.cert.collect.vo.ParamsConfigDataVO;
import com.jero.modules.cert.report.entity.ParamsReportConfigDataEO; import com.jero.modules.cert.report.entity.ParamsReportConfigDataEO;
import com.jero.modules.cert.report.entity.ParamsReportConfigEO; import com.jero.modules.cert.report.entity.ParamsReportConfigEO;
import com.jero.modules.cert.report.entity.ParamsReportDetailEO; import com.jero.modules.cert.report.entity.ParamsReportDetailEO;
import com.jero.modules.cert.report.entity.ParamsReportExportHistoryEO;
import com.jero.modules.cert.report.enums.ExportTypeEnum;
import com.jero.modules.cert.report.mapper.ParamsReportDetailEOMapper; import com.jero.modules.cert.report.mapper.ParamsReportDetailEOMapper;
import com.jero.modules.cert.report.service.IParamsReportConfigDataEOService; import com.jero.modules.cert.report.service.IParamsReportConfigDataEOService;
import com.jero.modules.cert.report.service.IParamsReportConfigEOService; import com.jero.modules.cert.report.service.IParamsReportConfigEOService;
import com.jero.modules.cert.report.service.IParamsReportDetailEOService; import com.jero.modules.cert.report.service.IParamsReportDetailEOService;
import com.jero.modules.cert.report.service.IParamsReportExportHistoryEOService;
import com.jero.modules.cert.report.vo.ParamsReportDetailVO; import com.jero.modules.cert.report.vo.ParamsReportDetailVO;
import com.jero.modules.cert.template.enums.ControlTypeEnum; import com.jero.modules.cert.template.enums.ControlTypeEnum;
import com.jero.modules.document.enums.FieldTypeEnum; import com.jero.modules.document.enums.FieldTypeEnum;
@@ -42,6 +46,7 @@ import com.jero.modules.system.entity.SysDictItem;
import com.jero.modules.system.service.ISysDictItemService; import com.jero.modules.system.service.ISysDictItemService;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.http.entity.ContentType;
import org.apache.poi.common.usermodel.HyperlinkType; import org.apache.poi.common.usermodel.HyperlinkType;
import org.apache.poi.hssf.usermodel.*; import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.util.HSSFColor; import org.apache.poi.hssf.util.HSSFColor;
@@ -53,7 +58,9 @@ import org.apache.poi.xssf.usermodel.*;
import org.aspectj.util.FileUtil; import org.aspectj.util.FileUtil;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.mock.web.MockMultipartFile;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@@ -62,6 +69,7 @@ import java.lang.reflect.Field;
import java.nio.file.Files; import java.nio.file.Files;
import java.nio.file.Paths; import java.nio.file.Paths;
import java.nio.file.StandardOpenOption; import java.nio.file.StandardOpenOption;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -92,6 +100,9 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
@Autowired @Autowired
private IOSSFileService ossFileService; private IOSSFileService ossFileService;
@Autowired
private IParamsReportExportHistoryEOService paramsReportExportHistoryEOService;
@Value(value = "${jero.path.upload}") @Value(value = "${jero.path.upload}")
private String uploadpath; private String uploadpath;
@@ -101,10 +112,11 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
* @return * @return
*/ */
@Override @Override
public List<Map<String, Object>> queryList(ParamsReportDetailEO paramsReportDetailEO, String cut) { public IPage queryList(IPage page, ParamsReportDetailEO paramsReportDetailEO, String cut) {
String paramsManifestId = paramsReportDetailEO.getParamsManifestId(); String paramsManifestId = paramsReportDetailEO.getParamsManifestId();
List<ParamsReportDetailEO> list = paramsReportDetailEOMapper.listInfo(paramsReportDetailEO); // 查询固定列 IPage pageInfo = paramsReportDetailEOMapper.pageInfo(page, paramsReportDetailEO); // 查询固定列
List<ParamsReportDetailEO> list = pageInfo.getRecords(); // 查询固定列
List<ParamsReportConfigEO> paramsConfigEOList = paramsReportConfigEOService.queryList(paramsManifestId); // 查询配置列 List<ParamsReportConfigEO> paramsConfigEOList = paramsReportConfigEOService.queryList(paramsManifestId); // 查询配置列
// 普通数据字典 // 普通数据字典
@@ -193,7 +205,8 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
listMap.add(manifestMap); listMap.add(manifestMap);
}); });
return listMap; pageInfo.setRecords(listMap);
return pageInfo;
} }
/** /**
@@ -483,7 +496,10 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
OutputStream excelOS = null; OutputStream excelOS = null;
XSSFWorkbook workbook = new XSSFWorkbook(); XSSFWorkbook workbook = new XSSFWorkbook();
String fileOriName = "上报库参数项常规导出信息"; String fileOriName = "上报库参数项常规导出信息";
if (org.apache.commons.lang.StringUtils.isNotEmpty(paramsReportDetailVO.getExportName())) { if (CutEnum.EN.getValue().equals(paramsReportDetailVO.getCut())) {
fileOriName = "Params report normal data";
}
if (StringUtils.isNotEmpty(paramsReportDetailVO.getExportName())) {
fileOriName = paramsReportDetailVO.getExportName(); fileOriName = paramsReportDetailVO.getExportName();
} }
//创建临时文件夹 //创建临时文件夹
@@ -581,6 +597,18 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
while ((len = fis.read()) != -1) { while ((len = fis.read()) != -1) {
os.write(len); os.write(len);
} }
// 添加导出历史
String uploadFileName = fileOriName + ".zip";
MultipartFile mFile = new MockMultipartFile(uploadFileName, uploadFileName, ContentType.APPLICATION_OCTET_STREAM.toString(), fis); // 用于上传
OSSFile ossFile = ossFileService.uploadLocalOfCos(mFile, "/report", "", CutEnum.CN.getValue()); // 上传导出的压缩包
ParamsReportExportHistoryEO paramsReportExportHistoryEO = new ParamsReportExportHistoryEO();
paramsReportExportHistoryEO.setExportType(ExportTypeEnum.NORMAL.getValue());
paramsReportExportHistoryEO.setExportFileId(ossFile.getId());
paramsReportExportHistoryEO.setParamsManifestId(paramsReportDetailVO.getParamsManifestId());
paramsReportExportHistoryEO.setExportTime(new Date());
paramsReportExportHistoryEOService.add(paramsReportExportHistoryEO);
os.flush(); os.flush();
os.close(); // 后开先关 os.close(); // 后开先关
fis.close(); // 先开后关 fis.close(); // 先开后关
@@ -878,8 +906,22 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
field.setAccessible(true); field.setAccessible(true);
// 获取在对象f中属性fields[i]对应的对象中的变量 // 获取在对象f中属性fields[i]对应的对象中的变量
Object o = field.get(obj); Object o = field.get(obj);
if (o != null) if (o != null) {
map.put(varName, o); if (Date.class.equals(field.getType())) {
Date date = (Date) o;
String pattern = "";
if ("deadline".equals(varName)) {
pattern = "yyyy-MM-dd";
} else {
pattern = "yyyy-MM-dd HH:mm:ss";
}
SimpleDateFormat formatter=new SimpleDateFormat(pattern);
String time=formatter.format(date);
map.put(varName, time);
} else {
map.put(varName, o);
}
}
// 恢复访问控制权限 // 恢复访问控制权限
field.setAccessible(accessFlag); field.setAccessible(accessFlag);
} catch (IllegalArgumentException ex) { } catch (IllegalArgumentException ex) {
@@ -0,0 +1,122 @@
package com.jero.modules.cert.report.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.modules.cert.report.entity.ParamsReportExportHistoryEO;
import com.jero.modules.cert.report.enums.ExportTypeEnum;
import com.jero.modules.cert.report.mapper.ParamsReportExportHistoryEOMapper;
import com.jero.modules.cert.report.service.IParamsReportExportHistoryEOService;
import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Date;
import java.util.Map;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 上报库导出历史
* @Author: jero-boot
* @Date: 2022-07-04
* @Version: V1.0
*/
@Service
public class ParamsReportExportHistoryEOServiceImpl extends ServiceImpl<ParamsReportExportHistoryEOMapper, ParamsReportExportHistoryEO> implements IParamsReportExportHistoryEOService {
@Autowired
private ParamsReportExportHistoryEOMapper paramsReportExportHistoryEOMapper;
@Autowired
private IOSSFileService ossFileService;
/**
* 保存
*
* @param paramsReportExportHistoryEO
* @return
*/
@Override
public void add(ParamsReportExportHistoryEO paramsReportExportHistoryEO) {
Date now = new Date();
paramsReportExportHistoryEO.setCreateTime(now);
paramsReportExportHistoryEO.setUpdateTime(now);
save(paramsReportExportHistoryEO);
}
/**
* 更新
*
* @param paramsReportExportHistoryEO
* @return
*/
@Override
public void editById(ParamsReportExportHistoryEO paramsReportExportHistoryEO) {
Date now = new Date();
paramsReportExportHistoryEO.setUpdateTime(now);
saveOrUpdate(paramsReportExportHistoryEO);
}
/**
* 通过id删除
*
* @param id
* @return
*/
@Override
public void deleteById(String id) {
removeById(id);
}
/**
* 批量删除
*
* @param ids
* @return
*/
@Override
public void deleteByIds(List<String> ids) {
removeByIds(ids);
}
/**
* 通过id查询
*
* @param id
* @return
*/
@Override
public ParamsReportExportHistoryEO queryById(String id) {
return getById(id);
}
/**
* 列表查询
*
* @return
*/
@Override
public List<ParamsReportExportHistoryEO> queryList() {
return list();
}
@Override
public IPage queryPage(IPage page, ParamsReportExportHistoryEO paramsReportExportHistoryEO, String cut) {
IPage pageInfo = paramsReportExportHistoryEOMapper.pageInfo(page, paramsReportExportHistoryEO);
List<ParamsReportExportHistoryEO> list = pageInfo.getRecords();
Map<String, String> exportTypeMap = ExportTypeEnum.toMap(cut);
list.forEach(exportHistoryEO -> {
// 处理文件名
OSSFile ossFile = ossFileService.getById(exportHistoryEO.getExportFileId());
if (ObjectUtil.isNotEmpty(ossFile)) {
exportHistoryEO.setExportFileName(ossFile.getFileName());
}
// 处理导出类型
exportHistoryEO.setExportType(exportTypeMap.get(exportHistoryEO.getExportType()));
});
return pageInfo;
}
}
@@ -111,7 +111,7 @@ public class ParamsInfoEO implements Serializable {
private String controlType; private String controlType;
/**控件校验*/ /**控件校验*/
@Excel(name = "控件校验", width = 15, replace = {"无_1","中文_2","整数_3","正浮点数_4","整数或小数_5","一位小数_6","两位小数_7","三位小数_8","四位小数_9"}) @Excel(name = "控件校验", width = 15, replace = {"无_1","中文_2","整数_3","正浮点数_4","整数或小数_5","一位小数_6","两位小数_7","三位小数_8","四位小数_9"})
@ApiModelProperty(value = "控件校验") @ApiModelProperty(value = "控件校验")
private String controlVerify; private String controlVerify;
@@ -13,7 +13,7 @@ import java.util.Map;
public enum ControlVerifyEnum { public enum ControlVerifyEnum {
NULL("","Null","1"), NULL("","Null","1"),
CHINESE("中文","Chinese","2"), CHINESE("中文","Chinese","2"),
POSITIVE_INTEGER("整数","Positive integer","3"), POSITIVE_INTEGER("整数","Integer","3"),
POSITIVE_FLOAT("正浮点数","Positive float","4"), POSITIVE_FLOAT("正浮点数","Positive float","4"),
INTEGER_DECIMAL("整数或小数","Integer decimal","5"), INTEGER_DECIMAL("整数或小数","Integer decimal","5"),
DECIMAL_ONE("一位小数","Decimal one","6"), DECIMAL_ONE("一位小数","Decimal one","6"),
@@ -94,7 +94,7 @@ public class ParamsInfoEnExport {
private String controlType; private String controlType;
/**控件校验*/ /**控件校验*/
@Excel(name = "Control Verify", width = 15, replace = {"Null_1","Chinese_2","Positive integer_3","Positive float_4","Integer decimal_5","Decimal one_6","Decimal two_7","Decimal three_8","Decimal four_9"}) @Excel(name = "Control Verify", width = 15, replace = {"Null_1","Chinese_2","Integer_3","Positive float_4","Integer decimal_5","Decimal one_6","Decimal two_7","Decimal three_8","Decimal four_9"})
@ApiModelProperty(value = "控件校验") @ApiModelProperty(value = "控件校验")
private String controlVerify; private String controlVerify;
@@ -203,6 +203,9 @@ public class OSSFileServiceImpl extends ServiceImpl<OSSFileMapper, OSSFile> impl
OSSFile oSSFile = new OSSFile(); OSSFile oSSFile = new OSSFile();
String ctxPath = uploadCospath; String ctxPath = uploadCospath;
if (org.apache.commons.lang.StringUtils.isNotBlank(bizPath)) {
ctxPath += bizPath;
}
String fileName = null; String fileName = null;
String fileType = null; String fileType = null;
@@ -227,7 +230,17 @@ public class OSSFileServiceImpl extends ServiceImpl<OSSFileMapper, OSSFile> impl
throw new JeroBootException("Only upload pdf,word,excel type of file Please select the file again"); throw new JeroBootException("Only upload pdf,word,excel type of file Please select the file again");
} }
} }
} else { } else if ("2".equals(state)) {
String fileTypeStrTwo = ".doc,.DOC,.docx,.DOCX,.xls, .XLS,.xlsx,.XLSX";
//固定文件
if (!fileTypeStrTwo.contains(fileType)) {
if (cut.equals(CutEnum.CN.getValue())) {
throw new JeroBootException("只能够上传word,excel类型的文件。请重新选择文件!");
} else {
throw new JeroBootException("Only upload word,excel type of file Please select the file again");
}
}
} else {
if (CommonUtils.limitFileSuffix(orgName, fileSuffixLimits)) { if (CommonUtils.limitFileSuffix(orgName, fileSuffixLimits)) {
if (cut.equals(CutEnum.CN.getValue())) { if (cut.equals(CutEnum.CN.getValue())) {
throw new JeroBootException("不能上传" + StringUtils.join(fileSuffixLimits, ",") + "类型的文件。请重新选择文件!"); throw new JeroBootException("不能上传" + StringUtils.join(fileSuffixLimits, ",") + "类型的文件。请重新选择文件!");
@@ -35,7 +35,7 @@ import com.jero.common.aspect.annotation.AutoLog;
public class LawsOpinionAssessmentResultEOController extends JeroController<LawsOpinionAssessmentResultEO, ILawsOpinionAssessmentResultEOService> { public class LawsOpinionAssessmentResultEOController extends JeroController<LawsOpinionAssessmentResultEO, ILawsOpinionAssessmentResultEOService> {
@Autowired @Autowired
private ILawsOpinionAssessmentResultEOService lawsOpinionAssessmentResultEOService; private ILawsOpinionAssessmentResultEOService lawsOpinionAssessmentResultEOService;
/** /**
* 分页列表查询 * 分页列表查询
* *
@@ -167,4 +167,11 @@ public class LawsOpinionAssessmentResultEOController extends JeroController<Laws
return super.importExcel(request, response, LawsOpinionAssessmentResultEO.class); return super.importExcel(request, response, LawsOpinionAssessmentResultEO.class);
} }
@AutoLog(value = "法规意见收集-评估结果表-添加")
@ApiOperation(value="法规意见收集-评估结果表-添加", notes="法规意见收集-评估结果表-添加")
@PostMapping(value = "/insertBatch")
public Result<?> insertBatch(@Validated @RequestBody List<LawsOpinionAssessmentResultEO> lawsOpinionAssessmentResultEOList) {
this.lawsOpinionAssessmentResultEOService.insertBatch(lawsOpinionAssessmentResultEOList);
return Result.OK("添加成功!");
}
} }
@@ -53,10 +53,12 @@ public class LawsOpinionGatherEOController extends JeroController<LawsOpinionGat
public Result<?> queryPageList(LawsOpinionGatherEO lawsOpinionGatherEO, public Result<?> queryPageList(LawsOpinionGatherEO lawsOpinionGatherEO,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
@RequestParam(name="cut", defaultValue="cn") String cut,
HttpServletRequest req) { HttpServletRequest req) {
QueryWrapper<LawsOpinionGatherEO> queryWrapper = QueryGenerator.initQueryWrapper(lawsOpinionGatherEO, req.getParameterMap()); QueryWrapper<LawsOpinionGatherEO> queryWrapper = QueryGenerator.initQueryWrapper(lawsOpinionGatherEO, req.getParameterMap());
Page<LawsOpinionGatherEO> page = new Page<LawsOpinionGatherEO>(pageNo, pageSize); Page<LawsOpinionGatherEO> page = new Page<LawsOpinionGatherEO>(pageNo, pageSize);
IPage<LawsOpinionGatherEO> pageList = lawsOpinionGatherEOService.page(page, queryWrapper); IPage<LawsOpinionGatherEO> pageList = lawsOpinionGatherEOService.page(page, queryWrapper);
this.lawsOpinionGatherEOService.disposeData(pageList.getRecords(),cut);
return Result.OK(pageList); return Result.OK(pageList);
} }
@@ -68,8 +68,11 @@ public class LawsProcessHistoryEOController extends JeroController<LawsProcessHi
@AutoLog(value = "法规-流程历史表-列表查询") @AutoLog(value = "法规-流程历史表-列表查询")
@ApiOperation(value="法规-流程历史表-列表查询", notes="法规-流程历史表-列表查询") @ApiOperation(value="法规-流程历史表-列表查询", notes="法规-流程历史表-列表查询")
@GetMapping(value = "/list") @GetMapping(value = "/list")
public Result<List<LawsProcessHistoryEO>> queryList() { public Result<List<LawsProcessHistoryEO>> queryList(LawsProcessHistoryEO lawsProcessHistoryEO,
List<LawsProcessHistoryEO> list = lawsProcessHistoryEOService.queryList(); HttpServletRequest req,
@RequestParam(value = "cut",defaultValue = "cn") String cut) {
List<LawsProcessHistoryEO> list = lawsProcessHistoryEOService.queryList(lawsProcessHistoryEO,req,cut);
this.lawsProcessHistoryEOService.disposeData(list,cut);
return Result.OK(list); return Result.OK(list);
} }
@@ -4,6 +4,7 @@ import java.io.Serializable;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data; import lombok.Data;
@@ -77,6 +78,8 @@ public class LawsOpinionGatherEO implements Serializable {
@Excel(name = "收集结果", width = 15) @Excel(name = "收集结果", width = 15)
@ApiModelProperty(value = "收集结果") @ApiModelProperty(value = "收集结果")
private String gatherResult; private String gatherResult;
@TableField(exist = false)
private String gatherResultShow;
/**发起日期*/ /**发起日期*/
@Excel(name = "发起日期", width = 15, format = "yyyy-MM-dd") @Excel(name = "发起日期", width = 15, format = "yyyy-MM-dd")
@@ -4,6 +4,7 @@ import java.io.Serializable;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data; import lombok.Data;
@@ -67,6 +68,9 @@ public class LawsProcessHistoryEO implements Serializable {
@Excel(name = "操作节点", width = 15) @Excel(name = "操作节点", width = 15)
@ApiModelProperty(value = "操作节点") @ApiModelProperty(value = "操作节点")
private String taskDefinitionKey; private String taskDefinitionKey;
//操作节点展示字段
@TableField(exist = false)
private String taskDefinitionKeyName;
/**操作人id*/ /**操作人id*/
@Excel(name = "操作人id", width = 15) @Excel(name = "操作人id", width = 15)
@@ -77,6 +81,9 @@ public class LawsProcessHistoryEO implements Serializable {
@Excel(name = "操作角色编码", width = 15) @Excel(name = "操作角色编码", width = 15)
@ApiModelProperty(value = "操作角色编码") @ApiModelProperty(value = "操作角色编码")
private String operatorRoleCode; private String operatorRoleCode;
//操作角色展示字段
@TableField(exist = false)
private String operatorRoleName;
/**操作时间*/ /**操作时间*/
@Excel(name = "操作时间", width = 15, format = "yyyy-MM-dd") @Excel(name = "操作时间", width = 15, format = "yyyy-MM-dd")
@@ -0,0 +1,62 @@
package com.jero.modules.lawsOpinionGather.enums;
import com.alibaba.druid.util.StringUtils;
import com.jero.common.constant.enums.CutEnum;
/**
* 法规意见收集 节点枚举类
*/
public enum LawsOpinionGatherNodeEnum {
ENGINEER_INITIATED("gcsfq","工程师发起","Engineer initiated"),
APPRAISERS_EVALUATION("pgrpg","评估人评估","Appraiser's evaluation"),
;
String key;
String cnName;
String enName;
private LawsOpinionGatherNodeEnum(String key, String cnName, String enName) {
this.key = key;
this.cnName = cnName;
this.enName = enName;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public String getCnName() {
return cnName;
}
public void setCnName(String cnName) {
this.cnName = cnName;
}
public String getEnName() {
return enName;
}
public void setEnName(String enName) {
this.enName = enName;
}
public static String getTextByValue(String key,String cut) {
LawsOpinionGatherNodeEnum[] values = values();
for (LawsOpinionGatherNodeEnum lawsOpinionGatherNodeEnum : values) {
if (lawsOpinionGatherNodeEnum.key.equals(key)) {
if(StringUtils.equals(cut, CutEnum.CN.getValue())){
return lawsOpinionGatherNodeEnum.cnName;
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
return lawsOpinionGatherNodeEnum.enName;
}
}
}
return null;
}
}
@@ -0,0 +1,64 @@
package com.jero.modules.lawsOpinionGather.enums;
import com.jero.common.constant.enums.CutEnum;
import org.apache.commons.lang3.StringUtils;
/**
* 法规意见收集/法规技术评估流程使用
* 操作角色枚举类
*/
public enum OperatorRoleCodeEnum {
INITIATOR("发起人","Initiator","Initiator"),
EVALUATOR("评估人","Evaluator","Evaluator"),
;
String cnName;
String enName;
String value;
private OperatorRoleCodeEnum(String cnName, String value, String enName) {
this.cnName = cnName;
this.value = value;
this.enName = enName;
}
public String getCnName() {
return cnName;
}
public void setCnName(String cnName) {
this.cnName = cnName;
}
public String getEnName() {
return enName;
}
public void setEnName(String enName) {
this.enName = enName;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public static String getTextByValue(String value,String cut) {
OperatorRoleCodeEnum[] values = values();
for (OperatorRoleCodeEnum operatorRoleCodeEnum : values) {
if (operatorRoleCodeEnum.value.equals(value)) {
if(StringUtils.equals(cut, CutEnum.CN.getValue())){
return operatorRoleCodeEnum.cnName;
}else if(StringUtils.equals(cut, CutEnum.EN.getValue())){
return operatorRoleCodeEnum.enName;
}
}
}
return null;
}
}
@@ -58,4 +58,10 @@ public interface ILawsOpinionAssessmentResultEOService extends IService<LawsOpin
* @return * @return
*/ */
List<LawsOpinionAssessmentResultEO> queryList(); List<LawsOpinionAssessmentResultEO> queryList();
/**
* 批量新增
* @param lawsOpinionAssessmentResultEOList
*/
void insertBatch(List<LawsOpinionAssessmentResultEO> lawsOpinionAssessmentResultEOList);
} }
@@ -67,4 +67,10 @@ public interface ILawsOpinionGatherEOService extends IService<LawsOpinionGatherE
* @return * @return
*/ */
Result<?> processCall(JSONObject jsonObject); Result<?> processCall(JSONObject jsonObject);
/**
* 处理数据
* @param lawsOpinionGatherEOList
*/
void disposeData(List<LawsOpinionGatherEO> lawsOpinionGatherEOList,String cut);
} }
@@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSONObject;
import com.jero.common.api.vo.Result; import com.jero.common.api.vo.Result;
import com.jero.modules.lawsOpinionGather.entity.LawsProcessHistoryEO; import com.jero.modules.lawsOpinionGather.entity.LawsProcessHistoryEO;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import javax.servlet.http.HttpServletRequest;
import java.util.List; import java.util.List;
/** /**
@@ -59,7 +61,9 @@ public interface ILawsProcessHistoryEOService extends IService<LawsProcessHistor
* *
* @return * @return
*/ */
List<LawsProcessHistoryEO> queryList(); List<LawsProcessHistoryEO> queryList(LawsProcessHistoryEO lawsProcessHistoryEO, HttpServletRequest req,String cut);
public void disposeData(List<LawsProcessHistoryEO> datas,String cut);
/** /**
* 流程调用 * 流程调用
@@ -1,8 +1,12 @@
package com.jero.modules.lawsOpinionGather.service.impl; package com.jero.modules.lawsOpinionGather.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.lawsOpinionGather.entity.LawsOpinionAssessmentResultEO; import com.jero.modules.lawsOpinionGather.entity.LawsOpinionAssessmentResultEO;
import com.jero.modules.lawsOpinionGather.mapper.LawsOpinionAssessmentResultEOMapper; import com.jero.modules.lawsOpinionGather.mapper.LawsOpinionAssessmentResultEOMapper;
import com.jero.modules.lawsOpinionGather.service.ILawsOpinionAssessmentResultEOService; import com.jero.modules.lawsOpinionGather.service.ILawsOpinionAssessmentResultEOService;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
import java.util.Date; import java.util.Date;
@@ -86,4 +90,20 @@ public class LawsOpinionAssessmentResultEOServiceImpl extends ServiceImpl<LawsOp
public List<LawsOpinionAssessmentResultEO> queryList() { public List<LawsOpinionAssessmentResultEO> queryList() {
return list(); return list();
} }
@Override
public void insertBatch(List<LawsOpinionAssessmentResultEO> lawsOpinionAssessmentResultEOList) {
if (CollectionUtils.isNotEmpty(lawsOpinionAssessmentResultEOList)) {
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
LawsOpinionAssessmentResultEO lawsOpinionAssessmentResultEO = lawsOpinionAssessmentResultEOList.get(0);
QueryWrapper<LawsOpinionAssessmentResultEO> deleteWrapper = new QueryWrapper<>();
deleteWrapper.lambda().eq(LawsOpinionAssessmentResultEO::getActiProcInstId,lawsOpinionAssessmentResultEO.getActiProcInstId());
deleteWrapper.lambda().eq(LawsOpinionAssessmentResultEO::getLawsOpinionGatherId,lawsOpinionAssessmentResultEO.getLawsOpinionGatherId());
deleteWrapper.lambda().eq(LawsOpinionAssessmentResultEO::getCreateBy,sysUser.getUsername());
this.baseMapper.delete(deleteWrapper);
this.saveBatch(lawsOpinionAssessmentResultEOList);
}
}
} }
@@ -4,10 +4,12 @@ import com.alibaba.fastjson.JSONObject;
import com.jero.common.api.vo.Result; import com.jero.common.api.vo.Result;
import com.jero.common.exception.JeroBootException; import com.jero.common.exception.JeroBootException;
import com.jero.modules.lawsOpinionGather.entity.LawsOpinionGatherEO; import com.jero.modules.lawsOpinionGather.entity.LawsOpinionGatherEO;
import com.jero.modules.lawsOpinionGather.enums.GatherResultEnum;
import com.jero.modules.lawsOpinionGather.mapper.LawsOpinionGatherEOMapper; import com.jero.modules.lawsOpinionGather.mapper.LawsOpinionGatherEOMapper;
import com.jero.modules.lawsOpinionGather.service.ILawsOpinionGatherEOService; import com.jero.modules.lawsOpinionGather.service.ILawsOpinionGatherEOService;
import com.jero.modules.project.enums.OperatorTypeEnum; import com.jero.modules.project.enums.OperatorTypeEnum;
import com.jero.modules.project.enums.RequestSourceEnum; import com.jero.modules.project.enums.RequestSourceEnum;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
@@ -124,4 +126,15 @@ public class LawsOpinionGatherEOServiceImpl extends ServiceImpl<LawsOpinionGathe
} }
return new Result<>().success("调用成功!"); return new Result<>().success("调用成功!");
} }
@Override
public void disposeData(List<LawsOpinionGatherEO> lawsOpinionGatherEOList,String cut) {
if(CollectionUtils.isNotEmpty(lawsOpinionGatherEOList)){
lawsOpinionGatherEOList.forEach(lawsOpinionGather -> {
if(StringUtils.isNotEmpty(lawsOpinionGather.getGatherResult())){
lawsOpinionGather.setGatherResultShow(GatherResultEnum.getTextByValue(lawsOpinionGather.getGatherResult(),cut));
}
});
}
}
} }
@@ -2,13 +2,18 @@ package com.jero.modules.lawsOpinionGather.service.impl;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jero.common.api.vo.Result; import com.jero.common.api.vo.Result;
import com.jero.common.exception.JeroBootException; import com.jero.common.exception.JeroBootException;
import com.jero.common.system.query.QueryGenerator;
import com.jero.modules.lawsOpinionGather.entity.LawsProcessHistoryEO; import com.jero.modules.lawsOpinionGather.entity.LawsProcessHistoryEO;
import com.jero.modules.lawsOpinionGather.enums.LawsOpinionGatherNodeEnum;
import com.jero.modules.lawsOpinionGather.enums.OperatorRoleCodeEnum;
import com.jero.modules.lawsOpinionGather.mapper.LawsProcessHistoryEOMapper; import com.jero.modules.lawsOpinionGather.mapper.LawsProcessHistoryEOMapper;
import com.jero.modules.lawsOpinionGather.service.ILawsProcessHistoryEOService; import com.jero.modules.lawsOpinionGather.service.ILawsProcessHistoryEOService;
import com.jero.modules.project.enums.OperatorTypeEnum; import com.jero.modules.project.enums.OperatorTypeEnum;
import com.jero.modules.project.enums.RequestSourceEnum; import com.jero.modules.project.enums.RequestSourceEnum;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -17,6 +22,8 @@ import java.util.List;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import javax.servlet.http.HttpServletRequest;
/** /**
* @Description: 法规-流程历史表 * @Description: 法规-流程历史表
* @Author: jero-boot * @Author: jero-boot
@@ -92,10 +99,27 @@ public class LawsProcessHistoryEOServiceImpl extends ServiceImpl<LawsProcessHist
* @return * @return
*/ */
@Override @Override
public List<LawsProcessHistoryEO> queryList() { public List<LawsProcessHistoryEO> queryList(LawsProcessHistoryEO lawsProcessHistoryEO, HttpServletRequest req,String cut) {
return list(); QueryWrapper<LawsProcessHistoryEO> queryWrapper = QueryGenerator.initQueryWrapper(lawsProcessHistoryEO, req.getParameterMap());
List<LawsProcessHistoryEO> lawsProcessHistoryEOList = this.baseMapper.selectList(queryWrapper);
return lawsProcessHistoryEOList;
} }
@Override
public void disposeData(List<LawsProcessHistoryEO> datas, String cut){
if(CollectionUtils.isNotEmpty(datas)){
datas.forEach(data -> {
if(StringUtils.isNotEmpty(data.getOperatorRoleCode())){
data.setOperatorRoleName(OperatorRoleCodeEnum.getTextByValue(data.getOperatorRoleCode(),cut));
}
if(StringUtils.isNotEmpty(data.getTaskDefinitionKey())){
data.setTaskDefinitionKeyName(LawsOpinionGatherNodeEnum.getTextByValue(data.getTaskDefinitionKey(),cut));
}
});
}
}
@Override @Override
public Result<?> processCall(JSONObject jsonObject) { public Result<?> processCall(JSONObject jsonObject) {
String requestSource = jsonObject.getString("requestSource"); String requestSource = jsonObject.getString("requestSource");
@@ -43,7 +43,9 @@ public class TaskCommonQuery {
private String prcNum; private String prcNum;
@ApiModelProperty(value = "流程类型") @ApiModelProperty(value = "流程类型")
private String prcType = FlowTypeEnum.RWQRLC.getValue(); private String prcType;
private String prcTypes = FlowTypeEnum.RWQRLC.getValue() + "," + FlowTypeEnum.FGYJSJLC.getValue();
@ApiModelProperty(value = "高级搜索字符串") @ApiModelProperty(value = "高级搜索字符串")
private String advanceSearchVOStr; private String advanceSearchVOStr;
+23 -9
View File
@@ -176,6 +176,8 @@ module.exports = {
MenuType: 'Menu type', MenuType: 'Menu type',
menu: 'Menu', menu: 'Menu',
ButtonsPermissions: 'Buttons / permissions', ButtonsPermissions: 'Buttons / permissions',
ConventionalExport:'Conventional export',
CustomExport:'Custom export',
assembly: 'Assembly', assembly: 'Assembly',
route: 'Route', route: 'Route',
AddSubmenu: 'Add submenu', AddSubmenu: 'Add submenu',
@@ -385,6 +387,7 @@ module.exports = {
StandardDetails: 'Standard Details', StandardDetails: 'Standard Details',
whole: 'Whole', whole: 'Whole',
DocumentLibrary: 'Document Library', DocumentLibrary: 'Document Library',
GeneralExportInformation:'General export information',
DocumentComparisonLibrary: 'Document comparison Library', DocumentComparisonLibrary: 'Document comparison Library',
weekly: 'Weekly', weekly: 'Weekly',
SyncLibrary: 'Sync to doc. library', SyncLibrary: 'Sync to doc. library',
@@ -727,6 +730,7 @@ module.exports = {
// 参数收集开始 // 参数收集开始
MaintainConfigureInfo: 'Maintain configuration information', MaintainConfigureInfo: 'Maintain configuration information',
ParameteItemCollectionList: 'Parameter item collection list', ParameteItemCollectionList: 'Parameter item collection list',
ParameterViewPage:'Parameter View page',
Areyousureparameteritems: 'Are you sure to submit the selected parameter items?', Areyousureparameteritems: 'Are you sure to submit the selected parameter items?',
Theselectedconfiguration: 'The configuration can only be added when the parameter items in the parameter list are to be collected or changed', Theselectedconfiguration: 'The configuration can only be added when the parameter items in the parameter list are to be collected or changed',
NoConfigurationNotStart: 'No configuration added, unable to start collection, please check', NoConfigurationNotStart: 'No configuration added, unable to start collection, please check',
@@ -757,6 +761,7 @@ module.exports = {
operatethisbutton: 'You do not have permission to operate this button', operatethisbutton: 'You do not have permission to operate this button',
ParameterLibrary: 'Parameter Library', ParameterLibrary: 'Parameter Library',
referenceparameter: 'Reference Parameter', referenceparameter: 'Reference Parameter',
tempSave: 'Temp Save',
Assignedby: 'Assignedby', Assignedby: 'Assignedby',
CompulsoryWithdrawal: 'CompulsoryWithdrawal', CompulsoryWithdrawal: 'CompulsoryWithdrawal',
SynchronousReportLibrary: 'Synchronous Report Library', SynchronousReportLibrary: 'Synchronous Report Library',
@@ -791,6 +796,10 @@ module.exports = {
releaseVersion: 'Release Version', releaseVersion: 'Release Version',
parameterTemplate: 'Parameter Template', parameterTemplate: 'Parameter Template',
contentDescription: 'Content Description', contentDescription: 'Content Description',
WhetherMergeParameters:'Whether to merge parameters',
merge:'merge',
nonjoinder:'nonjoinder',
MergeSeparator:'Merge separator',
parameterTemplateExportName: 'Parameter List', parameterTemplateExportName: 'Parameter List',
parameterDataExport: 'Parameter Export Data', parameterDataExport: 'Parameter Export Data',
// 参数收集结束 // 参数收集结束
@@ -941,14 +950,14 @@ module.exports = {
reportNotUploaded: 'Report not uploaded', reportNotUploaded: 'Report not uploaded',
position: 'position', position: 'position',
// 认证权限状态 // 认证权限状态
CollectionInitiated: 'Collection to be initiated', CollectionInitiated: 'Wait Collect',
handledInterface: 'To be handled by the project interface', handledInterface: 'Wait Sdt',
ReturnedPerson: 'Returned by project contact person', ReturnedPerson: 'Sdt Back',
completed: 'To be completed', completed: 'Wait Fill',
Filledreturn: 'Filled by return', Filledreturn: 'Dre Back',
Submitted: 'Submitted', Submitted: 'Submit',
ReturnedEngineer: 'Returned by Certification Engineer', ReturnedEngineer: 'Cert Back',
SynchronizedLibrary: 'Synchronized to the upper reporting Library', SynchronizedLibrary: 'Sync Report',
Statusis: 'Statusis', Statusis: 'Statusis',
toHavePermission: 'To Have Permission', toHavePermission: 'To Have Permission',
and: 'and', and: 'and',
@@ -1055,7 +1064,7 @@ module.exports = {
Ftext: 'Text+Pull single+File', Ftext: 'Text+Pull single+File',
Nnothing: 'Null', Nnothing: 'Null',
Nchinese: 'Chinese', Nchinese: 'Chinese',
NpositiveInteger: 'Positive integer', NpositiveInteger: 'Integer',
NPositivefloatingpointnumber: 'Positive float', NPositivefloatingpointnumber: 'Positive float',
NintegerOrDecimal: 'Integer decimal', NintegerOrDecimal: 'Integer decimal',
NOneDecimalPlace: 'Decimal one', NOneDecimalPlace: 'Decimal one',
@@ -1073,4 +1082,9 @@ module.exports = {
pleaseSelectinitiatedOrRejected:'Please select the data whose list confirmation status is not initiated or rejected', pleaseSelectinitiatedOrRejected:'Please select the data whose list confirmation status is not initiated or rejected',
TheEngineerAndCertification:'The regulatory engineer and Certification Engineer of cannot be empty', TheEngineerAndCertification:'The regulatory engineer and Certification Engineer of cannot be empty',
theResponsiblePersonAndDeadlineClank:'The responsible person and deadline of cannot be blank', theResponsiblePersonAndDeadlineClank:'The responsible person and deadline of cannot be blank',
bringInTheProjectInterface:'Bring in the project interface',
theCurrentListSaved:'The current list data has been submitted and cannot be temporarily saved',
defaultTemplate:'Default template',
newRequestCommentListTemplate:'New request for comment list template',
NewReleasedStandardTemplate:'New released standard template',
} }
+17 -3
View File
@@ -178,6 +178,8 @@ module.exports = {
MenuType: '菜单类型', MenuType: '菜单类型',
menu: '菜单', menu: '菜单',
ButtonsPermissions: '按钮/权限', ButtonsPermissions: '按钮/权限',
ConventionalExport:'常规导出',
CustomExport:'自定义导出',
assembly: '组件', assembly: '组件',
route: '路径', route: '路径',
AddSubmenu: '添加子菜单', AddSubmenu: '添加子菜单',
@@ -280,7 +282,7 @@ module.exports = {
enterMenuTitle: '请输入菜单标题', enterMenuTitle: '请输入菜单标题',
enterAuthorizationPolicy: '请输入授权策略', enterAuthorizationPolicy: '请输入授权策略',
AuthorizationIDExists: '授权标识已存在', AuthorizationIDExists: '授权标识已存在',
enterPositiveInteger: '请输入整数', enterPositiveInteger: '请输入整数',
RuleName: '规则名称', RuleName: '规则名称',
enterRuleName: '请输入规则名称', enterRuleName: '请输入规则名称',
RuleField: '规则字段', RuleField: '规则字段',
@@ -390,6 +392,7 @@ module.exports = {
StandardDetails: '标准详情', StandardDetails: '标准详情',
whole: '全部', whole: '全部',
DocumentLibrary: '文档库', DocumentLibrary: '文档库',
GeneralExportInformation:'常规导出信息',
DocumentComparisonLibrary: '文档对比库', DocumentComparisonLibrary: '文档对比库',
weekly: '周报', weekly: '周报',
SyncLibrary: '同步至文档库', SyncLibrary: '同步至文档库',
@@ -693,7 +696,7 @@ module.exports = {
confirmOverrule: '确认驳回', confirmOverrule: '确认驳回',
The: '第', The: '第',
submitted: '条数据已提交不能重复提交', submitted: '条数据已提交不能重复提交',
incorrectsubmitted: '状态有误只能提交状态为待确认的数据', incorrectsubmitted: '条数据状态有误只能提交状态为待确认的数据',
basicInformationOfParameters: '项目基本信息', basicInformationOfParameters: '项目基本信息',
regulatoryCertificationTaskPlan: '法规/认证任务计划', regulatoryCertificationTaskPlan: '法规/认证任务计划',
bringInRelevantPersonnel: '带入相关人员', bringInRelevantPersonnel: '带入相关人员',
@@ -742,6 +745,7 @@ module.exports = {
// 参数收集 // 参数收集
MaintainConfigureInfo: '维护配置信息', MaintainConfigureInfo: '维护配置信息',
ParameteItemCollectionList: '参数项收集清单', ParameteItemCollectionList: '参数项收集清单',
ParameterViewPage:'参数项查看页',
Areyousureparameteritems: '确认提交所选参数项嘛?', Areyousureparameteritems: '确认提交所选参数项嘛?',
Theselectedconfiguration: '参数清单中参数项均为待发起收集或变更时才能添加配置', Theselectedconfiguration: '参数清单中参数项均为待发起收集或变更时才能添加配置',
NoConfigurationNotStart: '未添加任何配置无法开始收集请检查', NoConfigurationNotStart: '未添加任何配置无法开始收集请检查',
@@ -772,6 +776,7 @@ module.exports = {
operatethisbutton: '没有权限操作此按钮', operatethisbutton: '没有权限操作此按钮',
ParameterLibrary: '参数库', ParameterLibrary: '参数库',
referenceparameter: '引用参数', referenceparameter: '引用参数',
tempSave: '暂存',
Assignedby: '分配填写人', Assignedby: '分配填写人',
CompulsoryWithdrawal: '强制撤回', CompulsoryWithdrawal: '强制撤回',
SynchronousReportLibrary: '同步上报库', SynchronousReportLibrary: '同步上报库',
@@ -806,6 +811,10 @@ module.exports = {
releaseVersion: '发布版本', releaseVersion: '发布版本',
parameterTemplate: '参数模板', parameterTemplate: '参数模板',
contentDescription: '内容说明', contentDescription: '内容说明',
WhetherMergeParameters:'是否合并参数',
merge:'合并',
nonjoinder:'不合并',
MergeSeparator:'合并分隔符',
parameterTemplateExportName: '参数项列表', parameterTemplateExportName: '参数项列表',
parameterDataExport: '参数项导出数据', parameterDataExport: '参数项导出数据',
// 参数收集结束 // 参数收集结束
@@ -1064,7 +1073,7 @@ module.exports = {
Ftext: '文本+下拉单选+附件', Ftext: '文本+下拉单选+附件',
Nnothing: '无', Nnothing: '无',
Nchinese: '中文', Nchinese: '中文',
NpositiveInteger: '整数', NpositiveInteger: '整数',
NPositivefloatingpointnumber: '正浮点数', NPositivefloatingpointnumber: '正浮点数',
NintegerOrDecimal: '整数或小数', NintegerOrDecimal: '整数或小数',
NOneDecimalPlace: '一位小数', NOneDecimalPlace: '一位小数',
@@ -1077,4 +1086,9 @@ module.exports = {
English:'英文', English:'英文',
requiredParametersEmpty:'必填参数不能为空', requiredParametersEmpty:'必填参数不能为空',
theResponsiblePersonAndDeadlineClank:'的责任人截止时间不能为空', theResponsiblePersonAndDeadlineClank:'的责任人截止时间不能为空',
bringInTheProjectInterface:'带入工程接口人',
theCurrentListSaved:'当前列表数据已全部提交无法进行暂存',
defaultTemplate:'默认模板',
newRequestCommentListTemplate:'新征求意见清单模板',
NewReleasedStandardTemplate:'新发布标准模板',
} }
@@ -49,6 +49,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -24,15 +24,18 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 中文--> <!-- 中文-->
<div v-if="item.controlVerify == '2'"> <div v-else-if="item.controlVerify == '2'">
<a-input class="box-input inputWid" <a-input class="box-input inputWid"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:placeholder="$t('pleaseEnter')+$t('chinese')" :placeholder="$t('pleaseEnter')+$t('chinese')"
onkeyup="value=value.replace(/[^\u4e00-\u9fa5]/g,'')" event.returnValue="false"
ondragenter="return false"
onblur="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 正整数 --> <!-- 正整数 -->
<div v-if="item.controlVerify == '3'"> <div v-else-if="item.controlVerify == '3'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -41,7 +44,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 正浮点书 --> <!-- 正浮点书 -->
<div v-if="item.controlVerify == '4'"> <div v-else-if="item.controlVerify == '4'">
<a-input class="box-input inputWid" <a-input class="box-input inputWid"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
onkeyup="(this.v=function(){this.value=this.value.replace(/[^\d\.]/g,'');}).call(this)" onkeyup="(this.v=function(){this.value=this.value.replace(/[^\d\.]/g,'');}).call(this)"
@@ -49,7 +52,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 整数或小数 --> <!-- 整数或小数 -->
<div v-if="item.controlVerify == '5'"> <div v-else-if="item.controlVerify == '5'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -57,7 +60,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 一位小数 --> <!-- 一位小数 -->
<div v-if="item.controlVerify == '6'"> <div v-else-if="item.controlVerify == '6'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -66,7 +69,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 两位小数--> <!-- 两位小数-->
<div v-if="item.controlVerify == '7'"> <div v-else-if="item.controlVerify == '7'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -75,7 +78,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 三位小数--> <!-- 三位小数-->
<div v-if="item.controlVerify == '8'"> <div v-else-if="item.controlVerify == '8'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -84,7 +87,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 四位小数--> <!-- 四位小数-->
<div v-if="item.controlVerify == '9'"> <div v-else-if="item.controlVerify == '9'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -156,7 +159,7 @@
</a-select-option> </a-select-option>
</a-select> </a-select>
</div> </div>
<div v-if='item.type==="text"'> <div v-else-if='item.type==="text"'>
<!-- 文本校验 分情况--> <!-- 文本校验 分情况-->
<!-- 1 无--> <!-- 1 无-->
<!-- 2 中文--> <!-- 2 中文-->
@@ -176,16 +179,19 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 中文--> <!-- 中文-->
<div v-if="item.controlVerify == '2'"> <div v-else-if="item.controlVerify == '2'">
<a-input class="box-input inputWid" <a-input class="box-input inputWid"
:maxLength="1000" :maxLength="1000"
event.returnValue="false"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
ondragenter="return false"
:placeholder="$t('pleaseEnter')+$t('chinese')" :placeholder="$t('pleaseEnter')+$t('chinese')"
onkeyup="value=value.replace(/[^\u4e00-\u9fa5]/g,'')" onblur="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 正整数 --> <!-- 正整数 -->
<div v-if="item.controlVerify == '3'"> <div v-else-if="item.controlVerify == '3'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -194,7 +200,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 正浮点书 --> <!-- 正浮点书 -->
<div v-if="item.controlVerify == '4'"> <div v-else-if="item.controlVerify == '4'">
<a-input class="box-input inputWid" <a-input class="box-input inputWid"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
onkeyup="(this.v=function(){this.value=this.value.replace(/[^\d\.]/g,'');}).call(this)" onkeyup="(this.v=function(){this.value=this.value.replace(/[^\d\.]/g,'');}).call(this)"
@@ -202,7 +208,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 整数或小数 --> <!-- 整数或小数 -->
<div v-if="item.controlVerify == '5'"> <div v-else-if="item.controlVerify == '5'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -210,7 +216,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 一位小数 --> <!-- 一位小数 -->
<div v-if="item.controlVerify == '6'"> <div v-else-if="item.controlVerify == '6'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -219,7 +225,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 两位小数--> <!-- 两位小数-->
<div v-if="item.controlVerify == '7'"> <div v-else-if="item.controlVerify == '7'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -228,7 +234,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 三位小数--> <!-- 三位小数-->
<div v-if="item.controlVerify == '8'"> <div v-else-if="item.controlVerify == '8'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -237,7 +243,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 四位小数--> <!-- 四位小数-->
<div v-if="item.controlVerify == '9'"> <div v-else-if="item.controlVerify == '9'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -271,16 +277,19 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 中文--> <!-- 中文-->
<div v-if="item.controlVerify == '2'"> <div v-else-if="item.controlVerify == '2'">
<a-input class="box-input inputWid" <a-input class="box-input inputWid"
:maxLength="1000" :maxLength="1000"
event.returnValue="false"
ondragenter="return false"
onblur="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:placeholder="$t('pleaseEnter')+$t('chinese')" :placeholder="$t('pleaseEnter')+$t('chinese')"
onkeyup="value=value.replace(/[^\u4e00-\u9fa5]/g,'')"
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 正整数 --> <!-- 正整数 -->
<div v-if="item.controlVerify == '3'"> <div v-else-if="item.controlVerify == '3'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -289,7 +298,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 正浮点书 --> <!-- 正浮点书 -->
<div v-if="item.controlVerify == '4'"> <div v-else-if="item.controlVerify == '4'">
<a-input class="box-input inputWid" <a-input class="box-input inputWid"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
onkeyup="(this.v=function(){this.value=this.value.replace(/[^\d\.]/g,'');}).call(this)" onkeyup="(this.v=function(){this.value=this.value.replace(/[^\d\.]/g,'');}).call(this)"
@@ -297,7 +306,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 整数或小数 --> <!-- 整数或小数 -->
<div v-if="item.controlVerify == '5'"> <div v-else-if="item.controlVerify == '5'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -305,7 +314,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 一位小数 --> <!-- 一位小数 -->
<div v-if="item.controlVerify == '6'"> <div v-else-if="item.controlVerify == '6'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -314,7 +323,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 两位小数--> <!-- 两位小数-->
<div v-if="item.controlVerify == '7'"> <div v-else-if="item.controlVerify == '7'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -323,7 +332,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 三位小数--> <!-- 三位小数-->
<div v-if="item.controlVerify == '8'"> <div v-else-if="item.controlVerify == '8'">
<a-input-number class="box-input inputWid" <a-input-number class="box-input inputWid"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -332,7 +341,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 四位小数--> <!-- 四位小数-->
<div v-if="item.controlVerify == '9'"> <div v-else-if="item.controlVerify == '9'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -378,16 +387,19 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 中文--> <!-- 中文-->
<div v-if="item.controlVerify == '2'"> <div v-else-if="item.controlVerify == '2'">
<a-input class="box-input inputWid" <a-input class="box-input inputWid"
:maxLength="1000" :maxLength="1000"
event.returnValue="false"
ondragenter="return false"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
onblur="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
:placeholder="$t('pleaseEnter')+$t('chinese')" :placeholder="$t('pleaseEnter')+$t('chinese')"
onkeyup="value=value.replace(/[^\u4e00-\u9fa5]/g,'')" onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 正整数 --> <!-- 正整数 -->
<div v-if="item.controlVerify == '3'"> <div v-else-if="item.controlVerify == '3'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -396,7 +408,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 正浮点书 --> <!-- 正浮点书 -->
<div v-if="item.controlVerify == '4'"> <div v-else-if="item.controlVerify == '4'">
<a-input class="box-input inputWid" <a-input class="box-input inputWid"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
onkeyup="(this.v=function(){this.value=this.value.replace(/[^\d\.]/g,'');}).call(this)" onkeyup="(this.v=function(){this.value=this.value.replace(/[^\d\.]/g,'');}).call(this)"
@@ -404,7 +416,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 整数或小数 --> <!-- 整数或小数 -->
<div v-if="item.controlVerify == '5'"> <div v-else-if="item.controlVerify == '5'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -412,7 +424,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 一位小数 --> <!-- 一位小数 -->
<div v-if="item.controlVerify == '6'"> <div v-else-if="item.controlVerify == '6'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -421,7 +433,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 两位小数--> <!-- 两位小数-->
<div v-if="item.controlVerify == '7'"> <div v-else-if="item.controlVerify == '7'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -430,7 +442,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 三位小数--> <!-- 三位小数-->
<div v-if="item.controlVerify == '8'"> <div v-else-if="item.controlVerify == '8'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -439,7 +451,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 四位小数--> <!-- 四位小数-->
<div v-if="item.controlVerify == '9'"> <div v-else-if="item.controlVerify == '9'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -472,7 +484,7 @@
</a-select-option> </a-select-option>
</a-select> </a-select>
</div> </div>
<div v-if='item.type==="file"'> <div v-else-if='item.type==="file"'>
<a-button type="primary" class="button-text inputWid" <a-button type="primary" class="button-text inputWid"
@click="clickButtonToUpload(item)"> @click="clickButtonToUpload(item)">
{{ (item.dataValue === 'null' || item.dataValue === '' || {{ (item.dataValue === 'null' || item.dataValue === '' ||
@@ -496,7 +508,7 @@
</a-select-option> </a-select-option>
</a-select> </a-select>
</div> </div>
<div v-if='item.type==="file"'> <div v-else-if='item.type==="file"'>
<a-button type="primary" class="button-text inputWid" <a-button type="primary" class="button-text inputWid"
@click="clickButtonToUpload(item)"> @click="clickButtonToUpload(item)">
{{ (item.dataValue === 'null' || item.dataValue === '' || {{ (item.dataValue === 'null' || item.dataValue === '' ||
@@ -540,16 +552,19 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 中文--> <!-- 中文-->
<div v-if="item.controlVerify == '2'"> <div v-else-if="item.controlVerify == '2'">
<a-input class="box-input inputWid" <a-input class="box-input inputWid"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:maxLength="1000" :maxLength="1000"
event.returnValue="false"
ondragenter="return false"
:placeholder="$t('pleaseEnter')+$t('chinese')" :placeholder="$t('pleaseEnter')+$t('chinese')"
onkeyup="value=value.replace(/[^\u4e00-\u9fa5]/g,'')" onblur="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 正整数 --> <!-- 正整数 -->
<div v-if="item.controlVerify == '3'"> <div v-else-if="item.controlVerify == '3'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -558,7 +573,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 正浮点书 --> <!-- 正浮点书 -->
<div v-if="item.controlVerify == '4'"> <div v-else-if="item.controlVerify == '4'">
<a-input class="box-input inputWid" <a-input class="box-input inputWid"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
onkeyup="(this.v=function(){this.value=this.value.replace(/[^\d\.]/g,'');}).call(this)" onkeyup="(this.v=function(){this.value=this.value.replace(/[^\d\.]/g,'');}).call(this)"
@@ -566,7 +581,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 整数或小数 --> <!-- 整数或小数 -->
<div v-if="item.controlVerify == '5'"> <div v-else-if="item.controlVerify == '5'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -574,7 +589,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 一位小数 --> <!-- 一位小数 -->
<div v-if="item.controlVerify == '6'"> <div v-else-if="item.controlVerify == '6'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -583,7 +598,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 两位小数--> <!-- 两位小数-->
<div v-if="item.controlVerify == '7'"> <div v-else-if="item.controlVerify == '7'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -592,7 +607,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 三位小数--> <!-- 三位小数-->
<div v-if="item.controlVerify == '8'"> <div v-else-if="item.controlVerify == '8'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -601,7 +616,7 @@
v-model="item.dataValue"/> v-model="item.dataValue"/>
</div> </div>
<!-- 四位小数--> <!-- 四位小数-->
<div v-if="item.controlVerify == '9'"> <div v-else-if="item.controlVerify == '9'">
<a-input-number class="box-input inputWid add--number" <a-input-number class="box-input inputWid add--number"
:disabled="item.isLock == '1' ? true: false" :disabled="item.isLock == '1' ? true: false"
:max="99999" :max="99999"
@@ -717,6 +732,7 @@
.ant-table td { .ant-table td {
white-space: nowrap; white-space: nowrap;
} }
.selectWid .ant-select-selection--multiple { .selectWid .ant-select-selection--multiple {
overflow: auto; overflow: auto;
} }
@@ -724,6 +740,14 @@
.selectWid .ant-select-selection--multiple::-webkit-scrollbar { .selectWid .ant-select-selection--multiple::-webkit-scrollbar {
display: none; /* Chrome Safari */ display: none; /* Chrome Safari */
} }
.selectWid .ant-select-selection {
height: 38px !important;
line-height: 38px!important;
}
.selectWid .ant-select-selection__rendered {
line-height: 36px!important;
}
</style> </style>
<style lang="less" scoped> <style lang="less" scoped>
.box { .box {
@@ -742,7 +766,7 @@
} }
.add_flex { .add_flex {
display: flex; /*display: flex;*/
} }
/deep/ .box { /deep/ .box {
@@ -760,11 +784,14 @@
.inputWid { .inputWid {
min-width: 150px; min-width: 150px;
height: 38px;
display: inline-block;
} }
.add-width { .add-width {
width: 33%; width: calc(33.3% - 5px);
margin-right: 5px; margin-right: 5px;
float: left;
} }
.add--number { .add--number {
@@ -774,9 +801,11 @@
.ant-input-disabled { .ant-input-disabled {
color: rgba(0, 0, 0, 0.65); color: rgba(0, 0, 0, 0.65);
} }
.ant-select-disabled{
.ant-select-disabled {
color: rgba(0, 0, 0, 0.65); color: rgba(0, 0, 0, 0.65);
} }
.itemOption { .itemOption {
display: inline-block; display: inline-block;
width: 100%; width: 100%;
@@ -52,6 +52,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -53,6 +53,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -98,7 +98,7 @@
:dataSource='areaTable' :dataSource='areaTable'
:pagination='false' :pagination='false'
:loading='loading' :loading='loading'
:scroll='{x: 600}' :scroll='{x: 760,y:400}'
:rowSelection='{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}' :rowSelection='{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}'
@change='handleTableChange'> @change='handleTableChange'>
<a slot='name' slot-scope='text'>{{ text }}</a> <a slot='name' slot-scope='text'>{{ text }}</a>
@@ -133,18 +133,21 @@ export default {
title: this.$t('NiONumber'), title: this.$t('NiONumber'),
dataIndex: 'nioNumber', dataIndex: 'nioNumber',
align: 'center', align: 'center',
width:200,
ellipsis: true ellipsis: true
}, },
{ {
title: this.$t('ParameterName'), title: this.$t('ParameterName'),
align: 'center', align: 'center',
dataIndex: 'paramsName', dataIndex: 'paramsName',
width:200,
ellipsis: true ellipsis: true
}, },
{ {
title: this.$t('areaOfResponsibility'), title: this.$t('areaOfResponsibility'),
dataIndex: 'dutyTerritory_dictText', dataIndex: 'dutyTerritory_dictText',
align: 'center', align: 'center',
width:200,
ellipsis: true ellipsis: true
} }
], ],
@@ -81,7 +81,7 @@
</a-row> </a-row>
</a-form-model> </a-form-model>
</a-spin> </a-spin>
<div class='drawer-bootom-button'> <div class='drawer-bootom-button' style="margin-top: 4px">
<a-button style='margin-right: .8rem' @click='handleCancel'>{{ $t('cancel') }}</a-button> <a-button style='margin-right: .8rem' @click='handleCancel'>{{ $t('cancel') }}</a-button>
<a-button @click='handleSubmit' type='primary' :loading='confirmLoading'>{{ $t('submit') }}</a-button> <a-button @click='handleSubmit' type='primary' :loading='confirmLoading'>{{ $t('submit') }}</a-button>
</div> </div>
@@ -284,9 +284,9 @@
<style lang='less' scoped> <style lang='less' scoped>
@import '~@assets/less/common.less'; @import '~@assets/less/common.less';
/deep/ .ant-form-explain { /*/deep/ .ant-form-explain {*/
padding-left: 62px; /* padding-left: 62px;*/
} /*}*/
.diolag-area { .diolag-area {
.table-area { .table-area {
@@ -51,6 +51,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -48,6 +48,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -53,6 +53,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -42,6 +42,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -12,7 +12,7 @@
<a-row :gutter='24'> <a-row :gutter='24'>
<a-col :span='24'> <a-col :span='24'>
<span style='display: flex;justify-content: center;margin-bottom: 20px;'> <span style='margin-top: 6px;margin-right: 7px'>{{$t('cutoffTime')}}</span> <span style='display: flex;justify-content: center;margin-bottom: 20px;'> <span style='margin-top: 6px;margin-right: 7px'>{{$t('cutoffTime')}}</span>
<a-date-picker show-time :placeholder="$t('PleaseSelect')+$t('cutoffTime')" @change="onChange" @ok="onOk" /> <a-date-picker :placeholder="$t('PleaseSelect')+$t('cutoffTime')" @change="onChange" @ok="onOk" />
</span> </span>
</a-col> </a-col>
</a-row> </a-row>
@@ -36,6 +36,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize " :page-size.sync="pageSize "
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
+31 -42
View File
@@ -21,7 +21,7 @@
<a-form-model-item :label="$t('ListTitle')" prop='ListTitle'> <a-form-model-item :label="$t('ListTitle')" prop='ListTitle'>
<a-input <a-input
:placeholder="$t('PleaseEnter')+$t('ListTitle')" :placeholder="$t('PleaseEnter')+$t('ListTitle')"
v-model='formData.projectName' /> v-model='formData.title' />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span='6' style='margin-top: 4px;'> <a-col :span='6' style='margin-top: 4px;'>
@@ -43,9 +43,10 @@
:scroll='{x: 600}' :scroll='{x: 600}'
:rowSelection='{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}' :rowSelection='{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}'
@change='handleTableChange'> @change='handleTableChange'>
<span slot='click' slot-scope='text, record'>
<a class='action-edit' @click='editArea(record)' v-has="'area:edit'">{{ text }}</a> <template slot="file" slot-scope="text, record">
</span> <a class="action-edit" href="javascript:;" @click="dowloadfile(record)" v-has="'bqnrzdpzxlbj'">{{record.exportFileName}}</a>
</template>
</a-table> </a-table>
<div class="page" style='display: flex;justify-content: flex-end;'> <div class="page" style='display: flex;justify-content: flex-end;'>
<a-pagination <a-pagination
@@ -54,19 +55,20 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
</div> </div>
<div class='drawer-bootom-button'> <!-- <div class='drawer-bootom-button'>-->
<a-button style='margin-right: .8rem' @click='handleCancel'>{{ $t('cancel') }}</a-button> <!-- <a-button style='margin-right: .8rem' @click='handleCancel'>{{ $t('cancel') }}</a-button>-->
<a-button @click='handleSubmit' type='primary' :loading='confirmLoading'>{{ $t('submit') }}</a-button> <!-- <a-button @click='handleSubmit' type='primary' :loading='confirmLoading'>{{ $t('submit') }}</a-button>-->
</div> <!-- </div>-->
</div> </div>
</template> </template>
<script> <script>
import { putAction, postAction, getAction, deleteAction } from '@/api/manage' import { putAction, postAction, getAction, deleteAction ,downloadFile } from '@/api/manage'
import axios from 'axios' import axios from 'axios'
import Vue from 'vue' import Vue from 'vue'
import { ACCESS_TOKEN } from '@/store/mutation-types' import { ACCESS_TOKEN } from '@/store/mutation-types'
@@ -99,19 +101,20 @@ export default {
{ {
title: this.$t('Exporttype'), title: this.$t('Exporttype'),
align: 'center', align: 'center',
dataIndex: 'paramsTemplateName', dataIndex: 'exportType',
ellipsis: true ellipsis: true
}, },
{ {
title: this.$t('Exporttime'), title: this.$t('Exporttime'),
align: 'center', align: 'center',
dataIndex: 'paramsTemplateName', dataIndex: 'exportTime',
ellipsis: true ellipsis: true
}, },
{ {
title: this.$t('file'), title: this.$t('file'),
align: 'center', align: 'center',
dataIndex: 'paramsTemplateName', dataIndex: 'exportFileName',
scopedSlots: { customRender: 'file' },
ellipsis: true ellipsis: true
} }
], ],
@@ -153,6 +156,11 @@ export default {
default: '', default: '',
require: true require: true
}, },
paramsManifestId: {
type: String,
default: '',
require: true
},
url: { url: {
type: Object, type: Object,
default: '', default: '',
@@ -178,10 +186,11 @@ export default {
console.log(this.areaTable,'this.areaTable') console.log(this.areaTable,'this.areaTable')
this.listVisible = false this.listVisible = false
}, },
// 下载文件
editArea(val) { editArea(val) {
this.listVisibleRowDate = val // this.listVisibleRowDate = val
console.log(val) console.log(val)
this.listVisible = true // this.listVisible = true
}, },
pageOnChange(page, pageSize) { pageOnChange(page, pageSize) {
this.pageNo = page this.pageNo = page
@@ -192,43 +201,23 @@ export default {
this.pageSize = pageSize this.pageSize = pageSize
this.loadData() this.loadData()
}, },
dowloadfile(item){
downloadFile('/sys/common/downLoadFile', item.exportFileName, {id:item.exportFileId})
},
loadData() { loadData() {
let _this = this let _this = this
let params = { let params = {
pageNo: this.pageNo, pageNo: this.pageNo,
pageSize: this.pageSize, pageSize: this.pageSize,
paramsManifestId:this.paramsManifestId,
...this.formData ...this.formData
} }
this.loading = true getAction('params/report/exportHistoryPage', params).then((res) => {
axios({ if (res.success) {
url: `/jero-boot/params/manifest/getAllManifest`, this.areaTable = res.result.records
method: 'post', this.total = res.result.total
data: params,
transformRequest: [function (data) {
let ret = ''
for (let it in data) {
ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&'
}
return ret
}],
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'X-Access-Token':_this.token
} }
}) })
.then( (res) =>{
if (res.data.success) {
console.log(res.data)
this.loading = false
this.areaTable = res.data.result.records || []
this.total = res.data.result.total
}else{
this.loading = false
}
})
.catch( (error) =>{
console.log(error);
});
}, },
searchQuery() { searchQuery() {
this.loadData() this.loadData()
@@ -65,6 +65,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -7,7 +7,7 @@
rowKey="id" rowKey="id"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
:pagination="false" :pagination="false"
:scroll="{x: '100%',y:'calc(100vh - 160px)'}" :scroll="{x: '100%',y:'calc(100vh - 230px)'}"
:data-source="dataSource" :data-source="dataSource"
:loading="loading" :loading="loading"
sticky sticky
@@ -53,6 +53,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
:pageSizeOptions='pageSizeOptions' :pageSizeOptions='pageSizeOptions'
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
@@ -51,6 +51,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -2,7 +2,7 @@
<div> <div>
<a-modal v-model="visible" :maskClosable="false" :footer="[]" :title="title"> <a-modal v-model="visible" :maskClosable="false" :footer="[]" :title="title">
<a-upload-dragger <a-upload-dragger
accept='*.*' :accept="accept"
:disabled="disabled" :disabled="disabled"
class="ant-upload-list" class="ant-upload-list"
:class="{'uploadFile':isUploadFile}" :class="{'uploadFile':isUploadFile}"
@@ -34,7 +34,7 @@ import { mapGetters } from 'vuex'
export default { export default {
name: 'file', name: 'file',
props: ['disableds', 'disabled', 'thisFileUploadUrl', 'readonly', 'thisFileType', 'isUploadFile','detailDate'], props: ['disableds', 'disabled', 'thisFileUploadUrl', 'readonly', 'thisFileType', 'isUploadFile','detailDate','accept'],
data() { data() {
return { return {
visible: false, visible: false,
@@ -56,7 +56,7 @@ export default {
this.containerId = 'container-ty-' + new Date().getTime() this.containerId = 'container-ty-' + new Date().getTime()
}, },
mounted() { mounted() {
console.log(this.detailDate,'lldetailDate') // console.log(this.detailDate,'lldetailDate')
let long = localStorage.getItem('language') let long = localStorage.getItem('language')
this.cut = '' this.cut = ''
if (long && long == 'zh-cn') { if (long && long == 'zh-cn') {
@@ -29,6 +29,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -84,6 +84,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -65,6 +65,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -90,7 +91,8 @@
return { return {
//url传参严格按照当前命名 //url传参严格按照当前命名
url: { url: {
deleteBatch: '' deleteBatch: '/report/lawsMonthlyReportWriteEO/deleteBatch',
list:'/report/lawsMonthlyReportWriteEO/page',
}, },
loading: false, loading: false,
dataSource: [], dataSource: [],
@@ -103,7 +105,7 @@
{ {
title: this.$t('chapterContents'), title: this.$t('chapterContents'),
align: 'center', align: 'center',
dataIndex: 'chapterContents', dataIndex: 'memoriesChapterName',
width: 170 width: 170
}, },
{ {
@@ -124,21 +126,21 @@
align: 'center', align: 'center',
width: 170, width: 170,
ellipsis: true, ellipsis: true,
dataIndex: 'regulatoryContact' dataIndex: 'lawsContact'
}, },
{ {
title: this.$t('completedBy'), title: this.$t('completedBy'),
align: 'center', align: 'center',
ellipsis: true, ellipsis: true,
width: 170, width: 170,
dataIndex: 'completedBy' dataIndex: 'createBy'
}, },
{ {
title: this.$t('exportStatus'), title: this.$t('exportStatus'),
align: 'center', align: 'center',
ellipsis: true, ellipsis: true,
width: 170, width: 170,
dataIndex: 'exportStatus' dataIndex: 'exportStateName'
}, },
{ {
title: this.$t('operation'), title: this.$t('operation'),
@@ -183,7 +185,26 @@
this.getList() this.getList()
}, },
getList() { getList() {
let query = {
pageNo: this.pageNo,
pageSize: this.pageSize,
...this.queryParam
}
this.loading = true
getAction(this.url.list, query).then((res) => {
if (res.success) {
if (res.result.current > 1 && res.result.records.length == 0) {
this.pageNo = res.result.current - 1
this.getList()
return
}
this.dataSource = res.result.records || []
this.total = res.result.total
this.loading = false
} else {
this.loading = false
}
})
}, },
monthlyTitleTemplateClick() { monthlyTitleTemplateClick() {
this.$refs.fillTableRef.getData() this.$refs.fillTableRef.getData()
@@ -62,6 +62,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -7,10 +7,10 @@
<span class="title-text-text" <span class="title-text-text"
:title="$t('title')">{{$t('title')}}</span> :title="$t('title')">{{$t('title')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="titleCn">
<a-input class="box-input" <a-input class="box-input"
:disabled="false" :disabled="false"
v-model="formInline.title" v-model="formInline.titleCn"
:placeholder="$t('PleaseEnter')+$t('title')"/> :placeholder="$t('PleaseEnter')+$t('title')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -21,10 +21,10 @@
<span class="title-text-text" <span class="title-text-text"
:title="$t('englishTitle')">{{$t('englishTitle')}}</span> :title="$t('englishTitle')">{{$t('englishTitle')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="titleEn">
<a-input class="box-input" <a-input class="box-input"
:disabled="false" :disabled="false"
v-model="formInline.englishTitle" v-model="formInline.titleEn"
:placeholder="$t('PleaseEnter')+$t('englishTitle')"/> :placeholder="$t('PleaseEnter')+$t('englishTitle')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -59,7 +59,7 @@
:title="$t('vehicleType')">{{$t('vehicleType')}}</span> :title="$t('vehicleType')">{{$t('vehicleType')}}</span>
</div> </div>
<a-form-model-item class="itemModel-multi"> <a-form-model-item class="itemModel-multi">
<j-multi-select-tag class="box-input" v-model="formInline.vehicleType" <j-multi-select-tag class="box-input" v-model="formInline.applyCar"
:placeholder="$t('PleaseSelect')+$t('vehicleType')" :placeholder="$t('PleaseSelect')+$t('vehicleType')"
:type="'select'" :type="'select'"
:triggerChange="false" :dictCode="'car_type'"/> :triggerChange="false" :dictCode="'car_type'"/>
@@ -75,7 +75,7 @@
:title="$t('scopeOfApplication')">{{$t('scopeOfApplication')}}</span> :title="$t('scopeOfApplication')">{{$t('scopeOfApplication')}}</span>
</div> </div>
<a-form-model-item class="itemModel-multi"> <a-form-model-item class="itemModel-multi">
<j-multi-select-tag class="box-input" v-model="formInline.shi4_yong4_fan4_wei2" <j-multi-select-tag class="box-input" v-model="formInline.applyScope"
:placeholder="$t('PleaseSelect')+$t('scopeOfApplication')" :placeholder="$t('PleaseSelect')+$t('scopeOfApplication')"
:type="'select'" :type="'select'"
:triggerChange="false" :dictCode="'apply_scope'"/> :triggerChange="false" :dictCode="'apply_scope'"/>
@@ -89,7 +89,7 @@
:title="$t('status')">{{$t('status')}}</span> :title="$t('status')">{{$t('status')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<j-dict-select-tag class="box-input" v-model="formInline.status" <j-dict-select-tag class="box-input" v-model="formInline.state"
@input="handleInput('status')" @input="handleInput('status')"
:placeholder="$t('PleaseSelect')+$t('status')" :placeholder="$t('PleaseSelect')+$t('status')"
:type="'select'" :type="'select'"
@@ -106,11 +106,11 @@
:title="$t('usage')">{{$t('usage')}}</span> :title="$t('usage')">{{$t('usage')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<j-dict-select-tag class="box-input" v-model="formInline.usage" <j-dict-select-tag class="box-input" v-model="formInline.useMethod"
@input="handleInput('usage')" @input="handleInput('usage')"
:placeholder="$t('PleaseSelect')+$t('usage')" :placeholder="$t('PleaseSelect')+$t('usage')"
:type="'select'" :type="'select'"
:triggerChange="false" :dictCode="'usage'"/> :triggerChange="false" :dictCode="'yong4_fa3'"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -120,10 +120,10 @@
<span class="title-text-text" <span class="title-text-text"
:title="$t('implementationModel')">{{$t('implementationModel')}}</span> :title="$t('implementationModel')">{{$t('implementationModel')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="implementCar">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model="formInline.implementationModel" v-model="formInline.implementCar"
:placeholder="$t('PleaseEnter')+$t('implementationModel')"/> :placeholder="$t('PleaseEnter')+$t('implementationModel')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -136,10 +136,10 @@
<span class="title-text-text" <span class="title-text-text"
:title="$t('releaseDate')">{{$t('releaseDate')}}</span> :title="$t('releaseDate')">{{$t('releaseDate')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="issueTime">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model="formInline.releaseDate" v-model="formInline.issueTime"
:placeholder="$t('PleaseEnter')+$t('releaseDate')"/> :placeholder="$t('PleaseEnter')+$t('releaseDate')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -150,10 +150,10 @@
<span class="title-text-text" <span class="title-text-text"
:title="$t('ImplementationDate')">{{$t('ImplementationDate')}}</span> :title="$t('ImplementationDate')">{{$t('ImplementationDate')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="newCarImplementTime">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model="formInline.ImplementationDate" v-model="formInline.newCarImplementTime"
:placeholder="$t('PleaseEnter')+$t('ImplementationDate')"/> :placeholder="$t('PleaseEnter')+$t('ImplementationDate')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -166,10 +166,10 @@
<span class="title-text-text" <span class="title-text-text"
:title="$t('vehicleInProductionDate')">{{$t('vehicleInProductionDate')}}</span> :title="$t('vehicleInProductionDate')">{{$t('vehicleInProductionDate')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="productionCarImplementTime">
<a-input class="box-input" <a-input class="box-input"
:disabled="disabled" :disabled="disabled"
v-model="formInline.vehicleInProductionDate" v-model="formInline.productionCarImplementTime"
:placeholder="$t('PleaseEnter')+$t('vehicleInProductionDate')"/> :placeholder="$t('PleaseEnter')+$t('vehicleInProductionDate')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -181,10 +181,10 @@
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t('primaryCoverageCn')">{{$t('primaryCoverageCn')}}</span> <span class="title-text-text" :title="$t('primaryCoverageCn')">{{$t('primaryCoverageCn')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="contentCn">
<a-textarea <a-textarea
:placeholder="$t('PleaseEnter')+$t('primaryCoverageCn')" :placeholder="$t('PleaseEnter')+$t('primaryCoverageCn')"
v-model.trim="formInline.useExplain" :rows="4"/> v-model.trim="formInline.contentCn" :rows="4"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -195,10 +195,10 @@
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t('primaryCoverageEn')">{{$t('primaryCoverageEn')}}</span> <span class="title-text-text" :title="$t('primaryCoverageEn')">{{$t('primaryCoverageEn')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="contentEn">
<a-textarea <a-textarea
:placeholder="$t('PleaseEnter')+$t('primaryCoverageEn')" :placeholder="$t('PleaseEnter')+$t('primaryCoverageEn')"
v-model.trim="formInline.useExplain" :rows="4"/> v-model.trim="formInline.contentEn" :rows="4"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -209,10 +209,10 @@
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t('workProgressCn')">{{$t('workProgressCn')}}</span> <span class="title-text-text" :title="$t('workProgressCn')">{{$t('workProgressCn')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="workProgressCn">
<a-textarea <a-textarea
:placeholder="$t('PleaseEnter')+$t('workProgressCn')" :placeholder="$t('PleaseEnter')+$t('workProgressCn')"
v-model.trim="formInline.useExplain" :rows="4"/> v-model.trim="formInline.workProgressCn" :rows="4"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -223,10 +223,10 @@
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t('workProgressEn')">{{$t('workProgressEn')}}</span> <span class="title-text-text" :title="$t('workProgressEn')">{{$t('workProgressEn')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="workProgressEn">
<a-textarea <a-textarea
:placeholder="$t('PleaseEnter')+$t('workProgressEn')" :placeholder="$t('PleaseEnter')+$t('workProgressEn')"
v-model.trim="formInline.useExplain" :rows="4"/> v-model.trim="formInline.workProgressEn" :rows="4"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -238,10 +238,11 @@
<span class="title-text-text" :title="$t('regulatoryContact')">{{$t('regulatoryContact')}}</span> <span class="title-text-text" :title="$t('regulatoryContact')">{{$t('regulatoryContact')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input class="box-input" <PersonnelSelection
:disabled="false" :query="{db_field_name:'lawsContact',db_field_txt:$t('regulatoryContact')}"
v-model="formInline.regulatoryContact" :personneQuery="formInline"
:placeholder="$t('PleaseEnter')+$t('regulatoryContact')"/> @change="PersonnelSelectionChange"
v-model="formInline.lawsContactName"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -252,7 +253,7 @@
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t('link')">{{$t('link')}}</span> <span class="title-text-text" :title="$t('link')">{{$t('link')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="link">
<a-input class="box-input" <a-input class="box-input"
:disabled="false" :disabled="false"
v-model="formInline.link" v-model="formInline.link"
@@ -265,32 +266,93 @@
</template> </template>
<script> <script>
import PersonnelSelection from '@/components/PersonnelSelection/index'
import { mapGetters } from 'vuex'
import { getAction, postAction, downloadFile } from '@/api/manage'
export default { export default {
name: 'defaultTemplate', name: 'defaultTemplate',
props: ['formInlineQuery'],
components: {
PersonnelSelection
},
data() { data() {
return { return {
rules: { rules: {
name: [ titleCn: [
{
required: true,
message: this.$t('VirtualListName') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{ {
max: 100, max: 100,
message: this.$t('VirtualListName') + this.$t('cannotExceed') + 100 + this.$t('Characters'), message: this.$t('title') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur' trigger: 'blur'
} }
], ],
useExplain: [ titleEn: [
{ {
required: true, max: 100,
message: this.$t('instructionForUse') + this.$t('cannotEmpty'), message: this.$t('englishTitle') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur' trigger: 'blur'
}, }
],
productionCarImplementTime: [
{ {
max: 500, max: 100,
message: this.$t('instructionForUse') + this.$t('cannotExceed') + 500 + this.$t('Characters'), message: this.$t('vehicleInProductionDate') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
newCarImplementTime: [
{
max: 100,
message: this.$t('ImplementationDate') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
issueTime: [
{
max: 100,
message: this.$t('releaseDate') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
implementCar: [
{
max: 100,
message: this.$t('implementationModel') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
link: [
{
max: 100,
message: this.$t('link') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
workProgressEn: [
{
max: 300,
message: this.$t('workProgressEn') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur'
}
],
workProgressCn: [
{
max: 300,
message: this.$t('workProgressEn') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur'
}
],
contentEn: [
{
max: 300,
message: this.$t('primaryCoverageEn') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur'
}
],
contentCn: [
{
max: 300,
message: this.$t('primaryCoverageCn') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur' trigger: 'blur'
} }
] ]
@@ -301,14 +363,55 @@
} }
}, },
mounted() { mounted() {
this.getSysCategoryTree()
this.$nextTick(() => {
if (this.formInlineQuery.id) {
this.formInline = JSON.parse(JSON.stringify(this.formInlineQuery))
if(this.formInline.technologyTerritory){
this.formInline.technologyTerritory = this.formInline.technologyTerritory.split(',')
}
this.formInline = { ...this.formInline }
} else {
this.formInline = {}
this.formInline.lawsContactName = this.userInfo().username
this.formInline.lawsContact = this.userInfo().id
this.formInline = { ...this.formInline }
}
})
}, },
methods: { methods: {
...mapGetters(['userInfo']),
getSysCategoryTree() {
getAction('/sys/category/getSysCategoryTree', {}).then((res) => {
if (res.success) {
this.CategoryTreeList = res.result
} else {
this.CategoryTreeList = []
}
})
},
handleInput(value) { handleInput(value) {
this.$nextTick(() => { this.$nextTick(() => {
this.formInline = { ...this.formInline } this.formInline = { ...this.formInline }
this.$refs.ruleForm.validateField([value]) this.$refs.ruleForm.validateField([value])
}) })
},
PersonnelSelectionChange(value, id) {
this.formInline[value] = id
this.formInline = { ...this.formInline }
},
getData(callback) {
this.$refs.ruleForm.validate(valid => {
if (valid) {
let formInline = JSON.parse(JSON.stringify(this.formInline))
Object.keys(formInline).forEach(res => {
if (formInline[res] && formInline[res] instanceof Array) {
formInline[res] = formInline[res].join(',')
}
})
callback && callback(formInline)
}
})
} }
} }
} }
@@ -15,12 +15,13 @@
<a-col :span="12"> <a-col :span="12">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text"> <div class="title-text">
<span class="title-text-text" <span class="Required">*</span>
:title="$t('fillInTheMonth')">{{$t('fillInTheMonth')}}</span> <span class="title-text-text"
:title="$t('fillInTheMonth')">{{$t('fillInTheMonth')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="month">
<a-month-picker class="box-input" <a-month-picker class="box-input"
v-model="formInline.fillInTheMonth" v-model="formInline.month"
:placeholder="$t('fillInTheMonth')"/> :placeholder="$t('fillInTheMonth')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -35,34 +36,33 @@
<a-col :span="12"> <a-col :span="12">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text"> <div class="title-text">
<span class="title-text-text" <span class="Required">*</span>
:title="$t('chapterContents')">{{$t('chapterContents')}}</span> <span class="title-text-text"
:title="$t('chapterContents')">{{$t('chapterContents')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel-multi" prop="memoriesChapter">
<a-select :placeholder="$t('PleaseSelect')+$t('chapterContents')" <a-tree-select
:disabled="disabled" tree-node-filter-prop="title"
class="box-input" v-model="formInline.memoriesChapter"
:getPopupContainer="triggerNode=> triggerNode.parentNode" :maxTagCount="1"
allowClear :getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="formInline.chapterContents"> class="box-input"
<a-select-option v-for="(item, key) in chapterContentsList" style="width: 100%"
:key="key" :tree-data="chapterContentsList"
:value="item.value"> tree-checkable
<span style="display: inline-block;width: 100%" :title=" item.name "> :placeholder="$t('PleaseSelect')+$t('chapterContents')"
{{ item.name }} />
</span>
</a-select-option>
</a-select>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text"> <div class="title-text">
<span class="title-text-text" <span class="Required">*</span>
:title="$t('contentTemplate')">{{$t('contentTemplate')}}</span> <span class="title-text-text"
:title="$t('contentTemplate')">{{$t('contentTemplate')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="contentTemplate">
<a-select :placeholder="$t('PleaseSelect')+$t('contentTemplate')" <a-select :placeholder="$t('PleaseSelect')+$t('contentTemplate')"
:disabled="disabled" :disabled="disabled"
class="box-input" class="box-input"
@@ -81,9 +81,12 @@
</div> </div>
</a-col> </a-col>
</a-row> </a-row>
<defaultTemplate v-if="formInline.contentTemplate == 1"/> <defaultTemplate :formInlineQuery="formInline" ref="defaultTemplateRef"
<solicitOpinions v-else-if="formInline.contentTemplate == 2"/> v-if="formInline.contentTemplate == '1'"/>
<releaseStandard v-else-if="formInline.contentTemplate == 3"/> <solicitOpinions :formInlineQuery="formInline " ref="solicitOpinionsRef"
v-else-if="formInline.contentTemplate == '2'"/>
<releaseStandard :formInlineQuery="formInline" ref="releaseStandardRef"
v-else-if="formInline.contentTemplate == '3'"/>
</a-form-model> </a-form-model>
</a-spin> </a-spin>
<div class="drawer-bootom-button"> <div class="drawer-bootom-button">
@@ -98,6 +101,7 @@
import defaultTemplate from './defaultTemplate' import defaultTemplate from './defaultTemplate'
import solicitOpinions from './solicitOpinions' import solicitOpinions from './solicitOpinions'
import releaseStandard from './releaseStandard' import releaseStandard from './releaseStandard'
import { getAction, postAction, downloadFile } from '@/api/manage'
export default { export default {
name: 'fillAdd', name: 'fillAdd',
@@ -109,28 +113,25 @@
data() { data() {
return { return {
rules: { rules: {
name: [ month: [
{ {
required: true, required: true,
message: this.$t('VirtualListName') + this.$t('cannotEmpty'), message: this.$t('fillInTheMonth') + this.$t('cannotEmpty'),
trigger: 'blur' trigger: 'change'
},
{
max: 100,
message: this.$t('VirtualListName') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
} }
], ],
useExplain: [ memoriesChapter: [
{ {
required: true, required: true,
message: this.$t('instructionForUse') + this.$t('cannotEmpty'), message: this.$t('chapterContents') + this.$t('cannotEmpty'),
trigger: 'blur' trigger: 'change'
}, }
],
contentTemplate: [
{ {
max: 500, required: true,
message: this.$t('instructionForUse') + this.$t('cannotExceed') + 500 + this.$t('Characters'), message: this.$t('contentTemplate') + this.$t('cannotEmpty'),
trigger: 'blur' trigger: 'change'
} }
] ]
}, },
@@ -142,40 +143,66 @@
chapterContentsList: [], chapterContentsList: [],
contentTemplateList: [ contentTemplateList: [
{ {
id: 1, id: '1',
text: '默认模板' text: this.$t('defaultTemplate')
}, },
{ {
id: 2, id: '2',
text: '新征求意见清单模板' text: this.$t('newRequestCommentListTemplate')
}, },
{ {
id: 3, id: '3',
text: '新发布标准模板' text: this.$t('NewReleasedStandardTemplate')
} }
] ],
url: {
add: '/report/lawsMonthlyReportWriteEO/add',
edit: '/report/lawsMonthlyReportWriteEO/edit',
queryById: '/report/lawsMonthlyReportWriteEO/queryById'
}
} }
}, },
mounted() { mounted() {
}, },
methods: { methods: {
getTree() {
let query = {
pageNo: this.pageNo,
pageSize: 1000
}
getAction('/report/lawsMonthlyReportTitleTemplateEO/page', query).then((res) => {
if (res.success) {
this.chapterContentsList = res.result.records || []
this.chapterContentsList.forEach(res => {
})
} else {
this.chapterContentsList = []
}
})
},
add() { add() {
this.getTree()
this.title = this.$t('addContent') this.title = this.$t('addContent')
this.visible = true this.visible = true
this.disabled = false this.disabled = false
this.$nextTick(() => { this.$nextTick(() => {
this.formInline = {} this.formInline = {}
this.formInline.contentTemplate = 1 this.formInline.contentTemplate = '1'
this.formInline = { ...this.formInline } this.formInline = { ...this.formInline }
this.$refs.ruleForm.clearValidate() this.$refs.ruleForm.clearValidate()
}) })
}, },
edit(row) { edit(row) {
this.getTree()
this.title = this.$t('editContent') this.title = this.$t('editContent')
this.visible = true this.visible = true
this.disabled = false this.disabled = false
this.$nextTick(() => { this.$nextTick(() => {
this.formInline = row this.formInline = row
if (this.formInline.memoriesChapter) {
this.formInline.memoriesChapter = this.formInline.memoriesChapter.split(',')
}
this.$refs.ruleForm.clearValidate() this.$refs.ruleForm.clearValidate()
}) })
}, },
@@ -192,7 +219,50 @@
this.visible = false this.visible = false
}, },
handleSubmit() { handleSubmit() {
this.$refs.ruleForm.validate(valid => {
if (valid) {
let text = ''
if (this.$refs.defaultTemplateRef) {
text = 'defaultTemplateRef'
} else if (this.$refs.solicitOpinionsRef) {
text = 'solicitOpinionsRef'
} else if (this.$refs.releaseStandardRef) {
text = 'releaseStandardRef'
}
this.$refs[text].getData((val) => {
this.confirmLoading = true
let url = ''
if (this.formInline.id) {
url = this.url.edit
} else {
url = this.url.add
}
let formInline = JSON.parse(JSON.stringify(this.formInline))
Object.keys(formInline).forEach(res => {
if (formInline[res] && formInline[res] instanceof Array) {
formInline[res] = formInline[res].join(',')
}
})
let query = Object.assign(val, {
month: formInline.month,
memoriesChapter: formInline.memoriesChapter,
contentTemplate: formInline.contentTemplate
})
postAction(url, query).then((res) => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
this.visible = false
this.confirmLoading = false
this.$emit('fillTableAddForm')
} else {
this.confirmLoading = false
this.$message.warning(this.$t('operationFailed'))
}
})
})
}
})
} }
} }
} }
@@ -42,6 +42,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize " :page-size.sync="pageSize "
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -53,8 +53,8 @@
<a-select-option v-for="(item, key) in ParentList" <a-select-option v-for="(item, key) in ParentList"
:key="item.id" :key="item.id"
:value="item.id"> :value="item.id">
<span style="display: inline-block;width: 100%" :title="item.title "> <span style="display: inline-block;width: 100%" :title="item.titleCn ">
{{ item.title }} {{ item.titleCn }}
</span> </span>
</a-select-option> </a-select-option>
</a-select> </a-select>
@@ -21,7 +21,7 @@
<a-form-model-item class="itemModel" prop="standardNo"> <a-form-model-item class="itemModel" prop="standardNo">
<a-input class="box-input" <a-input class="box-input"
:disabled="false" :disabled="false"
v-model="formInline.standardNo" v-model="formInline.standardNumber"
:placeholder="$t('PleaseEnter')+$t('standardNo')"/> :placeholder="$t('PleaseEnter')+$t('standardNo')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -63,10 +63,10 @@
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-date-picker class="box-input" <a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('releaseDate')" :placeholder="$t('PleaseSelect')+$t('releaseDate')"
@change="dateChange('releaseDate')" @change="dateChange('issueTime',index)"
:getCalendarContainer="(trigger) => trigger.parentNode" :getCalendarContainer="(trigger) => trigger.parentNode"
format="YYYY-MM-DD" format="YYYY-MM-DD"
v-model="formInline['releaseDate']" v-model="formInline['issueTime']"
:disabled="disabled" :disabled="disabled"
style="width: 100%"/> style="width: 100%"/>
</a-form-model-item> </a-form-model-item>
@@ -82,10 +82,10 @@
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-date-picker class="box-input" <a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('implemenDate')" :placeholder="$t('PleaseSelect')+$t('implemenDate')"
@change="dateChange('implemenDate')" @change="dateChange('implementTime',index)"
:getCalendarContainer="(trigger) => trigger.parentNode" :getCalendarContainer="(trigger) => trigger.parentNode"
format="YYYY-MM-DD" format="YYYY-MM-DD"
v-model="formInline['implemenDate']" v-model="formInline['implementTime']"
:disabled="disabled" :disabled="disabled"
style="width: 100%"/> style="width: 100%"/>
</a-form-model-item> </a-form-model-item>
@@ -101,19 +101,34 @@
export default { export default {
name: 'releaseStandard', name: 'releaseStandard',
props:['formInlineQuery'],
data() { data() {
return { return {
rules: {}, rules: {},
formInline: {}, formInline: {},
CategoryTreeList: [], CategoryTreeList: [],
disabled: false, disabled: false,
dataList: [ dataList: []
{ id: 1 }
]
} }
}, },
mounted() { mounted() {
this.$nextTick(() => {
if (this.formInlineQuery.id) {
this.formInline = JSON.parse(JSON.stringify(this.formInlineQuery))
this.formInline = { ...this.formInline }
} else {
this.dataList = [
{
standardNumber: '',
standardNameCn: '',
standardNameEn: '',
issueTime: '',
implementTime:'',
}
]
this.dataList = [...this.dataList]
}
})
}, },
methods: { methods: {
handleInput(value) { handleInput(value) {
@@ -124,7 +139,11 @@
}, },
addData() { addData() {
this.dataList.push({ this.dataList.push({
id: 2 standardNumber: '',
standardNameCn: '',
standardNameEn: '',
issueTime: '',
implementTime:'',
}) })
this.dataList = [...this.dataList] this.dataList = [...this.dataList]
}, },
@@ -132,8 +151,15 @@
this.dataList.pop() this.dataList.pop()
this.dataList = [...this.dataList] this.dataList = [...this.dataList]
}, },
dateChange(item) { dateChange(item,index) {
this.formInline[item] = this.formInline[item] ? moment(this.formInline[item]).format('YYYY-MM-DD') : '' this.dataList[index][item] = this.dataList[index][item] ? moment(this.dataList[index][item]).format('YYYY-MM-DD') : ''
},
getData(callback) {
this.$refs.ruleForm.validate(valid => {
if (valid) {
callback && callback(this.formInline)
}
})
} }
} }
} }
@@ -21,7 +21,7 @@
<a-form-model-item class="itemModel" prop="planNoChinese"> <a-form-model-item class="itemModel" prop="planNoChinese">
<a-input class="box-input" <a-input class="box-input"
:disabled="false" :disabled="false"
v-model="formInline.planNoChinese" v-model="item.planNumberCn"
:placeholder="$t('PleaseEnter')+$t('planNoChinese')"/> :placeholder="$t('PleaseEnter')+$t('planNoChinese')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -35,7 +35,7 @@
<a-form-model-item class="itemModel" prop="standardNameCn"> <a-form-model-item class="itemModel" prop="standardNameCn">
<a-input class="box-input" <a-input class="box-input"
:disabled="false" :disabled="false"
v-model="formInline.standardNameCn" v-model="item.standardNameCn"
:placeholder="$t('PleaseEnter')+$t('standardNameCn')"/> :placeholder="$t('PleaseEnter')+$t('standardNameCn')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -50,7 +50,7 @@
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-input class="box-input" <a-input class="box-input"
:disabled="false" :disabled="false"
v-model="formInline.standardNameEn" v-model="item.standardNameEn"
:placeholder="$t('PleaseEnter')+$t('standardNameEn')"/> :placeholder="$t('PleaseEnter')+$t('standardNameEn')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
@@ -63,10 +63,10 @@
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<a-date-picker class="box-input" <a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('deadlineForComments')" :placeholder="$t('PleaseSelect')+$t('deadlineForComments')"
@change="dateChange('deadlineForComments')" @change="dateChange('expirationDate',index)"
:getCalendarContainer="(trigger) => trigger.parentNode" :getCalendarContainer="(trigger) => trigger.parentNode"
format="YYYY-MM-DD" format="YYYY-MM-DD"
v-model="formInline['deadlineForComments']" v-model="item['expirationDate']"
:disabled="disabled" :disabled="disabled"
style="width: 100%"/> style="width: 100%"/>
</a-form-model-item> </a-form-model-item>
@@ -82,19 +82,33 @@
export default { export default {
name: 'solicitOpinions', name: 'solicitOpinions',
props: ['formInlineQuery'],
data() { data() {
return { return {
rules: {}, rules: {},
formInline: {}, formInline: {},
CategoryTreeList: [], CategoryTreeList: [],
disabled: false, disabled: false,
dataList: [ dataList: []
{ id: 1 }
]
} }
}, },
mounted() { mounted() {
this.$nextTick(() => {
if (this.formInlineQuery.id) {
this.formInline = JSON.parse(JSON.stringify(this.formInlineQuery))
this.formInline = { ...this.formInline }
} else {
this.dataList = [
{
planNumberCn: '',
standardNameCn: '',
standardNameEn: '',
expirationDate: ''
}
]
this.dataList = [...this.dataList]
}
})
}, },
methods: { methods: {
handleInput(value) { handleInput(value) {
@@ -105,7 +119,10 @@
}, },
addData() { addData() {
this.dataList.push({ this.dataList.push({
id: 2 planNumberCn: '',
standardNameCn: '',
standardNameEn: '',
expirationDate: ''
}) })
this.dataList = [...this.dataList] this.dataList = [...this.dataList]
}, },
@@ -113,8 +130,15 @@
this.dataList.pop() this.dataList.pop()
this.dataList = [...this.dataList] this.dataList = [...this.dataList]
}, },
dateChange(item) { dateChange(item, index) {
this.formInline[item] = this.formInline[item] ? moment(this.formInline[item]).format('YYYY-MM-DD') : '' this.dataList[index][item] = this.dataList[index][item] ? moment(this.dataList[index][item]).format('YYYY-MM-DD') : ''
},
getData(callback) {
this.$refs.ruleForm.validate(valid => {
if (valid) {
callback && callback(this.formInline)
}
})
} }
} }
} }
@@ -193,6 +193,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize " :page-size.sync="pageSize "
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -88,6 +88,7 @@
show-size-changer show-size-changer
:page-size.sync="queryParams.pageSize" :page-size.sync="queryParams.pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChangePage" @change="onChangePage"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -200,6 +200,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -80,6 +80,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -73,6 +73,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -96,6 +96,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -79,6 +79,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -60,13 +60,14 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
</div> </div>
<!-- 复制参数模板--> <!-- 导出历史模板-->
<a-modal class="show-drawer" :title="titleTag" width="900px" v-model="drawerVisible" :footer="null"> <a-modal class="show-drawer" :title="titleTag" width="900px" v-model="drawerVisible" :footer="null">
<export-history v-if='drawerVisible' @areaVisible='drawerVisible = false'></export-history> <export-history v-if='drawerVisible' @areaVisible='drawerVisible = false' :paramsManifestId='paramsManifestId'></export-history>
</a-modal> </a-modal>
</a-card> </a-card>
</template> </template>
@@ -90,6 +91,7 @@
loading: false, loading: false,
toggleSearchStatus: false, toggleSearchStatus: false,
selectedRowKeys: [], selectedRowKeys: [],
paramsManifestId:'',
selectedRowKeysArray: '', selectedRowKeysArray: '',
formInline: {}, formInline: {},
rules: { rules: {
@@ -172,9 +174,10 @@
this.selectedRowKeys = value this.selectedRowKeys = value
this.selectedRowKeysArray = this.selectedRowKeys.join(',') this.selectedRowKeysArray = this.selectedRowKeys.join(',')
}, },
// 复制 // 导出历史
handlecody() { handlecody(e) {
this.drawerVisible = true this.drawerVisible = true
this.paramsManifestId = e.id
}, },
hideModal() { hideModal() {
this.visible = false this.visible = false
@@ -0,0 +1,402 @@
<!--常规导出-->
<template>
<div>
<a-modal
:title="title"
:maskClosable="false"
:width="750"
placement="right"
:closable="true"
@cancel="handleCancel"
:visible="visible"
style="height: 100%;overflow: auto;padding-bottom: 53px;">
<a-spin :spinning="confirmLoading">
<a-form>
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text" :title="$t('certificationCategory')">
<span>{{$t('certificationCategory')}}</span>
</div>
<a-form-model-item class="itemModel" prop="certCategory">
<j-dict-select-tag class="box-input" v-model="formInline.certCategory"
:placeholder="$t('PleaseSelect')+$t('certificationCategory')"
:type="'select'"
@input="certCategoryName"
:triggerChange="false" :dictCode="'cert_category'"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text" :title="$t('configure')">
<span>{{$t('configure')}}</span>
</div>
<a-form-model-item class="itemModel" prop="configIds">
<j-multi-select-tag class="box-input" v-model="formInline.configIds"
:options="dictOptions"
:placeholder="$t('PleaseSelect')+$t('configure')"
:type="'select'"
:triggerChange="false" :dictCode="'cert_category'"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('WhetherMergeParameters')">{{$t('WhetherMergeParameters')}}</span>
</div>
<a-form-model-item class="itemModel" prop="combineFlag">
<a-radio-group style="margin-top: 2px" @change="flagChange" class="box-input" v-model="formInline.combineFlag">
<a-radio value="1">
{{$t('nonjoinder')}}
</a-radio>
<a-radio value="2">
{{$t('merge')}}
</a-radio>
</a-radio-group>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="Required" v-if='required'>*</span>
<span class="title-text-text"
:title="$t('MergeSeparator')">{{$t('MergeSeparator')}}</span>
</div>
<a-form-model-item class="itemModel" :prop="this.disabled == true?'separator':''">
<!-- :disabled="disabled"-->
<a-input class="box-input"
v-model="formInline.separator"
:placeholder="$t('PleaseEnter')+$t('MergeSeparator')"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
</a-form-model>
</a-form>
</a-spin>
<div class="drawer-bootom-button">
<a-button style="margin-right: .8rem" @click="handleCancel">{{$t('cancel')}}</a-button>
<a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('export')}}</a-button>
</div>
</a-modal>
<uploadFileChange ref="uploadFile" :accept="'.doc,.doxc,.xls,.xlsx'" @uploadSuccess="uploadSuccess"></uploadFileChange>
</div>
</template>
<script>
import PersonnelSelection from '@/components/PersonnelSelection/index'
import { getAction, postAction, downloadFile, putAction } from '@/api/manage'
import uploadFileChange from '@/components/uploadFileChange/file'
export default {
name: 'addModel',
components: {
uploadFileChange,
PersonnelSelection
},
props: ['url'],
data() {
return {
formInline: {
},
confirmLoading: false,
description:false,
dictOptions:[],
visible: false,
required:false,
disabled:false,
rules: {
separator:[
{ required: true, message: this.$t('PleaseEnter')+this.$t('MergeSeparator'), trigger: 'change' },
// { min:1, max: 50, message: this.$t('cantExeed')+'50'+this.$t('MergeSeparator'), trigger: 'blur' },
],
certCategory:[
{ required: true, message: this.$t('PleaseEnter')+this.$t('certificationCategory'), trigger: 'change' },
// { min:1, max: 50, message: this.$t('cantExeed')+'50'+this.$t('MergeSeparator'), trigger: 'blur' },
],
combineFlag:[
{ required: true, message: this.$t('PleaseSelect')+this.$t('WhetherMergeParameters'), trigger: 'change' },
// { min:1, max: 50, message: this.$t('cantExeed')+'50'+this.$t('MergeSeparator'), trigger: 'blur' },
],
configIds:[
{ required: true, message: this.$t('PleaseSelect')+this.$t('configure'), trigger: 'change' },
// { min:1, max: 50, message: this.$t('cantExeed')+'50'+this.$t('MergeSeparator'), trigger: 'blur' },
],
description:[
{ min:1, max: 200, message: this.$t('cantExeed')+'200'+this.$t('characters'), trigger: 'blur' },
],
status: [
{ required: true, message: this.$t('PleaseSelect')+this.$t('status'), trigger: 'change' },
],
fileConnectId: [
{ required: true, message: this.$t('PleaseSelect')+this.$t('attachmentTemplate'), trigger: 'change' },
],
},
projectNameList: [],
title: ''
}
},
mounted() {
this.getNameList()
},
methods: {
uploadSuccess(data) {
let attIdList = []
if (data && data.length > 0) {
data.map(item => {
attIdList.push(item.id || data.name)
})
}
this.$refs.uploadFile.visible = false
/** 赋值给当前对应的表单文件 */
this.formInline.fileConnectId = attIdList.join(',')
this.formInline = { ...this.formInline }
},
clickButtonToUpload(item) {
this.$refs.uploadFile.visible = true
getAction('sys/common/getFileInfos', { id: this.formInline.fileConnectId }).then((res) => {
if (res.success) {
this.$refs.uploadFile.perentHandleFunc(res.result)
} else {
this.$refs.uploadFile.perentHandleFunc()
}
})
},
flagChange(value){
console.log(value.target.value)
if(value.target.value == 2){
this.required = true
this.disabled = true
}else{
this.required = false
this.disabled = false
}
},
getNameList() {
getAction('project/projectNameInfoEO/list', {}).then((res) => {
if (res.success) {
this.projectNameList = res.result || []
} else {
this.projectNameList = []
}
})
},
addModel() {
this.visible = true
this.title = this.$t('ConventionalExport')
this.formInline = {}
this.formInline.separator = ','
this.formInline = {...this.formInline}
this.getConfigure()
this.$nextTick(() => {
this.$refs['ruleForm'].clearValidate()
})
},
getConfigure(){
let pram = {
paramsManifestId: this.$route.query.id
}
getAction('report/detail/getConfigLabelList', pram).then((res) => {
if (res.success) {
console.log(res.result)
this.dictOptions = res.result
} else {
// this.$refs.uploadFile.perentHandleFunc()
}
})
},
editModel(value) {
this.visible = true
this.title = '编辑'
this.$nextTick(() => {
this.formInline = value
})
},
handleCancel() {
this.visible = false
this.$refs.ruleForm.resetFields()
},
certCategoryName(value){
getAction('sys/dict/getDictItems/cert_category', { }).then((res) => {
if (res.success) {
let tt = ''
res.result.forEach((item) => {
if(item.value == value){
tt=item.title
}
})
this.contentListStart = tt
console.log(this.contentListStart)
}
})
console.log(value)
},
handleSubmit() {
this.$refs.ruleForm.validate(valid => {
if (valid) {
let url = this.url.ConventionalExport
let Action = getAction
let query = JSON.parse(JSON.stringify(this.formInline))
Object.keys(query).forEach(res => {
if (query[res] && query[res] instanceof Array) {
query[res] = query[res].join(',')
}
})
if(this.contentListStart){
query.certCategoryName = this.contentListStart
}
query.paramsManifestId = this.$route.query.id
this.confirmLoading = true
downloadFile('report/detail/exportNormal', this.$t('GeneralExportInformation')+'.zip', query)
this.confirmLoading = false
}
})
},
handleInput(value) {
this.$nextTick(() => {
this.formInline = { ...this.formInline }
this.$refs.ruleForm.validateField([value])
})
},
PersonnelSelectionChange(value, id) {
this.formInline[value] = id
this.formInline = { ...this.formInline }
},
projectNameChange(value){
console.log(value)
},
}
}
</script>
<style>
.formAdd .ant-form-item-label {
width: 130px;
}
.formAdd .ant-form-item-control-wrapper {
display: inline-block;
width: 100%;
}
/*.formAdd .ant-form-item {*/
/* margin-bottom: 20px;*/
/*}*/
.itemModel .ant-form-item-control-wrapper {
width: 100%;
}
.box-input .ant-select-selection--single {
height: 38px;
}
.box-input .ant-select-selection--multiple {
height: 38px;
}
.box-input .ant-select-selection__rendered {
line-height: 38px;
height: 38px;
}
.box-input .ant-select-selection--multiple .ant-select-selection__rendered > ul > li {
margin-top: 6px;
}
.box-input .ant-calendar-picker {
line-height: 38px;
height: 38px;
}
.box-input .ant-calendar-picker-input {
height: 38px;
}
.box-input .ant-input-number-input-wrap {
line-height: 38px;
height: 38px;
}
</style>
<style scoped>
.box-title-text {
line-height: 1.4;
display: flex;
/*align-items: center;*/
}
.title-text {
width: 114px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 48px;
}
.box-input {
display: inline-block;
height: 38px;
width: 100%;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
}
.Required {
color: red;
margin-right: 4px;
}
.title-text-text {
margin-top: 9px;
}
.formAdd {
margin-bottom: 40px;
}
.drawer-bootom-button {
position: absolute;
bottom: 0;
width: 100%;
z-index:100;
border-top: 1px solid #e8e8e8;
padding: 10px 16px;
text-align: right;
left: 0;
background: #fff;
border-radius: 0 0 2px 2px;
}
/deep/.add-input{
min-height: 135px!important;
}
</style>
<style>
.ant-input-disabled {
color: rgba(0, 0, 0, 0.65) !important;
}
</style>
@@ -0,0 +1,358 @@
<template>
<div>
<a-drawer
:title="title"
:maskClosable="false"
:width="1000"
placement="right"
:closable="true"
@close="handleCancel"
:visible="visible"
style="height: 100%;overflow: auto;padding-bottom: 53px;">
<a-spin :spinning="confirmLoading">
<a-form>
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('parameterTemplate')">{{$t('parameterTemplate')}}</span>
</div>
<a-form-model-item class="itemModel" prop="templateName">
<a-input class="box-input"
:disabled="disabled"
v-model="formInline.templateName"
:placeholder="$t('PleaseEnter')+$t('templateName')"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text" :title="$t('status')">{{$t('status')}}</span>
</div>
<a-form-model-item class="itemModel" prop="state">
<a-select allowClear :placeholder="$t('PleaseSelect')+$t('status')" v-model='formInline.state'>
<a-select-option :key="'0'" :value="'0'">{{$t('Enable')}}
</a-select-option>
<a-select-option :key="'1'" :value="'1'">{{$t('disable')}}
</a-select-option>
</a-select>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('contentDescription')">{{$t('contentDescription')}}</span>
</div>
<a-form-model-item class="itemModel" prop="description">
<a-input class="box-input add-input"
type="textarea"
:disabled="disabled"
v-model="formInline.description"
:placeholder="$t('PleaseEnter')+$t('contentDescription')"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('attachmentTemplate')">{{$t('attachmentTemplate')}}</span>
</div>
<a-form-model-item class="itemModel" prop="fileConnectId">
<a-button type="primary" class="button-text"
v-model='formInline.fileConnectId'
@click="clickButtonToUpload('fileTemplateConnectId')">
{{ (formInline.fileConnectId === 'null' || formInline.fileConnectId === '' ||
formInline.fileConnectId == null) ? $t('clickUpload') : $t('viewUploadedFiles')}}
</a-button>
</a-form-model-item>
</div>
</a-col>
</a-row>
</a-form-model>
</a-form>
</a-spin>
<div class="drawer-bootom-button">
<a-button style="margin-right: .8rem" @click="handleCancel">{{$t('cancel')}}</a-button>
<a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
</div>
</a-drawer>
<uploadFileChange ref="uploadFile" :accept="'.doc,.doxc,.xls,.xlsx'" @uploadSuccess="uploadSuccess"></uploadFileChange>
</div>
</template>
<script>
import PersonnelSelection from '@/components/PersonnelSelection/index'
import { getAction, postAction, downloadFile, putAction } from '@/api/manage'
import uploadFileChange from '@/components/uploadFileChange/file'
export default {
name: 'addModel',
components: {
uploadFileChange,
PersonnelSelection
},
props: ['url'],
data() {
return {
formInline: {},
confirmLoading: false,
visible: false,
rules: {
templateName:[
{ required: true, message: this.$t('PleaseEnter')+this.$t('parameterTemplate'), trigger: 'change' },
{ min:1, max: 50, message: this.$t('cantExeed')+'50'+this.$t('characters'), trigger: 'blur' },
],
description:[
{ min:1, max: 200, message: this.$t('cantExeed')+'200'+this.$t('characters'), trigger: 'blur' },
],
status: [
{ required: true, message: this.$t('PleaseSelect')+this.$t('status'), trigger: 'change' },
],
fileConnectId: [
{ required: true, message: this.$t('PleaseSelect')+this.$t('attachmentTemplate'), trigger: 'change' },
],
},
disabled: false,
projectNameList: [],
title: ''
}
},
mounted() {
this.getNameList()
},
methods: {
uploadSuccess(data) {
let attIdList = []
if (data && data.length > 0) {
data.map(item => {
attIdList.push(item.id || data.name)
})
}
this.$refs.uploadFile.visible = false
/** 赋值给当前对应的表单文件 */
this.formInline.fileConnectId = attIdList.join(',')
this.formInline = { ...this.formInline }
},
clickButtonToUpload(item) {
this.$refs.uploadFile.visible = true
getAction('sys/common/getFileInfos', { id: this.formInline.fileConnectId }).then((res) => {
if (res.success) {
this.$refs.uploadFile.perentHandleFunc(res.result)
} else {
this.$refs.uploadFile.perentHandleFunc()
}
})
},
getNameList() {
getAction('project/projectNameInfoEO/list', {}).then((res) => {
if (res.success) {
this.projectNameList = res.result || []
} else {
this.projectNameList = []
}
})
},
addModel() {
this.visible = true
this.title = this.$t('CustomExport')
this.formInline = {}
this.formInline.state = '0'
this.formInline = {...this.formInline}
this.$nextTick(() => {
this.$refs['ruleForm'].clearValidate()
})
},
editModel(value) {
this.visible = true
this.title = '编辑'
this.$nextTick(() => {
this.formInline = value
})
},
handleCancel() {
this.visible = false
},
handleSubmit() {
if(this.formInline.paramsTemplateName !== undefined) {
this.formInline.paramsTemplateName = this.formInline.paramsTemplateName.trim()
}
this.$refs.ruleForm.validate(valid => {
if (valid) {
let url = ''
let Action
if (this.formInline.id) {
url = this.url.edit
Action = postAction
} else {
url = this.url.add
Action = postAction
}
let query = JSON.parse(JSON.stringify(this.formInline))
Object.keys(query).forEach(res => {
if (query[res] && query[res] instanceof Array) {
query[res] = query[res].join(',')
}
})
this.confirmLoading = true
Action(url, query).then((res) => {
if (res.success) {
this.confirmLoading = false
this.$message.success(this.$t('OperationSuccessful'))
this.visible = false
this.$emit('addModelList')
} else {
this.$message.warning(this.$t('operationFailed'))
this.confirmLoading = false
}
})
}
})
},
handleInput(value) {
this.$nextTick(() => {
this.formInline = { ...this.formInline }
this.$refs.ruleForm.validateField([value])
})
},
PersonnelSelectionChange(value, id) {
this.formInline[value] = id
this.formInline = { ...this.formInline }
},
projectNameChange(value){
console.log(value)
},
}
}
</script>
<style>
.formAdd .ant-form-item-label {
width: 130px;
}
.formAdd .ant-form-item-control-wrapper {
display: inline-block;
width: 100%;
}
/*.formAdd .ant-form-item {*/
/* margin-bottom: 20px;*/
/*}*/
.itemModel .ant-form-item-control-wrapper {
width: 100%;
}
.box-input .ant-select-selection--single {
height: 38px;
}
.box-input .ant-select-selection--multiple {
height: 38px;
}
.box-input .ant-select-selection__rendered {
line-height: 38px;
height: 38px;
}
.box-input .ant-select-selection--multiple .ant-select-selection__rendered > ul > li {
margin-top: 6px;
}
.box-input .ant-calendar-picker {
line-height: 38px;
height: 38px;
}
.box-input .ant-calendar-picker-input {
height: 38px;
}
.box-input .ant-input-number-input-wrap {
line-height: 38px;
height: 38px;
}
</style>
<style scoped>
.box-title-text {
line-height: 1.4;
display: flex;
/*align-items: center;*/
}
.title-text {
width: 114px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 48px;
}
.box-input {
display: inline-block;
height: 38px;
width: 100%;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
}
.Required {
color: red;
margin-right: 4px;
}
.title-text-text {
margin-top: 9px;
}
.formAdd {
margin-bottom: 40px;
}
.drawer-bootom-button {
position: absolute;
bottom: 0;
width: 100%;
z-index:100;
border-top: 1px solid #e8e8e8;
padding: 10px 16px;
text-align: right;
left: 0;
background: #fff;
border-radius: 0 0 2px 2px;
}
/deep/.add-input{
min-height: 135px!important;
}
</style>
<style>
.ant-input-disabled {
color: rgba(0, 0, 0, 0.65) !important;
}
</style>
@@ -4,7 +4,7 @@
<div class="Virtual-detail-header" style="top: 0"> <div class="Virtual-detail-header" style="top: 0">
<div class="Virtual-detail-title"> <div class="Virtual-detail-title">
<span> <span>
{{ $t('ParameteItemCollectionList') }} {{ $t('ParameterViewPage') }}
</span> </span>
</div> </div>
</div> </div>
@@ -12,6 +12,17 @@
<div class='Virtual-detail-content' style='margin-top: 15px'> <div class='Virtual-detail-content' style='margin-top: 15px'>
<a-form layout="inline" @keyup.enter.native="searchQuery"> <a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24" style='margin-left: -90px;'> <a-row :gutter="24" style='margin-left: -90px;'>
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('certificationCategory')">
<span>{{$t('certificationCategory')}}</span>
</div>
<j-multi-select-tag class="box-input" v-model="formInline.certCategory"
:placeholder="$t('PleaseSelect')+$t('certificationCategory')"
:type="'select'"
:triggerChange="false" :dictCode="'cert_category'"/>
</div>
</a-col>
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text" :title="$t('NiONumber')"> <div class="title-text" :title="$t('NiONumber')">
@@ -30,35 +41,32 @@
v-model="formInline.paramsName"></a-input> v-model="formInline.paramsName"></a-input>
</div> </div>
</a-col> </a-col>
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('certificationCategory')">
<span>{{$t('certificationCategory')}}</span>
</div>
<j-dict-select-tag class="box-input" v-model="formInline.certCategory"
:placeholder="$t('PleaseSelect')+$t('certificationCategory')"
:type="'select'"
:triggerChange="false" :dictCode="'cert_category'"/>
</div>
</a-col>
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('areaOfResponsibility')">
<span>{{$t('areaOfResponsibility')}}</span>
</div>
<j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
:type="'select'"
:triggerChange="false" :dictCode="'duty_territory'"/>
</div>
</a-col>
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text" :title="$t('completedBy')"> <div class="title-text" :title="$t('completedBy')">
<span>{{$t('completedBy')}}</span> <span>{{$t('completedBy')}}</span>
</div> </div>
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('completedBy')" <PersonnelSelection
v-model="formInline.dre"></a-input> :query="{db_field_name:'completedBy',db_field_txt:$t('completedBy')}"
:isInput="true"
class="box-input"
:personneQuery="formInline"
@change="PersonnelSelectionChange"
v-model="formInline.dre"/>
</div>
</a-col>
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('engineeringInterfacePerson')">
<span>{{$t('engineeringInterfacePerson')}}</span>
</div>
<PersonnelSelection
:query="{db_field_name:'engineeringInterfacePerson',db_field_txt:$t('engineeringInterfacePerson')}"
:isInput="true"
class="box-input"
:personneQuery="formInline"
@change="PersonnelSelectionChange"
v-model="formInline.sdt"/>
</div> </div>
</a-col> </a-col>
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons"> <span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
@@ -71,6 +79,16 @@
</a-form> </a-form>
</div> </div>
</div> </div>
<div class="table-operator">
<div @click="ConventionalExport" class="operator-text" v-has="'params:template:add'">
<!-- <a-icon type="plus"/>-->
{{$t('ConventionalExport')}}
</div>
<div @click="CustomExport" class="operator-text" v-has="'params:template:delete'">
<!-- <a-icon type="delete"/>-->
{{$t('CustomExport')}}
</div>
</div>
<div> <div>
<a-table <a-table
ref="table" ref="table"
@@ -99,20 +117,31 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
</div> </div>
<conventionalModel :url="url" ref="conventionalModel"/>
<customelModel :url="url" ref="customelModel"/>
</a-card> </a-card>
</template> </template>
<script> <script>
import { getAction,postAction } from '../../../api/manage' import { getAction,postAction } from '../../../api/manage'
import axios from 'axios' import axios from 'axios'
import conventionalModel from './commponts/conventionalmodle'
import customelModel from './commponts/customexportmodle'
import { ACCESS_TOKEN } from '@/store/mutation-types' import { ACCESS_TOKEN } from '@/store/mutation-types'
import PersonnelSelection from '@/components/PersonnelSelection/index'
import Vue from 'vue' import Vue from 'vue'
export default { export default {
name: 'managementdetails', name: 'managementdetails',
components: {
conventionalModel,
customelModel,
PersonnelSelection
},
data(){ data(){
return{ return{
columns:[], columns:[],
@@ -121,7 +150,7 @@ export default {
url: { url: {
tableHeader: 'report/detail/getHeader', tableHeader: 'report/detail/getHeader',
tableList: 'report/detail/list', tableList: 'report/detail/list',
// add: 'params/collectManifest/submit', ConventionalExport: 'report/detail/exportNormal',
// getLoginUserType: 'params/collectManifest/getLoginUserType', // 获取当前登陆人 // getLoginUserType: 'params/collectManifest/getLoginUserType', // 获取当前登陆人
// getquerySdtList: 'params/collectManifest/querySdtList', // 获取工程接口人的列表 // getquerySdtList: 'params/collectManifest/querySdtList', // 获取工程接口人的列表
// updateSdt: 'params/collectManifest/updateSdt', // 提交工程接口人 // updateSdt: 'params/collectManifest/updateSdt', // 提交工程接口人
@@ -237,18 +266,26 @@ export default {
} }
}) })
}, },
getcompleteby(e){
console.log(e)
},
PersonnelSelectionChange(value, id) {
this.formInline[value] = id
this.formInline = { ...this.formInline }
},
getTableList() { getTableList() {
// console.log('this.searchParmestable',this.searchParmes) // console.log('this.searchParmestable',this.searchParmes)
let pageNo = JSON.parse(JSON.stringify(this.pageNo)) let pageNo = JSON.parse(JSON.stringify(this.pageNo))
let pageSize = JSON.parse(JSON.stringify(this.pageSize)) let pageSize = JSON.parse(JSON.stringify(this.pageSize))
let params = { let params = {
...this.searchParmes, ...this.formInline,
paramsManifestId: this.$route.query.id,
pageNo: pageNo + '', pageNo: pageNo + '',
pageSize: pageSize + '' pageSize: pageSize + ''
} }
// console.log('parmsss',params) // console.log('parmsss',params)
this.loading = true this.loading = true
getAction(this.url.tableList, {paramsManifestId: this.$route.query.id}).then((res) => { getAction(this.url.tableList, params).then((res) => {
if (res.success) { if (res.success) {
if (res.result.current > 1 && res.result.records.length == 0) { if (res.result.current > 1 && res.result.records.length == 0) {
this.pageNo = res.result.current - 1 this.pageNo = res.result.current - 1
@@ -281,17 +318,20 @@ export default {
listReset() { listReset() {
this.formInline = {} this.formInline = {}
}, },
handleModule() { ConventionalExport() {
this.$refs.conventionalModel.addModel()
}, },
handleCody() { CustomExport() {
this.$refs.customelModel.addModel()
}, },
searchQuery() { searchQuery() {
this.pageNo = 1 this.pageNo = 1
this.$refs.CollectionTabel.getTableList() this.getTableList()
}, },
searchReset() { searchReset() {
this.$refs.CollectionTabel.getTableListReset() this.pageNo = 1
this.formInline = {}
this.getTableList()
}, },
pageOnChange() { pageOnChange() {
@@ -49,6 +49,7 @@
<a-col :span="24"> <a-col :span="24">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text"> <div class="title-text">
<span class="title-text-text" <span class="title-text-text"
:title="$t('contentDescription')">{{$t('contentDescription')}}</span> :title="$t('contentDescription')">{{$t('contentDescription')}}</span>
</div> </div>
@@ -66,11 +67,13 @@
<a-col :span="12"> <a-col :span="12">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text"> <div class="title-text">
<span class="Required">*</span>
<span class="title-text-text" <span class="title-text-text"
:title="$t('attachmentTemplate')">{{$t('attachmentTemplate')}}</span> :title="$t('attachmentTemplate')">{{$t('attachmentTemplate')}}</span>
</div> </div>
<a-form-model-item class="itemModel" prop="paramsTemplateName"> <a-form-model-item class="itemModel" prop="fileConnectId">
<a-button type="primary" class="button-text" <a-button type="primary" class="button-text"
v-model='formInline.fileConnectId'
@click="clickButtonToUpload('fileTemplateConnectId')"> @click="clickButtonToUpload('fileTemplateConnectId')">
{{ (formInline.fileConnectId === 'null' || formInline.fileConnectId === '' || {{ (formInline.fileConnectId === 'null' || formInline.fileConnectId === '' ||
formInline.fileConnectId == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} formInline.fileConnectId == null) ? $t('clickUpload') : $t('viewUploadedFiles')}}
@@ -87,7 +90,7 @@
<a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button> <a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
</div> </div>
</a-drawer> </a-drawer>
<uploadFileChange ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFileChange> <uploadFileChange ref="uploadFile" :accept="'.doc,.doxc,.xls,.xlsx'" @uploadSuccess="uploadSuccess"></uploadFileChange>
</div> </div>
</template> </template>
@@ -119,6 +122,9 @@ export default {
status: [ status: [
{ required: true, message: this.$t('PleaseSelect')+this.$t('status'), trigger: 'change' }, { required: true, message: this.$t('PleaseSelect')+this.$t('status'), trigger: 'change' },
], ],
fileConnectId: [
{ required: true, message: this.$t('PleaseSelect')+this.$t('attachmentTemplate'), trigger: 'change' },
],
}, },
disabled: false, disabled: false,
projectNameList: [], projectNameList: [],
@@ -143,7 +149,7 @@ export default {
}, },
clickButtonToUpload(item) { clickButtonToUpload(item) {
this.$refs.uploadFile.visible = true this.$refs.uploadFile.visible = true
getAction('sys/common/getFileInfos', { id: this.formInline[item] }).then((res) => { getAction('sys/common/getFileInfos', { id: this.formInline.fileConnectId }).then((res) => {
if (res.success) { if (res.success) {
this.$refs.uploadFile.perentHandleFunc(res.result) this.$refs.uploadFile.perentHandleFunc(res.result)
} else { } else {
@@ -190,7 +196,7 @@ export default {
let Action let Action
if (this.formInline.id) { if (this.formInline.id) {
url = this.url.edit url = this.url.edit
Action = putAction Action = postAction
} else { } else {
url = this.url.add url = this.url.add
Action = postAction Action = postAction
@@ -59,6 +59,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -96,6 +96,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -272,6 +272,7 @@
show-quick-jumper show-quick-jumper
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
/> />
</div> </div>
@@ -33,6 +33,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -28,6 +28,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -28,6 +28,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -28,6 +28,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -25,6 +25,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -23,6 +23,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -64,6 +64,26 @@
v-model="formInline.dre"></a-input> v-model="formInline.dre"></a-input>
</div> </div>
</a-col> </a-col>
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('status')">
<span>{{$t('status')}}</span>
</div>
<a-select :placeholder="$t('PleaseSelect')+$t('status')"
class="box-input"
allowClear
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="formInline.state">
<a-select-option v-for="(item, key) in statusList"
:key="key"
:value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.name ">
{{ item.name}}
</span>
</a-select-option>
</a-select>
</div>
</a-col>
<span style="float: right;overflow: hidden;margin-right: 11px" <span style="float: right;overflow: hidden;margin-right: 11px"
class="table-page-search-submitButtons"> class="table-page-search-submitButtons">
<a-col :md="6" :sm="24"> <a-col :md="6" :sm="24">
@@ -75,7 +95,7 @@
</a-form> </a-form>
</div> </div>
</div> </div>
<div class="table-operator"> <div class="table-operator" v-if="!this.$route.query.it">
<!-- // 认证工程师 homo--> <!-- // 认证工程师 homo-->
<!-- // 工程接口人 sdt--> <!-- // 工程接口人 sdt-->
<!-- // 填写人 dre--> <!-- // 填写人 dre-->
@@ -115,6 +135,10 @@
<a-icon type="delete"/> <a-icon type="delete"/>
{{$t('BatchDelete')}} {{$t('BatchDelete')}}
</div> </div>
<div @click="bringInTheProjectInterfaceClick" class="operator-text-title">
<a-icon type="profile"/>
{{$t('bringInTheProjectInterface')}}
</div>
</template> </template>
<div class="operator-text" style="position: relative"> <div class="operator-text" style="position: relative">
<span style="position: absolute;left: -13px;top: -4px">...</span>{{ $t('more') }} <span style="position: absolute;left: -13px;top: -4px">...</span>{{ $t('more') }}
@@ -133,7 +157,7 @@
<!-- 保存--> <!-- 保存-->
<div @click="handlePreservation(1)" class="operator-text" v-if='currentPersonRole == "dre"'> <div @click="handlePreservation(1)" class="operator-text" v-if='currentPersonRole == "dre"'>
<a-icon type="check-circle"/> <a-icon type="check-circle"/>
{{$t('preservation')}} {{$t('tempSave')}}
</div> </div>
<!-- 提交--> <!-- 提交-->
<div @click="handleSubmit" class="operator-text" v-if='currentPersonRole == "dre"'> <div @click="handleSubmit" class="operator-text" v-if='currentPersonRole == "dre"'>
@@ -154,6 +178,7 @@
</div> </div>
<!-- 角色切换 --> <!-- 角色切换 -->
<div class="operator-text" <div class="operator-text"
v-if="!this.$route.query.it"
@click="roleSwitchingClick"> @click="roleSwitchingClick">
<a-icon type="select"/> <a-icon type="select"/>
{{ $t('roleSwitching') }} {{ $t('roleSwitching') }}
@@ -178,29 +203,31 @@
</a-modal> </a-modal>
<!-- 冻结配置---> <!-- 冻结配置--->
<a-modal v-model="areaVisibleFreeze" :title="$t('FreezeConfiguration')" width='600px' :footer="null"> <a-modal v-model="areaVisibleFreeze" :title="$t('FreezeConfiguration')" width='600px' :footer="null">
<a-form-model <a-spin :spinning="confirmLoading">
class='tag-module' <a-form-model
ref='ruleForm' class='tag-module'
:model='Dateline' ref='ruleForm'
:rules='rules' :model='Dateline'
:label-col='labelCol' :rules='rules'
:wrapper-col='wrapperCol' :label-col='labelCol'
> :wrapper-col='wrapperCol'
<a-row :gutter='24'> >
<a-col :span='24'> <a-row :gutter='24'>
<a-form-model-item ref='region' :label="$t('FreezeConfiguration')" prop='region'> <a-col :span='24'>
<a-select :placeholder="$t('PleaseSelect')+$t('FreezeConfiguration')" v-model="Dateline.paramsConfig" <a-form-model-item ref='region' :label="$t('FreezeConfiguration')" prop='region'>
allowClear mode="multiple"> <a-select :placeholder="$t('PleaseSelect')+$t('FreezeConfiguration')" v-model="Dateline.paramsConfig"
<a-select-option v-for="(item, key) in FreezeList" :key="key" :value="item.value"> allowClear mode="multiple">
<a-select-option v-for="(item, key) in FreezeList" :key="key" :value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.label "> <span style="display: inline-block;width: 100%" :title=" item.label ">
{{ item.label }} {{ item.label }}
</span> </span>
</a-select-option> </a-select-option>
</a-select> </a-select>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
</a-form-model> </a-form-model>
</a-spin>
<div style='padding-left: 60px;color: red'> <div style='padding-left: 60px;color: red'>
{{$t('Attentionfreeze')}} {{$t('Attentionfreeze')}}
</div> </div>
@@ -384,6 +411,44 @@
SynchronousSubmissionLibrary SynchronousSubmissionLibrary
}, },
data() { data() {
this.statusList = [
{
value: '1',
name: this.$t('CollectionInitiated')
},
{
value: '2',
name: this.$t('handledInterface')
},
{
value: '3',
name: this.$t('ReturnedPerson')
},
{
value: '4',
name: this.$t('completed')
},
{
value: '5',
name: this.$t('Filledreturn')
},
{
value: '6',
name: this.$t('Submitted')
},
{
value: '7',
name: this.$t('ReturnedEngineer')
},
{
value: '8',
name: this.$t('SynchronizedLibrary')
},
{
value: '9',
name: this.$t('alteration')
}
]
return { return {
// 认证工程师 homo // 认证工程师 homo
// 工程接口人 sdt // 工程接口人 sdt
@@ -461,6 +526,7 @@
templatetitleId: '', templatetitleId: '',
rowId: '', rowId: '',
version: 0, version: 0,
confirmLoading: false,
itemId: '', itemId: '',
selectedRowKeysValue: [], // table列表所选得数据 selectedRowKeysValue: [], // table列表所选得数据
token: Vue.ls.get(ACCESS_TOKEN), token: Vue.ls.get(ACCESS_TOKEN),
@@ -524,6 +590,22 @@
handleCancelRoleSwitching() { handleCancelRoleSwitching() {
this.visibleRoleSwitching = false this.visibleRoleSwitching = false
}, },
bringInTheProjectInterfaceClick() {
let query = {
paramsManifestId: this.paramsManifest.id,
projectId: this.$route.query.projectId
}
this.textLoading = true
getAction('/params/collectManifest/bringSdtInto', query).then((res) => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
this.$refs.CollectionTabel.getTableList()
} else {
this.$message.warning(this.$t('operationFailed'))
}
this.textLoading = false
})
},
handleOkRoleSwitching() { handleOkRoleSwitching() {
this.$refs.ruleFormRoleSwitching.validate(valid => { this.$refs.ruleFormRoleSwitching.validate(valid => {
if (valid) { if (valid) {
@@ -851,7 +933,22 @@
this.areaVisibleFreeze = true this.areaVisibleFreeze = true
this.Dateline = {} this.Dateline = {}
// 获取冻结配置数据 // 获取冻结配置数据
this.getFreeze() this.confirmLoading = true
this.getFreeze(() => {
this.getLockedConfigIdList()
})
},
getLockedConfigIdList() {
getAction('/params/collectManifest/getLockedConfigIdList',
{ paramsManifestId: this.paramsManifest.id }).then((res) => {
if (res.success) {
this.Dateline.paramsConfig = res.result
this.Dateline = { ...this.Dateline }
} else {
this.Dateline.paramsConfig = []
}
this.confirmLoading = false
})
}, },
// 冻结配置提交 // 冻结配置提交
handleSubmitFreeze() { handleSubmitFreeze() {
@@ -894,7 +991,7 @@
cancleImportsFreeze() { cancleImportsFreeze() {
this.areaVisibleFreeze = false this.areaVisibleFreeze = false
}, },
getFreeze() { getFreeze(callback) {
let _this = this let _this = this
let param = { paramsManifestId: this.paramsManifest.id, configFlag: 1 } let param = { paramsManifestId: this.paramsManifest.id, configFlag: 1 }
axios({ axios({
@@ -916,11 +1013,15 @@
.then((res) => { .then((res) => {
if (res.data.success) { if (res.data.success) {
this.FreezeList = res.data.result this.FreezeList = res.data.result
callback && callback()
} else { } else {
_this.$message.warning(res.data.message) _this.$message.warning(res.data.message)
_this.confirmLoading = false
} }
}) })
.catch((error) => { .catch((error) => {
_this.confirmLoading = false
}) })
}, },
// 下发收集的权限 // 下发收集的权限
@@ -1053,7 +1154,11 @@
if (num && num == 1) { if (num && num == 1) {
this.textLoading = true this.textLoading = true
} }
postAction('/params/collectManifest/save', configDataList).then((res) => { let query = {
...configDataList,
paramsManifestId: this.paramsManifest.id
}
postAction('/params/collectManifest/save', query).then((res) => {
if (res.success) { if (res.success) {
if (num && num == 1) { if (num && num == 1) {
_this.$message.success(_this.$t('OperationSuccessful')) _this.$message.success(_this.$t('OperationSuccessful'))
@@ -1071,6 +1176,10 @@
} }
} }
}) })
} else {
if (num && num == 1) {
this.$message.warning(this.$t('theCurrentListSaved'))
}
} }
}, },
// 提交数据 // 提交数据
@@ -1319,7 +1428,7 @@
if (res.data.success) { if (res.data.success) {
_this.$message.success(_this.$t('OperationSuccessful')) _this.$message.success(_this.$t('OperationSuccessful'))
_this.selectedRowKeys = [] _this.selectedRowKeys = []
_this.$refs.CollectionTabel.getData() // _this.$refs.CollectionTabel.getData()
_this.$refs.CollectionTabel.getTableList() _this.$refs.CollectionTabel.getTableList()
_this.textLoading = false _this.textLoading = false
} else { } else {
@@ -1345,7 +1454,19 @@
} }
} }
</script> </script>
<style>
.popconfirm {
z-index: 999;
}
.popconfirm .ant-popover-buttons {
display: none !important;
}
.popconfirm .anticon-exclamation-circle {
display: none !important;
}
</style>
<style lang="less" scoped> <style lang="less" scoped>
@import '~@assets/less/common.less'; @import '~@assets/less/common.less';
@@ -78,6 +78,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -44,6 +44,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -70,6 +70,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -73,6 +73,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -47,6 +47,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="onChange" @change="onChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -54,6 +54,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -103,6 +103,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -67,6 +67,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -144,6 +144,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -173,6 +173,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -43,6 +43,7 @@
show-size-changer show-size-changer
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />
@@ -91,6 +91,7 @@
:show-total="total => $t('total')+` ${total} `+$t('strip')" :show-total="total => $t('total')+` ${total} `+$t('strip')"
:page-size.sync="pageSize" :page-size.sync="pageSize"
:total="total" :total="total"
:current="pageNo"
@change="pageOnChange" @change="pageOnChange"
@showSizeChange="SizeChange" @showSizeChange="SizeChange"
/> />