|
|
@@ -420,6 +420,32 @@
|
|
|
</el-dialog>
|
|
|
<div class="hint">只能上传jpg/png/jpeg,且不超过2M,最多3张图片</div>
|
|
|
</el-form-item>
|
|
|
+ <el-form-item label="添加资质证书:" prop="imageArr2" class="editProject">
|
|
|
+ <div style="display: flex; flex-wrap: wrap">
|
|
|
+ <div
|
|
|
+ style="position: relative"
|
|
|
+ v-for="(item, index) in projectForm.imageArr2"
|
|
|
+ :key="index"
|
|
|
+ >
|
|
|
+ <img class="editImg el-upload-list__item-thumbnail" :src="item" alt="" />
|
|
|
+ <i class="deleteImg el-icon-delete" @click="deleteImg2(index)"></i>
|
|
|
+ </div>
|
|
|
+ <el-upload
|
|
|
+ v-if="projectForm.imageArr2.length < 3"
|
|
|
+ accept=".jpg,.png,.jpeg"
|
|
|
+ :limit="3"
|
|
|
+ list-type="picture-card"
|
|
|
+ :on-change="changeUpload2"
|
|
|
+ :auto-upload="false"
|
|
|
+ >
|
|
|
+ <i slot="default" class="el-icon-plus"></i>
|
|
|
+ </el-upload>
|
|
|
+ </div>
|
|
|
+ <el-dialog :visible.sync="dialogVisible">
|
|
|
+ <img width="100%" :src="projectForm.image2" alt="" />
|
|
|
+ </el-dialog>
|
|
|
+ <div class="hint">只能上传jpg/png/jpeg,且不超过2M,最多3张图片</div>
|
|
|
+ </el-form-item>
|
|
|
<el-form-item label="项目区域:">
|
|
|
<el-button type="text" @click="editProjectArea"> 编辑项目区域 </el-button>
|
|
|
<div v-if="polygons">
|
|
|
@@ -481,12 +507,20 @@
|
|
|
show-word-limit
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
|
-
|
|
|
- <!-- <el-form-item label="添加图片:" prop="image" required>
|
|
|
- <div>
|
|
|
+ <el-form-item label="添加图片:" prop="image" class="editProject" required="">
|
|
|
+ <div style="display: flex; flex-wrap: wrap">
|
|
|
+ <div
|
|
|
+ style="position: relative"
|
|
|
+ v-for="(item, index) in projectForm.imageArr"
|
|
|
+ :key="index"
|
|
|
+ >
|
|
|
+ <img class="editImg el-upload-list__item-thumbnail" :src="item" alt="" />
|
|
|
+ <i class="deleteImg el-icon-delete" @click="deleteImg(index)"></i>
|
|
|
+ </div>
|
|
|
<el-upload
|
|
|
ref="upload"
|
|
|
- accept=".jpg,.png"
|
|
|
+ v-if="projectForm.imageArr.length < 3"
|
|
|
+ accept=".jpg,.png,.jpeg"
|
|
|
:limit="3"
|
|
|
list-type="picture-card"
|
|
|
:on-change="changeUpload"
|
|
|
@@ -494,39 +528,37 @@
|
|
|
>
|
|
|
<i slot="default" class="el-icon-plus"></i>
|
|
|
</el-upload>
|
|
|
-
|
|
|
</div>
|
|
|
<el-dialog :visible.sync="dialogVisible">
|
|
|
<img width="100%" :src="projectForm.image" alt="" />
|
|
|
</el-dialog>
|
|
|
- <div class="hint">只能上传jpg/png,切不超过1M,最多3张图片</div>
|
|
|
- </el-form-item> -->
|
|
|
- <el-form-item label="添加图片:" prop="image" class="editProject" required="">
|
|
|
+ <div class="hint">只能上传jpg/png,且不超过1M,最多3张图片</div>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="添加资质证书:" prop="imageArr2" class="editProject">
|
|
|
<div style="display: flex; flex-wrap: wrap">
|
|
|
<div
|
|
|
style="position: relative"
|
|
|
- v-for="(item, index) in projectForm.imageArr"
|
|
|
+ v-for="(item, index) in projectForm.imageArr2"
|
|
|
:key="index"
|
|
|
>
|
|
|
<img class="editImg el-upload-list__item-thumbnail" :src="item" alt="" />
|
|
|
- <i class="deleteImg el-icon-delete" @click="deleteImg(index)"></i>
|
|
|
+ <i class="deleteImg el-icon-delete" @click="deleteImg2(index)"></i>
|
|
|
</div>
|
|
|
<el-upload
|
|
|
- ref="upload"
|
|
|
- v-if="projectForm.imageArr.length < 3"
|
|
|
+ v-if="projectForm.imageArr2.length < 3"
|
|
|
accept=".jpg,.png,.jpeg"
|
|
|
:limit="3"
|
|
|
list-type="picture-card"
|
|
|
- :on-change="changeUpload"
|
|
|
+ :on-change="changeUpload2"
|
|
|
:auto-upload="false"
|
|
|
>
|
|
|
<i slot="default" class="el-icon-plus"></i>
|
|
|
</el-upload>
|
|
|
</div>
|
|
|
<el-dialog :visible.sync="dialogVisible">
|
|
|
- <img width="100%" :src="projectForm.image" alt="" />
|
|
|
+ <img width="100%" :src="projectForm.image2" alt="" />
|
|
|
</el-dialog>
|
|
|
- <div class="hint">只能上传jpg/png,且不超过1M,最多3张图片</div>
|
|
|
+ <div class="hint">只能上传jpg/png/jpeg,且不超过2M,最多3张图片</div>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="项目范围:">
|
|
|
<el-button type="text" @click="addProjectArea"> 新增项目区域 </el-button>
|
|
|
@@ -541,7 +573,32 @@
|
|
|
<el-button type="primary" @click="addProject()">确 定</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
-
|
|
|
+ <!-- vueCropper 剪裁图片实现-->
|
|
|
+ <el-dialog
|
|
|
+ title="图片剪裁"
|
|
|
+ :close-on-click-modal="false"
|
|
|
+ :visible.sync="cropperVisible2"
|
|
|
+ append-to-body
|
|
|
+ >
|
|
|
+ <div class="cropper-content">
|
|
|
+ <div style="width: 100%; height: 500px">
|
|
|
+ <vueCropper
|
|
|
+ ref="cropper"
|
|
|
+ :img="photo2.img"
|
|
|
+ autoCrop
|
|
|
+ centerBox
|
|
|
+ fixed
|
|
|
+ :fixedNumber="photo2.fixedNumber"
|
|
|
+ :outputSize="photo2.size"
|
|
|
+ :outputType="photo2.outputType"
|
|
|
+ ></vueCropper>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="cropperVisible2 = false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="finish2">确认</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
<!-- vueCropper 剪裁图片实现-->
|
|
|
<el-dialog
|
|
|
title="图片剪裁"
|
|
|
@@ -625,7 +682,9 @@ export default {
|
|
|
// },
|
|
|
address: [],
|
|
|
image: '',
|
|
|
- imageArr: []
|
|
|
+ imageArr: [],
|
|
|
+ image2: '',
|
|
|
+ imageArr2: []
|
|
|
},
|
|
|
cityValue: [],
|
|
|
options: cityArr,
|
|
|
@@ -689,10 +748,32 @@ export default {
|
|
|
centerBox: false, // 截图框是否被限制在图片里面
|
|
|
infoTrue: true // true 为展示真实输出图片宽高 false 展示看到的截图框宽高
|
|
|
},
|
|
|
+ photo2: {
|
|
|
+ img: '', // 裁剪图片的地址
|
|
|
+ info: true, // 裁剪框的大小信息
|
|
|
+ outputSize: 0.8, // 裁剪生成图片的质量
|
|
|
+ outputType: 'jpeg', // 裁剪生成图片的格式
|
|
|
+ // canScale: false, // 图片是否允许滚轮缩放
|
|
|
+ // autoCrop: true, // 是否默认生成截图框
|
|
|
+ // autoCropWidth: 300, // 默认生成截图框宽度
|
|
|
+ // autoCropHeight: 200, // 默认生成截图框高度
|
|
|
+ // fixedBox: true, // 固定截图框大小 不允许改变
|
|
|
+ fixed: true, // 是否开启截图框宽高固定比例
|
|
|
+ fixedNumber: [1.5, 1], // 截图框的宽高比例
|
|
|
+ full: true, // 是否输出原图比例的截图
|
|
|
+ canMoveBox: false, // 截图框能否拖动
|
|
|
+ original: false, // 上传图片按照原始比例渲染
|
|
|
+ centerBox: false, // 截图框是否被限制在图片里面
|
|
|
+ infoTrue: true // true 为展示真实输出图片宽高 false 展示看到的截图框宽高
|
|
|
+ },
|
|
|
+ cropperVisible2: false, // 剪裁图片的弹窗
|
|
|
file: '', // 上传的图片
|
|
|
+ file2: '', // 上传的图片
|
|
|
projectId: '', // 项目id
|
|
|
url: '', // 当前链接
|
|
|
fileList: [], // 上传的图片列表
|
|
|
+ fileList2: [], // 上传的图片列表
|
|
|
+
|
|
|
myDevicetitindex: 1,
|
|
|
offnone: false,
|
|
|
offtype: '',
|
|
|
@@ -768,13 +849,16 @@ export default {
|
|
|
this.projectForm.imageArr.splice(index, 1)
|
|
|
// console.log(this.projectForm.imageArr);
|
|
|
},
|
|
|
+ deleteImg2(index) {
|
|
|
+ this.fileList2.splice(index, 1)
|
|
|
+ this.projectForm.imageArr2.splice(index, 1)
|
|
|
+ // console.log(this.projectForm.imageArr);
|
|
|
+ },
|
|
|
// 上传按钮 限制图片大小
|
|
|
changeUpload(file, fileList) {
|
|
|
- // console.log(file);
|
|
|
- // console.log(fileList);
|
|
|
this.file = file
|
|
|
this.fileList = fileList
|
|
|
- // //console.log(fileList);
|
|
|
+
|
|
|
const isLt4M = file.size / 1024 / 1024 < 2
|
|
|
if (!isLt4M) {
|
|
|
this.$message.error('上传文件大小不能超过 2MB!')
|
|
|
@@ -786,7 +870,55 @@ export default {
|
|
|
this.cropperVisible = true
|
|
|
})
|
|
|
},
|
|
|
+ changeUpload2(file, fileList) {
|
|
|
+ this.file2 = file
|
|
|
+ this.fileList2 = fileList
|
|
|
+ // //console.log(fileList);
|
|
|
+ const isLt4M = file.size / 1024 / 1024 < 2
|
|
|
+ if (!isLt4M) {
|
|
|
+ this.$message.error('上传文件大小不能超过 2MB!')
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ // 上传成功后将图片地址赋值给裁剪框显示图片
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.photo2.img = URL.createObjectURL(file.raw)
|
|
|
+ this.cropperVisible2 = true
|
|
|
+ })
|
|
|
+ },
|
|
|
+ finish2() {
|
|
|
+ // 获取截图的base64 数据
|
|
|
+ this.$refs.cropper.getCropBlob((data) => {
|
|
|
+ var form = new FormData()
|
|
|
+ let resFile = this.blobToFile(data, 'filename.jpg')
|
|
|
+ // console.log(resFile);
|
|
|
+
|
|
|
+ form.append('file', resFile)
|
|
|
+
|
|
|
+ form.append('img_type', '/index/home03')
|
|
|
+ form.append('token', localStorage.getItem('session'))
|
|
|
+
|
|
|
+ this.cropperVisible2 = false
|
|
|
+ this.$axios({
|
|
|
+ method: 'POST',
|
|
|
+ url: '/api/v2/util/upload/img/',
|
|
|
+ data: form
|
|
|
+ }).then((res) => {
|
|
|
+ // console.log(res);
|
|
|
+
|
|
|
+ if (res.data.data.items.img_url != 0 && res.data.msg == '成功') {
|
|
|
+ this.projectForm.image2 = res.data.data.items.img_url
|
|
|
|
|
|
+ this.projectForm.imageArr2.push(this.projectForm.image2)
|
|
|
+ // console.log(this.projectForm.imageArr);
|
|
|
+ } else {
|
|
|
+ this.$message({
|
|
|
+ message: '上传失败',
|
|
|
+ type: 'error'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ })
|
|
|
+ },
|
|
|
finish() {
|
|
|
// 获取截图的base64 数据
|
|
|
this.$refs.cropper.getCropBlob((data) => {
|
|
|
@@ -808,21 +940,6 @@ export default {
|
|
|
// console.log(res);
|
|
|
|
|
|
if (res.data.data.items.img_url != 0 && res.data.msg == '成功') {
|
|
|
- // //根据url上传到哪个服务器
|
|
|
- // if (this.url.includes("114.115.147.140")) {
|
|
|
- // this.projectForm.image =
|
|
|
- // "http://114.115.147.140:8002" + res.data.data.items.img_url;
|
|
|
- // } else if (this.url.includes("8.136.98.49")) {
|
|
|
- // this.projectForm.image =
|
|
|
- // "http://8.136.98.49:8002" + res.data.data.items.img_url;
|
|
|
- // } else if (this.url.includes("hnyfwlw.com")) {
|
|
|
- // this.projectForm.image =
|
|
|
- // "http://hnyfwlw.com:8002" + res.data.data.items.img_url;
|
|
|
- // }else {
|
|
|
- // this.projectForm.image =
|
|
|
- // "http://114.115.147.140:8002" + res.data.data.items.img_url;
|
|
|
- // }
|
|
|
-
|
|
|
this.projectForm.image = res.data.data.items.img_url
|
|
|
|
|
|
this.projectForm.imageArr.push(this.projectForm.image)
|
|
|
@@ -994,6 +1111,7 @@ export default {
|
|
|
? this.projectForm.address[0]
|
|
|
: this.projectForm.address[2],
|
|
|
img_list: this.projectForm.imageArr,
|
|
|
+ mark: this.projectForm.imageArr2,
|
|
|
area: this.polygons
|
|
|
})
|
|
|
}).then((res) => {
|
|
|
@@ -1035,6 +1153,7 @@ export default {
|
|
|
? this.projectForm.address[0]
|
|
|
: this.projectForm.address[2],
|
|
|
img_list: this.projectForm.imageArr,
|
|
|
+ mark: this.projectForm.imageArr2,
|
|
|
area: this.polygons
|
|
|
})
|
|
|
}).then((res) => {
|
|
|
@@ -1064,6 +1183,7 @@ export default {
|
|
|
introduce: '',
|
|
|
image: '',
|
|
|
imageArr: [],
|
|
|
+ imageArr2: [],
|
|
|
province: '',
|
|
|
city: '',
|
|
|
district: '',
|
|
|
@@ -1123,6 +1243,8 @@ export default {
|
|
|
}
|
|
|
this.projectForm.introduce = this.list.find((v) => v.project_id == this.projectId).project_msg
|
|
|
this.projectForm.imageArr = this.list.find((v) => v.project_id == this.projectId).img_list
|
|
|
+
|
|
|
+ this.projectForm.imageArr2 = this.list.find((v) => v.project_id == this.projectId).mark
|
|
|
// console.log(this.projectForm.imageArr);
|
|
|
|
|
|
// this.$axios({
|