Commit 9f5a722e by liangzhen

上传图片

1 parent 5a44aa3b
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem"> <!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select <el-select
v-model="ruleForm.postEvalState" v-model="ruleForm.postEvalState"
placeholder="请选择" placeholder="请选择"
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
<el-option label="已下发" value="1"></el-option> <el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option> <el-option label="已撤回" value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
<el-form-item class="button"> <el-form-item class="button">
<el-button @click="submitForm()"> <el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button <img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem"> <!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select <el-select
v-model="ruleForm.postEvalState" v-model="ruleForm.postEvalState"
placeholder="请选择" placeholder="请选择"
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
<el-option label="已下发" value="1"></el-option> <el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option> <el-option label="已撤回" value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
<el-form-item class="button"> <el-form-item class="button">
<el-button @click="submitForm()"> <el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button <img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem"> <!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select <el-select
v-model="ruleForm.postEvalState" v-model="ruleForm.postEvalState"
placeholder="请选择" placeholder="请选择"
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
<el-option label="已下发" value="1"></el-option> <el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option> <el-option label="已撤回" value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
<el-form-item class="button"> <el-form-item class="button">
<el-button @click="submitForm()"> <el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button <img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem"> <el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" clearable></el-input> <el-input v-model="ruleForm.batchName" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item label="项目下达年度:" prop="projectYear" class="fromItem"> <!-- <el-form-item label="项目下达年度:" prop="projectYear" class="fromItem">
<el-select v-model="ruleForm.pprojectYear" placeholder="请选择" clearable> <el-select v-model="ruleForm.pprojectYear" placeholder="请选择" clearable>
<el-option label="2024年" value="2024"></el-option> <el-option label="2024年" value="2024"></el-option>
<el-option label="2023年" value="2023"></el-option> <el-option label="2023年" value="2023"></el-option>
...@@ -67,7 +67,7 @@ ...@@ -67,7 +67,7 @@
placeholder="请输入" placeholder="请输入"
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item> -->
<el-form-item class="button"> <el-form-item class="button">
<el-button @click="submitForm()"> <el-button @click="submitForm()">
......
...@@ -14,13 +14,13 @@ ...@@ -14,13 +14,13 @@
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem"> <el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" placeholder="请输入" clearable></el-input> <el-input v-model="ruleForm.batchName" placeholder="请输入" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem"> <!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable> <el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-option label="未下发" value="0"></el-option> <el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option> <el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option> <el-option label="已撤回" value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
<el-form-item class="button"> <el-form-item class="button">
<el-button @click="submitForm()"> <el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button <img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
> >
<h3>{{ item.questionId }}.{{ item.quesCheckItem }}</h3> <h3>{{ item.questionId }}.{{ item.quesCheckItem }}</h3>
<p class="msg">{{ item.checkDesc }}</p> <p class="msg">{{ item.checkDesc }}</p>
<div class="quesznfx"> <div class="quesznfx" v-if="item.znfxList&&item.znfxList.length>0">
<p class="tips">智能分析:</p> <p class="tips">智能分析:</p>
<div <div
v-for="(itemzn, index) in item.znfxList" v-for="(itemzn, index) in item.znfxList"
...@@ -51,7 +51,7 @@ ...@@ -51,7 +51,7 @@
v-html="itemzn.checkDesc" v-html="itemzn.checkDesc"
></div> ></div>
</div> </div>
<div class="quesznfx"> <div class="quesznfx" v-if="item.fzfxList&&item.fzfxList.length>0">
<p class="tips">辅助分析:</p> <p class="tips">辅助分析:</p>
<div <div
v-for="(itemfz, index) in item.fzfxList" v-for="(itemfz, index) in item.fzfxList"
...@@ -73,7 +73,7 @@ ...@@ -73,7 +73,7 @@
<p class="tips">问题描述:</p> <p class="tips">问题描述:</p>
<div <div
v-for="(items, index) in item.evalList" v-for="(items, index) in item.evalList"
:key="items.id" :key="items.ideval"
class="inputDiv" class="inputDiv"
> >
<el-input <el-input
...@@ -86,38 +86,74 @@ ...@@ -86,38 +86,74 @@
><el-button @click="delInput(item, index)" type="primary" ><el-button @click="delInput(item, index)" type="primary"
>删除</el-button >删除</el-button
> >
<el-upload <el-upload
class="upload-demo" class="upload_box"
action="null" ref="upload"
:limit="1" :limit="limitNum"
:class="{ uploadBox_hide: items.hideUploadEdit }"
:on-change="handleEditChange"
:http-request=" :http-request="
(res) => { (res) => {
return fileupdate(res, items); return fileupdate(res, items);
} }
" "
:on-exceed="handleExceed" :before-upload="beforeAvatarUpload"
:on-success="successHandler" :with-credentials="true"
:on-error="errUpload" :auto-upload="true"
ref="upload" accept=".png, .jpg"
list-type="picture-card"
:file-list="items.fileList"
action=""
> >
<img v-if="items.url" :src="items.url" /> <!-- 加号标识 -->
<!-- :http-request="fileupdate" -->
<!-- <div class="demo-image__preview">
<el-image
style="width: 100px; height: 100px"
:src="items.url"
:preview-src-list="items.url">
</el-image>
</div> -->
<el-button <el-button
class="upload_btn"
slot="trigger"
size="small" size="small"
type="primary" type="primary"
@click="handleFileUpload()"
>上传截图证明</el-button
> >
上传截图
</el-button>
<!-- 上传后显示 -->
<div slot="file" slot-scope="{ file }">
<img
class="el-upload-list__item-thumbnail"
:src="file.url"
alt=""
/>
<span class="el-upload-list__item-actions">
<!-- 图片放大 -->
<span
class="el-upload-list__item-preview"
@click="handlePictureCardPreview(file)"
>
<i class="el-icon-zoom-in"></i>
</span>
<!-- 删除 -->
<span
v-if="!disabled"
class="el-upload-list__item-delete"
@click="handleRemove(file)"
>
<i class="el-icon-delete"></i>
</span>
</span>
</div>
</el-upload> </el-upload>
</div> </div>
<el-dialog
:visible.sync="dialogVisible"
:fullscreen="true"
custom-class="fullscreen-dialog"
>
<img
:src="dialogImageUrl"
alt="Full Screen Image"
style="margin: 0 auto; display: block"
/>
</el-dialog>
<p class="addBtn"> <p class="addBtn">
<el-checkbox <el-checkbox
...@@ -154,10 +190,13 @@ import { MaterialsListKY } from "@/utils/cache"; ...@@ -154,10 +190,13 @@ import { MaterialsListKY } from "@/utils/cache";
export default { export default {
data() { data() {
return { return {
dialogImageUrl:'',
fileList: [],
evalList: [ evalList: [
{ {
id: "", ideval: "",
evalQues: "", evalQues: "",
hideUploadEdit:false
}, },
], ],
tabList: [ tabList: [
...@@ -176,6 +215,11 @@ export default { ...@@ -176,6 +215,11 @@ export default {
urlList: [], urlList: [],
questionList: [], questionList: [],
file: "", file: "",
dialogVisible: false,
fullURL: "",
hideUploadEdit: false,
limitNum: 1,
disabled: false,
}; };
}, },
mounted() { mounted() {
...@@ -184,6 +228,68 @@ export default { ...@@ -184,6 +228,68 @@ export default {
this.init(this.clqparams); this.init(this.clqparams);
}, },
methods: { methods: {
// 放大图片
handlePictureCardPreview(file) {
console.log('点击放大')
this.dialogImageUrl = file.url;
this.dialogVisible = true;
},
// 删除图片
handleRemove(file, fileList) {
console.log(fileList,'this.fileList')
if (this.fileList.length == 0) {
this.fileList = [];
} else {
let dl = this.fileList.indexOf(file);
this.fileList.splice(dl, 1);
}
this.hideUploadEdit = this.fileList.length >= this.limitNum;
},
// on-change添加文件,上传成功和上传失败时都会被调用
handleEditChange(file, fileList) {
this.hideUploadEdit = fileList.length >= this.limitNum;
// this.fileList.push({ name: items.name, url: items.url });
console.log( fileList,' this.fileList')
},
// http-request自定义上传
ImgUploadSectionFile(param) {
this.param = param;
},
// before-upload上传文件之前的钩子,参数为上传的文件
// 若返回 false 或者返回 Promise 且被 reject,则停止上传
beforeAvatarUpload(file) {
this.file=file
const isJPG = file.type === "image/jpeg" || file.type === "image/png";
const isLt2M = this.file.size / 1024 <1000;
console.log(this.file.size/ 1024 ,'this.file.size this.file.size ')
if (!isJPG) {
this.$message.error("上传图片只能是 JPG 或 PNG 格式!");
this.hideUploadEdit=false
}
if (!isLt2M) {
this.hideUploadEdit=false
this.$message.error("上传图片大小不能超过 1000k!");
}
return isJPG && isLt2M;
},
// 文件上传成功时的钩子
handleSuccess(file) {
// console.log(file);
const data = file.data;
//然后数据、逻辑处理
},
showFullScreen() {
console.log(this.fileList, "4444");
this.fullURL = this.fileList[0].url;
this.dialogVisible = true;
},
handleExceed() { handleExceed() {
this.$message.warning(`只能选择一张图片`); this.$message.warning(`只能选择一张图片`);
}, },
...@@ -202,24 +308,40 @@ export default { ...@@ -202,24 +308,40 @@ export default {
let paramsFX = { let paramsFX = {
batchId: this.clqparams.batchId, batchId: this.clqparams.batchId,
projectId:this.clqparams.projectId, projectId: this.clqparams.projectId,
projectStage: item.questionId, projectStage: item.questionId,
// batchId: 46,
// projectId: "B122XT230004",
// projectStage: 4,
}; };
let responfx = await selZnfx(paramsFX); let responfx = await selZnfx(paramsFX);
if (respon.data.records && respon.data.records.length > 0) { if (respon.data.records && respon.data.records.length > 0) {
respon.data.records.forEach(async itemImg=>{
if(itemImg.url){
let paramsImg={
fileId:itemImg.id,
url: itemImg.url,
}
let resUrl = await presignedUrl(paramsImg);
// itemImg.fileList=[{
// url:resUrl.msg
// }]
this.$set(itemImg,'fileList',[{
url:resUrl.msg
}])
itemImg.hideUploadEdit=true
}else{
itemImg.hideUploadEdit=false
}
})
console.log(respon.data.records,'respon.data.records')
this.$set(item, "evalList", [...respon.data.records]); this.$set(item, "evalList", [...respon.data.records]);
console.log(item,'itemitemitem')
console.log("yyyyy有");
} else { } else {
console.log("没有");
this.$set(item, "evalList", [ this.$set(item, "evalList", [
{ {
id: "", ideval: "",
evalQues: "", evalQues: "",
hideUploadEdit:false,
}, },
]); ]);
} }
...@@ -240,20 +362,20 @@ export default { ...@@ -240,20 +362,20 @@ export default {
this.$set(item, "fzfxList", []); this.$set(item, "fzfxList", []);
} }
this.$set(item, "Id", 0); this.$set(item, "Id", 0);
}); });
} }
let paramsUrl = { let paramsUrl = {
fileId: this.urlList[0].id, fileId: this.urlList[0].id,
url:this.urlList[0].url, url: this.urlList[0].url,
}; };
let resUrl = await presignedUrl(paramsUrl); let resUrl = await presignedUrl(paramsUrl);
console.log(resUrl, "this.questionList "); console.log(this.questionList, "总列表");
// let prefixUrl = 'pdf/web/viewer.html?file='; // let prefixUrl = 'pdf/web/viewer.html?file=';
// this.iframeUrl = prefixUrl+resUrl.msg; // this.iframeUrl = prefixUrl+resUrl.msg;
// console.log(this.iframeUrl,'this.iframeUrl') // console.log(this.iframeUrl,'this.iframeUrl')
this.iframeUrl = resUrl.msg; // this.iframeUrl = resUrl.msg;
// this.iframeUrl ='https://view.officeapps.live.com/op/view.aspx?src='+ resUrl.msg
}); });
}, },
async handleClick(tab) { async handleClick(tab) {
...@@ -288,14 +410,15 @@ export default { ...@@ -288,14 +410,15 @@ export default {
adopt(item, index, items) { adopt(item, index, items) {
console.log(items, "items"); console.log(items, "items");
item.evalList.push({ item.evalList.push({
id: "id" + item.Id++, ideval: "id" + item.Id++,
evalQues: items.checkDesc, evalQues: items.checkDesc,
hideUploadEdit:false
}); });
}, },
addInput(item) { addInput(item) {
console.log(item.Id, "22"); console.log(item.Id, "22");
item.evalList.push({ item.evalList.push({
id: "id" + item.Id++, ideval: "id" + item.Id++,
data: "", data: "",
evalQues: "", evalQues: "",
}); });
...@@ -306,8 +429,9 @@ export default { ...@@ -306,8 +429,9 @@ export default {
if (item.checked) { if (item.checked) {
this.$set(item, "evalList", [ this.$set(item, "evalList", [
{ {
id: "", ideval: "",
evalQues: "", evalQues: "",
hideUploadEdit:false,
}, },
]); ]);
this.$set(item, "Id", 0); this.$set(item, "Id", 0);
...@@ -322,16 +446,14 @@ export default { ...@@ -322,16 +446,14 @@ export default {
list: this.questionList, list: this.questionList,
...this.clqparams, ...this.clqparams,
}; };
console.log(params,'保存' )
// return
let res = await bcevalQuesInfo(params); let res = await bcevalQuesInfo(params);
}, },
fileupdate(res, items) { fileupdate(res, items) {
console.log(res, items, "222222"); console.log(this.file.size / 1024, "222222");
this.file = res.file; this.file = res.file;
if (this.file.size / 1024 > 500) {
this.$message("请上传小于500k的图片");
return;
}
this.submitFile(res, items); this.submitFile(res, items);
}, },
submitFile(item, list) { submitFile(item, list) {
...@@ -344,7 +466,11 @@ export default { ...@@ -344,7 +466,11 @@ export default {
.then((response) => { .then((response) => {
console.log(response, "上传图片"); console.log(response, "上传图片");
if (response.code == "200") { if (response.code == "200") {
// this.successurl=response.url // list.url = response.data.downLoadUrl;
// list.fileId= response.data.fileId
this.$set(list,'url',response.data.downLoadUrl)
this.$set(list,'fileId',response.data.fileId)
console.log(this.questionList, "总列表");
this.$message("上传成功"); this.$message("上传成功");
} else { } else {
this.$message("上传失败"); this.$message("上传失败");
...@@ -356,18 +482,11 @@ export default { ...@@ -356,18 +482,11 @@ export default {
}); });
} }
}, },
successHandler(items) { // successHandler(items) {
console.log("来了么22", items); // this.fileList.push({ name: items.name, url: items.url });
this.$set(items, "url", this.successurl);
this.$refs.upload.clearFiles(); // console.log("来了么222222", this.fileList);
}, // },
errUpload(items) {
console.log("来了么23332", items);
this.$refs.upload.clearFiles();
},
handleFileUpload() {
console.log("来了么");
},
}, },
}; };
</script> </script>
...@@ -567,4 +686,18 @@ export default { ...@@ -567,4 +686,18 @@ export default {
vertical-align: top; vertical-align: top;
} }
} }
/deep/.uploadBox_hide .el-upload--picture-card {
display: none;
}
/deep/.upload_box {
display: inline-block;
}
/deep/.el-upload--picture-card {
width: 80px;
height: 40px;
line-height: 50px;
margin-left: 10px;
border: none;
}
</style> </style>
\ No newline at end of file
...@@ -21,9 +21,8 @@ ...@@ -21,9 +21,8 @@
</el-form-item> </el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem"> <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable> <el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-option label="未下发" value="0"></el-option> <el-option label="确认需整改" value="5"></el-option>
<el-option label="已下发" value="1"></el-option> <el-option label="确认无需整改" value="6"></el-option>
<el-option label="已撤回" value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem"> <el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" clearable></el-input> <el-input v-model="ruleForm.batchName" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item <!-- <el-form-item
label="计划评审日期:" label="计划评审日期:"
prop="planReviewDate" prop="planReviewDate"
class="fromItem" class="fromItem"
...@@ -36,16 +36,16 @@ ...@@ -36,16 +36,16 @@
<el-select v-model="ruleForm.fullName" placeholder="请选择" clearable> <el-select v-model="ruleForm.fullName" placeholder="请选择" clearable>
<el-option label="zhangsan" value="0"></el-option> <el-option label="zhangsan" value="0"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem"> <!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable> <el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-option label="未下发" value="0"></el-option> <el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option> <el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option> <el-option label="已撤回" value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
<el-form-item label="创建人:" prop="creator" class="fromItem"> <!-- <el-form-item label="创建人:" prop="creator" class="fromItem">
<el-input v-model="ruleForm.creator" placeholder="请输入" clearable></el-input> <el-input v-model="ruleForm.creator" placeholder="请输入" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item label="创建时间:" prop="createTime" class="fromItem"> <el-form-item label="创建时间:" prop="createTime" class="fromItem">
...@@ -56,7 +56,7 @@ ...@@ -56,7 +56,7 @@
value-format="yyyy-MM-dd hh:mm:ss" value-format="yyyy-MM-dd hh:mm:ss"
> >
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item> -->
<el-form-item class="button"> <el-form-item class="button">
<el-button @click="submitForm()"> <el-button @click="submitForm()">
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!