Changes
This commit is contained in:
parent
7b7763d6d1
commit
a9d33bef8f
@ -23,18 +23,11 @@
|
||||
<!-- <script src="http://25.34.83.44:31001/sgepriamapsdk/libs/narimap.umd.min.js"></script>-->
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- <link rel="stylesheet" href="http://25.34.94.58/amap-platform-ui/examples/examples_PMS_i3/css/examples.css"/>-->
|
||||
<!-- <link rel="stylesheet" href="http://25.34.94.58/sgepriamapsdk/css/narimap.umd.css"/>-->
|
||||
<!-- <script src="http://25.34.94.58/amap-platform-ui/examples/examples_PMS_i3/configs/loadDemoConfig.js"></script>-->
|
||||
<!-- <script src="http://25.34.94.58/sgepriamapsdk/libs/narimap.umd.min.js"></script>-->
|
||||
|
||||
|
||||
<!--[if lt IE 11]>
|
||||
<script>window.location.href = '/html/ie.html';</script><![endif]-->
|
||||
<link rel='stylesheet' href='./videoComponent/v1.0.0/style/common.css'>
|
||||
|
||||
@ -40,7 +40,11 @@ export const historyList=(payload)=>{
|
||||
|
||||
//图纸下拉
|
||||
export const prjInfoDrawingUploadList=(payload)=>{
|
||||
return $post(`/zhTEconomy/prjInfo2List` )
|
||||
return $post(`/zhTEconomy/prjInfo2List`,payload )
|
||||
}
|
||||
//获取2.0项目图纸类型和出图内容
|
||||
export const getDrawingTypeAndContent=(payload)=>{
|
||||
return $post(`/zhTEconomy/getDrawingTypeAndContent`,payload )
|
||||
}
|
||||
//施工图下拉
|
||||
export const prjInfoBudgetUploadList=(payload)=>{
|
||||
|
||||
@ -1161,3 +1161,7 @@ export const uploadFile=(payload)=>{
|
||||
export const extractFirstPage=()=>{
|
||||
return $postBlob(`/extractFirstPage/extractFirstPage`)
|
||||
}
|
||||
|
||||
export const checkMerge=(pay)=>{
|
||||
return $post(`/zhUploadSlice/checkMerge`,pay)
|
||||
}
|
||||
|
||||
@ -37,7 +37,7 @@ router.beforeEach((to, from, next) => {
|
||||
})
|
||||
}).catch(err => {
|
||||
useUserStore().logOut().then(() => {
|
||||
ElMessage.error(err)
|
||||
// ElMessage.error(err)
|
||||
next({ path: '/' })
|
||||
})
|
||||
})
|
||||
|
||||
@ -23,7 +23,7 @@ const useUserStore = defineStore(
|
||||
login(username, password, code, uuid).then(res => {
|
||||
setToken(res.token)
|
||||
this.token = res.token
|
||||
resolve()
|
||||
resolve(res)
|
||||
}).catch(error => {
|
||||
reject(error)
|
||||
})
|
||||
|
||||
@ -32,7 +32,7 @@ const service = axios.create({
|
||||
// axios中请求配置有baseURL选项,表示请求URL公共部分
|
||||
baseURL: import.meta.env.VITE_APP_BASE_API,
|
||||
// 超时
|
||||
timeout: 120000
|
||||
timeout: 600000
|
||||
})
|
||||
let whitePage=['uploadPic',
|
||||
"zhDataMaintain/simpleRead",
|
||||
|
||||
@ -158,6 +158,7 @@ const submit =()=> {
|
||||
}
|
||||
|
||||
import {getOne} from "@/api/zx";
|
||||
import {ElMessage} from "element-plus";
|
||||
|
||||
function handleLogin() {
|
||||
proxy.$refs.loginRef.validate(valid => {
|
||||
@ -183,10 +184,19 @@ function handleLogin() {
|
||||
// url.value = window.URL.createObjectURL(blob);
|
||||
// filePreviewModel.value.open();
|
||||
// })
|
||||
router.push({ path: redirect.value , state: {
|
||||
where: "login",
|
||||
}});
|
||||
}).catch(() => {
|
||||
console.log(res, 'res')
|
||||
if(res.code!=200){
|
||||
ElMessage.error(res.msg)
|
||||
loading.value = false;
|
||||
}else {
|
||||
ElMessage.success(res.msg)
|
||||
router.push({ path: redirect.value , state: {
|
||||
where: "login",
|
||||
}});
|
||||
}
|
||||
|
||||
}).catch((err) => {
|
||||
ElMessage.error(err)
|
||||
loading.value = false;
|
||||
// 重新获取验证码
|
||||
if (captchaEnabled.value) {
|
||||
|
||||
@ -46,6 +46,7 @@
|
||||
<el-upload
|
||||
ref="upload1"
|
||||
action="#"
|
||||
:before-upload="handleBeforeUpload"
|
||||
:http-request="submitUpload1"
|
||||
:on-change="handleFileChange2"
|
||||
accept=".xls,.xlsx"
|
||||
@ -286,23 +287,32 @@ const props = defineProps({
|
||||
moduleName: String,
|
||||
});
|
||||
let upload1=ref(null)
|
||||
const handleBeforeUpload=(file)=>{
|
||||
console.log(file,'校验')
|
||||
if(file.name.split('.').pop()=='xlsx'||file.name.split('.').pop()=='xls'){
|
||||
return
|
||||
}else {
|
||||
ElMessage.error('请上传xlsx或xls格式的文件')
|
||||
return false
|
||||
}
|
||||
}
|
||||
const submitUpload1 = () => {
|
||||
|
||||
const formData = new FormData();
|
||||
formData.append('file', file2.value);
|
||||
// 使用 fetch 发送请求
|
||||
importSafetyWeekly(formData).then(response => response)
|
||||
.then(data => {
|
||||
.then(res => {
|
||||
// 清空文件输入框
|
||||
upload1.value.clearFiles();
|
||||
ElMessage.success(data.msg)
|
||||
if(res.code==200){
|
||||
ElMessage.success(res.msg)
|
||||
}else{
|
||||
ElMessage.error(res.msg)
|
||||
}
|
||||
file2.value=null
|
||||
resetQuery()
|
||||
}).then(res=>{
|
||||
if(res.code==200){
|
||||
ElMessage.success(res.msg)
|
||||
}
|
||||
})
|
||||
})
|
||||
return
|
||||
};
|
||||
let file2=ref(null)
|
||||
|
||||
@ -44,6 +44,7 @@
|
||||
ref="upload1"
|
||||
action="#"
|
||||
:http-request="submitUpload1"
|
||||
:before-upload="handleBeforeUpload"
|
||||
:on-change="handleFileChange1"
|
||||
accept=".xls,.xlsx"
|
||||
:show-file-list="false"
|
||||
@ -470,24 +471,33 @@ const submitUpload = () => {
|
||||
})
|
||||
};
|
||||
let upload1 = ref(null)
|
||||
const handleBeforeUpload=(file)=>{
|
||||
console.log(file,'校验')
|
||||
if(file.name.split('.').pop()=='xlsx'||file.name.split('.').pop()=='xls'){
|
||||
return
|
||||
}else {
|
||||
ElMessage.error('请上传xlsx或xls格式的文件')
|
||||
return false
|
||||
}
|
||||
}
|
||||
const submitUpload1 = () => {
|
||||
console.log(1111)
|
||||
const formData = new FormData();
|
||||
formData.append('file', file1.value);
|
||||
// 使用 fetch 发送请求
|
||||
importCm1(formData).then(response => response)
|
||||
.then(data => {
|
||||
.then(res => {
|
||||
// 清空文件输入框
|
||||
|
||||
if (res.code == 200) {
|
||||
ElMessage.success(res.msg)
|
||||
}else {
|
||||
ElMessage.error(res.msg)
|
||||
}
|
||||
upload1.value.clearFiles();
|
||||
ElMessage.success('上传成功')
|
||||
file1.value = null
|
||||
handleQuery()
|
||||
}).then(res => {
|
||||
if (res.code == 200) {
|
||||
ElMessage.success(res.msg)
|
||||
}
|
||||
})
|
||||
return
|
||||
})
|
||||
};
|
||||
onMounted(() => {
|
||||
getPrjListFun()
|
||||
|
||||
@ -38,7 +38,7 @@
|
||||
<!-- <el-button type="primary">选取文件</el-button>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-upload>-->
|
||||
<el-button type="success" @click="isOpenDialog=true">新增</el-button>
|
||||
<el-button type="success" @click="openXz">新增</el-button>
|
||||
<!-- <el-button type="success" @click="isOpenDialog=true">物资上传</el-button>-->
|
||||
</el-form-item>
|
||||
|
||||
@ -96,7 +96,7 @@
|
||||
<el-form-item label="专业特长" prop="speciality">
|
||||
<el-input :disabled="disabledP" v-model="ruleForm.speciality" />
|
||||
</el-form-item>
|
||||
<el-form-item label="年度培养计划" class="ei" style="display: flex;justify-content: flex-start" v-show="currentStatus=='编辑'||currentStatus=='新增'">
|
||||
<el-form-item label="年度培养计划" class="ei" v-show="currentStatus=='修改'||currentStatus=='新增'">
|
||||
<!-- <el-button type="primary" icon="UploadFilled" @click="importData">导入</el-button>-->
|
||||
<div>
|
||||
<el-upload
|
||||
@ -125,7 +125,7 @@
|
||||
</div>
|
||||
</template>
|
||||
</el-form-item>
|
||||
<el-form-item label="上传头像" class="ei" style="display: flex;justify-content: flex-start" v-show="currentStatus=='编辑'||currentStatus=='新增'">
|
||||
<el-form-item label="上传头像" class="ei" v-show="currentStatus=='修改'||currentStatus=='新增'">
|
||||
<el-upload
|
||||
v-model:file-list="fileList1"
|
||||
ref="upload1"
|
||||
@ -153,9 +153,8 @@
|
||||
<el-form-item label="年度培养计划" prop="speciality" v-show="currentStatus=='详情'" @click="dFile">
|
||||
{{currentOne.annualTrainingPlanName}}
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="图片" class="ei" v-show="currentStatus=='详情'" style="display: flex;justify-content: flex-start">
|
||||
<img style="width: 200px;height:200px" :src="bobSrc" alt=""> <br>{{photoName}}
|
||||
<el-form-item label="图片" class="ei" v-show="currentStatus=='详情'">
|
||||
<img style="width: 200px;height:200px" :src="bobSrc" alt=""><br>
|
||||
</el-form-item>
|
||||
|
||||
|
||||
@ -201,7 +200,7 @@
|
||||
<el-button
|
||||
type="primary"
|
||||
link
|
||||
@click="editFun(scope.row,'编辑')"
|
||||
@click="editFun(scope.row,'修改')"
|
||||
>修改</el-button>
|
||||
<el-button
|
||||
type="primary"
|
||||
@ -264,6 +263,10 @@ const ruleForm=reactive({
|
||||
performanceEvaluation: '',
|
||||
speciality: '',
|
||||
})
|
||||
const openXz=()=>{
|
||||
isOpenDialog.value=true
|
||||
currentStatus.value='新增'
|
||||
}
|
||||
const rules = reactive({
|
||||
name: [{ required: true , message: '必填',}],
|
||||
dept: [{required: true, message: '必填',}],
|
||||
@ -298,6 +301,7 @@ let upLoadname=ref ('')
|
||||
let isOpenDialog =ref(false)
|
||||
const closeDialog=()=>{
|
||||
disabledP.value=false
|
||||
currentStatus.value=''
|
||||
upLoadname.value=''
|
||||
selectItemUpload.value={
|
||||
value:'',
|
||||
@ -318,7 +322,7 @@ const route=useRoute()
|
||||
// 编辑
|
||||
let fileList=ref([])
|
||||
let fileList1=ref([])
|
||||
let currentStatus=ref('编辑')
|
||||
let currentStatus=ref('')
|
||||
let currentOne=ref({})
|
||||
const dFile=()=>{
|
||||
console.log(currentOne.value,'..44')
|
||||
@ -335,8 +339,8 @@ const dFile=()=>{
|
||||
}
|
||||
let annualTrainingPlanName=ref('')
|
||||
let editFun = (rowData,pay) => {
|
||||
if(pay=='编辑'){
|
||||
currentStatus.value='编辑'
|
||||
if(pay=='修改'){
|
||||
currentStatus.value='修改'
|
||||
}else if(pay=='详情'){
|
||||
disabledP.value=true
|
||||
currentStatus.value='详情'
|
||||
|
||||
@ -18,9 +18,11 @@
|
||||
选择文件{{fileList}}
|
||||
</el-button>
|
||||
</el-upload>
|
||||
<!-- :disabled="fileList.length === 0"-->
|
||||
|
||||
<el-button
|
||||
type="primary"
|
||||
:disabled="fileList.length === 0"
|
||||
:disabled="isDisabled"
|
||||
:loading="uploading"
|
||||
style="margin-top: 16px"
|
||||
@click="handleUpload">
|
||||
@ -34,9 +36,9 @@
|
||||
</template>
|
||||
<script setup>
|
||||
import SparkMD5 from 'spark-md5'
|
||||
import { upload,mergeApi } from "@/api/zx";
|
||||
import { upload,mergeApi,checkMerge } from "@/api/zx";
|
||||
import {ElMessage} from "element-plus";
|
||||
|
||||
let isDisabled=ref(true)
|
||||
let uploadRef=ref(null)
|
||||
// 文件列表
|
||||
const fileList = ref([]);
|
||||
@ -72,6 +74,7 @@ const handleFileChange = (fileObj) => {
|
||||
beforeUpload(fileObj.raw)
|
||||
};
|
||||
const beforeUpload = (file) => {
|
||||
isDisabled.value=true
|
||||
console.log('文件切片')
|
||||
// 显示切片进度条
|
||||
showSliceProgress.value = true;
|
||||
@ -103,7 +106,7 @@ const beforeUpload = (file) => {
|
||||
}
|
||||
// 这里开始做切片
|
||||
// 设置切片大小 可以根据实际情况设置
|
||||
const chunkSize = 1024 * 1024 * 20;
|
||||
const chunkSize = 1024 * 1024 * 10;
|
||||
// 计算出切片数量
|
||||
sliceCount.value = Math.ceil(file.size / chunkSize);
|
||||
console.log('切了多少',sliceCount.value)
|
||||
@ -153,6 +156,8 @@ const beforeUpload = (file) => {
|
||||
fileChunkList.forEach((content) => {
|
||||
content.hash = hash;
|
||||
})
|
||||
isDisabled.value=false
|
||||
|
||||
}
|
||||
};
|
||||
})
|
||||
@ -164,22 +169,72 @@ let ind=0
|
||||
//检查剩余且上传
|
||||
|
||||
|
||||
const revertUp=(arr)=>{
|
||||
for (const item of arr) {
|
||||
let content = fileChunkList[item];
|
||||
const formData = new FormData();
|
||||
formData.append("file", content.chunk);
|
||||
formData.append("hash", content.hash);
|
||||
formData.append("filename", content.filename);
|
||||
formData.append("seq", content.seq);
|
||||
formData.append("type", content.type);
|
||||
upload(formData).then(async(res) => {
|
||||
if (res.code=='200') {
|
||||
// 成功计数 并设置分片上传状态
|
||||
content.status = true;
|
||||
const revertUp=async (arr)=>{
|
||||
let num=0
|
||||
if(arr.length!=0){
|
||||
for (const item of arr) {
|
||||
let content = fileChunkList[item-1];
|
||||
const formData = new FormData();
|
||||
formData.append("file", content.chunk);
|
||||
formData.append("hash", content.hash);
|
||||
formData.append("filename", content.filename);
|
||||
formData.append("seq", content.seq);
|
||||
formData.append("type", content.type);
|
||||
let res = await upload(formData)
|
||||
console.log(res)
|
||||
// if(res.code==200){
|
||||
// content.status = true;
|
||||
// num++
|
||||
// if(num==arr.length){
|
||||
// checkMerge({
|
||||
// hash: hash,
|
||||
// type: filetype,
|
||||
// filename: filename,
|
||||
// sliceCount:sliceCount.value
|
||||
// }).then(res=>{
|
||||
// if(res.deSlice.length!=0){
|
||||
// revertUp(res.deSlice)
|
||||
// }else {
|
||||
// merge();
|
||||
// isDisabled.value=true
|
||||
// }
|
||||
// })
|
||||
// }
|
||||
// }
|
||||
// let resp = await checkMerge({
|
||||
// hash: hash,
|
||||
// type: filetype,
|
||||
// filename: filename,
|
||||
// sliceCount:sliceCount.value
|
||||
// })
|
||||
// .then(res=>{
|
||||
// if(res.deSlice.length!=0){
|
||||
// revertUp(res.deSlice)
|
||||
// }else {
|
||||
// merge();
|
||||
// isDisabled.value=true
|
||||
// }
|
||||
// })
|
||||
|
||||
}
|
||||
let resp = await checkMerge({
|
||||
hash: hash,
|
||||
type: filetype,
|
||||
filename: filename,
|
||||
sliceCount:sliceCount.value
|
||||
})
|
||||
if(resp.deSlice.length!=0){
|
||||
revertUp(resp.deSlice)
|
||||
}else {
|
||||
merge();
|
||||
isDisabled.value=true
|
||||
}
|
||||
})
|
||||
|
||||
}else {
|
||||
merge();
|
||||
isDisabled.value=true
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -246,18 +301,28 @@ const startUpload =async () => {
|
||||
// 说明还有分片未上传 需要继续递归
|
||||
if (finishCount.value + errorCount.value < sliceCount.value) {
|
||||
clearTimeout(inter)
|
||||
inter = await setTimeout(() => {
|
||||
console.log('100毫秒')
|
||||
ind++
|
||||
console.log('ind:',ind)
|
||||
next();
|
||||
}, 100);
|
||||
// inter = await setTimeout(() => {
|
||||
// console.log('100毫秒')
|
||||
// ind++
|
||||
// console.log('ind:',ind)
|
||||
// next();
|
||||
// }, 100);
|
||||
ind++
|
||||
console.log('ind:',ind)
|
||||
next();
|
||||
}
|
||||
// 说明所有分片上传成功了 发起合并操作
|
||||
if (finishCount.value === sliceCount.value) {
|
||||
let resetArr =[1,8,9]
|
||||
|
||||
merge();
|
||||
checkMerge({
|
||||
hash: hash,
|
||||
type: filetype,
|
||||
filename: filename,
|
||||
sliceCount:sliceCount.value
|
||||
}).then(res=>{
|
||||
revertUp(res.deSlice)
|
||||
})
|
||||
|
||||
}
|
||||
}).catch(error => {
|
||||
// 对于图中发生的错误需要捕获并记录
|
||||
@ -281,8 +346,8 @@ const startUpload =async () => {
|
||||
});
|
||||
};
|
||||
const merge = () => {
|
||||
console.log('等待服务器合并文')
|
||||
ElMessage.success('上传成功,等待服务器合并文件');
|
||||
// console.log('等待服务器合并文')
|
||||
// ElMessage.success('上传成功,等待服务器合并文件');
|
||||
// 发起合并请求 传入文件hash值、文件类型、文件名
|
||||
mergeApi({
|
||||
hash: hash,
|
||||
@ -290,14 +355,12 @@ const merge = () => {
|
||||
filename: filename
|
||||
}).then((res) => {
|
||||
const data = res.data;
|
||||
if (data.success) {
|
||||
ElMessage.success(data.ElMessage);
|
||||
// 获取上传成功的文件地址
|
||||
console.log(data.content);
|
||||
// 其他业务操作...
|
||||
} else {
|
||||
ElMessage.error(data.ElMessage)
|
||||
if (res.code=='200'){
|
||||
ElMessage.success(res.msg);
|
||||
}else {
|
||||
ElMessage.error(res.msg)
|
||||
}
|
||||
|
||||
uploading.value = false;
|
||||
}).catch(e => {
|
||||
// ElMessage.error('发生错误了');
|
||||
|
||||
@ -38,6 +38,7 @@
|
||||
style="margin-left: 20px;"
|
||||
ref="upload"
|
||||
action="#"
|
||||
:before-upload="handleBeforeUpload"
|
||||
:http-request="submitUpload"
|
||||
:on-change="handleFileChange"
|
||||
accept=".xls,.xlsx"
|
||||
@ -96,8 +97,8 @@
|
||||
placement="right"
|
||||
>
|
||||
<template #reference>
|
||||
<div style="position: relative">
|
||||
{{scope.row.index}}<img style="position: absolute;width: 18px;height: 18px;transform: translateY(5px)" src="@/assets/images/gthz.png">
|
||||
<div style="display: flex;align-items: center;justify-content: center">
|
||||
{{scope.row.index}}<img style="width: 18px;height: 18px;" src="@/assets/images/gthz.png">
|
||||
</div>
|
||||
</template>
|
||||
</el-popover>
|
||||
@ -441,6 +442,15 @@ const handleExceed=(files)=>{
|
||||
upload.value.handleStart(file.value)
|
||||
}
|
||||
let upload=ref(null)
|
||||
const handleBeforeUpload=(file)=>{
|
||||
console.log(file,'校验')
|
||||
if(file.name.split('.').pop()=='xlsx'||file.name.split('.').pop()=='xls'){
|
||||
return
|
||||
}else {
|
||||
ElMessage.error('请上传xlsx或xls格式的文件')
|
||||
return false
|
||||
}
|
||||
}
|
||||
const submitUpload = () => {
|
||||
const formData = new FormData();
|
||||
formData.append('file', file.value);
|
||||
@ -451,7 +461,6 @@ const submitUpload = () => {
|
||||
ElMessage.success(response.msg)
|
||||
}else {
|
||||
ElMessage.error(response.msg)
|
||||
|
||||
}
|
||||
// 清空文件输入框
|
||||
upload.value.clearFiles();
|
||||
|
||||
@ -66,7 +66,7 @@
|
||||
|
||||
</el-col>
|
||||
<el-col :span="8" style="display: flex;justify-content:flex-end">
|
||||
<el-form-item label="电压等级:" prop="name" label-position="left" class="labelItem">
|
||||
<el-form-item label="电压等级(kV):" prop="name" label-position="left" class="labelItem">
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="name"-->
|
||||
<!-- placeholder="请输入名称"-->
|
||||
@ -198,8 +198,8 @@
|
||||
<el-form-item class="labelItem">
|
||||
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
|
||||
<el-button type="success" @click="openDia(0)" v-hasPermi="['tzsc']">施工图上传</el-button>
|
||||
<el-button type="primary" @click="openDia(1)" v-hasPermi="['sgtsc']">预算上传</el-button>
|
||||
<el-button type="success" @click="openDia(0,'no')" v-hasPermi="['engineering:upload:drawing']">施工图上传</el-button>
|
||||
<el-button type="primary" @click="openDia(1,'no')" v-hasPermi="['engineering:upload:budgetDrawing']">预算上传</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -210,14 +210,6 @@
|
||||
box-shadow: 0px 0px 8px 1px rgba(180, 190, 199, 0.5);
|
||||
border-radius: 6px;background-color: #fff;margin-bottom: 20px">
|
||||
<el-form-item label="工程名称:" prop="name" label-position="left" class="labelItem">
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="name"-->
|
||||
<!-- placeholder="请输入名称"-->
|
||||
<!-- clearable-->
|
||||
<!-- style="width: 200px"-->
|
||||
<!-- @keyup.enter="handleQuery"-->
|
||||
<!-- />-->
|
||||
<!-- -->
|
||||
<el-select
|
||||
v-model="upLoadname"
|
||||
clearable
|
||||
@ -235,6 +227,42 @@
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="图纸类型:" prop="name" label-position="left" class="labelItem" v-show="isOrNoR=='no'">
|
||||
<el-select
|
||||
v-model="tzType"
|
||||
clearable
|
||||
filterable
|
||||
:disabled="diaDisabled"
|
||||
placeholder="请输入名称"
|
||||
style="width: 500px"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in tzList"
|
||||
:key="item.code"
|
||||
:label="item.value"
|
||||
@click.native="selectTzType(item)"
|
||||
:value="item.code"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="出图内容:" prop="name" label-position="left" class="labelItem" v-show="isOrNoR=='no'">
|
||||
<el-select
|
||||
v-model="ctContent"
|
||||
clearable
|
||||
filterable
|
||||
:disabled="diaDisabled"
|
||||
placeholder="请输入名称"
|
||||
style="width: 500px"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in ctList"
|
||||
:key="item.code"
|
||||
:label="item.value"
|
||||
@click.native="selectCtContent(item)"
|
||||
:value="item.code"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="更新原因:" label-position="left" class="labelItem" v-show="reDia==1">
|
||||
<el-input
|
||||
v-model="updateReason"
|
||||
@ -282,6 +310,7 @@
|
||||
v-for="(activity, index) in tzLine"
|
||||
:key="index"
|
||||
>
|
||||
更新人:{{ activity.upDateName }}
|
||||
更新时间:{{ activity.time }}
|
||||
文件名:
|
||||
<el-link @click="downloadFile(activity)" type="primary"
|
||||
@ -289,12 +318,12 @@
|
||||
</el-link>
|
||||
<span v-show="activity.upreason!=''&&activity.upreason!=null"><br><br>更新说明:{{ activity.upreason }}</span>
|
||||
|
||||
<span><br><br>更新人:{{ activity.upDateName }}</span>
|
||||
<!-- <span><br><br>更新人:{{ activity.upDateName }}</span>-->
|
||||
|
||||
|
||||
<br><br> 审批人:{{ activity.person }} 审批时间:{{ activity.upDateTime }} 审批状态:{{ activity.status }}
|
||||
<span v-show="activity.approvereason!=''&&activity.approvereason!=null"> <br><br>审批说明:{{
|
||||
activity.approvereason
|
||||
<span v-show="activity.spsm!=''&&activity.spsm!=null"> <br><br>审批说明:{{
|
||||
activity.spsm
|
||||
}}</span>
|
||||
|
||||
|
||||
@ -325,6 +354,7 @@
|
||||
<el-table-column label="单位" width ="120" align="center" prop="buildUnitName" :show-overflow-tooltip="false"/>
|
||||
<el-table-column label="工程名称" width ="150" align="center" prop="prjName" :show-overflow-tooltip="false"/>
|
||||
<el-table-column label="电压等级" align="center" prop="voltageLevel"
|
||||
width="100"
|
||||
:show-overflow-tooltip="false">
|
||||
<template #header="scope">
|
||||
<div>电压等级</div>
|
||||
@ -356,7 +386,7 @@
|
||||
{{scope.row.drawingUpdateTime}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="图纸名称" width="120" align="center" prop="drawingName" :show-overflow-tooltip="true" >
|
||||
<el-table-column label="图纸名称" width="120" align="center" prop="drawingName" :show-overflow-tooltip="false" >
|
||||
<template #default="scope">
|
||||
<div @click="downmloadFile(scope.row,0)"
|
||||
style="
|
||||
@ -415,7 +445,7 @@ text-decoration: underline;
|
||||
/>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center"
|
||||
width="280"
|
||||
min-width="280"
|
||||
:show-overflow-tooltip="false">
|
||||
<template #default="scope">
|
||||
<div style="display:flex;justify-content: center;">
|
||||
@ -491,7 +521,7 @@ import {
|
||||
} from '@/api/jj/gctzgl'
|
||||
// import { getOne } from '@/api/pageB/environmental/index.js'
|
||||
// ,importCm,importCm1,deleteitem
|
||||
import {defineProps, onMounted, ref} from 'vue';
|
||||
import {defineProps, onMounted, ref, watch} from 'vue';
|
||||
|
||||
const {proxy} = getCurrentInstance();
|
||||
|
||||
@ -499,7 +529,7 @@ const props = defineProps({
|
||||
pageType: String,
|
||||
moduleName: String,
|
||||
});
|
||||
import {getVoltageList,getBuildUnit} from "../../../api/jj/gctzgl";
|
||||
import {getVoltageList,getBuildUnit,getDrawingTypeAndContent} from "../../../api/jj/gctzgl";
|
||||
|
||||
let voltageList=ref([])
|
||||
let voltage=ref('')
|
||||
@ -892,15 +922,21 @@ const downmloadFile = (row, num) => {
|
||||
// }
|
||||
}
|
||||
let diaType = ref(0)
|
||||
const openDia = (pay) => {
|
||||
let isOrNoR=ref('')
|
||||
const openDia = (pay,is) => {
|
||||
diaType.value = pay
|
||||
isOrNoR.value=is
|
||||
if (diaType.value == 0) {
|
||||
prjInfoDrawingUploadList().then(res => {
|
||||
prjInfoDrawingUploadList({
|
||||
"uploadType": 0
|
||||
}).then(res => {
|
||||
prjOptions.value = res.data
|
||||
isOpenDialog.value = true
|
||||
})
|
||||
} else if (diaType.value == 1) {
|
||||
prjInfoDrawingUploadList().then(res => {
|
||||
prjInfoDrawingUploadList({
|
||||
"uploadType": 1
|
||||
}).then(res => {
|
||||
prjOptions.value = res.data
|
||||
isOpenDialog.value = true
|
||||
})
|
||||
@ -943,6 +979,11 @@ let isOpenDialog = ref(false)
|
||||
let isOpenTimeLine = ref(false)
|
||||
const closeDialog = () => {
|
||||
upLoadname.value = ''
|
||||
tzType.value = ''
|
||||
ctContent.value = ''
|
||||
tzList.value = []
|
||||
ctList.value = []
|
||||
isOrNoR.value=''
|
||||
diaDisabled.value = false
|
||||
reDia.value = 0
|
||||
selectItemUpload.value = {
|
||||
@ -1165,10 +1206,50 @@ const setSelectItem = (item) => {
|
||||
selectItem.value = JSON.parse(JSON.stringify(item))
|
||||
selectName.value = item.value
|
||||
}
|
||||
let ctList=ref([])
|
||||
let tzList=ref([])
|
||||
let tzType=ref('')
|
||||
let ctContent=ref('')
|
||||
let typeAndContent=ref({})
|
||||
watch(upLoadname, (newValue, oldValue) => {
|
||||
if(upLoadname.value==''){
|
||||
tzList.value=[]
|
||||
tzType.value=''
|
||||
ctContent.value=''
|
||||
|
||||
}
|
||||
})
|
||||
watch(tzType, (newValue, oldValue) => {
|
||||
if(tzType.value==''){
|
||||
ctList.value=[]
|
||||
ctContent.value=''
|
||||
}
|
||||
})
|
||||
const setSelectItemUpload = (item) => {
|
||||
console.log(item)
|
||||
selectItemUpload.value = JSON.parse(JSON.stringify(item))
|
||||
upLoadname.value = item.value
|
||||
|
||||
|
||||
getDrawingTypeAndContent({
|
||||
"prjId":item.code,
|
||||
"uploadType":diaType.value //0 施工图 1
|
||||
}).then(res=>{
|
||||
typeAndContent.value=res.data
|
||||
tzList.value=res.data.type
|
||||
})
|
||||
}
|
||||
const selectTzType=(item)=>{
|
||||
tzType.value=item.value
|
||||
if(item.value=='变电'){
|
||||
ctList.value=typeAndContent.value.content['BD']
|
||||
}else {
|
||||
ctList.value=typeAndContent.value.content['XL']
|
||||
}
|
||||
}
|
||||
|
||||
const selectCtContent=(item)=>{
|
||||
ctContent.value=item.value
|
||||
}
|
||||
const upload = ref(null);
|
||||
const file = ref(null);
|
||||
@ -1203,13 +1284,39 @@ const submitUpload = () => {
|
||||
ElMessage.error('请选择一个工程')
|
||||
return;
|
||||
}
|
||||
if (ctContent.value==''&&isOrNoR.value=='no') {
|
||||
ElMessage.error('请选择出图内容')
|
||||
return;
|
||||
}
|
||||
if (tzType.value==''&&isOrNoR.value=='no') {
|
||||
ElMessage.error('请选择图纸类型')
|
||||
return;
|
||||
}
|
||||
const formData = new FormData();
|
||||
formData.append('file', file.value);
|
||||
console.log(rowData1.value,'rowData1.value')
|
||||
if(diaType.value==0){
|
||||
formData.append('drawingId', rowData1.value.drawingId);
|
||||
|
||||
if(isOrNoR.value=='no'){
|
||||
formData.append('drawingId', selectItemUpload.value.code);
|
||||
formData.append('drawingType',tzType.value);
|
||||
formData.append('drawingContent', ctContent.value);
|
||||
}else {
|
||||
formData.append('drawingId', rowData1.value.drawingId);
|
||||
formData.append('drawingType','');
|
||||
formData.append('drawingContent','');
|
||||
}
|
||||
|
||||
}else if(diaType.value==1){
|
||||
formData.append('budgetId', rowData1.value.budgetDrawingId);
|
||||
if(isOrNoR.value=='no'){
|
||||
formData.append('budgetId', selectItemUpload.value.code);
|
||||
formData.append('drawingType',tzType.value);
|
||||
formData.append('drawingContent', ctContent.value);
|
||||
}else {
|
||||
formData.append('budgetId', rowData1.value.budgetDrawingId);
|
||||
formData.append('drawingType','');
|
||||
formData.append('drawingContent','');
|
||||
}
|
||||
}
|
||||
if (reDia.value == 1) {
|
||||
formData.append('updateReason', updateReason.value);
|
||||
|
||||
@ -66,7 +66,7 @@
|
||||
|
||||
</el-col>
|
||||
<el-col :span="8" style="display: flex;justify-content:flex-end">
|
||||
<el-form-item label="电压等级:" prop="name" label-position="left" class="labelItem">
|
||||
<el-form-item label="电压等级(kV):" prop="name" label-position="left" class="labelItem">
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="name"-->
|
||||
<!-- placeholder="请输入名称"-->
|
||||
@ -204,20 +204,21 @@
|
||||
</el-form>
|
||||
|
||||
|
||||
<el-dialog v-model="isOpenTimeLine" width="30vw" @close="closeTimeLine" :title="titleN" center>
|
||||
<el-dialog v-model="isOpenTimeLine" width="30vw" @close="closeTimeLine" :title="titleN">
|
||||
<div style="height: 500px;overflow-y: auto;position: relative;">
|
||||
<el-timeline style="height:380px;overflow: scroll">
|
||||
<el-timeline style="height:400px;overflow-y: scroll">
|
||||
<el-timeline-item
|
||||
v-for="(activity, index) in tzLine"
|
||||
:key="index"
|
||||
>
|
||||
更新人:{{ activity.upDateName }}
|
||||
更新时间:{{ activity.time }}
|
||||
文件名:
|
||||
<el-link @click="downloadFile(activity)" type="primary" style="border-bottom: 1px solid #0E9CFF">
|
||||
{{ activity.name }}
|
||||
</el-link>
|
||||
<span v-show="activity.upreason!=''&&activity.upreason!=null"><br><br>更新说明:{{ activity.upreason }}</span>
|
||||
<span><br><br>更新人:{{ activity.upDateName }}</span>
|
||||
<span></span>
|
||||
<br><br> 审批人:{{ activity.person }} 审批时间:{{ activity.upDateTime }} 审批状态:{{ activity.status }}
|
||||
<!-- <span v-show="activity.approvereason!=''&&activity.approvereason!=null"> <br><br>审批说明:{{-->
|
||||
<!-- activity.approvereason-->
|
||||
@ -260,14 +261,14 @@
|
||||
<el-table-column label="工程名称" width="150" align="center" prop="prjName" :show-overflow-tooltip="false"/>
|
||||
|
||||
|
||||
<el-table-column label="电压等级(kV)" align="center" prop="voltageLevel" :show-overflow-tooltip="false">
|
||||
<el-table-column label="电压等级(kV)" width="80" align="center" prop="voltageLevel" :show-overflow-tooltip="false">
|
||||
<template #header="scope">
|
||||
<div>电压等级</div>
|
||||
<div>(kV)</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="图纸类型" width="80" align="center" prop="drawingType" :show-overflow-tooltip="false"/>
|
||||
<el-table-column label="出图内容" width ="260" align="center" prop="drawingContent" :show-overflow-tooltip="false"/>
|
||||
<el-table-column label="出图内容" width="280" align="center" prop="drawingContent" :show-overflow-tooltip="false"/>
|
||||
|
||||
|
||||
|
||||
@ -293,7 +294,7 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="图纸名称" width="120" align="center"
|
||||
prop="drawingName" :show-overflow-tooltip="true">
|
||||
prop="drawingName" :show-overflow-tooltip="false">
|
||||
<template #default="scope">
|
||||
<div @click="downmloadFile(scope.row,0)"
|
||||
style="
|
||||
@ -346,7 +347,7 @@ text-decoration: underline;
|
||||
:show-overflow-tooltip="false" width="80"/>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center"
|
||||
width="280"
|
||||
min-width="280"
|
||||
:show-overflow-tooltip="false">
|
||||
<template #default="scope">
|
||||
<div style="display:flex;justify-content: center;">
|
||||
@ -946,8 +947,12 @@ const approveH = (pay) => {
|
||||
console.log(res)
|
||||
if (res.code == 200) {
|
||||
ElMessage.success(res.msg)
|
||||
resetQuery()
|
||||
|
||||
} else {
|
||||
ElMessage.error(res.msg)
|
||||
resetQuery()
|
||||
|
||||
}
|
||||
})
|
||||
} else if (statusApprove.value == 1) {
|
||||
@ -960,9 +965,12 @@ const approveH = (pay) => {
|
||||
console.log(res)
|
||||
if (res.code == 200) {
|
||||
ElMessage.success(res.msg)
|
||||
|
||||
resetQuery()
|
||||
|
||||
} else {
|
||||
ElMessage.error(res.msg)
|
||||
resetQuery()
|
||||
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@ -58,15 +58,15 @@ export default defineConfig(({ mode, command }) => {
|
||||
'/sgtjzhzxsp-api': {
|
||||
//测试服务器
|
||||
// target: "http://117.15.170.46:20241",
|
||||
//文慧
|
||||
// target: "http://192.168.3.85:20241",
|
||||
//志杰
|
||||
// target: "http://192.168.3.200:20241",
|
||||
//张新
|
||||
// target: "http://192.168.3.210:20241",
|
||||
//测试
|
||||
// target: "http://192.168.133.127:20241",
|
||||
target: "http://192.168.133.127:20241",
|
||||
// target: "http://192.168.133.127:20241",
|
||||
// 相斌
|
||||
target: "http://192.168.3.33:20241",
|
||||
// target: "http://192.168.3.33:20241",
|
||||
changeOrigin: true,
|
||||
// target: 'http://192.168.3.114:20241',//广瑞
|
||||
rewrite: (p) => p.replace(/^\/sgtjzhzxsp-api/, '')
|
||||
|
||||
Loading…
Reference in New Issue
Block a user