《帝友 P2P 网络借贷系统》

《帝友 P2P 网络借贷系统》

本次任务完成时间:2018年12月1日~2018年12月15日
开发工具与关键技术:Microsoft Visual Studio ,SQL
完成模块功能:后台认证管理篇
项目流程图:
在这里插入图片描述
(1) 事务流程:登录-> 我的账户基础信息-> 个人信息申请-> 认证管理-> 信息审核-> 网站平台
一、功能实现
认证管理篇主要包括:实名认证,学历认证 ,手机认证,视频认证 ,材料审核 ,证明材料类型 。

1.实名认证如下图所示:
在这里插入图片描述
可对前台的传来的数据模糊查询出用户,对用户申请实名认证进行 人工审核,查看,修改操作。

人工审核如下所示:

在这里插入图片描述
2.学历认证:

在这里插入图片描述
多条件查询用户信息,管理员确认用户信息是否真实,审核通过否 , 进行审核,审核通过也可进行修改

管理员审核通过否也有认证记录:
在这里插入图片描述

3.手机短信认证:

在这里插入图片描述
后台手机认证用户信息,可添加用户手机号码,用户名自动判读是否存在,手机码号必须要正确,然后填写手机收到的验证码,即可提交保存。这里可审核和进行信息修改

后台一旦进行认证用户信息会有发送记录记录下来,可查看到用户手机号码,发送状态、时间,发送内容:

在这里插入图片描述

4.视频认证:

在这里插入图片描述

这里管理员会对用户申请视频认证信息进行审核与修改 操作。

5.材料审核:

在这里插入图片描述
材料审核主要包括:提交审核资料、上传、证明材料类型。查询出用户可对用户的材料信息进行修改,删除

在这里,用户的积分值必须是大于 0 的,否则系统会默认位审核失败:

在这里插入图片描述

6.证明材料类型:

在这里插入图片描述

可以添加材料类型,但材料类型名称是唯一的,这里会自动判断,完成信息可添加材料类型,可以对证明材料进行修改和删除

二,经典代码:

身份证正则判断:

//页面层代码<div class="col-lg-9 col-md-9 col-sm-9 reset"><input type="text" class="form-control" id="IdentityCard" name="IdentityCard" autocomplete="off"readonly /></div>
//身份证判断//1.验证身份证是否有误<script>var aCity = {11: "北京", 12: "天津", 13: "河北", 14: "山西", 15: "内蒙古", 21: "辽宁",22: "吉林", 23: "黑龙江", 31: "上海", 32: "江苏", 33: "浙江", 34: "安徽",35: "福建", 36: "江西", 37: "山东", 41: "河南", 42: "湖北", 43: "湖南",44: "广东", 45: "广西", 46: "海南", 50: "重庆", 51: "四川", 52: "贵州",53: "云南", 54: "西藏", 61: "陕西", 62: "甘肃", 63: "青海", 64: "宁夏",65: "新疆", 71: "台湾", 81: "香港", 82: "澳门", 91: "国外"}//2、正则表达式判断function isCardID(sId) {var iSum = 0;var info = "";if (!/^\d{17}(\d|x)$/i.test(sId)) return "你输入的身份证长度或格式错误";sId = sId.replace(/x$/i, "a");if (aCity[parseInt(sId.substr(0, 2))] == null) return "你的身份证地区非法";sBirthday = sId.substr(6, 4) + "-" + Number(sId.substr(10, 2)) + "-" + Number(sId.substr(12, 2));var d = new Date(sBirthday.replace(/-/g, "/"));if (sBirthday != (d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate())) return "身份证上的出生日期非法";for (var i = 17; i >= 0; i--) iSum += (Math.pow(2, i) % 11) * parseInt(sId.charAt(17 - i), 11);if (iSum % 11 != 1) return "你输入的身份证号非法";aCity[parseInt]return true;}$("#IdentityCard").change(function () {//获取身份证var sId = $("#IdentityCard").val();if (isCardID(sId) != true) {layer.alert(isCardID(sId));}          });</script>

三,开发总结:

