2024-08-29 18:20:37 +08:00
|
|
|
|
import { ref } from "vue"
|
|
|
|
|
|
import dgGenerateApi from "@/api/generate/dgGenerate"
|
|
|
|
|
|
import smGenerateApi from "@/api/generate/smGenerate"
|
|
|
|
|
|
import jlGenerateApi from "@/api/generate/jlGenerate"
|
|
|
|
|
|
import bgGenerateApi from "@/api/generate/bgGenerate"
|
|
|
|
|
|
import hsmGenerateApi from "@/api/generate/hsmGenerate"
|
|
|
|
|
|
import hjlGenerateApi from "@/api/generate/hjlGenerate"
|
|
|
|
|
|
import wtdGenerateApi from "@/api/generate/wtdGenerate"
|
|
|
|
|
|
import { Message } from "@arco-design/web-vue"
|
|
|
|
|
|
|
|
|
|
|
|
const useGenerateSecond = function () {
|
|
|
|
|
|
// refs
|
|
|
|
|
|
const isGenerating = ref(false) // 在二级文档生成过程中禁用按钮点击
|
|
|
|
|
|
// 用于显示是否正在加载(全部按钮各一个)
|
|
|
|
|
|
const isDgLoading = ref(false)
|
|
|
|
|
|
const isSmLoading = ref(false)
|
|
|
|
|
|
const isBgLoading = ref(false)
|
|
|
|
|
|
const isJlloading = ref(false)
|
|
|
|
|
|
const ishsmLoading = ref(false)
|
|
|
|
|
|
const ishjlLoading = ref(false)
|
|
|
|
|
|
const isWtdLoading = ref(false)
|
|
|
|
|
|
// events
|
|
|
|
|
|
// 记录生成二级文档
|
|
|
|
|
|
const createJLItem = async (record: any) => {
|
|
|
|
|
|
isGenerating.value = true
|
|
|
|
|
|
isJlloading.value = true
|
|
|
|
|
|
await jlGenerateApi.createJLcaserecord({ id: record.id }).finally(() => {
|
|
|
|
|
|
isGenerating.value = false
|
|
|
|
|
|
isJlloading.value = false
|
|
|
|
|
|
})
|
|
|
|
|
|
Message.success("记录-片段库生成成功,请查看output/jl文件夹")
|
|
|
|
|
|
}
|
|
|
|
|
|
// 说明生成二级文档
|
|
|
|
|
|
const createSmItem = async (record: any) => {
|
|
|
|
|
|
isGenerating.value = true
|
|
|
|
|
|
isSmLoading.value = true
|
|
|
|
|
|
const id = record.id
|
|
|
|
|
|
await Promise.all([
|
|
|
|
|
|
dgGenerateApi.createSoftComposition({ id }), // 生成测评对象 - 和大纲一样
|
|
|
|
|
|
dgGenerateApi.createFuncList({ id }), // 生成被测软件功能 - 和大纲重复
|
|
|
|
|
|
dgGenerateApi.createInterface({ id }), // 生成被测软件接口 - 和大纲重复 - 可能会删除
|
|
|
|
|
|
dgGenerateApi.createPerformance({ id }), // 生成被测软件性能 - 和大纲重复 - 可能会删除
|
|
|
|
|
|
dgGenerateApi.createBaseInformation({ id }), // 生成被测软件基本信息 - 和大纲重复 - 可能会删除
|
|
|
|
|
|
dgGenerateApi.createYiju({ id }), // 生成标准类引用文档 - 和大纲重复 - 可能会删除
|
|
|
|
|
|
smGenerateApi.createSMTechyiju({ id }), // 生成技术类引用文档列表 -> 在大纲基础上添加《测评大纲》
|
2024-12-06 19:02:49 +08:00
|
|
|
|
// 拆分软硬件环境
|
|
|
|
|
|
dgGenerateApi.createStaticEnvironment({ id }), // 生成-静态测试环境说明
|
|
|
|
|
|
dgGenerateApi.createStaticSoft({ id }), // 生成-静态软件项
|
|
|
|
|
|
dgGenerateApi.createStaticHard({ id }), // 生成-静态硬件和固件项
|
|
|
|
|
|
dgGenerateApi.createDynamicEnv({ id }), // 生成-动态测试环境说明
|
|
|
|
|
|
dgGenerateApi.createDynamicSoft({ id }), // 生成-动态软件项
|
|
|
|
|
|
dgGenerateApi.createDynamicHard({ id }), // 生成-动态硬件和固件项
|
|
|
|
|
|
dgGenerateApi.createTestData({ id }), // 生成-测评数据
|
|
|
|
|
|
dgGenerateApi.createEnvDiff({ id }), // 生成-环境差异性分析
|
|
|
|
|
|
// ~~~
|
2024-08-29 18:20:37 +08:00
|
|
|
|
smGenerateApi.createSMCaseList({ id }), // 生成用例全
|
|
|
|
|
|
smGenerateApi.createSMCaseBreifList({ id }), // 生成用例列表-那个表格
|
|
|
|
|
|
smGenerateApi.createSMTrack({ id }) // 生成说明追踪
|
|
|
|
|
|
]).finally(() => {
|
|
|
|
|
|
isGenerating.value = false
|
|
|
|
|
|
isSmLoading.value = false
|
|
|
|
|
|
})
|
|
|
|
|
|
Message.success("说明-片段库生成成功,请查看output/sm文件夹")
|
|
|
|
|
|
}
|
|
|
|
|
|
// 大纲生成二级文档
|
|
|
|
|
|
const createDgItem = async (e: any, record: any) => {
|
|
|
|
|
|
isGenerating.value = true
|
|
|
|
|
|
isDgLoading.value = true
|
|
|
|
|
|
const id = record.id
|
|
|
|
|
|
await Promise.all([
|
|
|
|
|
|
dgGenerateApi.createTestDemand({ id }), // 生成第一轮测试项
|
|
|
|
|
|
dgGenerateApi.createYiju({ id }), // 生成依据文件
|
|
|
|
|
|
dgGenerateApi.createTechYiju({ id }), // 技术依据文件
|
|
|
|
|
|
dgGenerateApi.createContact({ id }), // 生成联系人和方式
|
|
|
|
|
|
dgGenerateApi.createTimeaddress({ id }), // 生成测评时间和地点
|
|
|
|
|
|
dgGenerateApi.createFuncList({ id }), // 生成被测软件功能列表
|
|
|
|
|
|
dgGenerateApi.createSoftComposition({ id }), // 生成测评对象-软件组成
|
|
|
|
|
|
dgGenerateApi.createAdequacyEffectiveness({ id }), // 生成测试充分性(adequancy)和有效性(effectiveness)说明
|
|
|
|
|
|
dgGenerateApi.createGroup({ id }), // 生成测评组织及分工
|
|
|
|
|
|
dgGenerateApi.createGuarantee({ id }), // 生成测评保障
|
|
|
|
|
|
dgGenerateApi.createAbbreviation({ id }), // 生成缩略语
|
|
|
|
|
|
dgGenerateApi.createInterface({ id }), // 生成-被测软件接口
|
|
|
|
|
|
dgGenerateApi.createPerformance({ id }), // 生成-被测软件性能
|
|
|
|
|
|
dgGenerateApi.createBaseInformation({ id }), // 生成-被测软件基本信息
|
|
|
|
|
|
dgGenerateApi.createRequirement({ id }), // 生成-测试总体要求
|
|
|
|
|
|
dgGenerateApi.createYzComparison({ id }), // 生成-研总-测试项对照表
|
|
|
|
|
|
dgGenerateApi.createXqComparison({ id }), // 生成-需求规格说明-测试项对照表
|
|
|
|
|
|
dgGenerateApi.createFanXqComparison({ id }), // 生成-反向测试项-需求规格说明对照表
|
|
|
|
|
|
dgGenerateApi.createCodeQuality({ id }), // 生成-代码质量度量分析表
|
2024-12-06 19:02:49 +08:00
|
|
|
|
// 新增拆分接口
|
|
|
|
|
|
dgGenerateApi.createStaticEnvironment({ id }), // 生成-静态测试环境说明
|
|
|
|
|
|
dgGenerateApi.createStaticSoft({ id }), // 生成-静态软件项
|
|
|
|
|
|
dgGenerateApi.createStaticHard({ id }), // 生成-静态硬件和固件项
|
|
|
|
|
|
dgGenerateApi.createDynamicEnv({ id }), // 生成-动态测试环境说明
|
|
|
|
|
|
dgGenerateApi.createDynamicSoft({ id }), // 生成-动态软件项
|
|
|
|
|
|
dgGenerateApi.createDynamicHard({ id }), // 生成-动态硬件和固件项
|
|
|
|
|
|
dgGenerateApi.createTestData({ id }), // 生成-测评数据
|
|
|
|
|
|
dgGenerateApi.createEnvDiff({ id }), // 生成-环境差异性分析
|
|
|
|
|
|
// ~~~~~~~~~
|
2024-08-29 18:20:37 +08:00
|
|
|
|
dgGenerateApi.createMainTech({ id }) // 生成-主要战技指标
|
|
|
|
|
|
]).finally(() => {
|
|
|
|
|
|
isGenerating.value = false
|
|
|
|
|
|
isDgLoading.value = false
|
|
|
|
|
|
})
|
|
|
|
|
|
Message.success("大纲-片段库文档生成成功,请查看output/dg文件夹")
|
|
|
|
|
|
}
|
|
|
|
|
|
// 报告生成二级文档
|
|
|
|
|
|
const createBgItem = async (record: any) => {
|
|
|
|
|
|
isGenerating.value = true
|
|
|
|
|
|
isBgLoading.value = true
|
|
|
|
|
|
const id = record.id
|
|
|
|
|
|
await Promise.all([
|
|
|
|
|
|
bgGenerateApi.deleteBGFiles({ id }), // 删除output/bg文件夹下文件
|
|
|
|
|
|
bgGenerateApi.createBgTechYiju({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgTimeaddress({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgBaseInformation({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgCompletionstatus({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgSummary({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgContentandresults1({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgContentandresults2({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgEffectAndAdquacy({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgDemandEffective({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgQualityEvaluate({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgEntire({ id }),
|
|
|
|
|
|
bgGenerateApi.createBgYzxqTrack({ id }),
|
2024-12-06 19:02:49 +08:00
|
|
|
|
bgGenerateApi.createBgProblemsSummary({ id }),
|
|
|
|
|
|
// 拆分软硬件环境
|
|
|
|
|
|
dgGenerateApi.createStaticEnvironment({ id }), // 生成-静态测试环境说明
|
|
|
|
|
|
dgGenerateApi.createStaticSoft({ id }), // 生成-静态软件项
|
|
|
|
|
|
dgGenerateApi.createStaticHard({ id }), // 生成-静态硬件和固件项
|
|
|
|
|
|
dgGenerateApi.createDynamicEnv({ id }), // 生成-动态测试环境说明
|
|
|
|
|
|
dgGenerateApi.createDynamicSoft({ id }), // 生成-动态软件项
|
|
|
|
|
|
dgGenerateApi.createDynamicHard({ id }), // 生成-动态硬件和固件项
|
|
|
|
|
|
dgGenerateApi.createTestData({ id }), // 生成-测评数据
|
|
|
|
|
|
dgGenerateApi.createEnvDiff({ id }) // 生成-环境差异性分析
|
2024-08-29 18:20:37 +08:00
|
|
|
|
]).finally(() => {
|
|
|
|
|
|
isGenerating.value = false
|
|
|
|
|
|
isBgLoading.value = false
|
|
|
|
|
|
})
|
|
|
|
|
|
Message.success("报告-片段库文档生成成功,请查看output/bg文件夹")
|
|
|
|
|
|
}
|
|
|
|
|
|
// 回归测试说明二级文档
|
|
|
|
|
|
const createHsmItem = async (record: any) => {
|
|
|
|
|
|
const id = record.id
|
|
|
|
|
|
isGenerating.value = true
|
|
|
|
|
|
ishsmLoading.value = true
|
|
|
|
|
|
await Promise.all([
|
|
|
|
|
|
hsmGenerateApi.deleteHSMFiles({ id }), // 先删除以前文件
|
|
|
|
|
|
hsmGenerateApi.createBasicInfo({ id }),
|
|
|
|
|
|
hsmGenerateApi.createDocSummary({ id }),
|
|
|
|
|
|
hsmGenerateApi.createJstech({ id }),
|
|
|
|
|
|
hsmGenerateApi.createChangePart({ id }),
|
|
|
|
|
|
hsmGenerateApi.createHdemand({ id }),
|
|
|
|
|
|
hsmGenerateApi.createCaseListDesc({ id }),
|
|
|
|
|
|
hsmGenerateApi.createCaseList({ id }),
|
2024-12-06 19:02:49 +08:00
|
|
|
|
hsmGenerateApi.createTrack({ id }),
|
|
|
|
|
|
// 拆分大纲软硬件环境
|
|
|
|
|
|
dgGenerateApi.createStaticEnvironment({ id }), // 生成-静态测试环境说明
|
|
|
|
|
|
dgGenerateApi.createStaticSoft({ id }), // 生成-静态软件项
|
|
|
|
|
|
dgGenerateApi.createStaticHard({ id }), // 生成-静态硬件和固件项
|
|
|
|
|
|
dgGenerateApi.createDynamicEnv({ id }), // 生成-动态测试环境说明
|
|
|
|
|
|
dgGenerateApi.createDynamicSoft({ id }), // 生成-动态软件项
|
|
|
|
|
|
dgGenerateApi.createDynamicHard({ id }), // 生成-动态硬件和固件项
|
|
|
|
|
|
dgGenerateApi.createTestData({ id }), // 生成-测评数据
|
|
|
|
|
|
dgGenerateApi.createEnvDiff({ id }) // 生成-环境差异性分析
|
2024-08-29 18:20:37 +08:00
|
|
|
|
]).finally(() => {
|
|
|
|
|
|
isGenerating.value = false
|
|
|
|
|
|
ishsmLoading.value = false
|
|
|
|
|
|
})
|
|
|
|
|
|
Message.success("回归说明-片段库文档生成成功,请查看output/hsm文件夹")
|
|
|
|
|
|
}
|
|
|
|
|
|
// 回归测试记录二级文档
|
|
|
|
|
|
const createHjlItem = async (record: any) => {
|
|
|
|
|
|
const id = record.id
|
|
|
|
|
|
isGenerating.value = true
|
|
|
|
|
|
ishjlLoading.value = true
|
|
|
|
|
|
await Promise.all([
|
|
|
|
|
|
hjlGenerateApi.deleteHJLFiles({ id }), // 先调用删除文件夹里面文件
|
|
|
|
|
|
hjlGenerateApi.createBasicInfo({ id }),
|
|
|
|
|
|
hjlGenerateApi.createCaseinfo({ id })
|
|
|
|
|
|
]).finally(() => {
|
|
|
|
|
|
isGenerating.value = false
|
|
|
|
|
|
ishjlLoading.value = false
|
|
|
|
|
|
})
|
|
|
|
|
|
Message.success("回归记录-片段库文档生成成功,请查看output/hjl文件夹")
|
|
|
|
|
|
}
|
|
|
|
|
|
// 问题单二级文档
|
|
|
|
|
|
const createWtdItem = async (record: any) => {
|
|
|
|
|
|
isGenerating.value = true
|
|
|
|
|
|
isWtdLoading.value = true
|
|
|
|
|
|
await wtdGenerateApi.createWtdTable({ id: record.id }).finally(() => {
|
|
|
|
|
|
isGenerating.value = false
|
|
|
|
|
|
isWtdLoading.value = false
|
|
|
|
|
|
})
|
|
|
|
|
|
Message.success("问题单-片段库文档生成成功,请查看output/wtd文件夹")
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
|
isGenerating,
|
|
|
|
|
|
isDgLoading,
|
|
|
|
|
|
isSmLoading,
|
|
|
|
|
|
isBgLoading,
|
|
|
|
|
|
isJlloading,
|
|
|
|
|
|
ishsmLoading,
|
|
|
|
|
|
ishjlLoading,
|
|
|
|
|
|
isWtdLoading,
|
|
|
|
|
|
createJLItem,
|
|
|
|
|
|
createSmItem,
|
|
|
|
|
|
createDgItem,
|
|
|
|
|
|
createBgItem,
|
|
|
|
|
|
createHsmItem,
|
|
|
|
|
|
createHjlItem,
|
|
|
|
|
|
createWtdItem
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export default useGenerateSecond
|