Commit aac8907b authored by jiaxu.yan's avatar jiaxu.yan

fix: 70583 70569 70568 70566 70578 70570 70558

parent 6f282e40
......@@ -77,6 +77,7 @@ tsno
tuijian
unmatch
userinfo
varibles
vnode
vnodes
vuedraggable
......
query GetSuiteList($offset: Int = 0, $limit: Int = 20, $search: String = "") {
suiteList: getUserCustomCaseSuiteList(
teamId: "team_items;1"
search: {offset: {offset: $offset, limit: $limit}, searchField: "name", search: $search}
) {
fragment CaseListItem on CaseCustomItemRep {
count
list: resultList {
id
serialNumber
name
lawType: layType
style
descriptionInfo
description: caseDesc
remediation
submitUserName
submitTime
canModify
caseCount
updateTime
createTime
createUser
createUserId
needDevice: isBind
classifyName
operatingSystemName
riskLevelName
testMethodName
}
}
# 查询用例列表
query GetCaseList(
$suiteId: ID
$offset: Int = 0
$limit: Int = 50
$search: String = ""
) {
caseList: getAllCaseList(
teamId: "team_items;1"
suiteId: $suiteId
offset: { offset: $offset, limit: $limit }
search: {
retrieveData: [{ RetrieveColumn: "allName", RetrieveValue: $search }]
sortData: [{ SortColumn: "serialNumber", SortOrder: ASC }]
}
) {
...CaseListItem
}
}
fragment ProjectBasicObject on Project {
id
name
description
status
}
# 新建文件检测项目
mutation NewFileTestProject(
$name: String!
$lawId: ID!
$principalUserId: ID!
$systemTypeId: ID!
$systemTypeName: String!
$systemId: ID!
$fileList: [ID!]!
) {
projectMutation: teamProject(id: "team_items;1") {
project: createProject(
input: {
testMethod: File
name: $name
lawId: $lawId
principalUserId: $principalUserId
autoPartsId: $systemTypeId
systemId: $systemId
systemType: $systemTypeName
fileList: $fileList
}
) {
...ProjectBasicObject
}
}
}
......@@ -197,3 +197,15 @@ export function getBySubtaskId(data) {
data
})
}
/**
* 下载pdf
*/
export function pdfDownload(data) {
return request({
url: '/pdf/download',
method: 'post',
data
})
}
......@@ -709,3 +709,11 @@
width: 120px !important;
// text-align: center !important;
}
.passed{
.el-form-item__label{
margin-left: -10px;
}
}
.el-progress{
display: flex;
}
......@@ -168,6 +168,7 @@ export default {
if (res.code === 200) {
// const Image = process.env.VUE_APP_IMAGE_API + res.url
this.uploadList.push({ name: res.originalFilename, url: res.url })
console.log(this.uploadList);
this.uploadedSuccessfully()
} else {
this.number--
......
......@@ -155,6 +155,7 @@ export default {
watch: {
fileName(newValue) {
this.model.fileName = newValue
this.model.enterpriseName = this.enterpriseName
},
'dialogManger.dialogEditId'(newValue) {
this.model.fetch(
......@@ -165,9 +166,6 @@ export default {
)
}
},
mounted() {
this.model.enterpriseName = this.enterpriseName
},
created() {
this.model.taskId = this.$route.query.taskId
},
......@@ -201,6 +199,9 @@ export default {
})
this.$emit('handleSave', res.data)
this.$modal.msgSuccess('提交文件成功')
this.$nextTick(() => {
this.$refs.fileRef.clearValidate()
})
},
errors => {}
)
......
......@@ -198,7 +198,7 @@
</div>
</el-form-item>
<el-form-item
class="right-content-item"
class="right-content-item passed"
label="审查结果"
prop="passed"
>
......@@ -211,7 +211,11 @@
<el-row>
<el-col :span="8">
<div>
文件名称
<el-form-item
prop="fileName"
label-suffix=" "
label="文件名称"
>
<el-autocomplete
v-model="form.fileName"
style="width: 100%"
......@@ -219,15 +223,21 @@
placeholder="请输入文件名称"
@select="querySelect"
></el-autocomplete>
</el-form-item>
</div>
</el-col>
<el-col :span="8" :offset="1">
<div>
章节条目或范围
<el-form-item
prop="catalogue"
label-suffix=" "
label="章节条目或范围"
>
<el-input
v-model="form.catalogue"
placeholder="请输入具体章节条目或范围"
/>
</el-form-item>
</div>
</el-col>
</el-row>
......@@ -340,7 +350,19 @@ export default {
checked: false,
detailsList: [],
rules: {
passed: [{ required: true, message: '请选择审查结果', trigger: 'blur' }]
passed: [
{ required: true, message: '请选择审查结果', trigger: 'blur' }
],
fileName: [
{ required: true, message: '请输入文件名称', trigger: 'blur' }
],
catalogue: [
{
required: true,
message: '请输入具体章节条目或范围',
trigger: 'blur'
}
]
},
changeTask: [],
changeTaskDetails: [],
......
......@@ -41,6 +41,7 @@
<!-- table部分 -->
<div class="pdf-box">
<iframe
v-loading="loading"
:src="fileUrl"
frameborder="0"
style="width: 100%; height: 100%"
......@@ -50,7 +51,7 @@
</template>
<script>
import { getTaskById } from '@/api/task/task'
import { getTaskById, pdfDownload } from '@/api/task/task'
import routerMixins from '@/mixins/router'
export default {
mixins: [routerMixins],
......@@ -59,14 +60,26 @@ export default {
task: {},
taskId: 1,
view: '',
fileUrl:
'http://storage.xuetangx.com/public_assets/xuetangx/PDF/PlayerAPI_v1.0.6.pdf'
fileUrl: '',
loading: false
}
},
async mounted() {
this.loading = true
if (this.$route.query.id) {
this.taskId = this.$route.query.id
this.getTaskDetail()
await this.getTaskDetail()
pdfDownload({
taskId: this.$route.query.id,
type: 1
}).then(res => {
this.fileUrl =
process.env.VUE_APP_IMAGE_API +
'/vehicle-quality-review-oss/' +
res.data
this.loading = false
})
}
this.view = this.$route.query.view
},
......
......@@ -155,6 +155,7 @@ export default {
watch: {
fileName(newValue) {
this.model.fileName = newValue
this.model.enterpriseName = this.enterpriseName
},
'dialogManger.dialogEditId'(newValue) {
this.model.fetch(
......@@ -165,9 +166,6 @@ export default {
)
}
},
mounted() {
this.model.enterpriseName = this.enterpriseName
},
created() {
this.model.taskId = this.$route.query.taskId
},
......@@ -201,6 +199,9 @@ export default {
})
this.$emit('handleSave', res.data)
this.$modal.msgSuccess('提交文件成功')
this.$nextTick(() => {
this.$refs.fileRef.clearValidate()
})
},
errors => {}
)
......
......@@ -208,7 +208,7 @@
</div>
</el-form-item>
<el-form-item
class="right-content-item"
class="right-content-item passed"
label="审查结果"
prop="passed"
>
......@@ -221,7 +221,11 @@
<el-row>
<el-col :span="8">
<div>
文件名称
<el-form-item
prop="fileName"
label-suffix=" "
label="文件名称"
>
<el-autocomplete
v-model="form.fileName"
style="width: 100%"
......@@ -229,15 +233,21 @@
placeholder="请输入文件名称"
@select="querySelect"
></el-autocomplete>
</el-form-item>
</div>
</el-col>
<el-col :span="8" :offset="1">
<div>
章节条目或范围
<el-form-item
prop="catalogue"
label-suffix=" "
label="章节条目或范围"
>
<el-input
v-model="form.catalogue"
placeholder="请输入具体章节条目或范围"
/>
</el-form-item>
</div>
</el-col>
</el-row>
......@@ -350,7 +360,19 @@ export default {
checked: false,
detailsList: [],
rules: {
passed: [{ required: true, message: '请选择审查结果', trigger: 'blur' }]
passed: [
{ required: true, message: '请选择审查结果', trigger: 'blur' }
],
fileName: [
{ required: true, message: '请输入文件名称', trigger: 'blur' }
],
catalogue: [
{
required: true,
message: '请输入具体章节条目或范围',
trigger: 'blur'
}
]
},
// TODO 删除
checkedTwo: false,
......
......@@ -140,7 +140,7 @@ export default {
this.handleClose()
},
errors => {
this.handleClose()
// this.handleClose()
}
)
} else {
......
......@@ -8,12 +8,13 @@
style="width: 100%; height: 100%"
></iframe
>Ï
<el-button @click="newFileTest">新建任务</el-button>
</div>
</page-standard>
</template>
<script>
import { GetSuiteList } from '@/api/graphql/client.graphql'
import { NewFileTestProject } from '@/api/graphql/client.graphql'
export default {
name: 'Index',
data() {
......@@ -27,11 +28,20 @@ export default {
this.getSuiteList()
},
methods: {
getSuiteList() {
newFileTest() {
this.$apollo
.query({
fetchPolicy: 'no-cache',
query: GetSuiteList
.mutate({
// fetchPolicy: 'no-cache',
mutation: NewFileTestProject,
variables: {
name: 'test106',
lawId: 'law_items;106',
principalUserId: 'user_items;2',
systemTypeId: 'autoParts;1',
systemTypeName: 'Linux',
systemId: 'system;1',
fileList: ['file_management_items;2']
}
})
.then(res => {
console.log(res)
......
......@@ -24,7 +24,7 @@
v-for="(item, key) in standardList"
:key="key"
:value="item.id"
:label="item.standardNo + item.name"
:label="item.standardNo + ' ' + item.name"
></el-option>
</el-select>
</el-form-item>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment