From d6e4a1f930946ecaecaec3a3daa9d07dd370e9b1 Mon Sep 17 00:00:00 2001
From: zzw <wander.zheng@qq.com>
Date: 星期五, 17 十一月 2023 11:40:08 +0800
Subject: [PATCH] 编号
---
web/src/views/modules/project/SoftwareTestOrder.vue | 73 ++-----------
web/src/commonJS/commonFile.js | 8 +
modules/mainPart/src/main/java/com/zt/life/modules/mainPart/utils/GetShowDictList.java | 9 +
modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java | 36 ++++---
web/src/views/pages/view.vue | 132 ++++++++++++++++++++++++++
5 files changed, 179 insertions(+), 79 deletions(-)
diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/utils/GetShowDictList.java b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/utils/GetShowDictList.java
index 1822cd3..8cc92e9 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/utils/GetShowDictList.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/mainPart/utils/GetShowDictList.java
@@ -15,18 +15,23 @@
@Service
public class GetShowDictList {
@Autowired
- private SysDictTypeService sysDictTypeService;
+ private SysDictTypeService sysDictTypeService;
- public String getShowDictList(String values, String DictTYpe) {
+ public String getShowDictList(String values, String DictTYpe, Boolean enter) {
List<DictDto> userDicts = sysDictTypeService.getUserDicts();
DictDto testType1Dict = userDicts.stream()
.filter(c -> c.getDictType().equals(DictTYpe))
.collect(Collectors.toList()).get(0);
values = "," + values + ",";
String result = "";
+ int i = 0;
for (DictItemDto dictItemDto : ((DictLeafDto) testType1Dict).getDataList()) {
String value = dictItemDto.getDictValue();
String desc = (values.contains("," + value + ",") ? "鈽�" : "鈻�") + dictItemDto.getDictLabel();
+ i++;
+ if (enter && i < ((DictLeafDto) testType1Dict).getDataList().size()) {
+ desc = desc + "\r\n";
+ }
result = result + desc;
}
return result;
diff --git a/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java b/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java
index 53531b4..8e806f8 100644
--- a/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java
+++ b/modules/mainPart/src/main/java/com/zt/life/modules/project/service/SoftwareTestOrderService.java
@@ -17,6 +17,7 @@
import com.zt.life.modules.sysBaseInfo.service.TestAgencyInfoService;
import com.zt.life.sys.service.SysOssConfigService;
import com.zt.modules.coderule.service.SysCodeRuleService;
+import com.zt.modules.oss.service.SysOssService;
import com.zt.modules.sys.service.SysDictTypeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -62,6 +63,9 @@
@Autowired
private SysOssConfigService sysOssConfigService;
+ @Autowired
+ private SysOssService sysOssService;
+
/**
* 鍒嗛〉鏌ヨ
*
@@ -70,6 +74,9 @@
*/
public List<SoftwareTestOrder> page(QueryFilter queryFilter) {
List<SoftwareTestOrder> list = baseDao.getList(queryFilter.getQueryParams());
+ if (list != null && list.size() > 0) {
+ sysOssService.setListOsses(list, "test_order");
+ }
return list;
}
@@ -215,36 +222,35 @@
dataObj.getSoftwareTestOrder().setTestType22(testType22);
//閫氱敤瀛楀吀鍒楄〃瀛楃涓茬敓鎴�
- String criticalLevelStr = getShowDictList.getShowDictList(dataObj.getProject().getCriticalLevel().toString(), "critical_level");
+ String criticalLevelStr = getShowDictList.getShowDictList(dataObj.getProject().getCriticalLevel().toString(), "critical_level", false);
dataObj.getSoftwareTestOrder().setCriticalLevelStr(criticalLevelStr);
- for (SoftwareTestOrderMeasured measured : dataObj.getMeasuredList()) {
- String value = measured.getIsMeasured();
- String isMeasuredStr = getShowDictList.getShowDictList(value, "is_or_not");
- measured.setIsMeasuredStr(isMeasuredStr);
- }
+ for (SoftwareTestOrderMeasured measured : dataObj.getMeasuredList()) {
+ String value = measured.getIsMeasured();
+ String isMeasuredStr = getShowDictList.getShowDictList(value, "is_or_not", false);
+ measured.setIsMeasuredStr(isMeasuredStr);
+ }
-
- String sortwareTypeStr = getShowDictList.getShowDictList(dataObj.getProject().getSoftwareType(), "software_type");
+ String sortwareTypeStr = getShowDictList.getShowDictList(dataObj.getProject().getSoftwareType(), "software_type", false);
dataObj.getSoftwareTestOrder().setSortwareTypeStr(sortwareTypeStr);
- String testBasisStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getTestBasis(), "test_basis");
+ String testBasisStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getTestBasis(), "test_basis", false);
dataObj.getSoftwareTestOrder().setTestBasisStr(testBasisStr);
- String testStandardStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getTestStandard(), "test_standard");
+ String testStandardStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getTestStandard(), "test_standard", true);
dataObj.getSoftwareTestOrder().setTestStandardStr(testStandardStr);
- String testLevelStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getTestLevel().toString(), "test_level");
+ String testLevelStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getTestLevel().toString(), "test_level", false);
dataObj.getSoftwareTestOrder().setTestLevelStr(testLevelStr);
- String test =dataObj.getSoftwareTestOrder().getOtherRequire();
- String otherRequireStr = getShowDictList.getShowDictList(test, "other_require");
+ String test = dataObj.getSoftwareTestOrder().getOtherRequire();
+ String otherRequireStr = getShowDictList.getShowDictList(test, "other_require", false);
dataObj.getSoftwareTestOrder().setOtherRequireStr(otherRequireStr);
- String articleNatureStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getArticleNature(), "article_nature");
+ String articleNatureStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getArticleNature(), "article_nature", false);
dataObj.getSoftwareTestOrder().setArticleNatureStr(articleNatureStr);
- String sampleStatusStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getSampleStatus(), "is_or_not");
+ String sampleStatusStr = getShowDictList.getShowDictList(dataObj.getSoftwareTestOrder().getSampleStatus(), "is_or_not", false);
dataObj.getSoftwareTestOrder().setSampleStatusStr(sampleStatusStr);
WordFile wordFile = new WordFile();
diff --git a/web/src/commonJS/commonFile.js b/web/src/commonJS/commonFile.js
index 7599513..2deb8cd 100644
--- a/web/src/commonJS/commonFile.js
+++ b/web/src/commonJS/commonFile.js
@@ -106,7 +106,7 @@
}
-function setAccessoryFormat2(row, pageMarker,that) {
+function setAccessoryFormatSingle(row, pageMarker,that) {
if (row.accessoryMap) {
let data = '';
for (let key in row.accessoryMap) {
@@ -119,6 +119,7 @@
}
let fileId = /_zt_oss_id=(\d+)/.exec(url);
fileId = fileId ? fileId[1] : ''; // 鑾峰彇鍖归厤鐨勫唴瀹癸紝濡傛灉涓虹┖鍒欒祴鍊间负绌哄瓧绗︿覆
+ alert(fileId)
let pageMarker2 = pageMarker
if (suffixName == 'pdf' || suffixName == 'doc' || suffixName == 'docx' || suffixName == 'jpg' || suffixName == 'jpeg' || suffixName == 'png' || suffixName == 'xls' || suffixName == 'xlsx') {
if (suffixName == 'pdf') {
@@ -134,6 +135,7 @@
pageMarker2 = pageMarker + '-xls'
that.xlsName =fileName;
}
+ alert(pageMarker2)
return openPreviewDialog(fileId, suffixName, document.getElementById(pageMarker2), pageMarker2);
} else {
return alert("鏂囦欢绫诲瀷涓嶆敮鎸侀瑙�")
@@ -145,7 +147,7 @@
}
}
-function setAccessoryFormat3(row, pageMarker,that) {
+function setAccessoryFormatByForm(row, pageMarker,that) {
if (row.files.groups[0].fields[0].files[0]) {
let data = '';
let url = row.files.groups[0].fields[0].files[0].url;
@@ -182,4 +184,4 @@
}
}
-export {setAccessoryFormatComm, setAccessoryFormat2, setAccessoryFormat3}
+export {setAccessoryFormatComm, setAccessoryFormatSingle, setAccessoryFormatByForm}
diff --git a/web/src/views/modules/project/SoftwareTestOrder.vue b/web/src/views/modules/project/SoftwareTestOrder.vue
index dfe5c57..ac09575 100644
--- a/web/src/views/modules/project/SoftwareTestOrder.vue
+++ b/web/src/views/modules/project/SoftwareTestOrder.vue
@@ -35,8 +35,10 @@
<zt-table-column-dict prop="testStandard" min-width="420" label="娴嬭瘯鏍囧噯" dict="test_standard"/>
<zt-table-column-dict prop="articleNature" width="120px" label="鐗╁搧鎬ц川" dict="article_nature"/>
<zt-table-column-handle :table="table" width="150px" edit-perm="project:update" delete-perm="project::delete">
- <template slot-scope="scope">
- <zt-table-button @click="testOlderView()">棰勮</zt-table-button>
+ <template v-slot="{ row }">
+ <zt-table-button size="small" type="primary"
+ @click="preview(row)">棰勮
+ </zt-table-button>
</template>
</zt-table-column-handle>
</el-table>
@@ -46,28 +48,9 @@
@refreshDataList="table.query"
@setProjectInfo="openAddWin">
</ProjectSelect>
-
</zt-table-wraper>
- <div v-show="isOpenDocPreviewDialog" class="preview-dialog">
- <button @click="closePreviewDialog('doc')" class="close-button">鍏抽棴</button>
- <div id="SoftwareTestOrder-doc" style="overflow: auto; width: 100%; height: 90%;"></div>
- <div class="file-name">{{ docName }}</div>
- </div>
- <div v-show="isOpenPdfPreviewDialog" class="preview-dialog">
- <button @click="closePreviewDialog('pdf')" class="close-button">鍏抽棴</button>
- <iframe id="SoftwareTestOrder-pdf" src="" style="margin:0;padding:0;width:100%;height:90%;"></iframe>
- <div class="file-name">{{ pdfName }}</div>
- </div>
- <div v-show="isOpenImgPreviewDialog" class="preview-dialog">
- <button @click="closePreviewDialog('img')" class="close-button">鍏抽棴</button>
- <img id="SoftwareTestOrder-img" src="" style="margin:0;padding:0;width:100%;height:90%;">
- <div class="file-name">{{ imgName }}</div>
- </div>
- <div v-show="isOpenXlsPreviewDialog" class="preview-dialog">
- <button @click="closePreviewDialog('xls')" class="close-button">鍏抽棴</button>
- <div id="SoftwareTestOrder-xls" style="margin:0;padding:0;width:100%;height:90%;"></div>
- <div class="file-name">{{ xlsName }}</div>
- </div>
+ <View ref="view22" :pageMarkerfun="SoftwareTestOrder">
+ </View>
</div>
</el-card>
</template>
@@ -75,19 +58,11 @@
<script>
import AddOrUpdate from './SoftwareTestOrder-AddOrUpdate'
import ProjectSelect from "./Project-select.vue"
-import {setAccessoryFormat2} from '@/commonJS/commonFile'
+import View from '@/views/pages/view.vue'
export default {
data() {
return {
- isOpenDocPreviewDialog:false,
- isOpenPdfPreviewDialog:false,
- isOpenImgPreviewDialog:false,
- isOpenXlsPreviewDialog:false,
- docName:'',
- pdfName:'',
- imgName:'',
- xlsName:'',
dataForm: {
testBasis: '',
testType: '',
@@ -98,7 +73,8 @@
},
components: {
AddOrUpdate,
- ProjectSelect
+ ProjectSelect,
+ View
},
methods: {
add() {
@@ -108,32 +84,11 @@
console.log(row.id, 'row.id')
this.$refs.addOrUpdate.$refs.dialog.init(null, {id: null, projectId: row.id})
},
- testOlderView(row){
- return setAccessoryFormat2(row, 'SoftwareTestOrder', this)
- },
- closePreviewDialog(file) {
- if (file == 'doc') {
- this.docName = '';
- this.isOpenDocPreviewDialog = false; // 鍏抽棴寮圭獥
- const docElement = document.getElementById('SoftwareTestOrder-doc');
- docElement.innerHTML = '';
- } else if (file == 'pdf') {
- this.pdfName = '';
- this.isOpenPdfPreviewDialog = false;
- let iframe = document.getElementById('SoftwareTestOrder-pdf');
- iframe.src = '';
- } else if (file == 'img') {
- this.imgName = '';
- this.isOpenImgPreviewDialog = false;
- let img = document.getElementById('SoftwareTestOrder-img');
- img.src = '';
- } else if (file == 'xls') {
- this.xlsName = '';
- this.isOpenXlsPreviewDialog = false;
- let excelElement = document.getElementById('SoftwareTestOrder-xls');
- excelElement.innerHTML = '';
- }
- },
+ preview(row){
+ console.log(row,'preview(row)');
+ this.$refs.view22.setAccessoryFormatSingle(row)
+ }
}
}
</script>
+
diff --git a/web/src/views/pages/view.vue b/web/src/views/pages/view.vue
new file mode 100644
index 0000000..5900a54
--- /dev/null
+++ b/web/src/views/pages/view.vue
@@ -0,0 +1,132 @@
+<template>
+ <div>
+ <div v-show="isOpenDocPreviewDialog" class="preview-dialog">
+ <button @click="closePreviewDialog('doc')" class="close-button">鍏抽棴</button>
+ <div :id="pageMarkerfun+'-doc'" style="overflow: auto; width: 100%; height: 90%;"></div>
+ <div class="file-name">{{ docName }}</div>
+ </div>
+ <div v-show="isOpenPdfPreviewDialog" class="preview-dialog">
+ <button @click="closePreviewDialog('pdf')" class="close-button">鍏抽棴</button>
+ <iframe :id="pageMarkerfun+'-pdf'" src="" style="margin:0;padding:0;width:100%;height:90%;"></iframe>
+ <div class="file-name">{{ pdfName }}</div>
+ </div>
+ <div v-show="isOpenImgPreviewDialog" class="preview-dialog">
+ <button @click="closePreviewDialog('img')" class="close-button">鍏抽棴</button>
+ <img :id="pageMarkerfun+'-img'" src="" style="margin:0;padding:0;width:100%;height:90%;">
+ <div class="file-name">{{ imgName }}</div>
+ </div>
+ <div v-show="isOpenXlsPreviewDialog" class="preview-dialog">
+ <button @click="closePreviewDialog('xls')" class="close-button">鍏抽棴</button>
+ <div :id="pageMarkerfun+'-xls'" style="margin:0;padding:0;width:100%;height:90%;"></div>
+ <div class="file-name">{{ xlsName }}</div>
+ </div>
+ </div>
+</template>
+
+<script>
+ import {setAccessoryFormatSingle} from '@/commonJS/commonFile'
+ export default {
+ props: {
+ pageMarkerfun: {
+ default: ''
+ }
+ },
+ data() {
+ return {
+ isOpenDocPreviewDialog: false,
+ isOpenPdfPreviewDialog: false,
+ isOpenImgPreviewDialog: false,
+ isOpenXlsPreviewDialog: false,
+ docName: '',
+ pdfName: '',
+ imgName: '',
+ xlsName: ''
+ }
+ },
+ created() {
+ this.$EventBus.$on(this.pageMarkerfun+'-doc', () => {
+ this.isOpenDocPreviewDialog = true
+ })
+ this.$EventBus.$on(this.pageMarkerfun +'-pdf', () => {
+ this.isOpenPdfPreviewDialog = true
+ })
+ this.$EventBus.$on(this.pageMarkerfun +'-img', () => {
+ this.isOpenImgPreviewDialog = true
+ })
+ this.$EventBus.$on(this.pageMarkerfun +'-xls', () => {
+ this.isOpenXlsPreviewDialog = true
+ })
+ },
+ methods: {
+ setAccessoryFormatSingle(row) {
+ console.log(row, 'setAccessoryFormatSingle(row)');
+ return setAccessoryFormatSingle(row, this.pageMarkerfun, this)
+ },
+ closePreviewDialog(file) {
+ if (file == 'doc') {
+ this.docName = ''
+ this.isOpenDocPreviewDialog = false // 鍏抽棴寮圭獥
+ const docElement = document.getElementById(this.pageMarkerfun +'-doc')
+ docElement.innerHTML = ''
+ } else if (file == 'pdf') {
+ this.pdfName = ''
+ this.isOpenPdfPreviewDialog = false;
+ let iframe = document.getElementById(this.pageMarkerfun +'-pdf')
+ iframe.src = ''
+ } else if (file == 'img') {
+ this.imgName = '';
+ this.isOpenImgPreviewDialog = false;
+ let img = document.getElementById(this.pageMarkerfun +'-img')
+ img.src = ''
+ } else if (file == 'xls') {
+ this.xlsName = ''
+ this.isOpenXlsPreviewDialog = false;
+ let excelElement = document.getElementById(this.pageMarkerfun+'-xls')
+ excelElement.innerHTML = ''
+ }
+ }
+ }
+ }
+</script>
+<style>
+ /* 寮圭獥鏍峰紡 */
+ .preview-dialog {
+ z-index: 100;
+ width: 1200px;
+ height: 700px;
+ position: fixed;
+ top: 120px;
+ right: 10px;
+ background: gray;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ }
+ .close-button {
+ position: absolute;
+ top: 10px;
+ right: 10px;
+ border: none;
+ font-size: 18px;
+ color: snow;
+ cursor: pointer;
+ background: #062944;
+ }
+
+ .file-name {
+ position: absolute;
+ top: 10px;
+ left: 50%;
+ transform: translateX(-50%);
+ border: none;
+ font-size: 18px;
+ color: snow;
+ cursor: pointer;
+ background: #062944;
+ }
+
+ img {
+ object-fit: contain;
+ }
+</style>
--
Gitblit v1.9.1