000
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
|
||||
line-height: 1.4;
|
||||
line-height: 1;
|
||||
margin: 1rem;
|
||||
}
|
||||
table {
|
||||
|
||||
@@ -143,4 +143,15 @@ export default {
|
||||
params
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 删除output/bg中所有文件,防止之前数据干扰
|
||||
* @returns
|
||||
*/
|
||||
deleteBGFiles(params = {}) {
|
||||
return request({
|
||||
url: `/generateBG/create/deleteBGDocument`,
|
||||
method: "get",
|
||||
params
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,4 +22,15 @@ export default {
|
||||
params
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 删除回归测试记录output/hjl里面的所有文件
|
||||
* @returns
|
||||
*/
|
||||
deleteHJLFiles(params = {}) {
|
||||
return request({
|
||||
url: `/generateHJL/create/deleteHJLDocument`,
|
||||
method: "get",
|
||||
params
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,5 +87,16 @@ export default {
|
||||
method: "get",
|
||||
params
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 删除output/hsm中的所有文件,例如:防止没有第三轮,出现第三轮
|
||||
* @returns
|
||||
*/
|
||||
deleteHSMFiles(params = {}) {
|
||||
return request({
|
||||
url: `/generateHSM/create/deleteHSMDocument`,
|
||||
method: "get",
|
||||
params
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 17 KiB |
1
cdTMP/src/assets/login_picture2.svg
Normal file
1
cdTMP/src/assets/login_picture2.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 20 KiB |
@@ -42,7 +42,7 @@ const appStore = useAppStore()
|
||||
|
||||
const props = defineProps({
|
||||
modelValue: { type: String },
|
||||
height: { type: Number, default: 250 },
|
||||
height: { type: Number, default: 200 },
|
||||
id: { type: String, default: () => "tinymce" + new Date().getTime().toString() },
|
||||
plugins: {
|
||||
type: [String, Array],
|
||||
@@ -51,8 +51,9 @@ const props = defineProps({
|
||||
},
|
||||
toolbar: {
|
||||
type: [String, Array],
|
||||
default: // 如果要取消粘贴只粘贴文本,需要用户加格式请加上pastetext
|
||||
"code undo redo restoredraft | paste |bold italic underline strikethrough codesample | preview | alignleft alignjustify indent formatpainter | \
|
||||
// 如果要取消粘贴只粘贴文本,需要用户加格式请加上pastetext
|
||||
default:
|
||||
"code undo redo restoredraft | paste |bold codesample | preview | alignleft alignjustify indent formatpainter | \
|
||||
styleselect formatselect fontselect fontsizeselect | bullist numlist | blockquote subscript superscript removeformat | charmap pagebreak insertdatetime"
|
||||
}
|
||||
})
|
||||
@@ -116,3 +117,4 @@ watch(
|
||||
(vl) => emit("change", vl)
|
||||
)
|
||||
</script>
|
||||
<style lang="less"></style>
|
||||
|
||||
@@ -161,7 +161,7 @@ const handleSubmit = async ({ values, errors }) => {
|
||||
height: 491px;
|
||||
background-image: url(@/assets/login_picture.svg);
|
||||
background-repeat: no-repeat;
|
||||
background-position: center 60px;
|
||||
background-position: center 140px;
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
|
||||
@@ -65,14 +65,15 @@ const handleRelatedChange = async (record) => {
|
||||
record.related = !record.related
|
||||
loading.value = false
|
||||
})
|
||||
if (!res.data.isOK) {
|
||||
// 后台说没关联成功则保持不变
|
||||
record.related = !record.related
|
||||
loading.value = false
|
||||
if (res) {
|
||||
if (!res.data.isOK) {
|
||||
// 后台说没关联成功则保持不变
|
||||
record.related = !record.related
|
||||
loading.value = false
|
||||
}
|
||||
}
|
||||
loading.value = false
|
||||
emits("relatedOrunrelated")
|
||||
Message.success(res.message)
|
||||
}
|
||||
|
||||
// 数据定义
|
||||
|
||||
@@ -31,6 +31,7 @@ import { useRoute, useRouter } from "vue-router"
|
||||
import problemApi from "@/api/project/problem"
|
||||
import { useTreeDataStore } from "@/store"
|
||||
import ProblemChoose from "./components/ProblemChoose.vue"
|
||||
import { Message } from "@arco-design/web-vue"
|
||||
const treeDataStore = useTreeDataStore()
|
||||
const route = useRoute()
|
||||
const router = useRouter()
|
||||
@@ -59,6 +60,12 @@ const crudOptions = ref({
|
||||
delete: { show: true, api: problemApi.delete },
|
||||
operationColumnAlign: "center", // 操作列居中
|
||||
beforeOpenAdd: function () {
|
||||
// 先判断是否已经有个问题单了,如果有则不让用户创建
|
||||
if (crudRef.value.getTableData().length >= 1) {
|
||||
Message.error("该用例已经存在问题单了,可在轮次树节点右键添加无关联问题单")
|
||||
return false
|
||||
}
|
||||
// 下面是弹窗的标题路径
|
||||
let key_split = route.query.key.split("-")
|
||||
let round_key = key_split[0]
|
||||
let dut_key = key_split[1]
|
||||
@@ -183,7 +190,7 @@ const crudOptions = ref({
|
||||
{ span: 12, formList: [{ dataIndex: "verifyPerson" }] },
|
||||
{ span: 12, formList: [{ dataIndex: "verifyDate" }] }
|
||||
]
|
||||
},
|
||||
}
|
||||
]
|
||||
}
|
||||
})
|
||||
@@ -359,7 +366,7 @@ const crudColumns = ref([
|
||||
hide: true,
|
||||
dataIndex: "designerPerson",
|
||||
formType: "input",
|
||||
commonRules: [{ required: true, message: "开发人员必填" }],
|
||||
commonRules: [{ required: true, message: "开发人员必填" }]
|
||||
},
|
||||
{
|
||||
title: "开发方日期",
|
||||
@@ -380,7 +387,7 @@ const crudColumns = ref([
|
||||
hide: true,
|
||||
dataIndex: "verifyDate",
|
||||
formType: "date"
|
||||
},
|
||||
}
|
||||
])
|
||||
</script>
|
||||
|
||||
|
||||
@@ -299,7 +299,7 @@ const crudColumns = ref([
|
||||
const subItemFormData = crudRef.value.getFormData().testContent
|
||||
// 取出充分性条件字段字符串
|
||||
const mapRes = subItemFormData.map((subItem) => subItem.subName)
|
||||
crudRef.value.getFormData().adequacy = `测试用例覆盖${mapRes}子项要求的全部内容。\n所有用例执行完毕,对于未执行的用例说明未执行原因。`
|
||||
crudRef.value.getFormData().adequacy = `测试用例覆盖${mapRes.join('、')}子项要求的全部内容。\n所有用例执行完毕,对于未执行的用例说明未执行原因。`
|
||||
}
|
||||
},
|
||||
{
|
||||
|
||||
@@ -164,68 +164,72 @@ const createSmItem = async (record) => {
|
||||
// 大纲生成二级文档
|
||||
const createDgItem = async (record) => {
|
||||
// 生成测试项文档
|
||||
const st = await dgGenerateApi.createTestDemand({ id: record.id })
|
||||
await dgGenerateApi.createTestDemand({ id: record.id })
|
||||
// 标准依据文件
|
||||
const st1 = await dgGenerateApi.createYiju({ id: record.id })
|
||||
await dgGenerateApi.createYiju({ id: record.id })
|
||||
// 技术依据文件
|
||||
const st2 = await dgGenerateApi.createTechYiju({ id: record.id })
|
||||
await dgGenerateApi.createTechYiju({ id: record.id })
|
||||
// 生成时间和地点
|
||||
const st3 = await dgGenerateApi.createTimeaddress({ id: record.id })
|
||||
await dgGenerateApi.createTimeaddress({ id: record.id })
|
||||
// 生成被测软件功能列表
|
||||
const st4 = await dgGenerateApi.createFuncList({ id: record.id })
|
||||
await dgGenerateApi.createFuncList({ id: record.id })
|
||||
// 生成测评对象-软件组成
|
||||
const st5 = await dgGenerateApi.createSoftComposition({ id: record.id })
|
||||
await dgGenerateApi.createSoftComposition({ id: record.id })
|
||||
// 生成联系人和方式
|
||||
const st6 = await dgGenerateApi.createContact({ id: record.id })
|
||||
await dgGenerateApi.createContact({ id: record.id })
|
||||
// 生成测试充分性(adequancy)和有效性(effectiveness)说明
|
||||
const st7 = await dgGenerateApi.createAdequacyEffectiveness({ id: record.id })
|
||||
await dgGenerateApi.createAdequacyEffectiveness({ id: record.id })
|
||||
// 生成测评组织及分工
|
||||
const st8 = await dgGenerateApi.createGroup({ id: record.id })
|
||||
await dgGenerateApi.createGroup({ id: record.id })
|
||||
// 生成测评保障
|
||||
const st9 = await dgGenerateApi.createGuarantee({ id: record.id })
|
||||
await dgGenerateApi.createGuarantee({ id: record.id })
|
||||
// 生成缩略语
|
||||
const st10 = await dgGenerateApi.createAbbreviation({ id: record.id })
|
||||
await dgGenerateApi.createAbbreviation({ id: record.id })
|
||||
// 生成-被测软件接口
|
||||
const st11 = await dgGenerateApi.createInterface({ id: record.id })
|
||||
await dgGenerateApi.createInterface({ id: record.id })
|
||||
// 生成-被测软件性能
|
||||
const st12 = await dgGenerateApi.createPerformance({ id: record.id })
|
||||
await dgGenerateApi.createPerformance({ id: record.id })
|
||||
// 生成-被测软件基本信息
|
||||
const st13 = await dgGenerateApi.createBaseInformation({ id: record.id })
|
||||
await dgGenerateApi.createBaseInformation({ id: record.id })
|
||||
// 生成-测试总体要求
|
||||
const st14 = await dgGenerateApi.createRequirement({ id: record.id })
|
||||
await dgGenerateApi.createRequirement({ id: record.id })
|
||||
// 生成-研总-测试项对照表
|
||||
const st15 = await dgGenerateApi.createYzComparison({ id: record.id })
|
||||
await dgGenerateApi.createYzComparison({ id: record.id })
|
||||
// 生成-需求规格说明-测试项对照表
|
||||
const st16 = await dgGenerateApi.createXqComparison({ id: record.id })
|
||||
await dgGenerateApi.createXqComparison({ id: record.id })
|
||||
// 生成-反向测试项-需求规格说明对照表
|
||||
const st17 = await dgGenerateApi.createFanXqComparison({ id: record.id })
|
||||
await dgGenerateApi.createFanXqComparison({ id: record.id })
|
||||
// 生成-代码质量度量分析表
|
||||
const st18 = await dgGenerateApi.createCodeQuality({ id: record.id })
|
||||
await dgGenerateApi.createCodeQuality({ id: record.id })
|
||||
// 生成-软硬件环境
|
||||
const st19 = await dgGenerateApi.createEnvironment({ id: record.id })
|
||||
await dgGenerateApi.createEnvironment({ id: record.id })
|
||||
// 生成-主要战技指标
|
||||
const st20 = await dgGenerateApi.createMainTech({ id: record.id })
|
||||
Message.success(st20.message)
|
||||
const st = await dgGenerateApi.createMainTech({ id: record.id })
|
||||
Message.success(st.message)
|
||||
}
|
||||
// 报告生成二级文档
|
||||
const createBgItem = async (record) => {
|
||||
const st1 = await bgGenerateApi.createBgTechYiju({ id: record.id })
|
||||
const st2 = await bgGenerateApi.createBgTimeaddress({ id: record.id })
|
||||
const st3 = await bgGenerateApi.createBgBaseInformation({ id: record.id })
|
||||
const st4 = await bgGenerateApi.createBgCompletionstatus({ id: record.id })
|
||||
const st5 = await bgGenerateApi.createBgSummary({ id: record.id })
|
||||
const st6 = await bgGenerateApi.createBgContentandresults1({ id: record.id })
|
||||
const st7 = await bgGenerateApi.createBgContentandresults2({ id: record.id })
|
||||
const st8 = await bgGenerateApi.createBgEffectAndAdquacy({ id: record.id })
|
||||
const st9 = await bgGenerateApi.createBgDemandEffective({ id: record.id })
|
||||
const st10 = await bgGenerateApi.createBgQualityEvaluate({ id: record.id })
|
||||
const st11 = await bgGenerateApi.createBgEntire({ id: record.id })
|
||||
const st12 = await bgGenerateApi.createBgYzxqTrack({ id: record.id })
|
||||
const st13 = await bgGenerateApi.createBgProblemsSummary({ id: record.id })
|
||||
Message.success(st13.message)
|
||||
// 删除output/bg文件夹下文件
|
||||
await bgGenerateApi.deleteBGFiles({ id: record.id })
|
||||
await bgGenerateApi.createBgTechYiju({ id: record.id })
|
||||
await bgGenerateApi.createBgTimeaddress({ id: record.id })
|
||||
await bgGenerateApi.createBgBaseInformation({ id: record.id })
|
||||
await bgGenerateApi.createBgCompletionstatus({ id: record.id })
|
||||
await bgGenerateApi.createBgSummary({ id: record.id })
|
||||
await bgGenerateApi.createBgContentandresults1({ id: record.id })
|
||||
await bgGenerateApi.createBgContentandresults2({ id: record.id })
|
||||
await bgGenerateApi.createBgEffectAndAdquacy({ id: record.id })
|
||||
await bgGenerateApi.createBgDemandEffective({ id: record.id })
|
||||
await bgGenerateApi.createBgQualityEvaluate({ id: record.id })
|
||||
await bgGenerateApi.createBgEntire({ id: record.id })
|
||||
await bgGenerateApi.createBgYzxqTrack({ id: record.id })
|
||||
const st = await bgGenerateApi.createBgProblemsSummary({ id: record.id })
|
||||
Message.success(st.message)
|
||||
}
|
||||
// 回归测试说明二级文档
|
||||
const createHsmItem = async (record) => {
|
||||
// 先调用删除文件夹里面文件
|
||||
await hsmGenerateApi.deleteHSMFiles({ id: record.id })
|
||||
await hsmGenerateApi.createBasicInfo({ id: record.id })
|
||||
await hsmGenerateApi.createDocSummary({ id: record.id })
|
||||
await hsmGenerateApi.createJstech({ id: record.id })
|
||||
@@ -238,6 +242,8 @@ const createHsmItem = async (record) => {
|
||||
}
|
||||
// 回归测试记录二级文档
|
||||
const createHjlItem = async (record) => {
|
||||
// 先调用删除文件夹里面文件
|
||||
await hjlGenerateApi.deleteHJLFiles({ id: record.id })
|
||||
await hjlGenerateApi.createBasicInfo({ id: record.id })
|
||||
const st = await hjlGenerateApi.createCaseinfo({ id: record.id })
|
||||
Message.success(st.message)
|
||||
|
||||
Reference in New Issue
Block a user