前端猫眼影院后台部分代码

本文介绍了使用Node.js实现猫眼项目影院后台的过程,涉及代理服务器、三层架构和LayUI框架的应用。详细阐述了从创建文件夹结构,到编写proxy-service和target-service中的逻辑,包括logic、data model、dao、service和route各层的代码实现,最后在db.js中配置数据库连接,完成后台系统的搭建。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

猫眼项目的实现(影院后台):
所用知识:
1.代理服务器
2.三层架构
3.layUI框架
一、首先我们建立两个文件夹
在这里插入图片描述
注意:proxy-service为代理服务器,target-service为目标服务器
2.我们在proxy-service文件夹的下面public的mis的modules文件夹中写主要的逻辑。
代码如下:

// 影院模块

export default class Cinema {
   
    constructor() {
   
        this.render();
        this.deleteCin();
        this.handler();
    }

    render() {
   
        $("#cinema").html('');
        //渲染表格
        let template = `
        <table id="cinemaInfo" lay-filter="cinemaInfo"></table>
        <script type="text/html" id="barDemo">
            <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
            <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
        </script>
        <script type="text/html" id="toolbarDemo">
        <div class="layui-inline" style=" margin-left: 222px;">
            <button class="layui-btn " lay-event="add">新增</button>
            <div class="layui-input-inline"  style=" margin-left: 66px;">
            <input type="text" name="title" required lay-verify="required" placeholder="请输入查询电影院" autocomplete="off"
            class="layui-input" id="search">
            </div>
            <button type='button' class="layui-btn" data-type="reload" id="looklook">查询</button>
            <button type='button' class="layui-btn" data-type="reload" id="return">所有影院</button>

           </div>
        </script>
        `
        $("#cinema").html(template);

    }

    handler() {
   
        $('#cinema').off();
        // 渲染

        //以下是layUI的操作
        layui.use(['table', 'form', 'layer', 'jquery', 'laydate'], function () {
   
            var form = layui.form;
            var laydate = layui.laydate;
            var table = layui.table;
            form.render();

            // 判断是第一次刷新还是新增之后的刷新
            // if (cinemaToatl) {
   
            //     //新增刷新
            //     cinemaCurrPage = Math.ceil(cinemaToatl / cinemaEachPage);
            // } 
            table.render({
   
                elem: '#cinemaInfo', // 数据渲染的容器
                url: '/api/cinemas/some',
                method: 'GET',
                page: {
   
                    limit: 5,
                    limits: [5, 10, 15, 20],
                    curr: cinemaCurrPage
                },           // 开启分页
                toolbar: '#toolbarDemo',//工具栏
                response: {
   
                    statusName: 'status', //规定数据状态的字段名称,默认:code
                    statusCode: 200, //规定成功的状态码,默认:0
                    countName: 'total' //规定数据总数的字段名称,默认:count
                },

                id: 'cinemaInfo',
                cols: [[ // 表头
                    {
    title: 'ID', sort: true, width: 80, type: 'numbers' },
                    {
    field: 'name', title: '影院名称', align: 'center', },
                    {
    field: 'address', title: '影院地址', align: 'center', sort: true },
                    {
    field: 'phone', title: '影院联系方式', align: 'center', },
                    {
   
                        field: 'status', title: '营业状态', align: 'center', sort: true, templet: function (d) {
   
                            return d.status ? '营业中' : '未营业';
                        }
                    },
                    {
    field: '_id', title: '真实id', align: 'center', hide: true },
                    {
    fixed: 'right', title: '操作', align: 'center', width: 160, toolbar: '#barDemo' },
                ]],
                done: (res, curr, total) => {
   
                    cinemaToatl = total;
                    cinemaEachPage = res.eachPage;
                    cinemaCurrPage = curr;
                }
            });
            //新增按钮
            table.on('toolbar(cinemaInfo)', function (e) {
   
                if (e.event ==
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值