2024年Java最全Java+Springboot+H-ui实现营销管理系统,重难点整理

总结

这个月马上就又要过去了,还在找工作的小伙伴要做好准备了,小编整理了大厂java程序员面试涉及到的绝大部分面试题及答案,希望能帮助到大家

在这里插入图片描述

在这里插入图片描述

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

    • 1.软件环境
  • 2.功能模块图

  • 3.系统功能

  • 4.数据库表

  • 5.工程截图

  • 二、系统展示

    • 1.系统登录
  • 2.系统主页

  • 3.新增用户

  • 4.查询用户

  • 5.更新用户

  • 6.新增客户

  • 7.查询客户

  • 8.更新客户

  • 9.新增联系人

  • 10.查询联系人

  • 11.更新联系人

  • 12.新增线索

  • 13.查询线索

  • 14.更新线索

  • 15.新增商机

  • 16.查询商机

  • 17.更新商机

  • 三、代码实现

    • BusinessController
  • ClueController

  • ContactController

  • CustomerController

  • FrontendController

  • UserController

  • business-add.js

  • business-list.js

  • business-update.js

  • business-add.html

  • business-list.html

  • business-update.html

  • 四、其他

    • 1.其他系统实现
      • JavaWeb系统系列实现
  • JavaSwing系统系列实现

  • 2.获取源码

  • 3.备注

  • 4.鸡汤

一、系统介绍

=====================================================================

1.软件环境


IDEA:2018.2

Java:jdk1.8

Mysql:8.0.13

Tomcat:8.5.23

2.功能模块图


在这里插入图片描述

3.系统功能


系统设计的目标是开发一个能够实现线上营销管理的系统,实现线索、商机信息记录等功能。系统主要包含五个功能模块:线索信息管理模块、客户信息管理模块、联系人信息管理模块、商机信息管理模块、员工信息管理模块。各模块具体功能如下:

1.线索信息管理模块

销售人员登录系统后,将自己找到的线索信息录入到系统中,或查看系统中已有线索,对某些线索进行信息更新。

2.客户信息管理模块

销售人员登录系统后,将已经与公司产生交易的客户信息录入到系统中,或将已经达成交易的线索转化为客户,对某些已有客户信息进行更新。

3.联系人信息管理模块

销售人员登录系统后,录入系统中已存在客户的联系人的信息,方便以后进行客户的回访和关系维护。

4.商机信息管理模块

当之前的线索成交并转化为客户后,销售人员需要将已成交信息作为商机录入到系统中,供公司日后查看和分析。

5.员工信息管理模块

管理员在系统中为公司新入职销售人员添加账号,并维护其部门信息等基本信息,同时将已离职员工账号禁用。为更换手机号员工重置登录账号,为忘记密码员工重置密码。

4.数据库表


1.客户表

在这里插入图片描述

2.联系人表

在这里插入图片描述

3.商机表

在这里插入图片描述

4.线索表

在这里插入图片描述

5.用户表

在这里插入图片描述

5.工程截图


在这里插入图片描述

二、系统展示

=====================================================================

1.系统登录


在这里插入图片描述

2.系统主页


在这里插入图片描述

3.新增用户


在这里插入图片描述

4.查询用户


在这里插入图片描述

5.更新用户


在这里插入图片描述

6.新增客户


在这里插入图片描述

7.查询客户


在这里插入图片描述

8.更新客户


在这里插入图片描述

9.新增联系人


在这里插入图片描述

10.查询联系人


在这里插入图片描述

11.更新联系人


在这里插入图片描述

12.新增线索


在这里插入图片描述

13.查询线索


在这里插入图片描述

14.更新线索


在这里插入图片描述

15.新增商机


在这里插入图片描述

16.查询商机


在这里插入图片描述

17.更新商机


在这里插入图片描述

三、代码实现

=====================================================================

BusinessController


package com.example.cra.controller;

import com.example.cra.entity.Business;

import com.example.cra.entity.Contact;

import com.example.cra.service.BusinessService;

import com.example.cra.service.ContactService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.*;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

@RestController

@RequestMapping(“/business”)

