(Código-fonte anexado) Springboot Beauty Shopping Platform Conjunto de conclusão de computador 13185

Índice

Resumo

1Introdução _

1.1 Antecedentes e significado da pesquisa

1.2 Situação de desenvolvimento

1.3 Introdução à estrutura springboot

1.3 Estrutura do artigo e organização dos capítulos

2 Análise do sistema da plataforma de compras de beleza 

2.1 Análise de viabilidade

2.2 Análise do processo do sistema

2.2.1 Fluxo de dados

3.3.2 Processo de negócios

2.3 Análise da função do sistema

2.3.1 Análise funcional

2.3.2 Análise não funcional

2.4 Análise de casos de uso do sistema

2.5 Resumo deste capítulo

3 Design geral da plataforma de compras de beleza

3.1 Projeto de arquitetura do sistema

3.2 Projeto do módulo de função do sistema

3.2.1 Projeto geral do módulo funcional

3.2.2 Design do módulo do usuário

3.2.3 Design do módulo de gerenciamento de comentários

3.2.4 Projeto do módulo de gerenciamento de produtos de beleza

3.3 Projeto de banco de dados

3.3.1 Projeto da estrutura conceitual do banco de dados

3.3.2 Projeto da estrutura lógica do banco de dados

3.4 Resumo deste capítulo

4 Projeto detalhado e implementação de plataforma de compras de beleza 

4.1 Módulo de função do usuário

4.1.1 Interface da primeira página

4.1.2 Interface de registro de usuário

4.1.3 Interface de login do usuário

4.1.4 Interface da minha conta

4.1.5 Interface de informações de beleza

4.1.6 Interface de produtos de beleza

4.1.7 Interface de compra de pedido

4.2 Módulo de função do administrador

4.2.1 Interface de gerenciamento de anúncios do sistema

4.2.2 Interface de gerenciamento de recursos

4.2.3 Interface de gerenciamento de usuários do sistema

4.2.4 Interface de gerenciamento de produtos de beleza 

4.2.5 Interface de gerenciamento de pedidos de produtos 

4.2.6 Interface de gerenciamento de pontos de usuário 

5 teste de sistema

5.1 Objetivo do teste do sistema

5.2 Casos de teste do sistema

5.3 Resultados do teste do sistema

para concluir

referências

Agradecimentos  

Resumo

Na sociedade da informação, há necessidade de formas direcionadas de obtenção de informação, mas a expansão das formas é basicamente a direção que as pessoas almejam.Devido aos desvios de perspectiva, as pessoas muitas vezes podem obter diferentes tipos de informação, o que também é o problema mais difícil de ser superado pela tecnologia. Tendo em vista questões como a plataforma de compras de beleza, realizamos pesquisas e análises na plataforma de compras de beleza e, em seguida, desenvolvemos e projetamos uma plataforma de compras de beleza para resolver o problema.

Os principais módulos funcionais da plataforma de compras de beleza incluem carrossel (gerenciamento de carrossel) gerenciamento de anúncios do sistema (anúncio do sistema) gerenciamento de recursos (informações de beleza, classificação de informações) usuários do sistema (administradores, usuários comuns, usuários funcionários) gerenciamento de módulos (produtos de maquiagem de beleza, produtos tipos, pedidos de produtos, pedidos de cancelamento, confirmações de cancelamento, informações de envio, produtos de pontos, pontos de usuário, registros de resgate), etc., usando um modelo de desenvolvimento orientado a objetos para desenvolvimento de software e instalação de hardware, que pode ser muito bom para atender às necessidades de uso real, o trabalho correspondente de construção de software e codificação de programa foi aprimorado. MySQL é usado como a principal unidade de armazenamento de dados de segundo plano, e a estrutura springboot, tecnologia Java e tecnologia Ajax são usadas para codificar e desenvolver o sistema de negócios, realizando esta funcionalidade completa do sistema. Este relatório analisa primeiro os antecedentes, o papel e o significado da investigação, estabelecendo as bases para a racionalidade do trabalho de investigação. Analisar diversas necessidades e questões técnicas da plataforma de compras de beleza, comprovando a necessidade e viabilidade técnica do sistema e, em seguida, dando uma introdução básica ao software técnico e ideias de design que precisam ser usadas no sistema de design e, finalmente, realizando compras de beleza Plataformas e implantações são executadas usando-o.

Palavras-chave : tecnologia Java; MYSQL; plataforma de compras de beleza

Abstrato

Na sociedade da informação, há necessidade de canais de aquisição de informação direcionados, mas a expansão dos canais é basicamente a direção dos esforços das pessoas. Devido ao desvio de perspectiva, muitas vezes as pessoas podem obter diferentes tipos de informações, que também é o tema mais difícil de ser superado pela tecnologia. Realizar pesquisas e análises sobre plataformas de compras de produtos de beleza e outras questões e, em seguida, desenvolver e projetar uma plataforma de compras de produtos de beleza para resolver o problema.

e tecnologia Ajax para codificação e desenvolvimento de sistemas de negócios, atingindo todas as funções deste sistema. Este relatório analisa primeiro os antecedentes, o papel e o significado da investigação, estabelecendo as bases para a racionalidade do trabalho de investigação. Analise os diversos requisitos e questões técnicas da plataforma de compras de produtos de beleza, comprove a necessidade e a viabilidade técnica do sistema e, em seguida, forneça uma introdução básica ao software técnico e às ideias de design necessárias para projetar o sistema. Por fim, implemente a plataforma de compras de produtos de beleza e coloque-a em operação. Analise os diversos requisitos e questões técnicas da plataforma de compras de produtos de beleza, comprove a necessidade e a viabilidade técnica do sistema e, em seguida, forneça uma introdução básica ao software técnico e às ideias de design necessárias para projetar o sistema. Por fim, implemente a plataforma de compras de produtos de beleza e coloque-a em operação. Analise os diversos requisitos e questões técnicas da plataforma de compras de produtos de beleza, comprove a necessidade e a viabilidade técnica do sistema e, em seguida, forneça uma introdução básica ao software técnico e às ideias de design necessárias para projetar o sistema. Por fim, implemente a plataforma de compras de produtos de beleza e coloque-a em operação.

Palavras-chave : tecnologia Java; MYSQL; Plataforma de compras de beleza

1. Introdução

1.1 Antecedentes e significado da pesquisa

Nos últimos anos, com o rápido desenvolvimento da Internet móvel, além dos aplicativos básicos tradicionais, como navegação na web, busca de informações e envio de e-mails, a maioria dos internautas nacionais gradualmente se acostumou a aceitar funções tradicionais, como compras, comunicação, viagens e entretenimento através da Internet.Além disso, surgiram novos modelos de serviços, nos quais as compras online têm se tornado cada vez mais uma forma de compra importante na vida das pessoas. O rápido desenvolvimento da Internet forneceu uma forte garantia e apoio para o desenvolvimento de plataformas de compras de beleza. Além disso, o ambiente externo para compras on-line melhorou gradualmente. Os terminais móveis de Internet (telefones celulares, tablets) fizeram com que a estrutura dos internautas se tornasse mais e mais populares.Os métodos de pagamento e liquidação estão se tornando cada vez mais convenientes, os pontos do usuário estão se tornando cada vez mais acessíveis e os regulamentos e políticas correspondentes estão se tornando cada vez mais perfeitos. Hoje em dia, as compras online estão se tornando cada vez mais atraentes para as pessoas.A opinião das pessoas sobre as compras online também mudou da ignorância no início, da suspeita para a confiança gradual, da rejeição à aceitação e ao hábito. O conceito de compras online tem se tornado cada vez mais popular. Os principais fatores que levam as pessoas a fazer compras online são:

(1) Conveniente e rápido. As compras online estão disponíveis 24 horas por dia, as pessoas não precisam ir à loja para fazer compras e os produtos adquiridos também podem ser entregues diretamente em suas casas. Isso permite que os consumidores comprem seus produtos favoritos em todo o mundo sem sair de casa.

(2) Grande quantidade de informações. Comparado com os métodos de compra tradicionais, o comércio eletrônico pode acomodar uma grande quantidade de informações, incluindo produtos reais e virtuais. Além disso, também podem ser fornecidos alguns produtos especiais, que podem não só proteger a privacidade pessoal dos consumidores, mas também satisfazer as diferentes necessidades psicológicas dos consumidores.

(3) Forte privacidade. Às vezes, os consumidores usam compras on-line para comprar produtos que não desejam que outras pessoas conheçam.Tanto os vendedores quanto os pontos do usuário podem proteger a privacidade do usuário, evitando assim problemas desnecessários.

1.2 Situação de desenvolvimento

Devido ao crescimento da indústria de vendas online nos últimos anos, também aprendi algumas informações relevantes. Na China, as vendas anteriores eram apenas vendas tradicionais, enquanto as vendas online pareciam satisfazer a procura do mercado. Até agora, existem alguns nomes conhecidos como Taobao e Tmall. No entanto, este tipo de venda online também tem algumas desvantagens: os utilizadores não podem levantar as mercadorias imediatamente após fazerem uma encomenda e pagarem, e devem também considerar se as mercadorias estão danificadas. O sistema foi desenvolvido com base nas vendas na rede de mercadorias.

Após vários anos de desenvolvimento, muitos shoppings online reconhecidos pelos consumidores surgiram no país e no exterior. O conteúdo destes centros comerciais online é diversificado e contêm funções relativamente completas, incluindo utilizadores comuns, pesquisa de produtos, gestão de encomendas, introdução de detalhes de produtos e saída de mensagens online. Hoje em dia, a utilização generalizada da Internet levou, em certa medida, ao desenvolvimento de centros comerciais online no país e no estrangeiro.Desde que as empresas digitem online através desta plataforma, podem gerir o conteúdo do sistema a qualquer momento. Incentive os consumidores a comprar e realizar transações on-line, exibindo conteúdo de produtos e publicando anúncios.

1.3Introdução ao framework springboot

A estrutura Spring é uma estrutura de aplicativo de código aberto na plataforma Java que fornece um contêiner com características de inversão de controle. Embora o framework Spring em si não tenha restrições quanto ao modelo de programação, seu uso frequente em aplicações Java o tornou tão popular que posteriormente foi utilizado como complemento ou mesmo substituto do modelo EJB (Enterprise JavaBeans). A estrutura Spring fornece uma série de soluções para desenvolvimento, como a utilização dos principais recursos de inversão de controle e implementação de inversão de controle por meio de injeção de dependência para implementar a conteinerização do ciclo de vida do objeto gerenciado, usando programação orientada a aspectos para gerenciamento de transações declarativas e integração Uma variedade de tecnologias de persistência gerenciam o acesso a dados, fornecem um grande número de estruturas web excelentes para facilitar o desenvolvimento e assim por diante. A estrutura Spring possui o recurso Inversion of Control (IOC). O IOC foi projetado para facilitar a manutenção e o teste do projeto. Ele fornece um método para configuração e gerenciamento unificado de objetos Java por meio do mecanismo de reflexão Java. A estrutura Spring usa contêineres para gerenciar o ciclo de vida de objetos. O contêiner pode configurar objetos verificando arquivos XML ou anotações Java específicas em classes. Os desenvolvedores podem obter objetos por meio de pesquisa de dependência ou injeção de dependência. O framework Spring possui programação orientada a aspectos(AOP), a estrutura Spring AOP é baseada no modo proxy e é configurável em tempo de execução; a estrutura AOP modulariza principalmente preocupações cruzadas entre módulos. A estrutura AOP da estrutura Spring fornece apenas recursos básicos de AOP, embora não possa ser comparada com a estrutura AspectJ, mas também pode atender às necessidades básicas por meio da integração com AspectJ. O gerenciamento de transações, acesso remoto e outras funções na estrutura Spring podem ser realizados usando a tecnologia Spring AOP. A estrutura de gerenciamento de transações do Spring traz um mecanismo de abstração para a plataforma Java que permite que transações locais e globais, bem como transações aninhadas, funcionem com pontos de salvamento e em praticamente qualquer ambiente na plataforma Java. Spring integra uma variedade de modelos de transação, o sistema pode configurar transações por meio de modelos de transação, anotações XML ou Java, e a estrutura de transação integra funções como mensagens e cache. A estrutura de acesso a dados do Spring resolve dificuldades comuns que os desenvolvedores encontram ao usar bancos de dados em suas aplicações. Ele não apenas fornece suporte para todas as estruturas populares de acesso a dados, como Java: JDBC, iBATS/MyBATIs, Hibernate, Java Data Objects (JDO), ApacheOJB e ApacheCayne, mas também pode ser usado com o gerenciamento de transações do Spring para fornecer acesso a dados. . O framework Spring não pretendia inicialmente construir seu próprio framework Web MVC . Durante o processo de desenvolvimento, seus desenvolvedores acreditaram que a separação entre a camada de apresentação e a camada de processamento de solicitações do framework StrutsWeb existente, bem como entre a camada de processamento de solicitações e o modelo não foi suficiente, então eles criaram o SpringMVC.

1.4 Estrutura do artigo e organização dos capítulos

O artigo será organizado hierarquicamente. Além do resumo, agradecimentos e referências bibliográficas, o texto principal também analisará os requisitos do site, descreverá o design geral e as funções implementadas e, por fim, listará alguns registros de depuração. A estrutura principal do artigo é o seguinte:

Capítulo 1 Introdução. O primeiro capítulo apresenta principalmente os antecedentes da pesquisa do projeto, a situação atual do desenvolvimento do sistema e o conteúdo da pesquisa e trabalhos principais deste artigo.

Capítulo 2: Análise de requisitos do sistema. O Capítulo 2 conduz principalmente análises de demanda a partir dos aspectos dos usuários e funções do sistema.

Capítulo 3: Projeto do Sistema. O Capítulo 3 realiza principalmente o projeto funcional da estrutura do sistema, módulos de função do sistema e banco de dados.

Capítulo 4: Implementação do sistema. O Capítulo 4 apresenta principalmente a construção da estrutura do sistema e a implementação da interface do sistema.

Capítulo 5: Teste do sistema. O Capítulo 5 testa principalmente algumas interfaces do sistema e testa as funções principais.

Capítulo 6: Resumo.

2 Análise do sistema da plataforma de compras de beleza

A análise do sistema é um pré-requisito para o desenvolvimento de um projeto.Através da análise do sistema, as necessidades básicas dos principais usuários do sistema podem ser bem compreendidas, sendo esta também a razão do desenvolvimento do projeto. Em seguida, é realizada uma análise de viabilidade do desenvolvimento do sistema, que geralmente inclui viabilidade técnica, viabilidade econômica, etc. A análise de viabilidade é também uma análise da perspectiva geral do projeto. Em seguida, são analisados ​​os requisitos específicos do projeto. O método de análise geralmente é implementado por meio do diagrama de casos de uso do usuário. A seguir está uma introdução detalhada.

