合并分支 'dev_third_stage' 到 'master'
Dev third stage 查看合并请求 laws-nio/laws-weilai!165
@@ -1084,3 +1084,8 @@ COMMENT='清单确认-拒绝原因表'
|
||||
ROW_FORMAT=DYNAMIC
|
||||
;
|
||||
|
||||
-- 增加 中国台湾 国旗数据 2022-09-06
|
||||
INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('28', NULL, NULL, NULL, NULL, NULL, '中国台湾', 'Tai Wan China', NULL, '/jero-boot/nationalFlag/TaiWanChina.png');
|
||||
-- 增加 中国台湾 数据字典数据 2022-09-06
|
||||
INSERT INTO `laws_weilai`.`sys_dict_item` (`id`, `dict_id`, `item_text`, `item_value`, `description`, `sort_order`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `is_tag_dict`, `is_read_only`, `attribute_type`, `del_flag`, `en_name`) VALUES ('1567085557701386242', '1493782108399820801', '中国台湾', '96d49ba5797d4791906ce2baee87d4bc', '中国台湾', 1, 1, 'admin', '2022-09-06 17:41:27', 'admin', '2022-09-06 17:41:35', 1, NULL, NULL, '0', 'Tai Wan China');
|
||||
|
||||
|
||||
@@ -95,6 +95,7 @@ public class ShiroConfig {
|
||||
filterChainDefinitionMap.put("/sys/common/download/**", "anon");//文件预览
|
||||
filterChainDefinitionMap.put("/sys/split/file/**", "anon");//图片预览
|
||||
filterChainDefinitionMap.put("/generic/**", "anon");//pdf预览需要文件
|
||||
filterChainDefinitionMap.put("/document/bussDocumentLibraryEO/updateES", "anon");//编辑ES数据
|
||||
filterChainDefinitionMap.put("/", "anon");
|
||||
filterChainDefinitionMap.put("/doc.html", "anon");
|
||||
filterChainDefinitionMap.put("/**/*.js", "anon");
|
||||
@@ -155,6 +156,7 @@ public class ShiroConfig {
|
||||
filterChainDefinitionMap.put("/lark/larkEventSubscriptionConfig", "anon"); //飞书调用接口,事件订阅配置。
|
||||
filterChainDefinitionMap.put("/lark/larkCardMessageConfig", "anon"); //飞书调用接口,卡片消息配置。
|
||||
filterChainDefinitionMap.put("/sys/user/querySysUserListByIdList", "anon"); // 工作流根据用户idList获取用户信息接口
|
||||
filterChainDefinitionMap.put("/project/projectTaskInventoryConditionAssessmentEO/initConditionAssessment", "anon"); // 初始化项目当前状态数据接口
|
||||
|
||||
// 添加自己的过滤器并且取名为jwt
|
||||
Map<String, Filter> filterMap = new HashMap<String, Filter>(1);
|
||||
|
||||
@@ -2250,7 +2250,12 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
|
||||
try {
|
||||
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
|
||||
String issueTime = (String) map.get("issue_time");
|
||||
String issueTime = "";
|
||||
if(ObjectUtils.isNotEmpty(map.get("es_update_flag")) && ObjectUtils.isNotEmpty(map.get("issue_time"))){
|
||||
map.put("issue_time",df.format(map.get("issue_time")));
|
||||
}else{
|
||||
issueTime = (String) map.get("issue_time");
|
||||
}
|
||||
Date issueTimeDate = null;
|
||||
if(StringUtils.isNotBlank(issueTime)){
|
||||
issueTimeDate = df.parse(issueTime);
|
||||
@@ -2311,13 +2316,14 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
mapCopy(stringObjectMap, mapT);
|
||||
dataListTemp.add(mapT);
|
||||
}
|
||||
//编辑ES(更新搜索中心的历史数据,不需要发消息)
|
||||
if(ObjectUtils.isEmpty(map.get("es_update_flag"))){
|
||||
//更新log
|
||||
updateLog(map, dataList, fieldList, fieldDateList, fieldFileList, fieldPullList, cut);
|
||||
//处理修改代替标准,发送通知
|
||||
sendMessageUpdate(mapTemp, dataListTemp, fieldList, fieldDateList, fieldFileList, fieldPullList, cut);
|
||||
}
|
||||
|
||||
//更新log
|
||||
updateLog(map, dataList, fieldList, fieldDateList, fieldFileList, fieldPullList, cut);
|
||||
//判断该条数据是否订阅
|
||||
|
||||
//处理修改代替标准,发送通知
|
||||
sendMessageUpdate(mapTemp, dataListTemp, fieldList, fieldDateList, fieldFileList, fieldPullList, cut);
|
||||
|
||||
//树形数据字典
|
||||
List<SysCategory> categoryList = sysCategoryService.list();
|
||||
@@ -2360,8 +2366,11 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
if (ObjectUtils.isNotEmpty(value)) {
|
||||
//处理修改人和修改时间
|
||||
if ("update_by".equals(key)) {
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
value = sysUser.getUsername();
|
||||
//编辑ES时不处理(修改搜索中心历史数据)
|
||||
if(ObjectUtils.isEmpty(map.get("es_update_flag"))){
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
value = sysUser.getUsername();
|
||||
}
|
||||
}
|
||||
List<OnlCgformField> fieldDate = fieldDateList.stream().filter(e -> entry.getKey().equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||
//处理时间类型
|
||||
@@ -5737,11 +5746,17 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
String dbFieldName = onlCgformField.getDbFieldName();
|
||||
for (Map.Entry<String, Object> entry : map.entrySet()) {
|
||||
String key = entry.getKey();
|
||||
String value = (String) entry.getValue();
|
||||
if (dbFieldName.equals(key)) {
|
||||
List<OSSFile> files = oSSFileAll.stream().filter(e -> StringUtils.isNotBlank(value) && value.equals(e.getConnectId())).collect(Collectors.toList());
|
||||
if (files.size() != 0) {
|
||||
result.addAll(files);
|
||||
if(!"create_time".equals(key)
|
||||
&& !"update_time".equals(key)
|
||||
&& !"issue_time".equals(key)
|
||||
&& !"implement_time".equals(key)
|
||||
&& !"xin1_che1_xing2_shi2_shi1_ri4_qi1".equals(key)){
|
||||
String value = (String) entry.getValue();
|
||||
if (dbFieldName.equals(key)) {
|
||||
List<OSSFile> files = oSSFileAll.stream().filter(e -> StringUtils.isNotBlank(value) && value.equals(e.getConnectId())).collect(Collectors.toList());
|
||||
if (files.size() != 0) {
|
||||
result.addAll(files);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -195,4 +195,15 @@ public class ConditionAssessmentEOController extends JeroController<ConditionAss
|
||||
public Result<?> addOrUpdateConditionAssessmentBatch(@RequestBody ConditionAssessmentVO conditionAssessmentVO) {
|
||||
return conditionAssessmentEOService.addOrUpdateBatch(conditionAssessmentVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始化当前项目状态评估数据 (法规清单在项目状态评估表中没有的)
|
||||
*/
|
||||
@AutoLog(value = "任务清单-项目状态评估表-初始化当前项目状态评估数据")
|
||||
@ApiOperation(value="任务清单-项目状态评估表-初始化当前项目状态评估数据", notes="任务清单-项目状态评估表-初始化当前项目状态评估数据")
|
||||
@GetMapping(value = "/initConditionAssessment")
|
||||
public Result<?> initConditionAssessment(@RequestParam Map<String,Object> params) {
|
||||
this.conditionAssessmentEOService.initConditionAssessment(params);
|
||||
return Result.OK("初始化数据成功!");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -98,4 +98,10 @@ public interface IConditionAssessmentEOService extends IService<ConditionAssessm
|
||||
* @param conditionAssessmentVO
|
||||
*/
|
||||
Result<?> addOrUpdateBatch(ConditionAssessmentVO conditionAssessmentVO);
|
||||
|
||||
/**
|
||||
* 初始化项目当前状态数据
|
||||
* @param params
|
||||
*/
|
||||
void initConditionAssessment(Map<String, Object> params);
|
||||
}
|
||||
|
||||
@@ -5,14 +5,18 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.project.entity.ConditionAssessmentEO;
|
||||
import com.jero.modules.project.entity.ProjectLawsInventoryEO;
|
||||
import com.jero.modules.project.entity.ProjectTaskInventoryEO;
|
||||
import com.jero.modules.project.enums.CurrentProjectStatusEnum;
|
||||
import com.jero.modules.project.enums.ProjectRoleEnum;
|
||||
import com.jero.modules.project.mapper.ConditionAssessmentEOMapper;
|
||||
import com.jero.modules.project.service.IConditionAssessmentEOService;
|
||||
import com.jero.modules.project.service.IProjectLawsInventoryEOService;
|
||||
import com.jero.modules.project.vo.ConditionAssessmentVO;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.*;
|
||||
@@ -27,6 +31,9 @@ import java.util.stream.Collectors;
|
||||
@Service
|
||||
public class ConditionAssessmentEOServiceImpl extends ServiceImpl<ConditionAssessmentEOMapper,ConditionAssessmentEO> implements IConditionAssessmentEOService {
|
||||
|
||||
@Autowired
|
||||
private IProjectLawsInventoryEOService projectLawsInventoryEOService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
@@ -317,4 +324,42 @@ public class ConditionAssessmentEOServiceImpl extends ServiceImpl<ConditionAsses
|
||||
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initConditionAssessment(Map<String, Object> params) {
|
||||
String projectLibraryId = (String) params.get("projectLibraryId");
|
||||
|
||||
QueryWrapper<ProjectLawsInventoryEO> lawsInventoryQueryWrapper = new QueryWrapper<>();
|
||||
if(StringUtils.isNotEmpty(projectLibraryId)){
|
||||
//如果项目库id不为空,只处理这一个项目下的数据。
|
||||
lawsInventoryQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId);
|
||||
}
|
||||
List<ProjectLawsInventoryEO> lawsInventoryEOList = this.projectLawsInventoryEOService.list(lawsInventoryQueryWrapper);
|
||||
if(CollectionUtils.isNotEmpty(lawsInventoryEOList)){
|
||||
QueryWrapper<ConditionAssessmentEO> conditionAssessmentQueryWrapper = new QueryWrapper<>();
|
||||
List<ConditionAssessmentEO> conditionAssessmentEOList = this.baseMapper.selectList(conditionAssessmentQueryWrapper);
|
||||
|
||||
//过滤出,没有项目当前状态数据的法规清单数据
|
||||
lawsInventoryEOList = lawsInventoryEOList.stream().filter(lawsInventory -> {
|
||||
boolean flag = true;
|
||||
for (ConditionAssessmentEO conditionAssessmentEO : conditionAssessmentEOList) {
|
||||
if(StringUtils.equals(lawsInventory.getId(),conditionAssessmentEO.getProjectLawsInventoryId())){
|
||||
flag = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return flag;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
if(CollectionUtils.isNotEmpty(lawsInventoryEOList)){
|
||||
for (ProjectLawsInventoryEO lawsInventory : lawsInventoryEOList) {
|
||||
ConditionAssessmentEO conditionAssessmentEO = new ConditionAssessmentEO();
|
||||
conditionAssessmentEO.setRoleCode(ProjectRoleEnum.REGULATI_AND_HOMOLOGATION_ENGINEER.getValue());
|
||||
conditionAssessmentEO.setProjectLawsInventoryId(lawsInventory.getId());
|
||||
conditionAssessmentEO.setConditionAssessment(CurrentProjectStatusEnum.BLUE.getValue());
|
||||
this.addOrUpdate(conditionAssessmentEO);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1519,7 +1519,7 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService {
|
||||
list1.add("</text>");
|
||||
mapTemp.put("pre_tags", list);
|
||||
mapTemp.put("post_tags", list1);
|
||||
mapTemp.put("fragment_size", 280);//高亮字段内容长度,去除html样式标签,统计字数,设置为200
|
||||
mapTemp.put("fragment_size", 500);//高亮字段内容长度,去除html样式标签,统计字数,设置为200
|
||||
mapTemp.put("number_of_fragments", 1);//高亮内容默认分为5段, 此处设置为一段
|
||||
mapTemp.put("type", "plain");
|
||||
mapHighlight.put(key, mapTemp);
|
||||
|
||||
|
Before Width: | Height: | Size: 153 KiB After Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 65 KiB After Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 198 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 9.2 KiB |
|
Before Width: | Height: | Size: 117 KiB After Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 305 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 85 KiB After Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 127 KiB After Width: | Height: | Size: 25 KiB |
@@ -1283,4 +1283,6 @@ module.exports = {
|
||||
rejectReason:'Reject Reason',
|
||||
collectionLegislativeComments:'Collection of Legislative Comments',
|
||||
regulatoryAndTechnicalAssessment:'Regulatory and technical assessment',
|
||||
listConfirmationRejectionReason:'List confirmation rejection reason',
|
||||
taskConfirmationRejectionReason:'Task confirmation rejection reason'
|
||||
}
|
||||
@@ -834,7 +834,7 @@ module.exports = {
|
||||
feedbackMessage: '反馈意见',
|
||||
result: '结果',
|
||||
opinion: '意见',
|
||||
operationNode: '操作节点',
|
||||
OperationNode: '操作节点',
|
||||
selectInquiry: '选择询问人',
|
||||
sendBack: '退回',
|
||||
taskConfirmationProcess: '任务确认流程',
|
||||
@@ -1385,5 +1385,6 @@ module.exports = {
|
||||
rejectReason:'拒绝原因',
|
||||
collectionLegislativeComments:'法规意见收集',
|
||||
regulatoryAndTechnicalAssessment:'法规技术评估',
|
||||
|
||||
listConfirmationRejectionReason:'清单确认驳回原因',
|
||||
taskConfirmationRejectionReason:'任务确认驳回原因'
|
||||
}
|
||||
@@ -12,43 +12,6 @@
|
||||
<div style="padding-top: 68px;background: #fff">
|
||||
<div class="detail-content" style="padding: 24px">
|
||||
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('displayPermission')">{{$t('displayPermission')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="showPermissions">
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('displayPermission')"
|
||||
@change="showPermissionsChange"
|
||||
v-model="formInline.showPermissions">
|
||||
<a-select-option v-for="(item, key) in projectNameList"
|
||||
:key="key"
|
||||
:value="item.value">
|
||||
<span class="selectText" :title=" item.name ">
|
||||
{{ item.name}}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="8" v-if="isDisplay">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('authorizedUser')">{{$t('authorizedUser')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="studioEngineerName">
|
||||
<PersonnelSelection :query="{db_field_name:'studioEngineer',db_field_txt:$t('authorizedUser')}"
|
||||
:personneQuery="formInline"
|
||||
@change="PersonnelSelectionChange"
|
||||
v-model="formInline.studioEngineerName"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="8">
|
||||
<div class="box-title-text">
|
||||
@@ -106,25 +69,55 @@
|
||||
<a-col :span="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text" :title="$t('standardNo')">{{$t('standardNo')}}</span>
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('displayPermission')">{{$t('displayPermission')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="standNumber">
|
||||
<a-input class="box-input"
|
||||
:title="formInline.standNumber"
|
||||
:disabled="true"
|
||||
v-model="formInline.standNumber"
|
||||
:placeholder="$t('PleaseEnter')+$t('standardNo')"/>
|
||||
<a-form-model-item class="itemModel" prop="showPermissions">
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('displayPermission')"
|
||||
@change="showPermissionsChange"
|
||||
v-model="formInline.showPermissions">
|
||||
<a-select-option v-for="(item, key) in projectNameList"
|
||||
:key="key"
|
||||
:value="item.value">
|
||||
<span class="selectText" :title=" item.name ">
|
||||
{{ item.name}}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="8" v-if="isDisplay">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
<span class="title-text-text" :title="$t('authorizedUser')">{{$t('authorizedUser')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="studioEngineerName">
|
||||
<PersonnelSelection :query="{db_field_name:'studioEngineer',db_field_txt:$t('authorizedUser')}"
|
||||
:personneQuery="formInline"
|
||||
@change="PersonnelSelectionChange"
|
||||
v-model="formInline.studioEngineerName"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"></span>
|
||||
<span class="title-text-text" :title="$t('standardNo')">{{$t('standardNo')}}</span>
|
||||
</div>
|
||||
<a-button class="box-button" type="primary" @click="bringInDocumentInformationClick">
|
||||
{{$t('bringInDocumentInformation')}}
|
||||
</a-button>
|
||||
<a-form-model-item class="itemModel" prop="standNumber">
|
||||
<a-input class="box-input-index"
|
||||
:title="formInline.standNumber"
|
||||
:disabled="true"
|
||||
v-model="formInline.standNumber"
|
||||
:placeholder="$t('PleaseEnter')+$t('standardNo')"/>
|
||||
<a-button class="box-button-index"
|
||||
:title="$t('bringInDocumentInformation')"
|
||||
type="primary" @click="bringInDocumentInformationClick">
|
||||
{{$t('bringInDocumentInformation')}}
|
||||
</a-button>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -584,6 +577,26 @@
|
||||
margin-top: 4px;
|
||||
}
|
||||
|
||||
.box-button-index {
|
||||
height: 38px;
|
||||
margin-top: 2px;
|
||||
width: 120px;
|
||||
overflow: hidden;
|
||||
padding: 0 0;
|
||||
float: right;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
::v-deep .box-button-index span {
|
||||
display: inline-block;
|
||||
width: 100px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
margin-top: 4px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.submit-button {
|
||||
width: 100%;
|
||||
margin-top: 20px;
|
||||
@@ -612,4 +625,11 @@
|
||||
overflow: hidden;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.box-input-index {
|
||||
width: calc(100% - 130px);
|
||||
display: inline-block;
|
||||
height: 38px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
</style>
|
||||
@@ -18,6 +18,7 @@
|
||||
<template v-for="tag in tagList">
|
||||
<a-checkable-tag
|
||||
:key="tag.id"
|
||||
:title="tag.problemLabel"
|
||||
:checked="selectedTags.indexOf(tag.id) > -1"
|
||||
@change="checked => handleChange(tag.id, checked)"
|
||||
>
|
||||
@@ -45,7 +46,7 @@
|
||||
<div style="margin-bottom: 10px;position: relative">
|
||||
<!-- <a-checkbox :value="item.id" class="checkbox-left"></a-checkbox>-->
|
||||
<div class="text-text-right"
|
||||
:class="{ 'null-input':item.checked }">
|
||||
:class="{ 'null-input':index % 2 == 0 ? true : false}">
|
||||
<div class="text-header" @click="titleClick(item)">
|
||||
<a-tooltip placement="topLeft" :mouseEnterDelay="0.5">
|
||||
<template slot="title">
|
||||
@@ -306,7 +307,7 @@
|
||||
}
|
||||
|
||||
.text-text-right {
|
||||
padding: 19px 0;
|
||||
padding: 19px 20px;
|
||||
box-sizing: border-box;
|
||||
/*margin-left: 38px;*/
|
||||
}
|
||||
@@ -352,8 +353,15 @@
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
opacity: 0.7;
|
||||
white-space: pre-wrap;
|
||||
word-wrap: break-word;
|
||||
overflow: hidden;
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
/*! autoprefixer: off */
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: 4;
|
||||
/*! autoprefixer: on;*/
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.page {
|
||||
@@ -367,18 +375,9 @@
|
||||
line-height: 10;
|
||||
}
|
||||
|
||||
::v-deep .ant-tag {
|
||||
padding: 2px 4px;
|
||||
background: #9B9DA9;
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
::v-deep .ant-tag-checkable:not(.ant-tag-checkable-checked):hover {
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
::v-deep .ant-tag-checkable-checked {
|
||||
background: #21c9cc;
|
||||
border: 1px #21c9cc solid;
|
||||
color: #21c9cc;
|
||||
}
|
||||
|
||||
::v-deep p {
|
||||
@@ -394,11 +393,21 @@
|
||||
}
|
||||
|
||||
.box-content-left .ant-tag-checkable {
|
||||
padding: 3px 8px;
|
||||
padding: 4px 10px;
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
margin-bottom: 10px;
|
||||
background: #fff;
|
||||
border: 1px #d9d9d9 solid;
|
||||
color: rgba(0, 0, 0, 0.65);
|
||||
max-width: 150px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.box-content-left .ant-tag-checkable-checked {
|
||||
color: #fff;
|
||||
.box-content-left .ant-tag-checkable-checked{
|
||||
border: 1px #21c9cc solid;
|
||||
color: #21c9cc;
|
||||
}
|
||||
</style>
|
||||
@@ -26,10 +26,10 @@
|
||||
</div>
|
||||
<div v-if="conList.length > 0" style="height: calc(100vh - 240px);overflow:auto;">
|
||||
<div v-for="(item,index) in conList" :key="item.id">
|
||||
<div style="margin-bottom: 10px;position: relative;overflow: hidden">
|
||||
<div style="margin-bottom: 10px;position: relative;overflow: hidden"
|
||||
:class="{ 'null-input':index % 2 == 0 ? true : false }">
|
||||
<!-- <a-checkbox :value="item.id" class="checkbox-left"></a-checkbox>-->
|
||||
<div class="text-text-right"
|
||||
:class="{ 'null-input':item.checked }">
|
||||
<div class="text-text-right">
|
||||
<div class="text-header" @click="titleClick(item)">
|
||||
<a-tooltip placement="topLeft" :mouseEnterDelay="0.5">
|
||||
<template slot="title">
|
||||
@@ -270,7 +270,7 @@
|
||||
}
|
||||
|
||||
.text-text-right {
|
||||
padding: 19px 0;
|
||||
padding: 19px 19px;
|
||||
width: calc(100% - 180px);
|
||||
box-sizing: border-box;
|
||||
/*margin-left: 38px;*/
|
||||
@@ -327,6 +327,15 @@
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
opacity: 0.7;
|
||||
overflow: hidden;
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
/*! autoprefixer: off */
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: 4;
|
||||
/*! autoprefixer: on;*/
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all;
|
||||
}
|
||||
|
||||
.page {
|
||||
|
||||
@@ -291,10 +291,7 @@ export default {
|
||||
userData: {},
|
||||
wrapperCol: { span: 16 },
|
||||
contentVisible: false, //条款内容弹框显示
|
||||
queryParams: {
|
||||
pageNo: 1,
|
||||
pageSize: 10
|
||||
},
|
||||
queryParams: {},
|
||||
pageSize: 10,
|
||||
pageNo: 1,
|
||||
disabled:false,
|
||||
@@ -747,7 +744,7 @@ export default {
|
||||
}
|
||||
},
|
||||
pageOnChange(page, pageSize) {
|
||||
this.queryParams.pageNo = page
|
||||
this.pageNo = page
|
||||
this.loadData()
|
||||
},
|
||||
addModelList() {
|
||||
@@ -761,6 +758,8 @@ export default {
|
||||
//获取列表数据
|
||||
loadData(item) {
|
||||
this.queryParams.supFolder = this.menuId
|
||||
this.queryParams.pageNo= this.pageNo
|
||||
this.queryParams.pageSize= this.pageSize
|
||||
let params = {
|
||||
...this.queryParams,
|
||||
...item,
|
||||
@@ -785,10 +784,8 @@ export default {
|
||||
},
|
||||
//清空
|
||||
searchReset() {
|
||||
this.queryParams = {
|
||||
pageNo: 1,
|
||||
pageSize: 10
|
||||
}
|
||||
this.pageNo = 1
|
||||
this.queryParams = {}
|
||||
this.loadData()
|
||||
},
|
||||
//新增
|
||||
@@ -942,13 +939,13 @@ export default {
|
||||
},
|
||||
//点击页数
|
||||
onChangePage(page, pageSize) {
|
||||
this.queryParams.pageNo = page
|
||||
this.pageNo = page
|
||||
this.loadData()
|
||||
},
|
||||
//一页显示条数
|
||||
SizeChange(page, pageSize) {
|
||||
this.queryParams.pageSize = pageSize
|
||||
this.queryParams.pageNo = 1
|
||||
this.pageSize = pageSize
|
||||
this.pageNo = 1
|
||||
this.loadData()
|
||||
},
|
||||
// 上传文件
|
||||
|
||||
@@ -189,8 +189,8 @@
|
||||
rejectUserId:this.userInfo().id,
|
||||
rejectTime:rejectTime,
|
||||
rejectCause:rejectCause,
|
||||
projectLawsInventoryId:ids.join(','),
|
||||
rejectType:'0',
|
||||
projectLawsInventoryId:ids,
|
||||
rejectType:'1',
|
||||
}
|
||||
postAction('/project/projectLawsInventoryRejectCauseEO/add', query).then((res) => {
|
||||
|
||||
@@ -198,9 +198,9 @@
|
||||
},
|
||||
completeTask(value, handlingTime) {
|
||||
let json = Object.assign(this.queryBy, { handlingTime: handlingTime }, value)
|
||||
// if (json.flag == '1'){
|
||||
// this.rejectCauseAdd(value.approvalOpinion,this.queryBy.id)
|
||||
// }
|
||||
if (json.flag == '1'){
|
||||
this.rejectCauseAdd(value.approvalOpinion,this.queryBy.id)
|
||||
}
|
||||
Object.keys(json).forEach(res => {
|
||||
if (json[res] && typeof json[res] == 'string') {
|
||||
json[res] = json[res].replace(/\"/g, '“')
|
||||
|
||||
@@ -805,8 +805,9 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
<div class="header-text" v-if="rejectCauseList && rejectCauseList.length > 0">
|
||||
{{$t('reasonsForRejection')}}
|
||||
{{$t('listConfirmationRejectionReason')}}
|
||||
</div>
|
||||
|
||||
<div v-if="rejectCauseList && rejectCauseList.length > 0"
|
||||
v-for="(item,index) in rejectCauseList">
|
||||
<a-row :gutter="24">
|
||||
@@ -847,6 +848,51 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
|
||||
<div class="header-text" v-if="rejectCauseListOne && rejectCauseListOne.length > 0">
|
||||
{{$t('taskConfirmationRejectionReason')}}
|
||||
</div>
|
||||
|
||||
<div v-if="rejectCauseListOne && rejectCauseListOne.length > 0"
|
||||
v-for="(item,index) in rejectCauseListOne">
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('rejectedBy')">{{$t('rejectedBy')}}</span>
|
||||
</div>
|
||||
<div class="itemModel-reject">
|
||||
{{item.createBy ? item.createBy : '--'}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('rejectionTime')">{{$t('rejectionTime')}}</span>
|
||||
</div>
|
||||
<div class="itemModel-reject">
|
||||
{{item.rejectTime ? item.rejectTime : '--'}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('rejectReason')">{{$t('rejectReason')}}</span>
|
||||
</div>
|
||||
<div class="itemModel-reject">
|
||||
{{item.rejectCause ? item.rejectCause : '--'}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
</a-form-model>
|
||||
</a-spin>
|
||||
<div class="drawer-bootom-button">
|
||||
@@ -881,6 +927,7 @@
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
rules: {},
|
||||
rejectCauseListOne: [],
|
||||
rulesData: {
|
||||
subtitle: [
|
||||
{
|
||||
@@ -966,9 +1013,20 @@
|
||||
}
|
||||
getAction('/project/projectLawsInventoryRejectCauseEO/list', query).then((res) => {
|
||||
if (res.success) {
|
||||
this.rejectCauseList = res.result
|
||||
this.rejectCauseList = []
|
||||
this.rejectCauseListOne = []
|
||||
if (res.result && res.result.length > 0) {
|
||||
res.result.forEach(val => {
|
||||
if (val.rejectType == '0') {
|
||||
this.rejectCauseList.push(val)
|
||||
} else if (val.rejectType == '1') {
|
||||
this.rejectCauseListOne.push(val)
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.rejectCauseList = []
|
||||
this.rejectCauseListOne = []
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
@@ -434,7 +434,7 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
<div class="header-text" v-if="rejectCauseList && rejectCauseList.length > 0">
|
||||
{{$t('reasonsForRejection')}}
|
||||
{{$t('listConfirmationRejectionReason')}}
|
||||
</div>
|
||||
<div v-if="rejectCauseList && rejectCauseList.length > 0"
|
||||
v-for="(item,index) in rejectCauseList">
|
||||
@@ -476,6 +476,49 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
<div class="header-text" v-if="rejectCauseListOne && rejectCauseListOne.length > 0">
|
||||
{{$t('taskConfirmationRejectionReason')}}
|
||||
</div>
|
||||
<div v-if="rejectCauseListOne && rejectCauseListOne.length > 0"
|
||||
v-for="(item,index) in rejectCauseListOne">
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('rejectedBy')">{{$t('rejectedBy')}}</span>
|
||||
</div>
|
||||
<div class="itemModel">
|
||||
{{item.createBy ? item.createBy : '--'}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('rejectionTime')">{{$t('rejectionTime')}}</span>
|
||||
</div>
|
||||
<div class="itemModel">
|
||||
{{item.rejectTime ? item.rejectTime : '--'}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('rejectReason')">{{$t('rejectReason')}}</span>
|
||||
</div>
|
||||
<div class="itemModel">
|
||||
{{item.rejectCause ? item.rejectCause : '--'}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
</a-form-model>
|
||||
</a-spin>
|
||||
<div class="drawer-bootom-button">
|
||||
@@ -507,7 +550,8 @@
|
||||
formInline: {},
|
||||
disabled: false,
|
||||
userInfoQuery: {},
|
||||
rejectCauseList:[]
|
||||
rejectCauseList:[],
|
||||
rejectCauseListOne:[]
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@@ -527,9 +571,20 @@
|
||||
}
|
||||
getAction('/project/projectLawsInventoryRejectCauseEO/list', query).then((res) => {
|
||||
if (res.success) {
|
||||
this.rejectCauseList = res.result
|
||||
this.rejectCauseList = []
|
||||
this.rejectCauseListOne = []
|
||||
if (res.result && res.result.length > 0) {
|
||||
res.result.forEach(val => {
|
||||
if (val.rejectType == '0') {
|
||||
this.rejectCauseList.push(val)
|
||||
} else if (val.rejectType == '1') {
|
||||
this.rejectCauseListOne.push(val)
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.rejectCauseList = []
|
||||
this.rejectCauseListOne = []
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||