From 9f7b52e81c7d06a290520834febfe21aeacf021c Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期三, 30 七月 2025 17:19:30 +0800 Subject: [PATCH] 商品,视频,大健康,厨神二维码 --- seller/src/views/goods/goods-seller/goodsOperationSec.vue | 92 ++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 80 insertions(+), 12 deletions(-) diff --git a/seller/src/views/goods/goods-seller/goodsOperationSec.vue b/seller/src/views/goods/goods-seller/goodsOperationSec.vue index c78ec8b..ffa87b6 100644 --- a/seller/src/views/goods/goods-seller/goodsOperationSec.vue +++ b/seller/src/views/goods/goods-seller/goodsOperationSec.vue @@ -23,6 +23,15 @@ <FormItem label="鍟嗗搧浠锋牸" prop="price"> <Input v-model="baseInfoForm.price" clearable placeholder="鍟嗗搧浠锋牸" style="width: 260px" type="text"/> </FormItem> + + <FormItem label="鎶芥垚姣斾緥" prop="commission"> +<!-- <Input v-model="baseInfoForm.commission" max="100" min="0" clearable placeholder="鎶芥垚姣斾緥" style="width: 260px" type="number"/>--> + <InputNumber v-model="baseInfoForm.commission" :formatter="value => `${value}%`" + :parser="value => value.replace('%', '')" :max="100" :min="0" clearable + :active-change="false" + placeholder="鎶芥垚姣斾緥" style="width: 260px" type="number"/> + </FormItem> + <FormItem label="鍟嗗搧鍗栫偣" prop="sellingPoint"> <Input v-model="baseInfoForm.sellingPoint" :rows="4" style="width: 260px" type="textarea"/> </FormItem> @@ -48,13 +57,22 @@ <RadioGroup v-if="baseInfoForm.goodsType != 'VIRTUAL_GOODS'" v-model="baseInfoForm.salesModel" button-style="solid" type="button" @on-change="renderTableData(skuTableData)"> <Radio label="RETAIL" title="闆跺敭鍨�">闆跺敭鍨�</Radio> - <Radio label="WHOLESALE" title="鎵瑰彂鍨�">鎵瑰彂鍨�</Radio> +<!-- <Radio label="WHOLESALE" title="鎵瑰彂鍨�">鎵瑰彂鍨�</Radio>--> + <Radio label="PRESALE" title="棰勫敭">棰勫敭</Radio> </RadioGroup> <RadioGroup v-else v-model="baseInfoForm.salesModel" button-style="solid" type="button"> <Radio label="RETAIL" title="闆跺敭鍨�"> <span>铏氭嫙鍨�</span> </Radio> </RadioGroup> + </FormItem> + <FormItem v-if="baseInfoForm.salesModel == 'PRESALE'"> + <div> + 棰勫敭鏃堕棿锛� + <DatePicker type="daterange" v-model="baseInfoForm.preSaleTime" + format="yyyy-MM-dd" placement="bottom-end" placeholder="璇烽�夋嫨棰勫敭鏃堕棿" style="width: 200px" + @on-change="choosePreTime"></DatePicker> + </div> </FormItem> <FormItem v-if="baseInfoForm.salesModel == 'WHOLESALE'" class="form-item-view-el" label="閿�鍞鍒�" prop="wholesaleRule"> @@ -309,9 +327,9 @@ overflow-x: hidden; } "> - <template slot="sn" slot-scope="{ row }"> - <Input v-model="row.sn" clearable placeholder="璇疯緭鍏ヨ揣鍙�" - @on-change="updateSkuTable(row, 'sn')"/> + <template slot="sn" slot-scope="{ row, index }"> + <Input v-model="row.sn" placeholder="璇疯緭鍏ヨ揣鍙�" disabled + @on-change="updateSkuTable(row, 'sn')" /> </template> <div v-if="baseInfoForm.goodsType !== 'VIRTUAL_GOODS'" slot="weight" slot-scope="{ row }"> <Input v-model="row.weight" clearable placeholder="璇疯緭鍏ラ噸閲�" @@ -383,7 +401,7 @@ </div> <FormItem class="form-item-view-el" label="PC鍟嗗搧鎻忚堪" prop="intro" style="width: 100%"> <editor - :show-upload="false" + :show-upload="true" ref="editor" v-model="baseInfoForm.intro" height="800px" @@ -397,7 +415,7 @@ <FormItem class="form-item-view-el" label="绉诲姩绔弿杩�" prop="skuList" style="width: 100%"> <editor - :show-upload="false" + :show-upload="true" ref="introEditor" v-model="baseInfoForm.mobileIntro" height="800px" @@ -541,6 +559,7 @@ import COS from 'cos-js-sdk-v5'; import {getFileKey} from "@/utils/file.js"; import {getFilePreview, getSts} from "@/api/file"; +import {formatDate} from "@/utils/filters"; export default { @@ -677,6 +696,11 @@ categoryName: [], goodsVideo: "", showGoodsVideo: "", + // 棰勫敭鏃堕棿 + preSaleTime:[], + preSaleBeginDate:'', + preSaleEndDate:'', + commission:5 }, /** 琛ㄦ牸澶� */ skuTableColumn: [], @@ -758,6 +782,32 @@ } }, methods: { + // 鏍煎紡鍖栨樉绀哄�� + formatter(date) { + return this.formatDate(date, 'yyyy-MM-dd'); + }, + + // 鏃ユ湡鏍煎紡鍖栧伐鍏� + formatDate(date, format) { + const year = date.getFullYear(); + const month = (date.getMonth() + 1).toString().padStart(2, '0'); + const day = date.getDate().toString().padStart(2, '0'); + + return format + .replace('yyyy', year) + .replace('MM', month) + .replace('dd', day); + }, + choosePreTime(e){ + if (this.baseInfoForm.preSaleTime){ + const[begin,end] = this.baseInfoForm.preSaleTime; + this.baseInfoForm.preSaleBeginDate = this.formatDate(begin,'yyyy-MM-dd'); + this.baseInfoForm.preSaleEndDate = this.formatDate(end,'yyyy-MM-dd'); + console.log('------------------>閫夋嫨鏃堕棿',this.baseInfoForm.preSaleBeginDate,this.baseInfoForm.preSaleEndDate) + + } + console.log('鏃堕棿閫夋嫨------------------銆�',e) + }, // 閫夋嫨鍥剧墖modal handleCLickImg(val, index) { console.log('娴嬭瘯杈撳叆鐨勫��----------------銆�', val) @@ -1185,6 +1235,7 @@ response.result.recommend ? (response.result.recommend = 1) : (response.result.recommend = 0); + response.result.preSaleTime = [response.result.preSaleBeginDate, response.result.preSaleEndDate]; this.baseInfoForm = {...this.baseInfoForm, ...response.result}; this.baseInfoForm.release = 1; //鍗充娇鏄鏀惧叆浠撳簱锛屼慨鏀圭殑鏃跺�欎篃浼氭樉绀轰細绔嬪嵆鍙戝竷 this.categoryId = response.result.categoryPath.split(",")[2]; @@ -1652,6 +1703,7 @@ this.baseInfoForm.regeneratorSkuFlag = true; this.newSkuValues[$index] = ""; } + this.renderTableData(this.skuTableData); }, handleClearSku() { this.skuInfo = []; @@ -1679,6 +1731,7 @@ * 娓叉煋table鎵�闇�瑕佺殑column 鍜� data */ renderTableData(skus) { + console.log('-------------->閿�鍞被鍨�',skus) this.skuTableColumn = []; let pushData = []; // 娓叉煋澶撮儴 @@ -1703,7 +1756,15 @@ } ); } - + // 棰勫敭妯″紡 + // if (this.baseInfoForm.salesModel !== "PRESALE") { + // pushData.push( + // { + // title: "棰勫敭鏃堕棿", + // slot: "price", + // } + // ); + // } if (this.baseInfoForm.salesModel === "WHOLESALE" && this.wholesaleData) { this.wholesaleData.forEach((item, index) => { pushData.push({ @@ -1759,6 +1820,7 @@ * array spec鏁版嵁 */ specIterator(result, spec, skus) { + let table = result; if (spec.length > 0) { //娓呴櫎褰撳墠寰幆鐨勫垎缁� @@ -1800,6 +1862,11 @@ } else { this.skuIndex++; } + + table.forEach((item,index) =>{ + console.log("鍏冪礌:" + item +"index:" + (index +1)) + item.sn = index + 1; + }) return table; }, /** 鏍规嵁鍒嗙被id鑾峰彇绯荤粺璁剧疆瑙勬牸淇℃伅*/ @@ -1857,6 +1924,7 @@ return; } } + // else if (item === "alertQuantity") { // if ( // !/^[0-9]\d*$/.test(row[item]) || @@ -1940,11 +2008,11 @@ this.$Message.error("璇蜂笂浼犲晢鍝佸浘鐗�"); return; } - if (!submit.goodsVideo){ - this.submitLoading = false; - this.$Message.error("璇蜂笂浼犲晢鍝佽棰�"); - return; - } + // if (!submit.goodsVideo){ + // this.submitLoading = false; + // this.$Message.error("璇蜂笂浼犲晢鍝佽棰�"); + // return; + // } if (submit.templateId === "") submit.templateId = 0; let flag = false; let paramValue = ""; -- Gitblit v1.8.0