|
@@ -22,6 +22,7 @@ let picUploadShow = ref(false)
|
|
|
let curPicData = ref({})
|
|
|
function handlePicUploadShow(data={}){
|
|
|
curPicData.value = cloneDeep(data)
|
|
|
+ formRef.value?.clearValidate()
|
|
|
picUploadShow.value = true
|
|
|
}
|
|
|
function handleEdit(data){
|
|
@@ -55,8 +56,10 @@ function getLabelOptions(){
|
|
|
})
|
|
|
}
|
|
|
getLabelOptions()
|
|
|
+const tableLoading = ref(false)
|
|
|
const tableData = ref([])
|
|
|
function getTableData(){
|
|
|
+ tableLoading.value = true
|
|
|
apiImgSource.getImgSourceList({
|
|
|
KeyWord:tableQuery.keyWord,
|
|
|
PermissionIds:Array.isArray(tableQuery.labels)?tableQuery.labels.join(','):'',
|
|
@@ -64,6 +67,7 @@ function getTableData(){
|
|
|
CurrentIndex:tableQuery.currentPage,
|
|
|
PageSize:tableQuery.pageSize
|
|
|
}).then(res=>{
|
|
|
+ tableLoading.value = false
|
|
|
if(res.Ret!==200) return
|
|
|
tableData.value = res.Data.List||[]
|
|
|
tableQuery.totals = res.Data.Paging.Totals||0
|
|
@@ -93,8 +97,16 @@ function handleUploadImg(file){
|
|
|
curPicData.value.SrcUrl = res.Data?.Url||''
|
|
|
})
|
|
|
}
|
|
|
+const rules = {
|
|
|
+ SrcUrl:[{required:true,message:'请上传图片'}],
|
|
|
+ ImgName:[{required:true,message:'请输入图片名称'}],
|
|
|
+ PermissionId:[{required:true,message:'请选择关联标签'}],
|
|
|
+}
|
|
|
+const formRef = ref(null)
|
|
|
async function handleSavePic(){
|
|
|
- //rule check
|
|
|
+ try{
|
|
|
+ await formRef.value?.validate()
|
|
|
+ }catch(e){ return }
|
|
|
const params = {
|
|
|
ImageName:curPicData.value.ImgName,
|
|
|
SrcUrl:curPicData.value.SrcUrl,
|
|
@@ -108,6 +120,10 @@ async function handleSavePic(){
|
|
|
getTableData()
|
|
|
picUploadShow.value = false
|
|
|
}
|
|
|
+function handleSortChange({order,prop}){
|
|
|
+ tableQuery.sortType = order==='ascending'?'asc':'desc'
|
|
|
+ getTableData()
|
|
|
+}
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
@@ -126,6 +142,7 @@ async function handleSavePic(){
|
|
|
:options="labelOptions"
|
|
|
collapse-tags
|
|
|
collapse-tags-tooltip
|
|
|
+ clearable
|
|
|
:props="{
|
|
|
value:'id',
|
|
|
label:'name',
|
|
@@ -140,7 +157,7 @@ async function handleSavePic(){
|
|
|
/>
|
|
|
</div>
|
|
|
<div class="table-box">
|
|
|
- <el-table stripe border :data="tableData">
|
|
|
+ <el-table stripe border :data="tableData" element-loading-text="数据加载中..." v-loading="tableLoading" @sort-change="handleSortChange">
|
|
|
<el-table-column
|
|
|
align="center"
|
|
|
v-for="column in tableColumns" :key="column.key"
|
|
@@ -168,7 +185,7 @@ async function handleSavePic(){
|
|
|
<el-pagination
|
|
|
background
|
|
|
layout="total,prev,pager,next,jumper"
|
|
|
- :current-page="tableQuery.page"
|
|
|
+ :current-page="tableQuery.currentPage"
|
|
|
:page-size="tableQuery.pageSize"
|
|
|
:total="tableQuery.totals"
|
|
|
@current-change="handlePageChange"
|
|
@@ -178,8 +195,8 @@ async function handleSavePic(){
|
|
|
</div>
|
|
|
<el-dialog v-model="picUploadShow" :title="curPicData.Id?'编辑图片':'添加图片'" width="646px" draggable>
|
|
|
<div class="content-wrap">
|
|
|
- <el-form label-width="95px" label-position="left">
|
|
|
- <el-form-item label="照片">
|
|
|
+ <el-form label-width="95px" label-position="left" :model="curPicData" :rules="rules" ref="formRef">
|
|
|
+ <el-form-item label="照片" prop="SrcUrl">
|
|
|
<ImageUpload
|
|
|
:imgUrl="curPicData.SrcUrl"
|
|
|
uploadHint="支持jpg、jpeg、png等格式,建议上传宽高比例为3:4的图片"
|
|
@@ -189,11 +206,11 @@ async function handleSavePic(){
|
|
|
@remove="curPicData.SrcUrl=''"
|
|
|
></ImageUpload>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="图片名称">
|
|
|
+ <el-form-item label="图片名称" prop="ImgName">
|
|
|
<el-input v-model="curPicData.ImgName" placeholder="请输入图片名称"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="关联标签">
|
|
|
- <el-cascader v-model="curPicData.PermissionId" placeholder="请选择关联品种"
|
|
|
+ <el-form-item label="关联标签" prop="PermissionId">
|
|
|
+ <el-cascader v-model="curPicData.PermissionId" placeholder="请选择关联品种" style="width: 100%;"
|
|
|
:options="labelOptions"
|
|
|
:props="{
|
|
|
value:'id',
|