Parcourir la source

语言切换只保留中文繁体

qmj il y a 6 mois
Parent
commit
c8cd80cbc3

+ 16 - 1
foodie_admin_vue/src/components/Breadcrumb/index.vue

@@ -11,10 +11,13 @@
 
 <script>
 import {generateTitle} from '../../utils/i18.js'
+import Bus from '@/utils/Bus.js'
+
 export default {
   data() {
     return {
-      levelList: null
+      levelList: null,
+      language: localStorage.getItem('lang') || 'vi'
     }
   },
   watch: {
@@ -29,6 +32,18 @@ export default {
   created() {
     this.getBreadcrumb()
   },
+  mounted() {
+    // 监听语言切换事件
+    Bus.$on('l18zh', (res) => {
+      this.language = res;
+      // 重新生成面包屑
+      this.getBreadcrumb();
+    })
+  },
+  beforeDestroy() {
+    // 移除事件监听
+    Bus.$off('l18zh');
+  },
   methods: {
     generateTitle,
     getBreadcrumb() {

+ 12 - 1
foodie_admin_vue/src/components/TopNav/index.vue

@@ -33,13 +33,16 @@ import { constantRoutes } from "@/router";
 // 隐藏侧边栏路由
 const hideList = ['/index', '/user/profile'];
 import {generateTitle} from '../../utils/i18.js'
+import Bus from '@/utils/Bus.js'
+
 export default {
   data() {
     return {
       // 顶部栏初始数
       visibleNumber: 5,
       // 当前激活菜单的 index
-      currentIndex: undefined
+      currentIndex: undefined,
+      language: localStorage.getItem('lang') || 'vi'
     };
   },
   computed: {
@@ -108,9 +111,17 @@ export default {
   },
   beforeDestroy() {
     window.removeEventListener('resize', this.setVisibleNumber)
+    // 移除事件监听
+    Bus.$off('l18zh');
   },
   mounted() {
     this.setVisibleNumber();
+    // 监听语言切换事件
+    Bus.$on('l18zh', (res) => {
+      this.language = res;
+      // 强制重新渲染顶部菜单
+      this.$forceUpdate();
+    })
   },
   methods: {
     generateTitle,

+ 8 - 8
foodie_admin_vue/src/components/i18n/i18n.vue

@@ -27,14 +27,14 @@ export default {
         //   label: "Tiếng Việt",
         //   value: "vi"
         // },
-        {
-          label: "简体中文",
-          value: "zh_CN"
-        },
-        {
-          label: "English",
-          value: "en_US"
-        }
+        // {
+        //   label: "简体中文",
+        //   value: "zh_CN"
+        // },
+        // {
+        //   label: "English",
+        //   value: "en_US"
+        // }
       ],
     }
   },

+ 17 - 1
foodie_admin_vue/src/layout/components/Sidebar/SidebarItem.vue

@@ -31,6 +31,8 @@ import Item from './Item'
 import AppLink from './Link'
 import FixiOSBug from './FixiOSBug'
 import {generateTitle} from '../../../utils/i18.js'
+import Bus from '@/utils/Bus.js'
+
 export default {
   name: 'SidebarItem',
   components: { Item, AppLink },
@@ -52,7 +54,21 @@ export default {
   },
   data() {
     this.onlyOneChild = null
-    return {}
+    return {
+      language: localStorage.getItem('lang') || 'vi'
+    }
+  },
+  mounted() {
+    // 监听语言切换事件
+    Bus.$on('l18zh', (res) => {
+      this.language = res;
+      // 强制重新渲染菜单项
+      this.$forceUpdate();
+    })
+  },
+  beforeDestroy() {
+    // 移除事件监听
+    Bus.$off('l18zh');
   },
   methods: {
     generateTitle,

+ 18 - 0
foodie_admin_vue/src/layout/components/Sidebar/index.vue

@@ -28,9 +28,15 @@ import { mapGetters, mapState } from "vuex";
 import Logo from "./Logo";
 import SidebarItem from "./SidebarItem";
 import variables from "@/assets/styles/variables.scss";
+import Bus from '@/utils/Bus.js'
 
 export default {
     components: { SidebarItem, Logo },
+    data() {
+        return {
+            language: localStorage.getItem('lang') || 'vi'
+        }
+    },
     computed: {
         ...mapState(["settings"]),
         ...mapGetters(["sidebarRouters", "sidebar"]),
@@ -52,6 +58,18 @@ export default {
         isCollapse() {
             return !this.sidebar.opened;
         }
+    },
+    mounted() {
+        // 监听语言切换事件
+        Bus.$on('l18zh', (res) => {
+            this.language = res;
+            // 强制重新渲染侧边栏
+            this.$forceUpdate();
+        })
+    },
+    beforeDestroy() {
+        // 移除事件监听
+        Bus.$off('l18zh');
     }
 };
 </script>

+ 10 - 0
foodie_admin_vue/src/views/system/order/index.vue

@@ -9,6 +9,16 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
+<!--      <el-form-item :label="$t('dingdanorder.订单分类')" prop="type">-->
+<!--        <el-select v-model="queryParams.type" :placeholder="$t('dingdanorder.请选择订单分类')" clearable>-->
+<!--          <el-option-->
+<!--            v-for="dict in dict.type.pos_order_category"-->
+<!--            :key="dict.value"-->
+<!--            :label="generateTitle(dict.label)"-->
+<!--            :value="dict.value"-->
+<!--          />-->
+<!--        </el-select>-->
+<!--      </el-form-item>-->
       <el-form-item :label="$t('dingdanorder.用户Id')" prop="userId">
         <el-input
           v-model="queryParams.userId"

+ 8 - 8
foodie_sj_vue/src/components/i18n.vue

@@ -27,14 +27,14 @@ export default {
           label: "繁體中文",
           value: "tw"
         },
-			{
-				label: "简体中文",
-				value: "zh"
-			},
-			{
-				label: "English",
-				value: "en"
-			}
+			// {
+			// 	label: "简体中文",
+			// 	value: "zh"
+			// },
+			// {
+			// 	label: "English",
+			// 	value: "en"
+			// }
       ],
     }
   },

+ 13 - 0
ruoyi-admin/src/main/java/com/ruoyi/app/order/UserOrderController.java

@@ -1,5 +1,6 @@
 package com.ruoyi.app.order;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ruoyi.app.order.dto.OrderCreateInput;
 import com.ruoyi.app.order.dto.OrderCreatItem;
 import com.ruoyi.common.annotation.Anonymous;
@@ -9,8 +10,10 @@ import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.MessageUtils;
 import com.ruoyi.system.domain.OrderParent;
 import com.ruoyi.system.domain.PosOrder;
+import com.ruoyi.system.domain.PosStore;
 import com.ruoyi.system.service.IOrderParentService;
 import com.ruoyi.system.service.IPosOrderService;
+import com.ruoyi.system.service.IPosStoreService;
 import com.ruoyi.system.utils.Auth;
 import com.ruoyi.system.utils.JwtUtil;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -22,6 +25,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.util.Date;
+import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 用户订单Controller
@@ -36,6 +41,8 @@ public class UserOrderController extends BaseController {
     private IOrderParentService orderParentService;
     @Autowired
     private IPosOrderService posOrderService;
+    @Autowired
+    private IPosStoreService posStoreService;
 
     /**
      * 创建订单
@@ -74,6 +81,8 @@ public class UserOrderController extends BaseController {
             throw new ServiceException(MessageUtils.message("订单商品不能为空"));
         }
         String ddId = input.getDdId().toString();
+        List<Long> mdIdList = input.getItems().stream().map(OrderCreatItem::getMdId).collect(Collectors.toList());
+        List<PosStore> storeList = posStoreService.list(new LambdaQueryWrapper<PosStore>().in(PosStore::getId, mdIdList));
         // 循环items,为每个item创建一条PosOrder
         for (OrderCreatItem item : input.getItems()) {
             int index = input.getItems().indexOf(item) + 1;
@@ -96,6 +105,10 @@ public class UserOrderController extends BaseController {
             posOrder.setFood(item.getFood());
             // 设置支付相关信息(从父订单继承)
             posOrder.setPayType(input.getPaymentMethod());
+            //设置订单分类
+            storeList.stream().filter(store -> Long.valueOf(store.getId()).equals(item.getMdId())).findFirst().ifPresent(st -> {
+                posOrder.setOrderCategory(String.valueOf(st.getType()));
+            });
             // 保存子订单
             posOrderService.save(posOrder);
         }

+ 3 - 0
ruoyi-system/src/main/java/com/ruoyi/system/domain/PosOrder.java

@@ -201,6 +201,9 @@ public class  PosOrder
     /** 父订单号 */
     private String parentDdId;
 
+    /** 订单分类 */
+    private String orderCategory;
+
 
 
 

+ 7 - 1
ruoyi-system/src/main/resources/mapper/system/PosOrderMapper.xml

@@ -45,10 +45,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="sdTime" column="sd_time" />
         <result property="payType" column="pay_type" />
         <result property="parentDdId" column="parent_dd_id" />
+        <result property="orderCategory" column="order_category" />
     </resultMap>
 
     <sql id="selectPosOrderVo">
-        select id, dd_id, sh_id, md_id, cretim, shdz_id, user_id,sh_address, amount, remarks, state, type, delry_time,food,yh_id,yh_name,md_yh_id,md_yh_name,md_discount_amount,jvli,freight,dining_status,qs_id,pay_url,collect_payment,activity,md_activity,kefu_state,kefu_content,kefu_repeat,repeat_dd_id,sales_name,md_sales_name,sales_reduction,md_sales_reduction,points,points_reduction,sd_time,pay_type,parent_dd_id from pos_order
+        select id, dd_id, sh_id, md_id, cretim, shdz_id, user_id,sh_address, amount, remarks, state, type, delry_time,food,yh_id,yh_name,md_yh_id,md_yh_name,md_discount_amount,jvli,freight,dining_status,qs_id,pay_url,collect_payment,activity,md_activity,kefu_state,kefu_content,kefu_repeat,repeat_dd_id,sales_name,md_sales_name,sales_reduction,md_sales_reduction,points,points_reduction,sd_time,pay_type,parent_dd_id,order_category from pos_order
     </sql>
 
     <select id="selectPosOrderList" parameterType="PosOrder" resultMap="PosOrderResult">
@@ -81,6 +82,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="sdTime != null"> and sd_time = #{sdTime}</if>
             <if test="payType != null"> and pay_type =#{payType}</if>
             <if test="parentDdId != null and parentDdId != ''"> and parent_dd_id = #{parentDdId}</if>
+            <if test="orderCategory != null and orderCategory != ''"> and order_category = #{orderCategory}</if>
             and not (state=0 and collect_payment=0)
         </where>
         order by id desc
@@ -116,6 +118,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
              <if test="sdTime != null"> and sd_time =#{sdTime}</if>
             <if test="payType != null"> and pay_type =#{payType}</if>
             <if test="parentDdId != null and parentDdId != ''"> and parent_dd_id = #{parentDdId}</if>
+            <if test="orderCategory != null and orderCategory != ''"> and order_category = #{orderCategory}</if>
         </where>
         order by kefu_state desc,cretim desc
     </select>
@@ -154,6 +157,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="sdTime != null">sd_time,</if>
             <if test="payType != null">pay_type,</if>
             <if test="parentDdId != null and parentDdId != ''">parent_dd_id,</if>
+            <if test="orderCategory != null and orderCategory != ''">order_category,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="ddId != null">#{ddId},</if>
@@ -182,6 +186,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="sdTime != null">#{sdTime},</if>
             <if test="payType != null">#{payType},</if>
             <if test="parentDdId != null and parentDdId != ''">#{parentDdId},</if>
+            <if test="orderCategory != null and orderCategory != ''">#{orderCategory},</if>
          </trim>
     </insert>
 
@@ -216,6 +221,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="sdTime != null">sd_time = #{sdTime},</if>
             <if test="payType != null">pay_type = #{payType},</if>
             <if test="parentDdId != null and parentDdId != ''">parent_dd_id = #{parentDdId},</if>
+            <if test="orderCategory != null and orderCategory != ''">order_category = #{orderCategory},</if>
         </trim>
         where id = #{id}
     </update>