From 9cad6a832c786989be620573b09badccfe7e3b51 Mon Sep 17 00:00:00 2001
From: QYF-GitLab1 <1940665526@qq.com>
Date: 星期一, 25 八月 2025 15:11:37 +0800
Subject: [PATCH] 首页头部,样式调整

---
 src/views/personalCenter/activeCode.vue |  143 ++++++++++++++++++++++++-----------------------
 1 files changed, 74 insertions(+), 69 deletions(-)

diff --git a/src/views/personalCenter/activeCode.vue b/src/views/personalCenter/activeCode.vue
index f78e69e..8a5b72d 100644
--- a/src/views/personalCenter/activeCode.vue
+++ b/src/views/personalCenter/activeCode.vue
@@ -7,7 +7,7 @@
         <el-input class="inputBox" v-model="activateCode" placeholder="璇疯緭鍏ユ縺娲荤爜">
           <template #append>
             <el-button
-              style="background-color: #019e58; color: #fff"
+              style="background-color: #144941; color: #fff"
               @click="userActiveCodeGet"
               :loading="loading"
               >婵�娲�</el-button
@@ -41,17 +41,14 @@
                       @click="goBookDetails(pItem.id, pItem.name, pItem.defaultSaleMethodId)"
                     >
                       <div class="cover">
-                        <img
-                          :src="pItem.icon ? getPublicImage(pItem.icon, '', '') : bookCover"
-                          alt=""
-                        />
-                        <!-- <div class="type" v-if="pItem.type">{{ pItem.type }}</div> -->
+                        <img :src="pItem.icon ? pItem.icon : bookCover" alt="" />
                       </div>
                       <div class="info">
-                        <div style="margin-bottom: 10px" v-if="pItem.type">
+                        <div class="bookType" style="margin-bottom: 10px" v-if="pItem.type">
                           {{ pItem.type }}
                         </div>
-                        <span :title="pItem.name">{{ pItem.name }}</span>
+                        <span class="title" :title="pItem.name">{{ pItem.name }}</span>
+                        <span class="author" v-if="pItem.author">{{ pItem.author }}</span>
                       </div>
                     </div>
                   </div>
@@ -86,12 +83,10 @@
 import moment from 'moment'
 import { getPublicImage } from '@/assets/js/middleGround/tool.js'
 import { ElMessage } from 'element-plus'
-import { useUserStore } from '@/store'
 import { useRouter } from 'vue-router'
 import bookCover from '@/assets/images/personalCenter/book-cover.png'
 const router = useRouter()
-const userStore = useUserStore()
-const MG = inject('MG')
+const MG: any = inject('MG')
 const activateCode = ref('')
 const loading = ref(false)
 let dataList = ref([])
@@ -143,32 +138,26 @@
         type: 'Desc',
         field: 'CreateDate',
       },
+      fields: {
+        author: [],
+      },
     })
     .then((res) => {
       let list: any[] = []
       res.datas.forEach((item) => {
         item.createDate = moment(item.createDate).format('YYYY-MM-DD HH:mm:ss')
         item.typeList = []
-        item.saleMethodList.forEach(async (i) => {
+        item.saleMethodList.forEach(async (i, index) => {
+          const author = item.productList[index]?.dataList?.find((citem) => {
+            return citem.data.sequenceNum == '007EB8E7' && citem.data.value
+          })?.data?.value
           const obj = {
-            icon: item.productList[0]?.icon,
-            id: item.productList[0]?.id,
-            name: item.productList[0]?.name,
-            type:
-              i.type == 'defaultSaleMethod'
-                ? '鐢靛瓙涔�'
-                : i.name.includes('-')
-                  ? i.name.split('-')[0]
-                  : i.name,
-            defaultSaleMethodId: item.productList[0]?.defaultSaleMethodId,
-          }
-
-          let parentData = await MG.store.getProductBySaleMethod({ saleMethodId: i.id })
-          if (parentData.storeLinks[0].storeRefCode == 'digitalCourses') {
-            obj.type = '鏁板瓧璇剧▼'
-          }
-          if (parentData.storeLinks[0].storeRefCode == 'digitalTextbooks') {
-            obj.type = '鏁板瓧鏁欐潗'
+            icon: getPublicImage(item.productList[index]?.icon, '', '150'),
+            id: item.productList[index]?.id,
+            name: item.productList[index]?.name,
+            author,
+            type: '鏁板瓧鏁欐潗',
+            defaultSaleMethodId: item.productList[index]?.defaultSaleMethodId,
           }
           item.typeList.push(obj)
         })
@@ -202,31 +191,12 @@
 }
 // 璺宠浆涔︽湰璇︽儏
 const goBookDetails = async (id: number, name: string, defaultSaleMethodId: number) => {
-  let parentData = await MG.store.getProductBySaleMethod({
-    saleMethodId: defaultSaleMethodId,
+  router.push({
+    path: '/bookdetail',
+    query: {
+      bookId: id,
+    },
   })
-  if (parentData.storeLinks[0].storeRefCode == 'jsek_digitalCourses') {
-    router.push({
-      path: '/bookdetail',
-      query: {
-        bookId: parentData.id,
-      },
-    })
-  } else if (parentData.storeLinks[0].storeRefCode == 'digitalTextbooks') {
-    router.push({
-      path: '/bookdetail',
-      query: {
-        bookId: parentData.id,
-      },
-    })
-  } else {
-    router.push({
-      path: '/bookdetail',
-      query: {
-        bookId: id,
-      },
-    })
-  }
 }
 </script>
 <style lang="less" scoped>
@@ -256,13 +226,13 @@
 }
 
 .stateBox {
-  height: 47px;
-  line-height: 47px;
+  height: 40px;
+  line-height: 40px;
   padding: 0 20px;
   border: 1px solid #edecec;
-  background: #f3f3f3;
+  background: #edf4f2;
   .flex1 span {
-    color: #019e58;
+    color: #000;
   }
 }
 
@@ -271,18 +241,28 @@
 }
 
 .listItem {
-  width: 130px;
   cursor: pointer;
   box-sizing: border-box;
   float: left;
   position: relative;
-  margin-right: 5%;
+  margin-right: 3%;
+  width: 185px;
+  min-height: 258px;
+  background: rgba(255, 255, 255, 0.3);
+  border-radius: 8px 8px 8px 8px;
+  border: 1px solid #dedede;
+  padding: 20px 10px;
+  box-sizing: border-box;
+  margin-bottom: 20px;
 
   .cover {
-    width: 100%;
-    height: 180px;
-    box-shadow: 0px 0px 20px 1px #ccc;
+    width: 116px;
+    height: 150px;
+    border-radius: 0px 0px 0px 0px;
+    border: 1px solid #019e58;
     position: relative;
+    margin: auto;
+    margin-bottom: 5px;
 
     img {
       width: 100%;
@@ -305,20 +285,45 @@
   }
 
   .info {
-    height: 90px;
-    padding: 15px 0;
     width: 100%;
+    .bookType {
+      position: absolute;
+      top: 0;
+      right: 0;
+      width: 60px;
+      height: 26px;
+      text-align: center;
+      font-size: 12px;
+      line-height: 24px;
+      font-weight: 400;
+      color: #fff;
+      border-radius: 0px 0px 0px 5px;
+      background: linear-gradient(130deg, #019e58 0%, #144941 100%);
+      border-radius: 0px 8px 0px 8px;
+    }
 
     span {
-      font-weight: bold;
-      height: 45px;
-      line-height: 22px;
+      line-height: 25px;
       display: -webkit-box;
-      margin-bottom: 5px;
       -webkit-box-orient: vertical;
       -webkit-line-clamp: 2;
       overflow: hidden;
       text-overflow: ellipsis;
+      padding: 5px 0;
+      box-sizing: border-box;
+      text-align: center;
+      font-family:
+        Microsoft YaHei UI,
+        Microsoft YaHei UI;
+      font-size: 16px;
+    }
+    .title {
+      font-weight: bold;
+      color: #000000;
+    }
+    .author {
+      font-weight: 400;
+      color: #333333;
     }
   }
 }

--
Gitblit v1.9.1