Commit 6d3bd03d authored by zjy's avatar zjy

user/role/tright 5.28

银行卡表还需要添加修改接口
首页还没开发完
需要增加手机验证码
parent abcd3ba5
......@@ -65,22 +65,27 @@ public class CompanyController {
return ResponseResult.result(companyServiceImpl.saveBank(reqVo));
}
@RequestMapping(value = "/deleteBank", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public ResponseResult deleteBank(@RequestBody CompanyBankCardVo reqVo){
CheckerHelper.newInstance()
.notBlankCheck("companyBankCardId",reqVo.getId())
.checkException();
companyServiceImpl.deleteBank(reqVo);
return new ResponseResult();
}
private void checkBank(CompanyBankCardVo reqVo){
CheckerHelper.newInstance()
.notBlankCheck("bankCardCode",reqVo.getBankCardCode())
.notNumberCheck("bankCardCode",reqVo.getBankCardCode())
.notBlankCheck("bankName",reqVo.getBankName())
.notBlankCheck("bankAddress",reqVo.getBankAddress())
.notBlankCheck("bankCode",reqVo.getBankCode())
.notBlankCheck("type",reqVo.getType())
.notBlankCheck("companyId",reqVo.getCompanyId())
.notBlankCheck("name",reqVo.getName())
.notBlankCheck("idCard",reqVo.getIdCard())
.notBlankCheck("companyId",reqVo.getCompanyId())
.checkIdCard("idCard",reqVo.getIdCard())
.notBlankCheck("reservedPhone",reqVo.getReservedPhone())
.checkPhoneNo("reservedPhone",reqVo.getReservedPhone())
.notBlankCheck("bindingCode",reqVo.getBindingCode())
.notBlankCheck("bindingTime",reqVo.getBindingTime())
.checkException();
}
......@@ -90,7 +95,7 @@ public class CompanyController {
* @return 目前返回验证码
*/
@RequestMapping(value = "/bankSubmit", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public ResponseResult<String> bankSubmit(@RequestBody BankSubmitReqVo reqVo){
public ResponseResult<CompanyBankCardVo> bankSubmit(@RequestBody BankSubmitReqVo reqVo){
checkBank(reqVo);
CheckerHelper.newInstance()
.notBlankCheck("verifyCode",reqVo.getVerifyCode())
......@@ -98,6 +103,15 @@ public class CompanyController {
return ResponseResult.result(companyServiceImpl.bankSubmit(reqVo));
}
@RequestMapping(value = "/setDefault", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public ResponseResult setDefault(@RequestBody CompanyBankCardVo reqVo){
CheckerHelper.newInstance()
.notBlankCheck("bankCardId",reqVo.getId())
.checkException();
companyServiceImpl.setDefault(reqVo);
return new ResponseResult();
}
/**
* 获取银行卡列表
* @param reqVo 继承了分页对象,含公司id
......
......@@ -2,6 +2,7 @@ package com.pangding.web.authority.controller;
import com.pangding.web.authority.service.RegisterService;
import com.pangding.web.authority.service.VerifyCodeService;
import com.pangding.web.authority.util.LoginConstant;
import com.pangding.web.authority.vo.cloudvo.LoginResVo;
import com.pangding.web.authority.vo.reqvo.ComputerLoginReqVo;
import com.pangding.web.authority.vo.reqvo.LoginReqVo;
......@@ -38,35 +39,50 @@ public class LoginController {
* @param reqVo
* @return
*/
@RequestMapping(value = "/mobile", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
@RequestMapping(value = "/login", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public ResponseResult<LoginResVo> mobile(@RequestBody LoginReqVo reqVo){
CheckerHelper.newInstance()
.notBlankCheck("account or phone",reqVo.getAccountOrPhone())
.notBlankCheck("password",reqVo.getPassword())
.checkException();
LoginResVo resVo = registerServiceImpl.login(reqVo);
ResponseResult result = new ResponseResult();
if (LoginConstant.NOT_FINISH_BASIC_INFO.equals(resVo.getCode())){
result.setCode("01");
result.setMessage("基本信息未完善,跳转完善页面");
return result;
}else if (LoginConstant.HAVE_NO_BANK_CARD.equals(resVo.getCode())){
result.setCode("02");
result.setMessage("还未添加银行卡,跳转添加银行卡页面");
return result;
}else if (LoginConstant.NOT_SIGNING.equals(resVo.getCode())){
result.setCode("03");
result.setMessage("未签约,跳转签约页面");
return result;
}
return ResponseResult.result(registerServiceImpl.login(reqVo));
}
@RequestMapping(value = "/computer", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public ResponseResult<LoginResVo> computer(@RequestBody ComputerLoginReqVo reqVo, HttpSession session){
/*@RequestMapping(value = "/computer", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public ResponseResult<LoginResVo> computer(@RequestBody ComputerLoginReqVo reqVo, HttpSession session,HttpServletRequest request){
CheckerHelper.newInstance()
.notBlankCheck("account or phone",reqVo.getAccountOrPhone())
.notBlankCheck("password",reqVo.getPassword())
.notBlankCheck("verifyCode",reqVo.getVerifyCode())
.checkException();
return ResponseResult.result(registerServiceImpl.verifyLogin(reqVo,session));
return ResponseResult.result(registerServiceImpl.verifyLogin(reqVo,session,request));
}
/**
*//**
* 获取验证码图片
*
* @param request
* @param response
* @throws IOException
*/
*//*
@RequestMapping(value="/getImage",method= RequestMethod.GET,produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public ResponseResult getImage(HttpServletRequest request, HttpServletResponse response) throws IOException {
verifyCodeServiceImpl.getImage(request,response);
return new ResponseResult();
}
}*/
}
......@@ -2,6 +2,7 @@ package com.pangding.web.authority.dao;
import com.pangding.web.authority.vo.CompanyBankCardVo;
import com.pangding.web.authority.vo.reqvo.BankCardListReqVo;
import com.pangding.web.authority.vo.reqvo.CompanyBankCardSetNotDefaultReqVo;
import com.yanzuoguang.dao.BaseDao;
import com.yanzuoguang.util.vo.PageSizeData;
......@@ -16,4 +17,10 @@ public interface CompanyBankCardDao extends BaseDao {
* @return
*/
PageSizeData<CompanyBankCardVo> getBankCardList(BankCardListReqVo reqVo);
/**
* 将指定银行卡设置为非默认
* @param setNotDefaultReqVo 设置非默认的请求对象
*/
void setNotDefault(CompanyBankCardSetNotDefaultReqVo setNotDefaultReqVo);
}
......@@ -17,5 +17,10 @@ public interface CompanyDao extends BaseDao {
*/
void checkPhone(CompanyVo companyVo);
/**
* 获取公司列表分页对象
* @param reqVo
* @return
*/
PageSizeData<CompanyVo> getCompanyList(ListCompanyReqVo reqVo);
}
......@@ -3,6 +3,7 @@ package com.pangding.web.authority.dao.impl;
import com.pangding.web.authority.dao.CompanyBankCardDao;
import com.pangding.web.authority.vo.CompanyBankCardVo;
import com.pangding.web.authority.vo.reqvo.BankCardListReqVo;
import com.pangding.web.authority.vo.reqvo.CompanyBankCardSetNotDefaultReqVo;
import com.yanzuoguang.dao.impl.BaseDaoImpl;
import com.yanzuoguang.util.vo.PageSizeData;
import org.springframework.stereotype.Component;
......@@ -14,6 +15,7 @@ import org.springframework.stereotype.Component;
@Component
public class CompanyBankCardDaoImpl extends BaseDaoImpl implements CompanyBankCardDao {
private static final String GET_BANK_CARD_LIST = "GET_BANK_CARD_LIST";
private static final String SET_NOT_DEFAULT = "SET_NOT_DEFAULT";
@Override
protected void init() {
......@@ -21,6 +23,10 @@ public class CompanyBankCardDaoImpl extends BaseDaoImpl implements CompanyBankCa
table.add(GET_BANK_CARD_LIST,"select * from pd_company_bank_card where 1=1 ")
.add("companyId","and company_id = ?");
table.add(SET_NOT_DEFAULT,"update pd_company_bank_card a set a.is_default = 0 where 1=1 ")
.add("id","and id = ?")
.add("companyId","and company_id = ?");
}
/**
......@@ -32,4 +38,9 @@ public class CompanyBankCardDaoImpl extends BaseDaoImpl implements CompanyBankCa
public PageSizeData<CompanyBankCardVo> getBankCardList(BankCardListReqVo reqVo) {
return this.queryPage(CompanyBankCardVo.class,reqVo,GET_BANK_CARD_LIST,reqVo);
}
@Override
public void setNotDefault(CompanyBankCardSetNotDefaultReqVo setNotDefaultReqVo) {
this.updateSql(SET_NOT_DEFAULT,setNotDefaultReqVo);
}
}
......@@ -53,12 +53,16 @@ public interface CompanyService{
*/
String saveBank(CompanyBankCardVo reqVo);
void deleteBank(CompanyBankCardVo reqVo);
/**
* 提交银行卡信息,验证手机验证码,并更新银行卡状态
* @param reqVo 银行卡表数据+验证码
* @return 目前返回验证码
*/
String bankSubmit(BankSubmitReqVo reqVo);
CompanyBankCardVo bankSubmit(BankSubmitReqVo reqVo);
void setDefault(CompanyBankCardVo reqVo);
/**
* 获取我的二维码url
......
......@@ -6,6 +6,7 @@ import com.pangding.web.authority.vo.cloudvo.LoginResVo;
import com.pangding.web.authority.vo.reqvo.*;
import com.pangding.web.authority.vo.CompanyVo;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
/**
......@@ -35,7 +36,7 @@ public interface RegisterService {
*
* @param contactPhone 联系电话
*/
void checkPhone(String contactPhone);
void checkPhone(String id,String contactPhone);
/**
* 保存个人注册的公司信息
......@@ -62,7 +63,7 @@ public interface RegisterService {
*/
LoginResVo login(LoginReqVo reqVo);
LoginResVo verifyLogin(ComputerLoginReqVo reqVo, HttpSession session);
LoginResVo verifyLogin(ComputerLoginReqVo reqVo, HttpSession session, HttpServletRequest request);
String individualSubmit(IndividualSubmitReqVo reqVo);
......
......@@ -26,5 +26,5 @@ public interface VerifyCodeService {
* @param session
* @return
*/
void validImage(String verifyCode, HttpSession session);
void validImage(String verifyCode, HttpSession session,HttpServletRequest request);
}
......@@ -173,11 +173,14 @@ public class CompanyServiceImpl implements CompanyService{
* @return 银行卡表主键
*/
@Override
@Transactional(rollbackFor = Exception.class)
public String saveBank(CompanyBankCardVo reqVo) {
String id = StringHelper.getNewID();
reqVo.setId(id);
BankCardListReqVo reqVo1 = new BankCardListReqVo();
PageSizeData<CompanyBankCardVo> companyBankCardDaoBankCardList = companyBankCardDao.getBankCardList(reqVo1);
/*若该银行卡是第一张银行卡,则设为默认*/
if (null == companyBankCardDaoBankCardList || companyBankCardDaoBankCardList.getList().isEmpty()){
reqVo.setIsDefault(CompanyBankCardConstant.IS_DEFAULT);
}
......@@ -186,15 +189,36 @@ public class CompanyServiceImpl implements CompanyService{
return id;
}
@Override
public void deleteBank(CompanyBankCardVo reqVo) {
companyBankCardDao.remove(reqVo);
}
@Override
public void setDefault(CompanyBankCardVo reqVo) {
/*获取该银行卡的公司id*/
CompanyBankCardVo companyBankCardVo = companyBankCardDao.load(reqVo,CompanyBankCardVo.class);
String companyId = companyBankCardVo.getCompanyId();
/*现将该公司其他银行卡设为非默认*/
CompanyBankCardSetNotDefaultReqVo setNotDefaultReqVo = new CompanyBankCardSetNotDefaultReqVo();
setNotDefaultReqVo.setCompanyId(companyId);
companyBankCardDao.setNotDefault(setNotDefaultReqVo);
/*将该卡设置为默认银行卡并更新*/
companyBankCardVo.setIsDefault(CompanyBankCardConstant.IS_DEFAULT);
companyBankCardDao.update(companyBankCardVo);
}
/**
* 提交银行卡信息,验证手机验证码,并更新银行卡状态
* @param reqVo 银行卡表数据+验证码
* @return 目前返回验证码
*/
@Override
public String bankSubmit(BankSubmitReqVo reqVo) {
public CompanyBankCardVo bankSubmit(BankSubmitReqVo reqVo) {
/*此处应该将请求数据发送到第三方接口,获取到的返回值用于更新银行卡状态*/
return reqVo.getVerifyCode();
CompanyBankCardVo companyBankCardVo = new CompanyBankCardVo();
ObjectHelper.writeWithFrom(companyBankCardVo,reqVo);
return companyBankCardVo;
}
/**
......
......@@ -4,6 +4,7 @@ import com.pangding.web.authority.dao.*;
import com.pangding.web.authority.feign.StoreFeign;
import com.pangding.web.authority.service.CompanyService;
import com.pangding.web.authority.service.VerifyCodeService;
import com.pangding.web.authority.util.CompanyBankCardConstant;
import com.pangding.web.authority.util.TokenUtil;
import com.pangding.web.authority.vo.*;
import com.pangding.web.authority.vo.cloudvo.LoginResVo;
......@@ -18,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.util.ArrayList;
import java.util.List;
......@@ -110,8 +112,9 @@ public class RegisterServiceImpl implements RegisterService {
* @param contactPhone 联系电话
*/
@Override
public void checkPhone(String contactPhone) {
public void checkPhone(String id,String contactPhone) {
CompanyVo companyVo = new CompanyVo();
companyVo.setId(id);
companyVo.setContactPhone(contactPhone);
companyDaoImpl.checkPhone(companyVo);
}
......@@ -126,7 +129,7 @@ public class RegisterServiceImpl implements RegisterService {
@Transactional(rollbackFor = Exception.class)
public SaveCompanyResVo saveIndividual(RegisterIndividualReqVo reqVo) {
this.checkPhone(reqVo.getContactPhone());
this.checkPhone(reqVo.getId(),reqVo.getContactPhone());
CompanyVo companyVo = new CompanyVo();
ObjectHelper.writeWithFrom(companyVo,reqVo);
......@@ -137,10 +140,6 @@ public class RegisterServiceImpl implements RegisterService {
companyExtendDaoImpl.save(extendVo);
/*此处应该调用第三方接口发送手机验证码*/
CompanyBankCardVo companyBankCardVo = new CompanyBankCardVo();
companyBankCardVo.setCompanyId(reqVo.getId());
companyBankCardVo.setId(StringHelper.getNewID());
companyBankCardDaoImpl.save(companyBankCardVo);
UserVo userReqVo = new UserVo();
userReqVo.setCompanyId(reqVo.getId());
......@@ -165,7 +164,6 @@ public class RegisterServiceImpl implements RegisterService {
}
resVo.setCompanyId(companyVo.getId());
resVo.setCompanyBankCardId(companyBankCardVo.getId());
resVo.setCompanyExtendId(extendVo.getId());
resVo.setUserId(userVo.getId());
......@@ -182,7 +180,7 @@ public class RegisterServiceImpl implements RegisterService {
@Transactional(rollbackFor = Exception.class)
public SaveCompanyResVo saveEnterprice(RegisterEnterpriceReqVo reqVo) {
this.checkPhone(reqVo.getContactPhone());
this.checkPhone(reqVo.getId(),reqVo.getContactPhone());
CompanyVo companyVo = new CompanyVo();
ObjectHelper.writeWithFrom(companyVo,reqVo);
......@@ -199,6 +197,7 @@ public class RegisterServiceImpl implements RegisterService {
ObjectHelper.writeWithFrom(companyBankCardVo,reqVo);
companyBankCardVo.setId(StringHelper.getNewID());
companyBankCardVo.setCompanyId(reqVo.getId());
companyBankCardVo.setIsDefault(CompanyBankCardConstant.IS_DEFAULT);
companyBankCardDaoImpl.save(companyBankCardVo);
UserVo userReqVo = new UserVo();
......@@ -218,8 +217,7 @@ public class RegisterServiceImpl implements RegisterService {
req.setUsername(userVo.getAccount());
if (storeFeign.merchantCreate(req).getCode().equals("00")){
Merchant merchant = (Merchant) storeFeign.merchantCreate(req).getData();
String merchantId = merchant.getId();
String merchantId = (String) storeFeign.merchantCreate(req).getData();
resVo.setMerchantId(merchantId);
}
......@@ -249,7 +247,7 @@ public class RegisterServiceImpl implements RegisterService {
}
if (userVo == null){
throw new CodeException("没有此用户");
throw new CodeException("用户名或密码错误");
}
if (!(StringHelper.md5(reqVo.getPassword()).equals(userVo.getPassword()))){
......@@ -269,6 +267,17 @@ public class RegisterServiceImpl implements RegisterService {
companyGetReqVo.setId(userVo.getCompanyId());
CompanyVo companyVo = companyDaoImpl.load(companyGetReqVo,CompanyVo.class);
/*判断基本信息是否完善,及状态是否为2,若不完善则跳转完善页面*/
if (companyVo.getStatus() != 2){
resVo.setCode("01");
return resVo;
}
/*判断电子签约状态,若不为10,则跳转签约页面*/
else if (companyVo.getSigningStatus() != 10){
resVo.setCode("03");
return resVo;
}
LoginCompanyResVo loginCompanyResVo = new LoginCompanyResVo();
loginCompanyResVo.setId(companyVo.getId());
loginCompanyResVo.setStatus(companyVo.getStatus());
......@@ -282,6 +291,10 @@ public class RegisterServiceImpl implements RegisterService {
for (CompanyBankCardVo companyBankCardVo:companyBankCardVoList) {
bankCardCodeList.add(companyBankCardVo.getBankCardCode());
}
}else{
/*该公司没有银行卡,需要跳转添加银行卡*/
resVo.setCode("02");
return resVo;
}
loginCompanyResVo.setBankCardCodeList(bankCardCodeList);
......@@ -291,8 +304,8 @@ public class RegisterServiceImpl implements RegisterService {
}
@Override
public LoginResVo verifyLogin(ComputerLoginReqVo reqVo, HttpSession session) {
verifyCodeServiceImpl.validImage(reqVo.getVerifyCode(),session);
public LoginResVo verifyLogin(ComputerLoginReqVo reqVo, HttpSession session, HttpServletRequest request) {
verifyCodeServiceImpl.validImage(reqVo.getVerifyCode(),session,request);
LoginReqVo reqVo1 = new LoginReqVo();
ObjectHelper.writeWithFrom(reqVo1,reqVo);
return this.login(reqVo1);
......
......@@ -6,6 +6,7 @@ import com.pangding.web.authority.util.VerifyCodeUtil;
import com.yanzuoguang.util.exception.CodeException;
import org.springframework.stereotype.Service;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
......@@ -36,12 +37,16 @@ public class VerifyCodeServiceImpl implements VerifyCodeService {
// 生成随机字串
String verifyCode = VerifyCodeUtil.generateVerifyCode(VerifyCodeConstant.VERIFY_SIZE);
// 存入会话session
HttpSession session = request.getSession(true);
/*HttpSession session = request.getSession(true);*/
// 删除以前的
session.removeAttribute("verCode");
Cookie cookie = new Cookie("verCode",verifyCode.toLowerCase());
cookie.setMaxAge(60);
cookie.setPath("login/computer");
response.addCookie(cookie);
/*session.removeAttribute("verCode");
session.removeAttribute("codeTime");
session.setAttribute("verCode", verifyCode.toLowerCase());
session.setAttribute("codeTime", LocalDateTime.now());
session.setAttribute("codeTime", LocalDateTime.now());*/
// 生成图片
int width = VerifyCodeConstant.WIDTH;
int height = VerifyCodeConstant.HEIGHT;
......@@ -57,13 +62,25 @@ public class VerifyCodeServiceImpl implements VerifyCodeService {
* @return
*/
@Override
public void validImage(String verifyCode, HttpSession session) {
public void validImage(String verifyCode, HttpSession session,HttpServletRequest request) {
String code = verifyCode;
Object verCode = session.getAttribute("verCode");
if (null == verCode) {
/*Object verCode = session.getAttribute("verCode");*/
String verCode = "";
Cookie[] cookies = request.getCookies();
if (cookies.length == 0){
throw new CodeException("cookie没有内容");
}
Boolean flag = true;
for (Cookie cookie:cookies) {
if (cookie.getName().equals("verCode")){
verCode = cookie.getValue();
flag = false;
}
}
if (flag || null == verCode){
throw new CodeException("验证码已失效,请重新输入");
}
String verCodeStr = verCode.toString();
/*String verCodeStr = verCode.toString();
LocalDateTime localDateTime = (LocalDateTime)session.getAttribute("codeTime");
long past = localDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
long now = LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
......@@ -75,6 +92,16 @@ public class VerifyCodeServiceImpl implements VerifyCodeService {
//验证成功,删除存储的验证码
session.removeAttribute("verCode");
return;
}*/
if (verifyCode.equals(verCode)){
for (Cookie cookie:cookies) {
if (cookie.getName().equals("verCode")){
cookie.setMaxAge(0);
}
}
return;
}else{
throw new CodeException("验证码错误");
}
}
}
package com.pangding.web.authority.util;
/**
* @Author zhangjinyao
* @create 2019/5/28 18:26
*/
public class LoginConstant {
/**
* 基本信息为完善
* 值:"01"
*/
public static final String NOT_FINISH_BASIC_INFO = "01";
/**
* 未绑定银行卡
* 值:"02"
*/
public static final String HAVE_NO_BANK_CARD = "02";
/**
* 未签约
* 值:"03"
*/
public static final String NOT_SIGNING = "03";
}
......@@ -49,7 +49,7 @@ public class CompanyVo implements Serializable, InitDao {
private String electromicAgreementCode;
@TableAnnotation("signing_status")
private String signingStatus;
private int signingStatus;
private int status;
......@@ -157,11 +157,11 @@ public class CompanyVo implements Serializable, InitDao {
this.electromicAgreementCode = electromicAgreementCode;
}
public String getSigningStatus() {
public int getSigningStatus() {
return signingStatus;
}
public void setSigningStatus(String signingStatus) {
public void setSigningStatus(int signingStatus) {
this.signingStatus = signingStatus;
}
......
......@@ -14,6 +14,16 @@ public class LoginResVo {
private String account;
private String code;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
private LoginCompanyResVo companyResVo;
public String getToken() {
......
package com.pangding.web.authority.vo.reqvo;
/**
* @Author zhangjinyao
* @create 2019/5/28 10:21
*/
public class CompanyBankCardSetNotDefaultReqVo {
private String id;
private String companyId;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getCompanyId() {
return companyId;
}
public void setCompanyId(String companyId) {
this.companyId = companyId;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment