Sistema de gerenciamento de posto de gasolina | Sistema de gerenciamento de reabastecimento de posto de gasolina baseado em Springboot + Vue

Página inicial do autor: Bússola de programação

 

Sobre o autor: Criador de alta qualidade na área Java, especialista em blog CSDN, parceiro de conteúdo CSDN, autor convidado de Nuggets, especialista em blog Alibaba Cloud, autor convidado 51CTO, muitos anos de experiência em design de arquiteto, professor residente da sala de aula Tencent

Conteúdo principal: projeto Java, projeto Python, projeto front-end, inteligência artificial e big data, modelo de currículo, materiais de aprendizagem, banco de perguntas para entrevistas, assistência técnica mútua

Favoritos, curtidas, não se perca, é bom seguir o autor

Obtenha o código-fonte no final do artigo 

Número do item: BS-XX-211

1. Introdução ambiental

Localidade: Java: jdk1.8

Banco de dados: Mysql: mysql5.7

Servidor de aplicativos: Tomcat: tomcat8.5.31

Ferramentas de desenvolvimento: IDEA ou eclipse

2. Introdução do projeto

Este projeto usa Springboot + Vue para desenvolvimento de separação front-end e back-end e completa uma plataforma de sistema de gerenciamento de reabastecimento de posto de gasolina. O sistema simula completamente o modelo de negócios do sistema real de gerenciamento de posto de gasolina, realiza registro e login on-line de usuários front-end, recarga on-line e simula o reabastecimento selecionando a arma de reabastecimento. O centro pessoal do usuário pode visualizar e modificar informações pessoais, recarregar on-line e visualizar registros de recarga, registros de reabastecimento, etc.

Ao mesmo tempo, o sistema também oferece a função de administrador de plataforma, que realiza gerenciamento de pessoal, relatórios gráficos de estatísticas de desempenho e rotatividade de reabastecimento, gerenciamento de recarga, gerenciamento de anúncios, gerenciamento de mapa de carrossel, gerenciamento de focinho de reabastecimento, gerenciamento de registros de informações de reabastecimento, etc.

A seleção de tópicos deste sistema é relativamente nova e pode realizar o módulo de função de gerenciamento de negócios de processo completo de reabastecimento de postos de gasolina. É um sistema raro de alta qualidade.

O seguinte mostra a função do sistema

Três, exibição do sistema

Página inicial do sistema

registro de usuário

 Ver focinho de reabastecimento

 Realize operação de reabastecimento simulada

Gerenciamento de histórico do centro pessoal

Gestão de dados pessoais

 Ver registros de reabastecimento

 Gerenciamento de recarga

Exibição da função de gerenciamento de plano de fundo do administrador da plataforma

Estatísticas de informações do painel

gerenciamento de administrador

 Gerenciamento de usuários

 Gerenciamento de anúncios

 

 Gerenciamento de focinho de reabastecimento

 Gerenciamento de informações de reabastecimento

 Gerenciamento de recarga

Consulta de membro

Em quarto lugar, a exibição do código principal

package com.spring.controller;

import com.jntoo.db.*;
import com.jntoo.db.utils.*;
import com.spring.dao.*;
import com.spring.entity.*;
import com.spring.service.*;
import com.spring.util.*;
import com.spring.util.Info;
import java.util.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import tk.mybatis.mapper.entity.Example;

/**
 * 管理员 */
@Controller
public class AdminsController extends BaseController {

    @Autowired
    private AdminsMapper dao;

    @Autowired
    private AdminsService service;

    /**
     *  后台列表页
     *
     */
    @RequestMapping("/admins_list")
    public String list() {
        // 检测是否有登录,没登录则跳转到登录页面
        if (!checkLogin()) {
            return showError("尚未登录", "./login.do");
        }

        String order = Request.get("order", "id"); // 获取前台提交的URL参数 order  如果没有则设置为id
        String sort = Request.get("sort", "desc"); // 获取前台提交的URL参数 sort  如果没有则设置为desc
        int pagesize = Request.getInt("pagesize", 12); // 获取前台一页多少行数据
        Example example = new Example(Admins.class); //  创建一个扩展搜索类
        Example.Criteria criteria = example.createCriteria(); // 创建一个扩展搜索条件类
        String where = " 1=1 "; // 创建初始条件为:1=1
        where += getWhere(); // 从方法中获取url 上的参数,并写成 sql条件语句
        criteria.andCondition(where); // 将条件写进上面的扩展条件类中
        if (sort.equals("desc")) { // 判断前台提交的sort 参数是否等于  desc倒序  是则使用倒序,否则使用正序
            example.orderBy(order).desc(); // 把sql 语句设置成倒序
        } else {
            example.orderBy(order).asc(); // 把 sql 设置成正序
        }
        int page = request.getParameter("page") == null ? 1 : Integer.valueOf(request.getParameter("page")); // 获取前台提交的URL参数 page  如果没有则设置为1
        page = Math.max(1, page); // 取两个数的最大值,防止page 小于1
        List<Admins> list = service.selectPageExample(example, page, pagesize); // 获取当前页的行数

        // 将列表写给界面使用
        assign("totalCount", request.getAttribute("totalCount"));
        assign("list", list);
        assign("orderby", order); // 把当前排序结果写进前台
        assign("sort", sort); // 把当前排序结果写进前台
        return json(); // 将数据写给前端
    }