刚开始接触帝友 P2P 网络借贷系统的时候,有一些流程是比较懵的,因为之前一直做的是医院管理类型的系统,对于网络借贷类型的不熟悉,然后就必须要去了解它的流程,对系统的流程有一定了解之后才方便实施项目开发。有时候你没有注意到的地方,在后面的开发过程中才恍然大悟,就浪费了许多时间,所以在前面的时候必须经过认真思考。SQL的设计是至关重要的,整个项目靠SQL的数据贯通,我就在这里吃了亏,前面的SQL没有设计好,导致后面整改幅度大,即是浪费了许多不该浪费的时间。做认证管理这一篇,只要思路清晰,能够将代码与代码之间融会贯通,SQL设计妥当,相对来说是简单一些。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/443396.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#验证码

验证码生成 在学习以及做项目的过程中&#xff0c;我们有时候遇到需要验证码的情况&#xff0c;然后需要对它进行判断是否正确。但首先&#xff0c;我们就必须要生成验证码&#xff0c;才能够对其进行判断。 首先&#xff0c;这是控制层代码&#xff1a; //生成验证码public…

jquery工具箱旋转动画效果

jquery工具箱旋转动画效果 今天给大家分享一个工具箱的旋转动画效果&#xff0c;因为做GIS项目的时候所需要到&#xff0c;这是我在懒人之家看到的一个jquery鼠标点击按钮图标旋转弹出图标菜单旋转动画。 首先&#xff0c;可以引用插件&#xff0c;但因为项目所需&#xff0c;…

.NET短信接口验证

.NET短信接口验证 之前遇到的一个问题&#xff0c;因为没有接触过&#xff0c;所以自己上网查阅过资料也向他人请教以及老师&#xff0c;.NET短信接口调用&#xff0c;其实&#xff0c;网上有许多免费的短信接口平台&#xff0c;但也是有限度的&#xff0c;如果发送的数量过多…

密码判断

