Merge branch 'master' of https://gitee.com/beijing_hongye_huicheng/lilishop-ui
						commit
						9e9abe9e1e
					
				|  | @ -56,7 +56,7 @@ | |||
|                       <Rate disabled :value="Number(item.descriptionScore)" allow-half class="remarks-star"></Rate> | ||||
|                     </p> | ||||
|                     <p class="remarks-content">{{item.content}}</p> | ||||
|                     <div class="comment-img" v-if="item.haveImage"> | ||||
|                     <div class="comment-img" v-if="item.image"> | ||||
|                       <div v-for="(img, imgIndex) in item.image.split(',')" | ||||
|                        @click="previewImg(img, item)" | ||||
|                        :class="{borderColor:img === item.previewImg}" | ||||
|  |  | |||
|  | @ -17,15 +17,15 @@ export default { | |||
|    * @description api请求基础路径 | ||||
|    */ | ||||
|   api_dev: { | ||||
|     common: 'http://192.168.0.100:8890', | ||||
|     buyer: 'http://192.168.0.100:8888', | ||||
|     seller: 'http://192.168.0.100:8889', | ||||
|     manager: 'http://192.168.0.100:8887' | ||||
|     // common: 'http://192.168.0.103:8890',
 | ||||
|     // buyer: 'http://192.168.0.103:8888',
 | ||||
|     // seller: 'http://192.168.0.103:8889',
 | ||||
|     // manager: 'http://192.168.0.103:8887'
 | ||||
| 
 | ||||
|     // common: 'https://common-api.pickmall.cn',
 | ||||
|     // buyer: 'https://buyer-api.pickmall.cn',
 | ||||
|     // seller: 'https://store-api.pickmall.cn',
 | ||||
|     // manager: 'https://admin-api.pickmall.cn'
 | ||||
|     common: 'https://common-api.pickmall.cn', | ||||
|     buyer: 'https://buyer-api.pickmall.cn', | ||||
|     seller: 'https://store-api.pickmall.cn', | ||||
|     manager: 'https://admin-api.pickmall.cn' | ||||
|   }, | ||||
|   api_prod: { | ||||
|     common: 'https://common-api.pickmall.cn', | ||||
|  |  | |||
|  | @ -119,7 +119,7 @@ | |||
|             <div class="ml_20 total-price"> | ||||
|               总价(不含运费):<span>{{ priceDetailDTO.billPrice | unitPrice("¥") }}</span> | ||||
|             </div> | ||||
|             <div class="pay ml_20" @click="pay">去支付</div> | ||||
|             <div class="pay ml_20" @click="pay">去结算</div> | ||||
|           </div> | ||||
|         </div> | ||||
|       </div> | ||||
|  |  | |||
|  | @ -11,7 +11,7 @@ | |||
|           <BreadcrumbItem v-for="(item, index) in categoryBar" :to="goGoodsList(index)" target="_blank" :key="index">{{item.name}}</BreadcrumbItem> | ||||
|         </Breadcrumb> | ||||
|         <div class="store-collect"> | ||||
|           <span class="mr_10"><router-link :to="'Merchant?id='+goodsMsg.data.storeId">{{goodsMsg.data.storeName}}</router-link></span> | ||||
|           <span class="mr_10"><router-link :to="'Merchant?id=' + goodsMsg.data.storeId">{{goodsMsg.data.storeName}}</router-link></span> | ||||
|           <span @click="collect" ><Icon type="ios-heart" :color="storeCollected ? '#ed3f14' : '#666'" />{{storeCollected?'已收藏店铺':'收藏店铺'}}</span> | ||||
|         </div> | ||||
|       </div> | ||||
|  |  | |||
|  | @ -157,11 +157,11 @@ export default { | |||
|       window.open(routeUrl.href, '_blank'); | ||||
|     }, | ||||
|     changePageNum (val) { | ||||
|       this.params.pageNumber = val - 1; | ||||
|       this.params.pageNumber = val; | ||||
|       this.getGoodsList(); | ||||
|     }, | ||||
|     changePageSize (val) { | ||||
|       this.params.pageNumber = 0; | ||||
|       this.params.pageNumber = 1; | ||||
|       this.params.pageSize = val; | ||||
|       this.getGoodsList(); | ||||
|     }, | ||||
|  |  | |||
|  | @ -146,11 +146,11 @@ export default { | |||
|       this.getGoodsList() | ||||
|     }, | ||||
|     changePageNum (val) { | ||||
|       this.params.pageNumber = val - 1; | ||||
|       this.params.pageNumber = val; | ||||
|       this.getGoodsList(); | ||||
|     }, | ||||
|     changePageSize (val) { | ||||
|       this.params.pageNumber = 0; | ||||
|       this.params.pageNumber = 1; | ||||
|       this.params.pageSize = val; | ||||
|       this.getGoodsList(); | ||||
|     }, | ||||
|  |  | |||
|  | @ -22,10 +22,10 @@ | |||
|           </div> | ||||
|           <Row class="order-item-view"> | ||||
|             <i-col span="12" class="item-view-name"> | ||||
|               <div class="order-img"> | ||||
|               <div class="order-img hover-color" @click="linkTo(`/goodsDetail?goodsId=${item.goodsId}&skuId=${item.skuId}`)"> | ||||
|                 <img :src="item.goodsImage" alt="" /> | ||||
|               </div> | ||||
|               <div class="order-name"> | ||||
|               <div class="order-name hover-color" @click="linkTo(`/goodsDetail?goodsId=${item.goodsId}&skuId=${item.skuId}`)"> | ||||
|                 {{item.goodsName}} | ||||
|               </div> | ||||
|               <div> | ||||
|  |  | |||
|  | @ -13,7 +13,7 @@ | |||
|     <table cellspacing="0" cellpadding='0' border="1"> | ||||
|       <tr> | ||||
|         <td>投诉商品</td> | ||||
|         <td><img :src="detail.goodsImage" width="60" alt="">  {{ detail.goodsName }}</td> | ||||
|         <td class="hover-color" @click="linkTo(`/goodsDetail?goodsId=${detail.goodsId}&skuId=${detail.skuId}`)"><img :src="detail.goodsImage" width="60" alt="">  {{ detail.goodsName }}</td> | ||||
|       </tr> | ||||
|       <tr> | ||||
|         <td>投诉主题</td> | ||||
|  |  | |||
|  | @ -23,10 +23,10 @@ | |||
|           </div> | ||||
|           <Row class="order-item-view"> | ||||
|             <i-col span="12" class="item-view-name"> | ||||
|               <div class="order-img"> | ||||
|               <div class="order-img hover-color" @click="linkTo(`/goodsDetail?goodsId=${item.goodsId}&skuId=${item.skuId}`)"> | ||||
|                 <img :src="item.goodsImage" alt="" /> | ||||
|               </div> | ||||
|               <div class="order-name"> | ||||
|               <div class="order-name hover-color" @click="linkTo(`/goodsDetail?goodsId=${item.goodsId}&skuId=${item.skuId}`)"> | ||||
|                 {{item.goodsName}} | ||||
|               </div> | ||||
|               <div> | ||||
|  |  | |||
|  | @ -35,8 +35,8 @@ | |||
|             <Input type="textarea" maxlength="500" readonly show-word-limit :rows="4" v-model="orderGoods.content" /> | ||||
|           </div> | ||||
|           <div style="display:flex;align-items:center;"> | ||||
|             <template v-if="orderGoods.image"> | ||||
|               <div class="demo-upload-list"  v-for="(img, index) in orderGoods.image.split(',')" :key="index"> | ||||
|             <template v-if="orderGoods.images"> | ||||
|               <div class="demo-upload-list"  v-for="(img, index) in orderGoods.images.split(',')" :key="index"> | ||||
|                 <img :src="img"> | ||||
|                 <div class="demo-upload-list-cover"> | ||||
|                   <Icon type="ios-eye-outline" @click.native="handleView(img)"></Icon> | ||||
|  |  | |||
|  | @ -56,16 +56,22 @@ | |||
|             > | ||||
| 
 | ||||
|               <!-- 商品栏目格式化 --> | ||||
|               <template slot="goodsSlot" slot-scope="scope"> | ||||
|               <template slot="goodsSlot" slot-scope="{row}"> | ||||
|                 <div style="margin: 5px 0px;height: 80px; display: flex;"> | ||||
|                   <div style=""> | ||||
|                     <img :src="scope.row.original" style="height: 60px;margin-top: 1px;width: 60px"> | ||||
|                     <img :src="row.original" style="height: 60px;margin-top: 1px;width: 60px"> | ||||
|                   </div> | ||||
| 
 | ||||
|                   <div style="margin-left: 13px;"> | ||||
|                     <div class="div-zoom" > | ||||
|                       <a>{{scope.row.goodsName}}</a> | ||||
|                     <div class="div-zoom"> | ||||
|                       <a @click="linkTo(row.id,row.skuId)">{{row.goodsName}}</a> | ||||
|                     </div> | ||||
|                     <Poptip trigger="hover" title="扫码在手机中查看" transfer> | ||||
|                       <div slot="content"> | ||||
|                         <vue-qr :text="wapLinkTo(row.id,row.skuId)"  :margin="0" colorDark="#000" colorLight="#fff" :size="150"></vue-qr> | ||||
|                       </div> | ||||
|                       <img src="../../../assets/qrcode.svg" class="hover-pointer" width="20" height="20" alt=""> | ||||
|                     </Poptip> | ||||
|                   </div> | ||||
|                 </div> | ||||
| 
 | ||||
|  |  | |||
|  | @ -244,6 +244,7 @@ export default { | |||
|     //弹出品牌关联框 | ||||
|     brandOperation(v) { | ||||
|       getCategoryBrandListData(v.id).then((res) => { | ||||
|         console.warn(res) | ||||
|         this.categoryId = v.id; | ||||
|         this.modalBrandTitle = "品牌关联"; | ||||
|         this.brandForm.categoryBrands = res.result.map((item) => item.id); | ||||
|  |  | |||
|  | @ -31,9 +31,7 @@ | |||
|           </p> | ||||
|           <template v-if="group.params && group.params.length > 0"> | ||||
|             <div v-for="param in group.params" :key="param.param_id" class="params"> | ||||
|               <span>{{ param.paramName }} 【{{ | ||||
|                   param.paramType | paramTypeFilter | ||||
|                 }}】</span> | ||||
|               <span>{{ param.paramName }}</span> | ||||
| 
 | ||||
|               <span> | ||||
|                 <i-button type="text" @click="handleEditParams(group, param)">编辑</i-button> | ||||
|  | @ -56,19 +54,30 @@ | |||
|           <FormItem label="参数名称" prop="paramName"> | ||||
|             <Input v-model="paramForm.paramName" style="width: 100%" /> | ||||
|           </FormItem> | ||||
|           <FormItem label="参数类型" prop="paramType"> | ||||
|             <Select :loading="userLoading" v-model="paramForm.paramType"> | ||||
|               <Option :value="1" :key="1">输入项</Option> | ||||
|               <Option :value="2" :key="2">选择项</Option> | ||||
|           <FormItem label="可选值" prop="options"> | ||||
|             <Select | ||||
|               v-model="paramForm.options" | ||||
|               placeholder="输入后回车添加" | ||||
|               multiple | ||||
|               filterable | ||||
|               allow-create | ||||
|               :popper-append-to-body="false" | ||||
|               popper-class="spec-values-popper" | ||||
|               style="width: 100%; text-align: left; margin-right: 10px" | ||||
|             > | ||||
|               <Option | ||||
|                 v-for="item in ops" | ||||
|                 :value="item" | ||||
|                 :key="item" | ||||
|                 :label="item" | ||||
|               > | ||||
|                 {{item}} | ||||
|               </Option> | ||||
|             </Select> | ||||
|           </FormItem> | ||||
|           <FormItem label="可选值" prop="options"> | ||||
|             <i-input v-model="paramForm.options" type="textarea" :rows="3" placeholder="请输入可选值,选择项实用逗号分隔"></i-input> | ||||
|           </FormItem> | ||||
| 
 | ||||
|           <FormItem label="选项" prop="specName3"> | ||||
|             <Checkbox :value="Number" v-model="paramForm.required">必填</Checkbox> | ||||
|             <Checkbox v-model="paramForm.isIndex">可索引</Checkbox> | ||||
|             <Checkbox label=1 v-model="paramForm.required">必填</Checkbox> | ||||
|             <Checkbox label=1 v-model="paramForm.isIndex">可索引</Checkbox> | ||||
|           </FormItem> | ||||
|         </Form> | ||||
| 
 | ||||
|  | @ -127,6 +136,10 @@ export default { | |||
|       paramId: "", | ||||
|       //参数表单 | ||||
|       paramForm: {}, | ||||
|       /** 参数值 **/ | ||||
|       ops:{ | ||||
|         options: [] | ||||
|       }, | ||||
|       paramGroupForm: {}, | ||||
|       /** 添加、编辑参数 规格 */ | ||||
|       formValidate: { | ||||
|  | @ -170,14 +183,15 @@ export default { | |||
|     handleEditParams(group, param) { | ||||
|       this.paramForm = { | ||||
|         paramName: param.paramName, | ||||
|         paramType: param.paramType, | ||||
|         options: param.options, | ||||
|         required: param.required, | ||||
|         isIndex: param.isIndex, | ||||
|         options:  param.options.split(","), | ||||
|         required: param.required==1?true:false, | ||||
|         isIndex: param.isIndex==1?true:false, | ||||
|         groupId: group.groupId, | ||||
|         categoryId: this.categoryId, | ||||
|         id: param.id, | ||||
|       }; | ||||
|       console.warn(this.paramForm.options) | ||||
|       this.ops = this.paramForm.options | ||||
|       this.modalType = 1; | ||||
|       this.modalTitle = "修改参数"; | ||||
|       this.dialogParamsVisible = true; | ||||
|  | @ -194,7 +208,14 @@ export default { | |||
|       this.dialogParamsGroupVisible = true; | ||||
|     }, | ||||
|     handleAddParamsGroup() { | ||||
|       this.paramGroupForm = { | ||||
| 
 | ||||
|       }; | ||||
|       this.ops = { | ||||
| 
 | ||||
|       }; | ||||
|       (this.paramGroupForm.categoryId = this.categoryId), (this.modalType = 0); | ||||
| 
 | ||||
|       this.modalTitle = "添加参数组"; | ||||
|       this.dialogParamsGroupVisible = true; | ||||
|     }, | ||||
|  | @ -212,6 +233,7 @@ export default { | |||
|               } | ||||
|             }); | ||||
|           } else { | ||||
|             console.warn(this.paramGroupForm) | ||||
|             updateParamsGroup(this.paramGroupForm).then((res) => { | ||||
|               this.submitLoading = false; | ||||
|               if (res.success) { | ||||
|  | @ -242,6 +264,7 @@ export default { | |||
|               } | ||||
|             }); | ||||
|           } else { | ||||
|             console.warn(this.paramForm.isIndex) | ||||
|             this.paramForm.isIndex = Number(this.paramForm.isIndex); | ||||
|             this.paramForm.required = Number(this.paramForm.required); | ||||
|             updateGoodsParams(this.paramForm).then((res) => { | ||||
|  |  | |||
|  | @ -63,14 +63,13 @@ | |||
|             </div> | ||||
| 
 | ||||
|             <div class="div-form-default" v-if="afterSaleInfo.serviceStatus=='APPLY'"> | ||||
|               <h3>商家处理意见</h3> | ||||
|               <h3>处理意见</h3> | ||||
|               <dl> | ||||
|                 <dt>商家</dt> | ||||
|                 <dd> | ||||
|                   <div class="div-content"> | ||||
|                     {{afterSaleInfo.storeName}} | ||||
|                   </div> | ||||
| 
 | ||||
|                 </dd> | ||||
|               </dl> | ||||
|               <dl> | ||||
|  | @ -86,9 +85,18 @@ | |||
|                       </Radio> | ||||
|                     </RadioGroup> | ||||
|                   </div> | ||||
| 
 | ||||
|                 </dd> | ||||
|               </dl> | ||||
|               <dl> | ||||
|                   <dt>申请退款金额</dt> | ||||
|                   <dd>{{ afterSaleInfo.applyRefundPrice | unitPrice('¥') }}</dd> | ||||
|                 </dl> | ||||
|                 <dl> | ||||
|                   <dt>实际退款金额</dt> | ||||
|                   <dd> | ||||
|                     <Input v-model="params.actualRefundPrice" style="width:260px"/> | ||||
|                   </dd> | ||||
|                 </dl> | ||||
|               <dl> | ||||
|                 <dt>备注信息</dt> | ||||
|                 <dd> | ||||
|  | @ -169,7 +177,7 @@ | |||
| 
 | ||||
|             </div> | ||||
|             <!--"--> | ||||
|             <div class="div-form-default" v-if="afterSaleInfo.afterSaleAllowOperationVO.refund"> | ||||
|             <div class="div-form-default" v-if="afterSaleInfo.afterSaleAllowOperationVO && afterSaleInfo.afterSaleAllowOperationVO.refund"> | ||||
|               <h3>平台退款</h3> | ||||
| 
 | ||||
|               <dl> | ||||
|  | @ -438,10 +446,10 @@ export default { | |||
|           this.afterSaleInfo = res.result; | ||||
|           this.afterSaleImage = (res.result.afterSaleImage || "").split(","); | ||||
|           //退货地址去掉逗号 | ||||
|           this.afterSaleInfo.mconsigneeAddressPath = this.afterSaleInfo.mconsigneeAddressPath.replaceAll( | ||||
|             ",", | ||||
|             " " | ||||
|           ); | ||||
|           if (this.afterSaleInfo.mconsigneeAddressPath) | ||||
|           this.afterSaleInfo.mconsigneeAddressPath = this.afterSaleInfo.mconsigneeAddressPath.replaceAll(","," "); | ||||
| 
 | ||||
|           this.$set(this.params,'actualRefundPrice', this.afterSaleInfo.applyRefundPrice) | ||||
|         } | ||||
|       }); | ||||
|     }, | ||||
|  | @ -538,6 +546,10 @@ export default { | |||
|         this.$Message.error("请输入备注信息"); | ||||
|         return; | ||||
|       } | ||||
|       if (this.params.actualRefundPrice == "") { | ||||
|         this.$Message.error("请输入退款金额"); | ||||
|         return; | ||||
|       } | ||||
|       API_Order.afterSaleSellerReview(this.sn, this.params).then((res) => { | ||||
|         this.submitLoading = false; | ||||
|         if (res.success) { | ||||
|  |  | |||
|  | @ -22,10 +22,10 @@ export default { | |||
|     buyer: 'https://buyer-api.pickmall.cn', | ||||
|     seller: 'https://store-api.pickmall.cn', | ||||
|     manager: 'https://admin-api.pickmall.cn' | ||||
|     // common: 'http://192.168.0.100:8890',
 | ||||
|     // buyer: 'http://192.168.0.100:8888',
 | ||||
|     // seller: 'http://192.168.0.100:8889',
 | ||||
|     // manager: 'http://192.168.0.100:8887'
 | ||||
|     // common: 'http://192.168.0.103:8890',
 | ||||
|     // buyer: 'http://192.168.0.103:8888',
 | ||||
|     // seller: 'http://192.168.0.103:8889',
 | ||||
|     // manager: 'http://192.168.0.103:8887'
 | ||||
|   }, | ||||
|   api_prod: { | ||||
|     common: 'https://common-api.pickmall.cn', | ||||
|  |  | |||
|  | @ -39,16 +39,22 @@ | |||
|       <Table :loading="loading" border :columns="columns" :data="data" ref="table" sortable="custom" @on-sort-change="changeSort" @on-selection-change="changeSelect"> | ||||
| 
 | ||||
|         <!-- 商品栏目格式化 --> | ||||
|         <template slot="goodsSlot" slot-scope="scope"> | ||||
|         <template slot="goodsSlot" slot-scope="{row}"> | ||||
|           <div style="margin-top: 5px;height: 90px; display: flex;"> | ||||
|             <div style=""> | ||||
|               <img :src="scope.row.original" style="height: 80px;margin-top: 3px;width: 70px"> | ||||
|               <img :src="row.original" style="height: 80px;margin-top: 3px;width: 70px"> | ||||
|             </div> | ||||
| 
 | ||||
|             <div style="margin-left: 13px;"> | ||||
|               <div class="div-zoom"> | ||||
|                 <a>{{scope.row.goodsName}}</a> | ||||
|                 <a @click="linkTo(row.id,row.skuId)">{{row.goodsName}}</a> | ||||
|               </div> | ||||
|               <Poptip trigger="hover" title="扫码在手机中查看" transfer> | ||||
|                 <div slot="content"> | ||||
|                   <vue-qr :text="wapLinkTo(row.id,row.skuId)"  :margin="0" colorDark="#000" colorLight="#fff" :size="150"></vue-qr> | ||||
|                 </div> | ||||
|                 <img src="../../../assets/qrcode.svg" class="hover-pointer" width="20" height="20" alt=""> | ||||
|               </Poptip> | ||||
|             </div> | ||||
|           </div> | ||||
| 
 | ||||
|  | @ -76,10 +82,10 @@ | |||
|       <Form ref="shipTemplateForm" :model="shipTemplateForm" :label-width="120"> | ||||
|         <FormItem class="form-item-view-el" label="运费" prop="freightPayer"> | ||||
|           <RadioGroup type="button" button-style="solid" @on-change="logisticsTemplateUndertakerChange" v-model="shipTemplateForm.freightPayer"> | ||||
|             <Radio label="BUYER"> | ||||
|               <span>买家承担运费</span> | ||||
|             </Radio> | ||||
|             <Radio label="STORE"> | ||||
|               <span>卖家承担运费</span> | ||||
|             </Radio> | ||||
|             <Radio label="BUYER"> | ||||
|               <span>使用物流规则</span> | ||||
|             </Radio> | ||||
|           </RadioGroup> | ||||
|  | @ -120,7 +126,7 @@ export default { | |||
|       id: "", //要操作的id | ||||
|       loading: true, // 表单加载状态 | ||||
|       shipTemplateForm: { | ||||
|         freightPayer: "BUYER", | ||||
|         freightPayer: "STORE", | ||||
|       }, | ||||
|       shipTemplateShow: false, //物流模板是否显示 | ||||
|       shipTemplateModal: false, // 物流模板是否显示 | ||||
|  | @ -515,7 +521,7 @@ export default { | |||
|     }, | ||||
|     //保存运费模板信息 | ||||
|     saveShipTemplate () { | ||||
|       if (this.shipTemplateForm.freightPayer == "BUYER") { | ||||
|       if (this.shipTemplateForm.freightPayer == "STORE") { | ||||
|         { | ||||
|           this.shipTemplateForm.templateId = 0; | ||||
|         } | ||||
|  | @ -559,7 +565,7 @@ export default { | |||
|     //运费承担者变化 | ||||
|     logisticsTemplateUndertakerChange(v) { | ||||
|       //如果是卖家承担运费 需要显示运费模板 | ||||
|       if (v == "STORE") { | ||||
|       if (v == "BUYER") { | ||||
|         API_Store.getShipTemplate().then((res) => { | ||||
|           if (res.success) { | ||||
|             this.logisticsTemplate = res.result; | ||||
|  | @ -567,7 +573,7 @@ export default { | |||
|         }); | ||||
|         this.shipTemplateShow = true; | ||||
|       } | ||||
|       if (v == "BUYER") { | ||||
|       if (v == "STORE") { | ||||
|         this.shipTemplateShow = false; | ||||
|       } | ||||
|     }, | ||||
|  |  | |||
|  | @ -576,13 +576,13 @@ | |||
|           </div> | ||||
|           <div class="form-item-view-bottom"> | ||||
|             <Collapse | ||||
|               active-key="1" | ||||
|               v-model="show" | ||||
|               v-for="paramsgroup in goodsParams" | ||||
|               :title="paramsgroup.groupName" | ||||
|               style="text-align: left" | ||||
|               :key="paramsgroup.groupName" | ||||
|             > | ||||
|               <Panel key="1"> | ||||
|               <Panel key="1" name="1"> | ||||
|                 {{ paramsgroup.groupName }} | ||||
|                 <p slot="content"> | ||||
|                   <FormItem | ||||
|  | @ -592,25 +592,15 @@ | |||
|                     :key="index" | ||||
|                     :label="`${goodsParamsList.paramName}:`" | ||||
|                   > | ||||
|                     <Input | ||||
|                       v-if="goodsParamsList.paramType === 1" | ||||
|                       type="text" | ||||
|                       v-model="goodsParamsList.paramValue" | ||||
|                       placeholder="长度为最多50个字符" | ||||
|                       maxlength="50" | ||||
|                       clearable | ||||
|                       style="width: 260px" | ||||
|                     /> | ||||
|                     <Select | ||||
|                       v-model="goodsParamsList.paramValue" | ||||
|                       v-if="goodsParamsList.paramType === 2" | ||||
|                       placeholder="请选择" | ||||
|                       style="width: 200px" | ||||
|                       clearable | ||||
|                     > | ||||
|                       <Option | ||||
|                         v-for="option in goodsParamsList.optionList" | ||||
|                         :key="option" | ||||
|                         :key="option.paramValue" | ||||
|                         :label="option" | ||||
|                         :value="option" | ||||
|                       ></Option> | ||||
|  | @ -772,6 +762,7 @@ export default { | |||
|     }; | ||||
| 
 | ||||
|     return { | ||||
|       show: '1', | ||||
|       //提交状态 | ||||
|       submitLoading: false, | ||||
|       //上传图片路径 | ||||
|  | @ -1370,18 +1361,14 @@ export default { | |||
|                     (ij) => ij.paramName === elem.paramName | ||||
|                   ) | ||||
|                 ) { | ||||
|                   if (elem.paramType === 2) { | ||||
|                     elem.optionList = elem.options.split(","); | ||||
|                   } | ||||
|                   elem.optionList = elem.options.split(","); | ||||
|                   this.baseInfoForm.goodsParamsList.push(elem); | ||||
|                 } | ||||
|                 if (this.$route.query.id || this.draftId) { | ||||
|                   this.baseInfoForm.goodsParamsList = this.baseInfoForm.goodsParamsList.map( | ||||
|                     (i) => { | ||||
|                       if (i.paramId === elem.id || i.id === elem.id) { | ||||
|                         if (elem.paramType === 2) { | ||||
|                           elem.optionList = elem.options.split(","); | ||||
|                         } | ||||
|                         elem.optionList = elem.options.split(","); | ||||
|                         i = { | ||||
|                           ...i, | ||||
|                           ...elem, | ||||
|  | @ -1839,19 +1826,24 @@ export default { | |||
|             this.$Message.error("请上传商品图片"); | ||||
|             return; | ||||
|           } | ||||
|           // if ( | ||||
|           //   !this.baseInfoForm.storeCategoryPath || | ||||
|           //   !this.baseInfoForm.storeCategoryPath.length | ||||
|           // ) { | ||||
|           //   this.submitLoading = false; | ||||
|           //   this.$Message.error("请选择店内分类"); | ||||
|           //   return; | ||||
|           // } | ||||
|           let flag = false; | ||||
|           let paramValue = ""; | ||||
|           this.baseInfoForm.goodsParamsList.forEach((e)=> { | ||||
|             if(e.required === 1 && e.paramValue === null || e.paramValue === undefined){ | ||||
|               flag = true | ||||
|               paramValue = e.paramName | ||||
|             } | ||||
|           }); | ||||
|           if(flag){ | ||||
|             this.$Message.error(paramValue +" 参数值不能为空"); | ||||
|             this.submitLoading = false; | ||||
|             return; | ||||
|           } | ||||
|           //如果选择的是卖家承担运费 则运费模板重置为0 | ||||
|           if (this.baseInfoForm.freightPayer !== "BUYER") { | ||||
|             this.baseInfoForm.templateId = 0; | ||||
|           } | ||||
|            | ||||
| 
 | ||||
|           this.baseInfoForm.skuList = this.skuTableData.map((sku) => { | ||||
|             delete sku._index; | ||||
|             delete sku._rowKey; | ||||
|  | @ -1865,6 +1857,12 @@ export default { | |||
|               (i) => i.url | ||||
|             ); | ||||
|           } | ||||
|           /** 参数校验 **/ | ||||
|          /* Object.keys(this.baseInfoForm.goodsParamsList).forEach((item) => { | ||||
|             console.warn(item.paramName) | ||||
|           });*/ | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|           if (this.goodsId) { | ||||
|             API_GOODS.editGoods(this.goodsId, this.baseInfoForm).then((res) => { | ||||
|  |  | |||
|  | @ -1,7 +1,5 @@ | |||
| <template> | ||||
|   <div class="search"> | ||||
|     <Row> | ||||
|       <Col> | ||||
|         <Card> | ||||
|           <Row v-show="openSearch" @keydown.enter.native="handleSearch"> | ||||
|             <Form | ||||
|  | @ -97,8 +95,6 @@ | |||
|             ></Page> | ||||
|           </Row> | ||||
|         </Card> | ||||
|       </Col> | ||||
|     </Row> | ||||
|     <Modal | ||||
|       title="更新库存" | ||||
|       v-model="updateStockModalVisible" | ||||
|  |  | |||
|  | @ -56,7 +56,7 @@ | |||
|           <h4>待办事项</h4> | ||||
| 
 | ||||
|           <div class="detail-list"> | ||||
|             <div class="detail-item" @click="navigateTo('order')"> | ||||
|             <div class="detail-item" @click="navigateTo('orderList')"> | ||||
|               <div> | ||||
|                 <span>{{homeData.unPaidOrder || 0}}</span> | ||||
|                 <div>待付款</div> | ||||
|  | @ -66,7 +66,7 @@ | |||
|               </div> | ||||
|             </div> | ||||
| 
 | ||||
|             <div class="detail-item" @click="navigateTo('order')"> | ||||
|             <div class="detail-item" @click="navigateTo('orderList')"> | ||||
|               <div> | ||||
|                 <span>{{homeData.unDeliveredOrder || 0}}</span> | ||||
|                 <div>待发货</div> | ||||
|  | @ -125,7 +125,7 @@ | |||
|                 <span>{{homeData.seckillNum || 0}}</span> | ||||
|                 <div>待参加活动</div> | ||||
|               </div> | ||||
|               <div> | ||||
|               <div @click="navigateTo('accountStatementBill')"> | ||||
|                 <span>{{homeData.waitPayBill || 0}}</span> | ||||
|                 <div>待对账</div> | ||||
|               </div> | ||||
|  | @ -161,7 +161,7 @@ | |||
|           </div> | ||||
| 
 | ||||
|         </div> | ||||
|         <div class="count-item"> | ||||
|         <div class="count-item" @click="navigateTo('orderStatistics')"> | ||||
|           <div> | ||||
|             <Icon class="icon" size="31" type="ios-card" /> | ||||
|           </div> | ||||
|  | @ -171,7 +171,7 @@ | |||
|           </div> | ||||
| 
 | ||||
|         </div> | ||||
|         <div class="count-item" @click="navigateTo('order')"> | ||||
|         <div class="count-item" @click="navigateTo('orderList')"> | ||||
|           <div> | ||||
| 
 | ||||
|             <Icon class="icon" size="31" type="md-list" /> | ||||
|  | @ -182,7 +182,7 @@ | |||
|           </div> | ||||
| 
 | ||||
|         </div> | ||||
|         <div class="count-item"> | ||||
|         <div class="count-item" @click="navigateTo('trafficStatistics')"> | ||||
|           <div> | ||||
|             <Icon class="icon" size="31" type="md-person" /> | ||||
|           </div> | ||||
|  |  | |||
|  | @ -102,6 +102,7 @@ | |||
|             v-model="image" | ||||
|             :disable="true" | ||||
|             :remove="false" | ||||
|             :isView="true" | ||||
|           ></upload-pic-thumb> | ||||
|         </FormItem> | ||||
|         <FormItem label="回复内容" prop="reply"> | ||||
|  | @ -370,8 +371,8 @@ export default { | |||
|           this.content = res.result.content | ||||
|           this.form.reply = res.result.reply | ||||
|           this.replyStatus = res.result.replyStatus | ||||
|           if (res.result.image) { | ||||
|             this.image = (res.result.image || "").split(","); | ||||
|           if (res.result.images) { | ||||
|             this.image = (res.result.images || "").split(","); | ||||
|           } | ||||
|           if (res.result.replyImage) { | ||||
|             this.form.replyImage = (res.result.replyImage || "").split(","); | ||||
|  |  | |||
|  | @ -37,6 +37,7 @@ | |||
|       :action="uploadFileUrl" | ||||
|       :headers="accessToken" | ||||
|       style="display: inline-block;width:58px;" | ||||
|       v-if="!isView" | ||||
|     > | ||||
|       <div style="width: 58px;height:58px;line-height: 58px;"> | ||||
|         <Icon type="md-camera" size="20"></Icon> | ||||
|  | @ -87,6 +88,10 @@ export default { | |||
|     limit: { | ||||
|       type: Number, | ||||
|       default: 10 | ||||
|     }, | ||||
|     isView: { | ||||
|       type: Boolean, | ||||
|       default: false | ||||
|     } | ||||
|   }, | ||||
|   data() { | ||||
|  |  | |||
|  | @ -69,7 +69,7 @@ | |||
|           <template slot-scope="{ row }" slot="action"> | ||||
|             <Button | ||||
|               v-if="row.promotionStatus === 'NEW' || row.promotionStatus === 'CLOSE'" | ||||
|               type="primary" | ||||
|               type="info" | ||||
|               size="small" | ||||
|               style="margin-right: 10px" | ||||
|               @click="edit(row)" | ||||
|  | @ -259,7 +259,7 @@ export default { | |||
|           slot: "action", | ||||
|           align: "center", | ||||
|           fixed: "right", | ||||
|           width: 80, | ||||
|           minWidth: 80, | ||||
|         }, | ||||
|       ], | ||||
|       data: [], // 表单数据 | ||||
|  |  | |||
|  | @ -511,7 +511,7 @@ export default { | |||
|         this.$store.state.app.storeOpenedList | ||||
|       ); | ||||
|       this.$router.push({ | ||||
|         path: "promotion/coupon", | ||||
|         name: "coupon", | ||||
|       }); | ||||
|     }, | ||||
|     changeSelect(e) { | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue