chenying2100 1 月之前
父节点
当前提交
31c9314ebb

+ 1 - 1
.env.development

@@ -1,5 +1,5 @@
 # 页面标题
-VITE_APP_TITLE = RuoYi-Vue-Plus多租户管理系统
+VITE_APP_TITLE = 优易
 VITE_APP_LOGO_TITLE = RuoYi-Vue-Plus
 
 # 开发环境配置

+ 1 - 1
.env.production

@@ -1,5 +1,5 @@
 # 页面标题
-VITE_APP_TITLE = RuoYi-Vue-Plus多租户管理系统
+VITE_APP_TITLE = 优易
 VITE_APP_LOGO_TITLE = RuoYi-Vue-Plus
 
 # 生产环境配置

+ 2 - 2
index.html

@@ -204,9 +204,9 @@
     <div id="app">
       <div id="loader-wrapper">
         <div id="loader"></div>
-        <div class="loader-section section-left"></div>
+        <!-- <div class="loader-section section-left"></div>
         <div class="loader-section section-right"></div>
-        <div class="load_title">正在加载系统资源,请耐心等待</div>
+        <div class="load_title">正在加载系统资源,请耐心等待</div> -->
       </div>
     </div>
     <script type="module" src="/src/main.ts"></script>

+ 1 - 1
package.json

@@ -2,7 +2,7 @@
   "$schema": "https://json.schemastore.org/package",
   "name": "ruoyi-vue-plus",
   "version": "5.5.2-2.5.2",
-  "description": "RuoYi-Vue-Plus多租户管理系统",
+  "description": "优易",
   "author": "LionLi",
   "license": "MIT",
   "type": "module",

+ 2 - 2
src/layout/components/header.vue

@@ -10,7 +10,7 @@
         <div v-if="!isLoggedIn" class="header-text" @click="goToLogin" style="cursor: pointer">请登录</div>
         <div v-if="!isLoggedIn" class="header-text hig">免费注册</div>
         <div class="header-text" @click="goToMyOrder">我的订单</div>
-        <div class="header-text">会员中心</div>
+        <div class="header-text" @click="onPath('/enterprise/companyInfo')">会员中心</div>
         <div class="header-text">人才招聘</div>
         <div class="header-text">帮助中心</div>
         <div class="header-text end">在线客服</div>
@@ -23,7 +23,7 @@
 import { useRouter } from 'vue-router';
 import { useUserStore } from '@/store/modules/user';
 import { computed } from 'vue';
-
+import { onPath } from '@/utils/siteConfig';
 const router = useRouter();
 const userStore = useUserStore();
 

+ 7 - 0
src/layout/index.vue

@@ -44,6 +44,13 @@ watch(route, () => {
     &.pages-bos2 {
       width: 100%;
     }
+
+    .page-container{
+      flex: 1;
+      background-color: #ffffff;
+      padding: 15px;
+      margin-bottom: 20px;
+    }
   }
 }
 </style>

+ 5 - 1
src/store/modules/category.ts

