瀏覽代碼

门店信息初次修改、门店签约品牌、门店库存、门店扫码记录查看

shanxin 5 年之前
父節點
當前提交
c646bab4ed

+ 1 - 1
src/views/modules/activity/activity.vue

@@ -485,7 +485,7 @@
           }).then(({data}) => {
             console.log(data)
             if (data && data.code === 0) {
-              for (let i = 0; i < data.actAreas.length; i++ ) {
+              for (let i = 0; i < data.actAreas.length; i++ ){
                 this.checkboxGroup1.push(data.actAreas[i].provinceName)
               }
             }

+ 60 - 60
src/views/modules/scan/scanRecord.vue

@@ -1,66 +1,66 @@
 <template>
   <div class="mod-scanRecord">
     <el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
-            <el-form-item>
-                <el-input v-model="dataForm.storeId" placeholder="门店主键" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.matnr" placeholder="物料编号" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.tireNumber" placeholder="胎号" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.kunnr" placeholder="经销商编号" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.brand" placeholder="品牌" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.spec" placeholder="规格" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.patterns" placeholder="花纹" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.maktx" placeholder="物料描述" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.scanAddress" placeholder="扫码地址" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.latitude" placeholder="扫码纬度" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.longitude" placeholder="扫码经度" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.createTime" placeholder="创建时间" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.carPic" placeholder="车架号照片" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.scanType" placeholder="1入库2出库" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.isRegular" placeholder="0正规1不正规" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.shippedDate" placeholder="出厂时间" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.b2bReqResult" placeholder="请求B2B结果记录状态" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.soldPartyKunner" placeholder="售达方编号" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.guige" placeholder="规格关键字" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.scanway" placeholder="扫码方式(0 手动输入 1 扫码入库)" clearable></el-input>
-            </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.storeId" placeholder="门店主键" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.matnr" placeholder="物料编号" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.tireNumber" placeholder="胎号" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.kunnr" placeholder="经销商编号" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.brand" placeholder="品牌" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.spec" placeholder="规格" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.patterns" placeholder="花纹" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.maktx" placeholder="物料描述" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.scanAddress" placeholder="扫码地址" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.latitude" placeholder="扫码纬度" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.longitude" placeholder="扫码经度" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.createTime" placeholder="创建时间" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.carPic" placeholder="车架号照片" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.scanType" placeholder="1入库2出库" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.isRegular" placeholder="0正规1不正规" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.shippedDate" placeholder="出厂时间" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.b2bReqResult" placeholder="请求B2B结果记录状态" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.soldPartyKunner" placeholder="售达方编号" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.guige" placeholder="规格关键字" clearable></el-input>
+          </el-form-item>
+          <el-form-item>
+              <el-input v-model="dataForm.scanway" placeholder="扫码方式(0 手动输入 1 扫码入库)" clearable></el-input>
+          </el-form-item>
 
       <el-form-item>
         <el-button @click="getDataList()">查询</el-button>

+ 456 - 226
src/views/modules/store/storeBasicInfo.vue

@@ -11,87 +11,8 @@
                 <el-input v-model="dataForm.storePhone" placeholder="门店电话" clearable></el-input>
             </el-form-item>
             <el-form-item>
-                <el-input v-model="dataForm.workShift" placeholder="门店上班时间" clearable></el-input>
+                <el-input v-model="dataForm.status" placeholder="门店状态" clearable></el-input>
             </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.closingTime" placeholder="门店下班时间" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.country" placeholder="国家" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.province" placeholder="省" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.city" placeholder="市" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.district" placeholder="区" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.addressInfo" placeholder="街道详情" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.storeAddress" placeholder="门店地址详情" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.storeMap" placeholder="地图坐标" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.storeType" placeholder="门店类型" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.busStatus" placeholder="营业状态0正常营业,1停业" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.descripton" placeholder="描述" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.email" placeholder="邮箱" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.qqNum" placeholder="QQ号" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.longitude" placeholder="经度" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.latitude" placeholder="纬度" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.contactName" placeholder="联系人" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.contactPhone" placeholder="门店联系人手机号" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.licenseUrl" placeholder="营业执照链接" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.storeImageUrl" placeholder="门店照片链接" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.qrbarcodeSrc" placeholder="门店二维码地址" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.storeTotalIntegral" placeholder="总积分" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.agentAuditTime" placeholder="经销商审核时间" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.status" placeholder="门店状态0待审核,1审核通过,2审核未通过,3门店冻结状态,4删除状态" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.registerTime" placeholder="注册时间" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.createTime" placeholder="创建时间" clearable></el-input>
-            </el-form-item>
-            <el-form-item>
-                <el-input v-model="dataForm.updateTime" placeholder="最后更新时间" clearable></el-input>
-            </el-form-item>
-
       <el-form-item>
         <el-button @click="getDataList()">查询</el-button>
         <el-button v-if="isAuth('store:storeBasicInfo:save')" type="primary" @click="addOrUpdateHandle()">新增</el-button>
@@ -126,93 +47,9 @@
         prop="storePhone"
         header-align="center"
         align="center"
-        label="门店电话">
-      </el-table-column>
-      <el-table-column
-        prop="workShift"
-        header-align="center"
-        align="center"
-        label="门店上班时间">
-      </el-table-column>
-      <el-table-column
-        prop="closingTime"
-        header-align="center"
-        align="center"
-        label="门店下班时间">
-      </el-table-column>
-      <el-table-column
-        prop="country"
-        header-align="center"
-        align="center"
-        label="国家">
-      </el-table-column>
-      <el-table-column
-        prop="province"
-        header-align="center"
-        align="center"
-        label="省">
-      </el-table-column>
-      <el-table-column
-        prop="city"
-        header-align="center"
-        align="center"
-        label="市">
-      </el-table-column>
-      <el-table-column
-        prop="district"
-        header-align="center"
-        align="center"
-        label="区">
-      </el-table-column>
-      <el-table-column
-        prop="addressInfo"
-        header-align="center"
-        align="center"
-        label="街道详情">
-      </el-table-column>
-      <el-table-column
-        prop="storeAddress"
-        header-align="center"
-        align="center"
-        label="门店地址详情">
-      </el-table-column>
-      <el-table-column
-        prop="storeMap"
-        header-align="center"
-        align="center"
-        label="地图坐标">
-      </el-table-column>
-      <el-table-column
-        prop="storeType"
-        header-align="center"
-        align="center"
-        label="门店类型">
-      </el-table-column>
-      <el-table-column
-        prop="busStatus"
-        header-align="center"
-        align="center"
-        label="营业状态0正常营业,1停业">
+        label="电话">
       </el-table-column>
-      <el-table-column
-        prop="descripton"
-        header-align="center"
-        align="center"
-        label="描述">
-      </el-table-column>
-      <el-table-column
-        prop="email"
-        header-align="center"
-        align="center"
-        label="邮箱">
-      </el-table-column>
-      <el-table-column
-        prop="qqNum"
-        header-align="center"
-        align="center"
-        label="QQ号">
-      </el-table-column>
-      <el-table-column
+      <!--<el-table-column
         prop="longitude"
         header-align="center"
         align="center"
@@ -223,20 +60,15 @@
         header-align="center"
         align="center"
         label="纬度">
-      </el-table-column>
-      <el-table-column
+      </el-table-column>-->
+      <!--<el-table-column
         prop="contactName"
         header-align="center"
         align="center"
         label="联系人">
-      </el-table-column>
-      <el-table-column
-        prop="contactPhone"
-        header-align="center"
-        align="center"
-        label="门店联系人手机号">
-      </el-table-column>
-      <el-table-column
+      </el-table-column>-->
+
+      <!--<el-table-column
         prop="licenseUrl"
         header-align="center"
         align="center"
@@ -253,13 +85,15 @@
         header-align="center"
         align="center"
         label="门店二维码地址">
-      </el-table-column>
+      </el-table-column>-->
+
       <el-table-column
         prop="storeTotalIntegral"
         header-align="center"
         align="center"
         label="总积分">
       </el-table-column>
+
       <el-table-column
         prop="agentAuditTime"
         header-align="center"
@@ -270,7 +104,8 @@
         prop="status"
         header-align="center"
         align="center"
-        label="门店状态0待审核,1审核通过,2审核未通过,3门店冻结状态,4删除状态">
+        :formatter="flagStoreStatus"
+        label="门店状态">
       </el-table-column>
       <el-table-column
         prop="registerTime"
@@ -279,27 +114,17 @@
         label="注册时间">
       </el-table-column>
       <el-table-column
-        prop="createTime"
-        header-align="center"
-        align="center"
-        label="创建时间">
-      </el-table-column>
-      <el-table-column
-        prop="updateTime"
-        header-align="center"
-        align="center"
-        label="最后更新时间">
-      </el-table-column>
-
-      <el-table-column
         fixed="right"
         header-align="center"
         align="center"
-        width="150"
+        width="300"
         label="操作">
         <template slot-scope="scope">
           <el-button v-if="isAuth('store:storeBasicInfo:edit')" type="text" size="small" @click="addOrUpdateHandle(scope.row)">修改</el-button>
           <el-button v-if="isAuth('store:storeBasicInfo:delete')" type="text" size="small" @click="deleteHandle(scope.row.mainId)">删除</el-button>
+          <el-button  type="text" size="small" @click="storeBrandMsg(scope.row.mainId)">门店签约品牌信息</el-button>
+          <el-button  type="text" size="small" @click="storeStockMsg(scope.row.mainId)">库存信息</el-button>
+          <el-button  type="text" size="small" @click="storeScanMsg(scope.row.mainId)">门店扫码记录</el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -314,45 +139,299 @@
     </el-pagination>
     <!-- 弹窗, 新增 / 修改 -->
     <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList" :dataForm="editModel"></add-or-update>
+
+
+
+    <!-- 门店签约品牌信息 -->
+    <el-dialog
+      title="门店签约品牌信息"
+      :visible.sync="storeBrandMsgVisible"
+      width="85%"
+      :before-close="handleCloseBrand"
+    >
+      <el-row>
+      </el-row>
+      <el-row>
+        <el-col :span="24">
+          <el-table
+            :data="storeBrandMsgList"
+            border
+            style="width: 100%;">
+            <el-table-column
+              prop="agentName"
+              header-align="center"
+              align="center"
+              label="经销商名称">
+            </el-table-column>
+            <el-table-column
+              prop="brand"
+              header-align="center"
+              align="center"
+              label="签约品牌">
+            </el-table-column>
+            <el-table-column
+              prop="lvCount"
+              header-align="center"
+              align="center"
+              label="签约条数">
+            </el-table-column>
+
+            <el-table-column
+              prop="blockMoney"
+              header-align="center"
+              align="center"
+              label="品牌冻结金额">
+            </el-table-column>
+            <el-table-column
+              prop="usableMoney"
+              header-align="center"
+              align="center"
+              label="品牌可用金额">
+            </el-table-column>
+            <el-table-column
+              prop="allBlockMoney"
+              header-align="center"
+              align="center"
+              label="总待核销金额">
+            </el-table-column>
+            <el-table-column
+              prop="blockStatus"
+              header-align="center"
+              align="center"
+              :formatter="storeBrandFormatter"
+              label="冻结状态">
+            </el-table-column>
+            <el-table-column
+              prop="agentStatus"
+              header-align="center"
+              align="center"
+              :formatter="agentStatusFormatter"
+              label="经销商审核状态">
+            </el-table-column>
+            <el-table-column
+              prop="b2bStatus"
+              header-align="center"
+              align="center"
+              :formatter="btbStatusFormatter"
+              label="b2b业务审核状态">
+            </el-table-column>
+          </el-table>
+        </el-col>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="storeBrandMsgVisibleClose()">关 闭</el-button>
+      </span>
+    </el-dialog>
+
+
+
+    <!-- 库存信息 -->
+    <el-dialog
+      title="门店库存信息"
+      :visible.sync="storeStockMsgVisible"
+      width="85%"
+      :before-close="handleClose"
+    >
+      <el-row>
+      </el-row>
+      <el-row>
+        <el-col :span="24">
+          <el-table
+            :data="storeStockMsgList"
+            border
+            style="width: 100%;">
+            <el-table-column
+              prop="matnr"
+              header-align="center"
+              align="center"
+              label="物料编号">
+            </el-table-column>
+            <el-table-column
+              prop="maktx"
+              header-align="center"
+              align="center"
+              label="物料描述">
+            </el-table-column>
+            <el-table-column
+              prop="tatalStock"
+              header-align="center"
+              align="center"
+              label="库存数量">
+            </el-table-column>
+            <el-table-column
+              prop="brandCode"
+              header-align="center"
+              align="center"
+              label="品牌">
+            </el-table-column>
+            <el-table-column
+              prop="spec"
+              header-align="center"
+              align="center"
+              label="规格">
+            </el-table-column>
+            <el-table-column
+              prop="specKey"
+              header-align="center"
+              align="center"
+              label="规格关键字">
+            </el-table-column>
+            <el-table-column
+              prop="pattern"
+              header-align="center"
+              align="center"
+              label="花纹">
+            </el-table-column>
+          </el-table>
+        </el-col>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="storeStockMsgVisible = false">关 闭</el-button>
+      </span>
+    </el-dialog>
+
+
+    <!-- 门店扫码记录 -->
+    <el-dialog
+      title="门店扫码记录"
+      :visible.sync="storeScanMsgVisible"
+      width="90%"
+      :before-close="handleClose"
+    >
+      <el-row>
+      </el-row>
+      <el-row>
+        <el-col :span="24">
+          <el-table
+            :data="storeScanMsgList"
+            border
+            style="width: 100%;">
+            <!-- 内容  -->
+            <el-table-column
+              prop="tireNumber"
+              header-align="center"
+              align="center"
+              label="胎号">
+            </el-table-column>
+
+            <el-table-column
+              prop="matnr"
+              header-align="center"
+              align="center"
+              label="物料编号">
+            </el-table-column>
+
+            <el-table-column
+              prop="kunnr"
+              header-align="center"
+              align="center"
+              label="经销商编号">
+            </el-table-column>
+            <el-table-column
+              prop="brand"
+              header-align="center"
+              align="center"
+              label="品牌">
+            </el-table-column>
+            <!--<el-table-column
+              prop="spec"
+              header-align="center"
+              align="center"
+              label="规格">
+            </el-table-column>
+            <el-table-column
+              prop="patterns"
+              header-align="center"
+              align="center"
+              label="花纹">
+            </el-table-column>
+            <el-table-column
+              prop="maktx"
+              header-align="center"
+              align="center"
+              label="物料描述">
+            </el-table-column>-->
+            <el-table-column
+              prop="scanAddress"
+              header-align="center"
+              align="center"
+              label="扫码地址">
+            </el-table-column>
+            <el-table-column
+              prop="longitude"
+              header-align="center"
+              align="center"
+              label="经度">
+            </el-table-column>
+            <el-table-column
+              prop="latitude"
+              header-align="center"
+              align="center"
+              label="纬度">
+            </el-table-column>
+            <el-table-column
+              prop="createTime"
+              header-align="center"
+              align="center"
+              label="扫码时间">
+            </el-table-column>
+
+            <el-table-column
+              prop="scanType"
+              header-align="center"
+              align="center"
+              label="扫码类别">
+            </el-table-column>
+            <el-table-column
+              prop="isRegular"
+              header-align="center"
+              align="center"
+              label="是否正规">
+            </el-table-column>
+            <el-table-column
+              prop="shippedDate"
+              header-align="center"
+              align="center"
+              label="轮胎出厂时间">
+            </el-table-column>
+            <el-table-column
+              prop="scanway"
+              header-align="center"
+              align="center"
+              label="扫码方式">
+            </el-table-column>
+
+          </el-table>
+          <el-pagination
+            @size-change="scanSizeChangeHandle"
+            @current-change="scanCurrentChangeHandle"
+            :current-page="scanCurrent"
+            :page-sizes="[10, 20, 50]"
+            :page-size="scanSize"
+            :total="scanTotalPage"
+            layout="total, sizes, prev, pager, next, jumper">
+          </el-pagination>
+        </el-col>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="storeScanMsgClose()">关 闭</el-button>
+      </span>
+    </el-dialog>
+
+
+
+
   </div>
 </template>
 
+
+
 <script>
   import AddOrUpdate from './storeBasicInfo-add-or-update'
   export default {
     data () {
       return {
         dataForm: {
-          storeNum: '',
-          storeName: '',
-          storePhone: '',
-          workShift: '',
-          closingTime: '',
-          country: '',
-          province: '',
-          city: '',
-          district: '',
-          addressInfo: '',
-          storeAddress: '',
-          storeMap: '',
-          storeType: '',
-          busStatus: '',
-          descripton: '',
-          email: '',
-          qqNum: '',
-          longitude: '',
-          latitude: '',
-          contactName: '',
-          contactPhone: '',
-          licenseUrl: '',
-          storeImageUrl: '',
-          qrbarcodeSrc: '',
-          storeTotalIntegral: '',
-          agentAuditTime: '',
-          status: '',
-          registerTime: '',
-          createTime: '',
-          updateTime: '',
           current: 1,
           size: 10
         },
@@ -361,7 +440,17 @@
         totalPage: 0,
         dataListLoading: false,
         dataListSelections: [],
-        addOrUpdateVisible: false
+        addOrUpdateVisible: false,
+        storeBrandMsgVisible: false,
+        storeBrandMsgList: [],
+        storeStockMsgVisible: false,
+        storeStockMsgList: [],
+        storeScanMsgVisible: false,
+        storeScanMsgList: [],
+        scanCurrent: 1,
+        scanSize: 10,
+        scanTotalPage: 0,
+        selectedStoreId: ''
       }
     },
     components: {
@@ -391,15 +480,26 @@
       },
       // 每页数
       sizeChangeHandle (val) {
-        this.pageSize = val
-        this.pageIndex = 1
+        this.dataForm.size = val
+        this.dataForm.current = 1
         this.getDataList()
       },
       // 当前页
       currentChangeHandle (val) {
-        this.pageIndex = val
+        this.dataForm.current = val
         this.getDataList()
       },
+      // 扫码弹框
+      scanSizeChangeHandle (val) {
+        this.scanSize = val
+        this.scanCurrent = 1
+        this.storeScanMsg(this.selectedStoreId)
+      },
+      // 扫码弹框 当前页
+      scanCurrentChangeHandle (val) {
+        this.scanCurrent = val
+        this.storeScanMsg(this.selectedStoreId)
+      },
       // 多选
       selectionChangeHandle (val) {
         this.dataListSelections = val
@@ -477,6 +577,136 @@
             }
           })
         }).catch(() => {})
