Browse Source

新增移动端库存上架编辑

shenjj 7 years ago
parent
commit
ba97da4a22
2 changed files with 196 additions and 166 deletions
  1. 146 154
      components/mobile/center/upoff-material.vue
  2. 50 12
      pages/mobile/center/vendor/material.vue

+ 146 - 154
components/mobile/center/upoff-material.vue

@@ -2,7 +2,7 @@
     <div class="upoff-material-wrapper" v-if="showUpoff">
     <div class="upoff-material-wrapper" v-if="showUpoff">
       <div class="mobile-nav">
       <div class="mobile-nav">
         <div class="mobile-header mobile-center-header">
         <div class="mobile-header mobile-center-header">
-          <a @click="showUpoff = false"><i class="iconfont icon-fanhui"></i></a>
+          <a @click="hide"><i class="iconfont icon-fanhui"></i></a>
           <p>编辑上下架</p>
           <p>编辑上下架</p>
           <p class="en-name">
           <p class="en-name">
             <img :src="`/images/mobile/center/${user.data.enterprise && user.data.enterprise.uu ? 'en' : 'self'}.png`" alt="">{{currentEnName}}
             <img :src="`/images/mobile/center/${user.data.enterprise && user.data.enterprise.uu ? 'en' : 'self'}.png`" alt="">{{currentEnName}}
@@ -10,126 +10,133 @@
         </div>
         </div>
       </div>
       </div>
       <div class="upoff-materiel-wrapper" @click="clearInfo()">
       <div class="upoff-materiel-wrapper" @click="clearInfo()">
