Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH
# Conflicts: # jero-web/src/common/lang/en-us.js # jero-web/src/common/lang/zh-cn.js
This commit is contained in:
@@ -325,3 +325,48 @@ CREATE TABLE `auth_dummy_content_change` (
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- 标签管理 增加认证清单-配置项数据 2023-03-13 未同步生产环境 (由于需求确认 认证清单-配置项为输入框,此数据暂时不用了。)
|
||||
-- INSERT INTO `sys_dict` (`id`, `dict_name`, `dict_code`, `description`, `del_flag`, `create_by`, `create_time`, `update_by`, `update_time`, `type`, `dict_en_name`, `is_tag_dict`, `is_read_only`, `attribute_type`, `order_num`) VALUES ('1635093263477002242', '认证清单-配置项', 'ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4', '认证清单-配置项', 0, 'admin', '2023-03-13 09:39:47', NULL, NULL, NULL, NULL, 1, 0, '1', 1);
|
||||
--
|
||||
-- INSERT INTO `sys_dict_item` (`id`, `dict_id`, `item_text`, `item_value`, `description`, `sort_order`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `is_tag_dict`, `is_read_only`, `attribute_type`, `del_flag`, `en_name`) VALUES ('1635093344389320705', '1635093263477002242', '配置1', '46c10455e29e4855bb7e5d653b11a51d', '开发环境假数据', 1, 1, 'admin', '2023-03-13 09:40:07', 'admin', '2023-03-13 09:40:46', 1, NULL, NULL, '0', 'pz1');
|
||||
-- INSERT INTO `sys_dict_item` (`id`, `dict_id`, `item_text`, `item_value`, `description`, `sort_order`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `is_tag_dict`, `is_read_only`, `attribute_type`, `del_flag`, `en_name`) VALUES ('1635093406049783810', '1635093263477002242', '配置2', '4718f8eef0434d079b970834a2b9dd69', '开发环境假数据', 2, 1, 'admin', '2023-03-13 09:40:21', 'admin', '2023-03-13 09:40:43', 1, NULL, NULL, '0', 'Pz2');
|
||||
-- INSERT INTO `sys_dict_item` (`id`, `dict_id`, `item_text`, `item_value`, `description`, `sort_order`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `is_tag_dict`, `is_read_only`, `attribute_type`, `del_flag`, `en_name`) VALUES ('1635093480922304513', '1635093263477002242', '配置3', 'd3dd928d93d74e07ad8fa31bffea9641', '开发环境假数据', 3, 1, 'admin', '2023-03-13 09:40:39', NULL, NULL, 1, NULL, NULL, '0', 'Pz3');
|
||||
|
||||
-- 认证虚拟清单明细表 增加字段 交付物类型 2023-03-13 未同步生产环境
|
||||
ALTER TABLE `auth_dummy_inventory_info`
|
||||
ADD COLUMN `deliverable_type` varchar(255) NULL COMMENT '交付物类型' AFTER `deliverable`;
|
||||
|
||||
-- 项目库-认证清单 修改交付物类型字段长度 2023-03-13 未同步生产环境
|
||||
ALTER TABLE `project_certification_inventory`
|
||||
MODIFY COLUMN `deliverable_type` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '交付物类型' AFTER `duty_person`;
|
||||
|
||||
-- 项目库-认证清单-修改历史表 2023-03-13 未同步生产环境
|
||||
CREATE TABLE `project_certification_inventory_log` (
|
||||
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime NULL DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime NULL DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '所属部门',
|
||||
`content_cn` varchar(4000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作内容-中文',
|
||||
`content_en` varchar(4000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作内容-英文',
|
||||
`operator_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作类型',
|
||||
`project_certification_inventory_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '认证清单数据id',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '项目库-认证清单-修改历史表' ROW_FORMAT = Dynamic;
|
||||
|
||||
-- 分类字典表增加字段,认证清单-交付物类型使用 2023-03-14 未同步生产环境
|
||||
ALTER TABLE `sys_category`
|
||||
ADD COLUMN `value_type` varchar(255) NULL COMMENT '值类型:值对应SysCategoryValueTypeEnum枚举类' AFTER `sort_order`;
|
||||
|
||||
-- 增加标签管理数据 认证-交付物类型 2023-03-14 未同步生产环境
|
||||
INSERT INTO `sys_dict` (`id`, `dict_name`, `dict_code`, `description`, `del_flag`, `create_by`, `create_time`, `update_by`, `update_time`, `type`, `dict_en_name`, `is_tag_dict`, `is_read_only`, `attribute_type`, `order_num`) VALUES ('1635543933669818369', '认证-交付物类型', 'ren4_zheng4_-_jiao1_fu4_wu4_lei4_xing2', NULL, 0, 'admin', '2023-03-14 15:30:35', NULL, NULL, NULL, NULL, 1, 0, '2', 30);
|
||||
INSERT INTO `sys_category` (`id`, `pid`, `name`, `code`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `sys_dict_id`, `has_child`, `en_name`, `description`, `is_tag_dict`, `attribute_type`, `is_read_only`, `del_flag`, `item_value`, `sort_order`) VALUES ('1635544016406659074', '0', 'testCn1', NULL, 'admin', '2023-03-14 15:30:55', 'admin', '2023-03-14 15:35:09', 'A01', '1635543933669818369', NULL, 'testEn1', NULL, 1, NULL, NULL, 1, NULL, 2);
|
||||
INSERT INTO `sys_category` (`id`, `pid`, `name`, `code`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `sys_dict_id`, `has_child`, `en_name`, `description`, `is_tag_dict`, `attribute_type`, `is_read_only`, `del_flag`, `item_value`, `sort_order`) VALUES ('1635545079494950913', '0', '强检报告(附件)Cn', NULL, 'admin', '2023-03-14 15:35:09', 'admin', '2023-03-14 15:36:01', 'A01', '1635543933669818369', NULL, '强检报告(附件)En', NULL, 1, NULL, NULL, 0, NULL, 3);
|
||||
INSERT INTO `sys_category` (`id`, `pid`, `name`, `code`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `sys_dict_id`, `has_child`, `en_name`, `description`, `is_tag_dict`, `attribute_type`, `is_read_only`, `del_flag`, `item_value`, `sort_order`) VALUES ('1635545194746036225', '0', 'CCC证书(附件)Cn', NULL, 'admin', '2023-03-14 15:35:36', NULL, NULL, 'A01', '1635543933669818369', NULL, 'CCC证书(附件)En', NULL, 1, NULL, NULL, 0, NULL, 1);
|
||||
INSERT INTO `sys_category` (`id`, `pid`, `name`, `code`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `sys_dict_id`, `has_child`, `en_name`, `description`, `is_tag_dict`, `attribute_type`, `is_read_only`, `del_flag`, `item_value`, `sort_order`) VALUES ('1635545299360366594', '0', 'E-Mark(附件)Cn', NULL, 'admin', '2023-03-14 15:36:01', NULL, NULL, 'A01', '1635543933669818369', NULL, 'E-Mark(附件)En', NULL, 1, NULL, NULL, 0, NULL, 2);
|
||||
INSERT INTO `sys_category` (`id`, `pid`, `name`, `code`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `sys_dict_id`, `has_child`, `en_name`, `description`, `is_tag_dict`, `attribute_type`, `is_read_only`, `del_flag`, `item_value`, `sort_order`) VALUES ('1635545372836184066', '0', '自我声明Cn', NULL, 'admin', '2023-03-14 15:36:19', NULL, NULL, 'A01', '1635543933669818369', NULL, '自我生命En', NULL, 1, NULL, NULL, 0, NULL, 4);
|
||||
INSERT INTO `sys_category` (`id`, `pid`, `name`, `code`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `sys_dict_id`, `has_child`, `en_name`, `description`, `is_tag_dict`, `attribute_type`, `is_read_only`, `del_flag`, `item_value`, `sort_order`) VALUES ('1635545471297470465', '0', '自愿认证Cn', NULL, 'admin', '2023-03-14 15:36:42', NULL, NULL, 'A01', '1635543933669818369', NULL, '自愿认证En', NULL, 1, NULL, NULL, 0, NULL, 5);
|
||||
INSERT INTO `sys_category` (`id`, `pid`, `name`, `code`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `sys_dict_id`, `has_child`, `en_name`, `description`, `is_tag_dict`, `attribute_type`, `is_read_only`, `del_flag`, `item_value`, `sort_order`) VALUES ('1635545540197302273', '0', '摸底报告Cn', NULL, 'admin', '2023-03-14 15:36:58', 'admin', '2023-03-14 15:37:20', 'A01', '1635543933669818369', NULL, '摸底报告En', NULL, 1, NULL, NULL, 0, NULL, 7);
|
||||
INSERT INTO `sys_category` (`id`, `pid`, `name`, `code`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `sys_dict_id`, `has_child`, `en_name`, `description`, `is_tag_dict`, `attribute_type`, `is_read_only`, `del_flag`, `item_value`, `sort_order`) VALUES ('1635545630152540161', '0', '工程评估(文本)Cn', NULL, 'admin', '2023-03-14 15:37:20', NULL, NULL, 'A01', '1635543933669818369', NULL, '工程评估(文本)En', NULL, 1, NULL, NULL, 0, NULL, 6);
|
||||
INSERT INTO `sys_category` (`id`, `pid`, `name`, `code`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `sys_dict_id`, `has_child`, `en_name`, `description`, `is_tag_dict`, `attribute_type`, `is_read_only`, `del_flag`, `item_value`, `sort_order`) VALUES ('1635545748968783874', '0', 'N/A不填Cn', NULL, 'admin', '2023-03-14 15:37:48', NULL, NULL, 'A01', '1635543933669818369', NULL, 'N/A不填En', NULL, 1, NULL, NULL, 0, NULL, 8);
|
||||
|
||||
+10
@@ -603,4 +603,14 @@ public class SysCategoryController {
|
||||
String flag = "evaluation_method";
|
||||
return Result.OK(sysCategoryService.getSysCategoryTree(flag));
|
||||
}
|
||||
|
||||
/**
|
||||
* 只查询交付物类型的树形数据字典
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/getCertificationDeliverableTree")
|
||||
public Result getCertificationDeliverableTree() {
|
||||
String flag = "ren4_zheng4_-_jiao1_fu4_wu4_lei4_xing2";
|
||||
return Result.OK(sysCategoryService.getSysCategoryTree(flag));
|
||||
}
|
||||
}
|
||||
|
||||
+5
@@ -96,6 +96,11 @@ public class SysCategory implements Serializable,Comparable<SysCategory>{
|
||||
@Dict(dicCode = "attribute_type")
|
||||
private java.lang.String attributeType;
|
||||
|
||||
// 值对应SysCategoryValueTypeEnum枚举类
|
||||
@ApiModelProperty(value = "值类型 1附件 2文本 3不用填")
|
||||
@Dict(dicCode = "value_type")
|
||||
private java.lang.String valueType;
|
||||
|
||||
/**逻辑删除标识*/
|
||||
@TableLogic
|
||||
public Integer delFlag;
|
||||
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
package com.jero.modules.system.enums;
|
||||
|
||||
public enum SysCategoryValueTypeEnum {
|
||||
|
||||
FILE("附件","file"),
|
||||
TEXT("文本","text"),
|
||||
SELECT("选择","select"),
|
||||
NA("不用填","N/A"),
|
||||
;
|
||||
|
||||
String name;
|
||||
String value;
|
||||
|
||||
private SysCategoryValueTypeEnum(String name, String value) {
|
||||
this.name = name;
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -19,7 +19,7 @@
|
||||
|
||||
<select id="queryByList" resultType="com.jero.modules.system.entity.SysCategory">
|
||||
select create_by,create_time,sys_org_code,update_by,update_time,attribute_type,code,sort_order,
|
||||
del_flag,description,en_name,has_child,id,is_read_only,is_tag_dict,item_value,name,pid,sys_dict_id
|
||||
del_flag,description,en_name,has_child,id,is_read_only,is_tag_dict,item_value,name,pid,sys_dict_id,value_type
|
||||
from sys_category
|
||||
where is_tag_dict=1 and sys_dict_id=#{params.sysDictId} and del_flag=0
|
||||
<!--搜索条件:标签名称包含%,单独搜索-->
|
||||
|
||||
+2
@@ -275,6 +275,8 @@ public class SysCategoryServiceImpl extends ServiceImpl<SysCategoryMapper, SysCa
|
||||
dictId = sysCategoryMapper.getDictId("deliverable_template");
|
||||
}else if("evaluation_method".equals(flag)){
|
||||
dictId = sysCategoryMapper.getDictId("evaluation_method");
|
||||
}else if("ren4_zheng4_-_jiao1_fu4_wu4_lei4_xing2".equals(flag)){
|
||||
dictId = sysCategoryMapper.getDictId("ren4_zheng4_-_jiao1_fu4_wu4_lei4_xing2");
|
||||
}else{
|
||||
dictId = sysCategoryMapper.getFieldInfo("technology_territory");
|
||||
}
|
||||
|
||||
+6
-4
@@ -59,7 +59,8 @@ public class AuthDummyInventoryInfoEOController extends JeroController<AuthDummy
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<AuthDummyInventoryInfoEO> queryWrapper = QueryGenerator.initQueryWrapper(authDummyInventoryInfoEO, req.getParameterMap());
|
||||
Page<AuthDummyInventoryInfoEO> page = new Page<AuthDummyInventoryInfoEO>(pageNo, pageSize);
|
||||
IPage<AuthDummyInventoryInfoEO> pageList = authDummyInventoryInfoEOService.page(page, queryWrapper);
|
||||
IPage<AuthDummyInventoryInfoEO> pageList = this.authDummyInventoryInfoEOService.page(page, queryWrapper);
|
||||
this.authDummyInventoryInfoEOService.disposeData(pageList.getRecords(),authDummyInventoryInfoEO.getCut());
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
@@ -71,9 +72,10 @@ public class AuthDummyInventoryInfoEOController extends JeroController<AuthDummy
|
||||
@AutoLog(value = "认证虚拟清单详情表-列表查询")
|
||||
@ApiOperation(value="认证虚拟清单详情表-列表查询", notes="认证虚拟清单详情表-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<AuthDummyInventoryInfoEO>> queryList() {
|
||||
List<AuthDummyInventoryInfoEO> list = authDummyInventoryInfoEOService.queryList();
|
||||
return Result.OK(list);
|
||||
public Result<List<AuthDummyInventoryInfoEO>> queryList(AuthDummyInventoryInfoEO authDummyInventoryInfoEO,HttpServletRequest req) {
|
||||
List<AuthDummyInventoryInfoEO> list = this.authDummyInventoryInfoEOService.queryList(authDummyInventoryInfoEO,req);
|
||||
this.authDummyInventoryInfoEOService.disposeData(list,authDummyInventoryInfoEO.getCut());
|
||||
return Result.OK(authDummyInventoryInfoEO.getCut(),list);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+11
@@ -91,12 +91,23 @@ public class AuthDummyInventoryInfoEO implements Serializable {
|
||||
@Excel(name = "责任领域", width = 15)
|
||||
@ApiModelProperty(value = "责任领域")
|
||||
private java.lang.String dutyTerritory;
|
||||
@TableField(exist = false)
|
||||
// 责任领域名称
|
||||
private String dutyTerritoryName;
|
||||
|
||||
/**交付物*/
|
||||
@Excel(name = "交付物", width = 15)
|
||||
@ApiModelProperty(value = "交付物")
|
||||
private java.lang.String deliverable;
|
||||
|
||||
/**交付物类型*/
|
||||
@Excel(name = "交付物类型", width = 15)
|
||||
@ApiModelProperty(value = "交付物类型")
|
||||
private String deliverableType;
|
||||
@TableField(exist = false)
|
||||
// 交付物类型名称
|
||||
private String deliverableTypeName;
|
||||
|
||||
/**文档库id*/
|
||||
// @Excel(name = "文档库id", width = 15)
|
||||
@ApiModelProperty(value = "文档库id")
|
||||
|
||||
+18
-1
@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.modules.authDummy.entity.AuthDummyInventoryInfoEO;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.modules.system.entity.SysCategory;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
@@ -63,7 +64,7 @@ public interface IAuthDummyInventoryInfoEOService extends IService<AuthDummyInve
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<AuthDummyInventoryInfoEO> queryList();
|
||||
List<AuthDummyInventoryInfoEO> queryList(AuthDummyInventoryInfoEO authDummyInventoryInfoEO,HttpServletRequest req);
|
||||
|
||||
/**
|
||||
* 复制
|
||||
@@ -103,4 +104,20 @@ public interface IAuthDummyInventoryInfoEOService extends IService<AuthDummyInve
|
||||
* @param request
|
||||
*/
|
||||
void exportTemplate(AuthDummyInventoryInfoEO authDummyInventoryInfoEO, HttpServletResponse response, HttpServletRequest request);
|
||||
|
||||
/**
|
||||
* 处理数据
|
||||
* @param datas
|
||||
* @param cut
|
||||
*/
|
||||
void disposeData(List<AuthDummyInventoryInfoEO> datas, String cut);
|
||||
|
||||
/**
|
||||
* 获取责任领域名称
|
||||
* @param cut
|
||||
* @param categoryList
|
||||
* @param technologyTerritoryList
|
||||
* @return
|
||||
*/
|
||||
String getTreeName(String cut, List<SysCategory> categoryList, List<String> technologyTerritoryList);
|
||||
}
|
||||
|
||||
+52
-2
@@ -28,10 +28,12 @@ import com.jero.modules.dummy.entity.DummyInventoryInfoEOEn;
|
||||
import com.jero.modules.dummy.service.impl.DummyLogEOServiceImpl;
|
||||
import com.jero.modules.oss.entity.OSSFile;
|
||||
import com.jero.modules.oss.service.IOSSFileService;
|
||||
import com.jero.modules.project.enums.ProjectInventoryFieldEnum;
|
||||
import com.jero.modules.split.common.FileUnZip;
|
||||
import com.jero.modules.system.entity.SysCategory;
|
||||
import com.jero.modules.system.entity.SysDictItem;
|
||||
import com.jero.modules.system.mapper.SysCategoryMapper;
|
||||
import com.jero.modules.system.service.ISysDictItemService;
|
||||
import com.jero.modules.system.service.impl.SysCategoryServiceImpl;
|
||||
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
@@ -114,6 +116,9 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
|
||||
@Autowired
|
||||
private IBussDocumentLibraryEOService iBussDocumentLibraryEOService;
|
||||
|
||||
@Autowired
|
||||
private ISysDictItemService sysDictItemService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
@@ -180,8 +185,10 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<AuthDummyInventoryInfoEO> queryList() {
|
||||
return list();
|
||||
public List<AuthDummyInventoryInfoEO> queryList(AuthDummyInventoryInfoEO authDummyInventoryInfoEO,HttpServletRequest req) {
|
||||
QueryWrapper<AuthDummyInventoryInfoEO> queryWrapper = QueryGenerator.initQueryWrapper(authDummyInventoryInfoEO, req.getParameterMap());
|
||||
List<AuthDummyInventoryInfoEO> authDummyInventoryInfoEOList = this.list(queryWrapper);
|
||||
return authDummyInventoryInfoEOList;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -260,6 +267,9 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
|
||||
if(StringUtils.isNotEmpty(authDummyInventoryInfoEO.getBussDocumentLibraryId())){
|
||||
updateAuthDummyEO.setBussDocumentLibraryId(authDummyInventoryInfoEO.getBussDocumentLibraryId());
|
||||
}
|
||||
if(StringUtils.isNotEmpty(authDummyInventoryInfoEO.getDeliverableType())){
|
||||
updateAuthDummyEO.setDeliverableType(authDummyInventoryInfoEO.getDeliverableType());
|
||||
}
|
||||
updateList.add(updateAuthDummyEO);
|
||||
}
|
||||
|
||||
@@ -1085,4 +1095,44 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void disposeData(List<AuthDummyInventoryInfoEO> datas, String cut) {
|
||||
if(CollectionUtils.isNotEmpty(datas)){
|
||||
List<SysCategory> categoryList = this.sysCategoryService.list();
|
||||
List<SysDictItem> sysDictItems = this.sysDictItemServiceImpl.getBaseMapper().selectItemsAll();
|
||||
|
||||
for (AuthDummyInventoryInfoEO data : datas) {
|
||||
if(StringUtils.isNotEmpty(data.getDeliverableType())){
|
||||
String deliverableTypeName = this.getTreeName(cut, categoryList, Arrays.asList(data.getDeliverableType().split(",")));
|
||||
data.setDeliverableTypeName(deliverableTypeName);
|
||||
}
|
||||
if(StringUtils.isNotEmpty(data.getDutyTerritory())){
|
||||
String dutyTerritoryName = this.sysDictItemService.disposeShowDictItemValue(sysDictItems,data.getDutyTerritory(),cut, ProjectInventoryFieldEnum.DUTY_TERRITORY.getValue());
|
||||
data.setDutyTerritoryName(dutyTerritoryName);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTreeName(String cut, List<SysCategory> categoryList, List<String> technologyTerritoryList) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (String technologyTerritory : technologyTerritoryList) {
|
||||
List<SysCategory> collect = categoryList.stream().filter(e -> technologyTerritory.equals(e.getId())).collect(Collectors.toList());
|
||||
if(collect.size() != 0){
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
sb.append(collect.get(0).getName() + ",");
|
||||
} else {
|
||||
sb.append(collect.get(0).getEnName()+ ",");
|
||||
}
|
||||
}
|
||||
}
|
||||
String technologyTerritoryName = "";
|
||||
if (StringUtils.isNotBlank(sb)) {
|
||||
technologyTerritoryName = sb.substring(0, sb.length() - 1);
|
||||
}
|
||||
return technologyTerritoryName;
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@ public enum TemplateInfoEnum2 {
|
||||
CERTIFICATION_MESSAGE6("认证清单-任务提醒,截止日期前第三天","ctp_AAuDmfXC3oJo"),
|
||||
CERTIFICATION_MESSAGE7("认证清单-任务提醒,截止日期当天","ctp_AAuDmfXCHc1I"),
|
||||
CERTIFICATION_MESSAGE8("认证清单-任务提醒,已逾期","ctp_AAuDMwOPU71H"),
|
||||
CERTIFICATION_MESSAGE9("认证清单-责任人分发(转办),第二责任人收到消息","ctp_AAuDM8YP6soc"),
|
||||
//CERTIFICATION_MESSAGE9("认证清单-责任人分发(转办),第二责任人收到消息","ctp_AAuDM8YP6soc"),
|
||||
;
|
||||
|
||||
String name;
|
||||
|
||||
+30
-1
@@ -10,6 +10,7 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.project.entity.ProjectCertificationInventoryEO;
|
||||
import com.jero.modules.project.entity.ProjectLawsInventoryEO;
|
||||
import com.jero.modules.project.service.IProjectCertificationInventoryEOService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
@@ -58,9 +59,10 @@ public class ProjectCertificationInventoryEOController extends JeroController<Pr
|
||||
@RequestParam(name="cut", defaultValue="cn") String cut,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<ProjectCertificationInventoryEO> queryWrapper = QueryGenerator.initQueryWrapper(projectCertificationInventoryEO, req.getParameterMap());
|
||||
queryWrapper.orderByDesc("create_time");
|
||||
Page<ProjectCertificationInventoryEO> page = new Page<ProjectCertificationInventoryEO>(pageNo, pageSize);
|
||||
IPage<ProjectCertificationInventoryEO> pageList = this.projectCertificationInventoryEOService.queryPage(queryWrapper,page,projectCertificationInventoryEO,cut);
|
||||
return Result.OK(pageList);
|
||||
return Result.OK(cut,pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -241,4 +243,31 @@ public class ProjectCertificationInventoryEOController extends JeroController<Pr
|
||||
public Result<?> expediting(@RequestBody JSONObject json) {
|
||||
return this.projectCertificationInventoryEOService.expediting(json);
|
||||
}
|
||||
|
||||
@AutoLog(value = "项目库-认证清单表-批量修改配置项")
|
||||
@ApiOperation(value="项目库-认证清单表-批量修改配置项", notes="项目库-认证清单表-批量修改配置项")
|
||||
@PostMapping(value = "/updateConfigItemBatch")
|
||||
public Result<?> updateConfigItemBatch(@RequestBody JSONObject json) {
|
||||
return this.projectCertificationInventoryEOService.updateConfigItemBatch(json);
|
||||
}
|
||||
|
||||
@ApiOperation(value="项目库-认证清单表-模板下载", notes="项目库-认证清单表-模板下载")
|
||||
@GetMapping(value = "/exportTemplate")
|
||||
public void exportTemplate(ProjectCertificationInventoryEO projectCertificationInventoryEO, HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||
projectCertificationInventoryEOService.exportTemplate(projectCertificationInventoryEO,response,request);
|
||||
}
|
||||
|
||||
@AutoLog(value = "项目库-认证清单表-调取添加")
|
||||
@ApiOperation(value="项目库-认证清单表-调取添加", notes="项目库-认证清单表-调取添加")
|
||||
@PostMapping(value = "/callAdd")
|
||||
public Result<?> callAdd(@RequestBody JSONObject json) {
|
||||
return this.projectCertificationInventoryEOService.callAdd(json);
|
||||
}
|
||||
|
||||
@AutoLog(value = "项目库-认证清单表-引用交付物")
|
||||
@ApiOperation(value="项目库-认证清单表-引用交付物", notes="项目库-认证清单表-引用交付物")
|
||||
@PostMapping(value = "/citeDeliverable")
|
||||
public Result<?> citeDeliverable(@RequestBody JSONObject json) {
|
||||
return this.projectCertificationInventoryEOService.citeDeliverable(json);
|
||||
}
|
||||
}
|
||||
|
||||
+172
@@ -0,0 +1,172 @@
|
||||
package com.jero.modules.project.controller;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.project.entity.ProjectCertificationInventoryLogEO;
|
||||
import com.jero.modules.project.service.IProjectCertificationInventoryLogEOService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 项目库-认证清单-修改历史表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-13
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="项目库-认证清单-修改历史表")
|
||||
@RestController
|
||||
@RequestMapping("/project/projectCertificationInventoryLogEO")
|
||||
@Slf4j
|
||||
public class ProjectCertificationInventoryLogEOController extends JeroController<ProjectCertificationInventoryLogEO, IProjectCertificationInventoryLogEOService> {
|
||||
@Autowired
|
||||
private IProjectCertificationInventoryLogEOService projectCertificationInventoryLogEOService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param projectCertificationInventoryLogEO
|
||||
* @param pageNo
|
||||
* @param pageSize
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "项目库-认证清单-修改历史表-分页列表查询")
|
||||
@ApiOperation(value="项目库-认证清单-修改历史表-分页列表查询", notes="项目库-认证清单-修改历史表-分页列表查询")
|
||||
@GetMapping(value = "/page")
|
||||
public Result<?> queryPageList(ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<ProjectCertificationInventoryLogEO> queryWrapper = QueryGenerator.initQueryWrapper(projectCertificationInventoryLogEO, req.getParameterMap());
|
||||
Page<ProjectCertificationInventoryLogEO> page = new Page<ProjectCertificationInventoryLogEO>(pageNo, pageSize);
|
||||
queryWrapper.orderByDesc("create_time");
|
||||
IPage<ProjectCertificationInventoryLogEO> pageList = this.projectCertificationInventoryLogEOService.page(page, queryWrapper);
|
||||
this.projectCertificationInventoryLogEOService.disposeData(pageList.getRecords(),projectCertificationInventoryLogEO.getCut());
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "项目库-认证清单-修改历史表-列表查询")
|
||||
@ApiOperation(value="项目库-认证清单-修改历史表-列表查询", notes="项目库-认证清单-修改历史表-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<ProjectCertificationInventoryLogEO>> queryList(ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO,HttpServletRequest req) {
|
||||
List<ProjectCertificationInventoryLogEO> list = this.projectCertificationInventoryLogEOService.queryList(projectCertificationInventoryLogEO,req);
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param projectCertificationInventoryLogEO
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "项目库-认证清单-修改历史表-添加")
|
||||
@ApiOperation(value="项目库-认证清单-修改历史表-添加", notes="项目库-认证清单-修改历史表-添加")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@Validated @RequestBody ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO) {
|
||||
projectCertificationInventoryLogEOService.add(projectCertificationInventoryLogEO);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param projectCertificationInventoryLogEO
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "项目库-认证清单-修改历史表-编辑")
|
||||
@ApiOperation(value="项目库-认证清单-修改历史表-编辑", notes="项目库-认证清单-修改历史表-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
public Result<?> edit(@Validated @RequestBody ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO) {
|
||||
projectCertificationInventoryLogEOService.editById(projectCertificationInventoryLogEO);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "项目库-认证清单-修改历史表-通过id删除")
|
||||
@ApiOperation(value="项目库-认证清单-修改历史表-通过id删除", notes="项目库-认证清单-修改历史表-通过id删除")
|
||||
@DeleteMapping(value = "/delete")
|
||||
public Result<?> delete(@RequestParam(name="id",required=true) String id) {
|
||||
projectCertificationInventoryLogEOService.deleteById(id);
|
||||
return Result.OK("删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "项目库-认证清单-修改历史表-批量删除")
|
||||
@ApiOperation(value="项目库-认证清单-修改历史表-批量删除", notes="项目库-认证清单-修改历史表-批量删除")
|
||||
@DeleteMapping(value = "/deleteBatch")
|
||||
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
|
||||
this.projectCertificationInventoryLogEOService.deleteByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "项目库-认证清单-修改历史表-通过id查询")
|
||||
@ApiOperation(value="项目库-认证清单-修改历史表-通过id查询", notes="项目库-认证清单-修改历史表-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO = projectCertificationInventoryLogEOService.queryById(id);
|
||||
if(projectCertificationInventoryLogEO==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
return Result.OK(projectCertificationInventoryLogEO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出excel
|
||||
*
|
||||
* @param request
|
||||
* @param projectCertificationInventoryLogEO
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO) {
|
||||
return super.exportXls(request, projectCertificationInventoryLogEO, ProjectCertificationInventoryLogEO.class, "项目库-认证清单-修改历史表");
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过excel导入数据
|
||||
*
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, ProjectCertificationInventoryLogEO.class);
|
||||
}
|
||||
|
||||
}
|
||||
+16
-2
@@ -75,6 +75,7 @@ public class ProjectCertificationInventoryEO implements Serializable {
|
||||
/**配置项*/
|
||||
@Excel(name = "配置项", width = 15)
|
||||
@ApiModelProperty(value = "配置项")
|
||||
@Dict(dicCode = "ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4")
|
||||
private java.lang.String configItem;
|
||||
|
||||
/**WVTA ID*/
|
||||
@@ -94,6 +95,9 @@ public class ProjectCertificationInventoryEO implements Serializable {
|
||||
/**责任领域名称**/
|
||||
@TableField(exist = false)
|
||||
private String dutyTerritoryName;
|
||||
/**责任领域名称-英文**/
|
||||
@TableField(exist = false)
|
||||
private String dutyTerritoryNameEn;
|
||||
|
||||
/**交付物*/
|
||||
@Excel(name = "交付物", width = 15)
|
||||
@@ -125,14 +129,20 @@ public class ProjectCertificationInventoryEO implements Serializable {
|
||||
@Excel(name = "交付物类型", width = 15)
|
||||
@ApiModelProperty(value = "交付物类型")
|
||||
private java.lang.String deliverableType;
|
||||
@TableField(exist = false)
|
||||
// 交付物类型名称
|
||||
@TableField(exist = false)
|
||||
private String deliverableTypeName;
|
||||
// 交付物类型名称-英文
|
||||
@TableField(exist = false)
|
||||
private String deliverableTypeNameEn;
|
||||
|
||||
/**交付物模板*/
|
||||
@Excel(name = "交付物模板", width = 15)
|
||||
@ApiModelProperty(value = "交付物模板")
|
||||
private java.lang.String deliverableTemplate;
|
||||
/**交付物模板名称**/
|
||||
@TableField(exist = false)
|
||||
private String deliverableTemplateName;
|
||||
|
||||
/**交付结果*/
|
||||
@Excel(name = "交付结果", width = 15)
|
||||
@@ -150,8 +160,8 @@ public class ProjectCertificationInventoryEO implements Serializable {
|
||||
@Excel(name = "流程状态", width = 15)
|
||||
@ApiModelProperty(value = "流程状态")
|
||||
private java.lang.String flowStatus;
|
||||
@TableField(exist = false)
|
||||
// 流程状态展示名称
|
||||
@TableField(exist = false)
|
||||
private String flowStatusName;
|
||||
|
||||
/**报告编号*/
|
||||
@@ -194,4 +204,8 @@ public class ProjectCertificationInventoryEO implements Serializable {
|
||||
|
||||
@TableField(exist = false)
|
||||
private String roleCode;
|
||||
|
||||
/**值类型,对应SysCategoryValueTypeEnum中value**/
|
||||
@TableField(exist = false)
|
||||
private String valueType;
|
||||
}
|
||||
|
||||
+95
@@ -0,0 +1,95 @@
|
||||
package com.jero.modules.project.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: 2023-03-13
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Data
|
||||
@TableName("project_certification_inventory_log")
|
||||
@Accessors(chain = true)
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@ApiModel(value="project_certification_inventory_log对象", description="项目库-认证清单-修改历史表")
|
||||
public class ProjectCertificationInventoryLogEO implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**主键*/
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@ApiModelProperty(value = "主键")
|
||||
private java.lang.String id;
|
||||
|
||||
/**创建人*/
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private java.lang.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 java.lang.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 java.lang.String sysOrgCode;
|
||||
|
||||
/**操作内容-中文*/
|
||||
@Excel(name = "操作内容-中文", width = 15)
|
||||
@ApiModelProperty(value = "操作内容-中文")
|
||||
private java.lang.String contentCn;
|
||||
|
||||
/**操作内容-英文*/
|
||||
@Excel(name = "操作内容-英文", width = 15)
|
||||
@ApiModelProperty(value = "操作内容-英文")
|
||||
private java.lang.String contentEn;
|
||||
|
||||
/**操作类型*/
|
||||
@Excel(name = "操作类型", width = 15)
|
||||
@ApiModelProperty(value = "操作类型")
|
||||
private String operatorType;
|
||||
|
||||
/**认证清单数据id*/
|
||||
@Excel(name = "认证清单数据id", width = 15)
|
||||
@ApiModelProperty(value = "认证清单数据id")
|
||||
private java.lang.String projectCertificationInventoryId;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String cut;
|
||||
|
||||
/**操作内容回显**/
|
||||
@TableField(exist = false)
|
||||
private String content;
|
||||
|
||||
/**操作类型名称**/
|
||||
@TableField(exist = false)
|
||||
private String operatorTypeName;
|
||||
}
|
||||
+12
@@ -55,6 +55,18 @@ public enum OperatorTypeEnum {
|
||||
CERTIFICATION_INVENTORY_SDT_EXPEDITING("认证清单-接口人催办","certificationInventorySdtExpediting"),
|
||||
CERTIFICATION_INVENTORY_STUDIO_WITHDRAW("认证清单-studio撤回","certificationInventoryStudioWithdraw"),
|
||||
CERTIFICATION_INVENTORY_STUDIO_RESET("认证清单-studio重置流程","certificationInventoryStudioReset"),
|
||||
CERTIFICATION_INVENTORY_EDIT("认证清单-编辑","certificationInventoryEdit"),
|
||||
CERTIFICATION_INVENTORY_ADD("认证清单-添加","certificationInventoryAdd"),
|
||||
CERTIFICATION_INVENTORY_CALL("认证清单-调取","certificationInventoryCall"),
|
||||
CERTIFICATION_INVENTORY_STUDIO_ISSUE("认证清单-studio发布","certificationInventoryStudioIssue"),
|
||||
CERTIFICATION_INVENTORY_INITIATING_TASK("认证清单-认证工程师发起任务","certificationInventoryInitiatingTask"),
|
||||
CERTIFICATION_INVENTORY_RETURNED_STUDIO_TASK("认证清单-认证工程师退回至studio任务","certificationInventoryReturnedStudioTask"),
|
||||
CERTIFICATION_INVENTORY_DUTY_PERSON_ACCEPT_TASK("认证清单-责任人接受任务","certificationInventoryDutyPersonAcceptTask"),
|
||||
CERTIFICATION_INVENTORY_DUTY_PERSON_REJECT_TASK("认证清单-责任人拒绝任务","certificationInventoryDutyPersonRejectTask"),
|
||||
CERTIFICATION_INVENTORY_DUTY_PERSON_TRANSFER_TASK("认证清单-责任人转办任务","certificationInventoryDutyPersonTransferTask"),
|
||||
CERTIFICATION_INVENTORY_DUTY_PERSON_SUBMIT_TASK("认证清单-责任人提交任务","certificationInventoryDutyPersonSubmitTask"),
|
||||
CERTIFICATION_INVENTORY_REVIEW_THROUGH("认证清单-认证工程师审核通过","certificationInventoryReviewThrough"),
|
||||
CERTIFICATION_INVENTORY_REVIEW_RETURNED("认证清单-认证工程师审核退回","certificationInventoryReviewReturned"),
|
||||
;
|
||||
|
||||
String name;
|
||||
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
package com.jero.modules.project.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import com.jero.modules.project.entity.ProjectCertificationInventoryLogEO;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* @Description: 项目库-认证清单-修改历史表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-13
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface ProjectCertificationInventoryLogEOMapper extends BaseMapper<ProjectCertificationInventoryLogEO> {
|
||||
|
||||
}
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
<?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.project.mapper.ProjectCertificationInventoryLogEOMapper">
|
||||
<resultMap id="ProjectCertificationInventoryLogEOResultMap" type="com.jero.modules.project.entity.ProjectCertificationInventoryLogEO">
|
||||
<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="content" property="content" />
|
||||
<result column="project_certification_inventory_id" property="projectCertificationInventoryId" />
|
||||
</resultMap>
|
||||
</mapper>
|
||||
+31
@@ -12,6 +12,8 @@ import com.jero.modules.system.entity.SysRole;
|
||||
import com.jero.modules.todoCenter.entity.ProcessInfoDetailEO;
|
||||
import com.jero.modules.todoCenter.entity.ProcessInfoEO;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -160,4 +162,33 @@ public interface IProjectCertificationInventoryEOService extends IService<Projec
|
||||
Map<String,Object> getCertificationInventoryLinkHrefFeishu(String projectLibraryId,String PRN_CN,String PRN_EN);
|
||||
|
||||
Map<String,Object> getStandNameAndItemName(List<ProjectCertificationInventoryEO> projectCertificationInventoryEOList);
|
||||
|
||||
/**
|
||||
* 模板下载
|
||||
* @param projectCertificationInventoryEO
|
||||
* @param response
|
||||
* @param request
|
||||
*/
|
||||
void exportTemplate(ProjectCertificationInventoryEO projectCertificationInventoryEO, HttpServletResponse response, HttpServletRequest request);
|
||||
|
||||
/**
|
||||
* 批量修改配置项
|
||||
* @param json
|
||||
* @return
|
||||
*/
|
||||
Result<?> updateConfigItemBatch(JSONObject json);
|
||||
|
||||
/**
|
||||
* 调取添加
|
||||
* @param json
|
||||
* @return
|
||||
*/
|
||||
Result<?> callAdd(JSONObject json);
|
||||
|
||||
/**
|
||||
* 引用交付物
|
||||
* @param json
|
||||
* @return
|
||||
*/
|
||||
Result<?> citeDeliverable(JSONObject json);
|
||||
}
|
||||
|
||||
+82
@@ -0,0 +1,82 @@
|
||||
package com.jero.modules.project.service;
|
||||
|
||||
import com.jero.modules.project.entity.ProjectCertificationInventoryLogEO;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 项目库-认证清单-修改历史表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-13
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IProjectCertificationInventoryLogEOService extends IService<ProjectCertificationInventoryLogEO> {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param projectCertificationInventoryLogEO
|
||||
* @return
|
||||
*/
|
||||
void add(ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO);
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param projectCertificationInventoryLogEO
|
||||
* @return
|
||||
*/
|
||||
void editById(ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO);
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
void deleteById(String id);
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
ProjectCertificationInventoryLogEO queryById(String id);
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<ProjectCertificationInventoryLogEO> queryList(ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO, HttpServletRequest req);
|
||||
|
||||
/**
|
||||
* 批量添加认证清单明细操作历史信息
|
||||
* @param projectCertificationInventoryLogEOList
|
||||
*/
|
||||
void insertBatch(List<ProjectCertificationInventoryLogEO> projectCertificationInventoryLogEOList);
|
||||
|
||||
/**
|
||||
* 处理数据
|
||||
* @param datas
|
||||
* @param cut
|
||||
*/
|
||||
void disposeData(List<ProjectCertificationInventoryLogEO> datas, String cut);
|
||||
|
||||
/**
|
||||
* 根据认证清单idList删除历史数据
|
||||
* @param projectCertificationInventoryIdList
|
||||
*/
|
||||
void deleteByProjectCertificationInventoryIdList(List<String> projectCertificationInventoryIdList);
|
||||
}
|
||||
+754
-18
File diff suppressed because it is too large
Load Diff
+125
@@ -0,0 +1,125 @@
|
||||
package com.jero.modules.project.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.modules.project.entity.ProjectCertificationInventoryLogEO;
|
||||
import com.jero.modules.project.mapper.ProjectCertificationInventoryLogEOMapper;
|
||||
import com.jero.modules.project.service.IProjectCertificationInventoryLogEOService;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
/**
|
||||
* @Description: 项目库-认证清单-修改历史表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2023-03-13
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Service
|
||||
public class ProjectCertificationInventoryLogEOServiceImpl extends ServiceImpl<ProjectCertificationInventoryLogEOMapper, ProjectCertificationInventoryLogEO> implements IProjectCertificationInventoryLogEOService {
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param projectCertificationInventoryLogEO
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO) {
|
||||
Date now = new Date();
|
||||
projectCertificationInventoryLogEO.setCreateTime(now);
|
||||
projectCertificationInventoryLogEO.setUpdateTime(now);
|
||||
save(projectCertificationInventoryLogEO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param projectCertificationInventoryLogEO
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO) {
|
||||
Date now = new Date();
|
||||
projectCertificationInventoryLogEO.setUpdateTime(now);
|
||||
saveOrUpdate(projectCertificationInventoryLogEO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过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 ProjectCertificationInventoryLogEO queryById(String id) {
|
||||
return getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<ProjectCertificationInventoryLogEO> queryList(ProjectCertificationInventoryLogEO projectCertificationInventoryLogEO, HttpServletRequest req) {
|
||||
QueryWrapper<ProjectCertificationInventoryLogEO> queryWrapper = QueryGenerator.initQueryWrapper(projectCertificationInventoryLogEO, req.getParameterMap());
|
||||
queryWrapper.orderByDesc("create_time");
|
||||
List<ProjectCertificationInventoryLogEO> projectCertificationInventoryLogEOList = this.list(queryWrapper);
|
||||
this.disposeData(projectCertificationInventoryLogEOList,projectCertificationInventoryLogEO.getCut());
|
||||
return projectCertificationInventoryLogEOList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insertBatch(List<ProjectCertificationInventoryLogEO> projectCertificationInventoryLogEOList) {
|
||||
this.saveBatch(projectCertificationInventoryLogEOList);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void disposeData(List<ProjectCertificationInventoryLogEO> datas, String cut) {
|
||||
if(CollectionUtils.isNotEmpty(datas)){
|
||||
for (ProjectCertificationInventoryLogEO data : datas) {
|
||||
if(StringUtils.equals(cut, CutEnum.CN.getValue())){
|
||||
data.setContent(data.getContentCn());
|
||||
}else {
|
||||
data.setContent(data.getContentEn());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteByProjectCertificationInventoryIdList(List<String> projectCertificationInventoryIdList) {
|
||||
QueryWrapper<ProjectCertificationInventoryLogEO> removeWrap = new QueryWrapper<>();
|
||||
removeWrap.lambda().in(ProjectCertificationInventoryLogEO::getProjectCertificationInventoryId,projectCertificationInventoryIdList);
|
||||
this.remove(removeWrap);
|
||||
}
|
||||
}
|
||||
@@ -895,6 +895,7 @@ module.exports = {
|
||||
pleaseConformityVerification: 'Please complete the data of Conformity verification',
|
||||
virtualListDetails: 'Virtual List Details',
|
||||
virtualAuthenticationListDetails: 'Virtual Authentication List Details',
|
||||
VirtualAuthenticationList: 'Virtual Authentication List',
|
||||
maintainVirtualList: 'Maintain Virtual List',
|
||||
certificationListMaintenance: 'Certification List Maintenance',
|
||||
reasonsForRejection: 'Reasons For Rejection',
|
||||
@@ -1431,6 +1432,10 @@ module.exports = {
|
||||
onlyDataSelected:'Only data with process status of task to be confirmed, result to be submitted and review to be returned can be selected',
|
||||
youCannotStatusListToBeReleasedAndApproved:'You cannot select data whose process status is list to be released and approved',
|
||||
batchmodify:'Whether to batch modify',
|
||||
onlyDataListReleasedAndCertificationReturnCanSelected:'Only data with the process status of list to be released and certification return can be selected',
|
||||
type:'type',
|
||||
select:'select',
|
||||
onlyDataWithProcessStatusDeleted:'Only data with process status of list to be released and approved can be deleted',
|
||||
registrationnumber:'Product registration number',
|
||||
noticebatch:'Notice batch',
|
||||
producttrademark:'Product Trademark',
|
||||
|
||||
@@ -907,6 +907,7 @@ module.exports = {
|
||||
pleaseConformityVerification: '请补全验证符合性确认的数据',
|
||||
virtualListDetails: '虚拟清单详情',
|
||||
virtualAuthenticationListDetails: '虚拟认证清单详情',
|
||||
VirtualAuthenticationList: '虚拟认证清单',
|
||||
maintainVirtualList: '维护虚拟清单',
|
||||
certificationListMaintenance: '认证清单维护',
|
||||
reasonsForRejection: '驳回原因',
|
||||
@@ -1533,6 +1534,10 @@ module.exports = {
|
||||
onlyDataSelected:'只能选择流程状态为任务待确认、结果待提交、审查退回的数据',
|
||||
youCannotStatusListToBeReleasedAndApproved:'不能选择流程状态为清单待发布、审查通过的数据',
|
||||
batchmodify:'是否批量修改',
|
||||
onlyDataListReleasedAndCertificationReturnCanSelected:'只能选择流程状态为清单待发布和认证退回的数据',
|
||||
type:'类型',
|
||||
select:'选择',
|
||||
onlyDataWithProcessStatusDeleted:'只能删除流程状态为清单待发布和审查通过的数据',
|
||||
registrationnumber:'产品登记编号',
|
||||
noticebatch:'《公告》批次',
|
||||
producttrademark:'产品商标',
|
||||
|
||||
@@ -542,6 +542,7 @@
|
||||
// this.gData[0].isLeaf = false
|
||||
this.defaultExpandedKeys = [this.departId]
|
||||
if (num == 1) {
|
||||
console.log(this.personneQuery)
|
||||
if (this.userName && this.userName.length == 0) {
|
||||
if (this.personneQuery[this.query.db_field_name + 'Name']) {
|
||||
this.userName = this.personneQuery[this.query.db_field_name + 'Name'].split(',')
|
||||
|
||||
@@ -55,6 +55,15 @@
|
||||
<a-form-model-item :label="$t('enName')" prop="enName">
|
||||
<a-input v-model.trim="form.enName" :placeholder="$t('PleaseEnterYourEnglishName')"/>
|
||||
</a-form-model-item>
|
||||
<a-form-model-item :label="$t('type')" prop="valueType" v-if="record.id == '1635543933669818369'">
|
||||
<a-select v-model="form.valueType"
|
||||
:placeholder="$t('pleaseSelect')"
|
||||
allowClear>
|
||||
<a-select-option :value="item.id" v-for="(item, index) in valueTypeList" :key="item.id">
|
||||
{{item.name}}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
<a-form-model-item :label="$t('ParentName')" prop="pid" v-if="parentVisible">
|
||||
<a-select v-model="form.pid" @change="handleChange" :placeholder="$t('pleaseSelect')" allowClear>
|
||||
<a-select-option :value="item.id" v-for="(item, index) in parentDataPid" :key="item.id">
|
||||
@@ -105,6 +114,24 @@
|
||||
pageSize: 10
|
||||
},//查询条件
|
||||
form: {},
|
||||
valueTypeList:[
|
||||
{
|
||||
id:'file',
|
||||
name:this.$t('enclosure')
|
||||
},
|
||||
{
|
||||
id:'text',
|
||||
name:this.$t('text')
|
||||
},
|
||||
{
|
||||
id:'select',
|
||||
name:this.$t('select')
|
||||
},
|
||||
{
|
||||
id:'N/A',
|
||||
name:'NA'
|
||||
},
|
||||
],
|
||||
newVisible: false,
|
||||
rules: {
|
||||
name: [
|
||||
@@ -112,6 +139,9 @@
|
||||
{ min: 1, max: 100, message: this.$t('cantExeed') + '100' + this.$t('characters'), trigger: 'blur' },
|
||||
{ validator: this.test }
|
||||
],
|
||||
valueType:[
|
||||
{ required: true, message: this.$t('type') + this.$t('cannotEmpty'), trigger: 'change' },
|
||||
],
|
||||
itemText: [
|
||||
{ required: true, message: this.$t('enterName'), trigger: 'blur' },
|
||||
{ min: 1, max: 100, message: this.$t('cantExeed') + '100' + this.$t('characters'), trigger: 'blur' },
|
||||
@@ -147,7 +177,8 @@
|
||||
editPId: '',
|
||||
tabletreeDataSource: [],
|
||||
flag: false, //提交表单标识
|
||||
parentDataPid: []
|
||||
parentDataPid: [],
|
||||
valueTypeVisible:true
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
|
||||
@@ -73,8 +73,9 @@
|
||||
|
||||
<template slot="action" slot-scope="text, record">
|
||||
<a class="action-dict" @click="handleDicPop(record)">{{$t('DictionaryConfiguration')}}</a>
|
||||
<a class="action-edit" @click="actionEdit(record)" v-has="'dict:edit'">{{$t('edit')}}</a>
|
||||
<a class="action-delete" href="javascript:;" @click="onDelete(record)" v-has="'dict:logicDelete'">{{$t('delete')}}</a>
|
||||
<a class="action-edit" v-if="record.id != '1635543933669818369'" @click="actionEdit(record)" v-has="'dict:edit'">{{$t('edit')}}</a>
|
||||
<a class="action-delete" v-if="record.id != '1635543933669818369'" href="javascript:;" @click="onDelete(record)"
|
||||
v-has="'dict:logicDelete'">{{$t('delete')}}</a>
|
||||
</template>
|
||||
<template slot="describe" slot-scope="text, record">
|
||||
<span class="text" :title="text">
|
||||
@@ -124,7 +125,7 @@
|
||||
// tabTable,
|
||||
DicList
|
||||
},
|
||||
mixins:[ResizeHeader, ResizeColumnProvide],
|
||||
mixins: [ResizeHeader, ResizeColumnProvide],
|
||||
data() {
|
||||
return {
|
||||
title: this.$t('add'),
|
||||
@@ -244,13 +245,13 @@
|
||||
this.loading = false
|
||||
this.total = res.result.total
|
||||
this.tableData = [...res.result.records]
|
||||
}else{
|
||||
} else {
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
// .finally(() => {
|
||||
// this.loading = false
|
||||
//})
|
||||
// .finally(() => {
|
||||
// this.loading = false
|
||||
//})
|
||||
},
|
||||
//查询
|
||||
searchQuery() {
|
||||
|
||||
+246
-73
@@ -20,12 +20,16 @@
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="serialNumber">
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('regulationNo')"
|
||||
optionFilterProp="label"
|
||||
@change="serialNumberChange"
|
||||
showSearch
|
||||
v-model="formInline.bussDocumentLibraryId">
|
||||
<a-select-option v-for="(item, key) in projectNameList"
|
||||
:label="item.serialNumber"
|
||||
:key="key"
|
||||
:value="item.id">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.serialNumber ">
|
||||
<span style="display: inline-block;width: 100%"
|
||||
:title=" item.serialNumber ">
|
||||
{{ item.serialNumber}}
|
||||
</span>
|
||||
</a-select-option>
|
||||
@@ -93,7 +97,52 @@
|
||||
</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('configurationItem')">{{$t('configurationItem')}}</span>
|
||||
</div>
|
||||
<a-form-model-item
|
||||
class="itemModel"
|
||||
:prop="'dataList.'+index+'.configItem'"
|
||||
:rules="[{ required: true, message: $t('configurationItem') + $t('cannotEmpty'), trigger: 'blur'},
|
||||
{max: 300,message: $t('configurationItem') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'
|
||||
}]"
|
||||
>
|
||||
<a-input class="box-input"
|
||||
v-model="item.configItem"
|
||||
:placeholder="$t('PleaseEnter')+$t('configurationItem')"/>
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="item.configItem"-->
|
||||
<!-- @input="handleInput('dataList.'+index+'.configItem')"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('configurationItem')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" :dictCode="'ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4'"/>-->
|
||||
</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('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'dataList.'+index+'.dutyTerritory'"
|
||||
:rules="[{ required: true, message: $t('areaOfResponsibility') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||
>
|
||||
<j-dict-select-tag class="box-input" v-model="item.dutyTerritory"
|
||||
@input="handleInput('dataList.'+index+'.dutyTerritory')"
|
||||
@changeQuery="dutyHandleChange(index)"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
@@ -145,65 +194,76 @@
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text"
|
||||
:title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
|
||||
<span class="title-text-text" :title="$t('engineeringInterfacePerson')">{{$t('engineeringInterfacePerson')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'dataList.'+index+'.dutyTerritory'"
|
||||
:rules="[{ required: true, message: $t('areaOfResponsibility') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||
:prop="'dataList.'+index+'.sdt'"
|
||||
:rules="[{ required: true, message: $t('engineeringInterfacePerson') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||
>
|
||||
<j-dict-select-tag class="box-input" v-model="item.dutyTerritory"
|
||||
@input="handleInput('dataList.'+index+'.dutyTerritory')"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('engineeringInterfacePerson')"
|
||||
optionFilterProp="label"
|
||||
showSearch
|
||||
@change="handleInput('dataList.'+index+'.sdt')"
|
||||
v-model="item.sdt">
|
||||
<a-select-option v-for="(val, key) in item.engineeringInterfacePersonList"
|
||||
:label="val.name"
|
||||
:key="key"
|
||||
:value="val.value">
|
||||
<span style="display: inline-block;width: 100%"
|
||||
:title=" val.name ">
|
||||
{{ val.name}}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</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('engineeringInterfacePerson')">{{$t('engineeringInterfacePerson')}}</span>
|
||||
<span class="title-text-text" :title="$t('closingDate')">{{$t('closingDate')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel-multi"
|
||||
:prop="'dataList.'+index+'.sdtName'"
|
||||
:rules="[{ required: true, message: $t('engineeringInterfacePerson') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'dataList.'+index+'.endTime'"
|
||||
:rules="[{ required: true, message: $t('closingDate') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||
>
|
||||
<PersonnelSelection
|
||||
:query="{db_field_name:'sdt',db_field_txt:$t('engineeringInterfacePerson'),subscript:index}"
|
||||
:personneQuery="item"
|
||||
:isSingleChoice="true"
|
||||
@change="PersonnelSelectionChange"
|
||||
:disabled="disabled"
|
||||
v-model="item.sdtName"/>
|
||||
<a-date-picker class="box-input"
|
||||
:placeholder="$t('PleaseSelect')+$t('closingDate')"
|
||||
@change="dateChange({db_field_name:'endTime'},index)"
|
||||
format="YYYY-MM-DD"
|
||||
:disabledDate="disabledDate"
|
||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||
v-model="item.endTime"
|
||||
style="width: 100%"/>
|
||||
</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('personLiable')">{{$t('personLiable')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel-multi"
|
||||
:prop="'dataList.'+index+'.dutyPersonName'"
|
||||
:rules="[{ required: true, message: $t('personLiable') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||
>
|
||||
<PersonnelSelection
|
||||
:query="{db_field_name:'dutyPerson',db_field_txt:$t('personLiable'),subscript:index}"
|
||||
:personneQuery="item"
|
||||
:isSingleChoice="true"
|
||||
@change="PersonnelSelectionChange"
|
||||
:disabled="disabled"
|
||||
v-model="item.dutyPersonName"/>
|
||||
</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('personLiable')">{{$t('personLiable')}}</span>-->
|
||||
<!-- </div>-->
|
||||
<!-- <a-form-model-item class="itemModel-multi"-->
|
||||
<!-- :prop="'dataList.'+index+'.dutyPersonName'"-->
|
||||
<!-- :rules="[{ required: true, message: $t('personLiable') + $t('cannotEmpty'), trigger: 'change'},]"-->
|
||||
<!-- >-->
|
||||
<!-- <PersonnelSelection-->
|
||||
<!-- :query="{db_field_name:'dutyPerson',db_field_txt:$t('personLiable'),subscript:index}"-->
|
||||
<!-- :personneQuery="item"-->
|
||||
<!-- :isSingleChoice="true"-->
|
||||
<!-- @change="PersonnelSelectionChange"-->
|
||||
<!-- :disabled="disabled"-->
|
||||
<!-- v-model="item.dutyPersonName"/>-->
|
||||
<!-- </a-form-model-item>-->
|
||||
<!-- </div>-->
|
||||
<!-- </a-col>-->
|
||||
<!-- </a-row>-->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -240,7 +300,48 @@
|
||||
</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('configurationItem')">{{$t('configurationItem')}}</span>
|
||||
</div>
|
||||
<a-form-model-item
|
||||
class="itemModel"
|
||||
:prop="'configItem'"
|
||||
>
|
||||
<a-input class="box-input"
|
||||
v-model="formInline.configItem"
|
||||
:placeholder="$t('PleaseEnter')+$t('configurationItem')"/>
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formInline.configItem"-->
|
||||
<!-- @input="handleInput('configItem')"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('configurationItem')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" :dictCode="'ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4'"/>-->
|
||||
</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('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'dutyTerritory'"
|
||||
>
|
||||
<j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"
|
||||
@input="handleInput('dutyTerritory')"
|
||||
@changeQuery="handleChange"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
@@ -260,7 +361,6 @@
|
||||
class="box-input"
|
||||
style="width: 100%"
|
||||
:tree-data="DeliverableTreeList"
|
||||
tree-checkable
|
||||
:placeholder="$t('PleaseSelect')+$t('typeOfDeliverables')"
|
||||
/>
|
||||
</a-form-model-item>
|
||||
@@ -290,17 +390,25 @@
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text"
|
||||
:title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
|
||||
<span class="title-text-text" :title="$t('engineeringInterfacePerson')">{{$t('engineeringInterfacePerson')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'dutyTerritory'"
|
||||
:prop="'sdt'"
|
||||
>
|
||||
<j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"
|
||||
@input="handleInput('dutyTerritory')"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('engineeringInterfacePerson')"
|
||||
optionFilterProp="label"
|
||||
showSearch
|
||||
v-model="formInline.sdt">
|
||||
<a-select-option v-for="(item, key) in engineeringInterfacePersonList"
|
||||
:label="item.name"
|
||||
:key="key"
|
||||
:value="item.value">
|
||||
<span style="display: inline-block;width: 100%"
|
||||
:title=" item.name ">
|
||||
{{ item.name}}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -308,18 +416,19 @@
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('engineeringInterfacePerson')">{{$t('engineeringInterfacePerson')}}</span>
|
||||
<span class="title-text-text" :title="$t('closingDate')">{{$t('closingDate')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel-multi"
|
||||
:prop="'sdtName'"
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'endTime'"
|
||||
>
|
||||
<PersonnelSelection
|
||||
:query="{db_field_name:'sdt',db_field_txt:$t('engineeringInterfacePerson')}"
|
||||
:personneQuery="formInline"
|
||||
:isSingleChoice="true"
|
||||
@change="PersonnelSelectionChange"
|
||||
:disabled="disabled"
|
||||
v-model="formInline.sdtName"/>
|
||||
<a-date-picker class="box-input"
|
||||
:placeholder="$t('PleaseSelect')+$t('closingDate')"
|
||||
@change="dateChange({db_field_name:'endTime'})"
|
||||
format="YYYY-MM-DD"
|
||||
:disabledDate="disabledDate"
|
||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||
v-model="formInline.endTime"
|
||||
style="width: 100%"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -339,6 +448,7 @@
|
||||
:query="{db_field_name:'dutyPerson',db_field_txt:$t('personLiable')}"
|
||||
:personneQuery="formInline"
|
||||
:isSingleChoice="true"
|
||||
v-if="visible"
|
||||
@change="PersonnelSelectionChange"
|
||||
:disabled="disabled"
|
||||
v-model="formInline.dutyPersonName"/>
|
||||
@@ -377,6 +487,7 @@
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
import { getAction, postAction, downloadFile, putAction } from '@/api/manage'
|
||||
import { mapGetters } from 'vuex'
|
||||
import moment from 'moment'
|
||||
|
||||
export default {
|
||||
name: 'addModel',
|
||||
@@ -437,7 +548,7 @@
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
sdtName: [
|
||||
sdt: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('engineeringInterfacePerson') + this.$t('cannotEmpty'),
|
||||
@@ -450,6 +561,21 @@
|
||||
message: this.$t('personLiable') + this.$t('cannotEmpty'),
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
endTime: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('closingDate') + this.$t('cannotEmpty'),
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
configItem: [
|
||||
{ required: true, message: this.$t('configurationItem') + this.$t('cannotEmpty'), trigger: 'blur' },
|
||||
{
|
||||
max: 300,
|
||||
message: this.$t('configurationItem') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
},
|
||||
disabled: false,
|
||||
@@ -462,7 +588,8 @@
|
||||
add: '/project/projectCertificationInventoryEO/batchAdd',
|
||||
edit: '/project/projectCertificationInventoryEO/edit',
|
||||
list: '/project/projectLawsInventoryEO/list'
|
||||
}
|
||||
},
|
||||
engineeringInterfacePersonList: []
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@@ -471,8 +598,20 @@
|
||||
},
|
||||
methods: {
|
||||
...mapGetters(['userInfo']),
|
||||
disabledDate(current) {
|
||||
return current && current < moment().subtract(1, 'day')
|
||||
},
|
||||
dateChange(item, index) {
|
||||
if (index) {
|
||||
this.formInline.dataList[index][item.db_field_name] = this.formInline.dataList[index][item.db_field_name] ? moment(this.formInline.dataList[index][item.db_field_name]).format('YYYY-MM-DD') : ''
|
||||
|
||||
} else {
|
||||
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
|
||||
|
||||
}
|
||||
},
|
||||
getDeliverableTree() {
|
||||
getAction('/sys/category/getDeliverableTree', {}).then((res) => {
|
||||
getAction('/sys/category/getCertificationDeliverableTree', {}).then((res) => {
|
||||
if (res.success) {
|
||||
this.DeliverableTreeList = res.result
|
||||
} else {
|
||||
@@ -493,15 +632,19 @@
|
||||
})
|
||||
},
|
||||
editModel(value) {
|
||||
this.formInline = {}
|
||||
// this.formInline = {}
|
||||
this.visible = true
|
||||
this.formInline = value
|
||||
if (this.formInline.deliverableType) {
|
||||
this.formInline.deliverableType = this.formInline.deliverableType.split(',')
|
||||
this.formInline = JSON.parse(JSON.stringify(value))
|
||||
// if (this.formInline.deliverableType) {
|
||||
// this.formInline.deliverableType = this.formInline.deliverableType.split(',')
|
||||
// }
|
||||
if (value.dutyTerritory) {
|
||||
this.queryPersonByProject(value.dutyTerritory)
|
||||
}
|
||||
this.getRegulationNo()
|
||||
this.title = this.$t('edit')
|
||||
this.$nextTick(() => {
|
||||
this.formInline = {...this.formInline}
|
||||
this.$refs.ruleForm.clearValidate()
|
||||
})
|
||||
},
|
||||
@@ -527,6 +670,7 @@
|
||||
url = this.url.add
|
||||
Action = postAction
|
||||
query.dataList.forEach(val => {
|
||||
delete val.engineeringInterfacePersonList
|
||||
Object.keys(val).forEach(res => {
|
||||
if (val[res] && val[res] instanceof Array) {
|
||||
val[res] = val[res].join(',')
|
||||
@@ -618,8 +762,37 @@
|
||||
let content = this.projectNameList.filter(res => {
|
||||
return res.id === value
|
||||
})
|
||||
this.formInline.bussDocumentLibraryId = content[0].id
|
||||
this.formInline.serialNumber = content[0].serialNumber
|
||||
if (content && content.length > 0) {
|
||||
this.formInline.bussDocumentLibraryId = content[0].id
|
||||
this.formInline.serialNumber = content[0].serialNumber
|
||||
}
|
||||
},
|
||||
handleChange(value) {
|
||||
this.formInline.sdt = undefined
|
||||
this.queryPersonByProject(this.formInline.dutyTerritory)
|
||||
},
|
||||
dutyHandleChange(index) {
|
||||
this.formInline.dataList[index].sdt = undefined
|
||||
this.formInline = {... this.formInline}
|
||||
this.queryPersonByProject(this.formInline.dataList[index].dutyTerritory, index)
|
||||
},
|
||||
queryPersonByProject(row, index) {
|
||||
let query = {
|
||||
projectId: this.$route.query.id,
|
||||
dutyTerritory: row
|
||||
}
|
||||
getAction('/project/projectRelatedPersonnel/queryPersonByProjectId', query).then((res) => {
|
||||
if (res.success) {
|
||||
if (this.formInline.id) {
|
||||
this.engineeringInterfacePersonList = res.result.engineeringInterfacePersonList || [] //工程接口人
|
||||
} else {
|
||||
this.$nextTick(()=>{
|
||||
this.formInline.dataList[index].engineeringInterfacePersonList = res.result.engineeringInterfacePersonList || []
|
||||
this.formInline = {...this.formInline}
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+113
-40
@@ -17,19 +17,15 @@
|
||||
<span class="title-text-text" :title="$t('configurationItem')">{{$t('configurationItem')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('configurationItem')"
|
||||
class="box-input"
|
||||
allowClear
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
v-model="formInline.configItem">
|
||||
<a-select-option v-for="(item, key) in configurationItemList"
|
||||
:key="item.key"
|
||||
:value="item.value">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.label ">
|
||||
{{ item.label }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
<a-input class="box-input"
|
||||
v-model="formInline.configItem"
|
||||
:placeholder="$t('PleaseEnter')+$t('configurationItem')"/>
|
||||
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formInline.configItem"-->
|
||||
<!-- @input="handleInput('configItem')"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('configurationItem')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" :dictCode="'ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4'"/>-->
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -41,6 +37,7 @@
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"
|
||||
@input="handleInput('dutyTerritory')"
|
||||
@changeQuery="handleChange"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
@@ -58,13 +55,15 @@
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('engineeringInterfacePerson')"
|
||||
class="box-input"
|
||||
allowClear
|
||||
optionFilterProp="label"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
v-model="formInline.sdt">
|
||||
<a-select-option v-for="(item, key) in engineeringInterfacePersonList"
|
||||
:key="item.key"
|
||||
:label="item.name"
|
||||
:value="item.value">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.label ">
|
||||
{{ item.label }}
|
||||
<span style="display: inline-block;width: 100%" :title=" item.name ">
|
||||
{{ item.name }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
@@ -74,15 +73,20 @@
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text" :title="$t('personLiable')">{{$t('personLiable')}}</span>
|
||||
<span class="title-text-text" :title="$t('typeOfDeliverables')">{{$t('typeOfDeliverables')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel-multi">
|
||||
<PersonnelSelection :query="{db_field_name:'dutyPerson',db_field_txt:$t('personLiable')}"
|
||||
:isSingleChoice="true"
|
||||
:personneQuery="formInline"
|
||||
v-if="visible"
|
||||
@change="PersonnelSelectionChange"
|
||||
v-model="formInline.dutyPersonName"/>
|
||||
<!-- tree-checkable-->
|
||||
<a-tree-select
|
||||
tree-node-filter-prop="title"
|
||||
v-model="formInline.deliverableType"
|
||||
:maxTagCount="1"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
class="box-input"
|
||||
style="width: 100%"
|
||||
:tree-data="DeliverableTreeList"
|
||||
:placeholder="$t('PleaseSelect')+$t('typeOfDeliverables')"
|
||||
/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -91,22 +95,49 @@
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text" :title="$t('typeOfDeliverables')">{{$t('typeOfDeliverables')}}</span>
|
||||
<span class="title-text-text" :title="$t('closingDate')">{{$t('closingDate')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'endTime'"
|
||||
>
|
||||
<a-date-picker class="box-input"
|
||||
:placeholder="$t('PleaseSelect')+$t('closingDate')"
|
||||
@change="dateChange({db_field_name:'endTime'})"
|
||||
format="YYYY-MM-DD"
|
||||
:disabledDate="disabledDate"
|
||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||
v-model="formInline.endTime"
|
||||
style="width: 100%"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="12" v-if="roleSwitchingCode == 2">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('CertificationProgress')">{{$t('CertificationProgress')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('typeOfDeliverables')"
|
||||
class="box-input"
|
||||
allowClear
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
v-model="formInline.deliverableType">
|
||||
<a-select-option v-for="(item, key) in typeOfDeliverablesList"
|
||||
:key="item.key"
|
||||
:value="item.value">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.label ">
|
||||
{{ item.label }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
<j-dict-select-tag class="box-input" v-model="formInline.certificationProgress"
|
||||
@input="handleInput('certificationProgress')"
|
||||
:placeholder="$t('PleaseSelect')+$t('CertificationProgress')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'certification_progress'"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24" v-if="name == $t('BatchSetting') && roleSwitchingCode == 2">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('remarks')">{{$t('remarks')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" :prop="'certificationProgressRemark'">
|
||||
<a-textarea
|
||||
:placeholder="$t('PleaseEnter')+$t('remarks')"
|
||||
v-model="formInline.certificationProgressRemark" :rows="4"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -122,7 +153,7 @@
|
||||
|
||||
export default {
|
||||
name: 'batSetting',
|
||||
props: ['url'],
|
||||
props: ['url', 'roleSwitchingCode'],
|
||||
components: {
|
||||
PersonnelSelection
|
||||
},
|
||||
@@ -136,14 +167,29 @@
|
||||
configurationItemList: [],
|
||||
engineeringInterfacePersonList: [],
|
||||
typeOfDeliverablesList: [],
|
||||
name: ''
|
||||
name: '',
|
||||
DeliverableTreeList: []
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
},
|
||||
methods: {
|
||||
disabledDate(current) {
|
||||
return current && current < moment().subtract(1, 'day')
|
||||
},
|
||||
|
||||
getDeliverableTree() {
|
||||
getAction('/sys/category/getCertificationDeliverableTree', {}).then((res) => {
|
||||
if (res.success) {
|
||||
this.DeliverableTreeList = res.result
|
||||
} else {
|
||||
this.DeliverableTreeList = []
|
||||
}
|
||||
})
|
||||
},
|
||||
edit(data, name) {
|
||||
this.visible = true
|
||||
this.getDeliverableTree()
|
||||
this.$nextTick(() => {
|
||||
this.ids = data || []
|
||||
this.formInline = {}
|
||||
@@ -163,12 +209,24 @@
|
||||
},
|
||||
handleOkOne() {
|
||||
let ids = JSON.parse(JSON.stringify(this.ids))
|
||||
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 = {
|
||||
ids: ids.join(','),
|
||||
...this.formInline
|
||||
...formInline
|
||||
}
|
||||
let url = ''
|
||||
this.confirmLoading = true
|
||||
postAction(this.url.setBatch, query).then((res) => {
|
||||
if (this.name == this.$t('changeSetting')) {
|
||||
url = '/project/projectCertificationInventoryEO/updateConfigItemBatch'
|
||||
} else {
|
||||
url = this.url.setBatch
|
||||
}
|
||||
postAction(url, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.visible = false
|
||||
@@ -217,6 +275,21 @@
|
||||
},
|
||||
dateChange(item) {
|
||||
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
|
||||
},
|
||||
handleChange(value) {
|
||||
this.formInline.sdt = undefined
|
||||
this.queryPersonByProject(this.formInline.dutyTerritory)
|
||||
},
|
||||
queryPersonByProject(row) {
|
||||
let query = {
|
||||
projectId: this.$route.query.id,
|
||||
dutyTerritory: row
|
||||
}
|
||||
getAction('/project/projectRelatedPersonnel/queryPersonByProjectId', query).then((res) => {
|
||||
if (res.success) {
|
||||
this.engineeringInterfacePersonList = res.result.engineeringInterfacePersonList || [] //工程接口人
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+26
-22
@@ -40,54 +40,57 @@
|
||||
|
||||
<script>
|
||||
import { getAction, postAction } from '@/api/manage'
|
||||
|
||||
export default {
|
||||
name: 'modifyHistoryList',
|
||||
data() {
|
||||
return {
|
||||
visible:false,
|
||||
dataList:[],
|
||||
confirmLoading:false,
|
||||
loading:false,
|
||||
visible: false,
|
||||
dataList: [],
|
||||
confirmLoading: false,
|
||||
loading: false,
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
total: 0,
|
||||
url:{
|
||||
list:'',
|
||||
projectCertificationInventoryId: '',
|
||||
url: {
|
||||
list: '/project/projectCertificationInventoryLogEO/page'
|
||||
},
|
||||
columns:[
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('Operator'),
|
||||
dataIndex: 'Operator',
|
||||
dataIndex: 'createBy',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 228
|
||||
width: 108
|
||||
},
|
||||
{
|
||||
title: this.$t('operationTime'),
|
||||
dataIndex: 'operationTime',
|
||||
dataIndex: 'createTime',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 228
|
||||
width: 148
|
||||
},
|
||||
{
|
||||
title: this.$t('OperationContent'),
|
||||
dataIndex: 'OperationContent',
|
||||
dataIndex: 'content',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 228
|
||||
},
|
||||
],
|
||||
width: 528
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
},
|
||||
methods:{
|
||||
handleCancel(){
|
||||
this.visible = false
|
||||
methods: {
|
||||
handleCancel() {
|
||||
this.visible = false
|
||||
},
|
||||
getList() {
|
||||
getList(id) {
|
||||
this.pageNo = 1
|
||||
this.visible = true
|
||||
this.projectCertificationInventoryId = id
|
||||
this.replacePage()
|
||||
},
|
||||
onChange(page, pageSize) {
|
||||
@@ -99,13 +102,14 @@
|
||||
this.pageSize = pageSize
|
||||
this.replacePage()
|
||||
},
|
||||
replacePage(){
|
||||
replacePage() {
|
||||
let query = {
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
projectCertificationInventoryId: this.projectCertificationInventoryId
|
||||
}
|
||||
this.loading = true
|
||||
postAction(this.url.list, query).then((res) => {
|
||||
getAction(this.url.list, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataList = res.result.records || []
|
||||
this.total = res.result.total
|
||||
@@ -116,7 +120,7 @@
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
+22
-38
@@ -56,7 +56,7 @@
|
||||
|
||||
<div class="drawer-bootom-button">
|
||||
<a-button @click="handleCancel" style="margin-right: 16px">{{$t('cancel')}}</a-button>
|
||||
<a-button @click="handleSubmit(undefined)" type="primary" :loading="confirmLoading">{{$t('determine')}}</a-button>
|
||||
<a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('determine')}}</a-button>
|
||||
</div>
|
||||
</a-drawer>
|
||||
</template>
|
||||
@@ -95,17 +95,19 @@
|
||||
loading: false,
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
total: 0
|
||||
total: 0,
|
||||
ids:'',
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
transferModel() {
|
||||
transferModel(ids) {
|
||||
this.visible = true
|
||||
this.queryParam = {}
|
||||
this.selectedRowKeys = []
|
||||
this.ids = ids.join(',')
|
||||
this.replacePage()
|
||||
},
|
||||
searchQuery() {
|
||||
@@ -151,49 +153,31 @@
|
||||
},
|
||||
handleCancel() {
|
||||
this.visible = false
|
||||
this.$emit('visible')
|
||||
},
|
||||
handleSubmit(flag) {
|
||||
handleSubmit() {
|
||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||
this.confirmLoading = true
|
||||
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||
this.confirmLoading = false
|
||||
this.$emit('transferListForm',selectedRowKeys.join(','))
|
||||
this.selectedRowKeys = []
|
||||
// postAction('project/projectLawsInventoryEO/add', {
|
||||
// dummyInventoryBaseId: selectedRowKeys.join(','),
|
||||
// projectLibraryId: this.$route.query.id,
|
||||
// flag: flag
|
||||
// }).then((res) => {
|
||||
// if (res.success) {
|
||||
// this.confirmLoading = false
|
||||
// // this.$message.success(this.$t('OperationSuccessful'))
|
||||
// // this.visible = false
|
||||
// this.selectedRowKeys = []
|
||||
// this.$emit('transferListForm',selectedRowKeys.join(','))
|
||||
// } else {
|
||||
// // if (res.message == '该虚拟清单的维护清单中没有数据,是否需要添加') {
|
||||
// // this.confirmLoading = false
|
||||
// // this.getAdd()
|
||||
// // return
|
||||
// // }
|
||||
// this.$message.warning(this.$t('operationFailed'))
|
||||
// this.confirmLoading = false
|
||||
// }
|
||||
// })
|
||||
postAction('/project/projectCertificationInventoryEO/citeDeliverable', {
|
||||
projectCertificationInventoryIds: this.ids,
|
||||
projectLibraryId: this.$route.query.id,
|
||||
citeProjectLibraryId: selectedRowKeys.join(',')
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
this.confirmLoading = false
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.visible = false
|
||||
this.selectedRowKeys = []
|
||||
this.$emit('referenceDeliverablesListForm')
|
||||
} else {
|
||||
this.$message.warning(this.$t('operationFailed'))
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
}
|
||||
},
|
||||
getAdd() {
|
||||
let _this = this
|
||||
this.$confirm({
|
||||
content: _this.$t('TheDoesNotContainData'),
|
||||
onOk() {
|
||||
_this.handleSubmit('1')
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
+72
-57
@@ -1,76 +1,84 @@
|
||||
<template>
|
||||
<a-drawer
|
||||
:title="$t('Transfer')"
|
||||
:maskClosable="false"
|
||||
:width="1000"
|
||||
placement="right"
|
||||
:closable="true"
|
||||
@close="handleCancel"
|
||||
:visible="visible"
|
||||
style="height: 100%;overflow: auto;padding-bottom: 53px;">
|
||||
<div style="margin-bottom: 60px">
|
||||
<div class="table-page-search-wrapper">
|
||||
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||
<a-row :gutter="24">
|
||||
<a-col :md="12" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('VirtualListName')">
|
||||
<span>{{$t('VirtualListName')}}</span>
|
||||
<div>
|
||||
<a-drawer
|
||||
:title="$t('Transfer')"
|
||||
:maskClosable="false"
|
||||
:width="1000"
|
||||
placement="right"
|
||||
:closable="true"
|
||||
@close="handleCancel"
|
||||
:visible="visible"
|
||||
style="height: 100%;overflow: auto;padding-bottom: 53px;">
|
||||
<div style="margin-bottom: 60px">
|
||||
<div class="table-page-search-wrapper">
|
||||
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||
<a-row :gutter="24">
|
||||
<a-col :md="12" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('VirtualListName')">
|
||||
<span>{{$t('VirtualListName')}}</span>
|
||||
</div>
|
||||
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('VirtualListName')"
|
||||
v-model="queryParam.name"></j-input>
|
||||
</div>
|
||||
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('VirtualListName')"
|
||||
v-model="queryParam.name"></j-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
||||
</a-col>
|
||||
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
||||
<a-col :md="12" :sm="24">
|
||||
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
|
||||
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
|
||||
</a-col>
|
||||
</span>
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
<a-table
|
||||
:components="drag(columns,'columns')"
|
||||
:columns="columns"
|
||||
rowKey="id"
|
||||
:scroll="{x: 800}"
|
||||
:data-source="dataList"
|
||||
:pagination="false"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:' ' }"
|
||||
:loading="loading">
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
<a-table
|
||||
:components="drag(columns,'columns')"
|
||||
:columns="columns"
|
||||
rowKey="id"
|
||||
:scroll="{x: 800}"
|
||||
:data-source="dataList"
|
||||
:pagination="false"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:' ' }"
|
||||
:loading="loading">
|
||||
|
||||
</a-table>
|
||||
<div class="page" v-if="dataList.length > 0">
|
||||
<a-pagination
|
||||
:show-total="total => $t('total')+` ${total} `+$t('strip')"
|
||||
show-quick-jumper
|
||||
show-size-changer
|
||||
:page-size.sync="pageSize"
|
||||
:total="total"
|
||||
:current="pageNo"
|
||||
@change="onChange"
|
||||
@showSizeChange="SizeChange"
|
||||
/>
|
||||
</a-table>
|
||||
<div class="page" v-if="dataList.length > 0">
|
||||
<a-pagination
|
||||
:show-total="total => $t('total')+` ${total} `+$t('strip')"
|
||||
show-quick-jumper
|
||||
show-size-changer
|
||||
:page-size.sync="pageSize"
|
||||
:total="total"
|
||||
:current="pageNo"
|
||||
@change="onChange"
|
||||
@showSizeChange="SizeChange"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="drawer-bootom-button">
|
||||
<a-button @click="handleCancel" style="margin-right: 16px">{{$t('cancel')}}</a-button>
|
||||
<a-button @click="handleSubmit(undefined)" type="primary" :loading="confirmLoading">{{$t('determine')}}</a-button>
|
||||
</div>
|
||||
</a-drawer>
|
||||
<div class="drawer-bootom-button">
|
||||
<a-button @click="handleCancel" style="margin-right: 16px">{{$t('cancel')}}</a-button>
|
||||
<a-button @click="handleSubmit(undefined)" type="primary" :loading="confirmLoading">{{$t('determine')}}
|
||||
</a-button>
|
||||
</div>
|
||||
</a-drawer>
|
||||
<transferListvirtal :url="url" @transferListFormHomo="transferListFormHomo" ref="transferListvirtalRef"/>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction } from '@/api/manage'
|
||||
import { ResizeHeader, ResizeColumnProvide } from '@/mixins/header'
|
||||
import transferListvirtal from './transferListvirtal'
|
||||
|
||||
export default {
|
||||
name: 'transferList',
|
||||
components: {},
|
||||
components: {
|
||||
transferListvirtal
|
||||
},
|
||||
props: ['url'],
|
||||
mixins:[ResizeHeader, ResizeColumnProvide],
|
||||
mixins: [ResizeHeader, ResizeColumnProvide],
|
||||
data() {
|
||||
return {
|
||||
visible: false,
|
||||
@@ -150,7 +158,7 @@
|
||||
...this.queryParam
|
||||
}
|
||||
this.loading = true
|
||||
postAction('/project/projectLawsInventoryEO/getPageInfoDummy', query).then((res) => {
|
||||
getAction('/authDummy/authDummyInventoryBaseEO/page', query).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataList = res.result.records || []
|
||||
this.total = res.result.total
|
||||
@@ -160,6 +168,11 @@
|
||||
}
|
||||
})
|
||||
},
|
||||
transferListFormHomo() {
|
||||
this.visible = false
|
||||
this.selectedRowKeys = []
|
||||
this.$emit('transferListForm')
|
||||
},
|
||||
onSelectChange(value) {
|
||||
this.selectedRowKeys = value
|
||||
if (this.selectedRowKeys.length > 1) {
|
||||
@@ -168,6 +181,7 @@
|
||||
},
|
||||
handleCancel() {
|
||||
this.visible = false
|
||||
this.selectedRowKeys = []
|
||||
this.$emit('visible')
|
||||
},
|
||||
handleSubmit(flag) {
|
||||
@@ -175,8 +189,9 @@
|
||||
this.confirmLoading = true
|
||||
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||
this.confirmLoading = false
|
||||
this.$emit('transferListForm',selectedRowKeys.join(','))
|
||||
this.selectedRowKeys = []
|
||||
// this.$emit('transferListForm',selectedRowKeys.join(','))
|
||||
this.$refs.transferListvirtalRef.transferModel(selectedRowKeys.join(','))
|
||||
// this.selectedRowKeys = []
|
||||
// postAction('project/projectLawsInventoryEO/add', {
|
||||
// dummyInventoryBaseId: selectedRowKeys.join(','),
|
||||
// projectLibraryId: this.$route.query.id,
|
||||
|
||||
+314
@@ -0,0 +1,314 @@
|
||||
<template>
|
||||
<a-drawer
|
||||
:title="$t('Transfer')"
|
||||
:maskClosable="false"
|
||||
:width="1000"
|
||||
placement="right"
|
||||
:closable="true"
|
||||
@close="handleCancel"
|
||||
:visible="visible"
|
||||
style="height: 100%;overflow: auto;padding-bottom: 53px;">
|
||||
<div style="margin-bottom: 60px">
|
||||
<div class="table-page-search-wrapper">
|
||||
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||
<a-row :gutter="24">
|
||||
<a-col :md="12" :sm="5">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('standard')">
|
||||
<span>{{$t('standard')}}</span>
|
||||
</div>
|
||||
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('standard')"
|
||||
v-model="queryParam.serialNumber"></j-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :md="12" :sm="5">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('category')">
|
||||
<span>{{$t('category')}}</span>
|
||||
</div>
|
||||
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('category')"
|
||||
v-model="queryParam.category"></j-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
|
||||
<a-col :md="12" :sm="24">
|
||||
<globalAdvancedQuery ref="globalAdvancedQueryRef"
|
||||
@handleSuperQuery="handleSuperQuery"
|
||||
:fieldList="fieldList"/>
|
||||
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
|
||||
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
|
||||
</a-col>
|
||||
</span>
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
<a-table
|
||||
:columns="columns"
|
||||
rowKey="id"
|
||||
:scroll="{x: 800,y:600}"
|
||||
:data-source="dataList"
|
||||
:pagination="false"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:'' }"
|
||||
:loading="loading">
|
||||
|
||||
</a-table>
|
||||
<!-- <div class="page" v-if="dataList.length > 0">-->
|
||||
<!-- <a-pagination-->
|
||||
<!-- :show-total="total => $t('total')+` ${total} `+$t('strip')"-->
|
||||
<!-- show-quick-jumper-->
|
||||
<!-- show-size-changer-->
|
||||
<!-- :page-size.sync="pageSize"-->
|
||||
<!-- :total="total"-->
|
||||
<!-- :current="pageNo"-->
|
||||
<!-- @change="onChange"-->
|
||||
<!-- @showSizeChange="SizeChange"-->
|
||||
<!-- />-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
|
||||
<div class="drawer-bootom-button">
|
||||
<a-button @click="handleCancel" style="margin-right: 16px">{{$t('cancel')}}</a-button>
|
||||
<a-button @click="handleSubmit(undefined)" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
|
||||
</div>
|
||||
</a-drawer>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction } from '@/api/manage'
|
||||
import globalAdvancedQuery from '@/components/globalAdvancedQuery/index'
|
||||
|
||||
export default {
|
||||
name: 'transferList',
|
||||
components: {
|
||||
globalAdvancedQuery
|
||||
},
|
||||
props: ['url'],
|
||||
data() {
|
||||
return {
|
||||
visible: false,
|
||||
queryParam: {},
|
||||
confirmLoading: false,
|
||||
selectedRowKeys: [],
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('category'),
|
||||
align: 'left',
|
||||
dataIndex: 'category',
|
||||
width: 150,
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
title: this.$t('inspectionItems'),
|
||||
align: 'left',
|
||||
dataIndex: 'inspectionItem',
|
||||
width: 150,
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'inspectionItems' }
|
||||
},
|
||||
{
|
||||
title: 'WVTA ID',
|
||||
align: 'left',
|
||||
dataIndex: 'wvtaId',
|
||||
width: 150,
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
title: this.$t('standard'),
|
||||
align: 'left',
|
||||
dataIndex: 'serialNumber',
|
||||
width: 150,
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
title: this.$t('areaOfResponsibility'),
|
||||
align: 'left',
|
||||
dataIndex: 'dutyTerritoryName',
|
||||
width: 200,
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
title: this.$t('typeOfDeliverables'),
|
||||
align: 'left',
|
||||
dataIndex: 'deliverableTypeName',
|
||||
width: 200,
|
||||
ellipsis: true,
|
||||
},
|
||||
],
|
||||
fieldList: [
|
||||
{
|
||||
type: 'string',
|
||||
value: 'wvtaId',
|
||||
text: 'WVTA ID'
|
||||
},
|
||||
{
|
||||
type: 'string',
|
||||
value: 'inspectionItem',
|
||||
text: this.$t('inspectionItems'),
|
||||
},
|
||||
{
|
||||
type: '',
|
||||
value: 'dutyTerritory',
|
||||
text: this.$t('areaOfResponsibility'),
|
||||
dictCode: 'duty_territory'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框
|
||||
},
|
||||
],
|
||||
dataList: [],
|
||||
content: [],
|
||||
loading: false,
|
||||
dummyInventoryBaseId:'',
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
total: 0
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
transferModel(id) {
|
||||
this.visible = true
|
||||
this.dummyInventoryBaseId = id
|
||||
this.queryParam = {}
|
||||
this.selectedRowKeys = []
|
||||
this.replacePage()
|
||||
},
|
||||
searchQuery() {
|
||||
this.pageNo = 1
|
||||
this.replacePage()
|
||||
},
|
||||
searchReset() {
|
||||
this.pageNo = 1
|
||||
this.queryParam = {}
|
||||
this.replacePage()
|
||||
this.$refs.globalAdvancedQueryRef.resetLine()
|
||||
this.$refs.globalAdvancedQueryRef.emitCallback()
|
||||
},
|
||||
onChange(page, pageSize) {
|
||||
this.pageNo = page
|
||||
this.replacePage()
|
||||
},
|
||||
SizeChange(page, pageSize) {
|
||||
this.pageNo = 1
|
||||
this.pageSize = pageSize
|
||||
this.replacePage()
|
||||
},
|
||||
handleSuperQuery(params, matchType) {
|
||||
let sqp = {}
|
||||
if (!params || (params && params.length == 0)) {
|
||||
sqp['superQueryParams'] = ''
|
||||
this.$refs.globalAdvancedQueryRef.superQueryFlag = false
|
||||
} else {
|
||||
this.$refs.globalAdvancedQueryRef.superQueryFlag = true
|
||||
sqp['superQueryParams'] = encodeURI(JSON.stringify(params))
|
||||
sqp['superQueryMatchType'] = matchType
|
||||
}
|
||||
this.queryParamQuery = sqp
|
||||
this.replacePage()
|
||||
},
|
||||
replacePage() {
|
||||
let query = {
|
||||
// pageNo: this.pageNo,
|
||||
// pageSize: this.pageSize,
|
||||
...this.queryParamQuery,
|
||||
...this.queryParam,
|
||||
authDummyInventoryBaseId: this.dummyInventoryBaseId
|
||||
}
|
||||
this.loading = true
|
||||
getAction('/authDummy/authDummyInventoryInfoEO/list', query).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataList = res.result || []
|
||||
this.loading = false
|
||||
} else {
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
onSelectChange(value) {
|
||||
this.selectedRowKeys = value
|
||||
// if (this.selectedRowKeys.length > 1) {
|
||||
// this.selectedRowKeys.shift()
|
||||
// }
|
||||
},
|
||||
handleCancel() {
|
||||
this.visible = false
|
||||
},
|
||||
handleSubmit(flag) {
|
||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||
this.confirmLoading = true
|
||||
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||
postAction('project/projectCertificationInventoryEO/callAdd', {
|
||||
authDummyInventoryBaseId: this.dummyInventoryBaseId,
|
||||
projectLibraryId: this.$route.query.id,
|
||||
authDummyInventoryInfoIds: selectedRowKeys.join(','),
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
this.confirmLoading = false
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.visible = false
|
||||
this.selectedRowKeys = []
|
||||
this.$emit('transferListFormHomo')
|
||||
} else {
|
||||
this.$message.warning(this.$t('operationFailed'))
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.page {
|
||||
text-align: right;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.drawer-bootom-button {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
z-index: 100;
|
||||
width: 100%;
|
||||
border-top: 1px solid #e8e8e8;
|
||||
padding: 10px 16px;
|
||||
text-align: right;
|
||||
left: 0;
|
||||
background: #fff;
|
||||
border-radius: 0 0 2px 2px;
|
||||
}
|
||||
|
||||
.box-title-text {
|
||||
line-height: 1.4;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.title-text {
|
||||
width: 20%;
|
||||
min-width: 110px;
|
||||
color: #000F16;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
margin-right: 16px;
|
||||
margin-top: 3px;
|
||||
text-align: right;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.box-input {
|
||||
display: inline-block;
|
||||
width: 70%;
|
||||
height: 38px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.box-button {
|
||||
height: 38px;
|
||||
}
|
||||
</style>
|
||||
@@ -54,10 +54,10 @@
|
||||
<a-button class="box-button" type="primary" @click="searchQuery">{{ $t('query') }}</a-button>
|
||||
<a-button class="box-button" style="margin-left: 8px"
|
||||
@click="searchReset">{{ $t('reset') }}</a-button>
|
||||
<a @click="handleToggleSearch" style="margin-left: 8px">
|
||||
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
|
||||
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
|
||||
</a>
|
||||
<!-- <a @click="handleToggleSearch" style="margin-left: 8px">-->
|
||||
<!-- {{ !toggleSearchStatus ? $t('open') : $t('away') }}-->
|
||||
<!-- <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>-->
|
||||
<!-- </a>-->
|
||||
</a-col>
|
||||
</span>
|
||||
</a-row>
|
||||
@@ -280,18 +280,49 @@
|
||||
</a>
|
||||
</span>
|
||||
<span slot="DeliverablesResult" slot-scope="text,record,index">
|
||||
<a-button type="primary" class="button-text"
|
||||
v-if="record.flowStatus == 'Results to be submitted'"
|
||||
@click="clickButtonToUpload('deliveryResult',index)">
|
||||
<span v-if="(record.flowStatus == 'Results to be submitted' &&
|
||||
record.dutyPersonName == userInfoQuery.username && roleSwitchingCode == 20) ||
|
||||
record.flowStatus == 'Results to be submitted' && roleSwitchingCode == 21">
|
||||
<a-button type="primary" class="button-text"
|
||||
v-if="record.valueType == 'file'"
|
||||
@click="clickButtonToUpload('deliveryResult',index)">
|
||||
{{ (record.deliveryResult === 'null' || record.deliveryResult === '' ||
|
||||
record.deliveryResult == null) ? $t('clickUpload') : $t('viewUploadedFiles')
|
||||
}}
|
||||
</a-button>
|
||||
</a-button>
|
||||
<a-input class="box-input-index"
|
||||
v-else-if="record.valueType == 'text'"
|
||||
:maxLength="200"
|
||||
@blur="deliveryBlur"
|
||||
onkeyup="this.value=this.value.replace(/(^\s+)|(\s+$)/g, '')"
|
||||
v-model.trim="record.deliveryResult"
|
||||
:placeholder="$t('PleaseEnter')"/>
|
||||
<a-radio-group v-else-if="record.valueType == 'select'"
|
||||
@change="deliveryChange"
|
||||
v-model="record.deliveryResult">
|
||||
<a-radio :value="'1'">
|
||||
{{$t('yes')}}
|
||||
</a-radio>
|
||||
<a-radio :value="'2'">
|
||||
{{$t('not')}}
|
||||
</a-radio>
|
||||
</a-radio-group>
|
||||
<span v-else>--</span>
|
||||
</span>
|
||||
|
||||
<span v-else>
|
||||
<span class="viewFile"
|
||||
@click="viewFileClick(record.deliveryResult)" v-if="record.deliveryResult">
|
||||
@click="viewFileClick(record.deliveryResult)"
|
||||
v-if="record.deliveryResult && record.valueType == 'file'">
|
||||
{{$t('viewFile')}}
|
||||
</span>
|
||||
<span :title="record.deliveryResult"
|
||||
v-else-if="record.deliveryResult && record.valueType == 'text'">
|
||||
{{record.deliveryResult}}
|
||||
</span>
|
||||
<span v-else-if="record.deliveryResult && record.valueType == 'select'">
|
||||
{{record.deliveryResult == '1' ? $t('yes') :$t('not')}}
|
||||
</span>
|
||||
<span v-else>--</span>
|
||||
</span>
|
||||
</span>
|
||||
@@ -347,7 +378,7 @@
|
||||
</div>
|
||||
<transferList :url="url" @transferListForm="transferListForm" ref="transferListRef"/>
|
||||
<certificationDirectory :isDisplayNum="isDisplayNum" :url="url" ref="certificationDirectoryRef"/>
|
||||
<batSetting :url="url" ref="batSettingRef" @batSettingForm="batSettingForm"/>
|
||||
<batSetting :url="url" ref="batSettingRef" :roleSwitchingCode="roleSwitchingCode" @batSettingForm="batSettingForm"/>
|
||||
<addModel ref="addModelRef" @addModelForm="addModelForm"/>
|
||||
<modifyHistory ref="modifyHistoryRef"/>
|
||||
<uploadFile ref="uploadFile" :isMultiple="true" :disabled="disabled" @uploadSuccess="uploadSuccess"></uploadFile>
|
||||
@@ -355,41 +386,41 @@
|
||||
<referenceDeliverablesList ref="referenceDeliverablesListRef" @referenceDeliverablesListForm="transferListForm"/>
|
||||
<SelectedBy ref="SelectedByRef" :title="$t('turnToDo')" @SelectedByForm="SelectedByForm"></SelectedBy>
|
||||
<viewFileModel ref="viewFileModelRef"/>
|
||||
<a-modal
|
||||
:title="listTitle"
|
||||
:width="500"
|
||||
:visible="visible"
|
||||
:confirm-loading="confirmLoading"
|
||||
:maskClosable="false"
|
||||
@ok="handleOk"
|
||||
@cancel="handleCancel"
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text-index">
|
||||
<div class="title-text-index">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text"
|
||||
:title="$t('TaskCutOffTime')">{{ $t('TaskCutOffTime') }}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="endTime">
|
||||
<a-date-picker class="box-input"
|
||||
:placeholder="$t('PleaseSelect')+$t('TaskCutOffTime')"
|
||||
@change="dateChange({db_field_name:'endTime'})"
|
||||
format="YYYY-MM-DD"
|
||||
:disabledDate="disabledDate"
|
||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||
v-model="formInline.endTime"
|
||||
style="width: 100%"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form-model>
|
||||
</a-spin>
|
||||
</a-modal>
|
||||
<!-- <a-modal-->
|
||||
<!-- :title="listTitle"-->
|
||||
<!-- :width="500"-->
|
||||
<!-- :visible="visible"-->
|
||||
<!-- :confirm-loading="confirmLoading"-->
|
||||
<!-- :maskClosable="false"-->
|
||||
<!-- @ok="handleOk"-->
|
||||
<!-- @cancel="handleCancel"-->
|
||||
<!-- >-->
|
||||
<!-- <a-spin :spinning="confirmLoading">-->
|
||||
<!-- <a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">-->
|
||||
<!-- <a-row :gutter="24">-->
|
||||
<!-- <a-col :span="24">-->
|
||||
<!-- <div class="box-title-text-index">-->
|
||||
<!-- <div class="title-text-index">-->
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<!-- <span class="title-text-text"-->
|
||||
<!-- :title="$t('TaskCutOffTime')">{{ $t('TaskCutOffTime') }}</span>-->
|
||||
<!-- </div>-->
|
||||
<!-- <a-form-model-item class="itemModel" prop="endTime">-->
|
||||
<!-- <a-date-picker class="box-input"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('TaskCutOffTime')"-->
|
||||
<!-- @change="dateChange({db_field_name:'endTime'})"-->
|
||||
<!-- format="YYYY-MM-DD"-->
|
||||
<!-- :disabledDate="disabledDate"-->
|
||||
<!-- :getCalendarContainer="(trigger) => trigger.parentNode"-->
|
||||
<!-- v-model="formInline.endTime"-->
|
||||
<!-- style="width: 100%"/>-->
|
||||
<!-- </a-form-model-item>-->
|
||||
<!-- </div>-->
|
||||
<!-- </a-col>-->
|
||||
<!-- </a-row>-->
|
||||
<!-- </a-form-model>-->
|
||||
<!-- </a-spin>-->
|
||||
<!-- </a-modal>-->
|
||||
<a-modal
|
||||
:title="$t('roleSwitching')"
|
||||
:width="500"
|
||||
@@ -473,7 +504,50 @@
|
||||
'NA': 'notInvolvedColor',
|
||||
'Not start': 'submittedColor'
|
||||
},
|
||||
fieldList: [],
|
||||
fieldList: [
|
||||
{
|
||||
type: 'string',
|
||||
value: 'category',
|
||||
text: this.$t('category')
|
||||
},
|
||||
{
|
||||
type: 'string',
|
||||
value: 'inspectionItem',
|
||||
text: this.$t('inspectionItems')
|
||||
},
|
||||
{
|
||||
type: 'string',
|
||||
value: 'configItem',
|
||||
text: this.$t('configurationItem')
|
||||
},
|
||||
{
|
||||
type: 'string',
|
||||
value: 'wvtaId',
|
||||
text: 'WVTA ID'
|
||||
},
|
||||
{
|
||||
type: 'string',
|
||||
value: 'serialNumber',
|
||||
text: this.$t('standardNo')
|
||||
},
|
||||
{
|
||||
type: 'Personnel',
|
||||
value: 'sdt',
|
||||
valueName: 'sdtName',
|
||||
text: this.$t('engineeringInterfacePerson')
|
||||
},
|
||||
{
|
||||
type: 'Personnel',
|
||||
value: 'dutyPerson',
|
||||
valueName: 'dutyPersonName',
|
||||
text: this.$t('personLiable')
|
||||
},
|
||||
{
|
||||
type: 'date',
|
||||
value: 'endTime',
|
||||
text: this.$t('closingDate')
|
||||
}
|
||||
],
|
||||
disabled: false,
|
||||
queryParamQuery: {},
|
||||
formInline: {},
|
||||
@@ -589,7 +663,7 @@
|
||||
align: 'left',
|
||||
dataIndex: 'deliveryResult',
|
||||
width: 180,
|
||||
// ellipsis: true,
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'DeliverablesResult' }
|
||||
},
|
||||
{
|
||||
@@ -651,13 +725,15 @@
|
||||
isDisplayNum: 2,
|
||||
long: '',
|
||||
toDoIds: [],
|
||||
toDoNotConditions: []
|
||||
toDoNotConditions: [],
|
||||
userInfoQuery: {}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// this.getList()
|
||||
this.long = localStorage.getItem('language') || 'zh-cn'
|
||||
this.loading = true
|
||||
this.userInfoQuery = this.userInfo()
|
||||
this.getProcessStatus()
|
||||
this.getRoleByUserId(() => {
|
||||
this.getAndUserId()
|
||||
@@ -718,7 +794,7 @@
|
||||
if (this.roleSwitchingCode == 2) {
|
||||
this.preservationClick()
|
||||
}
|
||||
this.replacePage()
|
||||
this.getList()
|
||||
},
|
||||
SizeChange(page, pageSize) {
|
||||
this.pageNo = 1
|
||||
@@ -726,7 +802,7 @@
|
||||
if (this.roleSwitchingCode == 2) {
|
||||
this.preservationClick()
|
||||
}
|
||||
this.replacePage()
|
||||
this.getList()
|
||||
},
|
||||
searchQuery() {
|
||||
this.pageNo = 1
|
||||
@@ -779,6 +855,11 @@
|
||||
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 = 1
|
||||
this.getList()
|
||||
return
|
||||
}
|
||||
this.dataSource = res.result.records || []
|
||||
this.total = res.result.total
|
||||
this.loading = false
|
||||
@@ -821,42 +902,46 @@
|
||||
downloadFile(this.url.exportData, this.$route.query.projectName + '.zip', query, this.Deselect)
|
||||
},
|
||||
handleDel() {
|
||||
let _this = this
|
||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||
let _this = this
|
||||
let selectedRowKeys = JSON.parse(JSON.stringify(_this.selectedRowKeys))
|
||||
let isTrue = true
|
||||
// for (let i = 0; i < this.dataSource.length; i++) {
|
||||
// for (let j = 0; j < selectedRowKeys.length; j++) {
|
||||
// if (this.dataSource[i].id == selectedRowKeys[j]) {
|
||||
// if (this.dataSource[i].inventoryAffirmStatus == 'Not started' || this.dataSource[i].inventoryAffirmStatus == 'Rejected') {
|
||||
// isTrue = true
|
||||
// } else {
|
||||
// isTrue = false
|
||||
// this.$message.warning(this.$t('onlyDeleted'))
|
||||
// return
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
if (isTrue) {
|
||||
let ids = []
|
||||
let notConditions = []
|
||||
for (let i = 0; i < this.selectedRowKeysList.length; i++) {
|
||||
if (this.selectedRowKeysList[i].flowStatus == 'List to be released' ||
|
||||
this.selectedRowKeysList[i].flowStatus == 'Review and pass') {
|
||||
ids.push(this.selectedRowKeysList[i].id)
|
||||
} else {
|
||||
notConditions.push(this.selectedRowKeysList[i].inspectionItem)
|
||||
}
|
||||
}
|
||||
let data = ''
|
||||
if (notConditions && notConditions.length > 0) {
|
||||
data = this.$t('inspectionItems') + '"' + notConditions.join('、') + '"' + this.$t('conditionsNotMet') + ',' + this.$t('onlyDataWithProcessStatusDeleted')
|
||||
}
|
||||
if (ids && ids.length > 0) {
|
||||
this.$confirm({
|
||||
content: _this.$t('ConfirmBatchDeletion'),
|
||||
onOk() {
|
||||
let idList = JSON.parse(JSON.stringify(_this.selectedRowKeys))
|
||||
deleteAction(_this.url.deleteBatch, {
|
||||
ids: idList.join(','),
|
||||
ids: ids.join(','),
|
||||
projectLibraryId: _this.$route.query.id
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
_this.selectedRowKeys = []
|
||||
_this.selectedRowKeysList = []
|
||||
_this.getList()
|
||||
if (notConditions && notConditions.length > 0) {
|
||||
_this.failedMessage(data)
|
||||
}
|
||||
} else {
|
||||
_this.$message.warning(res.message)
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.failedMessage(data)
|
||||
}
|
||||
} else {
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
@@ -897,46 +982,93 @@
|
||||
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
|
||||
},
|
||||
releaseClick() {
|
||||
this.listTitle = this.$t('Deadline')
|
||||
if (this.selectedRowKeysList.length < 1) {
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
// this.listTitle = this.$t('Deadline')
|
||||
// if (this.selectedRowKeysList.length < 1) {
|
||||
// this.$message.warning(this.$t('selectLeastOne'))
|
||||
// } else {
|
||||
// this.visible = true
|
||||
// }
|
||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||
let ids = []
|
||||
let notConditions = []
|
||||
for (let i = 0; i < this.selectedRowKeysList.length; i++) {
|
||||
if (this.selectedRowKeysList[i].flowStatus == 'List to be released' ||
|
||||
this.selectedRowKeysList[i].flowStatus == 'Certification returned') {
|
||||
ids.push(this.selectedRowKeysList[i].id)
|
||||
} else {
|
||||
notConditions.push(this.selectedRowKeysList[i].inspectionItem)
|
||||
}
|
||||
}
|
||||
let data = ''
|
||||
if (notConditions && notConditions.length > 0) {
|
||||
data = this.$t('inspectionItems') + '"' + notConditions.join('、') + '"' + this.$t('conditionsNotMet') + ',' + this.$t('onlyDataListReleasedAndCertificationReturnCanSelected')
|
||||
}
|
||||
if (ids && ids.length > 0) {
|
||||
this.releaseData(ids, notConditions, data)
|
||||
} else {
|
||||
this.failedMessage(data)
|
||||
}
|
||||
} else {
|
||||
this.visible = true
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
}
|
||||
},
|
||||
handleOk() {
|
||||
this.$refs.ruleForm.validate(valid => {
|
||||
if (valid) {
|
||||
let selectedRowKeys = []
|
||||
this.selectedRowKeysList.forEach(res => {
|
||||
selectedRowKeys.push(res.id)
|
||||
})
|
||||
let query = {
|
||||
ids: selectedRowKeys.join(','),
|
||||
projectLibraryId: this.$route.query.id,
|
||||
...this.formInline
|
||||
}
|
||||
this.confirmLoading = true
|
||||
postAction('/project/projectCertificationInventoryEO/issue', query).then((res) => {
|
||||
releaseData(ids, notConditions, data) {
|
||||
let _this = this
|
||||
this.$confirm({
|
||||
content: _this.$t('confirmRelease'),
|
||||
onOk() {
|
||||
postAction('/project/projectCertificationInventoryEO/issue', {
|
||||
ids: ids.join(','),
|
||||
projectLibraryId: _this.$route.query.id
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.visible = false
|
||||
this.selectedRowKeys = []
|
||||
this.confirmLoading = false
|
||||
this.getList()
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
_this.selectedRowKeys = []
|
||||
_this.selectedRowKeysList = []
|
||||
_this.getList()
|
||||
if (notConditions && notConditions.length > 0) {
|
||||
_this.failedMessage(data)
|
||||
}
|
||||
} else {
|
||||
this.$message.warning(res.message)
|
||||
this.confirmLoading = false
|
||||
_this.$message.warning(res.message)
|
||||
}
|
||||
this.detailedSuccessList = []
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel() {
|
||||
this.formInline = {}
|
||||
this.visible = false
|
||||
},
|
||||
// handleOk() {
|
||||
// this.$refs.ruleForm.validate(valid => {
|
||||
// if (valid) {
|
||||
// let selectedRowKeys = []
|
||||
// this.selectedRowKeysList.forEach(res => {
|
||||
// selectedRowKeys.push(res.id)
|
||||
// })
|
||||
// let query = {
|
||||
// ids: selectedRowKeys.join(','),
|
||||
// projectLibraryId: this.$route.query.id,
|
||||
// ...this.formInline
|
||||
// }
|
||||
// this.confirmLoading = true
|
||||
// postAction('/project/projectCertificationInventoryEO/issue', query).then((res) => {
|
||||
// if (res.success) {
|
||||
// this.$message.success(this.$t('OperationSuccessful'))
|
||||
// this.visible = false
|
||||
// this.selectedRowKeys = []
|
||||
// this.confirmLoading = false
|
||||
// this.getList()
|
||||
// } else {
|
||||
// this.$message.warning(res.message)
|
||||
// this.confirmLoading = false
|
||||
// }
|
||||
// this.detailedSuccessList = []
|
||||
// })
|
||||
// }
|
||||
// })
|
||||
// },
|
||||
// handleCancel() {
|
||||
// this.formInline = {}
|
||||
// this.visible = false
|
||||
// },
|
||||
|
||||
//撤回
|
||||
withdrawClick() {
|
||||
@@ -1085,8 +1217,8 @@
|
||||
},
|
||||
transferListForm() {
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
this.selectedRowKeys = []
|
||||
this.getList()
|
||||
},
|
||||
batSettingForm() {
|
||||
this.pageNo = 1
|
||||
@@ -1103,22 +1235,26 @@
|
||||
},
|
||||
deleteLib(val) {
|
||||
let _this = this
|
||||
this.$confirm({
|
||||
content: _this.$t('ConfirmDelete'),
|
||||
onOk() {
|
||||
deleteAction(_this.url.deleteOne, { id: val.id, projectLibraryId: _this.$route.query.id }).then((res) => {
|
||||
if (res.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
_this.getList()
|
||||
} else {
|
||||
_this.$message.warning(_this.$t('operationFailed'))
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
if (val.flowStatus == 'List to be released' || val.flowStatus == 'Review and pass') {
|
||||
this.$confirm({
|
||||
content: _this.$t('ConfirmDelete'),
|
||||
onOk() {
|
||||
deleteAction(_this.url.deleteOne, { id: val.id, projectLibraryId: _this.$route.query.id }).then((res) => {
|
||||
if (res.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
_this.getList()
|
||||
} else {
|
||||
_this.$message.warning(_this.$t('operationFailed'))
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
} else {
|
||||
this.$message.warning(this.$t('onlyDataWithProcessStatusDeleted'))
|
||||
}
|
||||
},
|
||||
modifyHistoryClick() {
|
||||
this.$refs.modifyHistoryRef.getList()
|
||||
modifyHistoryClick(row) {
|
||||
this.$refs.modifyHistoryRef.getList(row.id)
|
||||
},
|
||||
getRoleByUserId(callback) {
|
||||
getAction('/project/projectCertificationInventoryEO/getRoleByUserId', { projectLibraryId: this.$route.query.id }).then((res) => {
|
||||
@@ -1187,6 +1323,8 @@
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.visibleRoleSwitching = false
|
||||
this.confirmLoadingRoleSwitching = false
|
||||
this.selectedRowKeysList = []
|
||||
this.selectedRowKeys = []
|
||||
this.getList()
|
||||
this.$emit('getRoleSwitch', this.roleSwitchingCode)
|
||||
} else {
|
||||
@@ -1217,7 +1355,7 @@
|
||||
//引用交付物
|
||||
referenceDeliverablesClick() {
|
||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||
this.$refs.referenceDeliverablesListRef.transferModel()
|
||||
this.$refs.referenceDeliverablesListRef.transferModel(JSON.parse(JSON.stringify(this.selectedRowKeys)))
|
||||
} else {
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
}
|
||||
@@ -1326,6 +1464,12 @@
|
||||
this.dataSource = [...this.dataSource]
|
||||
this.preservationClick()
|
||||
},
|
||||
deliveryBlur() {
|
||||
this.preservationClick()
|
||||
},
|
||||
deliveryChange() {
|
||||
this.preservationClick()
|
||||
},
|
||||
CertificationProgressClick(val) {
|
||||
let item = JSON.parse(JSON.stringify(val))
|
||||
item.roleCode = this.roleSwitchingCode
|
||||
|
||||
@@ -1,28 +1,28 @@
|
||||
<template>
|
||||
<a-drawer
|
||||
:title="$t('add')"
|
||||
:maskClosable="false"
|
||||
:width="1000"
|
||||
placement="right"
|
||||
:closable="true"
|
||||
@close="handleCancel"
|
||||
:visible="visible"
|
||||
style="height: 100%;overflow: auto;padding-bottom: 53px;">
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<div>
|
||||
<a-drawer
|
||||
:title="$t('add')"
|
||||
: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-model :model="formInline" :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('regulationNo')">{{$t('regulationNo')}}</span>
|
||||
<span class="title-text-text" :title="$t ('regulationNo')">{{$t('regulationNo')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="regulationNo">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')+$t('regulationNo')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-form-model-item class="itemModel" prop="serialNumber">
|
||||
<a-input @click.native="serialNumberClick"
|
||||
class="box-input"
|
||||
:placeholder="$t('PleaseSelect')+$t('regulationNo')"
|
||||
v-model="formInline.serialNumber"></a-input>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -32,12 +32,14 @@
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<a-form-model-item class="itemModel" prop="dutyTerritory">
|
||||
<j-dict-select-tag class="box-input"
|
||||
:disabled="disabled"
|
||||
@input="handleInput('dutyTerritory')"
|
||||
v-model="formInline.dutyTerritory"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -49,9 +51,9 @@
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="'WVTA ID'">WVTA ID</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<a-form-model-item class="itemModel" prop="wvtaId">
|
||||
<a-input class="box-input"
|
||||
v-model='formInline.dddd'
|
||||
v-model='formInline.wvtaId'
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseEnter')+'WVTA ID'"/>
|
||||
</a-form-model-item>
|
||||
@@ -59,124 +61,182 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
<div v-for="(item,index) in formInline.dataList" :key="index">
|
||||
<div class="header-text">
|
||||
<span>{{$t('itemInformation')}}</span>
|
||||
<div class="box-title-text" style="margin-left: 10px">
|
||||
<a-button @click='addClick(index)' style="margin-right: .8rem" icon="plus">
|
||||
</a-button>
|
||||
<a-button v-if="formInline.dataList.length > 1" @click="deleteClick(index)" type="primary" icon="minus">
|
||||
</a-button>
|
||||
<div class="header-text">
|
||||
{{$t('itemInformation')}}
|
||||
<a-icon class="icon-text" @click="addClick(index)" type="plus-circle"/>
|
||||
<a-icon class="icon-text" v-if="formInline.dataList.length > 1" @click="deleteClick(index)"
|
||||
type="minus-circle"/>
|
||||
</div>
|
||||
</div>
|
||||
<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('category')">{{$t('category')}}</span>
|
||||
<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('category')">{{$t('category')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'dataList.'+index+'.category'"
|
||||
:rules="[{ required: true, message: $t('category') + $t('cannotEmpty'), trigger: 'blur'},
|
||||
{max: 300,message: $t('category') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'}]"
|
||||
>
|
||||
<a-input class="box-input"
|
||||
v-model="item.category"
|
||||
:placeholder="$t('PleaseEnter')+$t('category')"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="category">
|
||||
<a-input class="box-input"
|
||||
v-model="item.category"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')+$t('category')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
</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('inspectionItems')">{{$t('inspectionItems')}}</span>
|
||||
</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('inspectionItems')">{{$t('inspectionItems')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'dataList.'+index+'.inspectionItem'"
|
||||
:rules="[{ required: true, message: $t('inspectionItems') + $t('cannotEmpty'), trigger: 'blur'},
|
||||
{max: 300,message: $t('inspectionItems') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'}]"
|
||||
>
|
||||
<a-input class="box-input"
|
||||
v-model="item.inspectionItem"
|
||||
:placeholder="$t('PleaseEnter')+$t('inspectionItems')"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="inspectionItems">
|
||||
<j-dict-select-tag class="box-input"
|
||||
v-model="item.inspectionItems"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')+$t('inspectionItems')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
</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('Deliverables')">{{$t('Deliverables')}}</span>
|
||||
</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('configurationItem')">{{$t('configurationItem')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'dataList.'+index+'.configItem'"
|
||||
:rules="[{ required: true, message: $t('configurationItem') + $t('cannotEmpty'), trigger: 'blur'},
|
||||
{max: 300,message: $t('configurationItem') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'
|
||||
}]">
|
||||
<a-input class="box-input"
|
||||
v-model="item.configItem"
|
||||
:placeholder="$t('PleaseEnter')+$t('configurationItem')"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="Deliverables">
|
||||
<j-dict-select-tag class="box-input"
|
||||
v-model="item.Deliverables"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')+$t('Deliverables')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</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('typeOfDeliverables')">{{$t('typeOfDeliverables')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel"
|
||||
:prop="'dataList.'+index+'.deliverableType'"
|
||||
:rules="[{ required: true, message: $t('typeOfDeliverables') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||
>
|
||||
<a-tree-select
|
||||
tree-node-filter-prop="title"
|
||||
v-model="item.deliverableType"
|
||||
:maxTagCount="1"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
class="box-input"
|
||||
style="width: 100%"
|
||||
:tree-data="DeliverableTreeList"
|
||||
:placeholder="$t('PleaseSelect')+$t('typeOfDeliverables')"
|
||||
/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
</a-form-model>
|
||||
</a-spin>
|
||||
<div class="drawer-bootom-button">
|
||||
<a-button style="margin-right: .8rem" @click="handleCancel">{{$t('cancel')}}</a-button>
|
||||
<a-button type="primary" @click="handleSubmit" :loading="confirmLoading">{{$t('submit')}}</a-button>
|
||||
</div>
|
||||
</a-drawer>
|
||||
</a-spin>
|
||||
<div class="drawer-bootom-button">
|
||||
<a-button style="margin-right: .8rem" @click="handleCancel">{{$t('cancel')}}</a-button>
|
||||
<a-button type="primary" @click="handleSubmit" :loading="confirmLoading">{{$t('submit')}}</a-button>
|
||||
</div>
|
||||
</a-drawer>
|
||||
<codeNumber ref="codeNumber" @regulation="regulation" />
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import codeNumber from './codeNumber'
|
||||
import { getAction, postAction } from '@/api/manage'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
export default {
|
||||
name:"addModel",
|
||||
props: ['url'],
|
||||
components:{
|
||||
codeNumber
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
visible: false,
|
||||
disabled: false,
|
||||
formInline: {},
|
||||
confirmLoading: false,
|
||||
projectNameList: [],
|
||||
DeliverableTreeList: [],
|
||||
rules: {
|
||||
regulationNo: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: this.$t('regulationNo') + this.$t('cannotEmpty'),
|
||||
// trigger: 'change'
|
||||
// }
|
||||
]
|
||||
serialNumber: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('entryName') + this.$t('regulationNo'),
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
dutyTerritory: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('entryName') + this.$t('areaOfResponsibility'),
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
wvtaId: [
|
||||
{
|
||||
required: true,
|
||||
message: 'WVTA ID' + this.$t('regulationNo'),
|
||||
trigger: 'blur'
|
||||
},
|
||||
{
|
||||
max: 300,
|
||||
message: 'WVTA ID' + this.$t('cannotExceed') + 300 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getDeliverableTree()
|
||||
this.getRegulationNo()
|
||||
},
|
||||
methods: {
|
||||
...mapGetters(['userInfo']),
|
||||
addModel() {
|
||||
this.visible = true
|
||||
this.formInline = {}
|
||||
this.formInline.dataList = [{}]
|
||||
this.formInline = { ...this.formInline }
|
||||
this.$nextTick(() => {
|
||||
this.formInline = { ...this.formInline }
|
||||
this.$refs.ruleForm.clearValidate()
|
||||
this.$refs.codeNumber.number()
|
||||
})
|
||||
},
|
||||
handleCancel() {
|
||||
this.visible = false
|
||||
},
|
||||
handleInput(value) {
|
||||
this.$nextTick(() => {
|
||||
this.formInline = { ...this.formInline }
|
||||
this.$refs.ruleForm.validateField([value])
|
||||
})
|
||||
},
|
||||
handleSubmit() {
|
||||
this.$refs.ruleForm.validate(valid => {
|
||||
if (valid) {
|
||||
this.formInline.authDummyInventoryBaseId = this.$route.query.id
|
||||
let query = JSON.parse(JSON.stringify(this.formInline))
|
||||
query.dataList.forEach(val => {
|
||||
Object.keys(query).forEach(res => {
|
||||
if (query[res] && query[res] instanceof Array) {
|
||||
query[res] = query[res].join(',')
|
||||
}
|
||||
})
|
||||
})
|
||||
this.confirmLoading = true
|
||||
postAction(this.url.addModel, query).then((res) => {
|
||||
if (res.success) {
|
||||
@@ -199,6 +259,46 @@ export default {
|
||||
deleteClick(index) {
|
||||
this.formInline.dataList.splice(index, 1)
|
||||
this.formInline = { ...this.formInline }
|
||||
},
|
||||
getRegulationNo() {
|
||||
let query = {
|
||||
projectLibraryId: this.$route.query.id,
|
||||
roleCode: 0
|
||||
}
|
||||
getAction(this.url.number, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.projectNameList = res.result || []
|
||||
} else {
|
||||
this.projectNameList = []
|
||||
}
|
||||
})
|
||||
},
|
||||
serialNumberChange(value) {
|
||||
let content = this.projectNameList.filter(res => {
|
||||
return res.id === value
|
||||
})
|
||||
this.formInline.bussDocumentLibraryId = content[0].id
|
||||
this.formInline.serialNumber = content[0].serialNumber
|
||||
},
|
||||
getDeliverableTree() {
|
||||
getAction('/sys/category/getCertificationDeliverableTree', {}).then((res) => {
|
||||
if (res.success) {
|
||||
this.DeliverableTreeList = res.result
|
||||
} else {
|
||||
this.DeliverableTreeList = []
|
||||
}
|
||||
})
|
||||
},
|
||||
serialNumberClick(){
|
||||
this.$refs.codeNumber.add()
|
||||
},
|
||||
regulation(item,data) {
|
||||
this.formInline.serialNumber = item
|
||||
this.formInline.bussDocumentLibraryId = data
|
||||
this.$nextTick(()=>{
|
||||
this.formInline = {... this.formInline}
|
||||
this.$refs.ruleForm.validateField(['serialNumber'])
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -246,12 +346,7 @@ export default {
|
||||
|
||||
.header-text {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
margin-left: 15px;
|
||||
/*border-bottom: 1px #d9d9d9 dashed;*/
|
||||
height: 30px;
|
||||
margin-bottom: 30px;
|
||||
display: flex;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.drawer-bootom-button {
|
||||
@@ -266,4 +361,9 @@ export default {
|
||||
background: #fff;
|
||||
border-radius: 0 0 2px 2px;
|
||||
}
|
||||
|
||||
.icon-text {
|
||||
font-size: 16px;
|
||||
margin-right: 4px;
|
||||
}
|
||||
</style>
|
||||
@@ -18,7 +18,6 @@
|
||||
<a-form-model-item class="itemModel-multi">
|
||||
<j-dict-select-tag class="box-input"
|
||||
v-model="formInline.dutyTerritory"
|
||||
@input="handleInput('dutyTerritory')"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
@@ -33,20 +32,19 @@
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text" :title="$t('Deliverables')">{{$t('Deliverables')}}</span>
|
||||
<span class="title-text-text" :title="$t('typeOfDeliverables')">{{$t('typeOfDeliverables')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel-multi">
|
||||
<j-multi-select-tag class="box-input"
|
||||
v-model="formInline.deliverable"
|
||||
@input="handleInput('deliverable')"
|
||||
:placeholder="$t('PleaseSelect')+$t('Deliverables')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formInline.attestationType"-->
|
||||
<!-- @input="handleInput('attestationType')"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('certificationType')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" dictCode="attestation_type"/>-->
|
||||
<a-form-model-item class="itemModel">
|
||||
<a-tree-select
|
||||
tree-node-filter-prop="title"
|
||||
v-model="formInline.deliverableType"
|
||||
:maxTagCount="1"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
class="box-input"
|
||||
style="width: 100%"
|
||||
:tree-data="DeliverableTreeList"
|
||||
:placeholder="$t('PleaseSelect')+$t('typeOfDeliverables')"
|
||||
/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -56,7 +54,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { postAction } from '../../../api/manage'
|
||||
import { getAction, postAction } from '../../../api/manage'
|
||||
|
||||
export default {
|
||||
name: 'batSetting',
|
||||
@@ -68,10 +66,11 @@ export default {
|
||||
formInline: {},
|
||||
rules: {},
|
||||
ids: [],
|
||||
DeliverableTreeList: [],
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.getDeliverableTree()
|
||||
},
|
||||
methods: {
|
||||
edit(data) {
|
||||
@@ -83,8 +82,10 @@ export default {
|
||||
},
|
||||
handleOk() {
|
||||
if (this.formInline.dutyTerritory) {
|
||||
this.formInline.authDummyInventoryBaseId = this.$route.query.id
|
||||
this.handleOnTwo()
|
||||
} else {
|
||||
this.formInline.authDummyInventoryBaseId = this.$route.query.id
|
||||
this.handleOkOne()
|
||||
}
|
||||
},
|
||||
@@ -148,10 +149,19 @@ export default {
|
||||
this.formInline = {}
|
||||
this.visible = false
|
||||
},
|
||||
handleInput(value) {
|
||||
this.$nextTick(() => {
|
||||
this.formInline = { ...this.formInline }
|
||||
this.$refs.ruleForm.validateField([value])
|
||||
// handleInput(value) {
|
||||
// this.$nextTick(() => {
|
||||
// this.formInline = { ...this.formInline }
|
||||
// this.$refs.ruleForm.validateField([value])
|
||||
// })
|
||||
// },
|
||||
getDeliverableTree() {
|
||||
getAction('/sys/category/getCertificationDeliverableTree', {}).then((res) => {
|
||||
if (res.success) {
|
||||
this.DeliverableTreeList = res.result
|
||||
} else {
|
||||
this.DeliverableTreeList = []
|
||||
}
|
||||
})
|
||||
},
|
||||
}
|
||||
|
||||
@@ -0,0 +1,357 @@
|
||||
<template>
|
||||
<div>
|
||||
<!-- <a-input allowClear-->
|
||||
<!-- @click="add"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('regulationNo')"-->
|
||||
<!-- v-model="regulation"></a-input>-->
|
||||
<a-drawer
|
||||
:title="$t('regulationNo')"
|
||||
:width="1000"
|
||||
:visible="visible"
|
||||
placement="right"
|
||||
:maskClosable="false"
|
||||
:closable="true"
|
||||
@close="handleCancel"
|
||||
style="height: 100%;overflow: auto;padding-bottom: 53px;">
|
||||
<div style="margin-bottom: 60px">
|
||||
<div class="table-page-search-wrapper">
|
||||
<a-form layout="inline" @keyup.enter.native="searchQuery">
|
||||
<a-row :gutter="24">
|
||||
<a-col :md="12" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('standard')">
|
||||
<span>{{$t('standard')}}</span>
|
||||
</div>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('standard')"
|
||||
v-model="queryParam.serial_number"></a-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<template v-if="toggleSearchStatus">
|
||||
<a-col :md="12" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('title')">
|
||||
<span>{{$t('title')}}</span>
|
||||
</div>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('title')"
|
||||
v-model="queryParam.title"></a-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :md="12" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('status')">
|
||||
<span>{{$t('status')}}</span>
|
||||
</div>
|
||||
<j-dict-select-tag class="box-input" v-model="queryParam.state"
|
||||
:placeholder="$t('PleaseSelect')+$t('status')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'state'"/>
|
||||
</div>
|
||||
</a-col>
|
||||
</template>
|
||||
<span style="float: right;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-col :md="12" :sm="24">
|
||||
<globalAdvancedQuery ref="globalAdvancedQueryRef"
|
||||
@handleSuperQuery="handleSuperQuery"
|
||||
:fieldList="fieldList"/>
|
||||
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
|
||||
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
|
||||
<a @click="handleToggleSearch" style="margin-left: 8px">
|
||||
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
|
||||
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
|
||||
</a>
|
||||
</a-col>
|
||||
</span>
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
|
||||
<div style="width: 100%">
|
||||
<a-table
|
||||
:columns="columns"
|
||||
:components="drag(columns,'columns')"
|
||||
rowKey="id"
|
||||
:scroll="{x: 1200}"
|
||||
:data-source="dataList"
|
||||
:pagination="false"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
:loading="loading">
|
||||
|
||||
</a-table>
|
||||
</div>
|
||||
|
||||
<div class="page" v-if="dataList.length > 0">
|
||||
<a-pagination
|
||||
:show-total="total => $t('total')+` ${total} `+$t('strip')"
|
||||
show-quick-jumper
|
||||
show-size-changer
|
||||
:page-size.sync="pageSize"
|
||||
:total="total"
|
||||
:current="pageNo"
|
||||
@change="onChange"
|
||||
@showSizeChange="SizeChange"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="drawer-bootom-button">
|
||||
<a-button @click="handleCancel" style="margin-right: 16px">{{$t('cancel')}}</a-button>
|
||||
<a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
|
||||
</div>
|
||||
</a-drawer>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction } from '@/api/manage'
|
||||
import globalAdvancedQuery from '@/components/globalAdvancedQuery/index'
|
||||
import { ResizeHeader, ResizeColumnProvide } from '@/mixins/header'
|
||||
|
||||
export default {
|
||||
name: 'codeNumber',
|
||||
components: {
|
||||
globalAdvancedQuery
|
||||
},
|
||||
mixins: [ResizeHeader, ResizeColumnProvide],
|
||||
data() {
|
||||
return {
|
||||
url: {
|
||||
addModelList: '/dummy/dummyInventoryInfoEO/queryPageDummy',
|
||||
},
|
||||
selectedRowList: [],
|
||||
visible:false,
|
||||
queryParam: {},
|
||||
regulation: '',
|
||||
confirmLoading: false,
|
||||
toggleSearchStatus: false,
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('standard'),
|
||||
dataIndex: 'serial_number',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 228
|
||||
},
|
||||
{
|
||||
title: this.$t('title'),
|
||||
dataIndex: 'title',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 228
|
||||
},
|
||||
{
|
||||
title: this.$t('zoneOfApplication'),
|
||||
dataIndex: 'region',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 228
|
||||
},
|
||||
// {
|
||||
// title: this.$t('status'),
|
||||
// dataIndex: 'state',
|
||||
// align: 'center',
|
||||
// ellipsis: true
|
||||
// },
|
||||
// {
|
||||
// title: this.$t('technicalField'),
|
||||
// dataIndex: 'technology_territory',
|
||||
// align: 'center',
|
||||
// ellipsis: true
|
||||
// },
|
||||
{
|
||||
title: this.$t('ImplementationDate'),
|
||||
dataIndex: 'xin1_che1_xing2_shi2_shi1_ri4_qi1',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 228
|
||||
},
|
||||
{
|
||||
title: this.$t('vehicleInProductionDate'),
|
||||
dataIndex: 'implement_time',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
width: 228
|
||||
}
|
||||
// {
|
||||
// title: this.$t('correspondingStandard'),
|
||||
// dataIndex: 'corresponding_standard',
|
||||
// align: 'center',
|
||||
// ellipsis: true
|
||||
// }
|
||||
],
|
||||
dataList: [],
|
||||
selectedRowKeys: [],
|
||||
loading: false,
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
total: 0,
|
||||
fieldList: [],
|
||||
queryParamQuery: {},
|
||||
queryConditionVOList: []
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
handleToggleSearch() {
|
||||
this.toggleSearchStatus = !this.toggleSearchStatus
|
||||
},
|
||||
add() {
|
||||
this.visible = true
|
||||
this.queryParam = {}
|
||||
this.selectedRowKeys = []
|
||||
this.queryConditionVOList = []
|
||||
this.replacePage()
|
||||
this.queryConditionInventory()
|
||||
},
|
||||
// number() {
|
||||
// this.regulation = ''
|
||||
// },
|
||||
searchQuery() {
|
||||
this.pageNo = 1
|
||||
this.replacePage()
|
||||
},
|
||||
searchReset() {
|
||||
this.pageNo = 1
|
||||
this.queryParam = {}
|
||||
this.queryConditionVOList = []
|
||||
this.$refs.globalAdvancedQueryRef.resetLine()
|
||||
this.$refs.globalAdvancedQueryRef.emitCallback()
|
||||
this.replacePage()
|
||||
},
|
||||
onChange(page, pageSize) {
|
||||
this.pageNo = page
|
||||
this.replacePage()
|
||||
},
|
||||
SizeChange(page, pageSize) {
|
||||
this.pageNo = 1
|
||||
this.pageSize = pageSize
|
||||
this.replacePage()
|
||||
},
|
||||
queryConditionInventory() {
|
||||
let query = {
|
||||
flag: 1
|
||||
}
|
||||
getAction(this.url.queryConditionInventory, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.fieldList = res.result || []
|
||||
} else {
|
||||
this.fieldList = []
|
||||
}
|
||||
})
|
||||
},
|
||||
replacePage() {
|
||||
let queryConditionVOList = JSON.parse(JSON.stringify(this.queryConditionVOList))
|
||||
let query = {
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
...this.queryParam,
|
||||
queryConditionVOList: JSON.stringify(queryConditionVOList)
|
||||
}
|
||||
this.loading = true
|
||||
postAction(this.url.addModelList, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataList = res.result.records || []
|
||||
this.total = res.result.total
|
||||
this.loading = false
|
||||
} else {
|
||||
this.dataList = []
|
||||
this.total = 0
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
onSelectChange(value,row) {
|
||||
this.selectedRowKeys = value
|
||||
this.selectedRowList = row
|
||||
},
|
||||
handleCancel() {
|
||||
this.visible = false
|
||||
},
|
||||
handleSuperQuery(params, matchType) {
|
||||
let sqp = {}
|
||||
if (!params || (params && params.length == 0)) {
|
||||
this.queryConditionVOList = []
|
||||
this.$refs.globalAdvancedQueryRef.superQueryFlag = false
|
||||
} else {
|
||||
this.$refs.globalAdvancedQueryRef.superQueryFlag = true
|
||||
this.queryConditionVOList = params
|
||||
this.queryConditionVOList.forEach(res => {
|
||||
res.type = matchType
|
||||
})
|
||||
}
|
||||
this.replacePage()
|
||||
},
|
||||
handleSubmit() {
|
||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||
this.confirmLoading = true
|
||||
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||
if (this.selectedRowKeys.length < 2){
|
||||
let fgid = this.selectedRowList[0].id
|
||||
let regulationIndex = this.selectedRowList[0].serial_number
|
||||
this.confirmLoading = false
|
||||
this.visible = false
|
||||
this.$emit('regulation',regulationIndex,fgid)
|
||||
} else {
|
||||
this.$message.warning(this.$t('OnlyOneSelected'))
|
||||
this.confirmLoading = false
|
||||
}
|
||||
} else {
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
this.confirmLoading = false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.box-title-text {
|
||||
line-height: 1.4;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.title-text {
|
||||
width: 110px;
|
||||
color: #000F16;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
margin-right: 16px;
|
||||
margin-top: 3px;
|
||||
text-align: right;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.box-input {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
height: 38px;
|
||||
}
|
||||
|
||||
.box-button {
|
||||
height: 38px;
|
||||
}
|
||||
|
||||
.page {
|
||||
text-align: right;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.drawer-bootom-button {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
z-index: 100;
|
||||
border-top: 1px solid #e8e8e8;
|
||||
padding: 10px 16px;
|
||||
text-align: right;
|
||||
left: 0;
|
||||
background: #fff;
|
||||
border-radius: 0 0 2px 2px;
|
||||
}
|
||||
</style>
|
||||
@@ -20,7 +20,7 @@
|
||||
<a-form-model-item class="itemModel" prop="serialNumber">
|
||||
<j-dict-select-tag class="box-input"
|
||||
v-model="formInline.serialNumber"
|
||||
:disabled="disabled"
|
||||
:disabled="true"
|
||||
:placeholder="$t('PleaseSelect')+$t('regulationNo')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
@@ -39,7 +39,7 @@
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -68,12 +68,10 @@
|
||||
<span class="title-text-text" :title="$t('category')">{{$t('category')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="category">
|
||||
<j-dict-select-tag class="box-input"
|
||||
v-model="formInline.category"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')+$t('category')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-input class="box-input"
|
||||
v-model="formInline.category"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseEnter')+$t('category')" />
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -84,12 +82,10 @@
|
||||
<span class="title-text-text" :title="$t('inspectionItems')">{{$t('inspectionItems')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="inspectionItem">
|
||||
<j-dict-select-tag class="box-input"
|
||||
v-model="formInline.inspectionItem"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')+$t('inspectionItems')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-input class="box-input"
|
||||
v-model="formInline.inspectionItem"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseEnter')+$t('inspectionItems')"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -99,15 +95,35 @@
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('Deliverables')">{{$t('Deliverables')}}</span>
|
||||
<span class="title-text-text" :title="$t('configurationItem')">{{$t('configurationItem')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="deliverable">
|
||||
<j-dict-select-tag class="box-input"
|
||||
v-model="formInline.deliverable"
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseSelect')+$t('Deliverables')"
|
||||
:type="'select'"
|
||||
:triggerChange="false"/>
|
||||
<a-form-model-item class="itemModel" prop="configItem">
|
||||
<a-input class="box-input"
|
||||
v-model="formInline.configItem"
|
||||
:placeholder="$t('PleaseEnter')+$t('configurationItem')"/>
|
||||
</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('typeOfDeliverables')">{{$t('typeOfDeliverables')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel"
|
||||
prop="deliverableType"
|
||||
:rules="[{ required: true, message: $t('typeOfDeliverables') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||
>
|
||||
<a-tree-select
|
||||
tree-node-filter-prop="title"
|
||||
v-model="formInline.deliverableType"
|
||||
:maxTagCount="1"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
class="box-input"
|
||||
style="width: 100%"
|
||||
:tree-data="DeliverableTreeList"
|
||||
:placeholder="$t('PleaseSelect')+$t('typeOfDeliverables')"
|
||||
/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -133,6 +149,7 @@ export default {
|
||||
confirmLoading: false,
|
||||
formInline: {},
|
||||
disabled: false,
|
||||
DeliverableTreeList: [],
|
||||
rules: {
|
||||
serialNumber: [
|
||||
{
|
||||
@@ -169,6 +186,18 @@ export default {
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
configItem: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('configurationItem') + this.$t('cannotEmpty'),
|
||||
trigger: 'blur'
|
||||
},
|
||||
{
|
||||
max: 300,
|
||||
message: this.$t('configurationItem') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
deliverable: [
|
||||
{
|
||||
required: true,
|
||||
@@ -179,6 +208,9 @@ export default {
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getDeliverableTree()
|
||||
},
|
||||
methods: {
|
||||
handleCancel() {
|
||||
this.visible = false
|
||||
@@ -187,6 +219,9 @@ export default {
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.formInline = item || {}
|
||||
if (this.formInline.deliverableType) {
|
||||
this.formInline.deliverableType = this.formInline.deliverableType.split(',')
|
||||
}
|
||||
this.$refs.ruleForm.clearValidate()
|
||||
})
|
||||
},
|
||||
@@ -194,6 +229,11 @@ export default {
|
||||
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(',')
|
||||
}
|
||||
})
|
||||
this.confirmLoading = true
|
||||
postAction(this.url.editModel, formInline).then((res) => {
|
||||
if (res.success) {
|
||||
@@ -212,6 +252,15 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
getDeliverableTree() {
|
||||
getAction('/sys/category/getCertificationDeliverableTree', {}).then((res) => {
|
||||
if (res.success) {
|
||||
this.DeliverableTreeList = res.result
|
||||
} else {
|
||||
this.DeliverableTreeList = []
|
||||
}
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
+19
-7
@@ -260,12 +260,13 @@ export default {
|
||||
list: '/authDummy/authDummyInventoryInfoEO/page',
|
||||
logList: '',//更新log
|
||||
exportTemplate: '/authDummy/authDummyInventoryInfoEO/exportTemplate',//模板下载
|
||||
exportData: '',//导出
|
||||
addModel: '/authDummy/authDummyInventoryInfoEO/add',//添加
|
||||
exportData: '/authDummy/authDummyInventoryInfoEO/exportData',//导出
|
||||
addModel: '/authDummy/authDummyInventoryInfoEO/batchAdd',//添加
|
||||
copyInfo: '/authDummy/authDummyInventoryInfoEO/copyInfoByIds',//复制
|
||||
deleteBatch: '/authDummy/authDummyInventoryInfoEO/deleteBatch',//批量删除
|
||||
editModel: '/authDummy/authDummyInventoryInfoEO/edit',//编辑
|
||||
setBatch: '/authDummy/authDummyInventoryInfoEO/setBatch',//批量设置
|
||||
number: '/project/projectLawsInventoryEO/list',
|
||||
},
|
||||
queryParam: {},
|
||||
orderByField: '',
|
||||
@@ -285,6 +286,13 @@ export default {
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'inspectionItems' }
|
||||
},
|
||||
{
|
||||
title: this.$t('configurationItem'),
|
||||
align: 'left',
|
||||
dataIndex: 'configItem',
|
||||
width: 150,
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
title: 'WVTA ID',
|
||||
align: 'left',
|
||||
@@ -302,14 +310,14 @@ export default {
|
||||
{
|
||||
title: this.$t('areaOfResponsibility'),
|
||||
align: 'left',
|
||||
dataIndex: 'dutyTerritory',
|
||||
dataIndex: 'dutyTerritoryName',
|
||||
width: 200,
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
title: this.$t('Deliverables'),
|
||||
title: this.$t('typeOfDeliverables'),
|
||||
align: 'left',
|
||||
dataIndex: 'deliverable',
|
||||
dataIndex: 'deliverableTypeName',
|
||||
width: 200,
|
||||
ellipsis: true,
|
||||
},
|
||||
@@ -392,6 +400,7 @@ export default {
|
||||
created() {
|
||||
if (this.$route.query.title == '虚拟认证清单详情') {
|
||||
document.title = this.$t('virtualAuthenticationListDetails')
|
||||
this.columns.splice(7,1)
|
||||
} else {
|
||||
document.title = this.$t('certificationListMaintenance')
|
||||
}
|
||||
@@ -438,7 +447,7 @@ export default {
|
||||
},
|
||||
//模板下载
|
||||
handleModule() {
|
||||
downloadFile(this.url.exportTemplate, this.$t('VirtualList') + this.$t('importTemplate') + '.xls', {})
|
||||
downloadFile(this.url.exportTemplate, this.$t('VirtualAuthenticationList') + this.$t('importTemplate') + '.xls', {})
|
||||
},
|
||||
//调取
|
||||
// transferClick() {
|
||||
@@ -457,7 +466,7 @@ export default {
|
||||
ids: selectedRowKeys.join(','),
|
||||
dummyInventoryBaseId: this.$route.query.id
|
||||
}
|
||||
downloadFile(this.url.exportData, this.$route.query.name + this.$t('VirtualList') + '.zip', query, this.Deselect)
|
||||
downloadFile(this.url.exportData, this.$route.query.name + this.$t('VirtualAuthenticationList') + '.zip', query, this.Deselect)
|
||||
},
|
||||
Deselect() {
|
||||
this.selectedRowKeys = []
|
||||
@@ -708,4 +717,7 @@ export default {
|
||||
color: #000F16;
|
||||
}
|
||||
|
||||
::v-deep .ant-table-placeholder {
|
||||
margin-top: 8px!important;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user