.NET(C#)密码判断 当我们需要对密码进行判断的时候&#xff0c;可以不使用提示框模态框的方法&#xff0c;用图片显示判断密码正确与否也是比较美观的&#xff0c;也实为方便&#xff0c;这也是老师提供一种方法。 首先&#xff0c;我们需要把样式铺垫好&#xff1a; <div…

身份证正则判断

身份证正则判断 今天分享的是身份证的正则判断&#xff0c;在很多时候需要到&#xff0c;所以在这里记录下来。之前做正则判断的时候&#xff0c;有一些小瑕疵&#xff0c;判断不够全面&#xff0c;正则判断&#xff0c;结构紧凑&#xff0c;全面的判断很重要&#xff0c;所以…

Oracle 单行函数

学习Oracle 单行函数&#xff1a; 包括字符函数&#xff0c;数值函数&#xff0c;日期函数&#xff0c;转换函数&#xff0c;通用函数。 dual是一个”伪表”&#xff0c;可以用来测试函数和表达式。 1&#xff0c; 字符函数 包括大小写控制函数&#xff0c;字符控制函数。 大小…

Oracle 多表查询 --笛卡尔集--左连接--右连接--1999 语法--满外连接

Oracle 多表查询总结 笛卡尔集现象&#xff1a; 笛卡尔集会在下面条件下产生: – 省略连接条件 – 连接条件无效 – 所有表中的所有行互相连接 为了避免笛卡尔集&#xff0c; 可以在where加入有效的连接条件。 Oracle 连接&#xff1a; 使用连接在多个表中查询数据。 在wher…

Oracle 数据库-分组函数总结

Oracle 分组函数 分组函数作用于一组数据&#xff0c;并对一组函数返回一个值。 组函数类型&#xff1a; avg&#xff0c;count&#xff0c;max&#xff0c;min&#xff0c;sum 可以对数值型数据使用avg和sum函数。 select avg(salary),min(salary),max(salary),sum(salary)…

在notepad++中配置java编译环境

在notepad中配置java编译环境 &#xff08;1&#xff09;首先&#xff0c;下载安装了Notepad&#xff0c;在菜单栏那里找到Plugin Manager&#xff0c;有一些版本是没有中文的&#xff0c;所有只有Plugin Manager&#xff0c;如果连Plugin Manager都没有&#xff0c;你则需要去…

Java 基础数据类型

Java 基础数据类型 Java的两大数据类型&#xff1a;基本数据类型、引用类型。 Java语言提供了八种基本数据类型。六种数字类型&#xff08;四个整数型&#xff0c;两个浮点型&#xff09;&#xff0c;一种字符类型&#xff0c;还有一种布尔型。 整形&#xff1a;byte&#xf…

Java获取系统时间

Java获取系统时间 Java获取系统时间 在java 中&#xff0c;有很多种方法都可以获取到系统的当前时间&#xff0c;但也需要到对应的类&#xff0c;不同的类自然有不同的方法。这里为大家介绍获取系统当前时间的四种方式。 1&#xff0e; 通过Calendar类来获取当前时间 需要引用…

Java单例模式的几种实现方式

Java单例模式的几种实现方式 在Java 中&#xff0c;单例类只能有一个实例&#xff0c;必须创建自己的唯一实例&#xff0c;单例类必须给所有其他对象提供这一实例。Java 单例模式有很多种实现方式&#xff0c;在这里给大家介绍单例模式其中的几种。分别是饿汉式&#xff0c;懒…

Java 中抽象类与接口

Java 抽象类&#xff1a; 在面向对象的概念中&#xff0c;所有的对象都是通过类来描绘的&#xff0c;但是反过来&#xff0c;并不是所有的类都是用来描绘对象的&#xff0c;如果一个类中没有包含足够的信息来描绘一个具体的对象&#xff0c;这个类就是抽象类。 抽象类不能创建…

Java 中的进程与线程的实现

了解进程与线程&#xff1a; 进程&#xff1a; 当一个程序进入内存运行时&#xff0c;即变成一个进程。进程是处于运行过程 中的程序&#xff0c;并且具有一定的独立功能&#xff0c;进程是系统进行资源分配和调度的一个独立单 位一般而言&#xff0c;进程包含如下三个特征&…

Java集合工具类:Collections

Java提供了一个操作Set、List和Map等集合的工具类&#xff1a;Collections&#xff0c;该工具类里 提供了大量方法对集合元素进行排序、查询和修改等操作&#xff0c;还提供了对集合对象实现同步控制等方法。 一、 排序操作 如下示例&#xff1a; public class CollectionsSor…

Java异常处理throws/throw

Java的异常被分为两大类&#xff1a;Checked异常和Runtime异常&#xff08;运行时异常&#xff09;。 • Runtime异常&#xff1a;所有的RuntimeException类及其子类的实例&#xff1b; • Checked异常&#xff1a;不是RuntimeException类及其子类的异常实例。 只有Java语言提供…

JDBC 连接MYSQL数据库

1. 加载驱动 Class.forName("com.mysql.jdbc.Driver");com.mysql.jdbc 包名 Driver 驱动名&#xff0c;驱动包需要引入进来 mysql com.mysql.jdbc.Driveroracle oracle.jdbc.driver.OracleDriversqlserver com.microsoft.sqlserver.jdbc.SQLServerDriver …

JSP 之输出九九乘法表

JSP是一种建立在Servlet规范提供的功能之上的动态网页技术&#xff0c;允许在网页文件中嵌入java代码和jsp标记。Java 服务器页面 (Java Server Page &#xff0c;JSP) 扩展名为 .jsp。 1&#xff0e;jsp的执行过程 Jsp文件在用户第一次请求时,会被编译成Servlet,然后由这个Se…

Java 重写与重载

方法的重写&#xff1a; 重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。 重写的好处在于子类可以根据需要&#xff0c;定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。 重写方法不能抛出新的检查异常或者比被重写方法申…

Java新增

在实践项目中我们有可能需要做到新增功能&#xff0c;新增一张表&#xff0c;或是新增多张表。这里我新增的是一张表。 这里主要描述DAO层与Servlet 层&#xff1a; DAO 层&#xff1a; public class UserDaoImpl implements UserDao {private Connection con null;private P…