-        <div class="opoff-title clearfix">
-          <!-- :class="item.standard ? 'standed' : 'istanded'"-->
-          <div class="icon standed"  :class="chooseItem.standard ? 'standed' : 'istanded'"></div>
-          <div class="opoff-title-text pull-left">{{chooseItem.pcmpcode || '-'}}</div>
-        </div>
-        <div class="off-content">
-          <div class="clearfix">
-            <span class="name">品牌:</span>
-            <span class="con">{{chooseItem.pbranden || chooseItem.pbrand || '-'}}</span>
-          </div>
-          <div class="clearfix">
-            <span class="name">物料名称:</span>
-            <span class="con">{{chooseItem.kind || chooseItem.kinden || '-'}}</span>
-          </div>
-          <div class="clearfix">
-            <span class="name">规格:</span>
-            <span class="con">{{chooseItem.spec || '-'}}</span>
-          </div>
-          <div class="clearfix">
-            <span class="name">库存(PCS):</span>
-            <span class="con">{{chooseItem.erpReserve || '-'}}</span>
-          </div>
-          <div class="clearfix">
-            <span class="name">平均成本:</span>
-            <span class="con">{{chooseItem.price || '-'}}</span>
-          </div>
-        </div>
-        <div class="off-info clearfix">
-          <div class="minBuyqty pull-left">
-            <span>最小起订量:</span>
-            <input type="number" maxlength="10" @blur="minBuyqtyBlur()" v-model="chooseItem.goods.minBuyQty" placeholder="请输入最小起订量" />
-          </div>
-          <div class="pull-left" style="margin-left:0.2rem">
-            <span>可拆卖:</span>
-            <div class="progress-wrapper" :class="{active: chooseItem.goods.breakUp}" @click="changeBreakUp()">
-              <div class="progress-btn"></div>
-            </div>
-          </div>
-          <div class="pull-left">
-            <span>上架:</span>
-            <div class="progress-wrapper" :class="{active: chooseItem.goods.autoPublish}" @click="changeautoPublish()">
-              <div class="progress-btn"></div>
-            </div>
-          </div>
-        </div>
-        <div class="off-info clearfix">
-          <div class="pull-left">
-            <span class="name">销售方式:</span>
-            <div class="selectInput" @click.stop="showdropmenu()">
-              <span v-if="chooseItem.storeInfoOms">{{chooseItem.storeInfoOms}}</span>
-              <span v-else>{{chooseItem.storeid === '33069557578d44e69bd91ad12d28a8d4' ? '寄售' : '自营'}}</span>
-              <img src="/images/mobile/product/drop_icon.png" v-if="!ShowShopshelfOff"/>
-              <ul :class="{active : showDrop }" v-if="!ShowShopshelfOff">
-                <li v-for="item in storeObj" @click.stop="chooseStore(item)">{{item}}</li>
-              </ul>
-            </div>
-          </div>
-          <div class="pull-left" style="margin-left: 0.2rem">
-            <span class="name">交期:</span>
-            <input type="tel" placeholder="天数" v-model="chooseItem.goods.b2cMinDelivery" class="input startInput" maxlength="3" @blur="minDeliveryBlur(chooseItem.goods.b2cMinDelivery)" />
-            -
-            <input type="tel" placeholder="天数" v-model="chooseItem.goods.b2cMaxDelivery" class="input endInput" maxlength="3" @blur="minDeliveryBlur(chooseItem.goods.b2cMaxDelivery)"/>
-          </div>
-        </div>
-        <div class="off-info clearfix">
-          <div class="pscList-top clearfix">
-            <div class="pull-left">梯度/pcs</div>
-            <div class="pull-right">单价</div>
-          </div>
-          <ul class="prices">
-            <li v-for="(item, index) in chooseItem.goods.prices" v-bind:key="index">
-              <div class="clearfix">
+        <div ref="scroll" style="height: 100%;overflow-y:scroll">
+          <div>
+            <div style="background: #fff;border: 1px solid #dcdcdc;padding:0 0.2rem 0.5rem">
+              <div class="opoff-title clearfix">
+                <!-- :class="item.standard ? 'standed' : 'istanded'"-->
+                <div class="icon standed"  :class="chooseItem.standard ? 'standed' : 'istanded'"></div>
+                <div class="opoff-title-text pull-left">{{chooseItem.pcmpcode || '-'}}</div>
+              </div>
+              <div class="off-content">
+                <div class="clearfix">
+                  <span class="name">品牌:</span>
+                  <span class="con">{{chooseItem.pbranden || chooseItem.pbrand || '-'}}</span>
+                </div>
+                <div class="clearfix">
+                  <span class="name">物料名称:</span>
+                  <span class="con">{{chooseItem.kind || chooseItem.kinden || '-'}}</span>
+                </div>
+                <div class="clearfix">
+                  <span class="name">规格:</span>
+                  <span class="con">{{chooseItem.spec || '-'}}</span>
+                </div>
+                <div class="clearfix">
+                  <span class="name">库存(PCS):</span>
+                  <span class="con">{{chooseItem.erpReserve || '-'}}</span>
+                </div>
+                <div class="clearfix">
+                  <span class="name">平均成本:</span>
+                  <span class="con">{{chooseItem.price || '-'}}</span>
+                </div>
+              </div>
+              <div class="off-info clearfix">
+                <div class="minBuyqty pull-left">
+                  <span>最小起订量:</span>
+                  <input type="number" maxlength="10" @blur="minBuyQtyBlur()" v-model="chooseItem.goods.minBuyQty" placeholder="请输入最小起订量" />
+                </div>
+                <div class="pull-left" style="margin-left:0.2rem">
+                  <span>可拆卖:</span>
+                  <div class="progress-wrapper" :class="{active: chooseItem.goods.breakUp}" @click="changeBreakUp()">
+                    <div class="progress-btn"></div>
+                  </div>
+                </div>
+                <div class="pull-left">
+                  <span>上架:</span>
+                  <div class="progress-wrapper" :class="{active: chooseItem.goods.autoPublish}" @click="changeautoPublish()">
+                    <div class="progress-btn"></div>
+                  </div>
+                </div>
+              </div>
+              <div class="off-info clearfix">
                 <div class="pull-left">
                 <div class="pull-left">
-                  <input v-if="index > 0" oninput="if(value.length>5)value=value.slice(0,9)"
-                         type="tel" placeholder="数量" class="otherNumber"
-                         :class="{firstNumber: index === 0}"
-                         v-model.lazy.trim="item.start"
-                         :disabled="index === 0" :readonly="index === 0"
-                         @blur="startpriceBlur(item, index)" maxlength="9"
-                  />
-                  <input v-else oninput="if(value.length>5)value=value.slice(0,9)"
-                         type="tel" placeholder="数量" class="otherNumber"
-                         :class="{firstNumber: index === 0}"
-                         v-model.lazy.trim="chooseItem.goods.minBuyQty"
-                         :disabled="index === 0" :readonly="index === 0"
-                         @blur="startpriceBlur(item, index)" maxlength="9"
-                  />
-                  <!--<label v-if="index !== chooseItem.goods.prices.length - 1">-</label>-->
-                  <label v-if="index !== chooseItem.goods.prices.length - 1">以上</label>
-                  <label v-if="index === chooseItem.goods.prices.length - 1">以上</label>
-                  <!--<input oninput="if(value.length>5)value=value.slice(0,9)"-->
-                         <!--type="tel" placeholder="数量" class="otherNumber"-->
-                         <!--v-model.lazy.trim="item.end"-->
-                         <!--v-if="index !== chooseItem.goods.prices.length - 1"-->
-                         <!--@blur="endpriceBlur(item, index)"-->
-                         <!--maxlength="9"/>-->
+                  <span class="name">销售方式:</span>
+                  <div class="selectInput" @click.stop="showdropmenu()">
+                    <span v-if="chooseItem.storeInfoOms">{{chooseItem.storeInfoOms}}</span>
+                    <span v-else>{{chooseItem.goods.storeid === '33069557578d44e69bd91ad12d28a8d4' ? '寄售' : '自营'}}</span>
+                    <img src="/images/mobile/product/drop_icon.png" v-if="!ShowShopshelfOff"/>
+                    <ul :class="{active : showDrop }" v-if="!ShowShopshelfOff">
+                      <li v-for="item in storeObj" @click.stop="chooseStore(item)">{{item}}</li>
+                    </ul>
+                  </div>
                 </div>
                 </div>
-                <div class="pull-right">
-                  <input v-show="chooseItem.currencyName === 'RMB'"
-                         class="priceM" type="text"
-                         placeholder="单价(¥)"
-                         v-model.lazy="item.rMBPrice"
-                         @blur="rMBPriceBlur(item)"/>
-                  <input v-show="chooseItem.currencyName !== 'RMB'"
-                         class="priceM" type="text"
-                         placeholder="单价($)"
-                         v-model.lazy="item.rMBPrice"
-                         @blur="rMBPriceBlur(item)"/>
-                  <span @click="miuPrice(index)"><img src="/images/mobile/product/mui_icon.png"/></span>
-                  <span @click="addPrice()"><img src="/images/mobile/product/add_icon.png"/></span>
+                <div class="pull-left" style="margin-left: 0.2rem">
+                  <span class="name">交期:</span>
+                  <input type="tel" placeholder="天数" v-model="chooseItem.goods.minDelivery" class="input startInput" maxlength="3" @blur="minDeliveryBlur(chooseItem.goods.minDelivery)" />
+                  -
+                  <input type="tel" placeholder="天数" v-model="chooseItem.goods.maxDelivery" class="input endInput" maxlength="3" @blur="minDeliveryBlur(chooseItem.goods.maxDelivery)"/>
                 </div>
                 </div>
               </div>
               </div>