+      },
+      // 关闭签约品牌
+      handleClose(done) {
+        this.$confirm('确认关闭?')
+          .then(_ => {
+            this.storeBrandMsgList = []
+            done();
+          })
+          .catch(_ => {});
+      },
+      // 关闭签约品牌
+      handleCloseBrand(done) {
+        this.$confirm('确认关闭?')
+          .then(_ => {
+            this.storeBrandMsgList = []
+            done();
+          })
+          .catch(_ => {});
+      },
+      // 门店签约品牌信息
+      storeBrandMsg (storeId) {
+        this.storeBrandMsgVisible = true
+        this.$http({
+          url: this.$http.adornUrl('/store/storeAgentBrandLv/list'),
+          method: 'get',
+          params: {
+            'STORE_ID': storeId
+          }
+        }).then(({data}) => {
+          if (data && data.code === 0) {
+            this.storeBrandMsgList = data.list
+          } else {
+            this.$message.error(data.msg)
+          }
+        })
+      },
+      // 门店库存信息
+      storeStockMsg (storeId) {
+        this.storeStockMsgVisible = true
+        this.$http({
+          url: this.$http.adornUrl('/store/storeStock/list'),
+          method: 'get',
+          params: {
+            'STORE_ID': storeId
+          }
+        }).then(({data}) => {
+          if (data && data.code === 0) {
+            this.storeStockMsgList = data.list
+          } else {
+            this.$message.error(data.msg)
+          }
+        })
+      },
+      // 门店扫码记录
+      storeScanMsg (storeId) {
+        this.selectedStoreId = storeId
+        this.storeScanMsgVisible = true
+        this.$http({
+          url: this.$http.adornUrl('/scan/scanRecord/page'),
+          method: 'get',
+          params: this.$http.adornParams(({
+            'current': this.scanCurrent,
+            'size': this.scanSize,
+            'storeId': storeId
+          }), false)
+        }).then(({data}) => {
+          if (data && data.code === 0) {
+            this.storeScanMsgList = data.page.records
+            this.scanTotalPage = data.page.total
+          } else {
+            this.$message.error(data.msg)
+          }
+        })
+      },
+      storeBrandMsgVisibleClose () {
+        this.storeBrandMsgVisible = false
+        this.storeBrandMsgList = []
+      },
+      storeScanMsgClose () {
+        this.storeScanMsgVisible = false
+        this.storeScanMsgList = []
+        this.selectedStoreId = ''
+      },
+      // 门店状态
+      flagStoreStatus (row, col) {
+        if (row.status === 0) {
+          return '待审核'
+        } else if (row.status === 1) {
+          return '审核通过'
+        } else if (row.status === 2) {
+          return '审核未通过'
+        } else if (row.status === 3) {
+          return '门店冻结'
+        } else if (row.status === 4) {
+          return '删除状态'
+        } else {
+          return '数据异常'
+        }
+      },
+      // 品牌冻结状态
+      storeBrandFormatter (row, col) {
+        if (row.blockStatus === '0') {
+          return '正常'
+        } else if (row.blockStatus === '1') {
+          return '冻结'
+        }  else {
+          return '数据异常'
+        }
+      },
+      agentStatusFormatter (row, col) {
+        if (row.agentStatus === '0') {
+          return '待审核'
+        } else if (row.agentStatus === '1') {
+          return '审核通过'
+        }  else if (row.agentStatus === '2') {
+          return '拒绝'
+        }  else {
+          return '数据异常'
+        }
+      },
+      btbStatusFormatter (row, col) {
+        if (row.b2bStatus === '0') {
+          return '待审核'
+        } else if (row.b2bStatus === '1') {
+          return '审核通过'
+        }  else if (row.b2bStatus === '2') {
+          return '拒绝'
+        }  else {
+          return '数据异常'
+        }
       }
     }
   }