    public String getWhere() {
        _var = new LinkedHashMap(); // 重置数据
        String where = " ";
        // 以下也是一样的操作,判断是否符合条件,符合则写入sql 语句
        if (!Request.get("username").equals("")) {
            where += " AND username LIKE '%" + Request.get("username") + "%' ";
        }
        return where;
    }

    @RequestMapping("/admins_add")
    public String add() {
        _var = new LinkedHashMap(); // 重置数据

        return json(); // 将数据写给前端
    }

    @RequestMapping("/admins_updt")
    public String updt() {
        _var = new LinkedHashMap(); // 重置数据
        int id = Request.getInt("id");
        // 获取行数据,并赋值给前台jsp页面
        Admins mmm = service.find(id);
        assign("mmm", mmm);
        assign("updtself", 0);

        return json(); // 将数据写给前端
    }

    @RequestMapping("/admins_updtself")
    public String updtself() {
        _var = new LinkedHashMap(); // 重置数据
        // 更新个人资料
        int id = (int) request.getSession().getAttribute("id");
        Admins mmm = service.find(id);
        assign("mmm", mmm);
        assign("updtself", 1);
        return json(); // 将数据写给前端
    }

    /**
     * 添加内容
     * @return
     */
    @RequestMapping("/adminsinsert")
    public String insert() {
        _var = new LinkedHashMap(); // 重置数据
        String tmp = "";
        Admins post = new Admins(); // 创建实体类
        // 设置前台提交上来的数据到实体类中
        post.setUsername(Request.get("username"));

        post.setPwd(Request.get("pwd"));

        service.insert(post); // 插入数据
        int charuid = post.getId().intValue();

        if (isAjax()) {
            return jsonResult(post);
        }
        return showSuccess("保存成功", Request.get("referer").equals("") ? request.getHeader("referer") : Request.get("referer"));
    }

    /**
     * 更新内容
     * @return
     */
    @RequestMapping("/adminsupdate")
    public String update() {
        _var = new LinkedHashMap(); // 重置数据
        // 创建实体类
        Admins post = new Admins();
        // 将前台表单数据填充到实体类
        if (!Request.get("username").equals("")) post.setUsername(Request.get("username"));
        if (!Request.get("pwd").equals("")) post.setPwd(Request.get("pwd"));

        post.setId(Request.getInt("id"));
        service.update(post); // 更新数据
        int charuid = post.getId().intValue();

        if (isAjax()) {
            return jsonResult(post);
        }
        if (Request.getInt("updtself") == 1) {
            return showSuccess("保存成功", "admins_updtself.do");
        }

        return showSuccess("保存成功", Request.get("referer")); // 弹出保存成功,并跳转到前台提交的 referer 页面
    }

    /**
     *  删除
     */
    @RequestMapping("/admins_delete")
    public String delete() {
        _var = new LinkedHashMap(); // 重置数据
        if (!checkLogin()) {
            return showError("尚未登录");
        }
        int id = Request.getInt("id"); // 根据id 删除某行数据
        Map map = Query.make("admins").find(id);

        service.delete(id); // 根据id 删除某行数据
        return showSuccess("删除成功", request.getHeader("referer")); //弹出删除成功,并跳回上一页
    }
}
package com.spring.controller;

import com.jntoo.db.*;
import com.jntoo.db.utils.*;
import com.spring.dao.*;
import com.spring.entity.*;
import com.spring.service.*;
import com.spring.util.*;
import com.spring.util.Info;
import java.util.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import tk.mybatis.mapper.entity.Example;

/**
 * 加油枪口 */
@Controller
public class JiayouqiangkouController extends BaseController {

