lisy 5 kuukautta sitten
vanhempi
säilyke
ba0af68453

+ 12 - 2
src/views/training/meeting/index.vue

@@ -88,7 +88,7 @@
                                             inactive-value="0" :before-change="beforeChange1" />
                                     </template>
                                 </el-popconfirm>
-                                <el-button v-if="row.tempStatus == '1'" type="primary" text>
+                                <el-button v-if="row.tempStatus == '1'" type="primary" text @click="temporary(row)">
                                     查看
                                 </el-button>
                             </template>
@@ -122,6 +122,9 @@
     </div>
     <SignInCode v-if="showSignIn" v-model:show="showSignIn" :info="rowInfo" :dict="{ dm_training_join_type }">
     </SignInCode>
+    <TemporaryRegistration v-if="showTemporary" v-model:show="showTemporary" :info="temporaryRegistration"
+        :dict="{ dm_training_join_type }">
+    </TemporaryRegistration>
 </template>
 
 <script setup name="meeting" lang="ts">
@@ -129,6 +132,7 @@ import { colNoData, colNoUnm } from '@/utils/noData';
 import { searchTabs } from '@/views/models';
 import { trainingList, queryTrainingCount, trainingDelete, publishTraining, unpublishTraining, offOrNoTemp } from '@/api/training';
 import { SignInCode } from '../models';
+import TemporaryRegistration from '../models/temporary-registration.vue'
 
 const router = useRouter();
 const { proxy } = getCurrentInstance() as ComponentInternalInstance;
@@ -149,7 +153,8 @@ const data = reactive<any>({
     },
     rules: {}
 });
