package it.com.action;
import it.com.dao.PowerControl;
import it.com.dao.UserDao;
import net.sf.json.JSONArray;
import java.io.IOException;
import java.io.PrintWriter;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
@org.springframework.stereotype.Controller
public class InitAction{
@Resource(name="ud")
UserDao ud;
@Resource
PowerControl power;
public PowerControl getPower() {
return power;
}
public void setPower(PowerControl power) {
this.power = power;
}
public UserDao getUd() {
return ud;
}
public void setUd(UserDao ud) {
this.ud = ud;
}
/*===================================================================== 登录注册忘记密码=============================================*/
@RequestMapping(value="login.action")
public void handleRequest(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
System.out.println("进入server");
System.out.println("hhhhh");
String username=arg0.getParameter("username");
String userpass1=arg0.getParameter("password");
BigInteger bigInteger=null;//高精度数据类型
try {
MessageDigest md = MessageDigest.getInstance("MD5");//说明加密类型
byte[] inputData = userpass1.getBytes();//字符转换成字节
md.update(inputData); //加密
bigInteger = new BigInteger(md.digest());//转换成高精度数字类型
System.out.println("MD加密后:" + bigInteger.toString()); //输出
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String userpass=bigInteger.toString();
System.out.println(username+"-------"+userpass);
int loginNum=ud.login(username,userpass);
System.out.println(loginNum);
PrintWriter out=arg1.getWriter();
out.println(loginNum);
}
@RequestMapping(value="getqusetion.action")
public void getqusetion(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
List list=ud.GetQusetion();
PrintWriter out=arg1.getWriter();
JSONArray jsonArray=JSONArray.fromObject(list);
out.println(jsonArray);
}
@RequestMapping(value="selectuser.action")
public void selectuser(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
String name=arg0.getParameter("username");
List list=ud.selectuserOn(name);
PrintWriter out=arg1.getWriter();
if (list.size()!=0) {
out.println("1");
}else {
out.println("2");
}
}
@RequestMapping(value="insert.action")
public void insertUser(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
String name=arg0.getParameter("username");
PrintWriter out=arg1.getWriter();
String pass1=arg0.getParameter("password");
BigInteger bigInteger=null;//高精度数据类型
try {
MessageDigest md = MessageDigest.getInstance("MD5");//说明加密类型
byte[] inputData = pass1.getBytes();//字符转换成字节
md.update(inputData); //加密
bigInteger = new BigInteger(md.digest());//转换成高精度数字类型
System.out.println("MD加密后:" + bigInteger.toString()); //输出
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String pass=bigInteger.toString();
int qusetion1=Integer.parseInt(arg0.getParameter("qusetion1"));
String answer1=arg0.getParameter("answer1");
int qusetion2=Integer.parseInt(arg0.getParameter("qusetion2"));
String answer2=arg0.getParameter("answer2");
int qusetion3=Integer.parseInt(arg0.getParameter("qusetion3"));
String answer3=arg0.getParameter("answer3");
String phone=arg0.getParameter("phone");
String email=arg0.getParameter("email");
String sfzid=arg0.getParameter("sfzid");
String logo=arg0.getParameter("logoimg");
System.out.println();
ud.InsertUser( name,pass,sfzid,phone,email,logo);
List<Map> list=ud.FindMsg(name);
int nameid=(int) ud.FindMsg(name).get(0).get("nameid");
System.out.println(list.get(0).get("nameid"));
ud.InsertSecurity(answer1,qusetion1,nameid);
ud.InsertSecurity(answer2,qusetion2,nameid);
ud.InsertSecurity(answer3,qusetion3,nameid);
}
@RequestMapping(value="forgetpass.action")
public void forgetpass(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
String name=arg0.getParameter("username");
int nameid=(int) ud.FindMsg(name).get(0).get("nameid");
System.out.println(nameid);
List<Map> list=ud.FindQusetionByNameid(nameid);
System.out.println(list.size()+"----=========");
Random randomNum=new Random();
int num1,num2;
while (true) {
num1=randomNum.nextInt(list.size());
num2=randomNum.nextInt(list.size());
if(num1!=num2) {
break;
}
}
System.out.println(num1+"---"+num2);
System.out.println(list.toString());
List<Map> newlist=new ArrayList<Map>();
System.out.println(list.get(num1));
System.out.println(list.get(num2));
newlist.add(list.get(num1));
newlist.add(list.get(num2));
JSONArray jsonArray=JSONArray.fromObject(newlist);
PrintWriter out=arg1.getWriter();
out.println(jsonArray);
}
@RequestMapping(value="VerificationSecurity.action")
public void VerificationSecurity(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
String name=arg0.getParameter("username");
PrintWriter out=arg1.getWriter();
int qusetion1=Integer.parseInt(arg0.getParameter("qusetion1"));
String answer1=arg0.getParameter("answer1");
int qusetion2=Integer.parseInt(arg0.getParameter("qusetion2"));
String answer2=arg0.getParameter("answer2");
int nameid=(int) ud.FindMsg(name).get(0).get("nameid");
System.out.println(ud.FindAnswerByNameid(nameid,qusetion1).get(0).get("answer")+"---"+answer1+"---"+ud.FindAnswerByNameid(nameid,qusetion2).get(0).get("answer").equals(answer2));
if (ud.FindAnswerByNameid(nameid,qusetion1).get(0).get("answer").equals(answer1)&&ud.FindAnswerByNameid(nameid,qusetion2).get(0).get("answer").equals(answer2)) {
out.println(0);
}else if (ud.FindAnswerByNameid(nameid,qusetion1).get(0).get("answer").equals(answer1)) {
out.println(1);
} else if (ud.FindAnswerByNameid(nameid,qusetion2).get(0).get("answer").equals(answer2)) {
out.println(2);
} else {
out.println(3);
}
}
/*====================================模块初始化用户信息================================*/
/*登录初始化用户信息*/
@RequestMapping(value="initUser.action")
public void initUser(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
String name=arg0.getParameter("name");
PrintWriter out=arg1.getWriter();
List user=ud.FindMsg(name);
JSONArray jsonArray=JSONArray.fromObject(user);
out.println(jsonArray);
}
/*登录初始化 修改用户信息*/
@RequestMapping(value="updateUser.action")
public void updateUser(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
String name=arg0.getParameter("username");
String phone=arg0.getParameter("phone");
String email=arg0.getParameter("email");
String logo=arg0.getParameter("logo");
String sfzid=arg0.getParameter("sfzid");
PrintWriter out=arg1.getWriter();
ud.UpdateUserMsgyByYzid(name, sfzid, logo, phone, email);
out.println("success");
}
/*========================================== 用户管理 初始化 及 增删改 =======================================*/
/*初始化页面遍历所有用户 及记录登录用户信息*/
@RequestMapping(value="main.action")
public void initList(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
int begin=Integer.parseInt(arg0.getParameter("begin"));
int size=Integer.parseInt(arg0.getParameter("size"));
int beginNum=(begin-1)*size;
String name=arg0.getParameter("name");
PrintWriter out=arg1.getWriter();
List<Map> list=ud.SelectAllUsersByLimit(beginNum, size);
//当前管理员不具备的权限
List<Map> nameidList=ud.selectuserOn(name);
int nameid=(int)nameidList.get(0).get("nameid");
/*System.out.println(nameidList.get(0).get("nameid"));*/
List<Map> powerNull = power.findpowerNotHave(nameid);
boolean flag1=true;
boolean flag2=true;
boolean flag3=true;
boolean delete=true;
for (Map power : powerNull) {
if(power.get("powerid").toString().equals("1")) {
flag1=false;
}
if(power.get("powerid").toString().equals("2")) {
flag2=false;
}
if(power.get("powerid").toString().equals("3")) {
flag3=false;
}
if(power.get("powerid").toString().equals("4")) {
delete=false;
}
}
for (Map map : list) {
if(flag1==false) {
map.put("phone", "******");
}
if(flag2==false) {
map.put("email", "******");
}
if(flag3==false) {
map.put("sfzid", "******");
}
}
int total=ud.SelectAllUsers().size();
System.out.println(list);
JSONArray json1=JSONArray.fromObject(list);
//转json的时候,字符串的引号存在转义的问题,注意一下
out.print("{\"total\":"+total+",\"users\":");
out.println(json1);
out.print(",\"delete\":"+delete);
out.print("}");
}
//手机找回密码
@RequestMapping(value="findphoneByname.action")
public void findphoneByname(HttpServletRequest request,HttpServletResponse response) throws IOException {
String name=request.getParameter("username");
String phone=ud.selectphoneByname(name);
char[] strs =phone.toCharArray();
StringBuffer phoneshow = new StringBuffer();
for (int i = 0; i < phone.length(); i++) {
if(i>=3) {
strs[i]='*';
}
phoneshow.append(strs[i]);
}
PrintWriter out = response.getWriter();
out.print(phoneshow);
}
//邮箱找回密码
@RequestMapping(value="findmailByname.action")
public void findmailByname(HttpServletRequest request,HttpServletResponse response) throws IOException {
String name=request.getParameter("username");
String email=ud.selectemailByname(name);
char[] strs =email.toCharArray();
StringBuffer emailshow = new StringBuffer();
for (int i = 0; i < email.length(); i++) {
if(i>=3) {
strs[i]='*';
}
emailshow.append(strs[i]);
}
PrintWriter out = response.getWriter();
out.print(emailshow);
}
//找回密码修改页
@RequestMapping(value="updatePasswordByname.action")
public void updatePasswordByname(HttpServletRequest request,HttpServletResponse response) throws IOException {
String name=request.getParameter("username");
String password=ud.md5(request.getParameter("password"));
String email=request.getParameter("email");
String phone=request.getParameter("phone");
String sfz=request.getParameter("sfz");
ud.updatePasswordByname(password, phone, email, sfz, name);
PrintWriter out = response.getWriter();
out.println("success");
}
/*================================================模板action===========================================================*/
@RequestMapping(value="testinit.action")
public void innitxx(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
String name=arg0.getParameter("username");
PrintWriter out=arg1.getWriter();
List<Map> list=ud.GetQusetion();
JSONArray jsonArray=JSONArray.fromObject(list);
out.println(jsonArray);
}
@RequestMapping(value="add.action")
public void addList(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
String wenti=arg0.getParameter("wenti");
String type=arg0.getParameter("type");
ud.InsertSecurityByAdmin(wenti,type);
PrintWriter out=arg1.getWriter();
out.println("success");
}
@RequestMapping(value="remove.action")
public void removeListByYzid(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
int yzid=Integer.parseInt(arg0.getParameter("yzid"));
System.out.println(yzid);
ud.DeleteSecurityByYzid(yzid);
PrintWriter out=arg1.getWriter();
out.println("success");
}
@RequestMapping(value="edit.action")
public void UpdateByYzid(HttpServletRequest arg0,HttpSession session,HttpServletResponse arg1) throws Exception {
int yzid=Integer.parseInt(arg0.getParameter("yzid"));
String security=arg0.getParameter("wenti");
String type=arg0.getParameter("type");
System.out.println(yzid);
ud.UpdateSecurityByYzid(yzid, security, type);
PrintWriter out=arg1.getWriter();
out.println("success");
}
}
/*================================================模板action===========================================================*/
最近下载更多
2206371875 LV7
2024年3月14日
364550246 LV15
2023年11月7日
最代码-宋家辉 LV61
2022年10月24日
29723247 LV8
2022年8月4日
330786215 LV14
2022年4月18日
13940562934 LV22
2021年12月29日
Demo1111 LV30
2021年10月7日
ouzhizi LV4
2021年8月18日
Kentucky LV5
2021年7月23日
Lawrence LV4
2021年7月4日
最近浏览更多
zolscy LV24
2024年11月28日
897258976 LV8
2024年8月29日
TY0165 LV20
2024年6月24日
XiaoSong888 LV3
2024年5月30日
lilitu LV6
2024年5月29日
alljavaers
2024年4月17日
暂无贡献等级
2206371875 LV7
2024年3月14日
zackery LV9
2023年11月26日
364550246 LV15
2023年11月7日
330786215 LV14
2023年6月29日