2.1 Análise de viabilidade

( 1) Viabilidade operacional:

O design deste projeto refere-se a vários casos de desenvolvimento de sites nesta modalidade, analisa suas interfaces de operação e combina muitos casos para destacar operações simplificadas orientadas para pessoas, para que pessoas com conhecimentos básicos de informática possam operar este projeto.

Portanto, não há problema de viabilidade operacional.

(2) Viabilidade técnica:

A viabilidade técnica refere-se à viabilidade de construção de uma estrutura, bem como à adaptabilidade do sistema à atualização tecnológica quando surgem melhores tecnologias, e à relação entre tempo e custo de desenvolvimento.

A tecnologia springboot existente pode atender à construção de todos os sistemas de comércio eletrônico. Ao desenvolver esta plataforma de compras de produtos de beleza, usei springboot+MYSQL para executar o programa geral.

Em resumo, não há problema com a viabilidade técnica.

(3) Viabilidade jurídica:

Do ponto de vista do desenvolvedor, springboot e MYSQL são de código aberto e gratuitos online, e não haverá disputas legais em relação aos direitos de propriedade intelectual.

Do ponto de vista do utilizador, desde que o contrabando deixe de ser vendido no sistema, são celebrados tratados e acordos com o sistema e os pagamentos ilegais são eliminados.

Em resumo, não há problema com a viabilidade jurídica.

2.2 Análise do processo do sistema

2.2.1 Fluxo de dados

O principal objetivo da plataforma de compras de beleza é fazer pedidos de produtos de beleza. A Figura 2-1 é o diagrama de fluxo de dados do sistema.

Figura 2-1 Visão ampliada das operações de pedido e compra de produtos de beleza

3.3.2 Processo de negócios

Depois de analisar o fluxo de dados do sistema, vamos dar uma olhada no processo de negócios do sistema. A Figura 2-2 é o fluxograma de negócios:

Figura 2-2 Fluxograma de negócios

2.3 Análise da função do sistema

2.3.1 Análise funcional

De acordo com as funções da plataforma de compras de beleza, dividi-a em três partes: usuários comuns, usuários funcionários e administradores.

Módulo de gerenciamento de usuário comum:

(1) Registro e login do usuário: Os usuários se registram como usuários e fazem login na plataforma de compras de beleza; os usuários adicionam, excluem, modificam e verificam informações pessoais, como informações pessoais e alterações de senha.

(2) Anúncio do sistema: O usuário clica no menu "Anúncio do sistema" para exibir todas as informações do anúncio do sistema divulgadas pelo administrador em segundo plano e pode visualizar os detalhes do anúncio do sistema.

(3) Informações de beleza: Quando o usuário clica no botão do menu “Informações de beleza”, todas as informações de beleza publicadas pelo administrador em segundo plano serão exibidas. Você pode visualizar detalhes, coletar, curtir, comentar, etc.;

(4) Produtos de beleza: Quando o usuário clica no botão de menu "Produtos de Beleza", todos os produtos de beleza divulgados pelo administrador serão exibidos em segundo plano. Ele suporta a busca de produtos de beleza por palavras-chave e a seleção dos produtos de beleza necessários. Clique no produto para entrar na interface de introdução detalhada do produto de beleza. Na interface detalhada, você pode visualizar o número do produto, nome do produto, tipo de produto, marca do produto, especificações do produto, preço unitário do produto, quantidade do produto, desconto do produto, funcionário responsável e outras informações. Ao mesmo tempo, você pode fazer pedidos, curtir, coletar e comentar;

(5) Faça um pedido de compra: Quando o usuário quiser fazer um pedido e comprar na interface de detalhes do produto de beleza, clique no botão "Fazer um pedido de compra" abaixo, e ele irá para a interface de preenchimento de informações de compra do pedido, e insira o pedido de acordo com as instruções da interface.Informações de compra, clique no botão "Enviar" e o pedido será concluído;

(6) Produtos baseados em pontos: os usuários podem visualizar produtos baseados em pontos.Quando encontrarem os produtos baseados em pontos que desejam conhecer, poderão entrar para ver introduções detalhadas.

(7) Minha Conta: Quando o usuário clica no botão "Minha" no canto superior direito, um submenu aparecerá. Clicar em "Minha Conta" pode definir e gerenciar informações pessoais, senhas para login no sistema e informações coletadas por si mesmo ;

Módulo de gerenciamento de administrador:

(1) Login: O administrador pode inserir o nome de usuário + senha para fazer login em segundo plano. O nome de usuário e a senha do administrador são definidos diretamente no banco de dados.

(2) Imagem do carrossel: Os administradores podem clicar no menu "Imagem do carrossel" para adicionar, excluir, modificar e verificar a imagem do carrossel exibida na página inicial.

(3) Anúncio do sistema: O administrador pode clicar no menu "Anúncio do sistema" para visualizar todas as informações de anúncio do sistema no sistema. O administrador pode modificar os anúncios do sistema existentes, adicionar novos anúncios do sistema ou excluir anúncios do sistema.

(4) Gerenciamento de recursos: O administrador pode clicar no menu “Gerenciamento de Recursos” para adicionar, excluir, modificar e verificar as informações de beleza e categorias de informações no submenu.

(5) Usuários do sistema: Os administradores podem clicar no menu "Usuários do Sistema" para gerenciar os usuários existentes no sistema, incluindo usuários administradores, usuários funcionários e usuários comuns.

( 6) Gerenciamento de módulo: No menu "Gerenciamento de módulo", veremos produtos de beleza, tipos de produtos, pedidos de produtos, pedidos de cancelamento, confirmações de cancelamento, informações de envio, produtos pontuais, registros de resgate, pontos de usuário, gerenciamento Os membros podem realizar adição, operações de exclusão, modificação e consulta nele.

2.3.2 Análise não funcional

Os requisitos não funcionais da plataforma de compras de produtos de beleza incluem segurança, confiabilidade, desempenho, escalabilidade, etc. Os detalhes podem ser expressos na seguinte tabela 3-1:

Tabela 3-1 Tabela de requisitos não funcionais da plataforma de compras de produtos de beleza

segurança

Refere-se principalmente à instalação do banco de dados da plataforma de compras de beleza, a utilização do banco de dados e a configuração de senhas devem obedecer às normas.

confiabilidade

Confiabilidade significa que a plataforma de compras de produtos de beleza pode operar de acordo com as instruções do usuário. Após o teste, a confiabilidade é superior a 90%.

desempenho

O desempenho é condição necessária para que uma plataforma de compras de beleza ocupe o mercado, por isso o melhor é ter um bom desempenho.

Escalabilidade

Por exemplo, o banco de dados reserva múltiplos atributos, como o uso de interfaces, para garantir os requisitos não funcionais do sistema.

Fácil de usar

Os usuários só precisam seguir o conteúdo de exibição da página da plataforma de compras de produtos de beleza e estão prontos para começar.

manutenibilidade

A manutenibilidade do desenvolvimento da plataforma de compras de beleza é muito importante.Após o teste, não há problemas com a manutenibilidade.

2.4 Análise de casos de uso do sistema

Através da análise das funções 2.3, obtém-se o diagrama de casos de uso desta plataforma de compras de beleza:

