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

This commit is contained in:
wangzhijiang
2022-09-02 13:22:51 +08:00
29 changed files with 313 additions and 85 deletions
@@ -11,6 +11,7 @@ import com.jero.common.system.query.QueryGenerator;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseCollectEO;
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseEO;
import com.jero.modules.problemKnowledgeBase.enums.CollectStatusEnum;
import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseCollectEOService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -192,6 +193,7 @@ public class ProblemKnowledgeBaseCollectEOController extends JeroController<Prob
QueryWrapper<ProblemKnowledgeBaseCollectEO> collectEOQueryWrapper = new QueryWrapper<>();
collectEOQueryWrapper.lambda().eq(ProblemKnowledgeBaseCollectEO::getCollectUserId,currentUser.getId());
collectEOQueryWrapper.lambda().eq(ProblemKnowledgeBaseCollectEO::getCollectStatus, CollectStatusEnum.COLLECT.getValue());
List<ProblemKnowledgeBaseCollectEO> collectEOList = this.problemKnowledgeBaseCollectEOService.list(collectEOQueryWrapper);
if(CollectionUtils.isNotEmpty(collectEOList)){
@@ -463,6 +463,7 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService {
Map<String, Object> map25 = new HashMap<>();
Map<String, Object> map45 = new HashMap<>();
map25.put("query", selectValue);
map25.put("fields", fieldList.toArray());
map25.put("allow_leading_wildcard", false); //禁用了前置通配符
map45.put("query_string", map25);
queryMapJson.add(map45);
@@ -490,6 +491,7 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService {
Map<String, Object> map25 = new HashMap<>();
Map<String, Object> map45 = new HashMap<>();
map25.put("query", selectValue);
map25.put("fields", fieldList.toArray());
map25.put("allow_leading_wildcard", false); //禁用了前置通配符
map45.put("query_string", map25);
queryMapJson.add(map45);
@@ -118,6 +118,7 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea
Map<String, Object> map25 = new HashMap<>();
Map<String, Object> map45 = new HashMap<>();
map25.put("query", selectValue);
map25.put("fields", fieldList.toArray());
map25.put("allow_leading_wildcard", false);
map45.put("query_string", map25);
queryMapJsonTwo.add(map45);
@@ -248,9 +249,9 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea
Map<String, Object> map31 = new HashMap<>();
Map<String, Object> map41 = new HashMap<>();
if("title".equals(field)){
map31.put("boost",1);
map31.put("boost",10);
}else if("content".equals(field)){
map31.put("boost",0.01);
map31.put("boost",2);
}
map31.put("value", selectValue);
map21.put(field + ".keyword", map31);
@@ -262,9 +263,9 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea
Map<String, Object> map32 = new HashMap<>();
Map<String, Object> map42 = new HashMap<>();
if("title".equals(field)){
map32.put("boost",1);
map32.put("boost",10);
}else if("content".equals(field)){
map32.put("boost",0.01);
map32.put("boost",2);
}
map32.put("query", selectValue);
map22.put(field, map32);
@@ -274,7 +275,15 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea
// match分词匹配查询
// 情况举例:用户可能他知道开头的前缀几个字,知道中间的几个字
Map<String, Object> map23 = new HashMap<>();
Map<String, Object> map33 = new HashMap<>();
Map<String, Object> map43 = new HashMap<>();
if("title".equals(field)){
map33.put("boost",10);
}else if("content".equals(field)){
map33.put("boost",2);
}
map33.put("query", selectValue);
map23.put(field, map33);
map23.put(field, selectValue);
map43.put("match", map23);
queryMapJson.add(map43);
@@ -165,12 +165,22 @@ public class FileSpiltService {
paragraphString = paragraphString.trim();
}
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
paragraphString = paragraphString.replaceAll("\r\n","");
paragraphString = paragraphString.replaceAll("\n","");
paragraphString = paragraphString.trim();
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
if (StringUtils.isNotEmpty(p.getNumLevelText()) && p.getNumLevelText().indexOf(".") > 0) {
@@ -682,12 +692,22 @@ public class FileSpiltService {
paragraphString = paragraphString.trim();
}
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
paragraphString = paragraphString.replaceAll("\r\n","");
paragraphString = paragraphString.replaceAll("\n","");
paragraphString = paragraphString.trim();
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
// if (StringUtils.isNotEmpty(p.getNumLevelText())&& p.getNumLevelText().indexOf(".")>0) {
@@ -864,12 +884,22 @@ public class FileSpiltService {
paragraphString = paragraphString.trim();
}
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
paragraphString = paragraphString.replaceAll("\r\n","");
paragraphString = paragraphString.replaceAll("\n","");
paragraphString = paragraphString.trim();
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
// if (StringUtils.isNotEmpty(p.getNumLevelText())&& p.getNumLevelText().indexOf(".")>0) {
@@ -1056,12 +1086,22 @@ public class FileSpiltService {
paragraphString = paragraphString.trim();
}
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
paragraphString = paragraphString.replaceAll("\r\n","");
paragraphString = paragraphString.replaceAll("\n","");
paragraphString = paragraphString.trim();
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
// if (StringUtils.isNotEmpty(p.getNumLevelText())&& p.getNumLevelText().indexOf(".")>0) {
@@ -1418,12 +1458,22 @@ public class FileSpiltService {
paragraphString = paragraphString.trim();
}
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
paragraphString = paragraphString.replaceAll("\r\n","");
paragraphString = paragraphString.replaceAll("\n","");
paragraphString = paragraphString.trim();
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
// if (StringUtils.isNotEmpty(p.getNumLevelText())&& p.getNumLevelText().indexOf(".")>0) {
@@ -1613,12 +1663,22 @@ public class FileSpiltService {
paragraphString = paragraphString.trim();
}
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
paragraphString = paragraphString.replaceAll("\r\n","");
paragraphString = paragraphString.replaceAll("\n","");
paragraphString = paragraphString.trim();
if(StringUtils.isEmpty(paragraphString)){
// 处理当前段落仅为图片的情况
List<String> imageBundleList = readImageInParagraph((XWPFParagraph) p);
if (CollectionUtils.isNotEmpty(imageBundleList)) {
addItermsConditionsImage(messageList.get(messageList.size() - 1), itemValList, p, imageBundleList);
}
continue;
}
@@ -1702,8 +1702,14 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
InputStream is = new FileInputStream(file);
String name = file.getName().toLowerCase();
// 创建excel操作对象
if (name.contains(".xlsx") || name.contains(".xls")) {
if (name.contains(".xlsx")) {
workbook = WorkbookFactory.create(is);
} else {
if(CutEnum.CN.getValue().equals(cut)){
throw new JeroBootException("请导入正确模板!");
} else {
throw new JeroBootException("Please import the correct template");
}
}
//得到一个工作表
Sheet sheet = workbook.getSheetAt(0);
+2
View File
@@ -1281,4 +1281,6 @@ module.exports = {
rejectedBy:'Rejected By',
rejectionTime:'Rejection Time',
rejectReason:'Reject Reason',
collectionLegislativeComments:'Collection of Legislative Comments',
regulatoryAndTechnicalAssessment:'Regulatory and technical assessment',
}
+3
View File
@@ -1383,4 +1383,7 @@ module.exports = {
rejectedBy:'拒绝人',
rejectionTime:'拒绝时间',
rejectReason:'拒绝原因',
collectionLegislativeComments:'法规意见收集',
regulatoryAndTechnicalAssessment:'法规技术评估',
}
+1 -1
View File
@@ -122,7 +122,7 @@
if (this.isTrue) {
this.$emit('getList',info.file.response.result)
} else {
eventBUs.$emit('searchReset')
eventBUs.$emit('searchGetData')
}
this.$message.success(this.$t('OperationSuccessful'))
}
+1 -1
View File
@@ -296,7 +296,7 @@
postAction(url, this.formInline).then((res) => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
eventBUs.$emit('searchReset')
eventBUs.$emit('searchGetData')
this.$emit('addFormClick')
} else {
this.$message.warning(this.$t(res.message))
@@ -147,6 +147,7 @@
beforeDestroy(){
eventBUs.$off('searchQuery')
eventBUs.$off('searchReset')
eventBUs.$off('searchGetData')
},
methods: {
@@ -141,6 +141,7 @@
beforeDestroy(){
eventBUs.$off('searchQuery')
eventBUs.$off('searchReset')
eventBUs.$off('searchGetData')
},
methods: {
...mapGetters(['userInfo']),
@@ -335,7 +335,7 @@
if (this.formInline.id) {
eventBUs.$emit('searchGetData')
} else {
eventBUs.$emit('searchReset')
eventBUs.$emit('searchGetData')
}
this.$emit('addFormClick')
@@ -132,6 +132,7 @@
beforeDestroy() {
eventBUs.$off('searchQuery')
eventBUs.$off('searchReset')
eventBUs.$off('searchGetData')
},
methods: {
rowClassName(record) {
@@ -228,6 +228,9 @@
id: this.queryForm.praiseEO ? this.queryForm.praiseEO.id : undefined
}
putAction('/problemKnowledgeBase/problemKnowledgeBasePraiseEO/edit', query).then((res) => {
if (!this.queryForm.collectEO || !this.queryForm.collectEO.id) {
this.queryById()
}
})
},
starClick() {
@@ -247,6 +250,9 @@
id: this.queryForm.collectEO ? this.queryForm.collectEO.id : undefined
}
putAction('/problemKnowledgeBase/problemKnowledgeBaseCollectEO/edit', query).then((res) => {
if (!this.queryForm.collectEO || !this.queryForm.collectEO.id) {
this.queryById()
}
})
},
clickButtonToUpload(item) {
@@ -35,9 +35,9 @@
<div class="box-content">
<a-checkbox-group style="width: 100%" :defaultChecked="checkboxText"
@change="checkboxTextChange" v-model="checkboxText">
<div v-for="item in conList" :key="item.id">
<div v-for="item in conList" :key="item.collectEO.id">
<div style="margin-bottom: 10px;position: relative">
<a-checkbox :value="item.id" class="checkbox-left"></a-checkbox>
<a-checkbox :value="item.collectEO.id" class="checkbox-left"></a-checkbox>
<div class="text-text-right"
@click="checkedClick(item)"
:class="{ 'null-input':item.checked }">
@@ -117,7 +117,7 @@
if (value.length > 0) {
this.conList.forEach(val => {
value.forEach(res => {
if (res === val.id) {
if (res === val.collectEO.id) {
val.checked = true
}
})
@@ -183,7 +183,7 @@
this.$confirm({
content: _this.$t('confirmCancelCollection'),
onOk() {
deleteAction(_this.url.deleteBatch, { ids: val.id }).then((res) => {
deleteAction(_this.url.deleteBatch, { ids: val.collectEO.id }).then((res) => {
if (res.success) {
_this.$message.success(_this.$t('OperationSuccessful'))
_this.getList()
@@ -216,13 +216,13 @@
}
this.loading = true
getAction(this.url.getInfoList, query).then((res) => {
if (res.success) {
if (res.success && res.result) {
if (res.result.current > 1 && res.result.records.length == 0) {
this.pageNo = 1
this.getList()
return
}
this.conList = res.result.records
this.conList = res.result ? res.result.records : []
if (this.conList && this.conList.length > 0) {
this.conList.forEach(val => {
if (val.content) {
@@ -233,7 +233,7 @@
if (this.checkboxList && this.checkboxList.length > 0) {
let contentList = []
for (let j = 0; j < this.conList.length; j++) {
contentList.push(this.conList[j].id)
contentList.push(this.conList[j].collectEO.id)
}
this.checkboxList = this.checkboxList.filter(val => {
return !contentList.join(',').includes(val)
@@ -225,7 +225,7 @@
postAction(`ocr/OcrRestful/addOcrRecord`, params).then(res => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
eventBUs.$emit('searchReset')
eventBUs.$emit('searchGetData')
this.visible = false;
this.$emit('visible',false)
} else {
@@ -302,7 +302,7 @@
// console.log('res,res',res)
if (res.data.success) {
this.$message.success(this.$t('OperationSuccessful'))
eventBUs.$emit('searchReset')
eventBUs.$emit('searchGetData')
} else {
this.$message.warning(res.data.message)
}
@@ -283,7 +283,7 @@
}).then(res => {
if (res.data.success) {
this.$message.success(this.$t('OperationSuccessful'))
eventBUs.$emit('searchReset')
eventBUs.$emit('searchGetData')
this.visible = false;
this.$emit('visible',false)
}else{
@@ -775,7 +775,7 @@
info_id: this.infoId,
}
eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(queryParam)))
eventBUs.$emit('searchGetData', JSON.parse(JSON.stringify(queryParam)))
// eventBUs.$emit('searchReset')
this.$emit('sumber')
}else{
@@ -723,7 +723,7 @@
info_id: this.infoId
}
eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(queryParam)))
eventBUs.$emit('searchGetData', JSON.parse(JSON.stringify(queryParam)))
// eventBUs.$emit('searchReset')
} else {
this.$message.warning(this.$t('operationFailed'))
@@ -771,7 +771,7 @@
}
this.loadMenuData()
eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(queryParam)))
eventBUs.$emit('searchGetData', JSON.parse(JSON.stringify(queryParam)))
}
let attIdList = []
if (data && data.length > 0) {
@@ -238,7 +238,7 @@
postAction(`split/sarFileSplitInfo/add`, params).then(res => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
eventBUs.$emit('searchReset')
eventBUs.$emit('searchGetData')
this.visible = false;
this.$emit('visible', false)
} else {
+6 -6
View File
@@ -206,7 +206,7 @@
:title="$t('Administrativeprivileges')">{{$t('Administrativeprivileges')}}</span>
</div>
<a-form-model-item class="itemModel" prop="authManageIdsName">
<PersonnelSelectionAll class="box-input add-input"
<PersonnelSelection class="box-input add-input"
:personneQuery="form"
:query="{db_field_name:'authManageIds',db_field_txt:$t('Administrativeprivileges')}"
@change="PersonnelSelectionChange"
@@ -223,7 +223,7 @@
:title="$t('Checkthepermissions')">{{$t('Checkthepermissions')}}</span>
</div>
<a-form-model-item class="itemModel" prop="authViewIdsName">
<PersonnelSelectionAll
<PersonnelSelection
class="box-input add-input"
:personneQuery="form"
:query="{db_field_name:'authViewIds',db_field_txt:$t('Checkthepermissions')}"
@@ -274,14 +274,14 @@ import Vue from 'vue'
import moment from 'moment'
import eventBUs from '@/common/event'
import { mapGetters } from 'vuex'
import PersonnelSelectionAll from '@/components/PersonnelSelectionAll/index'
import PersonnelSelection from '@/components/PersonnelSelection/index'
export default {
name: 'SplitDetail',
components: {
addModel,
handleModel,
PersonnelSelectionAll,
PersonnelSelection,
globalAdvancedQuery
// ImportFile
},
@@ -733,11 +733,11 @@ export default {
// console.log('parms',params)
putAction(`extRepo/extRepoFolder/edit`, params).then(res => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
this.$message.success(res.message)
this.form = {}
this.loadMenuData()
} else {
this.$message.warning(this.$t('operationFailed'))
this.$message.warning(res.message)
}
}).finally(() => {
this.flag = false
@@ -10,7 +10,7 @@
ref="table"
:loading="loading"
:pagination="false"
:scroll="{x: true}"
:scroll="{x: '100%'}"
:data-source="dataSource"
:columns="columns"
>
@@ -41,31 +41,36 @@
title: this.$t('OperationContent'),
dataIndex: 'taskDefinitionKeyName',
align: 'center',
width: '20%'
width: '20%',
ellipsis: true
},
{
title: this.$t('opinion'),
dataIndex: 'approvalOpinion',
align: 'center',
width: '20%'
width: '20%',
ellipsis: true
},
{
title: this.$t('Operator'),
dataIndex: 'createBy',
align: 'center',
width: '20%'
width: '20%',
ellipsis: true
},
{
title: this.$t('role'),
dataIndex: 'operatorRoleName',
align: 'center',
width: '20%'
width: '20%',
ellipsis: true
},
{
title: this.$t('OperationTime'),
dataIndex: 'createTime',
align: 'center',
width: '20%',
ellipsis: true,
customRender: function(t, r, index) {
return moment(t).format('YYYY-MM-DD HH:mm:ss')
}
@@ -187,7 +187,7 @@
let json = Object.assign(this.queryBy, { handlingTime: handlingTime }, value)
let data = JSON.stringify(json).replace(/\"/g, '\'')
Object.keys(data).forEach(res => {
if (data[res] && data[res] instanceof String) {
if (data[res] && typeof data[res] == 'string') {
data[res] = data[res].replace(/\"/g, '“')
data[res] = data[res].replace(/\'/g, '')
}
@@ -13,7 +13,8 @@
</div>
<div class="action-bar">
</div>
<regulatoryCirculationHistory v-if="$route.query.prcType == '5' || $route.query.prcType == '6'"/>
<regulatoryCirculationHistory :isTrue="isTrue"
v-if="$route.query.prcType == '5' || $route.query.prcType == '6'"/>
<circulationHistory v-else/>
</div>
</template>
@@ -33,7 +34,8 @@
},
data() {
return {
processStep: null
processStep: null,
isTrue: false
}
},
created() {
@@ -41,6 +43,11 @@
},
mounted() {
this.processNum()
if (this.$route.query.prcType == '6') {
this.isTrue = true
} else {
this.isTrue = false
}
},
methods: {
back() {
@@ -804,6 +804,49 @@
</div>
</a-col>
</a-row>
<div class="header-text" v-if="rejectCauseList && rejectCauseList.length > 0">
{{$t('reasonsForRejection')}}
</div>
<div v-if="rejectCauseList && rejectCauseList.length > 0"
v-for="(item,index) in rejectCauseList">
<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">
@@ -907,7 +950,8 @@
verifyDutyIdDisabled: false,
verifyInitiatorIdDisabled: false,
DeliverableTreeList: [],
userInfoQuery: {}
userInfoQuery: {},
rejectCauseList: []
}
},
mounted() {
@@ -916,6 +960,18 @@
},
methods: {
...mapGetters(['userInfo']),
getRejectCause(id) {
let query = {
projectLawsInventoryId: id
}
getAction('/project/projectLawsInventoryRejectCauseEO/list', query).then((res) => {
if (res.success) {
this.rejectCauseList = res.result
} else {
this.rejectCauseList = []
}
})
},
getDeliverableTree() {
getAction('/sys/category/getDeliverableTree', {}).then((res) => {
if (res.success) {
@@ -1110,6 +1166,7 @@
item.designDeliverableType = item.designDeliverableType ? item.designDeliverableType.split(',') : []
item.prehomoDeliverableType = item.prehomoDeliverableType ? item.prehomoDeliverableType.split(',') : []
item.verifyDeliverableType = item.verifyDeliverableType ? item.verifyDeliverableType.split(',') : []
this.getRejectCause(item.id)
if (item.dutyTerritory) {
this.queryPersonByProject(item)
} else {
@@ -1400,6 +1457,15 @@
margin-top: 2px;
}
.itemModel-reject {
width: calc(100% - 130px);
display: inline-block;
font-size: 16px;
word-break: break-all;
color: #040B29;
padding-top: 11px;
}
.Required {
color: red;
margin-right: 4px;
@@ -220,6 +220,11 @@
@click="edit(record)">
{{ $t('edit') }}
</a>
<a class="text-operation"
v-else
@click="viewClick(record)">
{{$t('view')}}
</a>
<a class="text-operation"
v-if="(record.inventoryAffirmStatus == 'Not started' || record.inventoryAffirmStatus == 'Rejected') && record.roleCode == 0"
@click="deleteLib(record)">
@@ -229,10 +234,13 @@
@click="resultReportedClick(record)">
{{$t('resultReported')}}
</a>
<a class="text-operation"
@click="viewClick(record)">
</span>
<span slot="operationOne" slot-scope="text,record">
<a class="text-operation"
@click="viewClick(record)">
{{$t('view')}}
</a>
</a>
</span>
<span slot="titleName" slot-scope="text,record" :title="text">
<span class="textName">
@@ -745,6 +753,13 @@
fixed: 'right',
width: 240,
scopedSlots: { customRender: 'operation' }
},
{
title: this.$t('operation'),
align: 'center',
fixed: 'right',
width: 140,
scopedSlots: { customRender: 'operationOne' }
}
],
columnsFileAll: [
@@ -1014,7 +1029,14 @@
let columnResult = JSON.parse(JSON.stringify(this.columnsAll))
if (!this.isRoleSwitching) {
for (var i = 0; i < columnResult.length; i++) {
if (columnResult[i].title === this.$t('operation')) {
if (columnResult[i].title === this.$t('operation') && columnResult[i].width == 240) {
columnResult.splice(i, 1)
i--
}
}
} else if (this.isRoleSwitching) {
for (var i = 0; i < columnResult.length; i++) {
if (columnResult[i].title === this.$t('operation') && columnResult[i].width == 140) {
columnResult.splice(i, 1)
i--
}
@@ -2019,15 +2041,18 @@
if (valid) {
let url = '/project/projectCommentEO/add'
let content = []
let ids = []
if (this.rowKeysSuccessList && this.rowKeysSuccessList.length > 0) {
this.rowKeysSuccessList.forEach(res => {
content.push(res.serialNumber)
ids.push(res.id)
})
}
let query = {
commentContent: this.$t('For') + content.join(',') + this.$t('markedRejection') + '' + this.formInlineComment.commentContent,
projectLibraryId: this.$route.query.id
}
this.rejectCauseAdd(this.formInlineComment.commentContent,ids)
this.confirmLoadingComment = true
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
this.updateStatusBatch(1, selectedRowKeys)
@@ -2042,6 +2067,19 @@
}
})
},
rejectCauseAdd(rejectCause,ids) {
let rejectTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
let query = {
rejectUserId:this.userInfo().id,
rejectTime:rejectTime,
rejectCause:rejectCause,
projectLawsInventoryId:ids.join(','),
rejectType:'0',
}
postAction('/project/projectLawsInventoryRejectCauseEO/add', query).then((res) => {
})
},
handleCancelComment() {
this.visibleComment = false
},
@@ -2368,7 +2406,7 @@
}
::v-deep .ant-table-row:first-child {
background: #fff!important;
background: #fff !important;
opacity: 0.9;
}
@@ -433,46 +433,49 @@
</div>
</a-col>
</a-row>
<!-- <div class="header-text">-->
<!-- {{$t('reasonsForRejection')}}-->
<!-- </div>-->
<!-- <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">-->
<!-- {{formInline.verifyRemark ? formInline.verifyRemark : '&#45;&#45;'}}-->
<!-- </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">-->
<!-- {{formInline.verifyRemark ? formInline.verifyRemark : '&#45;&#45;'}}-->
<!-- </div>-->
<!-- </div>-->
<!-- </a-col>-->
<!-- </a-row>-->
<!-- <a-row :gutter="24">-->
<!-- <a-col :span="12">-->
<!-- <div class="box-title-text">-->
<!-- <div class="title-text">-->
<!-- <span class="title-text-text"-->
<!-- :title="$t('rejectReason')">{{$t('rejectReason')}}</span>-->
<!-- </div>-->
<!-- <div class="itemModel">-->
<!-- {{formInline.verifyRemark ? formInline.verifyRemark : '&#45;&#45;'}}-->
<!-- </div>-->
<!-- </div>-->
<!-- </a-col>-->
<!-- </a-row>-->
<div class="header-text" v-if="rejectCauseList && rejectCauseList.length > 0">
{{$t('reasonsForRejection')}}
</div>
<div v-if="rejectCauseList && rejectCauseList.length > 0"
v-for="(item,index) in rejectCauseList">
<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">
@@ -486,7 +489,7 @@
<script>
import viewFileModel from '@/components/viewFileModel/index'
import { getAction, postAction, putAction } from '@/api/manage'
import { mapGetters } from 'vuex'
export default {
@@ -503,7 +506,8 @@
rulesData: {},
formInline: {},
disabled: false,
userInfoQuery: {}
userInfoQuery: {},
rejectCauseList:[]
}
},
mounted() {
@@ -514,8 +518,21 @@
editModel(item) {
this.visible = true
this.formInline = item
this.getRejectCause(item.id)
this.formInline = { ...this.formInline }
},
getRejectCause(id) {
let query = {
projectLawsInventoryId: id
}
getAction('/project/projectLawsInventoryRejectCauseEO/list', query).then((res) => {
if (res.success) {
this.rejectCauseList = res.result
} else {
this.rejectCauseList = []
}
})
},
handleCancel() {
this.visible = false
},
@@ -550,7 +567,7 @@
width: calc(100% - 130px);
display: inline-block;
font-size: 16px;
word-break: break-word;
word-break: break-all;
color: #040B29;
}
@@ -119,6 +119,8 @@
'17':this.$t('listConfirmation'),
'18':this.$t('taskAffirm'),
'19':this.$t('complianceConfirmation'),
'20':this.$t('collectionLegislativeComments'),
'21':this.$t('regulatoryAndTechnicalAssessment'),
},
columns: [
{