-const temporaryRegistration = ref(false)
+const temporaryRegistration = ref()
+const showTemporary = ref(false)
 const { queryParams, form } = toRefs(data);
 /** 查询会员信息列表 */
 const getList = async () => {
@@ -262,6 +267,11 @@ const trainingSignIn = (row: any) => {
     rowInfo.value = { ...row };
     showSignIn.value = true;
 };
+// 打开临时报名二维码
+const temporary = (row: any) => {
+    temporaryRegistration.value = { ...row };
+    showTemporary.value = true;
+};
 onMounted(() => {
     getMeetingCount();
     getList();

+ 2 - 1
src/views/training/models/index.ts

@@ -1,3 +1,4 @@
 export { default as SignInCode } from './sign-in-code.vue'; // 查看签到码
 export { default as MeetingDetailInfo } from './meeting-detail-info.vue';
-export { default as MeetingDetailattend } from './meeting-detail-attend.vue';
+export { default as MeetingDetailattend } from './meeting-detail-attend.vue';
+export { default as temporaryRegistration } from './temporary-registration.vue'; // 查看签到码

+ 2 - 2
src/views/training/models/meeting-detail-attend.vue

@@ -26,8 +26,8 @@
         <div class="d-flex mb-16 ">
             <div class="info-title">
                 <span>参会人员信息</span>
-                <span class="f-s-14 c-666">(报名:{{ form?.joinCount }}人 | 签到:{{ form?.signCount }}人 | 领取证书:{{
-                    form?.certCount }}人)</span>
+                <span class="f-s-14 c-666">(提交报名:{{ form?.submitCount }}人 | 审核通过:{{ form?.joinCount }}人 | 签到:{{
+                    form?.signCount }}人 | 领取证书:{{ form?.certCount }}人)</span>
             </div>
         </div>
 

+ 8 - 4
src/views/training/models/sign-in-code.vue

@@ -1,15 +1,17 @@
 <template>
-    <vxe-modal v-model="dialogVisible" :title="title" show-zoom resize show-footer destroy-on-close transfer @hide="close" :width="width" :z-index="1002">
+    <vxe-modal v-model="dialogVisible" :title="title" show-zoom resize show-footer destroy-on-close transfer
+        @hide="close" :width="width" :z-index="1002">
         <template #default>
             <div>
                 <div v-if="info" ref="codeImgRef" style="width: 400px; margin: 0 auto;padding: 10px;">
                     <div class="mb-6 f-w-6 f-s-16 c-333">{{ info?.trainingName }}</div>
-                    <div class="mb-6">培训时间:{{ info?.trainingStart  }}~{{ info?.trainingEnd }}</div>
+                    <div class="mb-6">培训时间:{{ info?.trainingStart }}~{{ info?.trainingEnd }}</div>
                     <div class="mb-6">培训方式:{{ selectDictLabel(dict.dm_training_join_type, info.joinType) }}</div>
                     <div class="mb-6">联系电话:{{ info?.tel }}</div>
                     <div>签到二维码</div>
-                    <div class="d-flex j-c a-c pd-20">
-                        <vueQr :text="VITE_APP_SHARE_QR_CODE_URL + '/meeting-sign-in?meetid=' + info?.id" :size="300"></vueQr>
+                    <div class="d-flex j-c a-c pd-20 ">
+                        <vueQr :text="VITE_APP_SHARE_QR_CODE_URL + '/meeting-sign-in?meetid=' + info?.id" :size="300">
+                        </vueQr>
                     </div>
                 </div>
             </div>
@@ -61,3 +63,5 @@ watch(
     { immediate: true }
 );
 </script>
+<style scoped>
+</style>

+ 10 - 8
src/views/training/models/temporary-registration.vue

@@ -1,21 +1,23 @@
 <template>
-    <vxe-modal v-model="dialogVisible" :title="title" show-zoom resize show-footer destroy-on-close transfer @hide="close" :width="width" :z-index="1002">
+    <vxe-modal v-model="dialogVisible" :title="title" show-zoom resize show-footer destroy-on-close transfer
+        @hide="close" :width="width" :z-index="1002">
         <template #default>
             <div>
                 <div v-if="info" ref="codeImgRef" style="width: 400px; margin: 0 auto;">
-                    <div class="mb-6 f-w-6 f-s-16 c-333">{{ info?.trainingName }}</div>
-                    <div class="mb-6">培训时间:{{ info?.trainingStart  }}~{{ info?.trainingEnd }}</div>
+                    <div class="mb-6 f-w-6 f-s-16 c-333">临时报名通道</div>
+                    <div class="mb-6">会议名称:{{ info?.trainingName}}</div>
+                    <div class="mb-6">会议时间:{{ info?.trainingStart }}~{{ info?.trainingEnd }}</div>
                     <div class="mb-6">培训方式:{{ selectDictLabel(dict.dm_training_join_type, info.joinType) }}</div>
                     <div class="mb-6">联系电话:{{ info?.tel }}</div>
-                    <div>临时报名二维码</div>
-                    <div class="d-flex j-c a-c pd-20">
-                        <vueQr :text="VITE_APP_SHARE_QR_CODE_URL + '/meeting-sign-in?meetid=' + info?.id" :size="300"></vueQr>
+                    <div class="d-flex j-c a-c pd-10">
+                        <vueQr :text="VITE_APP_SHARE_QR_CODE_URL + '/meeting-sign-in?meetid=' + info?.id" :size="300"
+                            colorDark="orange"></vueQr>
                     </div>
                 </div>
             </div>
 
             <div class="d-flex j-c">
-                <el-button @click="saveImg">保存临时报名二维码</el-button>
+                <!-- <el-button @click="saveImg">保存临时报名二维码</el-button> -->
             </div>
         </template>
     </vxe-modal>
@@ -28,7 +30,7 @@ import html2canvas from 'html2canvas';
 const emit = defineEmits(['update:show', 'close', 'success']);
 const props = defineProps({
     show: propTypes.bool.def(false),
-    title: propTypes.string.def('临时报名'),
+    title: propTypes.string.def(' '),
     width: propTypes.number.def(500),
     info: propTypes.any.def(null),
     dict: propTypes.object.def({})