-            </li>
-          </ul>
+              <div class="off-info clearfix">
+              <div class="pscList-top clearfix">
+                <div class="pull-left">梯度/pcs</div>
+                <div class="pull-right">单价</div>
+              </div>
+              <ul class="prices">
+                <li v-for="(item, index) in chooseItem.goods.prices" v-bind:key="index">
+                  <div class="clearfix">
+                    <div class="pull-left">
+                      <input v-if="index > 0" oninput="if(value.length>5)value=value.slice(0,9)"
+                             type="tel" placeholder="数量" class="otherNumber"
+                             :class="{firstNumber: index === 0}"
+                             v-model.lazy.trim="item.start"
+                             :disabled="index === 0" :readonly="index === 0"
+                             @blur="startpriceBlur(item, index)" maxlength="9"
+                      />
+                      <input v-else oninput="if(value.length>5)value=value.slice(0,9)"
+                             type="tel" placeholder="数量" class="otherNumber"
+                             :class="{firstNumber: index === 0}"
+                             v-model.lazy.trim="chooseItem.goods.minBuyQty"
+                             :disabled="index === 0" :readonly="index === 0"
+                             @blur="startpriceBlur(item, index)" maxlength="9"
+                      />
+                      <!--<label v-if="index !== chooseItem.goods.prices.length - 1">-</label>-->
+                      <label v-if="index !== chooseItem.goods.prices.length - 1">以上</label>
+                      <label v-if="index === chooseItem.goods.prices.length - 1">以上</label>
+                      <!--<input oninput="if(value.length>5)value=value.slice(0,9)"-->
+                             <!--type="tel" placeholder="数量" class="otherNumber"-->
+                             <!--v-model.lazy.trim="item.end"-->
+                             <!--v-if="index !== chooseItem.goods.prices.length - 1"-->
+                             <!--@blur="endpriceBlur(item, index)"-->
+                             <!--maxlength="9"/>-->
+                    </div>
+                    <div class="pull-right">
+                      <input v-show="chooseItem.currencyName === 'RMB'"
+                             class="priceM" type="text"
+                             placeholder="单价(¥)"
+                             v-model.lazy="item.rMBPrice"
+                             @blur="rMBPriceBlur(item)"/>
+                      <input v-show="chooseItem.currencyName !== 'RMB'"
+                             class="priceM" type="text"
+                             placeholder="单价($)"
+                             v-model.lazy="item.rMBPrice"
+                             @blur="rMBPriceBlur(item)"/>
+                      <span @click="miuPrice(index)" class="clearfix"><img class="pull-left" src="/images/mobile/product/mui_icon.png"/></span>
+                      <span @click="addPrice()" class="clearfix"><img  class="pull-left"src="/images/mobile/product/add_icon.png"/></span>
+                    </div>
+                  </div>
+                </li>
+              </ul>
+            </div>
+            </div>
+            <div class="update-materiel-wrapper-controll clearfix">
+              <div class="pull-left" @click.stop="saveMateriel()">保存</div>
+              <div class="pull-right" @click.stop="hide('cancel')">取消</div>
+            </div>
+          </div>
         </div>
         </div>
       </div>
       </div>
-      <div class="update-materiel-wrapper-controll clearfix">
-        <div class="pull-left" @click.stop="saveMateriel()">保存</div>
-        <div class="pull-right" @click.stop="hide()">取消</div>
-      </div>
+
       <remind-box :title="collectResult" :timeoutCount="timeoutCount"></remind-box>
       <remind-box :title="collectResult" :timeoutCount="timeoutCount"></remind-box>
     </div>
     </div>
 </template>
 </template>
@@ -172,36 +179,31 @@
             this.timeoutCount++
             this.timeoutCount++
             this.collectResult = '最小起订量不能为空'
             this.collectResult = '最小起订量不能为空'
             return false
             return false