Um exemplo de função de usuário comum é mostrado na Figura 2-3.

Figura 2-3 Diagrama de caso de uso de funções de usuários comuns na plataforma de compras de produtos de beleza

O administrador do gerenciamento backend web mantém todas as informações dos dados em toda a plataforma de compras de produtos de beleza. Um exemplo da função de administrador é mostrado na Figura 2-4.

Figura 2-4 Diagrama de caso de uso da função de administrador da plataforma de compras de beleza

2.5 Resumo deste capítulo

Este capítulo determina principalmente as funções a serem realizadas por toda a plataforma de compras de produtos de beleza por meio de análise de viabilidade, análise de processos, análise de requisitos funcionais e análise de casos de uso do sistema da plataforma de compras de produtos de beleza. Ao mesmo tempo, também fornece padrões para implementação de código e teste de plataformas de compras de produtos de beleza.

3 Design geral da plataforma de compras de beleza

O conteúdo principal discutido neste capítulo inclui o design do módulo funcional e o design do sistema de banco de dados da plataforma de compras de produtos de beleza.

3.1 Projeto de arquitetura do sistema

Esta plataforma de compras de produtos de beleza é dividida em três camadas em termos de arquitetura: camada de apresentação (UI), camada de lógica de negócios (BLL) e camada de dados (DL).

Figura 3-1 Diagrama de projeto da arquitetura do sistema da plataforma de compras de produtos de beleza

Camada de apresentação (UI): Também conhecida como camada UI, ela completa principalmente a função de interação da UI desta plataforma de compras de beleza. Uma boa UI pode melhorar a experiência do usuário e aumentar o conforto do usuário ao usar esta plataforma de compras de beleza. O design da interface da IU também deve se adaptar a diferentes versões da plataforma de compras de produtos de beleza e resoluções de tamanhos diferentes para obter uma boa compatibilidade. Os requisitos da função de interação da interface do usuário são razoáveis, e os usuários devem obter resultados de interação consistentes ao realizar operações interativas, o que requer que a camada de apresentação esteja bem conectada com a camada de lógica de negócios.

Camada de lógica de negócios (BLL): completa principalmente a função de processamento de dados desta plataforma de compras de beleza. Os dados transmitidos pelo usuário da camada de apresentação são processados ​​pela camada de lógica de negócios e entregues à camada de dados.Os dados lidos pelo sistema a partir da camada de dados são processados ​​pela camada de lógica de negócios e entregues à camada de apresentação.

Camada de dados (DL): Como os dados desta plataforma de compras de beleza são colocados no banco de dados mysql no lado do servidor, as partes que pertencem à camada de serviço podem ser integradas diretamente na camada lógica de negócios. Portanto, existe apenas um banco de dados na camada de dados, que completa principalmente esta tarefa: funções de armazenamento e gerenciamento de dados da plataforma de compras de beleza.

3.2 Projeto do módulo de função do sistema

3.2.1 Projeto geral do módulo funcional

No capítulo anterior, foram analisados ​​​​principalmente os requisitos funcionais e não funcionais do sistema, e os casos de uso nesta plataforma de compras de produtos de beleza foram analisados ​​​​com base nos requisitos. Então o próximo passo é começar a projetar a arquitetura, principais funções e banco de dados desta plataforma de compras de beleza. A plataforma de compras de produtos de beleza é baseada na análise de demanda do capítulo anterior e seu diagrama geral do módulo de design é mostrado na Figura 3-2.

Figura 3-2 Diagrama do módulo funcional da plataforma de compras de produtos de beleza

3.2.2 Design do módulo do usuário

O gerenciador de backend pode adicionar, excluir, modificar e verificar os usuários cadastrados no frontend. O diagrama da estrutura do módulo do usuário é o seguinte:

Figura 3-3 Diagrama da estrutura do módulo do usuário

3.2.3 Design do módulo de gerenciamento de comentários

A plataforma de compras de beleza é uma plataforma aberta de comunicação, os usuários podem se comunicar na plataforma para aumentar a interação entre os usuários. Mas, ao mesmo tempo, para padronizar melhor o conteúdo dos comentários e dar aos administradores a função de excluir comentários inadequados, um módulo de gerenciamento de comentários precisa ser especialmente projetado. O diagrama de estrutura específico é o seguinte:

Figura 3-4 Diagrama de estrutura do módulo de comentários

3.2.4 Projeto do módulo de gerenciamento de produtos de beleza

A plataforma de compras de beleza precisa armazenar muitas informações sobre produtos de beleza. Sua estrutura funcional do módulo, o diagrama de estrutura específico é o seguinte:

Figura 3-5 Diagrama estrutural do módulo de informações de produtos de beleza

3.3 Projeto de banco de dados

O design do banco de dados geralmente inclui três processos principais: análise de demanda, design de modelo conceitual e criação de tabela de banco de dados.A análise de demanda foi explicada no capítulo anterior, e o design do modelo conceitual tem duas partes: modelo conceitual e design de estrutura lógica.

3.3.1 Projeto da estrutura conceitual do banco de dados

A seguir está o diagrama principal de relacionamento da entidade ER das principais tabelas do banco de dados em toda a plataforma de compras de produtos de beleza.

Figura 3-6 Diagrama de relacionamento ER total da plataforma de compras de produtos de beleza

3.3.2 Projeto da estrutura lógica do banco de dados

A partir do diagrama de relacionamento ER total na plataforma de compras de produtos de beleza na seção anterior, pode-se concluir que um total de muitas tabelas de dados precisam ser criadas. Aqui listo principalmente vários designs importantes de estrutura de tabela de banco de dados.

Tabela beauty_products (produtos de beleza)

número de série

nome

tipo de dados

comprimento

Casas decimais

Permitir valores nulos

chave primária

valor padrão

ilustrar

1

beleza_produtos_id

interno

10

0

N

S

ID do produto de beleza

2

número de produto

varchar

64

0

N

N

Número de produto

3

nome_comercial

varchar

64

0

S

N

Nome do Produto

4

tipo_commodity

varchar

64

0

S

N

Tipos de produtos

5

cobrir

varchar

255

0

S

N

cobrir

6

marca_do_produto

varchar

64

0

S

N

marca do produto

7

especificações do produto

varchar

64

0

S

N

Especificações do produto

8

preço_item

interno

10

0

S

N

0

Preço da mercadoria

9

quantidade de produto

interno

10

0

S

N

0

Número de produtos

10

desconto_produto

varchar

64

0

S

N

Descontos em produtos

11

Detalhes do produto

texto longo

2147483647

0

S

N

Detalhes do produto

12

funcionários_responsáveis

interno

10

0

S

N

0

Funcionário responsável

13

exitos

interno

10

0

N

N

0

Cliques

14

louvor_len

interno

10

0

N

N

0

Número de curtidas

15

recomendar

interno

10

0

N

N

0

Recomendação Inteligente

16

hora_de_criação

data hora

19

0

N

N

CURRENT_TIMESTAMP

hora de criação

17

tempo de atualização

carimbo de data/hora

19

0

N

N

CURRENT_TIMESTAMP

Tempo de atualização

Tabela cancel_of_order (cancelar pedido)

número de série

nome

tipo de dados

comprimento

Casas decimais

Permitir valores nulos

chave primária

valor padrão

ilustrar

1

cancelamento_de_pedido_id

interno

10

0

N

S

Cancelar ID do pedido

2

número do pedido

varchar

64

0

N

N

número do pedido

