浏览代码

Merge branch 'feature/mockApi' of http://192.168.0.115:3000/zhangyupeng/zfb_mp into feature/mockApi

gemercheung 3 年之前
父节点
当前提交
37fee4a3c3
共有 2 个文件被更改,包括 43 次插入31 次删除
  1. 5 0
      src/locales/lang/zh-CN/routes/scenes.ts
  2. 38 31
      src/views/scenes/bindModal.vue

+ 5 - 0
src/locales/lang/zh-CN/routes/scenes.ts

@@ -18,6 +18,11 @@ export default {
   downloadSceneConfirm: '是否确认下载场景',
   editor: '打开编辑器',
   cancelDownload: '取消下载',
+  own: '主播选择',
+  userName: '员工名称:',
+  canShow: '是否同时开通一起逛',
+  bindTime: '绑定时间',
+  anchorList: '主播列表',
   roleType: {
     0: '公司管理员',
     1: '公司员工',

+ 38 - 31
src/views/scenes/bindModal.vue

@@ -2,7 +2,7 @@
   <BasicModal
     v-bind="$attrs"
     @register="register"
-    title="绑定主播"
+    :title="t('routes.scenes.bindAnchor')"
     width="800px"
     @ok="handleSubmit"
     @cancel="clearSelectedRowKeys"
@@ -15,9 +15,20 @@
       >
         <template #headerTop>
           <div class="pt-4 pb-4">
-            场景名称: {{ headerInfo?.sceneName }} 直播间名称:{{ headerInfo?.name }}</div
+            {{ t('routes.scenes.sceneName') }}: {{ headerInfo?.sceneName }}
+            {{ t('routes.scenes.anchorRoom') }}:{{ headerInfo?.name }}</div
           >
         </template>
+        <template #canShowSwitch="{ record }">
+          <div>
+            <Switch
+              :disabled="!SelectRowsList.includes(record.id)"
+              v-model:checked="record.canShow"
+              :checkedChildren="t('layout.setting.on')"
+              :unCheckedChildren="t('layout.setting.off')"
+            />
+          </div>
+        </template>
       </BasicTable>
       <!-- <BasicForm @register="registerForm" :model="model" /> -->
     </div>
@@ -27,7 +38,8 @@
   </BasicModal>
 </template>
 <script lang="ts">
-  import { defineComponent, reactive, h } from 'vue';
+  import { defineComponent, reactive, h, ref, computed } from 'vue';
+  import { Switch } from 'ant-design-vue';
   import { BasicModal, useModalInner } from '/@/components/Modal';
   // import { BasicForm, FormSchema, useForm } from '/@/components/Form/index';
   import { BasicTable, useTable, BasicColumn, FormSchema } from '/@/components/Table';
@@ -41,11 +53,10 @@
 
   const { t } = useI18n();
   const { createMessage } = useMessage();
-
   const schemas: FormSchema[] = [
     {
       field: 'own',
-      label: '主播选择:',
+      label: t('routes.scenes.own'),
       component: 'Input',
     },
   ];
@@ -57,45 +68,29 @@
       width: 40,
     },
     {
-      title: '员工名称',
+      title: t('routes.scenes.userName'),
       dataIndex: 'userName',
       width: 100,
     },
     {
-      title: '角色',
+      title: t('common.roleName'),
       dataIndex: 'roleName',
       width: 100,
     },
 
     {
-      title: '手机号',
+      title: t('common.mobile'),
       dataIndex: 'phone',
       width: 100,
     },
     {
-      title: '是否同时开通一起逛',
+      title: t('routes.scenes.canShow'),
       dataIndex: 'canShow',
+      slots: { customRender: 'canShowSwitch' },
       width: 140,
-      editComponent: 'Switch',
-      ellipsis: false,
-      edit: true,
-      editable: true,
-      editValueMap: (value) => {
-        return value ? '是' : '否';
-      },
-
-      // customRender: ({ record }) => {
-      //   return (
-      //     record.createTime &&
-      //     h(Time, {
-      //       value: record.createTime,
-      //       mode: 'datetime',
-      //     })
-      //   );
-      // },
     },
     {
-      title: '绑定时间',
+      title: t('routes.scenes.bindTime'),
       dataIndex: 'createTime',
       width: 100,
       customRender: ({ record }) => {
@@ -110,7 +105,7 @@
     },
   ];
   export default defineComponent({
-    components: { BasicModal, BasicTable },
+    components: { BasicModal, BasicTable, Switch },
     props: {
       userData: { type: Object },
     },
@@ -119,6 +114,11 @@
       const [register, { closeModal }] = useModalInner((data) => {
         data && onDataReceive(data);
       });
+      const SelectRowsList = computed(() => {
+        const data = getSelectRowKeys();
+        return data;
+      });
+      const checked = ref<boolean>(false);
       const headerInfo = reactive<Recordable>({});
       const searchInfo = reactive<Recordable>({});
       const [
@@ -132,7 +132,7 @@
           getRawDataSource,
         },
       ] = useTable({
-        title: '主播列表',
+        title: t('routes.scenes.anchorList'),
         api: bindAnchorListApi,
         columns: columns,
         useSearchForm: false,
@@ -203,18 +203,25 @@
         // const keys = getSelectRowKeys();
         // console.log('key', key);
       };
-
+      const handleChange = (val, row) => {
+        console.log('val,row', val, row);
+        // updateTableDataRecord('canShow', values);
+        // updateTableDataRecord
+      };
       return {
         register,
         schemas,
         registerTable,
-
         handleSubmit,
         searchInfo,
         closeModal,
         handleSelect,
         headerInfo,
         clearSelectedRowKeys,
+        handleChange,
+        t,
+        checked,
+        SelectRowsList,
       };
     },
   });