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

This commit is contained in:
wangzhijiang
2022-08-04 18:07:09 +08:00
32 changed files with 570 additions and 371 deletions
@@ -100,7 +100,7 @@ public class LawsMonthlyReportTitleTemplateEOController extends JeroController<L
*/ */
@AutoLog(value = "月报标题模板-编辑") @AutoLog(value = "月报标题模板-编辑")
@ApiOperation(value="月报标题模板-编辑", notes="月报标题模板-编辑") @ApiOperation(value="月报标题模板-编辑", notes="月报标题模板-编辑")
@GetMapping(value = "/edit") @PostMapping(value = "/edit")
public Result<?> edit(@Validated @RequestBody LawsMonthlyReportTitleTemplateEO lawsMonthlyReportTitleTemplateEO) { public Result<?> edit(@Validated @RequestBody LawsMonthlyReportTitleTemplateEO lawsMonthlyReportTitleTemplateEO) {
lawsMonthlyReportTitleTemplateEOService.editById(lawsMonthlyReportTitleTemplateEO); lawsMonthlyReportTitleTemplateEOService.editById(lawsMonthlyReportTitleTemplateEO);
return Result.OK("编辑成功!"); return Result.OK("编辑成功!");
@@ -103,6 +103,7 @@ public class LawsMonthlyReportManageEOServiceImpl extends ServiceImpl<LawsMonthl
query.in("create_by",sysUser.getUsername()).in("issue_status", InventoryStateEnum.TO_BE_RELEASED.getValue()) query.in("create_by",sysUser.getUsername()).in("issue_status", InventoryStateEnum.TO_BE_RELEASED.getValue())
.or().in("issue_status",InventoryStateEnum.ISSUE.getValue()); .or().in("issue_status",InventoryStateEnum.ISSUE.getValue());
}); });
queryWrapper.orderByDesc("create_time");
Page<LawsMonthlyReportManageEO> pageInfo = this.page(page, queryWrapper); Page<LawsMonthlyReportManageEO> pageInfo = this.page(page, queryWrapper);
return pageInfo; return pageInfo;
} }
@@ -5,12 +5,15 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.CutEnum; import com.jero.common.constant.enums.CutEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.query.QueryGenerator;
import com.jero.modules.report.entity.LawsMonthlyReportTitleTemplateEO; import com.jero.modules.report.entity.LawsMonthlyReportTitleTemplateEO;
import com.jero.modules.report.entity.LawsMonthlyReportWriteEO;
import com.jero.modules.report.mapper.LawsMonthlyReportTitleTemplateEOMapper; import com.jero.modules.report.mapper.LawsMonthlyReportTitleTemplateEOMapper;
import com.jero.modules.report.service.ILawsMonthlyReportTitleTemplateEOService; import com.jero.modules.report.service.ILawsMonthlyReportTitleTemplateEOService;
import com.jero.modules.report.vo.LawsMonthlyReportTitleTemplateVO; import com.jero.modules.report.vo.LawsMonthlyReportTitleTemplateVO;
import com.jero.modules.system.util.StringUtils; import com.jero.modules.system.util.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
@@ -30,6 +33,8 @@ import java.util.stream.Collectors;
@Service @Service
public class LawsMonthlyReportTitleTemplateEOServiceImpl extends ServiceImpl<LawsMonthlyReportTitleTemplateEOMapper, LawsMonthlyReportTitleTemplateEO> implements ILawsMonthlyReportTitleTemplateEOService { public class LawsMonthlyReportTitleTemplateEOServiceImpl extends ServiceImpl<LawsMonthlyReportTitleTemplateEOMapper, LawsMonthlyReportTitleTemplateEO> implements ILawsMonthlyReportTitleTemplateEOService {
@Autowired
private LawsMonthlyReportWriteEOServiceImpl lawsMonthlyReportWriteEOService;
/** /**
* 保存 * 保存
* *
@@ -98,7 +103,22 @@ public class LawsMonthlyReportTitleTemplateEOServiceImpl extends ServiceImpl<Law
*/ */
@Override @Override
public void deleteByIds(List<String> ids) { public void deleteByIds(List<String> ids) {
removeByIds(ids); //标题下存在内容或子标题时不能删除
//1. 判断是否存在子标题
LambdaQueryWrapper<LawsMonthlyReportTitleTemplateEO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(LawsMonthlyReportTitleTemplateEO::getParentId,ids);
List<LawsMonthlyReportTitleTemplateEO> list = this.list(wrapper);
if(list.size() != 0){
throw new JeroBootException("该标题下存在子标题,不能删除");
}
//2. 判断是否存在内容 memories_chapter
LambdaQueryWrapper<LawsMonthlyReportWriteEO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(LawsMonthlyReportWriteEO::getMemoriesChapter,ids);
List<LawsMonthlyReportWriteEO> lawsMonthlyReportWriteEOS = lawsMonthlyReportWriteEOService.list(lambdaQueryWrapper);
if(lawsMonthlyReportWriteEOS.size() != 0){
throw new JeroBootException("该标题下存在新增内容,不能删除");
}
removeByIds(ids);
} }
/** /**
@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.CutEnum; import com.jero.common.constant.enums.CutEnum;
import com.jero.common.constant.enums.ModuleEnum; import com.jero.common.constant.enums.ModuleEnum;
import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.query.QueryGenerator;
import com.jero.common.system.vo.LoginUser;
import com.jero.generater.modules.online.cgform.entity.OnlCgformField; import com.jero.generater.modules.online.cgform.entity.OnlCgformField;
import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl; import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl;
import com.jero.modules.document.enums.FieldTypeEnum; import com.jero.modules.document.enums.FieldTypeEnum;
@@ -29,11 +30,14 @@ import com.jero.modules.report.service.INewStandardTemplateEOService;
import com.jero.modules.report.util.WordUtil; import com.jero.modules.report.util.WordUtil;
import com.jero.modules.system.entity.SysCategory; import com.jero.modules.system.entity.SysCategory;
import com.jero.modules.system.entity.SysDictItem; import com.jero.modules.system.entity.SysDictItem;
import com.jero.modules.system.enums.ProjectRoleEnum;
import com.jero.modules.system.service.impl.SysBaseApiImpl;
import com.jero.modules.system.service.impl.SysCategoryServiceImpl; import com.jero.modules.system.service.impl.SysCategoryServiceImpl;
import com.jero.modules.system.service.impl.SysDictItemServiceImpl; import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
import com.jero.modules.system.util.StringUtils; import com.jero.modules.system.util.StringUtils;
import org.apache.poi.xwpf.usermodel.ParagraphAlignment; import org.apache.poi.xwpf.usermodel.ParagraphAlignment;
import org.apache.poi.xwpf.usermodel.XWPFDocument; import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.shiro.SecurityUtils;
import org.aspectj.util.FileUtil; import org.aspectj.util.FileUtil;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
@@ -81,6 +85,8 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
private BussDocumentLibraryEOMapper bussDocumentLibraryEOMapper; private BussDocumentLibraryEOMapper bussDocumentLibraryEOMapper;
@Autowired @Autowired
private SysDictItemServiceImpl sysDictItemServiceImpl; private SysDictItemServiceImpl sysDictItemServiceImpl;
@Autowired
private SysBaseApiImpl sysBaseApi;
/** /**
* 保存 * 保存
* *
@@ -92,6 +98,7 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
Date now = new Date(); Date now = new Date();
lawsMonthlyReportWriteEO.setCreateTime(now); lawsMonthlyReportWriteEO.setCreateTime(now);
lawsMonthlyReportWriteEO.setUpdateTime(now); lawsMonthlyReportWriteEO.setUpdateTime(now);
lawsMonthlyReportWriteEO.setExportState(ExportStateEnum.NOT_EXPORT.getValue());
save(lawsMonthlyReportWriteEO); save(lawsMonthlyReportWriteEO);
if(ContentTemplateEnum.NEW_REQUEST_LIST_TEMPLATE.getValue().equals(lawsMonthlyReportWriteEO.getContentTemplate())){ if(ContentTemplateEnum.NEW_REQUEST_LIST_TEMPLATE.getValue().equals(lawsMonthlyReportWriteEO.getContentTemplate())){
@@ -261,6 +268,13 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
Integer pageSize, Integer pageSize,
HttpServletRequest req) { HttpServletRequest req) {
QueryWrapper<LawsMonthlyReportWriteEO> queryWrapper = QueryGenerator.initQueryWrapper(lawsMonthlyReportWriteEOTemp, req.getParameterMap()); QueryWrapper<LawsMonthlyReportWriteEO> queryWrapper = QueryGenerator.initQueryWrapper(lawsMonthlyReportWriteEOTemp, req.getParameterMap());
queryWrapper.orderByDesc("create_time");
//管理员查看全部数据,其余人只能查看自己的数据
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
List<String> rolesList = sysBaseApi.getRolesByUsername(currentUser.getUsername());
if(!rolesList.contains(ProjectRoleEnum.ADMIN.getCode())){
queryWrapper.in("create_by",currentUser.getUsername());
}
Page<LawsMonthlyReportWriteEO> page = new Page<LawsMonthlyReportWriteEO>(pageNo, pageSize); Page<LawsMonthlyReportWriteEO> page = new Page<LawsMonthlyReportWriteEO>(pageNo, pageSize);
Page<LawsMonthlyReportWriteEO> pageInfo = this.page(page, queryWrapper); Page<LawsMonthlyReportWriteEO> pageInfo = this.page(page, queryWrapper);
//法规月报id //法规月报id
@@ -522,6 +536,8 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
}else{ }else{
content = "Content"; content = "Content";
} }
//单独设置每页右侧的时间
WordUtil.exportWordMonth(document, lawsMonthlyReportWriteEOS.get(0).getMonth(), null, ParagraphAlignment.RIGHT, 0, 12, false, true, "微软雅黑");
WordUtil.exportWord(document, titleCN, null, ParagraphAlignment.CENTER, 0, 12, false, true, "Microsoft YaHei UI"); WordUtil.exportWord(document, titleCN, null, ParagraphAlignment.CENTER, 0, 12, false, true, "Microsoft YaHei UI");
WordUtil.exportWord(document, content, null, ParagraphAlignment.LEFT, 0, 12, false, true, "Microsoft YaHei UI"); WordUtil.exportWord(document, content, null, ParagraphAlignment.LEFT, 0, 12, false, true, "Microsoft YaHei UI");
int oneCount = 1; int oneCount = 1;
@@ -597,7 +613,9 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
content = "Content"; content = "Content";
} }
WordUtil.exportWord(document, titleCN, null, ParagraphAlignment.CENTER, 0, 12, false, true, "Microsoft YaHei UI"); WordUtil.exportWord(document, titleCN, null, ParagraphAlignment.CENTER, 0, 12, false, true, "Microsoft YaHei UI");
WordUtil.exportWord(document, content, null, ParagraphAlignment.LEFT, 0, 12, false, true, "Microsoft YaHei UI"); //单独设置每页右侧的时间
WordUtil.exportWordMonth(document, lawsMonthlyReportWriteEOS.get(0).getMonth(), null, ParagraphAlignment.RIGHT, 0, 12, false, true, "Microsoft YaHei UI");
// WordUtil.exportWord(document, content, null, ParagraphAlignment.LEFT, 0, 12, false, true, "Microsoft YaHei UI");
int oneCount = 1; int oneCount = 1;
for (LawsMonthlyReportTitleTemplateEO lawsMonthlyReportTitleTemplateEO : reportTitleOneList) { for (LawsMonthlyReportTitleTemplateEO lawsMonthlyReportTitleTemplateEO : reportTitleOneList) {
@@ -103,6 +103,100 @@ public class WordUtil {
} }
} }
/**
* 导出工具示例
*
* @param document POI文件类
* @param text 输出文本
* @param textColor 字体颜色
* @param align 字体位置,默认居左
* @param spaceNum 预留空格数,默认不留空格
* @param fontSize 字体大小,默认11
* @param isNewline 是否换行,换行后文本失效
* @param isBold 是否加粗,默认不加粗
* @param fontFamily 字体,默认宋体
*/
public static void exportWordMonth(XWPFDocument document,
String text,
String textColor,
ParagraphAlignment align,
Integer spaceNum,
Integer fontSize,
Boolean isNewline,
Boolean isBold,
String fontFamily) {
// CTSectPr sectPr = document.getDocument().getBody().addNewSectPr();
// XWPFHeaderFooterPolicy policy = new XWPFHeaderFooterPolicy(document, sectPr);
//
// //添加页眉
// CTP ctpHeader = CTP.Factory.newInstance();
// CTR ctrHeader = ctpHeader.addNewR();
// CTText ctHeader = ctrHeader.addNewT();
// String headerText = "Java POI create MS word file.";
// ctHeader.setStringValue(headerText);
// XWPFParagraph headerParagraph = new XWPFParagraph(ctpHeader, document);
// //设置为右对齐
// headerParagraph.setAlignment(ParagraphAlignment.RIGHT);
// XWPFParagraph[] parsHeader = new XWPFParagraph[1];
// parsHeader[0] = headerParagraph;
// try {
// policy.createHeader(XWPFHeaderFooterPolicy.DEFAULT, parsHeader);
// } catch (IOException e) {
// e.printStackTrace();
// }
//添加标题
XWPFParagraph titleParagraph = document.createParagraph();
//设置段落左对齐
if (align == null) {
titleParagraph.setAlignment(ParagraphAlignment.RIGHT);
} else {
titleParagraph.setAlignment(align);
}
XWPFRun titleParagraphRun = titleParagraph.createRun();
if (isNewline) {
titleParagraphRun.setText("\r");
} else {
//封装文字内容
StringBuilder newText = new StringBuilder();
for (int i = 0; i < spaceNum; i++) {
newText.append(" ");
}
newText.append(text);
titleParagraphRun.setText(newText.toString());
//设置颜色
if (StringUtils.isNotEmpty(textColor)) {
titleParagraphRun.setColor(textColor);
} else {
titleParagraphRun.setColor("000000");
}
//设置文字大小
if (ObjectUtil.isNotEmpty(fontSize)) {
titleParagraphRun.setFontSize(fontSize);
} else {
titleParagraphRun.setFontSize(11);
}
//设置加粗
if (ObjectUtil.isNotEmpty(isBold)) {
titleParagraphRun.setBold(isBold);
} else {
titleParagraphRun.setBold(false);
}
//设置字体样式
if (StringUtils.isNotEmpty(fontFamily)) {
titleParagraphRun.setFontFamily(fontFamily);
} else {
titleParagraphRun.setFontFamily("宋体");
}
}
}
public static void exportWordExcelDefault(XWPFDocument document, public static void exportWordExcelDefault(XWPFDocument document,
LawsMonthlyReportWriteEO lawsMonthlyReportWriteEO, LawsMonthlyReportWriteEO lawsMonthlyReportWriteEO,
+166 -163
View File
@@ -40,7 +40,7 @@ module.exports = {
userName: 'User Name', userName: 'User Name',
department: 'Department', department: 'Department',
status: 'Status', status: 'Status',
Operation: 'Operation', operation: 'Operation',
aRcord: 'A Rcord', aRcord: 'A Rcord',
OperationAllowedAccount: 'This Operation is not Allowed for administrator account, please select again!', OperationAllowedAccount: 'This Operation is not Allowed for administrator account, please select again!',
confirm: 'Confirm', confirm: 'Confirm',
@@ -176,9 +176,9 @@ module.exports = {
MenuType: 'Menu Type', MenuType: 'Menu Type',
menu: 'Menu', menu: 'Menu',
ButtonsPermissions: 'Buttons / Permissions', ButtonsPermissions: 'Buttons / Permissions',
ConventionalExport:'Conventional Export', ConventionalExport: 'Conventional Export',
CustomExport:'Custom Export', CustomExport: 'Custom Export',
CustomTemplateName:'Custom template name', CustomTemplateName: 'Custom template name',
assembly: 'Component', assembly: 'Component',
route: 'Route', route: 'Route',
AddSubmenu: 'Add Submenu', AddSubmenu: 'Add Submenu',
@@ -388,8 +388,8 @@ module.exports = {
StandardDetails: 'Standard Details', StandardDetails: 'Standard Details',
whole: 'Whole', whole: 'Whole',
DocumentLibrary: 'Document Library', DocumentLibrary: 'Document Library',
GeneralExportInformation:'General export information', GeneralExportInformation: 'General export information',
CustomizeExportInformation:'Customize export information', CustomizeExportInformation: 'Customize export information',
DocumentComparisonLibrary: 'Document Comparison Library', DocumentComparisonLibrary: 'Document Comparison Library',
weekly: 'Weekly', weekly: 'Weekly',
SyncLibrary: 'Sync To doc. Library', SyncLibrary: 'Sync To doc. Library',
@@ -714,7 +714,7 @@ module.exports = {
confirmationOfRegulationsList: 'Regulation List Confirmation', confirmationOfRegulationsList: 'Regulation List Confirmation',
regulatoryTaskConfirmation: 'Regulation Task Confirmation', regulatoryTaskConfirmation: 'Regulation Task Confirmation',
certificationStart: 'Homo Test Completion', certificationStart: 'Homo Test Completion',
preHomoCompletion:'Pre-Homo Completion', preHomoCompletion: 'Pre-Homo Completion',
certificationEnd: 'Type Approval', certificationEnd: 'Type Approval',
directoryName: 'Catalogue Name', directoryName: 'Catalogue Name',
batch: 'Batch', batch: 'Batch',
@@ -735,7 +735,7 @@ module.exports = {
// 参数收集开始 // 参数收集开始
MaintainConfigureInfo: 'Maintain Configuration Information', MaintainConfigureInfo: 'Maintain Configuration Information',
ParameteItemCollectionList: 'Parameter item collection list', ParameteItemCollectionList: 'Parameter item collection list',
ParameterViewPage:'Parameter View Page', ParameterViewPage: 'Parameter View Page',
Areyousureparameteritems: 'Are you sure to submit the selected parameter items?', Areyousureparameteritems: 'Are you sure to submit the selected parameter items?',
Theselectedconfiguration: 'The configuration can only be added when the parameter items in the parameter list are to be collected or changed', Theselectedconfiguration: 'The configuration can only be added when the parameter items in the parameter list are to be collected or changed',
NoConfigurationNotStart: 'No configuration added, unable to start collection, please check', NoConfigurationNotStart: 'No configuration added, unable to start collection, please check',
@@ -802,10 +802,10 @@ module.exports = {
releaseVersion: 'Release Version', releaseVersion: 'Release Version',
parameterTemplate: 'Parameter Template', parameterTemplate: 'Parameter Template',
contentDescription: 'Content Description', contentDescription: 'Content Description',
WhetherMergeParameters:'Whether to merge parameters', WhetherMergeParameters: 'Whether to merge parameters',
merge:'Merge', merge: 'Merge',
nonjoinder:'Nonjoinder', nonjoinder: 'Nonjoinder',
MergeSeparator:'Merge separator', MergeSeparator: 'Merge separator',
parameterTemplateExportName: 'Parameter List', parameterTemplateExportName: 'Parameter List',
parameterDataExport: 'Parameter Export Data', parameterDataExport: 'Parameter Export Data',
// 参数收集结束 // 参数收集结束
@@ -860,6 +860,7 @@ module.exports = {
experimentFailed: 'Test Failed', experimentFailed: 'Test Failed',
toBeStarted: 'Not Start', toBeStarted: 'Not Start',
inProgress: 'In Progress', inProgress: 'In Progress',
Underway: 'Underway',
green: 'Green', green: 'Green',
red: 'Red', red: 'Red',
blue: 'Blue', blue: 'Blue',
@@ -977,7 +978,7 @@ module.exports = {
disableInput: 'Disable Input', disableInput: 'Disable Input',
taskConfirmationDeadline: 'Task Confirmation Deadline', taskConfirmationDeadline: 'Task Confirmation Deadline',
OnlyOrTaskconfirmationOut: 'Only when the list confirmation status or task confirmation status is to be confirmed can the reminder be carried out', OnlyOrTaskconfirmationOut: 'Only when the list confirmation status or task confirmation status is to be confirmed can the reminder be carried out',
taskConfirmationResponsiblePerson:'Task confirmation of responsible person', taskConfirmationResponsiblePerson: 'Task confirmation of responsible person',
or: 'or', or: 'or',
warningTime: 'Warning Time', warningTime: 'Warning Time',
RegulationMonthlyManagement: 'Regulation Monthly Management', RegulationMonthlyManagement: 'Regulation Monthly Management',
@@ -1023,7 +1024,7 @@ module.exports = {
relevantSections: 'Relevant Sections', relevantSections: 'Relevant Sections',
questionsSuggestions: 'Questions Or Suggestions', questionsSuggestions: 'Questions Or Suggestions',
reason: 'Reason', reason: 'Reason',
proposedTime:'Proposed Time', proposedTime: 'Proposed Time',
feedbackPoint: 'Feedback Point', feedbackPoint: 'Feedback Point',
link: 'Link', link: 'Link',
planNoChinese: 'Plan No.', planNoChinese: 'Plan No.',
@@ -1085,154 +1086,156 @@ module.exports = {
Templatenamelist: 'Template name - parameter item collection list', Templatenamelist: 'Template name - parameter item collection list',
newNiONumber: 'Number', newNiONumber: 'Number',
English: 'English', English: 'English',
requiredParametersEmpty:'Required parameters cannot be empty', requiredParametersEmpty: 'Required parameters cannot be empty',
PleaseTaskConfirmationRejected:'Please select the data whose list confirmation status is accepted and task confirmation status is not initiated or rejected', PleaseTaskConfirmationRejected: 'Please select the data whose list confirmation status is accepted and task confirmation status is not initiated or rejected',
theProjectContactEmpty:'The project contact person of cannot be empty', theProjectContactEmpty: 'The project contact person of cannot be empty',
pleaseSelectinitiatedOrRejected:'Please select the data whose list confirmation status is not initiated or rejected', pleaseSelectinitiatedOrRejected: 'Please select the data whose list confirmation status is not initiated or rejected',
TheEngineerAndCertification:'The regulatory engineer and Certification Engineer of cannot be empty', TheEngineerAndCertification: 'The regulatory engineer and Certification Engineer of cannot be empty',
theResponsiblePersonAndDeadlineClank:'The responsible person and deadline of cannot be blank', theResponsiblePersonAndDeadlineClank: 'The responsible person and deadline of cannot be blank',
bringInTheProjectInterface:'Bring in the project interface', bringInTheProjectInterface: 'Bring in the project interface',
theCurrentListSaved:'The current list data has been submitted and cannot be temporarily saved', theCurrentListSaved: 'The current list data has been submitted and cannot be temporarily saved',
defaultTemplate:'Default Template', defaultTemplate: 'Default Template',
newRequestCommentListTemplate:'New request for comment list template', newRequestCommentListTemplate: 'New request for comment list template',
NewReleasedStandardTemplate:'New released standard template', NewReleasedStandardTemplate: 'New released standard template',
pleaseSelectStandard:'Please select a standard', pleaseSelectStandard: 'Please select a standard',
theResponsiblePersonEmpty:'The responsible person of cannot be empty', theResponsiblePersonEmpty: 'The responsible person of cannot be empty',
theDeadlineEmpty:'The deadline of cannot be empty', theDeadlineEmpty: 'The deadline of cannot be empty',
theDeliveryTypeCannotBeEmpty:'The delivery type of cannot be empty', theDeliveryTypeCannotBeEmpty: 'The delivery type of cannot be empty',
For:'For', For: 'For',
markedRejection:'Marked Rejection', markedRejection: 'Marked Rejection',
RegulationListConfirmationTask:'Regulation List Confirmation Task', RegulationListConfirmationTask: 'Regulation List Confirmation Task',
RegulationListConfirmationNotification:'Regulation List Confirmation Notification', RegulationListConfirmationNotification: 'Regulation List Confirmation Notification',
RegulationTaskConfirmation:'Regulation Task Confirmation', RegulationTaskConfirmation: 'Regulation Task Confirmation',
DesignComplianceTask:'Design Compliance Task', DesignComplianceTask: 'Design Compliance Task',
PreHomoTask:'Pre-Homo Task', PreHomoTask: 'Pre-Homo Task',
ValidationTask:'Validation Task', ValidationTask: 'Validation Task',
DesignComplianceNotification:'Design Compliance Notification', DesignComplianceNotification: 'Design Compliance Notification',
PreHomoNotification:'Pre-Homo Notification', PreHomoNotification: 'Pre-Homo Notification',
ValidationComplianceNotification:'Validation Compliance Notification', ValidationComplianceNotification: 'Validation Compliance Notification',
RegulationTaskConfirmationNotification:'Regulation Task Confirmation Notification', RegulationTaskConfirmationNotification: 'Regulation Task Confirmation Notification',
evaluationMethod:'Evaluation method', evaluationMethod: 'Evaluation method',
uploadRelevantMaterials:'Upload relevant materials', uploadRelevantMaterials: 'Upload relevant materials',
processBackground:'Process background', processBackground: 'Process background',
selectedStandard:'Selected standard', selectedStandard: 'Selected standard',
standardDecompositionDocument:'Standard decomposition document', standardDecompositionDocument: 'Standard decomposition document',
pleaseSelectStandardFirst:'Please select a standard first', pleaseSelectStandardFirst: 'Please select a standard first',
RelevantMaterials:'RelevantMaterials', RelevantMaterials: 'RelevantMaterials',
evaluatorFeedback:'Evaluator feedback', evaluatorFeedback: 'Evaluator feedback',
nameTechnicalDocument:'Name of technical document', nameTechnicalDocument: 'Name of technical document',
chapter:'chapter', chapter: 'chapter',
problemDescription:'Problem description', problemDescription: 'Problem description',
filingExternalOpinions:'Filing of external opinions', filingExternalOpinions: 'Filing of external opinions',
regulatoryTechnicalEvaluationResults:'Regulatory technical evaluation results', regulatoryTechnicalEvaluationResults: 'Regulatory technical evaluation results',
initiateProcessForCurrentStandard:'Initiate process for current standard', initiateProcessForCurrentStandard: 'Initiate process for current standard',
engineerFeedbackResults:'Engineer feedback results', engineerFeedbackResults: 'Engineer feedback results',
fileExport:'File export', fileExport: 'File export',
feedbackTime:'Feedback time', feedbackTime: 'Feedback time',
regulatoryTechnologyAssessmentProcess:'Regulatory technology assessment process', regulatoryTechnologyAssessmentProcess: 'Regulatory technology assessment process',
feedbackEvaluation:'Feedback evaluation', feedbackEvaluation: 'Feedback evaluation',
clauseEvaluation:'Clause evaluation', clauseEvaluation: 'Clause evaluation',
standardDocuments:'Standard documents', standardDocuments: 'Standard documents',
pleaseCompleteTheEvaluationMethodorEvaluator:'Please complete the evaluation method or evaluator in the list', pleaseCompleteTheEvaluationMethodorEvaluator: 'Please complete the evaluation method or evaluator in the list',
reviewComments:'Review comments', reviewComments: 'Review comments',
PleaseCompleteList:'Please complete the compliance results in the list', PleaseCompleteList: 'Please complete the compliance results in the list',
sponsorFeedback:'Sponsor feedback', sponsorFeedback: 'Sponsor feedback',
processNumber:'Process number', processNumber: 'Process number',
processName:'Process Name', processName: 'Process Name',
feedbackResults:'Feedback results', feedbackResults: 'Feedback results',
theDoesNotSupportPreview:'The current file format does not support Preview', theDoesNotSupportPreview: 'The current file format does not support Preview',
releaseSituation:'Release situation', releaseSituation: 'Release situation',
comparisonResults:'Comparison results', comparisonResults: 'Comparison results',
Published:'Published', Published: 'Published',
initiateComparison:'Initiate comparison', initiateComparison: 'Initiate comparison',
translationLanguage:'Translation language', translationLanguage: 'Translation language',
translationResults:'Translation results', translationResults: 'Translation results',
conversionTime:'Conversion time', conversionTime: 'Conversion time',
category:'Category', category: 'Category',
RegulatoryProcessEvaluationResults :'Regulatory Process Evaluation Results', RegulatoryProcessEvaluationResults: 'Regulatory Process Evaluation Results',
ViewConformanceResults:'View Conformance Results', ViewConformanceResults: 'View Conformance Results',
CommentsCollectionResultsForReference:'Comments Collection Results For Reference', CommentsCollectionResultsForReference: 'Comments Collection Results For Reference',
TechnicalEvaluationResultsForReference:'Technical Evaluation Results For Reference', TechnicalEvaluationResultsForReference: 'Technical Evaluation Results For Reference',
ComplianceConfirmationRecord:'Compliance Confirmation Record', ComplianceConfirmationRecord: 'Compliance Confirmation Record',
complianceConfirmation:'Compliance Confirmation', complianceConfirmation: 'Compliance Confirmation',
noComparisonDocumentSelected:'No comparison document selected', noComparisonDocumentSelected: 'No comparison document selected',
RemarkInfo:'Remarks Info', RemarkInfo: 'Remarks Info',
initiateDocumentComparison:'Initiate Document Comparison', initiateDocumentComparison: 'Initiate Document Comparison',
comparativeComments:'Comparative Comments', comparativeComments: 'Comparative Comments',
viewTheComparisonResults:'View The Comparison Results', viewTheComparisonResults: 'View The Comparison Results',
addFullTextComment:'Add Full Text Comment', addFullTextComment: 'Add Full Text Comment',
turnOffAutomaticMatching:'Turn Off Automatic Matching', turnOffAutomaticMatching: 'Turn Off Automatic Matching',
Deriveconformanceresults:'Derive Conformance Results', Deriveconformanceresults: 'Derive Conformance Results',
Regulatorycompliancekanban:'Regulatory Compliance Kanban', Regulatorycompliancekanban: 'Regulatory Compliance Kanban',
exportComparisonReport:'Export Comparison Report', exportComparisonReport: 'Export Comparison Report',
comparisonDifferenceComment:'Comparison Difference Comment', comparisonDifferenceComment: 'Comparison Difference Comment',
fullTextComments:'Full text comments', fullTextComments: 'Full text comments',
fileDeclaration:'file Declaration', fileDeclaration: 'file Declaration',
FileForDetails:'File For Details', FileForDetails: 'File For Details',
Converting:'Converting', Converting: 'Converting',
convertNetwork:'Convert Network', convertNetwork: 'Convert Network',
convertFailed:'Convert Failed', convertFailed: 'Convert Failed',
standardData:'Standard Data', standardData: 'Standard Data',
Theorganization:'The Organization', Theorganization: 'The Organization',
Addingfolder:'Adding a folder', Addingfolder: 'Adding a folder',
Addingsubfolders:'Adding Subfolders', Addingsubfolders: 'Adding Subfolders',
Editfolder:'Edit Folder', Editfolder: 'Edit Folder',
Deletefolders:'Delete Folders', Deletefolders: 'Delete Folders',
Foldername:'Folder Name', Foldername: 'Folder Name',
Folderpermissions:'Folder Permissions', Folderpermissions: 'Folder Permissions',
Folderorder:'Folder Order', Folderorder: 'Folder Order',
Downloadprivileges:'Download Privileges', Downloadprivileges: 'Download Privileges',
Openpersonnel:'Open Personnel', Openpersonnel: 'Open Personnel',
originalText:'Original Text', originalText: 'Original Text',
translatedText:'Translated Text', translatedText: 'Translated Text',
Administrativeprivileges:'Administrativ Pprivileges', Administrativeprivileges: 'Administrativ Pprivileges',
Checkthepermissions:'Check The Permissions', Checkthepermissions: 'Check The Permissions',
onlyFilesUploaded:'Only.Docx,.Doc files can be uploaded', onlyFilesUploaded: 'Only.Docx,.Doc files can be uploaded',
selectDirectorylocation: 'Please select the directory location to add the folder', selectDirectorylocation: 'Please select the directory location to add the folder',
Fileuploaded:'File uploaded, please wait', Fileuploaded: 'File uploaded, please wait',
uploadedbyyourself:'You can only delete files and data uploaded by yourself', uploadedbyyourself: 'You can only delete files and data uploaded by yourself',
Fileuploaded:'File uploading, please wait', Fileuploaded: 'File uploading, please wait',
doNotHavePermissionDeleteData:'Do not have permission to delete this data,', doNotHavePermissionDeleteData: 'Do not have permission to delete this data,',
Parametercollection:'Parameter Collection', Parametercollection: 'Parameter Collection',
Collectlist:'Colle Ctlist', Collectlist: 'Colle Ctlist',
Statisticalmodels:'Statisti Calmodels', Statisticalmodels: 'Statisti Calmodels',
Inthecollection:'In the collection', Inthecollection: 'In the collection',
Notatthe:'Not at the', Notatthe: 'Not at the',
Thepercentage:'The Percentage', Thepercentage: 'The Percentage',
problemKnowledgeBase:'Problem Knowledge Base', problemKnowledgeBase: 'Problem Knowledge Base',
recentHotSpots:'Recent Hot Spots', recentHotSpots: 'Recent Hot Spots',
disseminationMaterials:'Dissemination Materials', disseminationMaterials: 'Dissemination Materials',
informationSafety:'Information Safety', informationSafety: 'Information Safety',
blueBook:'Blue Book', blueBook: 'Blue Book',
invoiceCollection:'Invoice Collection', invoiceCollection: 'Invoice Collection',
productHighlights:'Product Highlights', productHighlights: 'Product Highlights',
financialReimbursement:'Financial Reimbursement', financialReimbursement: 'Financial Reimbursement',
classificationMaintenance:'Classification Maintenance', classificationMaintenance: 'Classification Maintenance',
managePublishing:'Manage Publishing', managePublishing: 'Manage Publishing',
displayPermission:'Display permission', displayPermission: 'Display permission',
authorizedUser:'Authorized user', authorizedUser: 'Authorized user',
problemClassification:'Problem classification', problemClassification: 'Problem classification',
market:'market', market: 'market',
documentNumber:'Document Number', documentNumber: 'Document Number',
documentTitle:'Document Title', documentTitle: 'Document Title',
bringInDocumentInformation:'Bring in document information', bringInDocumentInformation: 'Bring in document information',
thereWhichCannotDeleted:'There are sub headings under this title, which cannot be deleted', thereWhichCannotDeleted: 'There are sub headings under this title, which cannot be deleted',
sdt:'sdt', sdt: 'sdt',
dre:'dre', dre: 'dre',
applicableInstructionsMarketList:'Applicable instructions of market list', applicableInstructionsMarketList: 'Applicable instructions of market list',
pleaseSelectTheDataCompared:'Please select the data to be compared', pleaseSelectTheDataCompared: 'Please select the data to be compared',
problemLabel:'Problem label', problemLabel: 'Problem label',
personCharge:'Person in charge', personCharge: 'Person in charge',
addLabel:'Add Label', addLabel: 'Add Label',
editLabel:'Edit Label', editLabel: 'Edit Label',
applicableMarket:'Applicable market', applicableMarket: 'Applicable market',
templateMaintenance:'Template maintenance', templateMaintenance: 'Template maintenance',
associatedWebsite:'Associated website', associatedWebsite: 'Associated website',
dropDownOptions:'Drop down options', dropDownOptions: 'Drop down options',
dropDownOptionMaintenance:'Drop down option maintenance', dropDownOptionMaintenance: 'Drop down option maintenance',
displayInformation:'Display information', displayInformation: 'Display information',
addComparison:'Add comparison', addComparison: 'Add comparison',
showOrNot:'Show or not', showOrNot: 'Show or not',
comparisonMarket:'Comparison Market', comparisonMarket: 'Comparison Market',
share:'share', share: 'share',
simplifiedChinese:'Simplified Chinese',
uploadOnly:'Upload only',
} }
+3
View File
@@ -874,6 +874,7 @@ module.exports = {
experimentFailed: '实验失败', experimentFailed: '实验失败',
toBeStarted: '待开始', toBeStarted: '待开始',
inProgress: '进行中', inProgress: '进行中',
Underway:'进行中',
green: '绿', green: '绿',
red: '红', red: '红',
blue: '蓝', blue: '蓝',
@@ -1338,4 +1339,6 @@ module.exports = {
showOrNot:'是否展示', showOrNot:'是否展示',
comparisonMarket:'对比市场', comparisonMarket:'对比市场',
share:'分享', share:'分享',
simplifiedChinese:'简体中文',
uploadOnly:'只能上传',
} }
@@ -15,6 +15,7 @@
<div class="box-title-text" v-if="isInput"> <div class="box-title-text" v-if="isInput">
<a-input :class="{'box-input':!isClass}" :value="value" <a-input :class="{'box-input':!isClass}" :value="value"
readonly readonly
:title="value"
@click.native="standardClick" @click.native="standardClick"
:placeholder="$t('PleaseSelect')+query.db_field_txt"/> :placeholder="$t('PleaseSelect')+query.db_field_txt"/>
</div> </div>
@@ -68,6 +68,7 @@
</div> </div>
</div> </div>
</a-modal> </a-modal>
<JLoading :loading="textLoading">{{this.$t('pleaseWaitWhileRunning')}}</JLoading>
</div> </div>
</template> </template>
@@ -91,6 +92,7 @@ export default {
editId: '', editId: '',
visibleoperationFailed:false, visibleoperationFailed:false,
newVisible: false, newVisible: false,
textLoading:false,
NotSelectedRowKeysValue:[], NotSelectedRowKeysValue:[],
labelCol: { labelCol: {
xs: { span: 24 }, xs: { span: 24 },
@@ -220,6 +222,7 @@ export default {
// _this.$message.success(this.$t('OperationSuccessful')) // _this.$message.success(this.$t('OperationSuccessful'))
if(res.data.result.length == 0){ if(res.data.result.length == 0){
this.visibleoperationFailed = false this.visibleoperationFailed = false
this.textLoading = false
_this.$message.success(this.$t('OperationSuccessful')) _this.$message.success(this.$t('OperationSuccessful'))
this.$emit('areaVisibleTaskCutOffTimeflag', false) this.$emit('areaVisibleTaskCutOffTimeflag', false)
this.$emit('GetgetTableList') this.$emit('GetgetTableList')
@@ -227,6 +230,7 @@ export default {
}else{ }else{
this.NotSelectedRowKeysValue = res.data.result this.NotSelectedRowKeysValue = res.data.result
this.visibleoperationFailed = true this.visibleoperationFailed = true
this.textLoading = false
} }
// this.$emit('areaVisibleTaskCutOffTimeflag', false) // this.$emit('areaVisibleTaskCutOffTimeflag', false)
@@ -69,6 +69,7 @@
</div> </div>
</div> </div>
</a-modal> </a-modal>
<JLoading :loading="textLoading">{{this.$t('pleaseWaitWhileRunning')}}</JLoading>
</div> </div>
</template> </template>
@@ -223,10 +224,12 @@ export default {
_this.$message.success(this.$t('OperationSuccessful')) _this.$message.success(this.$t('OperationSuccessful'))
this.$emit('areaVisibleTaskCutOffTimeAll', false) this.$emit('areaVisibleTaskCutOffTimeAll', false)
this.$emit('GetgetTableList') this.$emit('GetgetTableList')
this.textLoading = false
}else{ }else{
this.NotSelectedRowKeysValue = res.data.result this.NotSelectedRowKeysValue = res.data.result
this.visibleoperationFailed = true this.visibleoperationFailed = true
this.textLoading = false
} }
// this.$emit('areaVisibleTaskCutOffTime', false) // this.$emit('areaVisibleTaskCutOffTime', false)
+4 -4
View File
@@ -34,7 +34,7 @@
export default { export default {
name: 'file', name: 'file',
props: ['disableds', 'disabled', 'thisFileUploadUrl', 'readonly', 'thisFileType', 'isUploadFile', 'isMultiple', 'restrictUploads'], props: ['disableds', 'disabled', 'thisFileUploadUrl', 'readonly', 'thisFileType', 'isUploadFile', 'isMultiple', 'restrictUploads', 'Uploadable'],
data() { data() {
return { return {
visible: false, visible: false,
@@ -68,7 +68,7 @@
if (this.isMultiple) { if (this.isMultiple) {
this.multiple = false this.multiple = false
} }
this.accept = this.restrictUploads ? '.docx,.doc' : '*.*' this.accept = this.restrictUploads ? this.Uploadable : '*.*'
// console.log(this.thisFileType,this.thisFileSize,this.thisFileUploadUrl); // console.log(this.thisFileType,this.thisFileSize,this.thisFileUploadUrl);
}, },
methods: { methods: {
@@ -99,10 +99,10 @@
let index1 = fileName.lastIndexOf('.') let index1 = fileName.lastIndexOf('.')
let index2 = fileName.length let index2 = fileName.length
let fileSuffix = fileName.substring(index1, index2) let fileSuffix = fileName.substring(index1, index2)
if (fileSuffix == '.docx' || fileSuffix == '.doc') { if (this.Uploadable.includes(fileSuffix)) {
} else { } else {
this.$message.warning(this.$t('onlyFilesUploaded')) this.$message.warning(this.$t('uploadOnly') + this.Uploadable + this.$t('file'))
return false return false
} }
} }
@@ -10,7 +10,7 @@
:visible="visible" :visible="visible"
style="height: 100%;overflow: auto;padding-bottom: 53px;"> style="height: 100%;overflow: auto;padding-bottom: 53px;">
<div class="table-operator-right"> <div class="table-operator-right">
<div @click="handleExport" class="operator-text"> <div @click="handleExport" v-if="formInline.createBy == userInfoQuery.username" class="operator-text">
<a-icon type="export" :rotate="-90"/> <a-icon type="export" :rotate="-90"/>
{{$t('export')}} {{$t('export')}}
</div> </div>
@@ -47,11 +47,11 @@
<span class="text">{{$t('filingExternalOpinions')}}:</span> <span class="text">{{$t('filingExternalOpinions')}}:</span>
<div @click="clickButtonToUpload('opinionArchiveId')" style="color: #21c9cc" <div @click="clickButtonToUpload('opinionArchiveId')" style="color: #21c9cc"
v-if="formInline.createBy == this.userInfoQuery.username" class="operator-text"> v-if="formInline.createBy == this.userInfoQuery.username" class="operator-text">
<a-icon type="cloud-upload" /> <a-icon type="cloud-upload"/>
{{$t('clickUpload')}} {{$t('clickUpload')}}
</div> </div>
<div @click="seeFileClick(formInline.opinionArchiveId)" style="color: #21c9cc" class="operator-text"> <div @click="seeFileClick(formInline.opinionArchiveId)" style="color: #21c9cc" class="operator-text">
<a-icon type="eye" /> <a-icon type="eye"/>
{{$t('viewFile')}} {{$t('viewFile')}}
</div> </div>
</div> </div>
@@ -86,7 +86,7 @@
pageNo: 1, pageNo: 1,
dataSource: [], dataSource: [],
formInline: {}, formInline: {},
userInfoQuery:{}, userInfoQuery: {},
columns: [ columns: [
{ {
title: this.$t('relevantSections'), title: this.$t('relevantSections'),
@@ -135,7 +135,7 @@
} }
}, },
mounted() { mounted() {
this.userInfoQuery = this.userInfo() this.userInfoQuery = this.userInfo()
}, },
methods: { methods: {
...mapGetters(['userInfo']), ...mapGetters(['userInfo']),
@@ -178,8 +178,8 @@
//导出 //导出
handleExport() { handleExport() {
let query = { let query = {
pageSize:this.pageSize, pageSize: this.pageSize,
pageNo:this.pageNo, pageNo: this.pageNo,
lawsOpinionGatherId: this.lawsOpinionGatherId, lawsOpinionGatherId: this.lawsOpinionGatherId,
actiProcInstId: this.actiProcInstId actiProcInstId: this.actiProcInstId
} }
@@ -201,7 +201,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page, pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -210,8 +210,8 @@
let query = { let query = {
lawsOpinionGatherId: this.lawsOpinionGatherId, lawsOpinionGatherId: this.lawsOpinionGatherId,
actiProcInstId: this.actiProcInstId, actiProcInstId: this.actiProcInstId,
pageSize:this.pageSize, pageSize: this.pageSize,
pageNo:this.pageNo pageNo: this.pageNo
} }
this.loading = true this.loading = true
getAction('/lawsOpinionGather/lawsOpinionAssessmentResultEO/page', query).then((res) => { getAction('/lawsOpinionGather/lawsOpinionAssessmentResultEO/page', query).then((res) => {
@@ -43,6 +43,7 @@
</div> </div>
<a-form-model-item class="itemModel" prop="endTime"> <a-form-model-item class="itemModel" prop="endTime">
<a-date-picker class="box-input" <a-date-picker class="box-input"
:disabledDate="disabledDate"
:placeholder="$t('PleaseSelect')+$t('closingDate')" :placeholder="$t('PleaseSelect')+$t('closingDate')"
@change="dateChange('endTime')" @change="dateChange('endTime')"
:getCalendarContainer="(trigger) => trigger.parentNode" :getCalendarContainer="(trigger) => trigger.parentNode"
@@ -141,7 +142,7 @@
addModelList: '/dummy/dummyInventoryInfoEO/queryPageDummy' addModelList: '/dummy/dummyInventoryInfoEO/queryPageDummy'
}, },
loading: false, loading: false,
JLoading:false, JLoading: false,
dataSource: [], dataSource: [],
selectedRowKeys: [], selectedRowKeys: [],
total: 0, total: 0,
@@ -162,6 +163,13 @@
message: this.$t('Assessor') + this.$t('cannotEmpty'), message: this.$t('Assessor') + this.$t('cannotEmpty'),
trigger: 'change' trigger: 'change'
} }
],
taskExplain: [
{
max: 300,
message: this.$t('taskDescription') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur'
}
] ]
}, },
searchParmes: {}, searchParmes: {},
@@ -172,12 +180,14 @@
align: 'center', align: 'center',
dataIndex: 'serial_number', dataIndex: 'serial_number',
width: 170, width: 170,
ellipsis: true,
scopedSlots: { customRender: 'serial_number' } scopedSlots: { customRender: 'serial_number' }
}, },
{ {
title: this.$t('title'), title: this.$t('title'),
align: 'center', align: 'center',
dataIndex: 'title', dataIndex: 'title',
ellipsis: true,
width: 170, width: 170,
scopedSlots: { customRender: 'titleName' } scopedSlots: { customRender: 'titleName' }
}, },
@@ -228,11 +238,14 @@
}, },
methods: { methods: {
...mapGetters(['userInfo']), ...mapGetters(['userInfo']),
disabledDate(current) {
return current && current < moment().subtract(1, 'day')
},
pageOnChange(page) { pageOnChange(page) {
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page, pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -261,7 +274,7 @@
if (this.selectedRowKeys.length > 1) { if (this.selectedRowKeys.length > 1) {
this.selectedRowKeys.shift() this.selectedRowKeys.shift()
} }
this.selectedRowKeysRecord = record.filter(res=>{ this.selectedRowKeysRecord = record.filter(res => {
return res.id == this.selectedRowKeys[0] return res.id == this.selectedRowKeys[0]
}) })
this.selectedRowKeysRecord = [...this.selectedRowKeysRecord] this.selectedRowKeysRecord = [...this.selectedRowKeysRecord]
@@ -297,14 +310,14 @@
dateChange(item) { dateChange(item) {
this.formInline[item] = this.formInline[item] ? moment(this.formInline[item]).format('YYYY-MM-DD') : '' this.formInline[item] = this.formInline[item] ? moment(this.formInline[item]).format('YYYY-MM-DD') : ''
}, },
getUUID(){ getUUID() {
var str=[]; var str = []
var Chars='0123456789abcdefghijklmnopqrstuvwxyz'; var Chars = '0123456789abcdefghijklmnopqrstuvwxyz'
for(var i=0;i<36;i++){ for (var i = 0; i < 36; i++) {
str[i]=Chars.substr(Math.floor(Math.random()*16),1) str[i] = Chars.substr(Math.floor(Math.random() * 16), 1)
} }
str[0]=str[8]=str[13]=str[18]=str[23]='-'; str[0] = str[8] = str[13] = str[18] = str[23] = '-'
return str.join("") return str.join('')
}, },
submit() { submit() {
this.$refs.ruleForm.validate(valid => { this.$refs.ruleForm.validate(valid => {
@@ -338,7 +351,7 @@
postAction('/workFlow/startProcess', query).then((res) => { postAction('/workFlow/startProcess', query).then((res) => {
if (res.success) { if (res.success) {
this.completeTask(value, res.result) this.completeTask(value, res.result)
}else{ } else {
this.JLoading = false this.JLoading = false
} }
}) })
@@ -92,7 +92,10 @@
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
:columns="columns" :columns="columns"
> >
<span slot="operation" slot-scope="text,record"> <span slot="serialNumber" :title="text" slot-scope="text,result">
<span>{{text}}</span>
</span>
<span slot="operation" slot-scope="text,record">
<a class="text-operation" @click="viewProcessClick(record)">{{$t('viewProcess')}}</a> <a class="text-operation" @click="viewProcessClick(record)">{{$t('viewProcess')}}</a>
<a class="text-operation" v-if="record.gatherResult == 'Completed'" <a class="text-operation" v-if="record.gatherResult == 'Completed'"
@click="evaluationResultsClick(record)">{{$t('evaluationResults')}}</a> @click="evaluationResultsClick(record)">{{$t('evaluationResults')}}</a>
@@ -129,7 +132,7 @@
//url传参严格按照当前命名 //url传参严格按照当前命名
url: { url: {
list: '/lawsOpinionGather/lawsOpinionGatherEO/page', list: '/lawsOpinionGather/lawsOpinionGatherEO/page',
getSysCategoryTree: '/sys/category/getSysCategoryTree', getSysCategoryTree: '/sys/category/getSysCategoryTree'
}, },
loading: false, loading: false,
toggleSearchStatus: false, toggleSearchStatus: false,
@@ -138,17 +141,17 @@
total: 0, total: 0,
pageSize: 10, pageSize: 10,
pageNo: 1, pageNo: 1,
CategoryTreeList:[], CategoryTreeList: [],
serialNumber:'', serialNumber: '',
queryParam: {}, queryParam: {},
gatherResultList:[ gatherResultList: [
{ {
value:'Underway', value: 'Underway',
name:this.$t('inProgress'), name: this.$t('Underway')
}, },
{ {
value:'Completed', value: 'Completed',
name:this.$t('Finished'), name: this.$t('Finished')
} }
], ],
columns: [ columns: [
@@ -156,12 +159,15 @@
title: this.$t('standard'), title: this.$t('standard'),
align: 'center', align: 'center',
dataIndex: 'serialNumber', dataIndex: 'serialNumber',
width: 170 ellipsis: true,
width: 170,
scopedSlots: { customRender: 'serialNumber' }
}, },
{ {
title: this.$t('title'), title: this.$t('title'),
align: 'center', align: 'center',
dataIndex: 'title', dataIndex: 'title',
ellipsis: true,
width: 170 width: 170
}, },
{ {
@@ -233,7 +239,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page, pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -248,7 +254,7 @@
let query = { let query = {
pageNo: this.pageNo, pageNo: this.pageNo,
pageSize: this.pageSize, pageSize: this.pageSize,
serialNumber: this.$route.query.serialNumber?this.$route.query.serialNumber:'', serialNumber: this.$route.query.serialNumber ? this.$route.query.serialNumber : '',
...queryParam ...queryParam
} }
this.loading = true this.loading = true
@@ -292,8 +298,8 @@
} }
</script> </script>
<style> <style>
.tree-select .ant-select-tree-dropdown{ .tree-select .ant-select-tree-dropdown {
height: 298px!important; height: 298px !important;
} }
</style> </style>
<style scoped> <style scoped>
@@ -164,7 +164,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page,pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -21,48 +21,23 @@
{{$t('addComparison')}} {{$t('addComparison')}}
</div> </div>
</div> </div>
<div class="content-box"> <div style="overflow: auto;height: calc(100vh - 160px);">
<div class="content-box-left"> <div class="content-box" :style="{'width':clientWidth}" v-if="isTrue">
<div class="content-box-left-text"> <div style="width: 100%" v-for="(item1,index) in 14" class="content-box-top">
hadhasdasdhadashdjk <div v-for="(item2,index2) in 16" style="width: 340px;display: inline-block" class="content-box-left">
</div> <div class="content-box-box-top" v-if="index == 0">
<div class="content-box-left-text"> <img src="../../../../assets/mobileHome.png" class="content-box-box-img" alt="">
hadhasdasdhadashdjk <span class="content-box-box-text">
</div>
<div class="content-box-left-text">
hadhasdasdhadashdjk
</div>
<div class="content-box-left-text">
hadhasdasdhadashdjk
</div>
<div class="content-box-left-text">
hadhasdasdhadashdjk
</div>
<div class="content-box-left-text">
hadhasdasdhadashdjk
</div>
<div class="content-box-left-text">
hadhasdasdhadashdjk
</div>
<div class="content-box-left-text">
hadhasdasdhadashdjk
</div>
<div class="content-box-left-text">
hadhasdasdhadashdjk
</div>
</div>
<div class="content-box-right" v-for="item1 in 9">
<div class="content-box-box-top">
<img src="../../../../assets/mobileHome.png" class="content-box-box-img" alt="">
<span class="content-box-box-text">
中国 中国
</span> </span>
</div> </div>
<div class="content-box-box" v-for="item in 9"> <div class="content-box-box" v-else>
<img src="../../../../assets/mobileHome.png" class="content-box-box-img" alt=""> <img src="../../../../assets/mobileHome.png" class="content-box-box-img" alt="">
<span class="content-box-box-text"> <span class="content-box-box-text">
中国 中国
</span> </span>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@@ -78,6 +53,7 @@
import { getAction, postAction, downloadFile } from '@/api/manage' import { getAction, postAction, downloadFile } from '@/api/manage'
import displayInformationModel from './displayInformationModel' import displayInformationModel from './displayInformationModel'
import countryCardViewAdd from './countryCardViewAdd' import countryCardViewAdd from './countryCardViewAdd'
export default { export default {
name: 'countryCardView', name: 'countryCardView',
components: { components: {
@@ -85,18 +61,26 @@
countryCardViewAdd countryCardViewAdd
}, },
data() { data() {
return {} return {
clientWidth: '',
isTrue: false
}
}, },
mounted() { mounted() {
this.isTrue = false
this.$nextTick(() => {
this.clientWidth = 340 * 14 + 'px'
this.isTrue = true
})
}, },
methods: { methods: {
displayInformationClick() { displayInformationClick() {
this.$refs.displayInformationModelRef.getData() this.$refs.displayInformationModelRef.getData()
}, },
newlyAddedClick() { newlyAddedClick() {
this.$refs.countryCardViewAddRef.add() this.$refs.countryCardViewAddRef.add()
}, },
countryCardViewAddForm(){ countryCardViewAddForm() {
} }
} }
@@ -180,36 +164,8 @@
} }
.content-box { .content-box {
overflow: auto;
white-space: nowrap;
position: relative; position: relative;
}
.content-box-left {
width: 200px;
background: #fff; background: #fff;
z-index: 111;
display: inline-block;
position: sticky;
left: 0;
border-top: 1px #d9d9d9 solid;
border-left: 1px #d9d9d9 solid;
border-bottom: 1px #d9d9d9 solid;
border-right: 1px #d9d9d9 solid;
}
.content-box-left-text {
font-size: 16px;
color: #040B29;
font-weight: 400;
text-align: center;
border-bottom: 1px #d9d9d9 solid;
height: 80px;
line-height: 80px;
}
.content-box-left-text:last-child {
border-bottom: none;
} }
.content-box-box-top { .content-box-box-top {
@@ -217,52 +173,69 @@
height: 160px; height: 160px;
display: inline-block; display: inline-block;
cursor: pointer; cursor: pointer;
border-left: 1px #d9d9d9 solid; background: #fff;
border-right: 1px #d9d9d9 solid;
border-top: 1px #d9d9d9 solid; border-top: 1px #d9d9d9 solid;
border-bottom: 1px #d9d9d9 solid;
.content-box-box-img {
width: 70%;
height: 100%;
}
.content-box-box-text {
display: inline-block;
width: 30%;
text-align: center;
font-size: 18px;
font-weight: 500;
color: #040B29;
}
}
.content-box-left:first-child .content-box-box-top {
border-left: 1px #d9d9d9 solid;
}
.content-box-box {
width: 340px;
display: inline-block;
height: 80px;
background: #fff;
border-right: 1px #d9d9d9 solid; border-right: 1px #d9d9d9 solid;
border-bottom: 1px #d9d9d9 solid; border-bottom: 1px #d9d9d9 solid;
cursor: pointer;
.content-box-box-img {
width: 70%;
height: 100%;
}
.content-box-box-text {
display: inline-block;
width: 30%;
text-align: center;
font-size: 18px;
font-weight: 500;
color: #040B29;
}
}
.content-box-left:first-child .content-box-box {
border-left: 1px #d9d9d9 solid;
}
.content-box-left:first-child {
position: sticky;
left: 0;
z-index: 110;
background: #fff;
}
.content-box-top:first-child {
position: sticky; position: sticky;
top: 0; top: 0;
z-index: 111; z-index: 111;
background: #fff; background: #fff;
} }
.content-box-right {
width: 339px;
position: relative;
display: inline-block;
border-top: 1px #d9d9d9 solid;
border-right: 1px #d9d9d9 solid;
border-bottom: 1px #d9d9d9 solid;
}
.content-box-right:last-child {
border-right: 1px #d9d9d9 solid;
}
.content-box-box-img {
width: 70%;
height: 100%;
}
.content-box-box-text {
display: inline-block;
width: 30%;
text-align: center;
font-size: 18px;
font-weight: 500;
color: #040B29;
}
.content-box-box {
width: 100%;
height: 80px;
border-bottom: 1px #d9d9d9 solid;
cursor: pointer;
}
.content-box-box:last-child {
border-bottom: none;
}
</style> </style>
@@ -185,7 +185,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page,pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -44,7 +44,7 @@
:columns="columns" :columns="columns"
> >
<span slot="language" slot-scope="text,record"> <span slot="language" slot-scope="text,record">
<span>{{text == 1?$t('chinese'):$t('English')}}</span> <span>{{text == 1?$t('simplifiedChinese'):$t('English')}}</span>
</span> </span>
<span slot="RegulationMonthlyName" slot-scope="text,record"> <span slot="RegulationMonthlyName" slot-scope="text,record">
<a @click="preview(record)">{{text}}</a> <a @click="preview(record)">{{text}}</a>
@@ -151,7 +151,7 @@
title: this.$t('operation'), title: this.$t('operation'),
align: 'center', align: 'center',
fixed: 'right', fixed: 'right',
width: 180, width: 240,
scopedSlots: { customRender: 'operation' } scopedSlots: { customRender: 'operation' }
} }
] ]
@@ -179,7 +179,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page, pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -220,9 +220,9 @@
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + item.fileId + fileSuffix) let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + item.fileId + fileSuffix)
window.open(url, '_blank') window.open(url, '_blank')
} else { } else {
if (item.createBy == this.userInfo().username){ if (item.createBy == this.userInfo().username) {
downloadFile('/sys/common/downLoadFile', item.name, { id: item.fileId, userName: this.userInfo().username }) downloadFile('/sys/common/downLoadFile', item.name, { id: item.fileId, userName: this.userInfo().username })
}else{ } else {
this.$message.warning(this.$t('theDoesNotSupportPreview')) this.$message.warning(this.$t('theDoesNotSupportPreview'))
} }
} }
@@ -249,11 +249,11 @@
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel">
<PersonnelSelection <PersonnelSelection
:query="{db_field_name:'lawsContactName',db_field_txt:$t('regulatoryContact')}" :query="{db_field_name:'lawsContact',db_field_txt:$t('regulatoryContact')}"
:personneQuery="formInline" :personneQuery="formInline"
:disabled="disabled" :disabled="disabled"
@change="PersonnelSelectionChange" @change="PersonnelSelectionChange"
v-model="formInline.lawsContact"/> v-model="formInline.lawsContactName"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -382,6 +382,12 @@
} else { } else {
this.formInline.technologyTerritory = [] this.formInline.technologyTerritory = []
} }
if (!this.formInline.useMethod) {
this.formInline.useMethod = undefined
}
if (!this.formInline.state) {
this.formInline.state = undefined
}
this.formInline = { ...this.formInline } this.formInline = { ...this.formInline }
} else { } else {
this.formInline = {} this.formInline = {}
@@ -443,6 +449,12 @@
formInline[res] = formInline[res].join(',') formInline[res] = formInline[res].join(',')
} }
}) })
if (!formInline.state || formInline.state == '' || formInline.state == 'null') {
formInline.state = ''
}
if (!formInline.useMethod || formInline.useMethod == '' || formInline.useMethod == 'null') {
formInline.useMethod = ''
}
callback && callback(formInline) callback && callback(formInline)
} }
}) })
@@ -97,7 +97,7 @@
title: this.$t('operation'), title: this.$t('operation'),
align: 'center', align: 'center',
fixed: 'right', fixed: 'right',
width: 180, width: 280,
scopedSlots: { customRender: 'operation' } scopedSlots: { customRender: 'operation' }
} }
] ]
@@ -51,6 +51,7 @@
class="box-input" class="box-input"
:getPopupContainer="triggerNode=> triggerNode.parentNode" :getPopupContainer="triggerNode=> triggerNode.parentNode"
allowClear allowClear
:disabled="isParentId"
v-model="formInline.parentId"> v-model="formInline.parentId">
<a-select-option v-for="(item, key) in ParentList" <a-select-option v-for="(item, key) in ParentList"
:key="item.id" :key="item.id"
@@ -110,7 +111,8 @@
url: { url: {
add: '/report/lawsMonthlyReportTitleTemplateEO/add', add: '/report/lawsMonthlyReportTitleTemplateEO/add',
edit: '/report/lawsMonthlyReportTitleTemplateEO/edit' edit: '/report/lawsMonthlyReportTitleTemplateEO/edit'
} },
isParentId: false
} }
}, },
mounted() { mounted() {
@@ -131,6 +133,7 @@
this.visible = true this.visible = true
this.getParent() this.getParent()
this.$nextTick(() => { this.$nextTick(() => {
this.isParentId = false
this.formInline = {} this.formInline = {}
this.$refs.ruleForm.clearValidate() this.$refs.ruleForm.clearValidate()
}) })
@@ -139,8 +142,13 @@
this.title = this.$t('edit') this.title = this.$t('edit')
this.visible = true this.visible = true
this.getParent() this.getParent()
this.isParentId = false
this.$nextTick(() => { this.$nextTick(() => {
this.formInline = row this.formInline = row
if (!row.parentId) {
this.formInline.parentId = undefined
this.isParentId = true
}
this.$refs.ruleForm.clearValidate() this.$refs.ruleForm.clearValidate()
}) })
}, },
@@ -38,7 +38,6 @@
<a-form-model-item class="itemModel" prop="language"> <a-form-model-item class="itemModel" prop="language">
<a-select :placeholder="$t('PleaseSelect')+$t('monthlyLanguage')" <a-select :placeholder="$t('PleaseSelect')+$t('monthlyLanguage')"
:disabled="disabled" :disabled="disabled"
class="box-input"
:getPopupContainer="triggerNode=> triggerNode.parentNode" :getPopupContainer="triggerNode=> triggerNode.parentNode"
allowClear allowClear
v-model="formInline.language"> v-model="formInline.language">
@@ -61,7 +60,8 @@
<a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button> <a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
</div> </div>
</a-drawer> </a-drawer>
<uploadFile ref="uploadFile" :isMultiple="true" @uploadSuccess="uploadSuccess"></uploadFile> <uploadFile ref="uploadFile" :restrictUploads="true" :isMultiple="true" :Uploadable="'.docx,.doc,.pdf'"
@uploadSuccess="uploadSuccess"></uploadFile>
</div> </div>
</template> </template>
@@ -95,7 +95,7 @@
visible: false, visible: false,
languageList: [ languageList: [
{ {
text: this.$t('chinese'), text: this.$t('simplifiedChinese'),
value: 1 value: 1
}, },
{ {
@@ -275,7 +275,7 @@
.button-text { .button-text {
height: 38px; height: 38px;
width: calc(100% - 100px); width: 100%;
line-height: 38px; line-height: 38px;
background: #fff; background: #fff;
border: 1px #00B3BE solid; border: 1px #00B3BE solid;
@@ -250,12 +250,14 @@
align: 'center', align: 'center',
dataIndex: 'serial_number', dataIndex: 'serial_number',
width: 170, width: 170,
ellipsis: true,
scopedSlots: { customRender: 'serial_number' } scopedSlots: { customRender: 'serial_number' }
}, },
{ {
title: this.$t('title'), title: this.$t('title'),
align: 'center', align: 'center',
dataIndex: 'title', dataIndex: 'title',
ellipsis: true,
width: 170, width: 170,
scopedSlots: { customRender: 'titleName' } scopedSlots: { customRender: 'titleName' }
}, },
@@ -335,7 +337,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page, pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -101,7 +101,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page,pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -306,7 +306,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page,pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -210,7 +210,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page,pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -94,7 +94,7 @@
</a-row> </a-row>
</a-form-model> </a-form-model>
</a-modal> </a-modal>
<uploadFile ref="uploadFile" :restrictUploads="true" :isMultiple="true" @uploadSuccess="uploadSuccess"/> <uploadFile ref="uploadFile" :restrictUploads="true" :Uploadable="'.docx,.doc,'" :isMultiple="true" @uploadSuccess="uploadSuccess"/>
<standardData ref="standardDataRef" @standardDataForm="standardDataForm"/> <standardData ref="standardDataRef" @standardDataForm="standardDataForm"/>
</div> </div>
</template> </template>
@@ -249,7 +249,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page,pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()
@@ -5,7 +5,7 @@
{{title}} {{title}}
</div> </div>
</div> </div>
<div class="content-text"> <div class="content-text-text">
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm"> <a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
<div v-for="(item,index) in formInline.dataList" :key="index"> <div v-for="(item,index) in formInline.dataList" :key="index">
<div class="feedbackPoint"> <div class="feedbackPoint">
@@ -41,18 +41,15 @@
<a-col :span="12"> <a-col :span="12">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text"> <div class="title-text">
<span class="Required">*</span> <span class="title-text-text" :title="$t('enclosure')">{{$t('enclosure')}}</span>
<span class="title-text-text"
:title="$t('questionsSuggestions')">{{$t('questionsSuggestions')}}</span>
</div> </div>
<a-form-model-item class="itemModel" :prop="'dataList.'+index+'.issueOrSuggest'" <a-form-model-item class="itemModel" prop="accessoryFile">
:rules="[{ required: true, message: $t('questionsSuggestions') + $t('cannotEmpty'), trigger: 'blur'}, <a-button type="primary" class="button-text"
{max: 300,message: $t('questionsSuggestions') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur' @click="clickButtonToUpload('accessoryFile',index)">
}]"> {{ (item.accessoryFile === 'null' || item.accessoryFile === '' ||
<a-input class="box-input" item.accessoryFile == null) ? $t('clickUpload') : $t('viewUploadedFiles')
:disabled="disabled" }}
v-model="item.issueOrSuggest" </a-button>
:placeholder="$t('PleaseEnter')+$t('questionsSuggestions')"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -63,26 +60,30 @@
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t('reason')">{{$t('reason')}}</span> <span class="title-text-text" :title="$t('reason')">{{$t('reason')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel"
<a-input class="box-input" :prop="'dataList.'+index+'.reason'"
:disabled="disabled" :rules="[{max: 300,message: $t('reason') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'
v-model="item.reason" }]">
:placeholder="$t('PleaseEnter')+$t('reason')"/> <a-textarea :placeholder="$t('PleaseEnter')+$t('reason')"
:disabled="disabled"
v-model="item.reason" :rows="4"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text"> <div class="title-text">
<span class="title-text-text" :title="$t('enclosure')">{{$t('enclosure')}}</span> <span class="Required">*</span>
<span class="title-text-text"
:title="$t('questionsSuggestions')">{{$t('questionsSuggestions')}}</span>
</div> </div>
<a-form-model-item class="itemModel" prop="accessoryFile"> <a-form-model-item class="itemModel" :prop="'dataList.'+index+'.issueOrSuggest'"
<a-button type="primary" class="button-text" :rules="[{ required: true, message: $t('questionsSuggestions') + $t('cannotEmpty'), trigger: 'blur'},
@click="clickButtonToUpload('accessoryFile',index)"> {max: 300,message: $t('questionsSuggestions') + $t('cannotExceed') + 300 + $t('Characters'),trigger: 'blur'
{{ (item.accessoryFile === 'null' || item.accessoryFile === '' || }]">
item.accessoryFile == null) ? $t('clickUpload') : $t('viewUploadedFiles') <a-textarea :placeholder="$t('PleaseEnter')+$t('questionsSuggestions')"
}} :disabled="disabled"
</a-button> v-model="item.issueOrSuggest" :rows="4"/>
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -9,7 +9,8 @@
</div> </div>
</div> </div>
<div class="content-text"> <div class="content-text">
<div class="text-field" v-for="(item,index) in standardContentList" :key="index"> <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-left" :title="item.title">{{item.title}}</span>
<span class="text-field-right text-field-right-url" <span class="text-field-right text-field-right-url"
:title="queryForm[item.value]" :title="queryForm[item.value]"
@@ -21,7 +22,6 @@
@click="clickButtonToUpload(queryForm[item.value])" @click="clickButtonToUpload(queryForm[item.value])"
v-if="item.type == 2 && queryForm[item.value]" v-if="item.type == 2 && queryForm[item.value]"
>{{ $t('viewFile') }}</span> >{{ $t('viewFile') }}</span>
<span class="text-field-right" <span class="text-field-right"
:title="queryForm[item.value]" v-else :title="queryForm[item.value]" v-else
>{{queryForm[item.value]}}</span> >{{queryForm[item.value]}}</span>
@@ -58,14 +58,14 @@
type: Object, type: Object,
default: {} default: {}
}, },
title:{ title: {
type:String, type: String,
default:'', default: ''
},
isConfirmationDeadline:{
type:Boolean,
default:false,
}, },
isConfirmationDeadline: {
type: Boolean,
default: false
}
}, },
components: { components: {
viewFileModel viewFileModel
@@ -77,6 +77,7 @@
}, },
mounted() { mounted() {
this.queryForm = this.standardContentQuery this.queryForm = this.standardContentQuery
this.queryForm.taskExplain = 'sdf dsjf;l sdf;ldsf ;lsdfkj d;lsfkds;lfdksf第三方是德国搞定过分乐观看待给对方;公开地方领导反馈给东丽的反馈给管库给的给'
}, },
methods: { methods: {
urlClick(val) { urlClick(val) {
@@ -147,5 +148,40 @@
cursor: pointer; cursor: pointer;
} }
} }
.text-content-button-one {
width: 100%;
.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;
float: left;
margin-top: 3px;
}
.text-field-right {
width: calc(100% - 200px);
display: inline-block;
font-size: 16px;
text-overflow: ellipsis;
white-space: pre-wrap;
overflow: visible;
float: left;
color: #040B29;
font-weight: 400;
}
.text-field-right-url {
color: #00B3BE !important;
cursor: pointer;
}
}
} }
</style> </style>
@@ -88,7 +88,8 @@
{}, {},
{ {
title: this.$t('taskDescription'), title: this.$t('taskDescription'),
value: 'taskExplain' value: 'taskExplain',
type:4,
} }
// { // {
// title: this.$t('remarks'), // title: this.$t('remarks'),
@@ -298,7 +298,7 @@
this.pageNo = page this.pageNo = page
this.getList() this.getList()
}, },
SizeChange(pageSize) { SizeChange(page,pageSize) {
this.pageNo = 1 this.pageNo = 1
this.pageSize = pageSize this.pageSize = pageSize
this.getList() this.getList()