public class BusinessController {

@Autowired

private BusinessService businessService;

@RequestMapping(value = “/addbusiness” , method = RequestMethod.POST)

public Map<String,Object> addBusiness(@RequestBody Business business) {

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

String result = businessService.addBusiness(business);

map.put(“msg”, result);

return map;

}

@RequestMapping(value = “/businessList” , method = RequestMethod.GET)

public Map<String,Object> businessList() {

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

List business = businessService.businessList();

map.put(“business”,business);

return map;

}

@RequestMapping(value = “/delbusiness” , method = RequestMethod.GET)

public Map<String,Object> delBusinesss(@RequestParam(“business_id”) String business_id) {

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

String result = businessService.delBusiness(Integer.parseInt(business_id));

map.put(“msg”,result);

return map;

}

@RequestMapping(value = “/querybusiness” , method = RequestMethod.POST)

public Map<String,Object> queryBusinesss(@RequestParam(“business_name”) String business_name,

@RequestParam(“business_state”) String business_state,

@RequestParam(“person”) String person) {

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

List business = businessService.queryBusiness(business_name,business_state,person);

map.put(“business”,business);

return map;

}

@RequestMapping(value = “/selectbusiness” , method = RequestMethod.POST)

public Map<String,Object> selectBusiness(@RequestParam(“business_id”) String business_id) {

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

Business business = businessService.selectBusiness(Integer.parseInt(business_id));

map.put(“business”,business);

return map;

}

@RequestMapping(value = “/updatebusiness” , method = RequestMethod.POST)

public Map<String,Object> updateBusiness(@RequestBody Business business) {

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

boolean result = businessService.updateBusiness(business);

map.put(“success”,result);

return map;

}

}

ClueController


package com.example.cra.controller;

import com.example.cra.entity.Clue;

import com.example.cra.service.ClueService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.*;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

@RestController

@RequestMapping(“/clue”)

public class ClueController {

@Autowired

private ClueService clueService;

@RequestMapping(value = “/addclue” , method = RequestMethod.POST)

public Map<String,Object> addClue(@RequestBody Clue clue) {

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

String result = clueService.addClue(clue);

map.put(“msg”, result);

return map;

}

@RequestMapping(value = “/clueList” , method = RequestMethod.GET)

public Map<String,Object> clueList() {

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

List clue = clueService.clueList();

map.put(“clue”,clue);

return map;

}

@RequestMapping(value = “/delclue” , method = RequestMethod.GET)

public Map<String,Object> delClues(@RequestParam(“clue_id”) String clue_id) {

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

String result = clueService.delClue(Integer.parseInt(clue_id));

map.put(“msg”,result);

return map;

}

@RequestMapping(value = “/queryclue” , method = RequestMethod.POST)

public Map<String,Object> queryClues(@RequestParam(“clue_name”) String clue_name,

@RequestParam(“person”) String person) {

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

List clue = clueService.queryClue(clue_name,person);

map.put(“clue”,clue);

return map;

}

@RequestMapping(value = “/selectclue” , method = RequestMethod.POST)

public Map<String,Object> selectClue(@RequestParam(“clue_id”) String clue_id) {

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

Clue clue = clueService.selectClue(Integer.parseInt(clue_id));

map.put(“clue”,clue);

return map;

}

@RequestMapping(value = “/updateclue” , method = RequestMethod.POST)

public Map<String,Object> updateClue(@RequestBody Clue clue) {

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

boolean result = clueService.updateClue(clue);

map.put(“success”,result);

return map;

}

}

ContactController


package com.example.cra.controller;

import com.example.cra.entity.Contact;

import com.example.cra.service.ContactService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.*;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

@RestController

@RequestMapping(“/contacts”)

