Bladeren bron

fix(bugs): 房间管

tangning 3 jaren geleden
bovenliggende
commit
1b01484795
3 gewijzigde bestanden met toevoegingen van 32 en 4 verwijderingen
  1. 1 1
      src/locales/lang/zh-CN/routes/room.ts
  2. 6 1
      src/views/scenes/room.vue
  3. 25 2
      src/views/scenes/roomDeital.vue

+ 1 - 1
src/locales/lang/zh-CN/routes/room.ts

@@ -16,7 +16,7 @@ export default {
   isShow: '是否显示',
   livestream: '开播',
   capacities: '带看模式(人)',
-  listRoomsState: '房间状态',
+  listRoomsState: '房间状态',
   bindShowerNameList: '已绑定主播',
   livestreamStatus: '是否开播',
   liveBroadcast: '房间列表',

+ 6 - 1
src/views/scenes/room.vue

@@ -172,7 +172,7 @@
         labelWidth: 100,
         schemas: [
           {
-            field: 'sceneName',
+            field: 'name',
             label: t('routes.room.anchorRoom'),
             component: 'Input',
             componentProps: {
@@ -364,6 +364,11 @@
               color: 'error',
               onClick: handleBindAnchor.bind(null, record),
             },
+            {
+              color: 'warning',
+              label: '编辑',
+              onClick: openTargetModal.bind(null, record),
+            },
           ];
         } else if (record.state == '102') {
           //未开播

+ 25 - 2
src/views/scenes/roomDeital.vue

@@ -64,9 +64,28 @@
           },
           required: true,
           componentProps: {
-            maxLength: 100,
+            maxLength: 15,
             autoComplete: 'off',
           },
+          rules: [
+            {
+              required: true,
+              // @ts-ignore
+              validator: async (rule, value) => {
+                if (!value) {
+                  return Promise.reject('请输入房间名称');
+                }
+                let iconRule2 =
+                  /[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF][\u200D|\uFE0F]|[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF]|[0-9|*|#]\uFE0F\u20E3|[0-9|#]\u20E3|[\u203C-\u3299]\uFE0F\u200D|[\u203C-\u3299]\uFE0F|[\u2122-\u2B55]|\u303D|[\A9|\AE]\u3030|\uA9|\uAE|\u3030/gi;
+                if (iconRule2.test(value)) {
+                  return Promise.reject('不支持特殊符号');
+                } else {
+                  return Promise.resolve();
+                }
+              },
+              trigger: 'change',
+            },
+          ],
         },
         {
           field: 'brandId',
@@ -131,9 +150,13 @@
               required: true,
               // @ts-ignore
               validator: async (rule, value) => {
+                console.log('rule', rule, modalTitle.value);
                 if (!value) {
                   return Promise.reject('请选择开播时间段');
                 }
+                if (modalTitle.value == '编辑') {
+                  return Promise.resolve();
+                }
                 if (dayjs(value[1]).isSame(dayjs(value[2]), 'minute')) {
                   return Promise.reject('结束时间应大于开始时间');
                 } else if (dayjs().isAfter(dayjs(dayjs(value[1])))) {
@@ -251,7 +274,7 @@
                 ...ele,
                 componentProps: {
                   ...ele.componentProps,
-                  disabled: index < 3 ? true : false,
+                  disabled: index < 4 && index != 0 ? true : false,
                 },
                 slot: '',
               };