From d3004dd80e5fa80c696eaf2aeff089c5fb01bfe2 Mon Sep 17 00:00:00 2001 From: zuozhengqing <a13193816592@163.com> Date: 星期五, 10 十一月 2023 15:28:52 +0800 Subject: [PATCH] Merge branch 'dev' of http://192.168.5.5:10010/r/web/WMS into dev --- src/views/productManage/product/AddProductDialog.vue | 119 +++++++++++++++++++++++++++++------------------------------ 1 files changed, 58 insertions(+), 61 deletions(-) diff --git a/src/views/productManage/product/AddProductDialog.vue b/src/views/productManage/product/AddProductDialog.vue index 5c63af6..62f996c 100644 --- a/src/views/productManage/product/AddProductDialog.vue +++ b/src/views/productManage/product/AddProductDialog.vue @@ -122,6 +122,14 @@ :disabled="!showFooter" ></el-input> </el-form-item> + <el-form-item label="鍥剧墖涓婁紶锛�" prop="imageUrl"> + <IconCropper + :isView="isView" + :image-url="editConfig.infomation.imageSrc" + @getImageData="getImageData" + style="width: 85%" + /> + </el-form-item> </div> <div class="right"> <el-form-item label="閿�鍞环鏍�" prop="salePrice"> @@ -132,7 +140,7 @@ :min="0" :controls="false" size="mini" - style="width: 81%" + style="width: 85%" :disabled="!showFooter" ></el-input-number> </el-form-item> @@ -154,7 +162,7 @@ :min="0" :controls="false" size="mini" - style="width: 81%" + style="width: 85%" :disabled="!showFooter" ></el-input-number> </el-form-item> @@ -462,11 +470,11 @@ </template> <script> -// import CommonFormTableView from "@/components/makepager/CommonFormTableView" +import IconCropper from "./IconCropper" import { getProductCategoryList } from "@/api/product/productCategory" import { getProductList, addProduct, updateProduct } from "@/api/product/product" +import { uploadFiles } from "@/api/common/other" -let inputElement = null export default { name: "AddProductDialog", props: { @@ -482,7 +490,7 @@ } } }, - components: {}, + components: { IconCropper }, computed: { modalTitle() { if (this.editConfig.title === "缂栬緫" && this.editConfig.autoEdit) { @@ -542,10 +550,15 @@ ], statisticsMap: { inLibrary: 0 // 鍦ㄥ簱 - } + }, + isView: false, + fileFormdata: null // 涓婁紶鍥剧墖鍏ュ弬 } }, created() { + if (this.editConfig.title === "缂栬緫" && !this.editConfig.autoEdit) { + this.isView = true + } this.getProductCategoryList() this.getProductList() this.setTableForm() @@ -638,20 +651,45 @@ console.log(this.editConfig.infomation) this.$refs[formName].validate((valid) => { if (valid) { - let requestUrl = this.editConfig.title === "鏂板缓" ? addProduct : updateProduct - this.unsetFieldsToNumber() - requestUrl({ - ...this.editConfig.infomation - }).then((res) => { - console.log(res) - this.editConfig.visible = false - if (res.code === 200) { - this.$message.success("娣诲姞鎴愬姛") - this.$parent.getData() + console.log(this.fileFormdata == null) + let attachmentIDs = [] + if (this.fileFormdata == null) { + if (this.editConfig.infomation.attachmentList?.length > 0) { + this.editConfig.infomation.attachmentList.forEach((ele) => { + attachmentIDs.push(ele.id) + }) + } else { + attachmentIDs = [] } - }, console.error) + this.saveEditRequest(attachmentIDs) + } else { + uploadFiles(this.fileFormdata).then((res) => { + if (res.code == 200) { + res.data.forEach((ele) => { + attachmentIDs.push(ele.id) + }) + } + this.saveEditRequest(attachmentIDs) + }) + } } }) + }, + // 淇濆瓨/缂栬緫鎺ュ彛璇锋眰 + saveEditRequest(attachmentIDs) { + let requestUrl = this.editConfig.title === "鏂板缓" ? addProduct : updateProduct + this.unsetFieldsToNumber() + requestUrl({ + ...this.editConfig.infomation, + attachmentIDs + }).then((res) => { + console.log(res) + this.editConfig.visible = false + if (res.code === 200) { + this.$message.success("娣诲姞鎴愬姛") + this.$parent.getData() + } + }, console.error) }, // 鍒犻櫎 delClick() {}, @@ -712,50 +750,9 @@ this.tableData.splice(scope.$index, 1) }, // 涓婁紶鍥剧墖 - toGetImg() { - if (this.showFooter) { - if (inputElement === null) { - // 鐢熸垚鏂囦欢涓婁紶鐨勬帶浠� - inputElement = document.createElement("input") - inputElement.setAttribute("type", "file") - inputElement.style.display = "none" - if (window.addEventListener) { - inputElement.addEventListener("change", this.uploadFile, false) - } else { - inputElement.attachEvent("onchange", this.uploadFile) - } - document.body.appendChild(inputElement) - } - inputElement.click() - } - }, - uploadFile(el) { - if (el && el.target && el.target.files && el.target.files.length > 0) { - console.log(el) - const files = el.target.files[0] - const isLt2M = files.size / 1024 / 1024 < 2 - const size = files.size / 1024 / 1024 - console.log(size) - // 鍒ゆ柇涓婁紶鏂囦欢鐨勫ぇ灏� - if (!isLt2M) { - this.$message.error("涓婁紶澶村儚鍥剧墖澶у皬涓嶈兘瓒呰繃 2MB!") - } else if (files.type.indexOf("image") === -1) { - //濡傛灉涓嶆槸鍥剧墖鏍煎紡 - this.$message.error("璇烽�夋嫨鍥剧墖鏂囦欢") - } else { - const that = this - const reader = new FileReader() // 鍒涘缓璇诲彇鏂囦欢瀵硅薄 - reader.readAsDataURL(el.target.files[0]) // 鍙戣捣寮傛璇锋眰锛岃鍙栨枃浠� - reader.onload = function () { - // 璇诲彇瀹屾垚鍚庯紝灏嗙粨鏋滆祴鍊肩粰img鐨剆rc - that.imageSrc = this.result - console.log(this.result) - // 鏁版嵁浼犲埌鍚庡彴 - //const formData = new FormData() - //formData.append('file', files); // 鍙互浼犲埌鍚庡彴鐨勬暟鎹� - } - } - } + getImageData(formdata) { + this.fileFormdata = formdata + // console.log(formdata, "鍥剧墖鏁版嵁") }, // 杩涘嚭鐐瑰嚮 inOutBoundClick() { -- Gitblit v1.8.0