public class ContactController {

@Autowired

private ContactService contactService;

@RequestMapping(value = “/addcontacts” , method = RequestMethod.POST)

public Map<String,Object> addContact(@RequestBody Contact contact) {

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

String result = contactService.addContact(contact);

map.put(“msg”, result);

return map;

}

@RequestMapping(value = “/contactsList” , method = RequestMethod.GET)

public Map<String,Object> contactList() {

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

List contact = contactService.contactList();

map.put(“contact”,contact);

return map;

}

@RequestMapping(value = “/delcontacts” , method = RequestMethod.GET)

public Map<String,Object> delContacts(@RequestParam(“cont_id”) String contacts_id) {

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

String result = contactService.delContact(Integer.parseInt(contacts_id));

map.put(“msg”,result);

return map;

}

@RequestMapping(value = “/querycontacts” , method = RequestMethod.POST)

public Map<String,Object> queryContacts(@RequestParam(“customer_name”) String customer_name,

@RequestParam(“telephone”) String telephone,

@RequestParam(“contacts_name”) String contacts_name) {

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

List contact = contactService.queryContact(customer_name,telephone,contacts_name);

map.put(“contact”,contact);

return map;

}

@RequestMapping(value = “/selectcontacts” , method = RequestMethod.POST)

public Map<String,Object> selectContact(@RequestParam(“cont_id”) String contacts_id) {

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

Contact contact = contactService.selectContact(Integer.parseInt(contacts_id));

map.put(“contact”,contact);

return map;

}

@RequestMapping(value = “/updatecontacts” , method = RequestMethod.POST)

public Map<String,Object> updateContact(@RequestBody Contact contact) {

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

boolean result = contactService.updateContact(contact);

map.put(“success”,result);

return map;

}

}

CustomerController


package com.example.cra.controller;

import com.example.cra.entity.Customer;

import com.example.cra.service.CustomerService;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.*;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

@RestController

@RequestMapping(“/customers”)

public class CustomerController {

@Autowired

private CustomerService customerService;

@RequestMapping(value = “/listCustomers” , method = RequestMethod.GET)

public Map<String,Object> listCustomers() {

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

List customers = customerService.getAllCustomers();

map.put(“customers”, customers);

return map;

}

@RequestMapping(value = “/querycustomers” , method = RequestMethod.POST)

public Map<String,Object> queryCustomer(@RequestParam(“customer_name”) String customer_name,

@RequestParam(“person”) String person,

@RequestParam(“customer_state”) String customer_state) {

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

List customer = customerService.queryCustomer(customer_name,person,customer_state);

map.put(“customer”, customer);

return map;

}

@RequestMapping(value = “/addcustomer” , method = RequestMethod.POST)

public Map<String,Object> addCustomer(@RequestBody Customer customer) {

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

String result = customerService.insertCustomer(customer);

map.put(“msg”, result);

return map;

}

@RequestMapping(value = “/updatecustomer” , method = RequestMethod.POST)

public Map<String,Object> updateCustomer(@RequestBody Customer customer) {

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

String result = customerService.updateCustomer(customer);

map.put(“msg”, result);

return map;

}

@RequestMapping(value = “/deletecustomer” , method = RequestMethod.POST)

public Map<String,Object> deleteCustomer(@RequestParam(“customer_id”) Integer customer_id) {

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

String result = customerService.deleteCustomer(customer_id);

map.put(“msg”, result);

return map;

}

@RequestMapping(value = “/getcustomer” , method = RequestMethod.POST)

public Map<String,Object> getCustomer(@RequestParam(“customer_id”) Integer customer_id) {

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

Customer customer = customerService.getCustomer(customer_id);

map.put(“customer”, customer);

return map;

}

}

FrontendController


package com.example.cra.controller;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

@Controller

@RequestMapping(“/front”)

public class FrontendController {

@RequestMapping(value = “/index”, method = RequestMethod.GET)

public String login() {

return “index”;

}

@RequestMapping(value = “/home”, method = RequestMethod.GET)

public String index() {

return “home”;

}

@RequestMapping(value = “/user-add”, method = RequestMethod.GET)

public String userAdd() {

return “user-add”;

}

@RequestMapping(value = “/user-list”, method = RequestMethod.GET)

public String userList() {

return “user-list”;

}

@RequestMapping(value = “/user-update”, method = RequestMethod.GET)

public String userUpdate() {

return “user-update”;

}

@RequestMapping(value = “/contact-add”, method = RequestMethod.GET)

public String contactAdd() {

return “contact-add”;

}

@RequestMapping(value = “/contact-list”, method = RequestMethod.GET)

public String contactList() {

return “contact-list”;

}

@RequestMapping(value = “/contact-update”, method = RequestMethod.GET)

public String contactUpdate() {

return “contact-update”;

}

@RequestMapping(value = “/customer-add”, method = RequestMethod.GET)

public String customerAdd() {

return “customer-add”;

}

@RequestMapping(value = “/customer-list”, method = RequestMethod.GET)

public String customerList() {

return “customer-list”;

}

@RequestMapping(value = “/customer-update”, method = RequestMethod.GET)

public String customerUpdate() {

return “customer-update”;

}

@RequestMapping(value = “/clue-add”, method = RequestMethod.GET)

public String bookinfoAdd() {

return “clue-add”;

}

@RequestMapping(value = “/clue-list”, method = RequestMethod.GET)

public String bookinfoList() {

return “clue-list”;

}

@RequestMapping(value = “/clue-update”, method = RequestMethod.GET)

public String bookinfoUpdate() {

return “clue-update”;

}

@RequestMapping(value = “/business-add”, method = RequestMethod.GET)

public String logAdd() {

return “business-add”;

}

@RequestMapping(value = “/business-list”, method = RequestMethod.GET)

public String logList() {

return “business-list”;

}

@RequestMapping(value = “/business-update”, method = RequestMethod.GET)

public String logUpdate() {

return “business-update”;

}

}