3

número de produto

varchar

64

0

S

N

Número de produto

4

nome_comercial

varchar

64

0

S

N

Nome do Produto

5

tipo_commodity

varchar

64

0

S

N

Tipos de produtos

6

marca_do_produto

varchar

64

0

S

N

marca do produto

7

especificações do produto

varchar

64

0

S

N

Especificações do produto

8

preço_item

interno

10

0

S

N

0

Preço da mercadoria

9

desconto_produto

varchar

64

0

S

N

Descontos em produtos

10

data do pedido

data

10

0

S

N

Data do pedido

11

funcionários_responsáveis

interno

10

0

S

N

0

Funcionário responsável

12

ordinary_users

int

10

0

Y

N

0

普通用户

13

purchase_quantity

int

10

0

Y

N

0

购买数量

14

payment_amount

varchar

64

0

Y

N

支付金额

15

consignee

varchar

64

0

Y

N

收货人

16

receiving_phone_number

varchar

64

0

Y

N

收货电话

17

shipping_address

varchar

64

0

Y

N

收货地址

18

reason_for_cancellation

text

65535

0

Y

N

取消原因

19

examine_state

varchar

16

0

N

N

未审核

审核状态

20

examine_reply

varchar

16

0

Y

N

审核回复

21

recommend

int

10

0

N

N

0

智能推荐

22

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

23

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表cancel_confirmation (取消确认)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

cancel_confirmation_id

int

10

0

N

Y

取消确认ID

2

order_number

varchar

64

0

N

N

订单号

3

product_number

varchar

64

0

Y

N

商品编号

4

trade_name

varchar

64

0

Y

N

商品名称

5

commodity_type

varchar

64

0

Y

N

商品类型

6

product_brand

varchar

64

0

Y

N

商品品牌

7

product_specifications

varchar

64

0

Y

N

商品规格

8

item_pricing

int

10

0

Y

N

0

商品单价

9

product_discount

varchar

64

0

Y

N

商品折扣

10

order_date

date

10

0

Y

N

下单日期

11

responsible_employees

int

10

0

Y

N

0

负责员工

12

ordinary_users

int

10

0

Y

N

0

普通用户

13

purchase_quantity

int

10

0

Y

N

0

购买数量

14

payment_amount

varchar

64

0

Y

N

支付金额

15

consignee

varchar

64

0

Y

N

收货人

16

receiving_phone_number

varchar

64

0

Y

N

收货电话

17

shipping_address

varchar

64

0

Y

N

收货地址

18

reason_for_cancellation

text

65535

0

Y

N

取消原因

19

recommend

int

10

0

N

N

0

智能推荐

20

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

21

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表comment (评论)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

comment_id

int

10

0

N

Y

评论ID:

2

user_id

int

10

0

N

N

0

评论人ID:

3

reply_to_id

int

10

0

N

N

0

回复评论ID:空为0

4

content

longtext

2147483647

0

Y

N

内容:

5

nickname

varchar

255

0

Y

N

昵称:

6

avatar

varchar

255

0

Y

N

头像地址:[0,255]

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

9

source_table

varchar

255

0

Y

N

来源表:

10

source_field

varchar

255

0

Y

N

来源字段:

11

source_id

int

10

0

N

N

0

来源ID:

表employee_users (员工用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

employee_users_id

int

10

0

N

Y

员工用户ID

2

employee_id

varchar

64

0

N

N

员工工号

3

employee_name

varchar

64

0

Y

N

员工姓名

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

recommend

int

10

0

N

N

0

智能推荐

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_id

mediumint

8

0

N

Y

公告id:

2

title

varchar

125

0

N

N

标题:

3

content

longtext

2147483647

0

Y

N

正文:

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表ordinary_users (普通用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

ordinary_users_id

int

10

0

N

Y

普通用户ID

2

user_name

varchar

64

0

N

N

用户姓名

3

user_gender

varchar

64

0

N

N

用户性别

4

examine_state

varchar

16

0

N

N

未审核

审核状态

5

recommend

int

10

0

N

N

0

智能推荐

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表point_products (积分商品)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

point_products_id

int

10

0

N

Y

积分商品ID

2

product_number

varchar

64

0

N

N

商品编号

3

trade_name

varchar

64

0

Y

N

商品名称

4

commodity_type

varchar

64

0

Y

N

商品类型

5

cover

varchar

255

0

Y

N

封面

6

product_brand

varchar

64

0

Y

N

商品品牌

7

product_specifications

varchar

64

0

Y

N

商品规格

8

unit_price_of_points

int

10

0

Y

N

0

积分单价

9

product_details

longtext

2147483647

0

Y

N

商品详情

10

responsible_employees

int

10

0

Y

N

0

负责员工

11

hits

int

10

0

N

N

0

点击数

12

recommend

int

10

0

N

N

0

智能推荐

13

limit_times

int

10

0

N

N

0

限制次数

14

limit_type

tinyint

4

0

N

N

1

限制次数类型1-每天次,2-总计次

15

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

16

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表product_orders (商品订单)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

product_orders_id

int

10

0

N

Y

商品订单ID

2

order_number

varchar

64

0

Y

N

订单号

3

product_number

varchar

64

0

Y

N

商品编号

4

trade_name

varchar

64

0

Y

N

商品名称

5

commodity_type

varchar

64

0

Y

N

商品类型

6

product_brand

varchar

64

0

Y

N

商品品牌

7

product_specifications

varchar

64

0

Y

N

商品规格

8

item_pricing

int

10

0

Y

N

0

商品单价

9

product_discount

varchar

64

0

Y

N

商品折扣

10

order_date

date

10

0

Y

N

下单日期

11

responsible_employees

int

10

0

Y

N

0

负责员工

12

ordinary_users

int

10

0

Y

N

0

普通用户

13

purchase_quantity

int

10

0

Y

N

0

购买数量

14

payment_amount

varchar

64

0

Y

N

支付金额

15

consignee

varchar

64

0

Y

N

收货人

16

receiving_phone_number

varchar

64

0

Y

N

收货电话

17

shipping_address

varchar

64

0

Y

N

收货地址

18

pay_state

varchar

16

0

N

N

未支付

支付状态

19

pay_type

varchar

16

0

Y

N

支付类型: 微信、支付宝、网银

20

recommend

int

10

0

N

N

0

智能推荐

21

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

22

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表product_type (商品类型)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

product_type_id

int

10

0

N

Y

商品类型ID

2

product_type

varchar

64

0

Y

N

商品类型

3

recommend

int

10

0

N

N

0

智能推荐

4

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表redemption_records (兑换记录)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

redemption_records_id

int

10

0

N

Y

兑换记录ID

2

exchange_number

varchar

64

0

Y

N

兑换号

3

product_number

varchar

64

0

Y

N

商品编号

4

trade_name

varchar

64

0

Y

N

商品名称

5

commodity_type

varchar

64

0

Y

N

商品类型

6

product_brand

varchar

64

0

Y

N

商品品牌

7

product_specifications

varchar

64

0

Y

N

商品规格

8

unit_price_of_points

int

10

0

Y

N

0

积分单价

9

responsible_employees

int

10

0

Y

N

0

负责员工

10

ordinary_users

int

10

0

Y

N

0

普通用户

11

consignee

varchar

64

0

Y

N

收货人

12

receiving_phone_number

varchar

64

0

Y

N

收货电话

13

shipping_address

varchar

64

0

Y

N

收货地址

14

recommend

int

10

0

N

N

0

智能推荐

15

user_id

int

10

0

N

N

0

用户ID

16

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

17

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表shipping_information (发货信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

shipping_information_id

int

10

0

N

Y

发货信息ID

2

order_number

varchar

64

0

N

N

订单号

3

product_number

varchar

64

0

Y

N

商品编号

4

trade_name

varchar

64

0

Y

N

商品名称

5

commodity_type

varchar

64

0

Y

N

商品类型

6

product_brand

varchar

64

0

Y

N

商品品牌

7

product_specifications

varchar

64

0

Y

N

商品规格

8

item_pricing

int

10

0

Y

N

0

商品单价

9

product_discount

varchar

64

0

Y

N

商品折扣

10

order_date

date

10

0

Y

N

下单日期

11

responsible_employees

int

10

0

Y

N

0

负责员工

12

ordinary_users

int

10

0

Y

N

0

普通用户

13

payment_amount

varchar

64

0

Y

N

支付金额

14

purchase_quantity

int

10

0

Y

N

0

购买数量

15

consignee

varchar

64

0

Y

N

收货人

16

receiving_phone_number

varchar

64

0

Y

N

收货电话

17

shipping_address

varchar

64

0

Y

N

收货地址

18

product_points

varchar

64

0

Y

N

商品积分

19

courier_number

varchar

64

0

Y

N

快递单号

20

recommend

int

10

0

N

N

0

智能推荐

21

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

22

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表user_points (用户积分)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_points_id

int

10

0

N

Y

用户积分ID

2

ordinary_users

int

10

0

Y

N

0

普通用户

3

total_points

int

10

0

Y

N

0

积分总数

4

recommend

int

10

0

N

N

0

智能推荐

5

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

3.4本章小结

整个美妆购物平台的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。

4 美妆购物平台详细设计与实现

美妆购物平台的详细设计与实现主要是根据前面的美妆购物平台的需求分析和美妆购物平台的总体设计来设计页面并实现业务逻辑。主要从美妆购物平台界面实现、业务逻辑实现这两部分进行介绍。

4.1用户功能模块

4.1.1 前台首页界面

当进入美妆购物平台的时候,首先映入眼帘的是系统的导航栏,下面是轮播图以及系统内容,其主界面展示如下图4-1所示。

图4-1 前台首页界面图

4.1.2 用户注册界面

不是美妆购物平台中正式用户的是可以在线进行注册的,如果你没有本美妆购物平台的账号的话,添加“注册”,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。其用用户注册界面展示如下图4-2所示。

图4-2 前台用户注册界面图

注册关键代码如下所示。

/**

     * 注册

     * @param user

     * @return

     */

    @PostMapping("register")

    public Map<String, Object> signUp(@RequestBody User user) {

        // 查询用户

        Map<String, String> query = new HashMap<>();

        query.put("username",user.getUsername());

        List list = service.select(query, new HashMap<>()).getResultList();

        if (list.size()>0){

            return error(30000, "用户已存在");

        }

        user.setUserId(null);

        user.setPassword(service.encryption(user.getPassword()));

        service.save(user);

        return success(1);

}

/**

     * 用户ID:[0,8388607]用户获取其他与用户相关的数据

     */

    @Id

    @GeneratedValue(strategy = GenerationType.IDENTITY)

    @Column(name = "user_id")

    private Integer userId;

    /**

     * 账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

     */

    @Basic

    @Column(name = "state")

    private Integer state;

    /**

     * 所在用户组:[0,32767]决定用户身份和权限

     */

    @Basic

    @Column(name = "user_group")

    private String userGroup;

    /**

     * 上次登录时间:

     */

    @Basic

    @Column(name = "login_time")

    private Timestamp loginTime;

    /**

     * 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时

     */

    @Basic

    @Column(name = "phone")

    private String phone;

    /**

     * 手机认证:[0,1](0未认证|1审核中|2已认证)

     */

    @Basic

    @Column(name = "phone_state")

    private Integer phoneState;

    /**

     * 用户名:[0,16]用户登录时所用的账户名称

     */

    @Basic

    @Column(name = "username")

    private String username;

    /**

     * 昵称:[0,16]

     */

    @Basic

    @Column(name = "nickname")

    private String nickname;

    /**

     * 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成

     */

    @Basic

    @Column(name = "password")

    private String password;

    /**

     * 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时

     */

    @Basic

    @Column(name = "email")

    private String email;

    /**

     * 邮箱认证:[0,1](0未认证|1审核中|2已认证)

     */

    @Basic

    @Column(name = "email_state")

    private Integer emailState;

    /**

     * 头像地址:[0,255]

     */

    @Basic

    @Column(name = "avatar")

    private String avatar;

    /**

     * 创建时间:

     */

    @Basic

    @Column(name = "create_time")

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")

    private Timestamp createTime;

    @Basic

    @Transient

    private String code;

}

4.1.3 用户登录界面

美妆购物平台中的前台上注册后的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到美妆购物平台的首页中;否则将会提示相应错误信息,用户登录界面如下图4-3所示。

图4-3用户登录界面图

登录关键代码如下所示。

 /**

     * 登录

     * @param data

     * @param httpServletRequest

     * @return

     */

    @PostMapping("login")

    public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

        log.info("[执行登录接口]");

        String username = data.get("username");

        String email = data.get("email");

        String phone = data.get("phone");

        String password = data.get("password");

        List resultList = null;

        Map<String, String> map = new HashMap<>();

        if(username != null && "".equals(username) == false){

            map.put("username", username);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }else{

            return error(30000, "账号或密码不能为空");

        }

        if (resultList == null || password == null) {

            return error(30000, "账号或密码不能为空");

        }

        //判断是否有这个用户

        if (resultList.size()<=0){

            return error(30000,"用户不存在");

        }

        User byUsername = (User) resultList.get(0);

        Map<String, String> groupMap = new HashMap<>();

        groupMap.put("name",byUsername.getUserGroup());

        List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();

        if (groupList.size()<1){

            return error(30000,"用户组不存在");

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();

            String res = String.valueOf(service.runCountSql(sql).getSingleResult());

            if (res==null){

                return error(30000,"用户不存在");

            }

            if (!res.equals("已通过")){

                return error(30000,"该用户审核未通过");

            }

        }

        //查询用户状态

        if (byUsername.getState()!=1){

            return error(30000,"用户非可用状态,不能登录");

        }

        String md5password = service.encryption(password);

        if (byUsername.getPassword().equals(md5password)) {

            // 存储Token到数据库

            AccessToken accessToken = new AccessToken();

            accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));

            accessToken.setUser_id(byUsername.getUserId());

            tokenService.save(accessToken);

            // 返回用户信息

            JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));

            user.put("token", accessToken.getToken());

            JSONObject ret = new JSONObject();

            ret.put("obj",user);

            return success(ret);

        } else {

            return error(30000, "账号或密码不正确");

        }

}

4.1.4我的账户界面

当用户点击右上角“我的”这个按钮,会出现子菜单,点击“我的账户”可以对个人的资料、登录系统的密码以及自己收藏的信息进行设置管理,我的账户界面如下图4-4所示。

图4-4我的账户界面图

4.1.5美妆资讯界面

当访客点击美妆购物平台中导航栏上的“美妆资讯”后将会进入到该“美妆资讯”列表的界面,然后选择想要看的美妆资讯,点击进入到详细界面,同时可以进行点赞、收藏、评论操作,美妆资讯界面如下图4-5 所示。