+ 118 - 0
src/views/modules/sys/appVersionLog-add-or-update.vue

@@ -0,0 +1,118 @@
+
+<template>
+  <el-dialog
+    :title="!dataForm.mainId ? '新增' : '修改'"
+    :close-on-click-modal="false"
+    :visible.sync="visible"
+    width="600px"
+  >
+    <el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
+          <el-form-item label="版本号" prop="versionName">
+            <el-input v-model="dataForm.versionName" placeholder="版本号"></el-input>
+          </el-form-item>
+          <el-form-item label="APP类型" prop="appType">
+            <!--<el-input v-model="dataForm.appType" placeholder="app类型 0门店  1经销商"></el-input>-->
+            <el-radio-group v-model="dataForm.appType">
+              <el-radio :label="0">门店</el-radio>
+              <el-radio :label="1">经销商</el-radio>
+            </el-radio-group>
+          </el-form-item>
+          <el-form-item label="下载地址" prop="downloadUrl">
+            <!--<el-input v-model="dataForm.downloadUrl" placeholder="下载地址"></el-input>-->
+            <el-upload
+              drag
+              :before-upload="beforeUpload"
+              :action="uploadURL"
+              :headers="myHeaders"
+              :multiple= false
+              :on-success = "handleSuccessForFile"
+              :v-model = "dataForm.fileUrl">
+              <i class="el-icon-upload"></i>
+              <div class="el-upload__text">将文件拖到此处1,或<em>点击上传</em></div>
+              <div class="el-upload__tip" slot="tip">只能上传apk文件</div>
+            </el-upload>
+          </el-form-item>
+          <!--<el-form-item label="状态 0禁用  1启用" prop="flagStatus">
+            <el-input v-model="dataForm.flagStatus" placeholder="状态 0禁用  1启用"></el-input>
+          </el-form-item>-->
+    </el-form>
+    <span slot="footer" class="dialog-footer">
+      <el-button @click="visible = false">取消</el-button>
+      <el-button type="primary" @click="dataFormSubmit()">确定</el-button>
+    </span>
+  </el-dialog>
+</template>
+
+<script>
+  const token = localStorage.getItem('token'); // 要保证取到
+export default {
+  props: {
+    dataForm: {
+        type: Object,
+        require: false
+      }
+    },
+  data () {
+    return {
+      visible: false,
+      dataRule: {
+
+      },
+      uploadURL: '/api/sys//sys/appVersionLog/uploadFileToHuaweiOBS',
+      myHeaders: {token: token}
+    }
+  },
+  methods: {
+    init () {
+      this.visible = true
+    },
+    // 表单提交
+    dataFormSubmit () {
+      this.$refs['dataForm'].validate((valid) => {
+        if (valid) {
+          this.$http({
+            url: this.$http.adornUrl(`/sys/appVersionLog/${!this.dataForm.mainId ? 'save' : 'update'}`),
+            method: 'post',
+            data: this.$http.adornData(this.dataForm)
+          }).then(({data}) => {
+            if (data && data.code === 0) {
+              this.$message({
+                message: '操作成功',
+                type: 'success',
+                duration: 1500,
+                onClose: () => {
+                  this.visible = false
+                  this.$emit('refreshDataList')
+                }
+              })
+            } else {
+              this.$message.error(data.msg)
+            }
+          })
+        }
+      })
+    },
+    beforeUpload (file) {
+      const testMsg = file.name.substring(file.name.lastIndexOf('.') + 1);
+      const extension = testMsg === 'apk'
+      if (!extension) {
+        this.$message({
+          message: '上传文件只能是apk格式!',
+          type: 'warning'
+        })
+      }
+      return extension
+    },
+    // 上传成功
+    handleSuccessForFile (response, file, fileList) {
+      if (response && response.code === 0) {
+        if (this.num === this.successNum) {
+          this.dataForm.fileUrl = response.url
+      } else {
+          this.$message.error(response.msg)
+        }
+      }
+    }
+  }
+}
+</script>