UserController


package com.example.cra.controller;

import com.example.cra.entity.User;

import com.example.cra.service.UserService;

import com.example.cra.util.SelectUsers;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;

import java.text.ParseException;

import java.util.*;

@RestController

@RequestMapping(“/users”)

public class UserController {

@Autowired

private UserService usersService;

//登录

@RequestMapping(value = “/login”, method = RequestMethod.POST)

public Map<String, Object> login(@RequestParam(“username”) String username,

@RequestParam(“password”) String password, HttpServletRequest request) {

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

User result = usersService.login(username, password);

if (result != null) {

request.getSession().setAttribute(“username”, username);

map.put(“success”, true);

map.put(“msg”, “登陆成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “登陆失败!”);

}

return map;

}

//系统管理员创建用户信息,默认角色为销售

@RequestMapping(value = “/addUsers”, method = RequestMethod.POST)

public Map<String, Object> addUsers(@RequestBody User user) throws ParseException {

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

String result = usersService.createUsers(user);

map.put(“msg”, result);

return map;

}

@RequestMapping(value = “/selectUsers”, method = RequestMethod.POST)

public Map<String, Object> selectUsers(@RequestParam(“select_username”) String username,

@RequestParam(“select_sex”) String sex,

@RequestParam(“select_role”) String role,

@RequestParam(“select_status”) String select_status) throws ParseException {

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

SelectUsers selectUsers = new SelectUsers();

selectUsers.setUsername(username);

selectUsers.setSex(sex);

selectUsers.setSelect_role(role);

selectUsers.setSelect_status(select_status);

List users = usersService.selectUsers(selectUsers);

map.put(“users”, users);

return map;

}

//修改用户角色

@RequestMapping(value = “/editUsers”, method = RequestMethod.POST)

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

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

String result = usersService.updateUser(user);

map.put(“msg”, result);

return map;

}

//系统管理员对系统所有用户进行删除

@RequestMapping(value = “/delUsers”, method = RequestMethod.GET)

public Map<String, Object> delUsers(@RequestParam(“user_id”) String user_id) {

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

String result = usersService.delUsers(user_id);

map.put(“msg”, result);

return map;

}

//系统管理员对系统所有用户进行查看

@RequestMapping(value = “/listUsers”, method = RequestMethod.GET)

public Map<String, Object> listUsers() {

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

List users = new ArrayList();

users = usersService.listUsers();

map.put(“users”, users);

return map;

}

//获取session

@RequestMapping(value = “/session”, method = RequestMethod.POST)

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

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

map.put(“session”, request.getSession().getAttribute(“username”));

return map;

}

//通过用户名获取用户id

@RequestMapping(value = “/getUserId”, method = RequestMethod.GET)

public Map<String, Integer> getUserId(@RequestParam(“username”) String username) {

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

Integer user_id = usersService.findUserIdByUserName(username);

map.put(“user_id”, user_id);

System.out.println(user_id);

return map;

}

//检测用户名

@RequestMapping(value = “/checkname”, method = RequestMethod.POST)

public Map<String, Object> checkname(@RequestParam(“username”) String username) {

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

String result = usersService.checkname(username);

map.put(“msg”, result);

return map;

}

@RequestMapping(value = “/selectuser”, method = RequestMethod.POST)

public Map<String, Object> selectuser(@RequestParam(“userid”) String user_id) {

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

User result = usersService.queryuser(Integer.parseInt(user_id));

map.put(“users”, result);

return map;

}

@RequestMapping(value = “/updateuser”, method = RequestMethod.POST)

