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

This commit is contained in:
wangzhijiang
2023-03-17 14:13:37 +08:00
20 changed files with 1782 additions and 480 deletions
@@ -36,4 +36,14 @@ public interface ISysDictItemService extends IService<SysDictItem> {
void setEditOrderNum(SysDictItem sysDictItem);
String disposeShowDictItemValue(List<SysDictItem> sysDictItems,String fieldValues,String cut,String dicCode);
/**
* 导入时将item_text处置为item_value存入
* @param sysDictItems
* @param fieldTexts
* @param cut
* @param dicCode
* @return
*/
String disposeShowDictItemText(List<SysDictItem> sysDictItems,String fieldTexts,String cut,String dicCode);
}
@@ -183,4 +183,52 @@ public class SysDictItemServiceImpl extends ServiceImpl<SysDictItemMapper, SysDi
}
return result;
}
/**
* 导入时将item_text处置为item_value存入
* @param sysDictItems
* @param fieldTexts
* @param cut
* @param dicCode
* @return
*/
@Override
public String disposeShowDictItemText(List<SysDictItem> sysDictItems, String fieldTexts, String cut, String dicCode) {
String result = "";
List<SysDictItem> sysDictItemList = sysDictItems.stream().filter(e -> {
boolean flag = false;
if(StringUtils.equals(e.getDictCode(),dicCode)){
flag = true;
}
return flag;
}).distinct().collect(Collectors.toList());
if(CollectionUtils.isNotEmpty(sysDictItemList)){
if(StringUtils.equals(cut, CutEnum.CN.getValue())){
result = sysDictItemList.stream().filter(e -> {
boolean flag = false;
List<String> fieldTextStrList = Arrays.asList(fieldTexts.split(","));
for (String fieldTextStr : fieldTextStrList) {
if(StringUtils.equals(fieldTextStr,e.getItemText())){
flag = true;
break;
}
}
return flag;
}).map(SysDictItem::getItemValue).collect(Collectors.joining(","));
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
result = sysDictItemList.stream().filter(e -> {
boolean flag = false;
List<String> fieldTextStrList = Arrays.asList(fieldTexts.split(","));
for (String fieldTextStr : fieldTextStrList) {
if(StringUtils.equals(fieldTextStr,e.getItemText())){
flag = true;
break;
}
}
return flag;
}).map(SysDictItem::getItemValue).collect(Collectors.joining(","));
}
}
return result;
}
}
@@ -99,5 +99,7 @@ public interface BussDocumentLibraryEOMapper extends BaseMapper<BussDocumentLibr
@Param("id") String id );
List<Map<String, Object>> queryListByIds(@Param("ids") String ids);
BussDocumentLibraryEO getBySerialNumber(@Param("serialNumber") String serialNumber);
}
@@ -115,4 +115,9 @@
#{item}
</foreach>
</select>
<select id="getBySerialNumber" resultType="com.jero.modules.document.entity.BussDocumentLibraryEO">
select * from buss_document_library
where serial_number =#{serialNumber}
</select>
</mapper>
@@ -225,4 +225,11 @@ public interface IBussDocumentLibraryEOService extends IService<BussDocumentLibr
String sqlJoint(List<QueryConditionVO> queryConditionVOList);
int updateES();
/**
* 根据serialNumber获取BussDumentLibrar对象
* @param serialNumber
* @return
*/
BussDocumentLibraryEO getBySerialNumber(String serialNumber);
}
@@ -6632,4 +6632,10 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
return count;
}
@Override
public BussDocumentLibraryEO getBySerialNumber(String serialNumber) {
BussDocumentLibraryEO bySerialNumber = bussDocumentLibraryEOMapper.getBySerialNumber(serialNumber);
return bySerialNumber;
}
}
@@ -21,6 +21,7 @@ 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.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -257,6 +258,34 @@ public class ProjectCertificationInventoryEOController extends JeroController<Pr
projectCertificationInventoryEOService.exportTemplate(projectCertificationInventoryEO,response,request);
}
/**
* 导入数据
*
* @param file
* @param projectCertificationInventoryEO
* @return
*/
@ApiOperation(value="项目库-认证清单表-导入数据", notes="项目库-认证清单表-导入数据")
@RequestMapping(value = "/importData", method = RequestMethod.POST)
public Result<?> importData(@RequestParam(value = "file", required = false) MultipartFile file,
ProjectCertificationInventoryEO projectCertificationInventoryEO) {
projectCertificationInventoryEOService.importData(file,projectCertificationInventoryEO);
return Result.OK("导入成功");
}
/**
* 导出数据
* @param request
* @param projectCertificationInventoryEO
*/
@ApiOperation(value="项目库-认证清单表-导出数据", notes="项目库-认证清单表-导出数据")
@RequestMapping(value = "/exportData",method = RequestMethod.GET)
// @RequiresPermissions("projectLawsInventory:exportData")
public void exportData(HttpServletResponse response,
HttpServletRequest request,
ProjectCertificationInventoryEO projectCertificationInventoryEO) {
projectCertificationInventoryEOService.exportData(response,request, projectCertificationInventoryEO);
}
@AutoLog(value = "项目库-认证清单表-调取添加")
@ApiOperation(value="项目库-认证清单表-调取添加", notes="项目库-认证清单表-调取添加")
@PostMapping(value = "/callAdd")
@@ -3,6 +3,8 @@ package com.jero.modules.project.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -36,110 +38,110 @@ public class ProjectCertificationInventoryEO implements Serializable {
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
private String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
private String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
private Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
private String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
private Date updateTime;
/**所属部门*/
@ApiModelProperty(value = "所属部门")
private java.lang.String sysOrgCode;
private String sysOrgCode;
/**类别*/
@Excel(name = "类别", width = 15)
@ApiModelProperty(value = "类别")
private java.lang.String category;
private String category;
/**检验项目*/
@Excel(name = "检验项目", width = 15)
@ApiModelProperty(value = "检验项目")
private java.lang.String inspectionItem;
private String inspectionItem;
/**配置项*/
@Excel(name = "配置项", width = 15)
@ApiModelProperty(value = "配置项")
@Dict(dicCode = "ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4")
private java.lang.String configItem;
private String configItem;
/**WVTA ID*/
@Excel(name = "WVTA ID", width = 15)
@ApiModelProperty(value = "WVTA ID")
private java.lang.String wvtaId;
private String wvtaId;
/**标准编号*/
@Excel(name = "标准编号", width = 15)
@Excel(name = "*标准编号", width = 15)
@ApiModelProperty(value = "标准编号")
private java.lang.String serialNumber;
private String serialNumber;
/**责任领域*/
@Excel(name = "责任领域", width = 15)
@ApiModelProperty(value = "责任领域")
private java.lang.String dutyTerritory;
private String dutyTerritory;
/**责任领域名称**/
@Excel(name = "*责任领域", width = 15)
@TableField(exist = false)
private String dutyTerritoryName;
/**责任领域名称-英文**/
@TableField(exist = false)
private String dutyTerritoryNameEn;
/**交付物*/
@Excel(name = "交付物", width = 15)
@ApiModelProperty(value = "交付物")
private java.lang.String deliverable;
/**文档库id*/
@Excel(name = "文档库id", width = 15)
@ApiModelProperty(value = "文档库id")
private java.lang.String bussDocumentLibraryId;
/**工程接口人*/
@Excel(name = "工程接口人", width = 15)
/**工程接口人*/
@ApiModelProperty(value = "工程接口人")
private java.lang.String sdt;
/**工程接口人名称**/
@TableField(exist = false)
private String sdt;
/**工程接口人名称**/
@Excel(name = "工程接口人", width = 15)
@TableField(exist = false)
private String sdtName;
/**责任人*/
@Excel(name = "责任人", width = 15)
/**责任人*/
@ApiModelProperty(value = "责任人")
private java.lang.String dutyPerson;
private String dutyPerson;
/**责任人名称**/
@Excel(name = "责任人", width = 15)
@TableField(exist = false)
private String dutyPersonName;
/**交付物类型*/
@Excel(name = "交付物类型", width = 15)
/**交付物类型*/
@ApiModelProperty(value = "交付物类型")
private java.lang.String deliverableType;
private String deliverableType;
// 交付物类型名称
@Excel(name = "交付物类型", width = 15)
@TableField(exist = false)
private String deliverableTypeName;
// 交付物类型名称-英文
@TableField(exist = false)
private String deliverableTypeNameEn;
/**交付物*/
// @Excel(name = "交付物", width = 15)
@ApiModelProperty(value = "交付物")
private String deliverable;
/**文档库id*/
// @Excel(name = "文档库id", width = 15)
@ApiModelProperty(value = "文档库id")
private String bussDocumentLibraryId;
/**交付物模板*/
@Excel(name = "交付物模板", width = 15)
// @Excel(name = "交付物模板", width = 15)
@ApiModelProperty(value = "交付物模板")
private java.lang.String deliverableTemplate;
private String deliverableTemplate;
/**交付物模板名称**/
@TableField(exist = false)
private String deliverableTemplateName;
@@ -147,48 +149,48 @@ public class ProjectCertificationInventoryEO implements Serializable {
/**交付结果*/
@Excel(name = "交付结果", width = 15)
@ApiModelProperty(value = "交付结果")
private java.lang.String deliveryResult;
private String deliveryResult;
/**截止日期*/
@Excel(name = "截止日期", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "截止日期")
private java.util.Date endTime;
private Date endTime;
/**流程状态*/
@Excel(name = "流程状态", width = 15)
@ApiModelProperty(value = "流程状态")
private java.lang.String flowStatus;
private String flowStatus;
// 流程状态展示名称
@Excel(name = "流程状态", width = 15)
@TableField(exist = false)
private String flowStatusName;
/**报告编号*/
@Excel(name = "报告编号", width = 15)
@ApiModelProperty(value = "报告编号")
private java.lang.String reportNumber;
private String reportNumber;
/**产品型号*/
@Excel(name = "产品型号", width = 15)
@ApiModelProperty(value = "产品型号")
private java.lang.String productModel;
private String productModel;
/**生产企业名称*/
@Excel(name = "生产企业名称", width = 15)
@ApiModelProperty(value = "生产企业名称")
private java.lang.String productionEnterpriseName;
private String productionEnterpriseName;
/**认证进度*/
@Excel(name = "认证进度", width = 15)
@ApiModelProperty(value = "认证进度")
private java.lang.String certificationProgress;
private String certificationProgress;
/**认证进度展示名称**/
@TableField(exist = false)
private String certificationProgress_dictText;
@Excel(name = "认证进度备注", width = 15)
// @Excel(name = "认证进度备注", width = 15)
@ApiModelProperty(value = "认证进度备注")
private String certificationProgressRemark;
@@ -208,4 +210,7 @@ public class ProjectCertificationInventoryEO implements Serializable {
/**值类型,对应SysCategoryValueTypeEnum中value**/
@TableField(exist = false)
private String valueType;
@TableField(exist = false)
private String excelName;
}
@@ -0,0 +1,207 @@
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-03
* @Version: V1.0
*/
@Data
@TableName("project_certification_inventory")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="project_certification_inventory对象", description="项目库-认证清单表")
public class ProjectCertificationInventoryEOEn 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 = "Category", width = 15)
@ApiModelProperty(value = "类别")
private java.lang.String category;
/**检验项目*/
@Excel(name = "Inspection Items", width = 15)
@ApiModelProperty(value = "检验项目")
private java.lang.String inspectionItem;
/**配置项*/
@Excel(name = "Configuration Item", width = 15)
@ApiModelProperty(value = "配置项")
@Dict(dicCode = "ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4")
private java.lang.String configItem;
/**WVTA ID*/
@Excel(name = "WVTA ID", width = 15)
@ApiModelProperty(value = "WVTA ID")
private java.lang.String wvtaId;
/**标准编号*/
@Excel(name = "*Standard No", width = 15)
@ApiModelProperty(value = "标准编号")
private java.lang.String serialNumber;
/**责任领域*/
@ApiModelProperty(value = "责任领域")
private java.lang.String dutyTerritory;
/**责任领域名称**/
@Excel(name = "*Responsible Field", width = 15)
@TableField(exist = false)
private String dutyTerritoryName;
/**责任领域名称-英文**/
@TableField(exist = false)
private String dutyTerritoryNameEn;
/**工程接口人*/
@ApiModelProperty(value = "工程接口人")
private java.lang.String sdt;
/**工程接口人名称**/
@Excel(name = "Eng. Interface", width = 15)
@TableField(exist = false)
private String sdtName;
/**责任人*/
@ApiModelProperty(value = "责任人")
private java.lang.String dutyPerson;
/**责任人名称**/
@Excel(name = "Assignee", width = 15)
@TableField(exist = false)
private String dutyPersonName;
/**交付物类型*/
@ApiModelProperty(value = "交付物类型")
private java.lang.String deliverableType;
// 交付物类型名称
@Excel(name = "Deliverable Type", width = 15)
@TableField(exist = false)
private String deliverableTypeName;
// 交付物类型名称-英文
@TableField(exist = false)
private String deliverableTypeNameEn;
/**交付物*/
// @Excel(name = "交付物", width = 15)
@ApiModelProperty(value = "交付物")
private java.lang.String deliverable;
/**文档库id*/
// @Excel(name = "文档库id", width = 15)
@ApiModelProperty(value = "文档库id")
private java.lang.String bussDocumentLibraryId;
/**交付物模板*/
// @Excel(name = "交付物模板", width = 15)
@ApiModelProperty(value = "交付物模板")
private java.lang.String deliverableTemplate;
/**交付物模板名称**/
@TableField(exist = false)
private String deliverableTemplateName;
/**交付结果*/
@Excel(name = "Deliverables Result", width = 15)
@ApiModelProperty(value = "交付结果")
private java.lang.String deliveryResult;
/**截止日期*/
@Excel(name = "Due Date", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "截止日期")
private java.util.Date endTime;
/**流程状态*/
@ApiModelProperty(value = "流程状态")
private java.lang.String flowStatus;
// 流程状态展示名称
@Excel(name = "Process Status", width = 15)
@TableField(exist = false)
private String flowStatusName;
/**报告编号*/
@Excel(name = "Report No", width = 15)
@ApiModelProperty(value = "报告编号")
private java.lang.String reportNumber;
/**产品型号*/
@Excel(name = "Product Model", width = 15)
@ApiModelProperty(value = "产品型号")
private java.lang.String productModel;
/**生产企业名称*/
@Excel(name = "Name Of Manufacturer", width = 15)
@ApiModelProperty(value = "生产企业名称")
private java.lang.String productionEnterpriseName;
/**认证进度*/
@Excel(name = "Homologation Progress", width = 15)
@ApiModelProperty(value = "认证进度")
private java.lang.String certificationProgress;
/**认证进度展示名称**/
@TableField(exist = false)
private String certificationProgress_dictText;
// @Excel(name = "认证进度备注", width = 15)
@ApiModelProperty(value = "认证进度备注")
private String certificationProgressRemark;
/**项目库id*/
@ApiModelProperty(value = "项目库id")
private String projectLibraryId;
@TableField(exist = false)
private String cut;
@TableField(exist = false)
private String ids;
@TableField(exist = false)
private String roleCode;
}
@@ -11,6 +11,7 @@ import com.jero.modules.system.entity.SysCategory;
import com.jero.modules.system.entity.SysRole;
import com.jero.modules.todoCenter.entity.ProcessInfoDetailEO;
import com.jero.modules.todoCenter.entity.ProcessInfoEO;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -93,6 +94,15 @@ public interface IProjectCertificationInventoryEOService extends IService<Projec
*/
void disposeData(List<ProjectCertificationInventoryEO> datas, String cut);
/**
* 导入时的数据处理
* @param datas
* @param cut
*/
void importDisposeData(List<ProjectCertificationInventoryEO> datas, String cut);
String getTreeNameImport(String cut, List<SysCategory> categoryList, List<String> technologyTerritoryList);
String getTreeName(String cut, List<SysCategory> categoryList, List<String> technologyTerritoryList);
/**
@@ -185,6 +195,21 @@ public interface IProjectCertificationInventoryEOService extends IService<Projec
*/
Result<?> callAdd(JSONObject json);
/**
* 导入数据
* @param file
* @param projectCertificationInventoryEO
*/
void importData(MultipartFile file, ProjectCertificationInventoryEO projectCertificationInventoryEO);
/**
* projectCertificationInventoryEO
* @param response
* @param request
* @param projectCertificationInventoryEO
*/
void exportData(HttpServletResponse response, HttpServletRequest request, ProjectCertificationInventoryEO projectCertificationInventoryEO);
/**
* 引用交付物
* @param json
+11 -1
View File
@@ -1511,5 +1511,15 @@ module.exports = {
dateofproduction:'Date of production',
VINcodelist:'VIN code list',
VINcodeupload:'VIN code upload',
Tasknode:'Task Node',
Taskresponsibilityrecognition:'Task responsibility recognition',
uploadattachment:'Upload attachment',
Processhistory:'Process history',
resultofhandling:'Result of handling',
Listoftreatableregulations:'List of treatable regulations',
Listofuntractableregulations:'List of untractable regulations',
project:'Project',
Categoryofdeliverables:'Category of deliverables',
Taskconfirmationresult:'Task confirmation result',
Compliancetaskhandling:'Compliance task handling'
}
+11
View File
@@ -1613,4 +1613,15 @@ module.exports = {
dateofproduction:'生产日期',
VINcodelist:'VIN码清单',
VINcodeupload:'VIN码上传',
Tasknode:'任务节点',
Taskresponsibilityrecognition:'任务责任确认',
uploadattachment:'上传附件',
Processhistory:'流程历史',
resultofhandling:'处理结果',
Listoftreatableregulations:'可处理法规列表',
Listofuntractableregulations:'不可处理法规列表',
project:'项目',
Categoryofdeliverables:"交付物类别",
Taskconfirmationresult:'任务确认结果',
Compliancetaskhandling:'符合性任务办理'
}
@@ -57,6 +57,10 @@
projectLibraryId: {
type: String,
default: ''
},
authDummyInventoryBaseId: {
type: String,
default: ''
}
},
data() {
@@ -76,7 +80,10 @@
return window._CONFIG['domianURL'] + '/' + this.url.importZipUrl + '?cut=' + this.cut + '&paramsTemplateId=' + this.paramsTemplateId
} else if (this.projectLibraryId) {
return window._CONFIG['domianURL'] + '/' + this.url.importZipUrl + '?cut=' + this.cut + '&projectLibraryId=' + this.projectLibraryId
} else if (this.authDummyInventoryBaseId) {
return window._CONFIG['domianURL'] + '/' + this.url.importZipUrl + '?cut=' + this.cut + '&authDummyInventoryBaseId=' + this.authDummyInventoryBaseId
}
return window._CONFIG['domianURL'] + '/' + this.url.importZipUrl + '?cut=' + this.cut
}
},
@@ -567,15 +567,16 @@
},
url: {
list: '/project/projectCertificationInventoryEO/page',
exportTemplate: '',
exportData: '',
exportTemplate: '/project/projectCertificationInventoryEO/exportTemplate',
exportData: '/project/projectCertificationInventoryEO/exportData',
deleteBatch: '/project/projectCertificationInventoryEO/deleteBatch',
setBatch: '/project/projectCertificationInventoryEO/setBatch',
deleteOne: '/project/projectCertificationInventoryEO/delete',
AndUserId: '/project/projectLibraryRoleRelEO/queryByProjectLibraryIdAndUserId',
AndUserIdEdit: '/project/projectLibraryRoleRelEO/edit',
saveBatch: '/project/projectCertificationInventoryEO/saveBatch',
questionUrl: '/project/projectCertificationInventoryEO/expediting'
questionUrl: '/project/projectCertificationInventoryEO/expediting',
importZipUrl: '/project/projectCertificationInventoryEO/importData',
},
dataSource: [],
roleSwitchingCode: '',
@@ -1296,13 +1297,13 @@
this.visibleRoleSwitching = true
this.$nextTick(() => {
this.$refs.ruleFormRoleSwitching.clearValidate()
if (!this.formInlineRoleSwitching.roleSwitchingCode) {
this.formInlineRoleSwitching.roleSwitchingCode = '0'
if (!this.roleSwitchingCode) {
this.roleSwitchingCode = '0'
}
if (!(this.roleSwitchingList.some(val => val.roleCode == this.formInlineRoleSwitching.roleSwitchingCode))) {
this.formInlineRoleSwitching.roleSwitchingCode = this.roleSwitchingList[0] ? this.roleSwitchingList[0].roleCode : ''
if (!(this.roleSwitchingList.some(val => val.roleCode == this.roleSwitchingCode))) {
this.roleSwitchingCode = this.roleSwitchingList[0] ? this.roleSwitchingList[0].roleCode : ''
}
this.roleSwitchingCode = this.formInlineRoleSwitching.roleSwitchingCode
this.formInlineRoleSwitching.roleSwitchingCode = this.roleSwitchingCode
this.formInlineRoleSwitching = { ...this.formInlineRoleSwitching }
})
},
@@ -35,48 +35,48 @@
:triggerChange="false" :dictCode="'duty_territory'" />
</div>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('listConfirmationStatus')">
<span>{{ $t('listConfirmationStatus') }}</span>
</div>
<a-select :placeholder="$t('PleaseSelect')+$t('listConfirmationStatus')"
class="box-input"
allowClear
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="queryParam.inventoryAffirmStatus">
<a-select-option v-for="(item, key) in listOptions"
:key="item.key"
:value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.label ">
{{ item.label }}
</span>
</a-select-option>
</a-select>
</div>
</a-col>
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('taskAffirmStatus')">
<span>{{ $t('taskAffirmStatus') }}</span>
</div>
<a-select :placeholder="$t('PleaseSelect')+$t('taskAffirmStatus')"
class="box-input"
allowClear
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="queryParam.taskAffirmStatus">
<a-select-option v-for="(item, key) in taskOptions"
:key="item.key"
:value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.label ">
{{ item.label }}
</span>
</a-select-option>
</a-select>
</div>
</a-col>
</template>
<!-- <template v-if="toggleSearchStatus">-->
<!-- <a-col :md="6" :sm="8">-->
<!-- <div class="box-title-text">-->
<!-- <div class="title-text" :title="$t('listConfirmationStatus')">-->
<!-- <span>{{ $t('listConfirmationStatus') }}</span>-->
<!-- </div>-->
<!-- <a-select :placeholder="$t('PleaseSelect')+$t('listConfirmationStatus')"-->
<!-- class="box-input"-->
<!-- allowClear-->
<!-- :getPopupContainer="triggerNode=> triggerNode.parentNode"-->
<!-- v-model="queryParam.inventoryAffirmStatus">-->
<!-- <a-select-option v-for="(item, key) in listOptions"-->
<!-- :key="item.key"-->
<!-- :value="item.value">-->
<!-- <span style="display: inline-block;width: 100%" :title=" item.label ">-->
<!-- {{ item.label }}-->
<!-- </span>-->
<!-- </a-select-option>-->
<!-- </a-select>-->
<!-- </div>-->
<!-- </a-col>-->
<!-- <a-col :md="6" :sm="8">-->
<!-- <div class="box-title-text">-->
<!-- <div class="title-text" :title="$t('taskAffirmStatus')">-->
<!-- <span>{{ $t('taskAffirmStatus') }}</span>-->
<!-- </div>-->
<!-- <a-select :placeholder="$t('PleaseSelect')+$t('taskAffirmStatus')"-->
<!-- class="box-input"-->
<!-- allowClear-->
<!-- :getPopupContainer="triggerNode=> triggerNode.parentNode"-->
<!-- v-model="queryParam.taskAffirmStatus">-->
<!-- <a-select-option v-for="(item, key) in taskOptions"-->
<!-- :key="item.key"-->
<!-- :value="item.value">-->
<!-- <span style="display: inline-block;width: 100%" :title=" item.label ">-->
<!-- {{ item.label }}-->
<!-- </span>-->
<!-- </a-select-option>-->
<!-- </a-select>-->
<!-- </div>-->
<!-- </a-col>-->
<!-- </template>-->
<span style="float: right;overflow: hidden;margin-right: 11px; " class="table-page-search-submitButtons">
<a-col :md="6" :sm="24">
<globalAdvancedQuery ref="globalAdvancedQueryRef"
@@ -85,10 +85,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>
@@ -99,22 +99,22 @@
style="overflow:hidden;margin-bottom: 20px">
<div style="float: left;margin-bottom: 0px;margin-left: 20px">
<!-- 调取-->
<div @click="transferClick" class="operator-text" v-if="this.formInlineRoleSwitching.roleSwitchingCode == '0'">
<div @click="transferClick" class="operator-text" v-if="this.roleSwitchingCode == '0'">
<a-icon type="profile" />
{{ $t('Transfer') }}
</div>
<!-- 带入相关人员-->
<div class="operator-text" @click="bringInRelevantPersonnelClick" v-if="this.formInlineRoleSwitching.roleSwitchingCode == '0'">
<div class="operator-text" @click="bringInRelevantPersonnelClick" v-if="this.roleSwitchingCode == '0'">
<a-icon type="user" />
{{ $t('bringInRelevantPersonnel') }}
</div>
<!-- 批量设置-->
<div class="operator-text" @click="batSettingClick" v-if="this.formInlineRoleSwitching.roleSwitchingCode == '0' || this.formInlineRoleSwitching.roleSwitchingCode == '1'">
<div class="operator-text" @click="batSettingClick" v-if="this.roleSwitchingCode == '0' || this.roleSwitchingCode == '1'">
<a-icon type="setting" />
{{ $t('BatchSetting') }}
</div>
<!-- 列表设置-->
<a-popconfirm :visible="customizevisible" overlayClassName="popconfirmmize" placement="bottomRight" v-if="this.formInlineRoleSwitching.roleSwitchingCode == '0' || this.formInlineRoleSwitching.roleSwitchingCode == '1'">
<a-popconfirm :visible="customizevisible" overlayClassName="popconfirmmize" placement="bottomRight" v-if="this.roleSwitchingCode == '0' || this.roleSwitchingCode == '1'">
<template slot="title" id="popconfirmmize">
<div style="height:320px;overflow:scroll;overflow-x: auto;">
<a-checkbox
@@ -141,9 +141,9 @@
<a-icon type="setting" />
{{ $t('customize') }}
</div>
</a-popconfirm v-if="this.formInlineRoleSwitching.roleSwitchingCode == '0' || this.formInlineRoleSwitching.roleSwitchingCode == '1'">
</a-popconfirm>
<!-- 更多-->
<a-popconfirm overlayClassName="popconfirm" placement="bottomRight" v-if="this.formInlineRoleSwitching.roleSwitchingCode == '0'">
<a-popconfirm overlayClassName="popconfirm" placement="bottomRight" v-if="this.roleSwitchingCode == '0'">
<template slot="title" id="popconfirm">
<div style="height:320px;overflow:scroll;overflow-x: auto;">
<!-- 添加-->
@@ -217,33 +217,33 @@
<!-- {{ $t('customize') }}-->
<!-- </div>-->
<div @click="handleExport" v-has="'projectLawsInventory:exportData'"
v-if="this.formInlineRoleSwitching.roleSwitchingCode == '1' || this.formInlineRoleSwitching.roleSwitchingCode == '2' || this.formInlineRoleSwitching.roleSwitchingCode == '30' || this.formInlineRoleSwitching.roleSwitchingCode == '31'"
v-if="this.roleSwitchingCode == '1' || this.roleSwitchingCode == '2' || this.roleSwitchingCode == '30' || this.roleSwitchingCode == '31'"
class="operator-text">
<a-icon type="export" :rotate="-90" />
{{ $t('export') }}
</div>
<!-- 发布-->
<div class="operator-text" @click="initiateListConfirmationcClick('清单')" v-if="this.formInlineRoleSwitching.roleSwitchingCode == '0'">
<div class="operator-text" @click="initiateListConfirmationcClick('清单')" v-if="this.roleSwitchingCode == '0'">
<a-icon type="solution" />
{{ $t('release') }}
</div>
<!-- 撤回-->
<div class="operator-text" @click="withdrawnClick" v-if="this.formInlineRoleSwitching.roleSwitchingCode == '0'">
<div class="operator-text" @click="withdrawnClick" v-if="this.roleSwitchingCode == '0'">
<a-icon type="rollback" />
{{ $t('withdraw') }}
</div>
<!-- 发起任务-->
<div class="operator-text" @click="submitClick(0)" v-if="this.formInlineRoleSwitching.roleSwitchingCode == '1'">
<div class="operator-text" @click="submitClick(0)" v-if="this.roleSwitchingCode == '1'">
<a-icon type="check-circle" />
{{ $t('initiateTask') }}
</div>
<!-- 退回-->
<div class="operator-text" @click="submitClick(1)" v-if="this.formInlineRoleSwitching.roleSwitchingCode == '1'">
<div class="operator-text" @click="submitClick(1)" v-if="this.roleSwitchingCode == '1'">
<a-icon type="close-circle" />
{{ $t('sendBack') }}
</div>
<!-- 催办-->
<div class="operator-text" @click="questionClick" v-if="this.formInlineRoleSwitching.roleSwitchingCode == '0' || this.formInlineRoleSwitching.roleSwitchingCode == '1' || this.formInlineRoleSwitching.roleSwitchingCode == '30'">
<div class="operator-text" @click="questionClick" v-if="this.roleSwitchingCode == '0' || this.roleSwitchingCode == '1' || this.roleSwitchingCode == '30'">
<a-icon type="sound" />
{{ $t('question') }}
</div>
@@ -1410,6 +1410,7 @@ export default {
}
]
},
roleSwitchingCode:'',
detailedSuccessList: [],
detailedWarningList: [],
rowKeysSuccessList: [],
@@ -1490,10 +1491,9 @@ export default {
} else {
roleCodeIndex = 4
}
console.log(this.formInlineRoleSwitching.roleSwitchingCode)
if (this.formInlineRoleSwitching.roleSwitchingCode == '11' ||
this.formInlineRoleSwitching.roleSwitchingCode == '12' ||
this.formInlineRoleSwitching.roleSwitchingCode == '13') {
if (this.roleSwitchingCode == '11' ||
this.roleSwitchingCode == '12' ||
this.roleSwitchingCode == '13') {
roleCodeIndex = 0
}
row.roleCodeIndex = roleCodeIndex
@@ -1543,6 +1543,7 @@ export default {
this.isRoleSwitching = false
}
}
this.roleSwitchingCode = this.formInlineRoleSwitching.roleSwitchingCode
this.$emit('getRoleSwitch',this.formInlineRoleSwitching.roleSwitchingCode)
this.getList()
// this.JLoading = false
@@ -1569,9 +1570,9 @@ export default {
} else {
roleCodeIndex = 4
}
if (this.formInlineRoleSwitching.roleSwitchingCode == '11' ||
this.formInlineRoleSwitching.roleSwitchingCode == '12' ||
this.formInlineRoleSwitching.roleSwitchingCode == '13') {
if (this.roleSwitchingCode == '11' ||
this.roleSwitchingCode == '12' ||
this.roleSwitchingCode == '13') {
roleCodeIndex = 0
}
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
@@ -1613,7 +1614,7 @@ export default {
this.$refs.transferListRef.transferModel()
},
batSettingClick() {
let code = this.formInlineRoleSwitching.roleSwitchingCode
let code = this.roleSwitchingCode
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
this.$refs.batSettingRef.edit(JSON.parse(JSON.stringify(this.selectedRowKeys)),code)
} else {
@@ -1844,6 +1845,7 @@ export default {
this.isRoleSwitching = false
}
}
this.roleSwitchingCode = this.formInlineRoleSwitching.roleSwitchingCode
this.$message.success(this.$t('OperationSuccessful'))
this.visibleRoleSwitching = false
this.confirmLoadingRoleSwitching = false
@@ -1864,12 +1866,13 @@ export default {
this.visibleRoleSwitching = true
this.$nextTick(() => {
this.$refs.ruleFormRoleSwitching.clearValidate()
if (!this.formInlineRoleSwitching.roleSwitchingCode) {
this.formInlineRoleSwitching.roleSwitchingCode = '0'
if (!this.roleSwitchingCode) {
this.roleSwitchingCode = '0'
}
if (!(this.roleSwitchingList.some(val => val.roleCode == this.formInlineRoleSwitching.roleSwitchingCode))) {
this.formInlineRoleSwitching.roleSwitchingCode = this.roleSwitchingList[0] ? this.roleSwitchingList[0].roleCode : ''
if (!(this.roleSwitchingList.some(val => val.roleCode == this.roleSwitchingCode))) {
this.roleSwitchingCode = this.roleSwitchingList[0] ? this.roleSwitchingList[0].roleCode : ''
}
this.formInlineRoleSwitching.roleSwitchingCode = this.roleSwitchingCode
this.formInlineRoleSwitching = { ...this.formInlineRoleSwitching }
})
},
@@ -1922,9 +1925,9 @@ export default {
} else {
roleCodeIndex = 4
}
if (this.formInlineRoleSwitching.roleSwitchingCode == '11' ||
this.formInlineRoleSwitching.roleSwitchingCode == '12' ||
this.formInlineRoleSwitching.roleSwitchingCode == '13') {
if (this.roleSwitchingCode == '11' ||
this.roleSwitchingCode == '12' ||
this.roleSwitchingCode == '13') {
roleCodeIndex = 0
}
item.roleCodeIndex = roleCodeIndex
@@ -2076,9 +2079,9 @@ export default {
} else {
roleCode = 4
}
if (this.formInlineRoleSwitching.roleSwitchingCode == '11' || this.formInlineRoleSwitching.roleSwitchingCode == '12') {
if (this.roleSwitchingCode == '11' || this.roleSwitchingCode == '12') {
roleCode = 0
} else if (this.formInlineRoleSwitching.roleSwitchingCode == '13') {
} else if (this.roleSwitchingCode == '13') {
roleCode = 13
}
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
@@ -0,0 +1,212 @@
<template>
<a-drawer
:title="titlename == 1 ? this.$t('Taskresponsibilityrecognition'): this.$t('complianceConfirmation')"
:maskClosable="false"
:width="948"
placement="right"
:closable="true"
@close="handleCancel"
:visible="visible"
style="height: 100%;overflow: auto;padding-bottom: 53px;">
<div style="margin-bottom: 20px">
<div class="header-text">
{{$t('Listoftreatableregulations')}}
</div>
<a-table
:pagination="false"
:scroll="{x: '100%'}"
rowKey="id"
:columns="columns">
</a-table>
</div>
<div style="margin-bottom: 20px">
<div class="header-text">
{{$t('Listofuntractableregulations')}}
</div>
<a-table
:pagination="false"
:scroll="{x: '100%'}"
rowKey="id"
:columns="columns">
</a-table>
</div>
<div style="margin-bottom: 40px">
<div class="header-text">
{{titlename == 1 ? this.$t('Taskconfirmationresult'): this.$t('Compliancetaskhandling')}}
</div>
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('resultofhandling')">{{$t('resultofhandling')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-radio-group>
<a-radio value="1">
{{$t('accept')}}
</a-radio>
<a-radio value="2">
{{$t('refuse')}}
</a-radio>
</a-radio-group>
</a-form-model-item>
</div>
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('feedbackMessage')">{{$t('feedbackMessage')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-textarea :placeholder="$t('pleaseEnter')+$t('feedbackMessage')"
rows="4"/>
</a-form-model-item>
</div>
<div class="box-title-text" v-if="titlename == 1 ? false:true">
<div class="title-text">
<span class="title-text-text" :title="$t('enclosure')">{{$t('enclosure')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-button type="primary" class="button-text">{{$t('uploadattachment')}}</a-button>
</a-form-model-item>
</div>
</div>
<div class="drawer-bootom-button">
<a-button style="margin-right: .8rem" @click="handleCancel">{{$t('cancel')}}</a-button>
<a-button type="primary">{{$t('determine')}}</a-button>
</div>
</a-drawer>
</template>
<script>
export default {
name:'confirmationDrawer',
props: {
},
data() {
return {
titlename:'',
allTitle: '',
visible:false,
columns:[
{
title: this.$t('project'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 170
},
{
title: this.$t('standard'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 170
},
{
title: this.$t('areaOfResponsibility'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 120
},
{
title: this.$t('taskType'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 150
},
{
title: this.$t('Categoryofdeliverables'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 120
},
{
title: this.$t('closingDate'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 170
},
]
}
},
methods:{
confirmation(data){
this.visible = true
this.$nextTick(()=>{
this.titlename = data
})
},
handleCancel(){
this.visible = false
this.titlename = ''
}
}
}
</script>
<style scoped>
.header-text {
font-size: 14px;
font-weight: bold;
height: 24px;
margin-bottom: 20px;
}
.box-title-text {
line-height: 1.4;
display: flex;
/*align-items: center;*/
}
.title-text {
width: 88px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 48px;
color: #000F16;
}
.title-text-text {
margin-top: 9px;
}
.itemModel {
width: 100%;
display: inline-block;
margin-top: 2px;
margin-bottom: 12px;
}
.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;
}
/*.button-text {*/
/* height: 38px;*/
/* width: calc(100% - 250px);*/
/* line-height: 38px;*/
/* background: #fff;*/
/* border: 1px #00B3BE solid;*/
/* color: #00B3BE;*/
/*}*/
</style>
@@ -10,6 +10,7 @@
rowKey="id"
:data-source="dataSource"
:columns="columns"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
>
<!-- -->
<span slot="endTime" slot-scope="text,record">
@@ -44,20 +45,208 @@
@showSizeChange="SizeChange"
/>
</div>
<a-drawer
:title="title"
:maskClosable="false"
:width="948"
placement="right"
:closable="true"
@close="handleCancel"
:visible="visible"
style="height: 100%;overflow: auto;padding-bottom: 53px;">
<div style="margin-bottom: 40px">
<div class="header-text">
{{$t('basicInformation')}}
</div>
<div class="content-text">
<div class="text-field" v-for="(item,index) in projectInformationList" :key="index">
<span class="text-field-left" :title="item.title">{{item.title}}</span>
<span class="text-field-right text-field-right-url"
:title="queryForm[item.value]"
v-if="item.type == 1"
>{{queryForm[item.value]}}</span>
<span class="text-field-right text-field-right-url"
v-else-if="item.type == '4'" :title="queryForm[item.value]"
>{{queryForm[item.value]}}</span>
<span class="text-field-right" v-else :title="queryForm[item.value]"
>{{queryForm[item.value]}}</span>
</div>
</div>
</div>
<div style="margin-bottom: 40px">
<div class="header-text">
{{$t('TaskRequirements')}}
</div>
<div class="content-text">
<div class="text-field" :class="{'text-content-button-one':item.type == 4 ? true :false}"
v-for="(item,index) in standardContentList" :key="index">
<span class="text-field-left" :title="item.title">{{item.title}}</span>
<span class="text-field-right text-field-right-url"
v-if="item.type == 1"
></span>
<span class="text-field-right text-field-right-url"
v-else-if="item.type == '5'"
></span>
<span class="text-field-right text-field-right-url"
v-else-if="item.type == 2"
>{{ $t('viewFile') }}</span>
<span class="text-field-right" v-else
></span>
</div>
</div>
</div>
<div style="margin-bottom: 40px">
<div class="header-text">
{{$t('personLiableConfirm')}}
</div>
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text" :title="$t('reviewResults')">{{$t('reviewResults')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-radio-group>
<a-radio value="Compliance">
{{$t('accord')}}
</a-radio>
<a-radio value="Non-Compliance">
{{$t('nonConformity')}}
</a-radio>
<a-radio value="To be tracked">
{{$t('Tracked')}}
</a-radio>
<a-radio value="NA">
{{$t('notInvolved')}}
</a-radio>
<a-radio>
{{$t('turnToDo')}}
</a-radio>
</a-radio-group>
</a-form-model-item>
</div>
<div class="box-title-text">
<div class="title-text">
<span class="Required">*</span>
<span class="title-text-text" :title="$t('feedbackMessage')">{{$t('feedbackMessage')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-textarea :placeholder="$t('pleaseEnter')+$t('feedbackMessage')"
rows="4"/>
</a-form-model-item>
</div>
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('enclosure')">{{$t('enclosure')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-button type="primary" class="button-text">{{$t('uploadattachment')}}</a-button>
</a-form-model-item>
</div>
</div>
<div style="margin-bottom: 40px">
<div class="header-text">
{{$t('circulationHistory')}}
</div>
<div class="process-content">
<div style="display: flex;justify-content: space-between">
<div class="process-content-content">
<img src="../../../../assets/wancheng.png" class="process-content-left" alt="">
<img src="../../../../assets/shijian.png" class="process-content-left" alt="">
<img src="../../../../assets/xian.png" class="process-content-left" alt="">
<div class="process-content-right">
<div class="process-content-right-top"></div>
</div>
</div>
</div>
<div class="process-content-right-xian"></div>
</div>
<a-table
:pagination="false"
:scroll="{x: '100%'}"
rowKey="id"
:columns="Historycolumns"
>
</a-table>
</div>
<div class="drawer-bootom-button">
<a-button style="margin-right: .8rem" @click="handleCancel">{{$t('cancel')}}</a-button>
<a-button style="margin-right: .8rem" type="danger">{{$t('sendBack')}}</a-button>
<a-button type="primary">{{$t('adopt')}}</a-button>
</div>
</a-drawer>
</div>
</template>
<script>
import { getAction, postAction, deleteAction } from '@/api/manage'
import { ResizeHeader, ResizeColumnProvide } from '@/mixins/header'
import confirmationDrawer from './confirmationDrawer'
export default {
name: 'dealtWith',
mixins:[ResizeHeader, ResizeColumnProvide],
components:{
confirmationDrawer
},
mixins:[ResizeHeader, ResizeColumnProvide,],
data() {
return {
visible: false,
title:'',
queryForm: {},
dataSource: [],
loading: false,
projectInformationList: [
{
title: this.$t('entryName'),
value: 'projectName'
},
{
title: this.$t('regulationNo'),
value: 'targetMarket_dictText'
},
{
title: this.$t('title'),
value: 'subtitle'
},
{
title: this.$t('subtitle'),
value: 'serialNumber',
type: '4'
},
{
title: this.$t('applicableSupplement'),
value: 'title'
},
],
standardContentList: [
{
title: this.$t('Sponsor'),
value: this.$route.query.Sponsor
},
{
title: this.$t('personLiable'),
value: this.$route.query.personLiable
},
{
title: this.$t('closingDate'),
value: this.$route.query.DueDate
},
{
title: this.$t('typeOfDeliverables'),
value: this.$route.query.typeOfDeliverables
},
{
title: this.$t('deliverableTemplate'),
value: this.$route.query.deliverableTemplate,
type: 2
},
{},
{
title: this.$t('descriptionDeliverables'),
value: this.$route.query.remarks
}
],
columns: [
{
title: this.$t('RelatedItems'),
@@ -82,6 +271,20 @@
ellipsis: true,
width: 170
},
{
title: this.$t('Tasknode'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 170
},
{
title: this.$t('typeOfDeliverables'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 170
},
{
title: this.$t('Sponsor'),
align: 'left',
@@ -97,14 +300,14 @@
width: 170,
scopedSlots: { customRender: 'endTime' }
},
{
title: this.$t('taskStatus'),
align: 'left',
dataIndex: 'statusShow',
ellipsis: true,
width: 170,
scopedSlots: { customRender: 'taskStatus' }
},
// {
// title: this.$t('taskStatus'),
// align: 'left',
// dataIndex: 'statusShow',
// ellipsis: true,
// width: 170,
// scopedSlots: { customRender: 'taskStatus' }
// },
{
title: this.$t('operation'),
align: 'left',
@@ -113,14 +316,53 @@
scopedSlots: { customRender: 'operation' }
}
],
Historycolumns: [
{
title: this.$t('Operator'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 170
},
{
title: this.$t('Tasknode'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 170
},
{
title: this.$t('OperationTime'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 170
},
{
title: this.$t('resultofhandling'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 170
},
{
title: this.$t('OperationContent'),
align: 'left',
dataIndex: '',
ellipsis: true,
width: 210
},
],
selectedRowKeys: [],
pageSize: 10,
pageNo: 1,
total: 0,
url: {
list: '/todoCenter/projectProcess/todoTaskList'
list: '/todoCenter/projectProcess/todoTaskList',
urlFrom: 'project/projectLibraryBase/queryById',
},
queryParam: {}
queryParam: {},
regulatoryCertificationTaskPlanList: []
}
},
mounted() {
@@ -130,6 +372,10 @@
this.getList()
},
methods: {
onSelectChange(value) {
this.selectedRowKeys = value
console.log(this.selectedRowKeys)
},
RelatedItemsClick(item) {
let newUrl = this.$router.resolve({
path: '/ProjectDetails',
@@ -223,11 +469,15 @@
primaryKeyId: row.primaryKeyId,
PersonChargeFeedback: row.personChargeFeedback
}
let newUrl = this.$router.resolve({
path: '/taskListProcess',
query: query
})
window.open(newUrl.href, '_blank')
// let newUrl = this.$router.resolve({
// path: '/taskListProcess',
// query: query
// })
// window.open(newUrl.href, '_blank')
this.visible = true
this.title = this.$t('designComplianceReview')
this.getQueryForm()
} else if (row.flowType == '3') {
row.taskId = row.taskId + ''
if (row.taskId.length > 30) {
@@ -291,11 +541,13 @@
primaryKeyId: row.primaryKeyId,
PersonChargeFeedback: row.personChargeFeedback
}
let newUrl = this.$router.resolve({
path: '/taskListProcess',
query: query
})
window.open(newUrl.href, '_blank')
// let newUrl = this.$router.resolve({
// path: '/taskListProcess',
// query: query
// })
// window.open(newUrl.href, '_blank')
this.visible = true
this.title = this.$t('verificationComplianceReview')
}
},
searchQuery(value) {
@@ -344,12 +596,28 @@
this.loading = false
}
})
}
},
handleCancel() {
this.visible = false
},
getQueryForm() {
getAction(this.url.urlFrom).then((res) => {
if (res.success) {
this.queryForm = res.result[0] || {}
if (this.queryProject) {
this.queryForm = { ...this.queryForm, ...this.queryProject }
console.log(this.queryForm)
}
} else {
this.queryForm = {}
}
})
},
}
}
</script>
<style scoped>
<style lang="less" scoped>
@import '~@assets/less/common.less';
.page {
text-align: right;
@@ -359,4 +627,177 @@
.activeRed {
color: red;
}
.header-text {
/*font-size: 16px;*/
font-size: 14px;
font-weight: bold;
/*margin-left: 15px;*/
/*border-bottom: 1px #d9d9d9 dashed;*/
/*height: 30px;*/
height: 24px;
/*margin-bottom: 30px;*/
margin-bottom: 20px;
}
.text-field-left {
width: 124px;
display: inline-block;
font-size: 14px;
font-weight: 400;
color: #6F7385;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
margin-right: 24px;
}
.content-text {
width: 100%;
display: flex;
flex-wrap: wrap;
.text-field {
width: 50%;
margin-bottom: 8px;
.text-field-right {
width: calc(100% - 200px);
display: inline-block;
font-size: 14px;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
word-break: break-word;
color: #040B29;
font-weight: 400;
}
.text-field-right-url {
color: #00B3BE !important;
cursor: pointer;
}
}
}
.itemModel {
width: 100%;
display: inline-block;
margin-top: 2px;
margin-bottom: 12px;
}
.box-title-text {
line-height: 1.4;
display: flex;
/*align-items: center;*/
}
.title-text {
width: 88px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 48px;
color: #000F16;
}
.Required {
color: red;
margin-right: 4px;
}
.title-text-text {
margin-top: 9px;
}
.box-input {
display: inline-block;
height: 38px;
width: 100%;
}
//
//.button-text {
// height: 38px;
// width: calc(100% - 250px);
// line-height: 38px;
// background: #fff;
// border: 1px #00B3BE solid;
// color: #00B3BE;
//}
.process-content {
margin-top: 4px;
position: relative;
margin-bottom: 20px;
.process-content-content {
background: #fff;
z-index: 1000;
padding: 0 20px;
.process-content-left {
float: left;
}
.process-content-right {
float: left;
margin-left: 7px;
.process-content-right-top {
font-size: 14px;
font-weight: 400;
color: #040B29;
max-width: 155px;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
.process-content-right-button {
max-width: 155px;
font-size: 12px;
font-weight: 400;
color: #6F7385;
margin-top: -4px;
}
}
}
.process-content-content:first-child {
padding: 0 20px 0 0;
}
.process-content-content:last-child {
padding: 0 0 0 20px;
}
.process-content-right-xian {
height: 2px;
width: calc(100% - 27px);
background: #E6E6E9;
position: absolute;
top: 16px;
}
}
.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;
}
</style>
@@ -76,11 +76,17 @@
</a-row>
</a-form>
</div>
<div class="table-operator" style="margin-bottom: 8px">
<div @click="taskConfirmationHandlingClick"
<div class="table-operator" style="margin-bottom: 8px"
v-if="tabActive == $t('toDoProcess')">
<div @click="TaskresponsibilityrecognitionClick"
class="operator-text">
<a-icon type="form"/>
{{$t('taskConfirmationHandling')}}
{{$t('Taskresponsibilityrecognition')}}
</div>
<div @click="complianceConfirmationClick"
class="operator-text">
<a-icon type="form"/>
{{$t('complianceConfirmation')}}
</div>
</div>
<a-tabs v-model="tabActive" @change="callback">
@@ -94,6 +100,7 @@
<SentList v-if="tabActive == $t('sentProcess')" ref="SentListRef"/>
</a-tab-pane>
</a-tabs>
<confirmation-drawer ref="confirmationdrawer"></confirmation-drawer>
</a-card>
</template>
@@ -102,16 +109,19 @@
import dealtWith from './components/dealtWith'
import doneList from './components/doneList'
import SentList from './components/SentList'
import confirmationDrawer from './components/confirmationDrawer'
export default {
name: 'index',
components: {
dealtWith,
doneList,
SentList
SentList,
confirmationDrawer
},
data() {
return {
title: '',
queryParam: {
projectName:this.$route.query.projectName?this.$route.query.projectName:''
},
@@ -164,6 +174,14 @@
}
},
methods: {
TaskresponsibilityrecognitionClick() {
this.$refs.confirmationdrawer.confirmation(1)
// this.title = this.$t('Taskresponsibilityrecognition')
},
complianceConfirmationClick() {
this.$refs.confirmationdrawer.confirmation(2)
// this.title = this.$t('complianceConfirmation')
},
callback(value) {
this.tabActive = value
},
@@ -189,11 +207,11 @@
this.$refs.SentListRef.searchReset()
}
},
taskConfirmationHandlingClick() {
this.$router.push({
path: '/toDoTaskConfirmation'
})
}
// taskConfirmationHandlingClick() {
// this.$router.push({
// path: '/toDoTaskConfirmation'
// })
// }
}
}
</script>
@@ -86,7 +86,7 @@
<!-- </div>-->
<!-- v-if="isTrue"-->
<div v-if="isTrue" class="operator-text" v-has="'dummyInventoryInfo:importData'" >
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true"
<ImportFile :url="url" :authDummyInventoryBaseId="$route.query.id" :isTrue="true"
:accept="'.zip'"/>
</div>
<!-- 模板下载-->
@@ -266,6 +266,7 @@ export default {
deleteBatch: '/authDummy/authDummyInventoryInfoEO/deleteBatch',//批量删除
editModel: '/authDummy/authDummyInventoryInfoEO/edit',//编辑
setBatch: '/authDummy/authDummyInventoryInfoEO/setBatch',//批量设置
importZipUrl: '/authDummy/authDummyInventoryInfoEO/importData',//导入
number: '/project/projectLawsInventoryEO/list',
},
queryParam: {},
@@ -464,7 +465,7 @@ export default {
...this.queryParam,
...this.queryParamQuery,
ids: selectedRowKeys.join(','),
dummyInventoryBaseId: this.$route.query.id
authDummyInventoryBaseId: this.$route.query.id
}
downloadFile(this.url.exportData, this.$route.query.name + this.$t('VirtualAuthenticationList') + '.zip', query, this.Deselect)
},