You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2 lines
5.8 KiB
2 lines
5.8 KiB
"use strict";(self["webpackChunkshiweisuzhou"]=self["webpackChunkshiweisuzhou"]||[]).push([[779],{4779:function(e,t,r){r.r(t),r.d(t,{default:function(){return c}});var i=function(){var e=this,t=e._self._c;return t("div",{staticClass:"review-container"},[t("el-page-header",{staticClass:"page-header",attrs:{content:"产品评价"},on:{back:e.handleBack}}),t("el-card",{staticClass:"product-card",attrs:{shadow:"hover"}},[t("div",{staticClass:"product-info"},[t("el-image",{staticClass:"product-image",attrs:{src:e.product.product_img,alt:"产品图片",fit:"cover"}}),t("div",{staticClass:"product-details"},[t("h3",{staticClass:"product-title"},[e._v(e._s(e.product.product_title))]),t("p",{staticClass:"product-desc"},[e._v(e._s(e.productDesc))]),t("div",{staticClass:"product-price"},[e._v("¥"+e._s(e.product.product_price/100))])])],1)]),t("el-card",{staticClass:"review-form-card",attrs:{shadow:"hover"}},[t("el-form",{ref:"reviewForm",staticClass:"review-form",attrs:{model:e.reviewForm,rules:e.reviewRules,"label-width":"100px"}},[t("el-form-item",{attrs:{label:"产品评分",prop:"rate"}},[t("div",{staticClass:"rating-stars"},e._l(5,function(r){return t("i",{key:r,staticClass:"el-icon-star-off",class:{active:r<=(e.hoverRating||e.reviewForm.rate)},on:{click:function(t){return e.setRating(r)},mouseover:function(t){e.hoverRating=r},mouseleave:function(t){e.hoverRating=0}}})}),0)]),t("el-form-item",{attrs:{label:"评价商品",prop:"content"}},[t("el-input",{attrs:{type:"textarea",rows:5,placeholder:"请分享您对该产品的使用体验、优缺点等详细评价..."},on:{input:e.handleContentInput},model:{value:e.reviewForm.content,callback:function(t){e.$set(e.reviewForm,"content",t)},expression:"reviewForm.content"}}),t("div",{staticClass:"char-count"},[e._v(e._s(e.contentLength)+"/500")])],1),t("el-form-item",{attrs:{label:"晒图片"}},[t("el-upload",{staticClass:"image-upload",attrs:{action:"#","list-type":"picture-card","on-preview":e.handlePictureCardPreview,"on-remove":e.handleRemove,"before-upload":e.beforeUpload,limit:6,"on-exceed":e.handleExceed,"auto-upload":!1,"on-change":e.handleAvatarChange,"file-list":e.reviewForm.img_list,accept:"jpg/png/jpeg/webp"}},[t("i",{staticClass:"el-icon-plus"})]),t("el-dialog",{attrs:{visible:e.dialogVisible},on:{"update:visible":function(t){e.dialogVisible=t}}},[t("img",{attrs:{width:"100%",src:e.dialogImageUrl,alt:""}})]),t("div",{staticClass:"upload-tip"},[e._v(" 最多上传6张图片,帮助其他买家更直观了解产品 ")])],1),t("el-form-item",[t("el-button",{attrs:{type:"primary"},on:{click:function(t){return e.submitForm("reviewForm")}}},[e._v("提交评价")]),t("el-button",{on:{click:function(t){return e.resetForm("reviewForm")}}},[e._v("取消")])],1)],1)],1),t("el-alert",{staticClass:"review-alert",attrs:{title:"您的评价将在7个工作日内审核通过后展示,恶意评价将被删除",type:"info","show-icon":""}})],1)},s=[],o=(r(8111),r(2489),r(1701),{name:"ProductReview",data(){return{product:{},productDesc:"其他买家,需要你的建议哦!",reviewForm:{rate:0,content:"",img_list:[],is_anonymous:!1},hoverRating:0,contentLength:0,dialogImageUrl:"",dialogVisible:!1,imgList:[],reviewRules:{rate:[{required:!0,message:"请给产品评分",trigger:"change"}],content:[{required:!0,message:"请输入评价内容",trigger:"blur"},{min:10,message:"评价内容至少10个字符",trigger:"blur"},{max:500,message:"评价内容最多500个字符",trigger:"blur"}]}}},mounted(){console.log(this.$route.query);let e=JSON.parse(this.$route.query.product)||{};e?this.product=e:(this.$message.error("未获取到商品信息,请重新操作"),this.$router.go(-1)),console.log(this.product)},methods:{handleAvatarChange(e,t){const r=t.filter(e=>{const t=e.raw?.type.startsWith("image/"),r=e.raw?.size/1024/1024<2;return t?!!r||(this.$message.error("图片大小不能超过2MB"),!1):(this.$message.error("只能上传图片文件(如JPG、PNG等)"),!1)}),i=r.slice(0,6);this.imgList=i,this.reviewForm.img_list=i},handleBack(){this.$router.go(-1)},setRating(e){this.reviewForm.rate=e,this.hoverRating=e},getRatingText(e){const t=["","很差","一般","良好","很好","非常好"];return t[e]},handleContentInput(e){this.contentLength=e.length},handleRemove(e,t){console.log(e,t)},handlePictureCardPreview(e,t){this.dialogImageUrl=e.url,this.dialogVisible=!0},handleExceed(e,t){this.$message.warning(`当前限制选择 6 张图片,本次选择了 ${e.length} 张,共选择了 ${e.length+t.length} 张`)},beforeUpload(e){console.log(e);const t="image/jpeg"===e.type||"image/png"===e.type,r=e.size/1024/1024<2;return t||this.$message.error("上传图片只能是 JPG/PNG 格式!"),r||this.$message.error("上传图片大小不能超过 2MB!"),t&&r},submitForm(e){this.$refs[e].validate(e=>{if(!e)return this.$message.error("请完善评价信息"),!1;{this.$loading({lock:!0,text:"处理中...",spinner:"el-icon-loading"});const e=()=>{if(0===this.imgList.length)return Promise.resolve([]);const e=this.imgList.map(e=>this.util.imgToBase64(e.raw).then(e=>this.post({img_base64:e},"/api/pbservice/Other/base64Upload")).then(e=>e.data.url));return Promise.all(e)};e().then(e=>{const t={product_id:this.product.product_id,order_id:this.product.order_id,content:this.reviewForm.content,rate:this.reviewForm.rate,img_list:e.join(","),is_anonymous:this.reviewForm.is_anonymous?1:0,sku_id:this.product.sku_id};return this.post(t,"/api/product/product_comment")}).then(e=>{1==e.code&&(this.$loading().close(),this.$message.success("评价提交成功!"),this.handleBack())}).catch(e=>{this.$loading().close(),this.$message.error("提交失败,请重试"),console.error("提交错误:",e)})}})},resetForm(e){this.$refs[e].resetFields(),this.contentLength=0}}}),a=o,n=r(1656),l=(0,n.A)(a,i,s,!1,null,"a87ad2ea",null),c=l.exports}}]);
|
|
//# sourceMappingURL=779.c8f94891.js.map
|