图4-5美妆资讯界面图

4.1.6美妆商品界面

当用户点击“美妆商品”这一菜单按钮,会显示管理员在后台发布的所有的美妆商品,支持通过关键词对美妆商品进行搜索,选择需要的美妆商品点击可以进入到美妆商品详细的介绍界面,在详细界面可以查看到商品的商品编号、商品名称、商品类型、商品品牌、商品规格、商品单价、商品数量、商品折扣、负责员工等信息,同时可以进行下单购买、点赞、收藏、评论操作,美妆商品界面如下图4-6所示。

                 

图4-6 美妆商品界面图

4.1.7下单购买界面

当用户在美妆商品详情界面想要进行下单购买,点击下方的“下单购买”按钮,就会跳转到下单购买信息填写界面,根据界面提示输入下单购买信息,点击“提交”按钮,下单购买就完成了,下单购买界面如下图4-7所示。

图4-7 下单购买界面图

4.2管理员功能模块

4.2.1系统公告管理界面

管理员点击“系统公告管理”菜单可以查看到系统中的所有系统公告信息,对已经存在的系统公告,管理员可以修改,也可以添加新的系统公告或者删除系统公告。界面如下图4-8所示。

图4-8系统公告管理界面图

系统公告管理代码如下。

 @PostMapping("/add")

    @Transactional

    public Map<String, Object> add(HttpServletRequest request) throws IOException {

        service.insert(service.readBody(request.getReader()));

        return success(1);

    }

    @Transactional

    public Map<String, Object> addMap(Map<String,Object> map){

        service.insert(map);

        return success(1);

}

    public Map<String,Object> readBody(BufferedReader reader){

        BufferedReader br = null;

        StringBuilder sb = new StringBuilder("");

        try{

            br = reader;

            String str;

            while ((str = br.readLine()) != null){

                sb.append(str);

            }

            br.close();

            String json = sb.toString();

            return JSONObject.parseObject(json, Map.class);

        }catch (IOException e){

            e.printStackTrace();

        }finally{

            if (null != br){

                try{

                    br.close();

                }catch (IOException e){

                    e.printStackTrace();

                }

            }

        }

        return null;

}

    public void insert(Map<String,Object> body){

        StringBuffer sql = new StringBuffer("INSERT INTO ");

        sql.append("`").append(table).append("`").append(" (");

        for (Map.Entry<String,Object> entry:body.entrySet()){

            sql.append("`"+humpToLine(entry.getKey())+"`").append(",");

        }

        sql.deleteCharAt(sql.length()-1);

        sql.append(") VALUES (");

        for (Map.Entry<String,Object> entry:body.entrySet()){

            Object value = entry.getValue();

            if (value instanceof String){

                sql.append("'").append(entry.getValue()).append("'").append(",");

            }else {

                sql.append(entry.getValue()).append(",");

            }

        }

        sql.deleteCharAt(sql.length() - 1);

        sql.append(")");

        log.info("[{}] - 插入操作:{}",table,sql);

        Query query = runCountSql(sql.toString());

        query.executeUpdate();

    }

4.2.2资源管理界面

管理员点击“资源管理”菜单能够对其下子菜单美妆资讯和资讯的分类进行增删改查。界面如下图4-9所示。

图4-9资源管理界面图

资源管理代码如下。

@RequestMapping(value = {"/count_group", "/count"})

    public Map<String, Object> count(HttpServletRequest request) {

        Query count = service.count(service.readQuery(request), service.readConfig(request));

        return success(count.getResultList());

}

4.2.3系统用户管理界面

管理员点击“系统用户”菜单可以对系统中存在的用户进行管理,包含了管理员用户、员工用户和普通用户。界面如下图4-10所示。

图4-10系统用户管理界面图

系统用户管理代码如下。

@RequestMapping(value = {"/avg_group", "/avg"})

public Map<String, Object> avg(HttpServletRequest request) {

        Query count = service.avg(service.readQuery(request), service.readConfig(request));

        return success(count.getResultList());

}

4.2.4美妆商品管理界面

管理员点击“美妆商品”会显示出所有的美妆商品信息,支持输入商品编号或者商品名称对美妆商品信息进行查询,如果想要添加新的美妆商品信息,点击“添加”按钮,输入商品编号、商品名称、商品类型、商品品牌、商品规格、商品单价、商品数量、商品折扣、负责员工等信息,点击“提交”按钮就可以添加了,同时可以选择某一条美妆商品信息,点击“删除”进行删除,也可以对用户提交的美妆商品评论的信息进行管控。界面如下图4-11所示。

图4-11美妆商品管理界面图

4.2.5商品订单管理界面

管理员点击“商品订单”会显示出所有的商品订单信息,支持输入订单号或者商品编号对商品订单信息进行查询,如果想要添加新的商品订单信息,点击“添加”按钮,输入相关信息,点击“提交”按钮就可以添加了,同时可以选择某一条商品订单信息,点击“删除”进行删除,也可以点击后面的“取消订单/订单发货”、“支付”按钮对商品订单的取消订单/订单发货信息进行更新维护、对商品订单的支付信息进行设置。界面如下图4-12所示。

图4-12 商品订单管理界面图

4.2.6用户积分管理界面

管理员点击“用户积分”会显示出所有的用户积分信息,支持通过普通用户或者积分总数对用户积分信息进行查询,如果想要添加新的用户积分信息,点击“添加”按钮,输入相关信息,点击“提交”按钮就可以添加了,同时可以选择某一条用户积分信息,点击“删除”进行删除。界面如下图4-13所示。

图4-13用户积分界面图

5系统测试

5.1系统测试的目的

系统开发到了最后一个阶段那就是系统测试,系统测试对软件的开发其实是非常有必要的。因为没什么系统一经开发出来就可能会尽善尽美,再厉害的系统开发工程师也会在系统开发的时候出现纰漏,系统测试能够较好的改正一些bug,为后期系统的维护性提供很好的支持。通过系统测试,开发人员也可以建立自己对系统的信心,为后期的系统版本的跟新提供支持。

5.2 系统测试用例

系统测试包括:用户登录功能测试、美妆商品展示功能测试、美妆商品添加、美妆商品搜索、密码修改功能测试,如表5-1、5-2、5-3、5-4、5-5所示:

用户登录功能测试:

表5-1 用户登录功能测试表

用例名称

用户登录系统

目的

测试用户通过正确的用户名和密码可否登录功能

前提

未登录的情况下

测试流程

1) 进入登录页面

2) 输入正确的用户名和密码

预期结果

用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入

实际结果

实际结果与预期结果一致

美妆商品查看功能测试:

表5-2 美妆商品查看功能测试表

用例名称

美妆商品查看

目的

测试美妆商品查看功能

前提

用户登录

测试流程

点击美妆商品列表

预期结果

可以查看到所有美妆商品

实际结果

实际结果与预期结果一致

管理员添加美妆商品界面测试:

表5-3 管理员添加美妆商品界面测试表

用例名称

美妆商品发布测试用例

目的

测试美妆商品发布功能

前提

用户正常登录情况下

测试流程

1)用户点击美妆商品管理就,然后点击添加后并填写信息。

2)点击进行提交。

预期结果

提交以后,页面首页会显示新的美妆商品 

实际结果

实际结果与预期结果一致

美妆商品搜索功能测试:

表5-4美妆商品搜索功能测试表

用例名称