    @Autowired
    private JiayouqiangkouMapper dao;

    @Autowired
    private JiayouqiangkouService service;

    /**
     *  后台列表页
     *
     */
    @RequestMapping("/jiayouqiangkou_list")
    public String list() {
        // 检测是否有登录,没登录则跳转到登录页面
        if (!checkLogin()) {
            return showError("尚未登录", "./login.do");
        }

        String order = Request.get("order", "id"); // 获取前台提交的URL参数 order  如果没有则设置为id
        String sort = Request.get("sort", "desc"); // 获取前台提交的URL参数 sort  如果没有则设置为desc
        int pagesize = Request.getInt("pagesize", 12); // 获取前台一页多少行数据
        Example example = new Example(Jiayouqiangkou.class); //  创建一个扩展搜索类
        Example.Criteria criteria = example.createCriteria(); // 创建一个扩展搜索条件类
        String where = " 1=1 "; // 创建初始条件为:1=1
        where += getWhere(); // 从方法中获取url 上的参数,并写成 sql条件语句
        criteria.andCondition(where); // 将条件写进上面的扩展条件类中
        if (sort.equals("desc")) { // 判断前台提交的sort 参数是否等于  desc倒序  是则使用倒序,否则使用正序
            example.orderBy(order).desc(); // 把sql 语句设置成倒序
        } else {
            example.orderBy(order).asc(); // 把 sql 设置成正序
        }
        int page = request.getParameter("page") == null ? 1 : Integer.valueOf(request.getParameter("page")); // 获取前台提交的URL参数 page  如果没有则设置为1
        page = Math.max(1, page); // 取两个数的最大值,防止page 小于1
        List<Jiayouqiangkou> list = service.selectPageExample(example, page, pagesize); // 获取当前页的行数

        // 将列表写给界面使用
        assign("totalCount", request.getAttribute("totalCount"));
        assign("list", list);
        assign("orderby", order); // 把当前排序结果写进前台
        assign("sort", sort); // 把当前排序结果写进前台
        return json(); // 将数据写给前端
    }

    public String getWhere() {
        _var = new LinkedHashMap(); // 重置数据
        String where = " ";
        // 以下也是一样的操作,判断是否符合条件,符合则写入sql 语句
        if (!Request.get("qiangkoubianhao").equals("")) {
            where += " AND qiangkoubianhao LIKE '%" + Request.get("qiangkoubianhao") + "%' ";
        }
        if (!Request.get("qiangkoumingcheng").equals("")) {
            where += " AND qiangkoumingcheng LIKE '%" + Request.get("qiangkoumingcheng") + "%' ";
        }
        if (!Request.get("youpinleixing").equals("")) {
            where += " AND youpinleixing ='" + Request.get("youpinleixing") + "' ";
        }
        return where;
    }

    /**
     *  前台列表页
     *
     */
    @RequestMapping("/jiayouqiangkoulist")
    public String index() {
        String order = Request.get("order", "id");
        String sort = Request.get("sort", "desc");
        int pagesize = Request.getInt("pagesize", 12); // 获取前台一页多少行数据

        Example example = new Example(Jiayouqiangkou.class);
        Example.Criteria criteria = example.createCriteria();
        String where = " 1=1 ";
        where += getWhere();
        criteria.andCondition(where);
        if (sort.equals("desc")) {
            example.orderBy(order).desc();
        } else {
            example.orderBy(order).asc();
        }
        int page = request.getParameter("page") == null ? 1 : Integer.valueOf(request.getParameter("page"));
        page = Math.max(1, page);
        List<Jiayouqiangkou> list = service.selectPageExample(example, page, pagesize);

        assign("totalCount", request.getAttribute("totalCount"));
        assign("list", list);
        assign("where", where);
        assign("orderby", order);
        assign("sort", sort);
        return json();
    }

    @RequestMapping("/jiayouqiangkou_add")
    public String add() {
        _var = new LinkedHashMap(); // 重置数据

        return json(); // 将数据写给前端
    }

    @RequestMapping("/jiayouqiangkou_updt")
    public String updt() {
        _var = new LinkedHashMap(); // 重置数据
        int id = Request.getInt("id");
        // 获取行数据,并赋值给前台jsp页面
        Jiayouqiangkou mmm = service.find(id);
        assign("mmm", mmm);
        assign("updtself", 0);

        return json(); // 将数据写给前端
    }

