liukang %!s(int64=2) %!d(string=hai) anos
pai
achega
0f7ac368dc
Modificáronse 41 ficheiros con 464 adicións e 338 borrados
  1. BIN=BIN
      src/assets/img/aimg/clound7.png
  2. BIN=BIN
      src/assets/img/aimg/goods-bg.png
  3. BIN=BIN
      src/assets/img/aimg/goods-bottom.png
  4. BIN=BIN
      src/assets/img/aimg/goods-btn.png
  5. BIN=BIN
      src/assets/img/aimg/seckill-bg2.png
  6. BIN=BIN
      src/assets/img/aimg/seckill-bg3.png
  7. BIN=BIN
      src/assets/img/aimg/seckill-btn.png
  8. BIN=BIN
      src/assets/img/aimg/seckill-goods.png
  9. 28 13
      src/components/Index/indexHeader.vue
  10. 31 16
      src/components/Index/indexHeaders.vue
  11. 5 3
      src/components/User/CentreNav.vue
  12. 37 22
      src/components/User/ShoppingCart.vue
  13. 1 0
      src/components/form/Form.vue
  14. 1 0
      src/components/form/FormSearch.vue
  15. 7 7
      src/view/evaluate/index.vue
  16. 28 26
      src/view/evaluateDetail/index.vue
  17. 26 22
      src/view/goods/goodsDetail/index.vue
  18. 12 11
      src/view/goods/goodsList/index.vue
  19. 31 15
      src/view/goods/hotSellRank/index.vue
  20. 11 10
      src/view/goods/seckillGoods/index.vue
  21. 22 13
      src/view/goods/seckillRank/index.vue
  22. 7 6
      src/view/guide/afterSale/index.vue
  23. 7 6
      src/view/guide/register/index.vue
  24. 1 1
      src/view/guide/shopping/index.vue
  25. 5 4
      src/view/index/index.vue
  26. 1 1
      src/view/publicity/cloundPlatform/index.vue
  27. 1 1
      src/view/publicity/financial/index.vue
  28. 1 1
      src/view/publicity/gallery/index.vue
  29. 1 1
      src/view/publicity/medical/index.vue
  30. 4 2
      src/view/publicity/product/index.vue
  31. 1 1
      src/view/publicity/repast/index.vue
  32. 1 1
      src/view/publicity/resale/index.vue
  33. 1 1
      src/view/publicity/security/index.vue
  34. 1 1
      src/view/serviceView/index.vue
  35. 1 1
      src/view/user/afterSale/index.vue
  36. 13 0
      src/view/user/evaluate/index.vue
  37. 15 14
      src/view/user/invoiceManage/index.vue
  38. 33 30
      src/view/user/order/detail/index.vue
  39. 22 22
      src/view/user/order/list/index.vue
  40. 53 38
      src/view/user/order/pay/index.vue
  41. 55 48
      src/view/user/order/submit/index.vue

BIN=BIN
src/assets/img/aimg/clound7.png


BIN=BIN
src/assets/img/aimg/goods-bg.png


BIN=BIN
src/assets/img/aimg/goods-bottom.png


BIN=BIN
src/assets/img/aimg/goods-btn.png


BIN=BIN
src/assets/img/aimg/seckill-bg2.png


BIN=BIN
src/assets/img/aimg/seckill-bg3.png


BIN=BIN
src/assets/img/aimg/seckill-btn.png


BIN=BIN
src/assets/img/aimg/seckill-goods.png


+ 28 - 13
src/components/Index/indexHeader.vue

@@ -66,7 +66,7 @@
           全部分类
         </div>
         <div class="index-sort-content">
-          <div class="index-sort-list" @mouseenter="indexSortSlide(indexs)" @mouseleave="indexSortOut" :class="item.class" v-for="(item,indexs) in sortList" @click="routeTap(item.url,indexs)">
+          <div class="index-sort-list" @mouseenter="indexSortSlide(indexs)" @mouseleave="indexSortOut" :class="item.class" v-for="(item,indexs) in sortList" @click="routeTap(item.url,indexs)" :key="indexs">
               <div class="sortName">
 <!--                <div v-if="indexs==1" class="mobile-text">-->
 <!--                  <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/index/index-ms-text.png"/>-->
@@ -76,10 +76,12 @@
                 </div>
               </div>
           </div>
-          <div v-if="flags" class="boxs"  @mouseenter="indexSortSlide(4)" @mouseleave="indexSortOut">
-            <div @click="routeTap(item.url)" v-for="item in sjList">
+          <div v-show="flags" class="boxs"  @mouseenter="indexSortSlide(4)" @mouseleave="indexSortOut">
+            <div v-for="(item,index) in sjList" :key="index">
+            <button @click.stop="routeClick(index)">
               {{item.name}}
-            </div>
+            </button>
+          </div>
           </div>
         </div>
       </div>
@@ -87,6 +89,14 @@
 </template>
 
 <script setup="props,context">
+import FeedBack from '@/components/User/FeedBack.vue'
+import { provide, reactive, ref,onMounted ,onBeforeMount} from 'vue'
+import { useRouter } from 'vue-router';
+import {useUserStore} from "@/store/modules/user";
+import {removeStore} from "@/utils/storage";
+import {removeAuthed, removeToken} from "@/utils/auth";
+import {defineEmits, defineExpose, defineProps} from "@vue/runtime-core";
+import {get_config, getContentPage, goods_coupon} from "@/api/menu1";
 import {closeService} from "@/utils";
 
 let logo=ref('')
@@ -94,7 +104,6 @@ getContentPage({"page":"shouye"}).then((res)=>{
   logo.value=res.data.content.logo
 })
 let flags=ref(false)