美妆商品搜索测试

目的

测试美妆商品搜索功能

前提

测试流程

1)在搜索框填入搜索关键字。

2)点击搜索按钮。

预期结果

页面显示包含有搜索关键字的美妆商品

实际结果

实际结果与预期结果一致

密码修改功能测试:

表5-5 密码修改功能测试表

用例名称

密码修改测试用例

目的

测试管理员密码修改功能

前提

管理员用户正常登录情况下

测试流程

1)管理员密码修改并完成填写。

2)点击进行提交。

预期结果

使用新的密码可以登录

实际结果

实际结果与预期结果一致

5.3 系统测试结果

通过编写美妆购物平台的测试用例,已经检测完毕用户登录模块、美妆商品查看模块、美妆商品添加模块、美妆商品搜索模块、密码修改功能测试,通过这5大模块为美妆购物平台的后期推广运营提供了强力的技术支撑。

结论

至此,美妆购物平台已经结束,在开发前做了许多的准备,在本系统的设计和开发过程中阅览和学习了许多文献资料,从中我也收获了很多宝贵的方法和设计思路,对系统的开发也起到了很重要的作用,系统的开发技术选用的都是自己比较熟悉的,比如Web、springboot技术、MYSQL,这些技术都是在以前的学习中学到了,其中许多的设计思路和方法都是在以前不断地学习中摸索出来的经验,其实对于我们来说工作量还是比较大的,但是正是由于之前的积累与准备,才能顺利的完成这个项目,由此看来,积累经验跟做好准备是十分重要的事情。

当然在该系统的设计与实现的过程中也离不开老师以及同学们的帮助,正是因为他们的指导与帮助,我才能够成功的在预期内完成了这个系统。同时在这个过程当中我也收获了很多东西,此系统也有需要改进的地方,但是由于专业知识的浅薄,并不能做到十分完美,希望以后有机会可以让其真正的投入到使用之中。

参考文献

[1]苏以鹏,何维,宋朝霞,高阳,李凯,苏芮,林海,周英,汤彪武. 一种基于SpringBoot框架的审批文件加密批量上传方法及装置[P]. 四川省:CN112187948B,2023-04-25.

[2]刘维佳.社区式购物平台发展现状及前景分析[J].产业创新研究,2023(07):68-70.

[3]王振江,练渺渺. 一种基于SpringBoot的轻量级权限认证方法及框架[P]. 北京市:CN115374415B,2023-04-07.

[4]寇婧博,左寸芳.我国消费者反悔权制度浅析——以网络购物平台为视角[J].法制博览,2023(10):118-120.

[5]佟羽齐,刘德华,张栎柯,李剑波,张俊杰.基于SpringBoot框架的钻前管理系统的设计与实现[J].信息与电脑(理论版),2023,35(02):111-113.

[6]李晋华,葛毅,李世川.嵌入Java Web服务的桌面应用开发技术研究[J].电脑编程技巧与维护,2022(11):51-53.DOI:10.16184/j.cnki.comprg.2022.11.003.

[7]沈志元,张文健.基于Java技术的医院管理系统的设计与实现[J].电脑知识与技术,2022,18(32):38-40+54.DOI:10.14004/j.cnki.ckt.2022.1994.

[8]唐乙隽. 平台购物遇商家“消失” 千余元损失究竟谁负责[N]. 解放日报,2022-11-14(005).DOI:10.28410/n.cnki.njfrb.2022.004544.

[9]施炜. 购物平台百花齐放 今年“双十一”怎么打?[N]. 台州日报,2022-11-11(005).DOI:10.28812/n.cnki.ntzrb.2022.003198.

[10]宋佳音,卜彩丽.以小见大,挖掘数据价值——《网络购物平台客户行为数据分析》项目学习案例[J].中国信息技术教育,2022(20):43-45.

[11]侯明希,谭筠鹏.线上购物平台中的“信息茧房”现象——用户视角下的新解[J].广西科技师范学院学报,2022,37(05):76-85.

[12]谢霜.基于Java技术的网络管理体系结构的应用[J].网络安全技术与应用,2022(10):14-15.

[13]刘泽青. 移动购物平台用户体验对忠诚度的影响[D].西南大学,2022.DOI:10.27684/d.cnki.gxndx.2022.001953.

[14]王曼维,杨荻,李岩,及松洁.基于SpringBoot框架的智慧医疗问诊系统设计与实现[J].中国医学装备,2022,19(03):133-136.

[15]He Xinbin,Bai Yongbin,Yue Lisen,Wang Haixiao,Liu Yi. Design and Implementation of Information System Based on Java Technology Platform[J]. Journal of Physics: Conference Series,2021,2033(1).

[16]Qu Xiaona. Application of Java Technology in Dynamic Web Database Technology[J]. Journal of Physics: Conference Series,2021,1744(4).

[17]王超,张琪立,田广强,李晶晶.基于Springboot框架的学校机房计费管理系统的设计与实现[J].电子技术与软件工程,2020(23):159-160.

[18]Tian Ming Huang. Design and Implementation of App System for Legal Consulting Based on JAVA Technology[J]. Procedia Computer Science,2020,166(C).

致  谢

O falecido é como um homem que nunca desiste dia e noite. Em um piscar de olhos, a vida comum do usuário está chegando ao fim. Quando as pessoas enfrentam a separação e o fim, elas estão sempre cheias de relutância e confusão. Eu também sou o mesmo. Ainda me lembro daquele outono, não consegui esperar chegar um dia mais cedo na escola, de frente para a escola Olhando para o portão majestoso, fiquei cheio de expectativas: Será este o ponto de partida da minha nova vida? Naquele dia, o sol estava brilhando forte e a cerimônia de boas-vindas da escola foi muito calorosa. Enfrentei meus colegas que sorriam para mim, como se raios de sol brilhassem através do meu peito e chegando ao meu coração. Ao mesmo tempo, conheci minha adorável colega de quarto naquele dia, e demos as mãos, passamos dois anos inesquecíveis juntos. Agora, ao olhar para os agradecimentos deste artigo, não posso deixar de me perguntar: estamos nos despedindo agora?

Sinto-me inexplicável e não sei o que dizer. Lembro-me de quando cheguei à escola, sempre pensei que a escola de engenharia seria muito rígida e faltaria um pouco de ternura. Naquela época, fiquei até com um pouco de repulsa. Mas à medida que fui conhecendo e entendendo a escola, eu percebi sua beleza, sua ternura, e aos poucos me apaixonei por esse campus, mas o tempo passou tão rápido que tive que ir embora antes de poder apreciar plenamente sua beleza, mas as lembranças que ela me trouxe jamais serão esquecidas. me deixa, talvez meus olhos se encham de lágrimas no dia em que ela partir de verdade. Não é porque estou triste, só quero que a imagem dela esteja refletida em minhas lágrimas e gravada em meu coração. Por fim, gostaria de agradecer aos meus professores por nos ensinarem conhecimentos e princípios de vida; obrigado aos meus colegas de quarto por permanecerem comigo por tanto tempo; obrigado a todos que se importam e me apoiam.

Jovem, persiga o vento e a lua sem parar. Onde quer que haja planícies devastadas, há montanhas primaveris.

Por favor, siga e curta + envie uma mensagem privada ao blogueiro para receber o código-fonte do projeto gratuitamente

Acho que você gosta

Origin blog.csdn.net/ID3461074420/article/details/132813172
Recomendado
Clasificación