-          } else if (!this.chooseItem.goods.b2cMinDelivery && !toString(this.chooseItem.goods.b2cMinDelivery).trim()) {
+          } else if (!this.chooseItem.goods.minDelivery && !toString(this.chooseItem.goods.minDelivery).trim()) {
             this.timeoutCount++
             this.timeoutCount++
             this.collectResult = '请填写最小交期时间'
             this.collectResult = '请填写最小交期时间'
             return false
             return false
-          } else if (!this.chooseItem.goods.b2cMaxDelivery && !toString(this.chooseItem.goods.b2cMaxDelivery).trim()) {
+          } else if (!this.chooseItem.goods.maxDelivery && !toString(this.chooseItem.goods.maxDelivery).trim()) {
             this.timeoutCount++
             this.timeoutCount++
             this.collectResult = '请填写最大交期时间'
             this.collectResult = '请填写最大交期时间'
             return false
             return false
-          } else if (!this.chooseItem.goods.b2cMinDelivery || !this.chooseItem.goods.b2cMaxDelivery) {
+          } else if (!this.chooseItem.goods.minDelivery || !this.chooseItem.goods.maxDelivery) {
             this.timeoutCount++
             this.timeoutCount++
             this.collectResult = '交期不能为空'
             this.collectResult = '交期不能为空'
             return false
             return false
-          } else if (!/^\d{1,3}$/.test(this.chooseItem.goods.b2cMinDelivery) || !/^\d{1,3}$/.test(this.chooseItem.goods.b2cMaxDelivery)) {
+          } else if (!/^\d{1,3}$/.test(this.chooseItem.goods.minDelivery) || !/^\d{1,3}$/.test(this.chooseItem.goods.maxDelivery)) {
             this.timeoutCount++
             this.timeoutCount++
             this.collectResult = '交期只能输入数字'
             this.collectResult = '交期只能输入数字'
             return false
             return false
           } else {
           } else {
             let isHas = false
             let isHas = false
             for (let i = 0; i < this.chooseItem.goods.prices.length; i++) {
             for (let i = 0; i < this.chooseItem.goods.prices.length; i++) {
-              if (!this.chooseItem.goods.prices[i].start || (this.chooseItem.goods.prices[i].end === '' && i !== this.chooseItem.goods.prices.length - 1)) {
+              if (!this.chooseItem.goods.prices[i].start) {
                 this.timeoutCount++
                 this.timeoutCount++
                 this.collectResult = '分段数量必须填写'
                 this.collectResult = '分段数量必须填写'
                 isHas = true
                 isHas = true
                 break
                 break
-              } else if (i !== this.chooseItem.goods.prices.length - 1 && Math.abs(this.chooseItem.goods.prices[i].start) > Math.abs(this.chooseItem.goods.prices[i].end)) {
-                this.timeoutCount++
-                this.collectResult = '存在分段的起始值大于分段的结束值'
-                isHas = true
-                break
-              } else if (Math.abs(this.chooseItem.goods.prices[i].rMBPrice) <= 0) {
+              }  else if (Math.abs(this.chooseItem.goods.prices[i].rMBPrice) <= 0) {
                 this.timeoutCount++
                 this.timeoutCount++
                 this.collectResult = '单价必须是大于0的数字'
                 this.collectResult = '单价必须是大于0的数字'
                 isHas = true
                 isHas = true
@@ -224,13 +226,13 @@
           }
           }
           this.chooseItem.goods.selfSale = this.storeInfoStore.uuid ? 1 : 2
           this.chooseItem.goods.selfSale = this.storeInfoStore.uuid ? 1 : 2
           if (!this.chooseItem.storeInfoOms) {
           if (!this.chooseItem.storeInfoOms) {
-            this.chooseItem.storeInfoOms = this.chooseItem.storeid === '33069557578d44e69bd91ad12d28a8d4' ? '寄售' : '自营'
+            this.chooseItem.storeInfoOms = this.chooseItem.goods.storeid === '33069557578d44e69bd91ad12d28a8d4' ? '寄售' : '自营'
           }
           }
           if (this.storeInfoStore.uuid) {
           if (this.storeInfoStore.uuid) {
             if (this.chooseItem.storeInfoOms === '寄售') {
             if (this.chooseItem.storeInfoOms === '寄售') {
-              this.chooseItem.selfSale = 2
+              this.chooseItem.goods.selfSale = 2
             } else if (this.chooseItem.storeInfoOms === '自营') {
             } else if (this.chooseItem.storeInfoOms === '自营') {
-              this.chooseItem.selfSale = 1
+              this.chooseItem.goods.selfSale = 1
             }
             }
           }
           }
           this.chooseItem.goods.prices[this.chooseItem.goods.prices.length - 1].end = '9999999999'
           this.chooseItem.goods.prices[this.chooseItem.goods.prices.length - 1].end = '9999999999'
@@ -273,7 +275,7 @@
               }
               }
             }
             }
           }
           }