-import FeedBack from '@/components/User/FeedBack.vue'
 const getUserKeyUp=(url)=>{
   $router.push({path:url,query:{userName:goodsName.value}})
 
@@ -129,13 +138,7 @@ const props = defineProps({
 })
 let flag=ref(false)
 
-import { provide, reactive, ref,onMounted ,onBeforeMount} from 'vue'
-import { useRouter } from 'vue-router';
-import {useUserStore} from "@/store/modules/user";
-import {removeStore} from "@/utils/storage";
-import {removeAuthed, removeToken} from "@/utils/auth";
-import {defineEmits, defineExpose, defineProps} from "@vue/runtime-core";
-import {get_config, getContentPage, goods_coupon} from "@/api/menu1";
+
 const userStore = useUserStore()
 const topFlag=ref(true)
 const userInfos = userStore.getUserInfo
@@ -175,11 +178,17 @@ const $router=useRouter()
 $router.currentRoute.value.path==='/hotSellRank'||$router.currentRoute.value.path=='/seckillRank'?topFlag.value=false:''
 const routeTap=(url,index)=>{
   console.error(index)
+  console.log(url);
+  console.log(index);
   if(url){
     $router.push({path:url})
 
   }
 }
+const routeClick=(index) => {
+  console.log(index);
+  router.push(sjList[index].url)
+}
 const indexTaps=()=>{
   let url=$router.currentRoute.value.path;
   if(url=='/seckillRank' || url=='/hotSellRank'){
@@ -216,13 +225,19 @@ const logout=()=>{
   left: 460px;
   top:60px;
   color: #fff;
-  z-index: 100;
+  z-index: 10000;
   background-color: #393939;
   padding: 0 20px;
   div:hover{
     color: #4B71AE;
     cursor: pointer;
   }
+  button {
+    background: none;
+    border: none;
+    color: #fff;
+    cursor: pointer;
+  }
 }
 /deep/ .el-textarea__inner{
   background-color: #F5F5F5;

+ 31 - 16
src/components/Index/indexHeaders.vue

@@ -66,7 +66,7 @@
         全部分类
       </div>
       <div class="index-sort-content">
-        <div class="index-sort-list" @mouseenter="indexSortSlide(indexs)" @mouseleave="indexSortOut" :class="item.class" v-for="(item,indexs) in sortList" @click="routeTap(item.url,indexs)">
+        <div class="index-sort-list" @mouseenter="indexSortSlide(indexs)" @mouseleave="indexSortOut" :class="item.class" v-for="(item,indexs) in sortList" @click="routeTap(item.url,indexs)" :key="indexs">
           <div class="sortName">
 <!--            <div v-if="indexs==1" class="mobile-text">-->
 <!--              <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/index/index-ms-text.png"/>-->
@@ -76,16 +76,18 @@
             </div>
           </div>
         </div>
-        <div v-if="flags" class="boxs"  @mouseenter="indexSortSlide(4)" @mouseleave="indexSortOut">
-          <div @click="routeTap(item.url)" v-for="item in sjList">
-            {{item.name}}
+        <div v-show="flags" class="boxs"  @mouseenter="indexSortSlide(4)" @mouseleave="indexSortOut">
+          <div v-for="(item,index) in sjList" :key="index">
+            <button @click.stop="routeClick(index)">
+              {{item.name}}
+            </button>
           </div>
         </div>
       </div>
     </div>
     <div class="index-center">
     <div class="index-center-left" v-if="sortFlag" @mouseenter="indexSortSlides()" @mouseleave="indexSortOut"  >
-      <div  v-for="(item,index) in categoryGoods.arr">
+      <div  v-for="(item,index) in categoryGoods.arr" :key="index">
         <div class="index-sort-list" v-if="item.goods!=''"    :class="sortIndex==index?'colorStyles':''"  @mouseenter="indexSortSlides(item,index)" >
           <div class="index-sort-name overflow2" >{{item.name}}</div>
           <div class="right-icon"  :class="sortIndex==index?'bgRight':''">
@@ -93,7 +95,7 @@
         </div>
 
         <div class="index-sort-contents" v-if="sortIndex!=null"  @mouseenter="indexSortSlides()" @mouseleave="indexSortOut">
-          <div class="index-sort-lists"   v-for="(items,indexs) in categoryGoods.arr[sortIndex].goods" @click="routeTaps('/goodsDetail',items.id)">
+          <div class="index-sort-lists"   v-for="(items,indexs) in categoryGoods.arr[sortIndex].goods" @click="routeTaps('/goodsDetail',items.id)" :key="indexs">
             <div class="index-sort-img">
               <img :src=items.logo[0] alt="">
             </div>
@@ -111,7 +113,14 @@
 
 <script setup="props,context">
 import {closeService} from "@/utils";
-
+import FeedBack from '@/components/User/FeedBack.vue'
+import { provide, reactive, ref,onMounted ,onBeforeMount} from 'vue'
+import { useRouter } from 'vue-router';
+import {useUserStore} from "@/store/modules/user";
+import {removeStore} from "@/utils/storage";
+import {removeAuthed, removeToken} from "@/utils/auth";
+import {defineEmits, defineExpose, defineProps} from "@vue/runtime-core";
+import {category, get_config, getContentPage, goods_coupon} from "@/api/menu1";
 let logo=ref('')
 getContentPage({"page":"shouye"}).then((res)=>{
   logo.value=res.data.content.logo
@@ -131,7 +140,6 @@ category().then((res)=>{
   categoryGoods.arr=res.data
 })
 let flags=ref(false)
-import FeedBack from '@/components/User/FeedBack.vue'
 const getUserKeyUp=(url)=>{
   $router.push({path:url,query:{userName:goodsName.value}})
 
@@ -191,13 +199,7 @@ const props = defineProps({
 let flag=ref(false)
 onMounted(()=>{
 })
-import { provide, reactive, ref,onMounted ,onBeforeMount} from 'vue'
-import { useRouter } from 'vue-router';
-import {useUserStore} from "@/store/modules/user";
-import {removeStore} from "@/utils/storage";
-import {removeAuthed, removeToken} from "@/utils/auth";
-import {defineEmits, defineExpose, defineProps} from "@vue/runtime-core";
-import {category, get_config, getContentPage, goods_coupon} from "@/api/menu1";
+
 const userStore = useUserStore()
 const topFlag=ref(true)
 const userInfos = userStore.getUserInfo
@@ -236,10 +238,17 @@ defineExpose({
 const $router=useRouter()
 $router.currentRoute.value.path==='/hotSellRank'||$router.currentRoute.value.path=='/seckillRank'?topFlag.value=false:''
 const routeTap=(url,index)=>{
+  console.log(url);
+  console.log(index);
   if(url){
     $router.push({path:url})
   }
 }
+const routeClick=(index) => {
+  console.log(index);
+  // $router.push({path:sjList[index].url})
+  window.location.href = sjList[index].url
+}
 const indexTaps=()=>{
   let url=$router.currentRoute.value.path;
   if(url=='/seckillRank' || url=='/hotSellRank'){
@@ -373,13 +382,19 @@ const logout=()=>{
   left: 460px;
   top:60px;
   color: #fff;
-  z-index: 100;
+  z-index: 1000;
   background-color: #393939;
   padding: 0 20px;
   div:hover{
     color: #4B71AE;
     cursor: pointer;
   }
+  button {
+    background: none;
+    border: none;
+    color: #fff;
+    cursor: pointer;
+  }
 }
 /deep/ .el-textarea__inner{
   background-color: #F5F5F5;

+ 5 - 3
src/components/User/CentreNav.vue

@@ -4,7 +4,7 @@
             {{item.name}}
         </div>
       <div>
-        <FeedBack ref="ChildsDom"/>
+        <FeedBack ref="ChildsDom1"/>
         <Scheme ref="ChildsDom"/>
       </div>
     </div>
@@ -24,11 +24,13 @@ const userNav=[
   {name:'我的方案',url:'/user/Scheme',},
   {name:'服务中心',url:'/serviceView',},
   {name:'联系客服',url:'',},
-  {name:'意见反馈',url:'',}
+  {name:'意见反馈',url:'/user/FeedBack',}
 ]
 const flag=ref(false)
 let navIndex =ref(0)
 const ChildsDom=ref(null)
+const ChildsDom1=ref(null)
+
 provide('navIndex', navIndex)
 provide('tcFlag',flag)
 import {rouseService} from "@/utils";
@@ -39,7 +41,7 @@ const navTaps=(index,item)=>{
     return
   }
   if(index===6){
-    ChildsDom.value.feedTip()
+    ChildsDom1.value.feedTip()
     return
   }
   if(index===5){

+ 37 - 22
src/components/User/ShoppingCart.vue

@@ -32,20 +32,20 @@
           </div>
            <div class="content-s">
              <div class=" flex" :style="item.goods.is_ni==0?'margin-top:20px':''" style="line-height: normal">
-               <!-- <div class="add" @click="add(index,item)">+</div>
+               <div class="add" @click="add(index,item)">+</div>
                <div class="sum">
                  <el-input maxlength="99" type="number" v-model="item.num"></el-input>
                </div>
-               <div class="del" @click="deletes(index,item)">-</div> -->
-               <el-input-number size="small" v-model="item.num" @change="handleChange(item,index)" :min="1" label="描述文字"></el-input-number>
+               <div class="del" @click="deletes(index,item)">-</div>
+               <!-- <el-input-number size="small" v-model="item.num" @change="handleChange(item,index)" :min="1" label="描述文字"></el-input-number> -->
              </div>
              <div class="flex" style="line-height: normal;margin-top: 10px" v-if="item.goods.is_ni!=0">
-               <!-- <div class="add" @click="add_install(index,item)">+</div>
+               <div class="add" @click="add_install(index,item)">+</div>
                <div class="sum">
                  <el-input maxlength="99" type="number" v-model="item.num_install"></el-input>
                </div>
-               <div class="del" @click="deletes_install(index,item)">-</div> -->
-               <el-input-number size="small" v-model="item.num_install" @change="handleChange2(item,index)" :min="1" label="描述文字"></el-input-number>
+               <div class="del" @click="deletes_install(index,item)">-</div>
+               <!-- <el-input-number size="small" v-model="item.num_install" @change="handleChange2(item,index)" :min="1" label="描述文字"></el-input-number> -->
              </div>
            </div>
 
@@ -410,18 +410,33 @@ const pay=(index,item)=>{
     font-size: 16px;
   }
 }
-/deep/ .el-input-number--small {
-  //width: 100px;
-  line-height: 18px;
-  height: 18px;
+/deep/ .sum .el-input {
+  width: 50px;
+  height: 20px;
+  background: #fff;
+  line-height: 20px;
 }
-/deep/ .el-input--small{
-  //line-height: 24px;
+/deep/ .sum .el-input .el-input__inner {
+  background: #fff;
+  border: 1px solid #F0F2F5 !important;
+  // border: none;
+  height: 20px;
+  padding: 0;
+  text-align: center;
+  line-height: 20px;
 }
-/deep/ .el-input--small .el-input__inner{
-  height: 20px!important;
+// /deep/ .el-input-number--small {
+//   //width: 100px;
+//   line-height: 18px;
+//   height: 18px;
+// }
+// /deep/ .el-input--small{
+//   line-height: 18px;
+// }
+// /deep/ .el-input--small .el-input__inner{
+//   height: 18px!important;
 
-}
+// }
 /deep/ .el-input{
   display: block;
   line-height: inherit;
@@ -473,29 +488,29 @@ const pay=(index,item)=>{
       //padding-top: 55px;
       .add{
         width: 36px;
-        height: 22px;
+        height: 20px;
         background: #F0F2F5;
         border-radius: 2px;
         border: 1px solid #D7DBE0;
-        line-height: 22px;
+        line-height: 20px;
         text-align: center;
       }
       .sum{
-        width: 66px;
-        height: 28px;
+        width: 50px;
+        height: 20px;
         /*background: #F0F2F5;*/
         border-radius: 2px;
         /*border: 1px solid #D7DBE0;*/
-        line-height: 22px;
+        line-height: 20px;
         text-align: center;
       }
       .del{
         width: 36px;
-        height: 22px;
+        height: 20px;
         background: #F0F2F5;
         border-radius: 2px;
         border: 1px solid #D7DBE0;
-        line-height: 22px;
+        line-height: 20px;
         text-align: center;
       }
     }

+ 1 - 0
src/components/form/Form.vue

@@ -112,6 +112,7 @@
                 type="date"
                 :disabled="item.disabled"
                 placeholder="选择日期"
+                format="YYYY/MM/DD"
               />
               <!-- 上传 -->
               <el-upload

+ 1 - 0
src/components/form/FormSearch.vue

@@ -28,6 +28,7 @@
               range-separator="至"
               start-placeholder="开始日期"
               end-placeholder="结束日期"
+              format="YYYY/MM/DD"
             />
           </el-form-item>
         </el-col>

+ 7 - 7
src/view/evaluate/index.vue

@@ -35,7 +35,7 @@
           </div>
         </div>
         <div class="examin-content">
-          <div class="examin-list" v-for="(item,index) in goods.arr" @click="checksSel(item)">
+          <div class="examin-list" v-for="(item,index) in goods.arr" @click="checksSel(item)" :key="index">
             <div class="check" v-if="checkGoodsFlag">
               <div class="check-icon" v-if="item.flag">
                 <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/check.png">
@@ -106,7 +106,7 @@
           <div class="scheme-name" style="    text-align: right; flex: 0 0 50px;">分享</div>
         </div>
         <div class="scheme-content">
-          <div class="scheme-list" v-for="(item,index) in schemeLists.arr">
+          <div class="scheme-list" v-for="(item,index) in schemeLists.arr" :key="index">
             <div class="scheme-text overflow1" style="flex: 0 0  150px;text-align: center">{{ item.name }}</div>
             <div class="scheme-time" style="flex: 1;margin-left: 30px">{{ item.createtime }}</div>
             <div class="scheme-time scheme-flex" style="margin-right: 30px">
@@ -135,7 +135,7 @@
     </el-dialog>
     <div class="evaluate">
       <div class="evaluate-goods">
-        <div class="evaluate-list" v-show="categoryGoods.arr" v-for="(item,index) in categoryGoods.arr">
+        <div class="evaluate-list" v-show="categoryGoods.arr" v-for="(item,index) in categoryGoods.arr" :key="index">
           <div class="evaluate-rule" v-if="item.goods!=''" @click="changeFatherClick(index,item)">
             <div>{{item.name}}</div>
             <div>{{item.flag?'-':'+'}}</div>
@@ -145,15 +145,15 @@
               <img :src="showImg.arr.logo[0]">
             </div>
             <div class="evaluate-contents">
-                <div class="evaluate-lists" v-for="(items,indexs) in item.goods">
+                <div class="evaluate-lists" v-for="(items,indexs) in item.goods" :key="indexs">
                 <div class="evaluate-rules" @click.stop="changeClick(indexs,items,item)">
                   <div class="overflow1">{{items.name}}</div>
                   <div>{{items.flag?'-':'+'}}</div>
                 </div>
                 <div class="evaluate-goods-rules">
-                  <div class="flex-views" v-for="(size,sizeIndex) in items.size" v-if="items.sku!='' && items.flag">
+                  <div class="flex-views" v-for="(size,sizeIndex) in items.size" v-if="items.sku!='' && items.flag" :key="sizeIndex">
                     <div style="flex: 0 0 40px;margin-right: 10px;">{{ size.type }}</div>
-                    <div class="goods-rule" v-for="(sizes,sizeIndexs) in size.names" @click.stop="checkRule(size,sizes,sizeIndexs,sizeIndex,items)">
+                    <div class="goods-rule" v-for="(sizes,sizeIndexs) in size.names" @click.stop="checkRule(size,sizes,sizeIndexs,sizeIndex,items)" :key="sizeIndexs">
                       <div class="goods-rule-name overflow1" :class="sizes.check==true?'classIndex':''">
                           {{ sizes.name }}
                       </div>
@@ -217,7 +217,7 @@ v-if="items.flag"
             <div class="manage" @click="checkFlag=!checkFlag">管理</div>
           </div>
           <div class="shopping-content">
-            <div v-for="(item,index) in cartGoods.arr.goods">
+            <div v-for="(item,index) in cartGoods.arr.goods" :key="index">
               <div class="shopping-list" v-if="item.num!=0 && item.install_num!==0">
                 <div class="check" v-if="!checkFlag" @click.stop="shopChecks(item)">
                   <div class="check-icon" v-if="item.checks">

+ 28 - 26
src/view/evaluateDetail/index.vue

@@ -34,7 +34,7 @@
       </div>
 
       <div class="content" :style="cartGoods.arr.length>8?'height:1000px':''">
-        <div class="order-list" @click="shopChecks(item)" v-for="(item,index) in cartGoods.arr">
+        <div class="order-list" @click="shopChecks(item)" v-for="(item,index) in cartGoods.arr" :key="index">
           <div class="checkIcons">
 <!--            <div class="boxs" style="margin-top: 60px" v-if="item.checks==false && checkFlag"></div>-->
             <div class="check-icon" v-if="item.checks==false && checkFlag">
@@ -49,7 +49,7 @@
             <img :src="item.logo[0]">
             <div class="rules">
               <div class="name overflow2">{{item.name}}</div>
-              <div class="rule" style="display: inline-block" v-for="(items,indexs) in item.sku">
+              <div class="rule" style="display: inline-block" v-for="(items,indexs) in item.sku" :key="indexs">
                 <text>{{items}}</text>
                 <text v-if="item.sku.length-1!=indexs">/</text>
               </div>
@@ -115,6 +115,31 @@
 </template>
 
 <script setup>
+import { provide, reactive, ref,onMounted,onUnmounted } from 'vue'
+import CentreNav from '@/components/User/CentreNav.vue'
+import indexHeaders from '@/components/Index/indexHeaders.vue'
+
+import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
+import RightSliderBar from '@/components/Index/RightSliderBar.vue'
+import CountDate from '@/components/Index/CountDate.vue'
+import Footer from '@/components/Tool/Footer.vue'
+import { ElMessage, ElMessageBox } from 'element-plus'
+
+//记录访问次数
+import {useRouter} from "vue-router";
+import {detailTime, getUrlParams2, isLogin, rouseService} from "@/utils";
+import {
+  calculate,
+  cancel_order,
+  commit, deleteGoods,
+  logistics_order,
+  order_refund,
+  orderDetail, preview, programme_detail1,
+  refund,
+  refund_cancel, updateProGramme,
+  user_lsp
+} from "@/api/menu1";
+import {router} from "@/router";
 let shareFlag=ref(true)
 const serviceTap = () => {
   rouseService()
@@ -174,18 +199,7 @@ const deletes = () => {
   }
 }
 let checkFlag=ref(false)
-import { provide, reactive, ref,onMounted,onUnmounted } from 'vue'
-import CentreNav from '@/components/User/CentreNav.vue'
-import indexHeaders from '@/components/Index/indexHeaders.vue'
 
-import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
-import RightSliderBar from '@/components/Index/RightSliderBar.vue'
-import CountDate from '@/components/Index/CountDate.vue'
-import Footer from '@/components/Tool/Footer.vue'
-import { ElMessage, ElMessageBox } from 'element-plus'
-
-//记录访问次数
-import {useRouter} from "vue-router";
 const addNum=(item)=>{
   let nums=item.skuObj.amount_kill==null?item.skuObj.num_stock:item.skuObj.num_stock_kill
   if(nums>item.num){
@@ -242,19 +256,7 @@ onMounted(()=>{
     shareFlag.value=false
   }
 })
-import {detailTime, getUrlParams2, isLogin, rouseService} from "@/utils";
-import {
-  calculate,
-  cancel_order,
-  commit, deleteGoods,
-  logistics_order,
-  order_refund,
-  orderDetail, preview, programme_detail1,
-  refund,
-  refund_cancel, updateProGramme,
-  user_lsp
-} from "@/api/menu1";
-import {router} from "@/router";
+
 const programme_details1 = (id) => {
   const data = {
     id: id

+ 26 - 22
src/view/goods/goodsDetail/index.vue

@@ -22,7 +22,7 @@ v-if="goodsDetails.arr.logo"
             </div>
             <div class="content-s">
               <div class="style-s" :style="{ transform: `translateX(${-goodsIndex * 140}px)` }">
-                <div class="goods-change-list" v-for="(item,index) in goodsDetails.arr.logo" @click="logoIndex=index">
+                <div class="goods-change-list" v-for="(item,index) in goodsDetails.arr.logo" @click="logoIndex=index" :key="index">
                   <div class="goods-width">
                     <img :src="item" alt="">
                   </div>
@@ -62,10 +62,10 @@ v-if="goodsDetails.arr.logo"
             <div class="goods-brand-text">品牌</div>
             <div class="goods-brand-name">{{goodsDetails.arr.brand}}</div>
           </div>
-          <div class="goods-brand border-bottom bottom15" style="margin-bottom: 0" v-for="(item,index) in goodsDetails.arr.size">
+          <div class="goods-brand border-bottom bottom15" style="margin-bottom: 0" v-for="(item,index) in goodsDetails.arr.size" :key="index">
             <div class="goods-brand-text" style="margin-top: 12px">{{item.type}}</div>
            <div class="rules">
-             <div class="goods-brand-rules" :class="[items.check===true?'border':'',items.checks==false?'colorStyles':'']" @click="items.checks!=false && ruleChange(index,indexs,items)" v-for="(items,indexs) in item.names">
+             <div class="goods-brand-rules" :class="[items.check===true?'border':'',items.checks==false?'colorStyles':'']" @click="items.checks!=false && ruleChange(index,indexs,items)" v-for="(items,indexs) in item.names" :key="indexs">
                <div>{{items.name}}</div>
              </div>
            </div>
@@ -186,7 +186,7 @@ v-if="goodsDetails.arr.logo"
             <div class="group-width">
 
                 <div class="group-box" :style="{ transform: `translateX(${-groupIndex * 175}px)` }">
-                  <div class="group-all-list" v-for="(item,index) in goods_lists.arr">
+                  <div class="group-all-list" v-for="(item,index) in goods_lists.arr" :key="index">
                     <div class="goods-show-img">
                       <img :src="item.logo[0]">
                     </div>
@@ -263,7 +263,7 @@ v-if="goodsDetails.arr.logo"
             <div class="group-width">
               <div class="group-box" :style="{ transform: `translateX(${-groupIndex * 175}px)` }">
 
-                <div class="group-all-list" v-for="(item,index) in zjList.arr">
+                <div class="group-all-list" v-for="(item,index) in zjList.arr" :key="index">
                   <div class="goods-show-img">
                     <img :src="item.logo[0]">
                   </div>
@@ -318,7 +318,7 @@ v-if="goodsDetails.arr.logo"
                 <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/change-text.png">
               </div>
             </div>
-            <div class="goods-lists" @click="routeTaps('/goodsDetail',item.id)" v-for="(item,index) in pzList.arr">
+            <div class="goods-lists" @click="routeTaps('/goodsDetail',item.id)" v-for="(item,index) in pzList.arr" :key="index">
               <div class="goods-images">
                 <img :src="item.logo[0]">
               </div>
@@ -335,7 +335,7 @@ v-if="goodsDetails.arr.logo"
                 <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/change-text.png">
               </div>
             </div>
-            <div class="goods-lists" @click="routeTaps('/goodsDetail',item.id)" v-for="(item,index) in recommends.arr">
+            <div class="goods-lists" @click="routeTaps('/goodsDetail',item.id)" v-for="(item,index) in recommends.arr" :key="index">
                 <div class="goods-images">
                   <img :src="item.logo[0]">
                 </div>
@@ -348,7 +348,7 @@ v-if="goodsDetails.arr.logo"
         </div>
         <div class="seckill-rights">
           <div class="seckill-nav">
-              <div v-for="(item,index) in navTap" @click="navIndex=index" :class="navIndex==index?'classStyle':''">
+              <div v-for="(item,index) in navTap" @click="navIndex=index" :class="navIndex==index?'classStyle':''" :key="index">
                 {{item}}
               </div>
           </div>
@@ -359,7 +359,7 @@ v-if="goodsDetails.arr.logo"
             <div class="seckill-desc" v-show="navIndex==1">
               <div class="sizes">规格参数</div>
               <div style="background-color: #979797;height: 4px;width: 100%;opacity: 0.14;margin-top: 20px;"></div>
-              <div class="flex-ds" style="display: flex" v-for="(item,index) in details.arr">
+              <div class="flex-ds" style="display: flex" v-for="(item,index) in details.arr" :key="index">
                 <div class="border-right">{{item.name}}</div>
                 <div class="border-s">{{item.value}}</div>
               </div>
@@ -367,13 +367,13 @@ v-if="goodsDetails.arr.logo"
             <div class="seckill-desc" v-show="navIndex==2">
               <div class="sizes">售后服务</div>
               <div style="background-color: #979797;height: 4px;width: 100%;opacity: 0.14;margin-top: 20px;"></div>
-              <div class="flex-ds" style="display: flex" v-for="(item,index) in goodsDetails.arr.service">
+              <div class="flex-ds" style="display: flex" v-for="(item,index) in goodsDetails.arr.service" :key="index">
                 <div class="border-right">{{item.name}}</div>
                 <div class="border-s">{{item.value}}</div>
               </div>
             </div>
             <div>
-              <div class="seckill-lists" v-for="item in goods_evals_list.arr" v-show="navIndex==3">
+              <div class="seckill-lists" v-for="(item,index) in goods_evals_list.arr" v-show="navIndex==3" :key="index">
                 <div class="user-left">
                   <div class="user-infos">
                     <div class="user-avatar">
@@ -401,12 +401,9 @@ v-if="goodsDetails.arr.logo"
   <Footer/>
 </template>
 <script setup>
-let isInstallFlag=ref(true);
-// 移出输入框计算组合搭配的价格
 import { useRouter } from 'vue-router'
 import { provide, reactive, ref, onMounted, onUnmounted,watch  } from 'vue'
 import indexHeaders from '@/components/Index/indexHeaders.vue'
-const shopFlag=ref(true)
 import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
 import RightSliderBar from '@/components/Index/RightSliderBar.vue'
 import CountDate from '@/components/Index/CountDate.vue'
@@ -435,6 +432,11 @@ import {
 import {detailTime, getUrlParams2, rouseService, serviceOpen} from '@/utils'
 import { useUserStore } from '@/store/modules/user'
 import { router } from '@/router'
+let isInstallFlag=ref(true);
+// 移出输入框计算组合搭配的价格
+
+const shopFlag=ref(true)
+
 const inputBlurZh = (res) => {
   getZjAmount(goods_sku_id.value, zhNums.value, zhNumsInstall.value)
   updatePrice()
@@ -1295,15 +1297,16 @@ const ruleChange = (index, item, items) => {
           padding: 0 18px;
           color: #999;
         }
-        .seckill-name{
-        }
+        // .seckill-name{
+        // }
       }
     }
   }
 
 }
 /deep/ .sums .el-input{
-  height: 22px;
+  height: 20px;
+  line-height: 20px;
 }
 .rules{
   display: flex;
@@ -1315,7 +1318,8 @@ const ruleChange = (index, item, items) => {
   border: none;
   background: #fff;
   text-align: center;
-  height: 24px;
+  height: 20px;
+  line-height: 20px;
   // width: 32px;
   padding: 0 0 0 0;
 }
@@ -1487,11 +1491,11 @@ const ruleChange = (index, item, items) => {
           .add{
             cursor: pointer;
             width: 22px;
-            height: 22px;
+            height: 20px;
             background: #FFFFFF;
             border-radius: 2px;
             border: 1px solid #EFEFEF;
-            line-height: 22px;
+            line-height: 20px;
             img{
               width: 11px;
               height: 11px;
@@ -1501,11 +1505,11 @@ const ruleChange = (index, item, items) => {
           .del{
             cursor: pointer;
             width: 22px;
-            height: 22px;
+            height: 20px;
             background: #FFFFFF;
             border-radius: 2px;
             border: 1px solid #EFEFEF;
-            line-height: 22px;
+            line-height: 20px;
             img{
               width: 11px;
               height: 11px;

+ 12 - 11
src/view/goods/goodsList/index.vue

@@ -17,7 +17,7 @@
         </div>
       </div>
       <div class="screen">
-        <div class="screen-list" @click="screenTaps(index)" :class="screenIndex === index?'screenStyle':''" v-for="(item,index) in screenList">
+        <div class="screen-list" @click="screenTaps(index)" :class="screenIndex === index?'screenStyle':''" v-for="(item,index) in screenList" :key="index">
           {{item.name}}
         </div>
        <div style="cursor: pointer" @click="clickTaps">
@@ -28,7 +28,7 @@
       <div class="goods-contents">
 
         <div v-if="goodsList.arr!=''" class="flex-s">
-         <div class="goods-lists"   @click="routeTap('/goodsDetail',item.id)"  v-for="(item,index) in goodsList.arr">
+         <div class="goods-lists"   @click="routeTap('/goodsDetail',item.id)"  v-for="(item,index) in goodsList.arr" :key="index">
            <div class="goods-img">
              <img :src="item.logo[0]">
            </div>
@@ -65,6 +65,16 @@
 </template>
 
 <script setup>
+import {onUpdated, provide, reactive, ref,onMounted} from 'vue'
+import indexHeaders from '@/components/Index/indexHeaders.vue'
+
+import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
+import RightSliderBar from '@/components/Index/RightSliderBar.vue'
+import CountDate from '@/components/Index/CountDate.vue'
+import Footer from '@/components/Tool/Footer.vue'
+import {goodsLists, user_lsp} from "@/api/menu1";
+import {useRouter} from "vue-router";
+import {getUrlParams2} from "@/utils";
 const routeTap=(url,id)=>{
   $router.push({path:url,query:{id:id}})
 }
@@ -89,16 +99,7 @@ const handleCurrentChange=(size)=>{
   page.value=size
   goodsList_s()
 }
-import {onUpdated, provide, reactive, ref,onMounted} from 'vue'
-import indexHeaders from '@/components/Index/indexHeaders.vue'
 
-import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
-import RightSliderBar from '@/components/Index/RightSliderBar.vue'
-import CountDate from '@/components/Index/CountDate.vue'
-import Footer from '@/components/Tool/Footer.vue'
-import {goodsLists, user_lsp} from "@/api/menu1";
-import {useRouter} from "vue-router";
-import {getUrlParams2} from "@/utils";
 const goodsName = ref('')
 const screenIndex = ref(0)
 const goodsList =reactive({

+ 31 - 15
src/view/goods/hotSellRank/index.vue

@@ -21,10 +21,10 @@
         <div style="height: 50px"></div>
 
         <div class="goods-content">
-         <div class="goods-lists" @click="routeTap('/goodsDetail',item.id)" v-for="(item,index) in seckillList.arr">
-           <div  v-if="index<3">
-             <div class="goods-bg" style="margin-top: -80px">
-               <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/goods-bg.png">
+         <div class="goods-lists" @click="routeTap('/goodsDetail',item.id)" v-for="(item,index) in seckillList.arr" :key="index">
+           <div  v-if="index<3" style="position: relative">
+             <div class="goods-bg">
+               <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/310/goods-bg.png">
              </div>
              <div class="goods-img">
                <img :src="item.logo[0]" alt="">
@@ -106,11 +106,13 @@ if(localStorage.getItem('USER__INFO__')){
   text-align: center;
   margin-bottom: 350px;
   .goods-content{
-    margin: 280px auto 0 auto;
+    margin: 280px auto 0;
     display: flex;
     justify-content: center;
-    background: url("http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/hotel-goods-bg.png")no-repeat;
+    background: url("http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/hotel-goods-bg.png") no-repeat;
+    background-size: 100%;
     width: 1424px;
+
     height: 667px;
     align-items: center;
     .goods-lists:nth-child(3){
@@ -119,11 +121,25 @@ if(localStorage.getItem('USER__INFO__')){
     .goods-lists{
       cursor: pointer;
       .goods-text{
-        position: relative;
+        background: url('http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/310/goods-bottom.png') no-repeat;
+        background-size: 100%;
+        // position: relative;
         z-index: 111;
-        margin-top:62px;
+        // margin-top:25px;
+        height: 185px;
+        box-sizing: border-box;
+        padding: 27px 0;
         .goods-price{
+          background: url('http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/310/goods-btn.png') no-repeat;
+          background-size: 100%;
           line-height: 40px;
+          display: flex;
+          color: #FEF1EA;
+          margin: 27px 23px;
+          // height: 98px;
+          box-sizing: border-box;
+          padding: 16px 10px;
+          // margin: 33px 0 0 40px;
           .money{
             font-size: 36px;
             font-weight: 600;
@@ -146,9 +162,7 @@ if(localStorage.getItem('USER__INFO__')){
             font-size: 16px;
 
           }
-          display: flex;
-          color: #FEF1EA;
-          margin: 33px 0 0 40px;
+         
         }
         .goods-name{
           color: #FE6260;
@@ -159,9 +173,11 @@ if(localStorage.getItem('USER__INFO__')){
         }
       }
       .goods-img{
-        position: relative;
+        position: absolute;
+        top: 80px;
+        left: 40px;
         z-index: 1;
-        margin-top: 80px;
+        // margin-top: 80px;
         img{
           width: 270px;
           height: 270px;
@@ -173,10 +189,10 @@ if(localStorage.getItem('USER__INFO__')){
       position: relative;
       margin-right: 70px;
       .goods-bg{
-        position: absolute;
+        // position: absolute;
         img{
           width: 364px;
-          height: 561px;
+          // height: 561px;
         }
       }
     }

+ 11 - 10
src/view/goods/seckillGoods/index.vue

@@ -16,7 +16,7 @@
             </div>
             <div class="content-s">
               <div class="style-s" :style="{ transform: `translateX(${-goodsIndex * 140}px)` }">
-                <div class="goods-change-list" v-for="(item,index) in goodsList">
+                <div class="goods-change-list" v-for="(item,index) in goodsList" :key="index">
                   <div class="goods-width">
                     <img :src="item.src" alt="">
                   </div>
@@ -46,7 +46,7 @@
           </div>
           <div class="goods-brand border-bottom bottom15" style="margin-bottom: 0">
             <div class="goods-brand-text" style="margin-top: 12px">版本</div>
-            <div class="goods-brand-rules" :class="ruleIndex===index?'border':''" @click="ruleChange(index)" v-for="(item,index) in ruleList">
+            <div class="goods-brand-rules" :class="ruleIndex===index?'border':''" @click="ruleChange(index)" v-for="(item,index) in ruleList" :key="index">
               <div>{{item.name}}</div>
             </div>
           </div>
@@ -185,19 +185,19 @@
                 <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/change-text.png">
               </div>
             </div>
-            <div class="seckill-list" v-for="(item,index) in parts"   @click="changeFatherClick(index)" >
+            <div class="seckill-list" v-for="(item,index) in parts"   @click="changeFatherClick(index)" :key="index">
               <div class="flex-s" :class="item.flag?'seckill-colors':''">
                 <div class="seckill-name">{{item.name}}</div>
                 <div>{{item.flag?'-':'+'}}</div>
               </div>
-              <div v-for="(items,indexs) in item.children" v-if="item.flag" @click.stop="changeClick(index,indexs)">
+              <div v-for="(items,indexs) in item.children" v-if="item.flag" @click.stop="changeClick(index,indexs)" :key="indexs">
                 <div class="flex-s">
                   <div class="seckill-name">{{ items.name }}</div>
                   <div>{{items.flag?'-':'+'}}</div>
                 </div>
                 <div style="margin: 12px 0">
 
-                  <div class="seckill-width" v-for="(itemss,indexss) in items.children" v-show="items.flag" @click="changeChildrenClick()" >
+                  <div class="seckill-width" v-for="(itemss,indexss) in items.children" v-show="items.flag" @click="changeChildrenClick()" :key="indexss">
                     <div class="seckill-name">  {{items.children.name}}</div>
                   </div>
                 </div>
@@ -225,7 +225,7 @@
         </div>
         <div class="seckill-rights">
           <div class="seckill-nav">
-              <div v-for="(item,index) in navTap" @click="navIndex=index" :class="navIndex==index?'classStyle':''">
+              <div v-for="(item,index) in navTap" @click="navIndex=index" :class="navIndex==index?'classStyle':''" :key="index">
                 {{item}}
               </div>
           </div>
@@ -269,10 +269,6 @@
 //记录访问次数
 import {user_lsp} from "@/api/menu1";
 
-if(localStorage.getItem('USER__INFO__')){
-  user_lsp().then((res)=>{
-  })
-}
 import { provide, reactive, ref } from 'vue'
 import indexHeaders from '@/components/Index/indexHeaders.vue'
 
@@ -289,6 +285,11 @@ import 'swiper/css/navigation' // 轮播图两边的左右箭头
 import 'swiper/css/scrollbar'  // 轮播图的滚动条
 // 引入swiper核心和所需模块
 import { Autoplay, Pagination, Navigation, Scrollbar } from 'swiper'
+
+if(localStorage.getItem('USER__INFO__')){
+  user_lsp().then((res)=>{
+  })
+}
 // 在modules加入要使用的模块
 const modules = [Autoplay, Pagination, Navigation, Scrollbar]
 let changeIndex=ref(null)

+ 22 - 13
src/view/goods/seckillRank/index.vue

@@ -27,7 +27,7 @@
         </div>
         <div class="goods-content">
 
-          <div class="goods-lists" @click="routeTap('/goodsDetail',item.id)" v-for="(item,index) in seckillLists.arr" >
+          <div class="goods-lists" @click="routeTap('/goodsDetail',item.id)" v-for="(item,index) in seckillLists.arr" :key="index">
             <div v-if="index<3">
               <div class="goods-bg" style="margin-top: -80px">
                 <img :src="item.src">
@@ -58,11 +58,8 @@
   <Footer/>
 </template>
 
-<script setup>//记录访问次数
-if(localStorage.getItem('USER__INFO__')){
-  user_lsp().then((res)=>{
-  })
-}
+<script setup>
+
 import { provide, reactive, ref ,onMounted} from 'vue'
 import indexHeaders from '@/components/Index/indexHeaders.vue'
 import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
@@ -81,6 +78,11 @@ import { Autoplay, Pagination, Navigation, Scrollbar } from 'swiper'
 import {killGoods, user_lsp} from "@/api/menu1";
 import {detailTime} from "@/utils";
 import {useRouter} from "vue-router";
+//记录访问次数
+if(localStorage.getItem('USER__INFO__')){
+  user_lsp().then((res)=>{
+  })
+}
 // 在modules加入要使用的模块
 const modules = [Autoplay, Pagination, Navigation, Scrollbar]
 const currentChange = ref(0)
@@ -96,9 +98,9 @@ const seckillList =[
   { id: '2', src: 'http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-bg2.png' ,goods: 'http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-bg.png'},
   { id: '3', src: 'http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-bg3.png' ,goods: 'http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-bg.png'}
 ]
-const arrayList=["http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-goods.png"
-  ,"http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-bg3.png",
-  "http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-bg2.png"]
+const arrayList=["http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/310/seckill-goods .png"
+  ,"http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/310/seckill-bg3.png",
+  "http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/310/seckill-bg2.png"]
 const seckillLists=reactive({
   arr:[]
 })
@@ -115,7 +117,7 @@ const kill_goods=()=>{
         if(res.data.goods.length==2){
           console.error(111)
           res.data.goods[0].src=arrayList[0]
-          res.data.goods[1].src=arrayList[2]
+          res.data.goods[1].src=arrayList[1]
         }
         if(res.data.goods.length==3){
           res.data.goods[0].src=arrayList[0]
@@ -168,6 +170,15 @@ const routeTap=(url,id)=>{
         margin-top:10px;
         cursor: pointer;
         .goods-price{
+          background: url('http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/310/seckill-btn.png') no-repeat;
+          background-size: 100%;
+          display: flex;
+          color: #F479B9;
+          margin: 27px 46px;
+          height: 98px;
+          box-sizing: border-box;
+          padding: 16px 28px;
+          // margin: 55px 0 0 70px;
           .money{
             font-size: 36px;
             font-weight: 600;
@@ -183,9 +194,7 @@ const routeTap=(url,id)=>{
               text-decoration: line-through;
             }
           }
-          display: flex;
-          color: #F479B9;
-          margin: 55px 0 0 70px;
+          
         }
         .goods-name{
           color: #F479B9;

+ 7 - 6
src/view/guide/afterSale/index.vue

@@ -5,7 +5,7 @@
     </div>
     <div class="register">
       <div class="register-left">
-        <div class="register-list" @click="clickTap(item.id)" :class="guideIndex==item.id?'colorStyle':''" v-for="(item,index) in guide">
+        <div class="register-list" @click="clickTap(item.id)" :class="guideIndex==item.id?'colorStyle':''" v-for="(item,index) in guide" :key="index">
             {{item.name}}
         </div>
       </div>
@@ -35,11 +35,7 @@
 </template>
 
 <script setup>
-//记录访问次数
-if(localStorage.getItem('USER__INFO__')){
-  user_lsp().then((res)=>{
-  })
-}
+
 import {onMounted, provide, reactive, ref,onBeforeMount,onUpdated} from 'vue'
 import indexHeaders from '@/components/Index/indexHeaders.vue'
 
@@ -50,6 +46,11 @@ import Footer from '@/components/Tool/Footer.vue'
 import {getUrlParams2} from "@/utils";
 import {useRouter} from "vue-router";
 import {showDetails, user_lsp} from "@/api/menu1";
+//记录访问次数
+if(localStorage.getItem('USER__INFO__')){
+  user_lsp().then((res)=>{
+  })
+}
 let guideId=ref('')
 let content=ref('')
 const guide =[

+ 7 - 6
src/view/guide/register/index.vue

@@ -5,7 +5,7 @@
     </div>
     <div class="register">
       <div class="register-left">
-        <div class="register-list" @click="clickTap(index)" :class="guideIndex==index?'colorStyle':''" v-for="(item,index) in guide">
+        <div class="register-list" @click="clickTap(index)" :class="guideIndex==index?'colorStyle':''" v-for="(item,index) in guide" :key="index">
             {{item}}
         </div>
       </div>
@@ -39,11 +39,7 @@
 </template>
 
 <script setup>
-//记录访问次数
-if(localStorage.getItem('USER__INFO__')){
-  user_lsp().then((res)=>{
-  })
-}
+
 import {onMounted, onUpdated, provide, reactive, ref} from 'vue'
 import indexHeaders from '@/components/Index/indexHeaders.vue'
 
@@ -54,6 +50,11 @@ import Footer from '@/components/Tool/Footer.vue'
 import {getUrlParams2} from "@/utils";
 import {useRouter} from "vue-router";
 import {showDetails, user_lsp} from "@/api/menu1";
+//记录访问次数
+if(localStorage.getItem('USER__INFO__')){
+  user_lsp().then((res)=>{
+  })
+}
 const guide = ref(['关于屏酷','注册/登录','账号管理'])
 let guideIndex =ref(0)
 let content=ref('')

+ 1 - 1
src/view/guide/shopping/index.vue

@@ -5,7 +5,7 @@
     </div>
     <div class="register">
       <div class="register-left">
-        <div class="register-list" @click="clickTap(item.id)" :class="guideIndex==item.id?'colorStyle':''" v-for="(item,index) in guide">
+        <div class="register-list" @click="clickTap(item.id)" :class="guideIndex==item.id?'colorStyle':''" v-for="(item,index) in guide" :key="index">
             {{item.name}}
         </div>
       </div>

+ 5 - 4
src/view/index/index.vue

@@ -11,7 +11,7 @@
       </a>
     </div>
     <div>
-      <indexHeader ref="ChildsDom"/>
+      <indexHeaders ref="ChildsDom"/>
     </div>
     <div class="index-center" ref="scrollRef" >
 
@@ -282,7 +282,7 @@ const bottomUrls=(url,name)=>{
   window.location.href=urls
 }
 import { provide, reactive, ref ,onMounted,watch,onDeactivated,onActivated,onUnmounted,} from 'vue'
-import indexHeader from '@/components/Index/indexHeader.vue'
+import indexHeaders from '@/components/Index/indexHeaders.vue'
 
 import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
 import RightSliderBar from '@/components/Index/RightSliderBar.vue'
@@ -836,7 +836,7 @@ const routesTap=(url,id)=>{
     //align-items: flex-end;
     display: flex;
 
-    width: 800px;
+    // width: 800px;
     // display: flex;
     position: absolute;
     left: 260px;
@@ -1207,10 +1207,11 @@ const routesTap=(url,id)=>{
       }
       .index-userInfo{
         display: flex;
+        align-items: center;
         .index-user-text{
           color: #999;
           font-size: 16px;
-          margin: 15px 0 0 15px;
+          margin: 0 0 0 15px;
         }
         .user-avatar{
           image{

+ 1 - 1
src/view/publicity/cloundPlatform/index.vue

@@ -37,7 +37,7 @@
         </swiper>
       </div>
       <div class="repeat-bg2">
-        <img src="@/assets/img/clound/clound7.jpg">
+        <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/310/clound7.png">
         <div class="content-s" style="padding-top: 160px">
           <div class="bg-colors">
             <div style="font-size: 30px">{{ indexPage.b.title }}</div>

+ 1 - 1
src/view/publicity/financial/index.vue

@@ -119,7 +119,7 @@
           {{ bottomPage.title }}
         </div>
         <div class="product-desc">{{ bottomPage.title_en }}</div>
-        <div class="product-into-content" style="padding-left: 230px;width: 1420px">
+        <div class="product-into-content" style="padding:0 230px;">
           <div class="product-img" v-for="item in bottomPage.list">
             <div class="product-imgs">
               <img :src="item.image" alt="">

+ 1 - 1
src/view/publicity/gallery/index.vue

@@ -120,7 +120,7 @@
           {{ bottomPage.title }}
         </div>
         <div class="product-desc">{{ bottomPage.title_en }}</div>
-        <div class="product-into-content" style="padding-left: 230px;width: 1420px">
+        <div class="product-into-content"  style="padding:0 230px;">
           <div class="product-img" v-for="item in bottomPage.list">
             <div class="product-imgs">
               <img :src="item.image" alt="">

+ 1 - 1
src/view/publicity/medical/index.vue

@@ -146,7 +146,7 @@
           {{ bottomPage.title }}
         </div>
         <div class="product-desc">{{ bottomPage.title_en }}</div>
-        <div class="product-into-content" style="padding-left: 230px;width: 1420px">
+        <div class="product-into-content" style="padding:0 230px;">
           <div class="product-img" v-for="item in bottomPage.list">
             <div class="product-imgs">
               <img :src="item.image" alt="">

+ 4 - 2
src/view/publicity/product/index.vue

@@ -115,7 +115,7 @@
           {{ bottomPage.title }}
         </div>
         <div class="product-desc">{{ bottomPage.title_en }}</div>
-        <div class="product-into-content" style="padding-left: 230px;width: 1420px">
+        <div class="product-into-content" style="padding:0 230px;">
           <div class="product-img" v-for="item in bottomPage.list">
             <div class="product-imgs">
               <img :src="item.image" alt="">
@@ -372,7 +372,7 @@ const pauseAll=(index)=>{
         display: flex;
         justify-content: center;
         .product-views{
-          width: 180px;
+          // width: 180px;
           height: 50px;
           background: #F0F2F5;
           border-radius: 2px;
@@ -382,6 +382,8 @@ const pauseAll=(index)=>{
           cursor: pointer;
           color: #999999;
           box-sizing: border-box;
+          white-space: nowrap;
+          padding: 0 50px;
         }
         .productStyle{
           background: #FFFFFF;

+ 1 - 1
src/view/publicity/repast/index.vue

@@ -133,7 +133,7 @@
           {{ bottomPage.title }}
         </div>
         <div class="product-desc">{{ bottomPage.title_en }}</div>
-        <div class="product-into-content" style="padding-left: 230px;width: 1500px">
+        <div class="product-into-content" style="padding:0 230px;">
           <div class="product-img" v-for="item in bottomPage.list">
             <div class="product-imgs">
               <img :src="item.image" alt="">

+ 1 - 1
src/view/publicity/resale/index.vue

@@ -133,7 +133,7 @@
           {{ bottomPage.title }}
         </div>
         <div class="product-desc">{{ bottomPage.title_en }}</div>
-        <div class="product-into-content" style="padding-left: 230px;width: 1420px">
+        <div class="product-into-content" style="padding:0 230px;">
           <div class="product-img" v-for="item in bottomPage.list">
             <div class="product-imgs">
               <img :src="item.image" alt="">

+ 1 - 1
src/view/publicity/security/index.vue

@@ -133,7 +133,7 @@
           {{ bottomPage.title }}
         </div>
         <div class="product-desc">{{ bottomPage.title_en }}</div>
-        <div class="product-into-content" style="padding-left: 230px;width: 1420px">
+        <div class="product-into-content" style="padding:0 230px;">
           <div class="product-img" v-for="item in bottomPage.list">
             <div class="product-imgs">
               <img :src="item.image" alt="">

+ 1 - 1
src/view/serviceView/index.vue

@@ -6,7 +6,7 @@
     </div>
     <div class="register">
       <div class="register-left">
-        <CentreNav :navIndexs="3"/>
+        <CentreNav :navIndexs="4"/>
       </div>
       <div class="register-content">
         <div class="collect-tops">

+ 1 - 1
src/view/user/afterSale/index.vue

@@ -48,7 +48,7 @@
                 <div class="order-name overflow1">{{item.order_info.goods_name}}</div>
               </div>
               <div class="order-money color-s">¥{{item.order_info.amount_pay}}</div>
-              <div class="order-status order-money">¥{{item.amount}}</div>
+              <div class="order-status order-money">¥{{item.amount_last}}</div>
               <div @click="orderTaps(item.order_info.id)" class=" order-money " style="border-right: none;cursor: pointer;color: #999">
                 查看详情
               </div>

+ 13 - 0
src/view/user/evaluate/index.vue

@@ -114,6 +114,19 @@ const handleCurrentChange=(size)=>{
   page.value=size
   siteLists()
 }
+const siteLists=()=>{
+  let data={
+    type:nacIndex.value+1,
+    page:page.value,
+    limit:limit.value
+  }
+  get_eval_list(data).then((res)=>{
+    if(res.code==1){
+      evalList.arr=res.data.data
+      totalNumber.value=res.data.total
+    }
+  })
+}
 let content=ref('')
 import {inject, provide, reactive, ref,onMounted} from 'vue'
 import indexHeaders from '@/components/Index/indexHeaders.vue'

+ 15 - 14
src/view/user/invoiceManage/index.vue

@@ -314,6 +314,19 @@
 </template>
 
 <script setup>
+import {useI18n} from "@/hooks/web/useI18n";
+import {formRules} from "@/utils/config";
+import { provide, reactive, ref,onMounted } from 'vue'
+import CentreNav from '@/components/User/CentreNav.vue'
+import indexHeaders from '@/components/Index/indexHeaders.vue'
+import UserNav from '@/components/User/UserNav.vue'
+import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
+import RightSliderBar from '@/components/Index/RightSliderBar.vue'
+import CountDate from '@/components/Index/CountDate.vue'
+import Footer from '@/components/Tool/Footer.vue'
+import { ElMessage, ElMessageBox } from 'element-plus'
+import {detailTime, isLogin} from "@/utils";
+import {getUserTax, programme_del, user_lsp, user_tax_del, user_tax_list, user_tax_store} from "@/api/menu1";
 const clearForm=()=>{
   clearFrom();
   paper_type.value='1';
@@ -324,13 +337,11 @@ const clearForm=()=>{
 let readio1=ref(1)
 let invoiceFlags=ref(false)
 let btnFlag=ref(true)
-import {useI18n} from "@/hooks/web/useI18n";
 let texts=ref("新增发票")
 let invoiceId=ref('')
 const { t } = useI18n()
 let loginFormRef=ref('')
 //记录访问次数
-import {formRules} from "@/utils/config";
 const addInvoice=()=>{
   invoiceFlag.value=true;
   texts.value='新增发票';
@@ -411,7 +422,7 @@ const rules = {
   bankName: [{ required: true, message: t('home.login.form.cardBankRequired'), trigger: 'blur' }],
   bankNo: [{ required: true, message: t('home.login.form.cardBankAdminRequired'), trigger: 'blur' }],
   taxNo: [{ required: true, message: t('home.login.form.cardNumberRequired'), trigger: 'blur' }],
-  regPhone:formRules('cellPhone'),
+  regPhone:formRules('must'),
   regAddr:[{ required: true, message: t('home.login.form.addressRequired'), trigger: 'blur' }],
   id:'',
 }
@@ -485,17 +496,7 @@ const handleCurrentChange=(size)=>{
   page.value=size
   getUserTaxs()
 }
-import { provide, reactive, ref,onMounted } from 'vue'
-import CentreNav from '@/components/User/CentreNav.vue'
-import indexHeaders from '@/components/Index/indexHeaders.vue'
-import UserNav from '@/components/User/UserNav.vue'
-import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
-import RightSliderBar from '@/components/Index/RightSliderBar.vue'
-import CountDate from '@/components/Index/CountDate.vue'
-import Footer from '@/components/Tool/Footer.vue'
-import { ElMessage, ElMessageBox } from 'element-plus'
-import {detailTime, isLogin} from "@/utils";
-import {getUserTax, programme_del, user_lsp, user_tax_del, user_tax_list, user_tax_store} from "@/api/menu1";
+
 const guide = ref(['资讯中心'])
 let guideIndex =ref(0)
 const evaluateNav = ref(['全部订单','待付款','待收货','已完成'])

+ 33 - 30
src/view/user/order/detail/index.vue

@@ -72,7 +72,7 @@
     </el-dialog>
     <el-dialog class="address" :show-close="true" center v-model="addressSel" title="选择地址">
       <div class="address-sels">
-        <div class="address-views" v-for="(item,index) in addressList.arr " @click="checks(item,index)">
+        <div class="address-views" v-for="(item,index) in addressList.arr " @click="checks(item,index)" :key="index">
           <div class="sel">
             <div class="check" v-if="!item.check">
 
@@ -116,7 +116,7 @@
               </el-button>
               <template #dropdown>
                 <el-dropdown-menu>
-					<div v-for="item in lists.arr.refund_type">
+					<div v-for="(item,index) in lists.arr.refund_type" :key="index">
 					  <el-dropdown-item :command="item">{{ item.value }}</el-dropdown-item>
 					</div>
                   <!-- <el-dropdown-item command="退款">退款</el-dropdown-item> -->
@@ -169,7 +169,7 @@
 			      <template #dropdown>
 
 			        <el-dropdown-menu>
-			          <div v-for="item in lists.arr.type[indexs]">
+			          <div v-for="(item,index) in lists.arr.type[indexs]" :key="index">
 			            <el-dropdown-item :command="item">{{ item }}</el-dropdown-item>
 			          </div>
 
@@ -187,7 +187,7 @@
 			        <el-dropdown-menu>
 
 
-			  				  <div v-for="item in lists.arr.reason">
+			  				  <div v-for="(item,index) in lists.arr.reason" :key="index">
 			  				    <el-dropdown-item :command="item">{{ item.value }}</el-dropdown-item>
 			  				  </div>
 			        </el-dropdown-menu>
@@ -333,7 +333,7 @@
           <div>小计</div>
           <div>操作</div>
         </div>
-        <div class="order-lists" v-for="(item,index) in order.info ">
+        <div class="order-lists" v-for="(item,index) in order.info " :key="index">
           <div class="order-img">
             <img :src="item.logo" alt="">
           </div>
@@ -442,6 +442,32 @@
 </template>
 
 <script setup>
+import {getStore} from "@/utils/storage";
+import {useRouter} from "vue-router";
+import {formRules} from "@/utils/config";
+import { ElMessage, ElMessageBox } from 'element-plus'
+import { provide, reactive, ref,onMounted } from 'vue'
+import CentreNav from '@/components/User/CentreNav.vue'
+import indexHeaders from '@/components/Index/indexHeaders.vue'
+
+import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
+import RightSliderBar from '@/components/Index/RightSliderBar.vue'
+import CountDate from '@/components/Index/CountDate.vue'
+import Footer from '@/components/Tool/Footer.vue'
+import {detailTime, getUrlParams2, isLogin, rouseService} from "@/utils";
+import {
+  address_list,
+  agreement,
+  cancel_order,
+  commit, get_area,
+  logistics_order,
+  order_refund,
+  orderDetail,
+  refund,
+  refund_cancel, user_address_controller,
+  user_lsp
+} from "@/api/menu1";
+import {router} from "@/router";
 const dates=(value)=>{
   var data = new Date(value);
   var month =data.getMonth() < 9 ? "0" + (data.getMonth() + 1) : data.getMonth() + 1;
@@ -503,7 +529,6 @@ const selectAddress = () => {
 const area = reactive({
   arr: []
 })
-import {getStore} from "@/utils/storage";
 get_area().then((res) => {
   area.arr = res.data
 })
@@ -632,7 +657,6 @@ const countPrice=(...item)=>{
 }
 
 //记录访问次数
-import {useRouter} from "vue-router";
 
 const txImg=ref('')
 if(localStorage.getItem('USER__INFO__')){
@@ -771,7 +795,6 @@ const Clears=()=>{
   changeFlag.value=false
   checkFlag_s.value=false
 }
-import {formRules} from "@/utils/config";
 let goodsNum=ref(0) //商品单价
 let goodsNumInstall=ref(0) //数量单价
 let returnText=ref('请选择售后方式')
@@ -923,7 +946,6 @@ const routeTaps=(url,id)=>{
   router.push("/user/order/list")
 }
 let returnFlag=ref(false)
-import { ElMessage, ElMessageBox } from 'element-plus'
 const goodsTaps=(id)=>{
 	const $router = useRouter()
 	const routeUrl = router.resolve({
@@ -1028,28 +1050,7 @@ const cancels=(id)=>{
 onMounted(()=>{
   addressLists();
 })
-import { provide, reactive, ref,onMounted } from 'vue'
-import CentreNav from '@/components/User/CentreNav.vue'
-import indexHeaders from '@/components/Index/indexHeaders.vue'
 
-import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
-import RightSliderBar from '@/components/Index/RightSliderBar.vue'
-import CountDate from '@/components/Index/CountDate.vue'
-import Footer from '@/components/Tool/Footer.vue'
-import {detailTime, getUrlParams2, isLogin, rouseService} from "@/utils";
-import {
-  address_list,
-  agreement,
-  cancel_order,
-  commit, get_area,
-  logistics_order,
-  order_refund,
-  orderDetail,
-  refund,
-  refund_cancel, user_address_controller,
-  user_lsp
-} from "@/api/menu1";
-import {router} from "@/router";
 const newsList =[
   { id: '1', src: 'http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-goods.png' ,goods: 'http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-bg.png' },
   { id: '2', src: 'http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-bg2.png' ,goods: 'http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/seckill-bg.png'},
@@ -1070,6 +1071,8 @@ const pay= {
   "4" : '银联',
   "5" : '代付',
   "6" : '线下支付',
+  "7" : '工银U盾保留支付',
+  "8" : '工银U盾直接支付',
 }
 let logistics=reactive({
 	arr:[]

+ 22 - 22
src/view/user/order/list/index.vue

@@ -27,7 +27,7 @@
         </div>
 
         <div class="evaluate-nav">
-          <div class="evaluate-nav-view" :data-id="index" @click="clickTap(index,item.id)" v-for="(item,index) in evaluateNav">
+          <div class="evaluate-nav-view" :data-id="index" @click="clickTap(index,item.id)" v-for="(item,index) in evaluateNav" :key="index">
             <div>{{item.name}}</div>
             <div class="line" v-show="nacIndex==index"></div>
           </div>
@@ -47,7 +47,7 @@
           <div>暂无订单信息</div>
         </div>
         <div style="height:20px"></div>
-        <div  v-for="(item,index) in newsList.arr" >
+        <div  v-for="(item,index) in newsList.arr" :key="index">
           <div class="list" @click="details(item.id)" v-if="item.info[0]">
             <div >
               <div class="list-tops">
@@ -120,9 +120,7 @@
                 <text style="float: right;margin-right: 30px;color: #333;cursor: pointer" @click.stop="openMap(item.id)">查看轨迹</text>
 
                 </div>
-                <div class="logiFlexs" v-for="(item,index) in logistics.arr" v-if="logistics.arr!='' &&
- logistics.arr.length>1
-">
+                <div class="logiFlexs" v-for="(item,index) in logistics.arr" v-if="logistics.arr!='' && logistics.arr.length>1" :key="index">
                   <div style="display: flex;padding-bottom: 5px" >
                     <div class="border-s color-ss" v-if="index==0"></div>
                     <div class="border-s " v-else></div>
@@ -165,22 +163,6 @@
 </template>
 
 <script setup>
-let logistics=reactive({
-  arr:[]
-})
-let userlogistics=reactive({
-  arr:[]
-})
-//记录访问次数
-if(localStorage.getItem('USER__INFO__')){
-  user_lsp().then((res)=>{
-  })
-}
-let refs=ref([
-  {"content":"快件到达【山东省临沂市兰山区】","time":"2022-11-12 10:19:00"},
-  {"content":"快件到达【山东省临沂市兰山区】","time":"2022-11-12 10:19:00"}
-])
-let expressFlag=ref(false)
 import { provide, reactive, ref,onMounted} from 'vue'
 import CentreNav from '@/components/User/CentreNav.vue'
 import indexHeaders from '@/components/Index/indexHeaders.vue'
@@ -202,6 +184,25 @@ import {
 } from "@/api/menu1";
 import {useRouter} from "vue-router";
 import {router} from "@/router";
+import { ElMessage, ElMessageBox } from 'element-plus'
+
+let logistics=reactive({
+  arr:[]
+})
+let userlogistics=reactive({
+  arr:[]
+})
+//记录访问次数
+if(localStorage.getItem('USER__INFO__')){
+  user_lsp().then((res)=>{
+  })
+}
+let refs=ref([
+  {"content":"快件到达【山东省临沂市兰山区】","time":"2022-11-12 10:19:00"},
+  {"content":"快件到达【山东省临沂市兰山区】","time":"2022-11-12 10:19:00"}
+])
+let expressFlag=ref(false)
+
 const guide = ref(['资讯中心'])
 let page=ref(1)
 let limit=ref(10)
@@ -333,7 +334,6 @@ const handleCurrentChange=(size)=>{
   page.value=size
   orderLists()
 }
-import { ElMessage, ElMessageBox } from 'element-plus'
 let nacIndex = ref(0)
 const clickTap = (index,id) =>{
   expressFlag.value=false;

+ 53 - 38
src/view/user/order/pay/index.vue

@@ -161,7 +161,7 @@
             </div>
             <div class="invoice-from" v-if="invoiceIndex!=2 && flags">
               <div class="invoiceSource">
-                <div class="source" v-for="(item,index) in invoiceSource" @click="sourceIndex=index;clearIndex()" :class="sourceIndex==index?'colorStyle':''">
+                <div class="source" v-for="(item,index) in invoiceSource" @click="sourceIndex=index;clearIndex()" :class="sourceIndex==index?'colorStyle':''" :key="index">
                   {{item}}
                 </div>
                 <div class="source-right">
@@ -170,7 +170,7 @@
               </div>
               <div class="invoiceSource">
                 <div class="name">发票类型:</div>
-                <div class="source" v-for="(item,index) in invoiceType" @click="typeIndex=index;clearIndex()" :class="typeIndex==index?'colorStyle':''">
+                <div class="source" v-for="(item,index) in invoiceType" @click="typeIndex=index;clearIndex()" :class="typeIndex==index?'colorStyle':''" :key="index">
                   {{item}}
                 </div>
               </div>
@@ -239,7 +239,7 @@
               <div>小计</div>
             </div>
             <div class="shopping-contents">
-              <div class="shopping-lists" v-for="(item,index) in payOrder.arr.info">
+              <div class="shopping-lists" v-for="(item,index) in payOrder.arr.info" :key="index">
                 <div class="img" style="margin-left: 40px">
                   <img :src="item.goods.logo[0]" style="margin: 5px 0">
                   <div class="name overflow1">{{item.goods.name}};
@@ -329,7 +329,7 @@
           </div>
           <div class="submit-view">
             <div class="submit-name">付款方式:</div>
-            <div class="pay-list" @click="paySel(index)" v-for="(item,index) in payList" :class="payIndex==index?'payStyle':''">
+            <div class="pay-list" @click="paySel(index)" v-for="(item,index) in payList" :class="payIndex==index?'payStyle':''" :key="index">
               <div class="img">
                 <img :src="item.src">
               </div>
@@ -384,20 +384,21 @@
                 <div class="title">企业网银</div>
                 <div class="pay">应付金额<span class="money"> {{ payOrder.arr.amount_pay }}</span>元</div>
               </div>
-              <div class="center">
-                <div class="info">订单提交成功,请尽快付款!</div>
-                <div class="box">
+              <div class="center" style="display: flex;align-items: center;">
+                <div class="info" style="padding: 50px 20px">订单提交成功,请尽快付款!</div>
+                <!-- <div class="box">
                   <div class="view">
-                    <el-radio-group v-model="radio1" class="ml-4" @change="changeRadio">
+                    <el-radio-group v-model="set_radio" class="ml-4" @change="changeRadio">
                       <el-radio :label="1" size="large">直接支付</el-radio>
                       <el-radio :label="2" size="large">保留支付</el-radio>
                     </el-radio-group>
                   </div>
-                </div>
+                </div> -->
               </div>
             </div>
           </div>
-          <div v-if="payIndex==0" class="pay-s" @click="paySubmit()">立即支付</div>
+          <div v-if="payIndex==0 && !is_pay" class="pay-s" style="background: #e6e6e6">立即支付</div>
+          <div v-if="payIndex==0 && is_pay" class="pay-s" @click="paySubmit()">立即支付</div>
           <div v-if="payIndex==3" class="pay-s" @click="copyUrl()">复制链接</div>
           <div v-if="payIndex==4">
 
@@ -421,6 +422,24 @@
   <Footer/>
 </template>
 <script setup>
+import { useRouter } from 'vue-router'
+import { provide, reactive, ref,onMounted,onUnmounted } from 'vue'
+import UserNav from '@/components/User/UserNav.vue'
+import indexHeaders from '@/components/Index/indexHeaders.vue'
+import { ElMessage, ElMessageBox } from 'element-plus'
+
+import ShoppingCart from '@/components/User/ShoppingCart.vue'
+import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
+import RightSliderBar from '@/components/Index/RightSliderBar.vue'
+import CountDate from '@/components/Index/CountDate.vue'
+import Footer from '@/components/Tool/Footer.vue'
+import DynamicYzm from '@/components/form/DynamicYzm.vue'
+import {router} from "@/router";
+import {useI18n} from "@/hooks/web/useI18n";
+import {detailTime, getUrlParams2, isLogin} from "@/utils";
+import {orderDetail, payOrders, po_complete, upload_s, user_lsp} from "@/api/menu1";
+import {formRules} from "@/utils/config";
+import mitt from "mitt";
 const splices=(value)=>{
   let value1=value
   if(value){
@@ -462,29 +481,19 @@ if(localStorage.getItem('USER__INFO__')){
   user_lsp().then((res)=>{
   })
 }
-import { useRouter } from 'vue-router'
-import { provide, reactive, ref,onMounted,onUnmounted } from 'vue'
-import UserNav from '@/components/User/UserNav.vue'
-import indexHeaders from '@/components/Index/indexHeaders.vue'
 
-import ShoppingCart from '@/components/User/ShoppingCart.vue'
-import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
-import RightSliderBar from '@/components/Index/RightSliderBar.vue'
-import CountDate from '@/components/Index/CountDate.vue'
-import Footer from '@/components/Tool/Footer.vue'
-import DynamicYzm from '@/components/form/DynamicYzm.vue'
-import {router} from "@/router";
 const urlTap=ref('')
 const imageUrl=ref('')
 const flags=ref(false)
 const flag_s=ref(false)
-import { ElMessage, ElMessageBox } from 'element-plus'
 const addressFlags=ref(false)
 const loginFormRefss=ref('')
 const timer=ref(null)
 const m1=mitt();
-const radio1 = ref(1)
-const set_radio = ref(1)
+// const radio1 = ref(1)
+let set_radio = ref(1)
+let is_pay = ref(false)
+
 onUnmounted(()=>{
   clears()
 })
@@ -563,10 +572,13 @@ const addressTap=()=>{
 }
 const changeRadio=(e)=> {
   console.log(e)
-  set_radio = e
+  set_radio.value = e
+  is_pay.value = false
+  pay_order('',1);
 }
 const paySubmit=()=>{
-  window.location.href=urlTap.value.url
+  // window.location.href=urlTap.value.url
+  window.open(urlTap.value.url,"_blank");     
 }
 const uploads=()=>{
   let fd = new FormData();
@@ -610,7 +622,11 @@ const orderInfo=()=>{
 let info=ref('')
 
 const pay_order=(id,indexs)=>{
-  if(indexs == 1) {
+console.log('set_radio',set_radio.value)
+  if(indexs == 1 && set_radio.value == 1) {
+    indexs = 8
+  }
+  if(indexs == 1 && set_radio.value == 2) {
     indexs = 7
   }
   if(indexs == 5) {
@@ -625,11 +641,13 @@ const pay_order=(id,indexs)=>{
 	  console.error(res)
       if(res.code==1 &&res.data!=null){
         qrCode.qr=res.data
-        if(set_radio == 1) {
-          urlTap.value=res.data
-        } else {
-          urlTap.value=res.data
+        urlTap.value=res.data
+
+        if(set_radio.value == 1 || set_radio.value == 2) {
+          is_pay.value = true
         }
+        
+        // this.$forceUpdate();
         info.value=res.data
       }else if(res.code==1 &&res.data==null){
         qrCode.value=null
@@ -646,6 +664,7 @@ const FormState = reactive({
 })
 const paySel=(index)=>{
   payIndex.value=index;
+  is_pay.value = false
   pay_order('',index+1)
   setTimeout(()=>{
 	  if(payIndex.value==1 || payIndex.value==2){
@@ -682,11 +701,7 @@ const addressState = reactive({
   userName:'',
   userPhone:'',
 })
-import {useI18n} from "@/hooks/web/useI18n";
-import {detailTime, getUrlParams2, isLogin} from "@/utils";
-import {orderDetail, payOrders, po_complete, upload_s, user_lsp} from "@/api/menu1";
-import {formRules} from "@/utils/config";
-import mitt from "mitt";
+
 const invoice=['电子发票','纸质发票','不需要']
 const invoiceType=['个人','企业']
 const invoiceSource=['专票','普票']
@@ -882,9 +897,9 @@ isLogin()
     margin-bottom: 30px;
     margin-left:20px;
 
-    .coupon {
+    // .coupon {
 
-    }
+    // }
 
     .coupon-content {
       position: relative;

+ 55 - 48
src/view/user/order/submit/index.vue

@@ -274,12 +274,12 @@
       新增
     </div>
     <div style="display: flex;justify-content: center">
-      <div v-for="(item,index) in invoice" @click="invoiceIndex=index" class="submit-lable texts classStyles" style="width: 90px" :class="invoiceIndex==index?'boxStyle':''">
+      <div v-for="(item,index) in invoice" :key="index" @click="invoiceIndex=index" class="submit-lable texts classStyles" style="width: 90px" :class="invoiceIndex==index?'boxStyle':''">
         {{item}}
       </div>
     </div>
     <div class="address-sels">
-      <div class="address-views " style="justify-content: space-between" :class="checkIndex==index?'boxs':''" @click="checksTap(item,index)" v-for="(item,index) in invoiceList.arr">
+      <div class="address-views " style="justify-content: space-between" :class="checkIndex==index?'boxs':''" @click="checksTap(item,index)" v-for="(item,index) in invoiceList.arr" :key="index">
         <div class="sel">
           <div class="check" v-if="checkIndex!=index">
 
@@ -341,7 +341,7 @@
 	    <div>您暂无可用优惠券哦~</div>
 	  </div>
     <div class="list">
-      <div class="list-contents" v-for="(item,index) in priceOrder.arr.coupon">
+      <div class="list-contents" v-for="(item,index) in priceOrder.arr.coupon" :key="index">
 		<div v-if="item.type==2">
 			<div class="coupon">
 			  <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/coupon.png">
@@ -397,7 +397,7 @@
     </div>
 
     <div class="address-sels">
-        <div class="address-views" v-for="(item,index) in addressList.arr " @click="checks(item,index)">
+        <div class="address-views" v-for="(item,index) in addressList.arr " @click="checks(item,index)" :key="index">
           <div class="sel">
             <div class="check" v-if="!item.check">
 
@@ -460,8 +460,7 @@
                 <div class=" classStyle">物流</div>
   <!--              <div class="address submit-lable" @click="addressFlags=true" style="margin-left: 30px">新增地址</div>-->
                 <div class="color-s" style="margin-left: 50px;position: relative" v-if="user_address_flag">
-                  <div v-if="checkText" style="position: absolute;color: #fff;background-color: #dcdfe6;left:0;top:0;margin:-15px 0 0 -20px;border-radius: 12px;width: 45px;text-align: center;height: 20px;line-height: 20px;font-size: 14px;
-  " >默认</div>
+                  <div v-if="checkText" style="position: absolute;color: #fff;background-color: #dcdfe6;left:0;top:0;margin:-15px 0 0 -20px;border-radius: 12px;width: 45px;text-align: center;height: 20px;line-height: 20px;font-size: 14px;" >默认</div>
                   {{mineAddress}}
                 </div>
               </div>
@@ -695,6 +694,7 @@
 <!--          </div>-->
 
         </div>
+        
         <div class="shopping">
           <div class="shopping-title">
             <div>订单信息</div>
@@ -707,7 +707,7 @@
             <div>操作</div>
           </div>
           <div class="shopping-contents">
-            <div class="shopping-lists" v-for="(item,index) in goodsList.arr.goods">
+            <div class="shopping-lists" v-for="(item,index) in goodsList.arr.goods" :key="index">
               <div class="img">
                 <div class="checks" @click="check(item,index)" v-if="item.flag">
                   <img src="http://screen-test.zhousi.hdlkeji.com/aksdbn/img/goods/check.png">
@@ -773,6 +773,7 @@
               style="margin-bottom: 30px"
               v-model="value1"
               type="date"
+              format="YYYY/MM/DD"
               placeholder="选择发货时间"
               :disabled-date="disabledDate">
           </el-date-picker>
@@ -825,6 +826,30 @@
 
 <script setup>
 import {useI18n} from "@/hooks/web/useI18n";
+import { provide, reactive, ref,onMounted } from 'vue'
+import UserNav from '@/components/User/UserNav.vue'
+import indexHeaders from '@/components/Index/indexHeaders.vue'
+
+import ShoppingCart from '@/components/User/ShoppingCart.vue'
+import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
+import RightSliderBar from '@/components/Index/RightSliderBar.vue'
+import CountDate from '@/components/Index/CountDate.vue'
+import Footer from '@/components/Tool/Footer.vue'
+import DynamicYzm from '@/components/form/DynamicYzm.vue'
+import { useRouter } from 'vue-router'
+import { isLogin } from '@/utils'
+import {
+  address_list, amount_s,
+  creates, del_address,
+  get_area, getUserTax,
+  goods_coupon,
+  goods_update,
+  preview,
+  user_address_controller, user_lsp, user_tax_del, user_tax_list, user_tax_store
+} from '@/api/menu1'
+import { ElMessageBox, ElMessage } from 'element-plus'
+import { getStore } from '@/utils/storage'
+import { formRules } from '@/utils/config'
 const { t } = useI18n()
 /*
 *
@@ -980,7 +1005,7 @@ const rules1 = {
   bankName: [{ required: true, message: t('home.login.form.cardBankRequired'), trigger: 'blur' }],
   bankNo: [{ required: true, message: t('home.login.form.cardBankAdminRequired'), trigger: 'blur' }],
   taxNo: [{ required: true, message: t('home.login.form.cardNumberRequired'), trigger: 'blur' }],
-  regPhone:formRules('cellPhone'),
+  regPhone:formRules('must'),
   regAddr:[{ required: true, message: t('home.login.form.addressRequired'), trigger: 'blur' }],
   id:'',
 }
@@ -1002,15 +1027,15 @@ let is_defaults=ref(true)
 let startTime=ref(null)
 let userTime=ref('')
 const dates=(value)=>{
-  var data = new Date(value);
+  var data = new Date(value.replace(/-/g, '/'));
   var month =data.getMonth() < 9 ? "0" + (data.getMonth() + 1) : data.getMonth() + 1;
   var date = data.getDate() <= 9 ? "0" + data.getDate() : data.getDate();
-  return data.getFullYear() + "-" + month + "-" + date
+  return data.getFullYear() + "/" + month + "/" + date
 }
 const timestampToTime=(row, column)=> {
   var date = new Date(row); //时间戳为10位需*1000,时间戳为13位的话不需乘1000
-  let Y = date.getFullYear() + '-';
-  let M = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) + '-' : date.getMonth() + 1 + '-';
+  let Y = date.getFullYear() + '/';
+  let M = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) + '/' : date.getMonth() + 1 + '/';
   let D = date.getDate() < 10 ? '0' + date.getDate() + ' ' : date.getDate() + ' ';
   return Y + M + D;
 }
@@ -1027,18 +1052,7 @@ const disabledDate = (time) => {
 const value1=ref(false)
 const updateFlag=ref(false)
 // 记录访问次数
-import { provide, reactive, ref,onMounted } from 'vue'
-import UserNav from '@/components/User/UserNav.vue'
-import indexHeaders from '@/components/Index/indexHeaders.vue'
 
-import ShoppingCart from '@/components/User/ShoppingCart.vue'
-import LeftSliderBar from '@/components/Index/LeftSliderBar.vue'
-import RightSliderBar from '@/components/Index/RightSliderBar.vue'
-import CountDate from '@/components/Index/CountDate.vue'
-import Footer from '@/components/Tool/Footer.vue'
-import DynamicYzm from '@/components/form/DynamicYzm.vue'
-import { useRouter } from 'vue-router'
-import { isLogin } from '@/utils'
 const checkIndex=ref(0)
 const invoiceList=reactive({
 	arr:[]
@@ -1051,18 +1065,7 @@ onMounted(()=>{
   addressLists()
   invoiceList_s();
 })
-import {
-  address_list, amount_s,
-  creates, del_address,
-  get_area, getUserTax,
-  goods_coupon,
-  goods_update,
-  preview,
-  user_address_controller, user_lsp, user_tax_del, user_tax_list, user_tax_store
-} from '@/api/menu1'
-import { ElMessageBox, ElMessage } from 'element-plus'
-import { getStore } from '@/utils/storage'
-import { formRules } from '@/utils/config'
+
 if (localStorage.getItem('USER__INFO__')) {
   user_lsp().then((res) => {
   })
@@ -1566,7 +1569,7 @@ const rules = {
   addressDetail: [{ required: true, message: t('home.login.form.addressDetailRequired'), trigger: 'blur' }],
   userName: [{ required: true, message: t('home.login.form.userNameRequireds'), trigger: 'blur' }],
   userPhone: formRules('cellPhone'),
-  regPhone:formRules('cellPhone'),
+  regPhone:formRules('must'),
   regAddr:[{ required: true, message: t('home.login.form.addressRequired'), trigger: 'blur' }],
   cardNo:[{ required: true, message: t('home.login.form.cardNoRequired'), trigger: 'blur' }],
   id:'',
@@ -1748,12 +1751,12 @@ isLogin()
 .user-info text{
 	font-size: 14px;
 }
-.boxs{
-	//border-radius: 2px;
-	//border: 1px solid #3171B8;
-	//padding: 5px 10px;
-	//box-sizing: border-box;
-}
+// .boxs{
+// 	//border-radius: 2px;
+// 	//border: 1px solid #3171B8;
+// 	//padding: 5px 10px;
+// 	//box-sizing: border-box;
+// }
 .texts{
   box-sizing: border-box;
 
@@ -1878,9 +1881,9 @@ isLogin()
     margin-bottom: 30px;
     margin-left:20px;
 
-    .coupon {
+    // .coupon {
 
-    }
+    // }
       .couponColor{
         border: 2px solid #3171B8;
         height: 100px;
@@ -2061,16 +2064,19 @@ isLogin()
     width: 50px;
     height: 20px;
     background: #fff;
+    line-height: 20px;
+
     //border-radius: 2px;
 
   }
   /deep/ .sum .el-input .el-input__inner{
     background: #fff;
     border: 1px solid #F0F2F5 !important;
-    border: none;
-    height: 21px;
+    // border: none;
+    height: 20px;
     padding: 0;
     text-align: center;
+    line-height: 20px;
   }
     .login-wrapper{
       background-color: #F7F8FA;
@@ -2205,7 +2211,7 @@ isLogin()
                 text-align: center;
                 border-right: 1px solid #f4f4f4;
                 display: flex;
-                line-height: 150px;
+                // line-height: 150px;
                 align-items: center;
                 justify-content: center;
                 // padding: 60px 0;
@@ -2217,7 +2223,7 @@ isLogin()
                   height: 20px;
                   background: #F0F2F5;
                   //border-radius: 2px;
-                  margin-top:4px;
+                  // margin-top:4px;
                   line-height: 20px;
                 }
 
@@ -2263,6 +2269,7 @@ isLogin()
             line-height: 50px;
             padding: 0 0 0 60px;
             justify-content: space-between;
+            white-space: nowrap;
             div:nth-child(1){
              flex:0 0 310px;
               //flex: 1;