+ 189 - 0
src/views/modules/sys/appVersionLog.vue

@@ -0,0 +1,189 @@
+<template>
+  <div class="mod-appVersionLog">
+    <el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
+      <el-form-item>
+        <el-button @click="getDataList()">查询</el-button>
+        <el-button v-if="isAuth('sys:appVersionLog:save')" type="primary" @click="addOrUpdateHandle()">新增</el-button>
+        <el-button v-if="isAuth('sys:appVersionLog:delete')" type="danger" @click="deleteHandle()" :disabled="dataListSelections.length <= 0">批量删除</el-button>
+      </el-form-item>
+    </el-form>
+    <el-table
+      :data="dataList"
+      border
+      v-loading="dataListLoading"
+      @selection-change="selectionChangeHandle"
+      style="width: 100%;">
+      <el-table-column
+        type="selection"
+        header-align="center"
+        align="center"
+        width="50">
+      </el-table-column>
+      <el-table-column
+        prop="versionName"
+        header-align="center"
+        align="center"
+        label="版本号">
+      </el-table-column>
+      <el-table-column
+        prop="appType"
+        header-align="center"
+        align="center"
+        label="APP类型">
+      </el-table-column>
+      <el-table-column
+        prop="downloadUrl"
+        header-align="center"
+        align="center"
+        label="下载链接">
+      </el-table-column>
+      <el-table-column
+        prop="flagStatus"
+        header-align="center"
+        align="center"
+        label="状态">
+      </el-table-column>
+      <el-table-column
+        prop="createTime"
+        header-align="center"
+        align="center"
+        label="创建日期">
+      </el-table-column>
+      <el-table-column
+        fixed="right"
+        header-align="center"
+        align="center"
+        width="150"
+        label="操作">
+        <template slot-scope="scope">
+          <el-button v-if="isAuth('sys:appVersionLog:edit')" type="text" size="small" @click="addOrUpdateHandle(scope.row)">修改</el-button>
+          <el-button v-if="isAuth('sys:appVersionLog:delete')" type="text" size="small" @click="deleteHandle(scope.row.mainId)">删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    <el-pagination
+      @size-change="sizeChangeHandle"
+      @current-change="currentChangeHandle"
+      :current-page="dataForm.current"
+      :page-sizes="[10, 20, 50, 100]"
+      :page-size="dataForm.size"
+      :total="totalPage"
+      layout="total, sizes, prev, pager, next, jumper">
+    </el-pagination>
+    <!-- 弹窗, 新增 / 修改 -->
+    <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList" :dataForm="editModel"></add-or-update>
+  </div>
+</template>
+
+<script>
+  import AddOrUpdate from './appVersionLog-add-or-update'
+  export default {
+    data () {
+      return {
+        dataForm: {
+          current: 1,
+          size: 10
+        },
+        editModel: {},
+        dataList: [],
+        totalPage: 0,
+        dataListLoading: false,
+        dataListSelections: [],
+        addOrUpdateVisible: false
+      }
+    },
+    components: {
+      AddOrUpdate
+    },
+    activated () {
+      this.getDataList()
+    },
+    methods: {
+      // 获取数据列表
+      getDataList () {
+        this.dataListLoading = true
+        this.$http({
+          url: this.$http.adornUrl('/sys/appVersionLog/page'),
+          method: 'get',
+          params: this.$http.adornParams(this.dataForm)
+        }).then(({data}) => {
+          if (data && data.code === 0) {
+            this.dataList = data.page.records
+            this.totalPage = data.page.total
+          } else {
+            this.dataList = []
+            this.totalPage = 0
+          }
+          this.dataListLoading = false
+        })
+      },
+      // 每页数
+      sizeChangeHandle (val) {
+        this.pageSize = val
+        this.pageIndex = 1
+        this.getDataList()
+      },
+      // 当前页
+      currentChangeHandle (val) {
+        this.pageIndex = val
+        this.getDataList()
+      },
+      // 多选
+      selectionChangeHandle (val) {
+        this.dataListSelections = val
+      },
+      // 新增 / 修改
+      addOrUpdateHandle (row) {
+        this.addOrUpdateVisible = true
+        if (row) {
+          this.editModel = row
+        } else {
+          this.editModel = {
+            mainId: null,
+            versionName: null,
+            appType: null,
+            downloadUrl: null,
+            flagStatus: null,
+            createTime: null,
+            createUser: null,
+            updateTime: null,
+            updateUser: null,
+          }
+        }
+        this.$nextTick(() => {
+          this.$refs.addOrUpdate.init()
+        })
+      },
+      // 删除
+      deleteHandle (id) {
+        var appVersionLogIds = id ? [id] : this.dataListSelections.map(item => {
+          return item.userId
+        })
+        this.$confirm(`确定对[id=${appVersionLogIds.join(',')}]进行[${id ? '删除' : '批量删除'}]操作?`, '提示', {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+          type: 'warning'
+        }).then(() => {
+          this.$http({
+            url: this.$http.adornUrl('/sys/appVersionLog/delete'),
+            method: 'post',
+            data: this.$http.adornData(appVersionLogIds, false)
+          }).then(({data}) => {
+            if (data && data.code === 0) {
+              this.$message({
+                message: '操作成功',
+                type: 'success',
+                duration: 1500,
+                onClose: () => {
+                  this.getDataList()
+                }
+              })
+            } else {
+              this.$message.error(data.msg)
+            }
+          })
+        }).catch(() => {})
+      }
+    }
+  }
+</script>