-          this.chooseItem.goods.prices[0].start = this.chooseItem.minBuyQty
+          this.chooseItem.goods.prices[0].start = this.chooseItem.goods.minBuyQty
         },
         },
         changeautoPublish() {
         changeautoPublish() {
           this.chooseItem.goods.autoPublish = !this.chooseItem.goods.autoPublish
           this.chooseItem.goods.autoPublish = !this.chooseItem.goods.autoPublish
@@ -287,49 +289,39 @@
           this.showdropmenu()
           this.showdropmenu()
         },
         },
         minDeliveryBlur(str) {
         minDeliveryBlur(str) {
-          if (Math.abs(this.chooseItem.goods.b2cMinDelivery) === 0) {
+          if (Math.abs(this.chooseItem.goods.minDelivery) === 0) {
             this.timeoutCount++
             this.timeoutCount++
             this.collectResult = `交期天数不能为0`
             this.collectResult = `交期天数不能为0`
-            this.chooseItem.goods.b2cMinDelivery = ''
+            this.chooseItem.goods.minDelivery = ''
             return false
             return false
-          } else if (Math.abs(this.chooseItem.goods.b2cMinDelivery) === 0) {
+          } else if (Math.abs(this.chooseItem.goods.minDelivery) === 0) {
             this.timeoutCount++
             this.timeoutCount++
             this.collectResult = `交期天数不能为0`
             this.collectResult = `交期天数不能为0`
-            this.chooseItem.goods.b2cMinDelivery = ''
+            this.chooseItem.goods.minDelivery = ''
             return false
             return false
           }
           }
-          if (Math.abs(this.chooseItem.goods.b2cMinDelivery) > Math.abs(this.chooseItem.goods.b2cMinDelivery)) {
+          if (Math.abs(this.chooseItem.goods.minDelivery) > Math.abs(this.chooseItem.goods.minDelivery)) {
             this.timeoutCount++
             this.timeoutCount++
             this.collectResult = `最短交期应小于等于最长交期`
             this.collectResult = `最短交期应小于等于最长交期`
-            this.chooseItem.goods.b2cMinDelivery = ''
+            this.chooseItem.goods.minDelivery = ''
           }
           }
         },
         },
         show() {
         show() {
           this.showUpoff = true
           this.showUpoff = true
         },
         },
