Commit 9f5a722e by liangzhen

上传图片

1 parent 5a44aa3b
......@@ -23,7 +23,7 @@
clearable
></el-input>
</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="请选择"
......@@ -33,7 +33,7 @@
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......
......@@ -24,7 +24,7 @@
clearable
></el-input>
</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="请选择"
......@@ -34,7 +34,7 @@
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......
......@@ -23,7 +23,7 @@
clearable
></el-input>
</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="请选择"
......@@ -33,7 +33,7 @@
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......
......@@ -19,7 +19,7 @@
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" clearable></el-input>
</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-option label="2024年" value="2024"></el-option>
<el-option label="2023年" value="2023"></el-option>
......@@ -67,7 +67,7 @@
placeholder="请输入"
clearable
></el-input>
</el-form-item>
</el-form-item> -->
<el-form-item class="button">
<el-button @click="submitForm()">
......
......@@ -14,13 +14,13 @@
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" placeholder="请输入" clearable></el-input>
</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-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item class="button">
<el-button @click="submitForm()">
<img class="buttonIcon" src="../../assets/cx.png" />查询</el-button
......
......@@ -42,7 +42,7 @@
>
<h3>{{ item.questionId }}.{{ item.quesCheckItem }}</h3>
<p class="msg">{{ item.checkDesc }}</p>
<div class="quesznfx">
<div class="quesznfx" v-if="item.znfxList&&item.znfxList.length>0">
<p class="tips">智能分析:</p>
<div
v-for="(itemzn, index) in item.znfxList"
......@@ -51,7 +51,7 @@
v-html="itemzn.checkDesc"
></div>
</div>
<div class="quesznfx">
<div class="quesznfx" v-if="item.fzfxList&&item.fzfxList.length>0">
<p class="tips">辅助分析:</p>
<div
v-for="(itemfz, index) in item.fzfxList"
......@@ -73,7 +73,7 @@
<p class="tips">问题描述:</p>
<div
v-for="(items, index) in item.evalList"
:key="items.id"
:key="items.ideval"
class="inputDiv"
>
<el-input
......@@ -86,38 +86,74 @@
><el-button @click="delInput(item, index)" type="primary"
>删除</el-button
>
<el-upload
class="upload-demo"
action="null"
:limit="1"
class="upload_box"
ref="upload"
:limit="limitNum"
:class="{ uploadBox_hide: items.hideUploadEdit }"
:on-change="handleEditChange"
:http-request="
(res) => {
return fileupdate(res, items);
}
"
:on-exceed="handleExceed"
:on-success="successHandler"
:on-error="errUpload"
ref="upload"
:before-upload="beforeAvatarUpload"
:with-credentials="true"
:auto-upload="true"
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
class="upload_btn"
slot="trigger"
size="small"
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>
</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">
<el-checkbox
......@@ -154,10 +190,13 @@ import { MaterialsListKY } from "@/utils/cache";
export default {
data() {
return {
dialogImageUrl:'',
fileList: [],
evalList: [
{
id: "",
ideval: "",
evalQues: "",
hideUploadEdit:false
},
],
tabList: [
......@@ -176,6 +215,11 @@ export default {
urlList: [],
questionList: [],
file: "",
dialogVisible: false,
fullURL: "",
hideUploadEdit: false,
limitNum: 1,
disabled: false,
};
},
mounted() {
......@@ -184,6 +228,68 @@ export default {
this.init(this.clqparams);
},
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() {
this.$message.warning(`只能选择一张图片`);
},
......@@ -202,24 +308,40 @@ export default {
let paramsFX = {
batchId: this.clqparams.batchId,
projectId:this.clqparams.projectId,
projectId: this.clqparams.projectId,
projectStage: item.questionId,
// batchId: 46,
// projectId: "B122XT230004",
// projectStage: 4,
};
let responfx = await selZnfx(paramsFX);
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]);
console.log("yyyyy有");
console.log(item,'itemitemitem')
} else {
console.log("没有");
this.$set(item, "evalList", [
{
id: "",
ideval: "",
evalQues: "",
hideUploadEdit:false,
},
]);
}
......@@ -240,20 +362,20 @@ export default {
this.$set(item, "fzfxList", []);
}
this.$set(item, "Id", 0);
});
}
let paramsUrl = {
fileId: this.urlList[0].id,
url:this.urlList[0].url,
};
let resUrl = await presignedUrl(paramsUrl);
console.log(resUrl, "this.questionList ");
// let prefixUrl = 'pdf/web/viewer.html?file=';
// this.iframeUrl = prefixUrl+resUrl.msg;
// console.log(this.iframeUrl,'this.iframeUrl')
this.iframeUrl = resUrl.msg;
fileId: this.urlList[0].id,
url: this.urlList[0].url,
};
let resUrl = await presignedUrl(paramsUrl);
console.log(this.questionList, "总列表");
// let prefixUrl = 'pdf/web/viewer.html?file=';
// this.iframeUrl = prefixUrl+resUrl.msg;
// console.log(this.iframeUrl,'this.iframeUrl')
// this.iframeUrl = resUrl.msg;
// this.iframeUrl ='https://view.officeapps.live.com/op/view.aspx?src='+ resUrl.msg
});
},
async handleClick(tab) {
......@@ -288,14 +410,15 @@ export default {
adopt(item, index, items) {
console.log(items, "items");
item.evalList.push({
id: "id" + item.Id++,
ideval: "id" + item.Id++,
evalQues: items.checkDesc,
hideUploadEdit:false
});
},
addInput(item) {
console.log(item.Id, "22");
item.evalList.push({
id: "id" + item.Id++,
ideval: "id" + item.Id++,
data: "",
evalQues: "",
});
......@@ -306,8 +429,9 @@ export default {
if (item.checked) {
this.$set(item, "evalList", [
{
id: "",
ideval: "",
evalQues: "",
hideUploadEdit:false,
},
]);
this.$set(item, "Id", 0);
......@@ -322,16 +446,14 @@ export default {
list: this.questionList,
...this.clqparams,
};
console.log(params,'保存' )
// return
let res = await bcevalQuesInfo(params);
},
fileupdate(res, items) {
console.log(res, items, "222222");
this.file = res.file;
if (this.file.size / 1024 > 500) {
this.$message("请上传小于500k的图片");
return;
}
console.log(this.file.size / 1024, "222222");
this.file = res.file;
this.submitFile(res, items);
},
submitFile(item, list) {
......@@ -344,7 +466,11 @@ export default {
.then((response) => {
console.log(response, "上传图片");
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("上传成功");
} else {
this.$message("上传失败");
......@@ -356,18 +482,11 @@ export default {
});
}
},
successHandler(items) {
console.log("来了么22", items);
this.$set(items, "url", this.successurl);
this.$refs.upload.clearFiles();
},
errUpload(items) {
console.log("来了么23332", items);
this.$refs.upload.clearFiles();
},
handleFileUpload() {
console.log("来了么");
},
// successHandler(items) {
// this.fileList.push({ name: items.name, url: items.url });
// console.log("来了么222222", this.fileList);
// },
},
};
</script>
......@@ -567,4 +686,18 @@ export default {
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>
\ No newline at end of file
......@@ -21,9 +21,8 @@
</el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
<el-option label="确认需整改" value="5"></el-option>
<el-option label="确认无需整改" value="6"></el-option>
</el-select>
</el-form-item>
......
......@@ -19,7 +19,7 @@
<el-form-item label="后评估批次名称:" prop="batchName" class="fromItem">
<el-input v-model="ruleForm.batchName" clearable></el-input>
</el-form-item>
<el-form-item
<!-- <el-form-item
label="计划评审日期:"
prop="planReviewDate"
class="fromItem"
......@@ -36,16 +36,16 @@
<el-select v-model="ruleForm.fullName" placeholder="请选择" clearable>
<el-option label="zhangsan" value="0"></el-option>
</el-select>
</el-form-item>
<el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
</el-form-item> -->
<!-- <el-form-item label="后评估状态:" prop="postEvalState" class="fromItem">
<el-select v-model="ruleForm.postEvalState" placeholder="请选择" clearable>
<el-option label="未下发" value="0"></el-option>
<el-option label="已下发" value="1"></el-option>
<el-option label="已撤回" value="2"></el-option>
</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-form-item>
<el-form-item label="创建时间:" prop="createTime" class="fromItem">
......@@ -56,7 +56,7 @@
value-format="yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</el-form-item>
</el-form-item> -->
<el-form-item class="button">
<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!