Prechádzať zdrojové kódy

同城店铺新建流程重构

zhujindu 1 rok pred
rodič
commit
576238e2f7

+ 1 - 0
src/components/uploadImgVStore.vue

@@ -164,6 +164,7 @@ export default {
   position: relative;
   height: 164px;
   width: 100%;
+  background-color: white;
 }
 
 .cameraDiv1 img {

+ 8 - 5
src/views/signApproval/newStoreApprovalList.vue

@@ -16,7 +16,7 @@
           </div>
           <div class="item storeType">
             <div class="label">门店类型:</div>
-            <div class="value">{{ item.storeCategory }}</div>
+            <div class="value">{{ item.storeCategoryName }}</div>
           </div>
           <div class="item applicationUserName">
             <div class="label">提交人员:</div>
@@ -82,17 +82,20 @@ export default {
           align-items: center;
           padding: 5px 0;
           font-size: 14px;
+          color: #999;
         }
         .itemtitle {
-          font-size: 16px;
-          font-weight: 600;
+          font-size: 14px;
+          font-weight: bold;
+          color: #333;
         }
         .itemBtn {
           position: absolute;
           top: 20px;
           right: 20px;
-          font-size: 16px;
-          font-weight: 600;
+          font-size: 14px;
+          font-weight: bold;
+          color: #333;
           color: #0057ba;
         }
       }

+ 57 - 18
src/views/storeManagement/index.vue

@@ -13,17 +13,20 @@
       </van-row> -->
       <div class="selectFilter" v-if="tabVal == 1">
         <van-dropdown-menu>
-          <van-dropdown-item
-            v-model="approvalStatus"
-            :title="storeTypeTitle"
-            :options="typeOption"
-            @change="storeTypeChange" />
-          <van-dropdown-item
-            v-model="processApprovalStatus"
-            :title="storeStatusTitle"
-            :options="statusOption"
-            @change="storeStatusChange"
-            :disabled="approvalStatus == 1" />
+          <van-dropdown-item :title="dropdownTitle" ref="dropdownItem" @open="dropdownOpen">
+            <van-cell
+              center
+              :title="item.text"
+              v-for="item in statusOption"
+              @click="dropdownItemClick(item)">
+              <template #right-icon v-if="item.selectFlag">
+                <van-icon name="success" color="red" />
+              </template>
+            </van-cell>
+            <div style="padding: 5px 16px">
+              <van-button type="danger" block round @click="onConfirm"> 确认 </van-button>
+            </div>
+          </van-dropdown-item>
         </van-dropdown-menu>
       </div>
       <div class="searchDiv">
@@ -377,12 +380,15 @@ export default {
         { text: '未结案', value: 0 },
       ],
       statusOption: [
-        { text: '全部状态', value: '' },
-        { text: '已提交', value: 1 },
-        { text: '未提交', value: 0 },
+        { text: '已结案', value: 1, selectFlag: false },
+        { text: '已提交', value: 2, selectFlag: false },
+        { text: '未提交', value: 3, selectFlag: false },
       ],
       storeTypeTitle: '门店类型',
       storeStatusTitle: '门店状态',