    /**
     * 添加内容
     * @return
     */
    @RequestMapping("/jiayouqiangkouinsert")
    public String insert() {
        _var = new LinkedHashMap(); // 重置数据
        String tmp = "";
        Jiayouqiangkou post = new Jiayouqiangkou(); // 创建实体类
        // 设置前台提交上来的数据到实体类中
        post.setQiangkoubianhao(Request.get("qiangkoubianhao"));

        post.setTupian(Request.get("tupian"));

        post.setQiangkoumingcheng(Request.get("qiangkoumingcheng"));

        post.setYoupinleixing(Request.get("youpinleixing"));

        post.setShengyuyouliang(Request.getDouble("shengyuyouliang"));

        post.setJiage(Request.getDouble("jiage"));

        post.setBeizhu(Request.get("beizhu"));

        service.insert(post); // 插入数据
        int charuid = post.getId().intValue();

        if (isAjax()) {
            return jsonResult(post);
        }
        return showSuccess("保存成功", Request.get("referer").equals("") ? request.getHeader("referer") : Request.get("referer"));
    }

    /**
     * 更新内容
     * @return
     */
    @RequestMapping("/jiayouqiangkouupdate")
    public String update() {
        _var = new LinkedHashMap(); // 重置数据
        // 创建实体类
        Jiayouqiangkou post = new Jiayouqiangkou();
        // 将前台表单数据填充到实体类
        if (!Request.get("qiangkoubianhao").equals("")) post.setQiangkoubianhao(Request.get("qiangkoubianhao"));
        if (!Request.get("tupian").equals("")) post.setTupian(Request.get("tupian"));
        if (!Request.get("qiangkoumingcheng").equals("")) post.setQiangkoumingcheng(Request.get("qiangkoumingcheng"));
        if (!Request.get("youpinleixing").equals("")) post.setYoupinleixing(Request.get("youpinleixing"));
        if (!Request.get("shengyuyouliang").equals("")) post.setShengyuyouliang(Request.getDouble("shengyuyouliang"));
        if (!Request.get("jiage").equals("")) post.setJiage(Request.getDouble("jiage"));
        if (!Request.get("beizhu").equals("")) post.setBeizhu(Request.get("beizhu"));

        post.setId(Request.getInt("id"));
        service.update(post); // 更新数据
        int charuid = post.getId().intValue();

        if (isAjax()) {
            return jsonResult(post);
        }

        return showSuccess("保存成功", Request.get("referer")); // 弹出保存成功,并跳转到前台提交的 referer 页面
    }

    /**
     *  后台详情
     */
    @RequestMapping("/jiayouqiangkou_detail")
    public String detail() {
        _var = new LinkedHashMap(); // 重置数据
        int id = Request.getInt("id");
        Jiayouqiangkou map = service.find(id); // 根据前台url 参数中的id获取行数据
        assign("map", map); // 把数据写到前台
        return json(); // 将数据写给前端
    }

    /**
     *  前台详情
     */
    @RequestMapping("/jiayouqiangkoudetail")
    public String detailweb() {
        _var = new LinkedHashMap(); // 重置数据
        int id = Request.getInt("id");
        Jiayouqiangkou map = service.find(id);

        assign("map", map);
        return json(); // 将数据写给前端
    }

    /**
     *  删除
     */
    @RequestMapping("/jiayouqiangkou_delete")
    public String delete() {
        _var = new LinkedHashMap(); // 重置数据
        if (!checkLogin()) {
            return showError("尚未登录");
        }
        int id = Request.getInt("id"); // 根据id 删除某行数据
        Map map = Query.make("jiayouqiangkou").find(id);

        service.delete(id); // 根据id 删除某行数据
        return showSuccess("删除成功", request.getHeader("referer")); //弹出删除成功,并跳回上一页
    }
}

5. Exibição de trabalhos relacionados

Projetos práticos baseados em desenvolvimento Java, desenvolvimento Python, desenvolvimento PHP, desenvolvimento C# e outros desenvolvimentos de linguagens relacionadas

Projetos práticos de front-end desenvolvidos com base em Nodejs, Vue e outras tecnologias de front-end

Trabalhos relacionados baseados no miniaplicativo WeChat e no desenvolvimento de aplicativos Android APP

Desenvolvimento e aplicação de IoT embarcada baseada em 51 microcomputadores de chip único

Aplicativo inteligente de IA baseado em vários algoritmos

Vários sistemas de gerenciamento e recomendação de dados baseados em big data

 

 

Acho que você gosta

Origin blog.csdn.net/whirlwind526/article/details/132508588
Recomendado
Clasificación