Project practice (P1) (Day 28)

catalogue

Learning objectives:

Learning content:

Define CRM system for project analysis and division of project system modules

Concept:

System module division

Basic module

marketing management

Customer management:

Service Management:

Data report:

Design database table structure

Marketing management module

Customer management module

Customer information management

Customer Churn Management

Service management

System management

Permission module E-R model

Dictionary & log management

Environment construction

Technology used

Introducing coordinates & plug-ins

Add profile

Add static resource

Add view template

Add application startup class

Problems encountered:

resolvent:

Something new:

Renderings:

Learning experience:

Learning objectives:

In the spring move, you can take out a worthy project and complete the graduation project by the way

Learning content:

Define CRM system for project analysis and division of project system modules

Concept:

Customer relationship management refers to the process of improving the core competitiveness of enterprises, using corresponding information technology and Internet technology to coordinate the interaction between enterprises and customers in sales, marketing and service, so as to improve their management methods and provide customers with innovative and personalized customer interaction and service. Its ultimate goal is to attract new customers, retain old customers and turn existing customers into loyal customers to increase the market.

System module division

Basic module

Including basic user login, exit, remember me, password modification and other basic operations of the system

marketing management

Marketing opportunity management: the information entry function established by the inquiry needs of enterprise customers is convenient for the salesperson to follow up the customer needs

Marketing development plan: the development plan comes from more and more marketing opportunities. For the customers questioned by the enterprise, there will be corresponding salespeople to carry out specific communication with the customers. At this time, for the whole CRM system, the corresponding information management is carried out through the marketing development plan to improve the possibility of customers' purchase and enterprise leveling.

Customer management:

Basic information of his customer's contact person and his order completion management

Customer Churn Management: the operation of recovering or abandoning lost customers

Service Management:

Provide after-sales service to customers and send tasks to corresponding customer contacts to provide relevant services to customers

Data report:

See the customer composition, customer contribution, customer service and customer loss in the form of charts

Design database table structure

Marketing management module

Customer management module

Customer information management

Customer Churn Management

Service management

System management

Permission module E-R model

Dictionary & log management

Environment construction

Technology used

Introducing coordinates & plug-ins

 <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
  </properties>

  <parent>
    <artifactId>spring-boot-starter-parent</artifactId>
    <groupId>org.springframework.boot</groupId>
    <version>2.2.2.RELEASE</version>
  </parent>
  <dependencies>
    <!-- web environment -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!-- aop -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-aop</artifactId>
    </dependency>
    <!-- freemarker -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-freemarker</artifactId>
    </dependency>
    <!-- testing environment -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
    </dependency>
    <!-- mybatis -->
    <dependency>
      <groupId>org.mybatis.spring.boot</groupId>
      <artifactId>mybatis-spring-boot-starter</artifactId>
      <version>2.1.1</version>
    </dependency>
    <!-- Paging plug-in -->
    <dependency>
      <groupId>com.github.pagehelper</groupId>
      <artifactId>pagehelper-spring-boot-starter</artifactId>
      <version>1.2.13</version>
    </dependency>
    <!-- mysql -->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <scope>runtime</scope>
    </dependency>
    <!-- c3p0 -->
    <dependency>
      <groupId>com.mchange</groupId>
      <artifactId>c3p0</artifactId>
      <version>0.9.5.5</version>
    </dependency>
    <!-- commons-lang3 -->
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>3.5</version>
    </dependency>
    <!-- json -->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
      <version>1.2.47</version>
    </dependency>
    <!-- DevTools Hot deployment -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-devtools</artifactId>
      <optional>true</optional>
    </dependency>
  </dependencies>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>2.3.2</version>
          <configuration>
            <source>1.8</source>
            <target>1.8</target>
            <encoding>UTF-8</encoding>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.mybatis.generator</groupId>
          <artifactId>mybatis-generator-maven-plugin</artifactId>
          <version>1.3.2</version>
          <configuration>
            <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
            <verbose>true</verbose>
            <overwrite>true</overwrite>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-maven-plugin</artifactId>
          <configuration>
            <fork>true</fork>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>

Add profile

## Port number context path
server:
  port: 8080
  servlet:
    context-path: /crm

## Data source configuration
spring:
  datasource:
    type: com.mchange.v2.c3p0.ComboPooledDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/crm?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
    username: root
    password: Can't say

  ## freemarker
  freemarker:
    suffix: .ftl
    content-type: text/html
    charset: UTF-8
    template-loader-path: classpath:/views/

  ## Enable hot deployment
  devtools:
    restart:
      enabled: true
      additional-paths: src/main/java

## mybatis configuration
mybatis:
  mapper-locations: classpath:/mappers/*.xml
  type-aliases-package: com.xxxx.crm.vo;com.xxxx.crm.query;com.xxxx.crm.dto
  configuration:
    map-underscore-to-camel-case: true

## pageHelper paging
pagehelper:
  helper-dialect: mysql

## Set dao log printing level
logging:
  level:
    com:
      xxxx:
        crm:
          dao: debug

Add static resource

 

Add view template

 

Add application startup class

package com.xxxx.crm;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Starter {
    public static void main(String[] args) {
        SpringApplication.run(Starter.class);
    }
}

Problems encountered:

Plugin org.mybatis.generator:mybatis-generator-maven-plugin:1.3.2 not found

I can't download the package mybatis generator

resolvent:

Many methods have been tried on the Internet, but it is not possible to find the source code of mybatis generator. Therefore, on a whim, I chose to create a new project and adopt the online configuration IDEA configuring mybatis generator for automatic generation

Create a new project, complete the download of mybatis generator in another project, and then restart idea

Something new:

Seeing that many programmers write code with multiple lines of comments that can directly type the author's time, I envy it. I went to know it myself Set multi line annotation template in DEA

Renderings:

Study time:

2022/2/21 9:50-12:51,16:43-17:43,18:13-21:49,22: 49-0.09

Learning experience:

Today, I've been delayed in configuring the environment for a long time, and I've spent too much time looking for static resources and view templates. I'll start to finish the code tomorrow. I hope I can speed it up as soon as possible

Keywords: Java

Added by amosse on Mon, 21 Feb 2022 18:21:20 +0200