+      activatedTitles: [],
+      activatedValues: [],
+      dropdownTitle: '门店状态',
     };
   },
   activated() {
@@ -769,12 +775,9 @@ export default {
       fromValue.pageNum = this.pageNum;
       fromValue.pageSize = this.pageSize;
       fromValue.storeName = this.fromValue.storeName.trim();
-      // fromValue.approvalStatus = this.approvalStatus; //门店结案类型
-      // fromValue.processApprovalStatus = this.processApprovalStatus; //门店审批状态
       storeMyList({
         ...fromValue,
-        approvalStatus: this.approvalStatus,
-        processApprovalStatus: this.processApprovalStatus,
+        storeQueryStatus: this.activatedValues.join(','),
       }).then((res) => {
         loading1.clear();
         this.disabled = false;
@@ -861,6 +864,42 @@ export default {
       this.pageNum = 1;
       this.getUserMyStoreList();
     },
+    // 打开筛选项
+    dropdownOpen() {
+      // 重置选中
+      this.statusOption.forEach((val) => {
+        this.$set(val, 'selectFlag', false);
+      });
+      if (this.activatedValues.length) {
+        for (let i = 0; i < this.activatedValues.length; i++) {
+          let item = this.statusOption[this.activatedValues[i] - 1];
+          this.$set(item, 'selectFlag', true);
+        }
+      }
+    },
+    // 点击筛选项
+    dropdownItemClick(item) {
+      this.$set(item, 'selectFlag', !item.selectFlag);
+    },
+    // 筛选项确认
+    onConfirm() {
+      let titles = [];
+      let values = [];
+      this.statusOption.forEach((val) => {
+        if (val.selectFlag) {
+          titles.push(val.text);
+          values.push(val.value);
+        }
+      });
+      this.activatedTitles = titles;
+      this.activatedValues = values;
+      this.dropdownTitle = this.activatedTitles.length
+        ? this.activatedTitles.join(',')
+        : '门店状态';
+      this.$refs.dropdownItem.toggle();
+      this.pageNum = 1;
+      this.getUserMyStoreList();
+    },
   },
 };
 </script>

+ 8 - 2
src/views/storeManagement/storeDetail.vue

@@ -42,7 +42,7 @@
       <van-tabs class="myTab" v-model="tabVal" color="#0057ba" @change="tabChange">
         <van-tab title="基础信息" name="insidePlan" ref="dispsps">
           <!-- 提交审批后被驳回 -->
-          <div class="rejectMsg" v-if="rejectMsg[0] && '退回状态'">
+          <div class="rejectMsg" v-if="rejectMsg[0] && list.approvalStatus == 0">
             <span class="label">退回原因</span>
             <span class="value">{{ rejectMsg[0].approvalDesc }}</span>
             <span class="examineDetail" @click="examineDetail">查看详情</span>
@@ -1460,6 +1460,7 @@ export default {
               res.data.orderUrl != null &&
               (res.data.orderUrl != '') & (res.data.orderUrl != undefined)
             ) {
+              localStorage.setItem('storeId', res.data.sfaStore.storeId);
               window.location.replace(res.data.orderUrl);
             } else {
               checkVisit({ storeId: res.data.sfaStore.storeId }).then((response) => {
@@ -1543,7 +1544,7 @@ export default {
         return;
       }
       if (this.list.imgSed == '') {
-        this.$notify({ type: 'warning', message: '请上传门店陈列照' });
+        this.$notify({ type: 'warning', message: '请上传陈列照' });
         return;
       }
       this.toastLoading(0, '正在提交...', true);
@@ -1623,6 +1624,11 @@ export default {
   }
   .value {
     flex: 1;
+    overflow: hidden;
+    text-overflow: ellipsis;
+    display: -webkit-box;
+    -webkit-line-clamp: 2;
+    -webkit-box-orient: vertical;
   }
   .examineDetail {
     width: 70px;

+ 22 - 9
src/views/storeManagement/success.vue

@@ -1,6 +1,6 @@
 <template>
-  <div>
-    <van-nav-bar class="navBar" title="建店成功" />
+  <div class="success">
+    <van-nav-bar class="navBar" title="下单成功" />
     <div
       style="
         background-color: rgb(74, 202, 109);
@@ -50,7 +50,9 @@
         </van-button>
       </van-col>
     </van-row>
-    <div class="tips">该门店可拜访和下单,待上传产品陈列照、主管审核后、才能建店成功</div>
+    <div class="tips">
+      <span>该门店可拜访和下单,待上传产品陈列照、主管审核后,才能建店成功</span>
+    </div>
   </div>
 </template>
 
@@ -68,9 +70,11 @@ export default {
       flag: true,
       lat: null,
       lon: null,
+      storeId: null,
     };
   },
   created() {
+    this.storeId = localStorage.getItem('storeId');
     this.addstoreRegister();
   },
   watch: {
@@ -96,9 +100,7 @@ export default {
     },
     // 返回订单详情也
     gobackStoreDetail() {
-      window.location.replace(
-        window.location.origin + '/mobile/storeDetail?id=' + this.$route.query.storeId
-      );
+      window.location.replace(window.location.origin + '/mobile/storeDetail?id=' + this.storeId);
     },
     visite() {
       var that = this;
@@ -361,11 +363,22 @@ export default {
 </script>
 
 <style scoped lang="scss">
+.success {
+  .van-row {
+    padding: 5px 0;
+  }
+}
 .tips {
-  font-size: 14px;
-  color: #bdb8b8;
   display: flex;
+  flex-direction: column;
   align-items: center;
-  padding: 5px 0;
+  span {
+    width: 60%;
+    font-size: 14px;
+    color: #0057ba;
+    display: flex;
+    align-items: center;
+    padding: 5px 0;
+  }
 }
 </style>