zhongshujie
2024-12-23 a31c8c9d7df2883b38871819239ec914c6e5ae0c
src/books/aviationBasicSkills/view/components/chapter008.vue
@@ -358,6 +358,22 @@
                    <p class="p-odd">③所执行航班的飞机机型、飞机号、应急设备分布。</p>
                    <p class="p-odd">④所执行航班查询时间当前的旅客人数,重要及特殊旅客信息。</p>
                    <p class="p-odd">⑤所执行航班当班配餐情况等。</p>
                    <div class="video-box-left">
                        <p class="center text">
                            <video :src="videoPathOne" webkit-playsinline="true" x-webkit-airplay="true"
                                playsinline="true" x5-video-orientation="h5" x5-video-player-fullscreen="true"
                                x5-playsinline="" controls controlslist="nodownload" class="w100 video"
                                style=" border-radius: 10px; "></video>
                        </p>
                        <p class="center videoname">
                            <span>视频:项目八 任务4</span>
                            <el-tooltip class="item" effect="dark"
                                :content="chapterData.isCollectVideo ? '点击取消' : '点击收藏'" placement="top-start">
                                <img :src="collectResourceList.findIndex(item => item.id == '9ff093ee1af1f2b46e50766576b15efe') > -1 ? collectCheck : collectImg"
                                    alt="" class="collect-btn" @click="handleCollect('video-01')" />
                            </el-tooltip>
                        </p>
                    </div>
                    <h4 id="d151" class="p-odd">(二)客舱乘务员在执行航班任务前应复习的内容</h4>
                    <p class="p-odd">①所执行航班的航线地理情况,飞越的省市、河流、山脉及飞行时间、距离、机场名称、离城距离等。</p>
                    <p class="p-odd">②各区域号位的工作职责及该飞机应急设备分布、应急处置的程序。</p>
@@ -367,6 +383,22 @@
                    <p class="p-odd">②个人证件(客舱乘务员训练合格证、空勤登机证、体检合格证),并确保在有效期内。</p>
                    <p class="p-odd">③个人携带资料(客舱乘务员手册、客舱广播词、舱门操作单等)。</p>
                    <p class="p-odd">④个人携带物品(笔、便签、围裙、化妆品、备用丝袜、走时准确的手表等)。</p>
                    <div class="video-box-left">
                        <p class="center text">
                            <video :src="videoPathTwo" webkit-playsinline="true" x-webkit-airplay="true"
                                playsinline="true" x5-video-orientation="h5" x5-video-player-fullscreen="true"
                                x5-playsinline="" controls controlslist="nodownload" class="w100 video"
                                style=" border-radius: 10px; "></video>
                        </p>
                        <p class="center videoname">
                            <span>视频:项目八 任务5</span>
                            <el-tooltip class="item" effect="dark"
                                :content="chapterData.isCollectVideo01 ? '点击取消' : '点击收藏'" placement="top-start">
                                <img :src="collectResourceList.findIndex(item => item.id == '7303452278e8ff8c86f9320d9dfdb06c') > -1 ? collectCheck : collectImg"
                                    alt="" class="collect-btn" @click="handleCollect('video-02')" />
                            </el-tooltip>
                        </p>
                    </div>
                    <h3 id="c080" class="p-odd"><span class="zt-h4 unit4-c">二、</span><span
                            class="qyls-h4 unit4-c">参加航前准备会</span></h3>
                    <h4 id="d153" class="p-odd">(一)航前准备会签到</h4>
@@ -391,6 +423,22 @@
                    <p class="p-even">⑤说明工作程序、餐食及供应品配备情况。</p>
                    <p class="p-even">⑥做好飞机应急撤离水/陆预案。</p>
                    <p class="p-even">⑦提出对重要旅客、VIP旅客及特殊旅客的服务要求。</p>
                    <div class="video-box">
                        <p class="center text">
                            <video :src="videoPathThree" webkit-playsinline="true" x-webkit-airplay="true"
                                playsinline="true" x5-video-orientation="h5" x5-video-player-fullscreen="true"
                                x5-playsinline="" controls controlslist="nodownload" class="w100 video"
                                style=" border-radius: 10px; "></video>
                        </p>
                        <p class="center videoname">
                            <span>视频:项目八 任务3</span>
                            <el-tooltip class="item" effect="dark"
                                :content="chapterData.isCollectVideo02 ? '点击取消' : '点击收藏'" placement="top-start">
                                <img :src="collectResourceList.findIndex(item => item.id == '52e064fe476177beb5a3a3a7cdf3adb9') > -1 ? collectCheck : collectImg"
                                    alt="" class="collect-btn" @click="handleCollect('video-03')" />
                            </el-tooltip>
                        </p>
                    </div>
                    <h3 id="c081" class="p-even"><span class="zt-h4 unit4-c">三、</span><span
                            class="qyls-h4 unit4-c">接受安全检查进入机场隔离区并上机</span></h3>
                    <p class="p-even">
@@ -1150,6 +1198,22 @@
                    <p class="p-even">在飞行阶段,乘务员注意随时保持客舱舒适、安静的环境。</p>
                    <p class="p-even">随时保持客舱、厨房、卫生间的整洁。</p>
                    <p class="p-even">如客舱设备发生故障要及时报告乘务长。</p>
                    <div class="video-box">
                        <p class="center text">
                            <video :src="videoPathFour" webkit-playsinline="true" x-webkit-airplay="true"
                                playsinline="true" x5-video-orientation="h5" x5-video-player-fullscreen="true"
                                x5-playsinline="" controls controlslist="nodownload" class="w100 video"
                                style=" border-radius: 10px; "></video>
                        </p>
                        <p class="center videoname">
                            <span>视频:项目八 任务1</span>
                            <el-tooltip class="item" effect="dark"
                                :content="chapterData.isCollectVideo03 ? '点击取消' : '点击收藏'" placement="top-start">
                                <img :src="collectResourceList.findIndex(item => item.id == '8feffd5d540faf91ed00b075591ae87c') > -1 ? collectCheck : collectImg"
                                    alt="" class="collect-btn" @click="handleCollect('video-04')" />
                            </el-tooltip>
                        </p>
                    </div>
                    <h3 id="c087" class="p-even"><span class="zt-h4 unit4-c">三、</span><span
                            class="qyls-h4 unit4-c">飞机下降过程中的工作</span></h3>
                    <p class="p-even">飞机着陆前30分钟开始下降,此时进行下降广播。乘务员根据各自号位职责完成飞机下降时的工作。</p>
@@ -1402,6 +1466,38 @@
                    <p class="p-odd">
                        乘务长带领组员进行航后讲评,可以采取乘务长一一点评或者乘务员个人点评的方式,对当次航班的服务质量及各方面工作进行评价,对航班中出现的问题进行分析及总结。乘务员要如实反映航班中发生或发现的问题,及时向乘务长反映航班中的信息。乘务长须将当次航班完成情况如实填写在乘务日志上进行备案,以便有关部门查阅。
                    </p>
                    <div class="video-box-left">
                        <p class="center text">
                            <video :src="videoPathFive" webkit-playsinline="true" x-webkit-airplay="true"
                                playsinline="true" x5-video-orientation="h5" x5-video-player-fullscreen="true"
                                x5-playsinline="" controls controlslist="nodownload" class="w100 video"
                                style=" border-radius: 10px; "></video>
                        </p>
                        <p class="center videoname">
                            <span>视频:项目八 任务2</span>
                            <el-tooltip class="item" effect="dark"
                                :content="chapterData.isCollectVideo04 ? '点击取消' : '点击收藏'" placement="top-start">
                                <img :src="collectResourceList.findIndex(item => item.id == 'bc733c64bf978a4adf4c9a35c4c44e3f') > -1 ? collectCheck : collectImg"
                                    alt="" class="collect-btn" @click="handleCollect('video-05')" />
                            </el-tooltip>
                        </p>
                    </div>
                    <div class="video-box-left">
                        <p class="center text">
                            <video :src="videoPathSix" webkit-playsinline="true" x-webkit-airplay="true"
                                playsinline="true" x5-video-orientation="h5" x5-video-player-fullscreen="true"
                                x5-playsinline="" controls controlslist="nodownload" class="w100 video"
                                style=" border-radius: 10px; "></video>
                        </p>
                        <p class="center videoname">
                            <span>视频:任务五2</span>
                            <el-tooltip class="item" effect="dark"
                                :content="chapterData.isCollectVideo05 ? '点击取消' : '点击收藏'" placement="top-start">
                                <img :src="collectResourceList.findIndex(item => item.id == '079d20d6f10b212a2756ab6d2721cf71') > -1 ? collectCheck : collectImg"
                                    alt="" class="collect-btn" @click="handleCollect('video-06')" />
                            </el-tooltip>
                        </p>
                    </div>
                    <p class="left p-odd"><span class="bj2">任务工单▼</span></p>
                    <table border="1" cellpadding="4" cellspacing="0"
                        style="border-color: #5192c6; border-collapse: collapse" class="fz-15 mr-9">
