chenlu
8 小时以前 33dbc6a161554f3a897f9e9273feb4f2c1b47381
north-glass-erp/northglass-erp/src/components/sd/order/UploadPicture.vue
@@ -6,7 +6,9 @@
} from '@element-plus/icons-vue'
import { ElMessage, ElMessageBox } from 'element-plus'
import request from "@/utils/requestByFile"
import {useI18n} from "vue-i18n";
const { t } = useI18n()
const uploadRef = ref()
const fileList = ref([])
const converting = ref(false)
@@ -45,7 +47,7 @@
  request.post(`/orderFile/deleteOrderNumberFile/${props.orderId}/${props.rowIndex.orderNumber}`).then(res=>{
    result.value = null
    conversionResult.value = null
    ElMessage.success("删除成功")
    ElMessage.success(t("basicData.msg.deleteSuccess"))
  })
}
@@ -102,7 +104,7 @@
const loadSupportedFormats = async () => {
  try {
    if (fileList.value.length === 0) {
      ElMessage.warning('请先选择要上传的DWG文件或图片文件')
      ElMessage.warning(t("order.msg.pleaseUploadPicture1"))
      return
    }
    loadingFormats.value = true
@@ -110,13 +112,13 @@
    converting.value = true
    progressPercentage.value = 0
    progressStatus.value = ''
    progressText.value = '准备上传...'
    progressText.value = t("order.msg.pleaseUploadPicture2")
    // 模拟进度更新
    const progressInterval = setInterval(() => {
      if (progressPercentage.value < 80) {
        progressPercentage.value += 10
        progressText.value = `上传中... ${progressPercentage.value}%`
        progressText.value = t("order.msg.pleaseUploadPicture3")+progressPercentage.value+'%'
      }
    }, 500)
@@ -132,7 +134,7 @@
        clearInterval(progressInterval)
        progressPercentage.value = 100
        progressStatus.value = 'success'
        progressText.value = '上传完成!'
        progressText.value = t("order.msg.pleaseUploadPicture4")
        uploadRef.value.clearFiles()
        fileList.value = []
        setTimeout(() => {
@@ -142,7 +144,7 @@
      }
    })
  } catch (error) {
    ElMessage.error('上传失败')
    ElMessage.error(t("order.msg.pleaseUploadPicture5"))
  } finally {
    loadingFormats.value = false
  }
@@ -167,18 +169,18 @@
  const fileTypeCheckBoole = fileTypeCheck(file)
  if (!(fileTypeCheckBoole )) {
    //ElMessage.error('请选择DWG或DXF格式的文件')
    ElMessage.error('请选择DWG文件或JPG、PNG格式的图片文件')
    ElMessage.error(t("order.msg.pleaseUploadPicture6"))
    uploadRef.value.clearFiles()
    return
  }
  if (file.raw.size > 50 * 1024 * 1024) {
    ElMessage.error('文件大小不能超过50MB')
    ElMessage.error(t("order.msg.pleaseUploadPicture7"))
    uploadRef.value.clearFiles()
    return
  }
  fileList.value = [file]
  ElMessage.success(`已选择文件: ${file.name}`)
  ElMessage.success(t("order.msg.pleaseUploadPicture8")+file.name)
}
const handleFileRemove = () => {
@@ -217,7 +219,7 @@
        <div class="card-header">
          <span class="header-title">
            <el-icon><Document /></el-icon>
            文件上传
            {{$t("order.msg.pleaseUploadPicture9")}}
          </span>
        </div>
@@ -239,11 +241,11 @@
      >
        <el-icon class="el-icon--upload"><UploadFilled /></el-icon>
        <div class="el-upload__text">
          拖拽文件到此处或 <em>点击选择文件</em>
          {{$t("order.msg.pleaseUploadPicture10")}} <em>{{$t("order.msg.pleaseUploadPicture11")}}</em>
        </div>
        <template #tip>
          <div class="el-upload__tip">
            仅支持 .dwg、.jpg、.png 格式文件,且文件大小不超过50MB
            {{$t("order.msg.pleaseUploadPicture12")}}
          </div>
        </template>
      </el-upload>
@@ -261,7 +263,7 @@
            <template #icon>
              <el-icon><MagicStick /></el-icon>
            </template>
            保存
            {{$t("basicData.save")}}
          </el-button>
          <el-button @click="handleReset"
@@ -270,14 +272,14 @@
            <template #icon>
              <el-icon><RefreshLeft /></el-icon>
            </template>
            重置
            {{$t("craft.reset")}}
          </el-button>
        </div>
      </div>
      <!-- 转换进度 -->
      <div v-if="converting" class="conversion-progress">
        <el-divider content-position="left">上传进度</el-divider>
        <el-divider content-position="left">{{$t("order.msg.pleaseUploadPicture13")}}</el-divider>
        <el-progress
            :percentage="progressPercentage"
            :status="progressStatus"
@@ -290,11 +292,11 @@
      <!-- 转换结果 -->
      <div v-if="conversionResult" class="conversion-result">
        <el-divider content-position="left">上传结果</el-divider>
        <el-divider content-position="left">{{$t("order.msg.pleaseUploadPicture14")}}</el-divider>
        <el-result
            icon="success"
            :sub-title="`文件已成功转格式`"
            :sub-title='t("order.msg.pleaseUploadPicture15")'
        >
          <template #extra>
            <div class="result-content">
@@ -327,7 +329,7 @@
                ><template #icon>
                  <el-icon><Download/></el-icon>
                </template>
                  下载
                  {{$t("order.msg.pleaseUploadPicture16")}}
                </el-button>
                <el-button
                    @click = 'deleteFile'
@@ -335,7 +337,7 @@
                ><template #icon>
                  <el-icon><Delete  /></el-icon>
                </template>
                  删除
                  {{$t("basicData.delete")}}
                </el-button>
              </div>
            </div>