public Map<String, Object> updateUser(@RequestBody User user) throws ParseException {

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

String result = usersService.updateUser(user);

map.put(“success”,result);

return map;

}

}

business-add.js


$(function () {

//刷新页面

$(‘#reload_btn’).click(function(){

$(‘#business_name’).val(‘’);

$(“#customer_name”).val(‘’);

$(‘#contacts’).val(‘’);

$(‘#amount’).val(‘’);

$(‘#date’).val(‘’);

$(‘#business_state’).val(‘’);

$(‘#create_time’).val(‘’);

$(‘#person’).val(‘’);

$(‘#remark’).val(‘’);

window.location.reload();

});

// 新增用户

$(‘#submit_btn’).click(function () {

var business_name = $(‘#business_name’).val();

var customer_name = $(“#customer_name”).val();

var contacts = $(‘#contacts’).val();

var amount = $(‘#amount’).val();

var date = $(‘#date’).val();

var business_state = $(‘#business_state’).val();

var create_time = $(‘#create_time’).val();

var person = $(‘#person’).val();

var remark = $(‘#remark’).val();

var param = {

“business_name”: business_name,

“customer_name”: customer_name,

“contacts”:contacts,

“amount”:amount,

“date”:date,

“business_state”:business_state,

“create_time”:create_time,

“person”: person,

“remark”: remark

};

$.ajax({

url: “/business/addbusiness”,

async: false,

cache: false,

知其然不知其所以然,大厂常问面试技术如何复习?

1、热门面试题及答案大全

面试前做足功夫,让你面试成功率提升一截,这里一份热门350道一线互联网常问面试题及答案助你拿offer

2、多线程、高并发、缓存入门到实战项目pdf书籍

3、文中提到面试题答案整理

4、Java核心知识面试宝典

覆盖了JVM 、JAVA集合、JAVA多线程并发、JAVA基础、Spring原理、微服务、Netty与RPC、网络、日志、Zookeeper、Kafka、RabbitMQ、Hbase、MongoDB 、Cassandra、设计模式、负载均衡、数据库、一致性算法 、JAVA算法、数据结构、算法、分布式缓存、Hadoop、Spark、Storm的大量技术点且讲解的非常深入

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

me = $(‘#business_name’).val();

var customer_name = $(“#customer_name”).val();

var contacts = $(‘#contacts’).val();

var amount = $(‘#amount’).val();

var date = $(‘#date’).val();

var business_state = $(‘#business_state’).val();

var create_time = $(‘#create_time’).val();

var person = $(‘#person’).val();

var remark = $(‘#remark’).val();

var param = {

“business_name”: business_name,

“customer_name”: customer_name,

“contacts”:contacts,

“amount”:amount,

“date”:date,

“business_state”:business_state,

“create_time”:create_time,

“person”: person,

“remark”: remark

};

$.ajax({

url: “/business/addbusiness”,

async: false,

cache: false,

知其然不知其所以然,大厂常问面试技术如何复习?

1、热门面试题及答案大全

面试前做足功夫,让你面试成功率提升一截,这里一份热门350道一线互联网常问面试题及答案助你拿offer

[外链图片转存中…(img-ScjPwD71-1714854441133)]

2、多线程、高并发、缓存入门到实战项目pdf书籍

[外链图片转存中…(img-HssVt2wQ-1714854441133)]

[外链图片转存中…(img-DBlzDOo2-1714854441134)]

[外链图片转存中…(img-NXRiGmI1-1714854441134)]

3、文中提到面试题答案整理

[外链图片转存中…(img-maNebcJC-1714854441134)]

4、Java核心知识面试宝典

覆盖了JVM 、JAVA集合、JAVA多线程并发、JAVA基础、Spring原理、微服务、Netty与RPC、网络、日志、Zookeeper、Kafka、RabbitMQ、Hbase、MongoDB 、Cassandra、设计模式、负载均衡、数据库、一致性算法 、JAVA算法、数据结构、算法、分布式缓存、Hadoop、Spark、Storm的大量技术点且讲解的非常深入

[外链图片转存中…(img-VNOIp0C1-1714854441135)]

[外链图片转存中…(img-Ae2PV7Hh-1714854441135)]

[外链图片转存中…(img-bbtPwbVy-1714854441135)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 29
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值