-        hide() {
+        hide(type) {
           this.showUpoff = false
           this.showUpoff = false
+          this.$emit('upoffMaterial', type)
         },
         },
         // 开始价格阶段失去焦点
         // 开始价格阶段失去焦点
         startpriceBlur(item, index) {
         startpriceBlur(item, index) {
           if (index > 0) {
           if (index > 0) {
             if (item.start === '' || toString(item.start).trim() === '') {
             if (item.start === '' || toString(item.start).trim() === '') {
               return false
               return false
-            } else if (Math.abs(item.start) <= Math.abs(this.chooseItem.goods.prices[index - 1].start)) {
+            } else if (this.chooseItem.goods.prices[index].start <= this.chooseItem.goods.prices[index - 1].start){
               this.timeoutCount++
               this.timeoutCount++
               this.collectResult = '输入值会导致梯度重叠,请重新修改'
               this.collectResult = '输入值会导致梯度重叠,请重新修改'
               item.start = ''
               item.start = ''
-              return false
-            }
-            if (index === 2) {
-              this.chooseItem.goods.prices[index - 1].end = item.start - 1
-              return false
-            }
-            if (item.end && toString(item.end).trim() !== '' && Math.abs(item.start) > Math.abs(item.end)) {
-              this.timeoutCount++
-              this.collectResult = `输入值必须小于${item.end}`
-              item.start = ''
-              return false
             }
             }
             this.chooseItem.goods.prices[index - 1].end = item.start - 1
             this.chooseItem.goods.prices[index - 1].end = item.start - 1
           }
           }
@@ -395,13 +387,13 @@
               this.chooseItem.goods.prices.splice(2, 1)
               this.chooseItem.goods.prices.splice(2, 1)
             } else {
             } else {
               index++
               index++
-              if (this.chooseItem.prices.length === 1) return
+              if (this.chooseItem.goods.prices.length === 1) return
               this.chooseItem.goods.prices[0].rMBPrice = this.chooseItem.goods.prices[1].rMBPrice
               this.chooseItem.goods.prices[0].rMBPrice = this.chooseItem.goods.prices[1].rMBPrice
               this.chooseItem.goods.prices[0].end = '9999999999'
               this.chooseItem.goods.prices[0].end = '9999999999'
               this.chooseItem.goods.prices.splice(index, 1)
               this.chooseItem.goods.prices.splice(index, 1)
             }
             }
           } else if (index === 1) {
           } else if (index === 1) {
-            if (this.chooseItem.prices.length === 3) {
+            if (this.chooseItem.prices.goods.length === 3) {
               this.chooseItem.goods.prices[1].rMBPrice = this.chooseItem.goods.prices[2].rMBPrice
               this.chooseItem.goods.prices[1].rMBPrice = this.chooseItem.goods.prices[2].rMBPrice
               this.chooseItem.goods.prices[1].end = '9999999999'
               this.chooseItem.goods.prices[1].end = '9999999999'
               this.chooseItem.goods.prices.splice(2, 1)
               this.chooseItem.goods.prices.splice(2, 1)
@@ -504,8 +496,8 @@
       top: 1.46rem;
       top: 1.46rem;
       left: 0.2rem;
       left: 0.2rem;
       right: 0.2rem;
       right: 0.2rem;
-      padding: 0 0.25rem;
-      background: #fff;
+      /*padding: 0 0.25rem;*/
+      /*background: #fff;*/
       .opoff-title {
       .opoff-title {
         border-bottom: 1px solid #dcdcdc;
         border-bottom: 1px solid #dcdcdc;
         padding: 0.25rem 0;
         padding: 0.25rem 0;
@@ -553,7 +545,7 @@
       }
       }
       .off-info {
       .off-info {
         margin-top: 0.3rem;
         margin-top: 0.3rem;
-        @include lineHeight(0.5rem);
+        line-height: 0.5rem;
         span {
         span {
           color: #666;
           color: #666;
           font-size: 0.28rem;
           font-size: 0.28rem;

+ 50 - 12
pages/mobile/center/vendor/material.vue

@@ -20,7 +20,8 @@
               {{item.pcmpcode}}
               {{item.pcmpcode}}
             </div>
             </div>
             <div class="text" style="width: 1rem;color: #666;font-size: 0.28rem">
             <div class="text" style="width: 1rem;color: #666;font-size: 0.28rem">
-              {{item.goods && item.goods.selfSale === 1 ? '自营' : '寄售' || '-'}}
+              {{item.goods && item.goods.storeid === '33069557578d44e69bd91ad12d28a8d4' ? '寄售' : '自营' || '寄售'}}
+              <!--{{item.goods && item.goods.selfSale === 1 ? '自营' : '寄售' || '-'}}-->
             </div>
             </div>
             <div class="text" style="width: 1rem;color: #666;font-size: 0.28rem">
             <div class="text" style="width: 1rem;color: #666;font-size: 0.28rem">
               {{item.goods && item.goods.autoPublish ? '已上架' : '已下架' }}
               {{item.goods && item.goods.autoPublish ? '已上架' : '已下架' }}
@@ -69,7 +70,7 @@
             <div class="list">
             <div class="list">
               <div class="fl">
               <div class="fl">
                 <div class="name">最小包装数:</div>
                 <div class="name">最小包装数:</div>
-                <div class="text">{{item.minPackQty || '暂无包装信息'}}</div>
+                <div class="text">{{item.minPackQty || '-'}}</div>
               </div>
               </div>
               <div class="fr">
               <div class="fr">
                 <div class="name">成本单价:</div>
                 <div class="name">成本单价:</div>
@@ -115,7 +116,7 @@
           </div>
           </div>
           <div class="clearfix">
           <div class="clearfix">
             <div class="pull-right add" @click="addProtoperson(item)" :class="{noadd: item.addProductPerson}">加入个人产品</div>
             <div class="pull-right add" @click="addProtoperson(item)" :class="{noadd: item.addProductPerson}">加入个人产品</div>
-            <div class="pull-right look" @click="toAddpro(item)">编辑上架</div>
+            <div class="pull-right look" @click="toAddpro(item, index)">编辑上架</div>
             <div class="pull-right look" @click="updateMateriel(item)">编辑物料</div>
             <div class="pull-right look" @click="updateMateriel(item)">编辑物料</div>
           </div>
           </div>
         </div>
         </div>
@@ -254,9 +255,9 @@
               </div>
               </div>
             </div>
             </div>
             <div class="update-materiel-wrapper-controll clearfix">
             <div class="update-materiel-wrapper-controll clearfix">
-            <div class="pull-left" @click.stop="saveMateriel()">保存</div>
-            <div class="pull-right" @click.stop="saveMateriel('a')">取消</div>
-          </div>
+              <div class="pull-left" @click.stop="saveMateriel()">保存</div>
+              <div class="pull-right" @click.stop="saveMateriel('a')">取消</div>
+            </div>
             <div style="height: 1rem;position:relative"></div>
             <div style="height: 1rem;position:relative"></div>
           </div>
           </div>
         </div>
         </div>
@@ -265,7 +266,7 @@
 
 
     <!-- 物料上下架 -->
     <!-- 物料上下架 -->
     <div>
     <div>
-      <upoff-material ref="upoffMaterial" :chooseItem="MaterielItem">
+      <upoff-material ref="upoffMaterial" :chooseItem="MaterielItem" @upoffMaterial="upoffMaterial">
 
 
       </upoff-material>
       </upoff-material>
     </div>
     </div>
@@ -280,6 +281,11 @@
     layout: 'mobile',
     layout: 'mobile',
     middleware: 'authenticated',
     middleware: 'authenticated',
     name: 'mobileProduct',
     name: 'mobileProduct',
+    fetch ({store}) {
+      return Promise.all([
+        store.dispatch('loadStoreStatus', {op: 'check'})
+      ])
+    },
     data() {
     data() {
       return {
       return {
         activeType: '',
         activeType: '',
@@ -391,10 +397,23 @@
             this.timeoutCount++
             this.timeoutCount++
           })
           })
       },
       },
-      toAddpro(item) {
-        this.MaterielItem = item
+      // 编辑上架
+      toAddpro(item, index) {
         this.$item = this.baseUtils.deepCopy(item)
         this.$item = this.baseUtils.deepCopy(item)
-        console.log(this.MaterielItem)
+        this.$index = index
+        this.MaterielItem = item
+        if (!this.MaterielItem.goods) {
+          this.$set(this.MaterielItem, 'goods', {
+            prices: [{end: '',
+              rMBNTPrice: '',
+              rMBPrice: '',
+              start: ''}],
+            selfSale: 1,
+            breakUp: false,
+            autoPublish: false,
+            productid: item.id
+          })
+        }
         this.$refs.upoffMaterial.show()
         this.$refs.upoffMaterial.show()
       },
       },
       update2 (e) {
       update2 (e) {
@@ -465,6 +484,9 @@
         } else if (this.MaterielItem.kind === '') {
         } else if (this.MaterielItem.kind === '') {
           this.setRemindText('物料名称不能为空')
           this.setRemindText('物料名称不能为空')
           return
           return
+        } else if (this.MaterielItem.minPackQty === '') {
+          this.setRemindText('最小包装数不能为空')
+          return
         } else if (this.MaterielItem.pcmpcode === '') {
         } else if (this.MaterielItem.pcmpcode === '') {
           this.setRemindText('型号不能为空')
           this.setRemindText('型号不能为空')
           return
           return
@@ -477,9 +499,12 @@
           pbranden: this.MaterielItem.pbranden,
           pbranden: this.MaterielItem.pbranden,
           pcmpcode: this.MaterielItem.pcmpcode,
           pcmpcode: this.MaterielItem.pcmpcode,
           spec: this.MaterielItem.spec,
           spec: this.MaterielItem.spec,
-          url: ''
+          url: this.MaterielItem.Regulpic || '',
+          cmpImg: this.MaterielItem.cmpImg, // 物料图片
+          packaging: this.MaterielItem.packaging, // 包装
+          minPackQty: this.MaterielItem.minPackQty // 最小包装数
         }
         }
-        this.$http.post('/trade/products/update/product?attachUrl=', item).then(res => {
+        this.$http.post(`/trade/products/update/product?attachUrl=${item.url}`, item).then(res => {
           if (res.data.success) {
           if (res.data.success) {
             this.setRemindText('修改成功')
             this.setRemindText('修改成功')
             this.showMateriel = false
             this.showMateriel = false
@@ -606,6 +631,19 @@
           this.MaterielItem.spec = this.baseUtils.cutOutString(this.MaterielItem.spec, 100)
           this.MaterielItem.spec = this.baseUtils.cutOutString(this.MaterielItem.spec, 100)
         }
         }
       },
       },
+      upoffMaterial(type) {
+        if (!type) {
+          this.showMateriel = false
+          this.page = 1
+          this.GetEnterpriseListData = null
+          this.GetEnterpriseListData = []
+          this.getResourceProvidor()
+        } else {
+          this.GetEnterpriseListData[this.$index] = this.$item
+          console.log(this.GetEnterpriseListData[this.$index])
+          // this.MaterielItem = this.$item
+        }
+      }
       // _initScroll() {
       // _initScroll() {
       //   this.$nextTick(() => {
       //   this.$nextTick(() => {
       //     if (!this.scroll) {
       //     if (!this.scroll) {