@@ -12,7 +12,11 @@ export const categoryStore = defineStore('category', () => {
     if (categories.value[key].length > 0) return categories.value[key];
     try {
       const response =
-        key == '/index' ? await getProductCategoryTree({}) : key == '/indexMro' ? await getProductCategoryTree({}) : await getGiftCategoryList({});
+        key == '/index'
+          ? await getProductCategoryTree({ platform: 0 })
+          : key == '/indexMro'
+            ? await getProductCategoryTree({})
+            : await getGiftCategoryList({});
       categories.value[key] = response.data;
       return response.data;
     } catch (error) {

+ 17 - 5
src/views/cart/index.vue

@@ -87,7 +87,7 @@
         </el-table-column>
         <el-table-column label="数量" width="200" align="center">
           <template #default="scope">
-            <el-input-number v-model="scope.row.productNum" :controls="false" :min="1" :max="10" style="width: 130px" />
+            <el-input-number disabled v-model="scope.row.productNum" :controls="false" :min="1" :max="10" style="width: 130px" />
           </template>
         </el-table-column>
         <el-table-column label="小计" width="140" align="center">
@@ -114,14 +114,14 @@
         </div>
         <div class="bnt-box flex-row-start">
           <span>共</span>
-          <span class="hig">1</span>
+          <span class="hig">{{ tableData.length }}</span>
           <span>种商品,已选择</span>
-          <span class="hig">2</span>
+          <span class="hig">{{ selectedList.length }}</span>
           <span>件,商品合计:</span>
-          <span class="hig">¥938.00</span>
+          <span class="hig">¥{{ onMoney }}</span>
           <span>,活动优惠:0.00</span>
           <span class="span1">合计:</span>
-          <span class="span2">¥0.00</span>
+          <span class="span2">¥{{ onMoney }}</span>
           <el-button class="bnt" type="primary" @click="goTrad">去结算</el-button>
         </div>
       </div>
@@ -146,6 +146,8 @@ onMounted(() => {
 const getInfo = () => {
   shoppingCartList({}).then((res) => {
     if (res.code == 200) {
+      tableData.value = [];
+      noTableData.value = [];
       if (res.rows && res.rows.length > 0) {
         res.rows.forEach((item: any) => {
           if (item.productStatus == 1) {
@@ -187,6 +189,16 @@ const goTrad = () => {
   const ids = selectedList.value.map((item: any) => item.shoppingCartId).join(',');
   onPath('/trad?ids=' + ids);
 };
+
+const onMoney = computed(() => {
+  let money = 0;
+  let price = '';
+  selectedList.value.forEach((item: any) => {
+    money = money + Number(item.memberPrice * item.productNum);
+  });
+  price = Number(money).toFixed(2);
+  return price;
+});
 </script>
 
 <style lang="scss" scoped>

+ 1 - 0
src/views/cost/quotaControl/apply.vue

@@ -120,6 +120,7 @@ const handleSave = async () => {
   padding: 20px;
   background: #fff;
   min-height: 100%;
+  flex: 1;
 }
 
 .page-header {

+ 1 - 0
src/views/cost/quotaControl/index.vue

@@ -103,6 +103,7 @@ onMounted(() => {
   padding: 20px;
   background: #fff;
   min-height: 100%;
+  flex: 1;
 }
 
 .page-header {

+ 6 - 0
src/views/easybuv/index.vue

@@ -224,6 +224,12 @@ const handleSetDefault = async (item: any) => {
 </script>
 
 <style scoped lang="scss">
+.page-container{
+  flex: 1;
+  background-color: #ffffff;
+  padding: 15px;
+  margin-bottom: 20px;
+}
 .page-header {
   display: flex;
   justify-content: space-between;

+ 1 - 0
src/views/enterprise/companyInfo/index.vue

@@ -257,6 +257,7 @@ const handleTabClick = (tabKey: string) => {
   padding: 0;
   background: #f5f5f5;
   min-height: 100%;
+  flex: 1;
 }
 
 .company-header-card {

+ 1 - 0
src/views/enterprise/invoiceManage/index.vue

@@ -223,6 +223,7 @@ onMounted(() => {
   padding: 20px;
   background: #fff;
   min-height: 100%;
+  flex: 1;
 }
 .page-title {
   font-size: 16px;

+ 1 - 0
src/views/enterprise/purchaseHabit/index.vue

@@ -326,6 +326,7 @@ onMounted(() => {
   display: flex;
   flex-direction: column;
   max-height: calc(100vh - 120px);
+  flex: 1;
 }
 .page-title {
   font-size: 16px;

+ 17 - 14
src/views/home/index-mro.vue

@@ -91,10 +91,10 @@
         <template v-for="(item, index) in sellList" :key="index">
           <div v-if="Number(index) < 5" class="sell-list">
             <img class="sell-img" :src="item.productImage ? item.productImage.split(',')[0] : ''" alt="" />
-            <div class="sell-name ellipsis2">{{ item.itemName || '格力KFR-72LW/定频冷暖空调柜机3P格力KFR行车自行车自行车行政村在' }}</div>
+            <div class="sell-name ellipsis2">{{ item.itemName || '' }}</div>
             <div class="sell-price">
-              <span class="price1">¥{{ item.memberPrice || '23.22' }}</span>
-              <span class="price2">¥{{ item.marketPrice || '52.12' }}</span>
+              <span class="price1">¥{{ item.memberPrice || '' }}</span>
+              <span class="price2">¥{{ item.marketPrice || '' }}</span>
             </div>
           </div>
         </template>
@@ -104,13 +104,13 @@
         <template v-for="(item, index) in tradeList" :key="index">
           <div v-if="Number(index) < 4" class="trade-list flex-row-between">
             <div class="trade-box flex-column-between">
-              <div class="trade-title">新品推荐</div>
+              <div class="trade-title">{{ item.title||'' }}</div>
               <div class="trade-info ellipsis2">
-                品质卓越,严选新品,直击企业效能升级需求,多场景适品质卓越,严选新品,直击企业效能升级需求,多场景适
+                {{ item.remark||'' }}
               </div>
               <img class="trade-look" src="@/assets/images/home/indexMro1.png" alt="" />
             </div>
-            <img class="trade-img" src="" alt="" />
+            <img class="trade-img" :src="item.imageUrl" alt="" />
           </div>
         </template>
       </div>
@@ -118,7 +118,7 @@
       <div class="goods-bos" v-for="(item, index) in goodsList" :key="index">
         <div class="goods-title flex-row-center">
           <img src="@/assets/images/home/indexMro2.png" alt="" />
-          <span class="text-primary">电气控制产品</span>
+          <span class="text-primary">{{ item.name }}</span>
           <span>精选</span>
           <img src="@/assets/images/home/indexMro3.png" alt="" />
         </div>
@@ -202,9 +202,9 @@ const classifyList = ref<any>([]);
 const carouselList = ref<any>([]);
 const realList = ref<any>([]);
 const interestsList = ref<any>([]);
-const sellList = ref<any>([{}, {}, {}, {}, {}]);
-const tradeList = ref<any>([{}, {}, {}, {}, {}]);
-const goodsList = ref<any>([{}, {}, {}]);
+const sellList = ref<any>([]);
+const tradeList = ref<any>([]);
+const goodsList = ref<any>([]);
 
 onMounted(() => {
   if (getToken()) {
@@ -229,7 +229,9 @@ const enterClassify = (res: any) => {
 };
 
 //头部分类
-getProductCategoryTree({}).then((res) => {
+getProductCategoryTree({
+  platform:1
+}).then((res) => {
   if (res.code == 200) {
     classifyList.value = res.data;
   }
@@ -259,21 +261,21 @@ getHomeIconAd({}).then((res) => {
 //轮播展位商品(工业装修-轮播展位商品)
 getCarouselDisplayProductList({}).then((res) => {
   if (res.code == 200) {
-    // sellList.value = res.data;
+    sellList.value = res.data;
   }
 });
 
 //商业标签(工业装修-商业标签)
 getBusinessLabelList({}).then((res) => {
   if (res.code == 200) {
-    // tradeList.value = res.data;
+    tradeList.value = res.data;
   }
 });
 
 //循环
 getIndustrialFloor({}).then((res) => {
   if (res.code == 200) {
-    // goodsList.value = res.data;
+    goodsList.value = res.data;
     res.data.forEach((item: any) => {
       getIndustrialFloorProductList({ floorId: item.id }).then((res) => {
         if (res.code == 200) {
@@ -306,6 +308,7 @@ getRecommendedCategoryProductList({}).then((res) => {
   .head-pages {
     width: 100%;
     background: #000000;
+    margin-top: 10px;
 
     // 头部
     .home-head {

+ 2 - 1
src/views/home/index.vue

@@ -580,6 +580,7 @@ const onInfo = (res: any) => {
     position: relative;
     display: flex;
     gap: 0px 10px;
+    margin-top: 10px;
 
     .classify {
       width: 234px;
@@ -903,7 +904,7 @@ const onInfo = (res: any) => {
     width: 1200px;
     height: 56px;
     background: #ffffff;
-    margin-top: 30px;
+    margin-top: 15px;
     padding: 0 20px;
 
     .title1 {

+ 1 - 0
src/views/i/index.vue

@@ -210,6 +210,7 @@ onMounted(async () => {
   padding: 20px;
   background: #fff;
   min-height: 100%;
+  flex: 1;
 }
 
 .info-form {

+ 6 - 3
src/views/item/index.vue

@@ -218,8 +218,11 @@ const getInfo = () => {
   getProductDetail(id.value).then((res) => {
     if (res.code == 200) {
       carousel.value = [];
-      if (res.data.productImage) {
-        carousel.value = res.data.productImage.split(',');
+      if (res.data.imageUrl) {
+        carousel.value = res.data.imageUrl.split(',');
+        if(carousel.value.length>5){
+          carousel.value = carousel.value.slice(0, 5)
+        }
       }
       dataInfo.value = res.data;
     }
@@ -294,7 +297,7 @@ const handleChange = (val: any) => {
 const onCart = () => {
   addProductShoppingCart({
     productId: id.value,
-    productNum: 3
+    productNum: num.value
   }).then((res) => {
     if (res.code == 200) {
       ElMessage.success('加入购物车成功');

+ 1 - 0
src/views/order/batchOrder/index.vue

@@ -340,6 +340,7 @@ const handleSubmitOrder = async () => {
   padding: 20px;
   background: #fff;
   min-height: 100%;
+  flex: 1;
 }
 .page-title {
   font-size: 16px;

+ 5 - 3
src/views/order/orderAudit/index.vue

@@ -484,7 +484,9 @@ const handleSubmitAudit = async () => {
       .product-cell {
         padding: 15px;
         display: flex;
-        flex-direction: column;
+        align-items: center;
+
+        // flex-direction: column;
         justify-content: center;
       }
 
@@ -566,7 +568,7 @@ const handleSubmitAudit = async () => {
       .status-cell {
         width: 140px;
         border-left: 1px solid #f5f5f5;
-        align-items: flex-start;
+        // align-items: flex-start;
         gap: 5px;
 
         .status-text {
@@ -594,7 +596,7 @@ const handleSubmitAudit = async () => {
       .action-cell {
         width: 100px;
         border-left: 1px solid #f5f5f5;
-        align-items: flex-start;
+        // align-items: flex-start;
         gap: 5px;
       }
     }

+ 1 - 0
src/views/organization/approvalFlow/create.vue

@@ -453,6 +453,7 @@ onUnmounted(() => {
   padding: 20px;
   background: #fff;
   min-height: 100%;
+  flex: 1;
 }
 
 .page-header {

+ 1 - 0
src/views/organization/approvalFlow/index.vue

@@ -114,6 +114,7 @@ const handleDisable = (row: OrderCustomerFlow) => {
   padding: 20px;
   background: #fff;
   min-height: 100%;
+  flex: 1;
 }
 
 .page-header {

+ 1 - 0
src/views/valueAdded/maintenance/index.vue

@@ -31,6 +31,7 @@ const handleApply = () => {
   padding: 20px;
   background: #fff;
   min-height: 100%;
+  flex: 1;
 }
 
 .empty-state {