@@ -1585,6 +1681,8 @@
</template>
<script>
import { getResourcePath } from "@/assets/methods/resources";
import { getCollectResource, setCollectResource } from "@/assets/methods/resources";
export default {
    name: "chapterEight",
    props: {
@@ -1594,6 +1692,21 @@
    },
    data() {
        return {
            collectImg: require("../../assets/images/icon/heart.png"),
            collectCheck: require("../../assets/images/icon/heart-check.png"),
            videoPathOne: "",
            videoPathTwo: "",
            videoPathThree: "",
            videoPathFour: "",
            videoPathFive: "",
            collectResourceList: [],
            chapterData: {
                isCollectVideo: false,
                isCollectVideo01: false,
                isCollectVideo02: false,
                isCollectVideo03: false,
                isCollectVideo04: false,
            },
            questionData: {
                teskOne: {
                    one: "",
@@ -1713,7 +1826,7 @@
            },
        };
    },
    mounted() {
    async mounted() {
        const bookQuestion = localStorage.getItem("aviation-book-chapter08");
        if (bookQuestion) {
            this.questionData = JSON.parse(bookQuestion);
@@ -1722,9 +1835,87 @@
        if (bookTableData) {
            this.tableData = JSON.parse(bookTableData);
        }
        const choiceQuestion = localStorage.getItem("aviation-book-chapter08-Data");
        if (choiceQuestion) {
            this.chapterData = JSON.parse(choiceQuestion);
        }
        this.getVidoePath();
        this.collectResourceList = await getCollectResource(this.config.activeBook.bookId)
    },
    methods: {
        async getVidoePath() {
            this.videoPathOne = await getResourcePath(
                "9ff093ee1af1f2b46e50766576b15efe"
            );
            this.videoPathTwo = await getResourcePath(
                "7303452278e8ff8c86f9320d9dfdb06c"
            );
            this.videoPathThree = await getResourcePath(
                "52e064fe476177beb5a3a3a7cdf3adb9"
            );
            this.videoPathFour = await getResourcePath(
                "8feffd5d540faf91ed00b075591ae87c"
            );
            this.videoPathFive = await getResourcePath(
                "bc733c64bf978a4adf4c9a35c4c44e3f"
            );
            this.videoPathSix = await getResourcePath(
                "079d20d6f10b212a2756ab6d2721cf71"
            );
        },
        handleCollect(e) {
            if (e == 'video-01') {
                this.handleCollectResource("9ff093ee1af1f2b46e50766576b15efe", "9ff093ee1af1f2b46e50766576b15efe", '', "视频", "bits", '视频:项目八 任务4')
                this.chapterData.isCollectVideo = !this.chapterData.isCollectVideo
            } else if (e == 'video-02') {
                this.handleCollectResource("7303452278e8ff8c86f9320d9dfdb06c", "7303452278e8ff8c86f9320d9dfdb06c", '', "视频", "bits", '视频:项目八 任务5')
                this.chapterData.isCollectVideo01 = !this.chapterData.isCollectVideo01
            } else if (e == 'video-03') {
                this.handleCollectResource("52e064fe476177beb5a3a3a7cdf3adb9", "52e064fe476177beb5a3a3a7cdf3adb9", '', "视频", "bits", '视频:项目八 任务3')
                this.chapterData.isCollectVideo02 = !this.chapterData.isCollectVideo02
            } else if (e == 'video-04') {
                this.handleCollectResource("8feffd5d540faf91ed00b075591ae87c", "8feffd5d540faf91ed00b075591ae87c", '', "视频", "bits", '视频:项目八 任务1')
                this.chapterData.isCollectVideo03 = !this.chapterData.isCollectVideo03
            } else if (e == 'video-05') {
                this.handleCollectResource("bc733c64bf978a4adf4c9a35c4c44e3f", "bc733c64bf978a4adf4c9a35c4c44e3f", '', "视频", "bits", '视频:项目八 任务2')
                this.chapterData.isCollectVideo04 = !this.chapterData.isCollectVideo04
            } else if (e == 'video-06') {
                this.handleCollectResource("079d20d6f10b212a2756ab6d2721cf71", "079d20d6f10b212a2756ab6d2721cf71", '', "视频", "bits", '视频:任务五2')
                this.chapterData.isCollectVideo05 = !this.chapterData.isCollectVideo05
            }
            this.handleChapterData();
        },
        //资源收藏事件
        // resourcePath  文件路径,
        // resourceType  文件类型
        // source        文件来源
        handleCollectResource(id, md5, resourcePath, resourceType, source, resourceName) {
            let list = this.collectResourceList
            if (list.findIndex(item => item.id == id) > -1) {
                list = list.filter(item => item.id != id)
            } else {
                list.push({
                    id,
                    md5,
                    resourcePath,
                    resourceType,
                    source,
                    resourceName,
                })
            }
            this.collectResourceList = list
            setCollectResource(this.config.activeBook.bookId, this.collectResourceList)
        },
        handleChapterData() {
            localStorage.setItem(
                "aviation-book-chapter08-Data",
                JSON.stringify(this.chapterData)
            );
        },
        setBookQuestion() {
            localStorage.setItem(
                "aviation-book-chapter08",