Commit ec99e28b authored by tangfang's avatar tangfang

修改注册判断银行卡

parent 0b3b7f94
......@@ -89,13 +89,18 @@ public class FinanceController {
* @param req
* @return
*/
// @RequestMapping(value = "/divideSettlment")
// public ResponseResult<String> divideSettlment(@RequestBody OrderMoneyDetailReqVo req) {
// CheckerHelper.newInstance()
// .notBlankCheck("id", req.getId())
// .checkException();
// return financeService.divideSettlement(req);
// }
@RequestMapping(value = "/divideSettlment")
@ApiOperation(value = "转账", notes = "返回转账结果")
public ResponseResult<CapitalFlowReqVo> divideSettlment(@RequestBody CapitalFlowReqVo req) {
CheckerHelper.newInstance()
.notBlankCheck("companyId", req.getCompanyId())
.notBlankCheck("companyName", req.getCompanyName())
.notBlankCheck("bankId", req.getBankId())
.notBlankCheck("bankCardCode", req.getBankCardCode())
.notBlankCheck("orderMoney", req.getOrderMoney())
.checkException();
return financeService.applyWithdrawal(req);
}
@RequestMapping(value = "findCompanyMoneyList")
@ApiOperation(value = "找到公司资金汇总列表", notes = "返回公司资金汇总列表")
......
......@@ -321,6 +321,7 @@ public class PangdingManagementController {
*/
@RequestMapping(value = "/examineConfig",method = RequestMethod.POST,produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public ResponseResult examineConfig(@RequestBody ExamineConfigReqVo reqVo){
CheckerHelper.newInstance().notBlankCheck("comapnyId", reqVo.getCompanyId()).checkException();
companyServiceImpl.examineConfig(reqVo);
return new ResponseResult();
}
......
package com.pangding.web.authority.controller;
import com.pangding.web.vo.system.req.authority.SaveUserReqVo;
import com.yanzuoguang.util.helper.CheckerHelper;
import com.yanzuoguang.util.vo.ResponseResult;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author tf
* 注册controller
*/
@RestController
@RequestMapping(value = "/register")
@Api(value = "注册类", description = "注册用户,新增用户")
public class RegisterController {
@RequestMapping(value = "/saveUser")
public ResponseResult saveUser(@RequestBody SaveUserReqVo req){
CheckerHelper.newInstance().notBlankCheck("", req.getAccount())
.notBlankCheck("", req.getPassword())
.notBlankCheck("", req.getConfirmPassword())
.notBlankCheck("", req.getInvitationCode())
.notBlankCheck("", req.getCompanyType())
.checkException();
return ResponseResult.result("");
}
}
......@@ -2,6 +2,7 @@ package com.pangding.web.authority.dao;
import com.pangding.web.authority.vo.reqvo.ListCompanyReqVo;
import com.pangding.web.vo.system.pd.company.CompanyVo;
import com.pangding.web.vo.system.req.company.CompanyReqVo;
import com.pangding.web.vo.system.res.company.CompanyResVo;
import com.yanzuoguang.dao.BaseDao;
import com.yanzuoguang.util.vo.PageSizeData;
......@@ -18,4 +19,18 @@ public interface CompanyDao extends BaseDao {
* @return
*/
PageSizeData<CompanyResVo> getCompanyList(ListCompanyReqVo reqVo);
/**
* 找到公司详情
* @param req
* @return
*/
CompanyResVo findCompany(CompanyReqVo req);
/**
* 获取公司总数
* @param req
* @return
*/
CompanyResVo findCompanyTotal(CompanyReqVo req);
}
......@@ -11,4 +11,6 @@ public interface CompanyExtendDao extends BaseDao {
void updateCompanyMoney(UpdateCompanyMoneyReqVo req);
void updateCompanyInvitedPeople(UpdateCompanyMoneyReqVo req);
}
package com.pangding.web.authority.dao;
import com.yanzuoguang.dao.BaseDao;
public interface CompanyInvitationRuleDao extends BaseDao {
}
......@@ -27,8 +27,8 @@ public class CapitalFlowDaoImpl extends BaseDaoImpl implements CapitalFlowDao {
.add("category", " AND category = ?")
.add("status"," AND status = ? ");
table.add(QUERY_LIST_TOTAL, "SELECT sum(order_money) as order_money,sum(order_fee) as order_fee,sum(actual_money) as actual_money " +
"FROM pd_capital_flow where 1=1 {WHERE} order by time desc")
table.add(QUERY_LIST_TOTAL, "SELECT count(id) as num,sum(order_money) as order_money,sum(order_fee) as order_fee," +
"sum(actual_money) as actual_money FROM pd_capital_flow where 1=1 {WHERE} order by time desc")
.add("companyId","AND company_id = ? ")
.add("companyName","AND company_name LIKE concat(?,'%')")
.add("startDate", "AND time >= ? ")
......
......@@ -3,6 +3,7 @@ package com.pangding.web.authority.dao.impl;
import com.pangding.web.authority.dao.CompanyDao;
import com.pangding.web.authority.vo.reqvo.ListCompanyReqVo;
import com.pangding.web.vo.system.pd.company.CompanyVo;
import com.pangding.web.vo.system.req.company.CompanyReqVo;
import com.pangding.web.vo.system.res.company.CompanyResVo;
import com.yanzuoguang.dao.DaoConst;
import com.yanzuoguang.dao.impl.BaseDaoImpl;
......@@ -16,7 +17,9 @@ import org.springframework.stereotype.Component;
@Component
public class CompanyDaoImpl extends BaseDaoImpl implements CompanyDao {
private static final String SELECT = "SELECT";
private static final String QUERY_COMPANY = "QUERY_COMPANY";
private static final String QUERY_COMPANY_TOTAL= "QUERY_COMPANY_TOTAL";
......@@ -25,13 +28,32 @@ public class CompanyDaoImpl extends BaseDaoImpl implements CompanyDao {
register(CompanyVo.class);
table.add(SELECT,"select a.*,b.invitation_code,b.withdraw_total_cash from pd_company a inner join pd_company_extend b on a.id = b.id " +
table.add(QUERY_COMPANY,"select a.*,b.subledger_status,b.subledger_rule,b.subledger_rule_time,b.divide_status,b.scan_code_pay_status," +
"invitation_status,invitation_rule_id,invitation_code,invitees_people,invited_people,activation_status,withdraw_rule,min_withdraw_money," +
"withdraw_fee,withdraw_type,grade,withdraw_total_cash,frozen_money " +
" from pd_company a inner join pd_company_extend b on a.id = b.id " +
"where 1=1 {WHERE} order by create_time desc")
.add("companyName","and company_name LIKE concat('%', ?,'%') ")
.add("companyType","and company_type = ? ")
.add("companyAttribute","and company_attribute = ? ")
.add("examineStatus","and examine_status = ?")
.add("companyId","and invitation_company_id = ? ")
.add("invitationCode","and invitation_code = ? ")
.add("contactName","and contact_name LIKE concat('%', ?,'%') ")
.add("contactPhone","and contact_phone = ? ")
.add("status","and status = ? ")
.add("startDate","and create_time >= ? ")
.add("endDate","and create_time <= ? ");
table.add(QUERY_COMPANY_TOTAL,"select count(a.id) as company_num " +
" from pd_company a inner join pd_company_extend b on a.id = b.id " +
"where 1=1 {WHERE} order by create_time desc")
.add("companyName","and company_name LIKE concat('%', ?,'%') ")
.add("companyType","and company_type = ? ")
.add("companyAttribute","and company_attribute = ? ")
.add("examineStatus","and examine_status = ?")
.add("invitationCompanyId","and invitation_company_id = ? ")
.add("invitationCode","and invitation_code = ? ")
.add("contactName","and contact_name LIKE concat('%', ?,'%') ")
.add("contactPhone","and contact_phone = ? ")
.add("status","and status = ? ")
......@@ -46,6 +68,16 @@ public class CompanyDaoImpl extends BaseDaoImpl implements CompanyDao {
@Override
public PageSizeData<CompanyResVo> getCompanyList(ListCompanyReqVo reqVo) {
return this.queryPage(CompanyResVo.class,reqVo,SELECT,reqVo);
return this.queryPage(CompanyResVo.class,reqVo,QUERY_COMPANY,reqVo);
}
@Override
public CompanyResVo findCompany(CompanyReqVo req) {
return this.queryFirst(CompanyResVo.class, QUERY_COMPANY, req);
}
@Override
public CompanyResVo findCompanyTotal(CompanyReqVo req) {
return this.queryFirst(CompanyResVo.class, QUERY_COMPANY, req);
}
}
......@@ -16,6 +16,8 @@ public class CompanyExtendDaoImpl extends BaseDaoImpl implements CompanyExtendDa
private static final String UPDATE_COMPANY_MONEY = "UPDATE_COMPANY_MONEY";
private static final String UPDATE_COMPANY_INVITED_PEOPLE = "UPDATE_COMPANY_INVITED_PEOPLE";
@Override
protected void init() {
......@@ -24,6 +26,9 @@ public class CompanyExtendDaoImpl extends BaseDaoImpl implements CompanyExtendDa
table.add(UPDATE_COMPANY_MONEY, "UPDATE pd_company_extend SET withdraw_total_cash = withdraw_total_cash + @newWithdrawTotalCash " +
"WHERE id = @companyId ");
table.add(UPDATE_COMPANY_INVITED_PEOPLE, "UPDATE pd_company_extend SET " +
"invited_people = invited_people + @invitedPeople " +
"WHERE id = @companyId ");
}
......@@ -33,4 +38,8 @@ public class CompanyExtendDaoImpl extends BaseDaoImpl implements CompanyExtendDa
}
@Override
public void updateCompanyInvitedPeople(UpdateCompanyMoneyReqVo req) {
this.updateSql(UPDATE_COMPANY_INVITED_PEOPLE, req);
}
}
package com.pangding.web.authority.dao.impl;
import com.pangding.web.authority.dao.CompanyInvitationRuleDao;
import com.pangding.web.vo.system.pd.company.CompanyInvitationRuleVo;
import com.yanzuoguang.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Component;
@Component
public class CompanyInvitationRuleDaoImpl extends BaseDaoImpl implements CompanyInvitationRuleDao {
@Override
protected void init() {
register(CompanyInvitationRuleVo.class);
}
}
package com.pangding.web.authority.mq;
import com.pangding.web.authority.service.CompanyMsgService;
import com.pangding.web.authority.service.CompanyService;
import com.pangding.web.authority.service.FinanceService;
import com.pangding.web.constant.MqConstant;
import com.pangding.web.mq.CompanyProducer;
......@@ -49,6 +50,8 @@ public class CompanyConsumer {
private CompanyMsgService companyMsgService;
@Autowired
private FinanceService financeService;
@Autowired
private CompanyService companyService;
/**
* 初始化mq
......@@ -131,6 +134,14 @@ public class CompanyConsumer {
payProducer.cashWithdrawal(cashWithdrawalReqVo);
}
/**
* 转账
* @param cashWithdrawalReqVo
*/
public void divideSettlement(CashWithdrawalReqVo cashWithdrawalReqVo) {
payProducer.divideSettlement(cashWithdrawalReqVo);
}
/**
* 提现回调
*
......@@ -194,7 +205,7 @@ public class CompanyConsumer {
log.info("[divideSettlementBack 监听的消息] - [消费时间] - [{}] - [{}]", DateHelper.getNow(), content);
CashWithdrawalBackReqVo req = JsonHelper.deserialize(content, CashWithdrawalBackReqVo.class);
try {
// financeService.divideSettlementBack(req);
financeService.divideSettlementBack(req);
// 保存订单日志MQ
OrderLogReqVo orderLogReqVo = new OrderLogReqVo(StringHelper.getNewID(), req.getId(), "转账回调",
JsonHelper.serialize(req), "", req.getCompanyId(), "");
......@@ -228,4 +239,46 @@ public class CompanyConsumer {
distributionProducer.synCompany(companyResVo);
}
/**
* 公司激活
* @param companyResVo
*/
public void cmpanyActiviat(CompanyResVo companyResVo) {
companyProducer.companyActivat(companyResVo);
}
@RabbitListener(queues = {MqConstant.COMPANY_ACTIVAT})
public void activiatCompany(String content, Message message, Channel channel) {
log.info("[activiatCompany监听的消息] - [消费时间] - [{}] - [{}]", DateHelper.getNow(), content);
try {
CompanyResVo companyResVo = JsonHelper.deserialize(content, CompanyResVo.class);
companyService.activiatCompany(companyResVo);
} catch (Exception e) {
Log.error(CompanyConsumer.class, e);
} finally {
mqService.basicAck(message, channel);
}
}
/**
* 公司奖励
*
* @param companyResVo
*/
public void companyReward(CompanyResVo companyResVo) {
companyProducer.companyReward(companyResVo);
}
@RabbitListener(queues = {MqConstant.COMPANY_REWARD})
public void companyReward(String content, Message message, Channel channel) {
log.info("[companyReward 监听的消息] - [消费时间] - [{}] - [{}]", DateHelper.getNow(), content);
try {
CompanyResVo companyResVo = JsonHelper.deserialize(content, CompanyResVo.class);
companyService.companyReward(companyResVo);
} catch (Exception e) {
Log.error(CompanyConsumer.class, e);
} finally {
mqService.basicAck(message, channel);
}
}
}
......@@ -216,4 +216,18 @@ public interface CompanyService{
*/
ResponseResult synCompanyInfo(CompanyReqVo req);
CompanyResVo findCompany(String invitationCode);
/**
* 激活公司
* @param companyResVo
*/
void activiatCompany(CompanyResVo companyResVo);
/**
* 奖励公司
* @param companyResVo
*/
void companyReward(CompanyResVo companyResVo);
}
......@@ -32,6 +32,8 @@ public interface FinanceService {
*/
ResponseResult<String> withdrawalBack(CashWithdrawalBackReqVo req);
ResponseResult<String> divideSettlementBack(CashWithdrawalBackReqVo req);
/**
* 修改公司余额
* @param req
......@@ -41,4 +43,6 @@ public interface FinanceService {
void updateCompanyMoney(UpdateCompanyMoneyReqVo updateCompanyMoneyReqVo);
void divideSettlement(CapitalFlowReqVo req);
}
......@@ -21,9 +21,10 @@ public class CompanyNewServiceImpl implements CompanyNewService {
return companyResVoPageSizeData;
}
public void findCompanyDetail(CompanyReqVo req){
public CompanyResVo findCompanyDetail(CompanyReqVo req){
CompanyResVo companyResVo = companyDao.load(req, CompanyResVo.class);
return companyResVo;
}
......
package com.pangding.web.authority.service.impl;
import com.pangding.web.authority.dao.*;
import com.pangding.web.authority.service.CompanyService;
import com.pangding.web.authority.util.RsaConstant;
import com.pangding.web.authority.vo.reqvo.*;
import com.pangding.web.authority.service.UserService;
......@@ -19,8 +20,10 @@ import com.pangding.web.vo.system.req.authority.AuthorityReqVo;
import com.pangding.web.vo.system.req.authority.SaveUserReqVo;
import com.pangding.web.vo.system.req.authority.UserReqVo;
import com.pangding.web.vo.system.req.company.CompanyExtendReqVo;
import com.pangding.web.vo.system.req.company.UpdateCompanyMoneyReqVo;
import com.pangding.web.vo.system.res.authority.AuthorityResVo;
import com.pangding.web.vo.system.res.company.CompanyExtendResVo;
import com.pangding.web.vo.system.res.company.CompanyResVo;
import com.yanzuoguang.util.base.ObjectHelper;
import com.yanzuoguang.util.exception.CodeException;
import com.yanzuoguang.util.helper.DateHelper;
......@@ -54,6 +57,8 @@ public class UserServiceImpl implements UserService {
private CompanyDao companyDao;
@Autowired
private CompanyExtendDao companyExtendDao;
@Autowired
private CompanyService companyService;
@Override
@Transactional(rollbackFor = Exception.class)
......@@ -361,14 +366,25 @@ public class UserServiceImpl implements UserService {
}
// 验证邀请码是否正确
CompanyExtendReqVo companyReqVo = new CompanyExtendReqVo();
companyReqVo.setInvitationCode(saveUserReqVo.getInvitationCode());
CompanyExtendResVo companyResVo = companyExtendDao.load(companyReqVo, CompanyExtendResVo.class);
CompanyResVo companyResVo = companyService.findCompany(saveUserReqVo.getInvitationCode());
if (StringHelper.isEmpty(companyResVo)) {
// 邀请码不正确
return ResponseResult.error("99", "邀请码错误");
return ResponseResult.error("99", "注册编码错误");
}
// 判断邀请公司状态
if(0 == companyResVo.getInvitationStatus() || 1 != companyResVo.getExamineStatus()){
return ResponseResult.error("99", "用户邀请状态错误:" + companyResVo.getInvitationStatus() + ",状态错误:" + companyResVo.getExamineStatus());
}
// 判断该账户已经邀请的人数
if(companyResVo.getInviteesPeople() <= companyResVo.getInvitedPeople()){
throw new CodeException("邀请人数已超过可邀请人数,注册失败。可邀请人数为:" + companyResVo.getInviteesPeople());
}
// TODO 是否需要判断商户的状态
// 添加用户邀请人数
UpdateCompanyMoneyReqVo updateCompanyMoneyReqVo = new UpdateCompanyMoneyReqVo();
updateCompanyMoneyReqVo.setCompanyId(companyResVo.getId());
updateCompanyMoneyReqVo.setInvitedPeople(1);
companyExtendDao.updateCompanyInvitedPeople(updateCompanyMoneyReqVo);
String companyId = StringHelper.getNewID();
String userId = StringHelper.getNewID();
......@@ -390,6 +406,7 @@ public class UserServiceImpl implements UserService {
CompanyVo companyVo = new CompanyVo();
companyVo.setId(companyId);
companyVo.setInvitationCompanyId(companyResVo.getId());
companyVo.setInvitationCompanyName(companyResVo.getCompanyName());
companyVo.setStatus(CompanyConstant.COMPANY_STATUS_INIT);
companyVo.setNature(saveUserReqVo.getCompanyType());
if(3 == companyVo.getNature()){
......
......@@ -22,6 +22,8 @@ public class CompanySaveReqVo {
*/
private String invitationCompanyId;
private String invitationCompanyName;
/**
* 通联会员id
*/
......@@ -282,4 +284,12 @@ public class CompanySaveReqVo {
public void setValidateCode(String validateCode) {
this.validateCode = validateCode;
}
public String getInvitationCompanyName() {
return invitationCompanyName;
}
public void setInvitationCompanyName(String invitationCompanyName) {
this.invitationCompanyName = invitationCompanyName;
}
}
......@@ -3,10 +3,8 @@ package com.pangding.web.authority.vo.resvo;
import com.pangding.web.vo.product.pd.merchant.MerchantVo;
import com.pangding.web.vo.system.pd.authority.RoleVo;
import com.pangding.web.vo.system.pd.authority.UserVo;
import com.pangding.web.vo.system.pd.company.CompanyBankCardVo;
import com.pangding.web.vo.system.pd.company.CompanyExtendVo;
import com.pangding.web.vo.system.pd.company.CompanyRuleVo;
import com.pangding.web.vo.system.pd.company.CompanyVo;
import com.pangding.web.vo.system.pd.company.*;
import io.swagger.annotations.ApiModelProperty;
import java.util.List;
......@@ -30,6 +28,13 @@ public class CompanyLoginResVo {
private List<RoleVo> roleVoList;
private List<CompanyRuleVo> companyRuleVoList;
@ApiModelProperty(notes = "公司分润规则列表")
private List<CompanyDivideRuleVo> companyDivideRuleVoList;
@ApiModelProperty(notes = "邀请规则列表")
private List<CompanyInvitationRuleVo> companyInvitationActivatRuleVoList;
@ApiModelProperty(notes = "邀请奖励规则列表")
private List<CompanyInvitationRuleVo> companyInvitationRewardRuleVoList;
public List<RoleVo> getRoleVoList() {
return roleVoList;
......@@ -94,4 +99,28 @@ public class CompanyLoginResVo {
public void setCompanyRuleVoList(List<CompanyRuleVo> companyRuleVoList) {
this.companyRuleVoList = companyRuleVoList;
}
public List<CompanyDivideRuleVo> getCompanyDivideRuleVoList() {
return companyDivideRuleVoList;
}
public void setCompanyDivideRuleVoList(List<CompanyDivideRuleVo> companyDivideRuleVoList) {
this.companyDivideRuleVoList = companyDivideRuleVoList;
}
public List<CompanyInvitationRuleVo> getCompanyInvitationActivatRuleVoList() {
return companyInvitationActivatRuleVoList;
}
public void setCompanyInvitationActivatRuleVoList(List<CompanyInvitationRuleVo> companyInvitationActivatRuleVoList) {
this.companyInvitationActivatRuleVoList = companyInvitationActivatRuleVoList;
}
public List<CompanyInvitationRuleVo> getCompanyInvitationRewardRuleVoList() {
return companyInvitationRewardRuleVoList;
}
public void setCompanyInvitationRewardRuleVoList(List<CompanyInvitationRuleVo> companyInvitationRewardRuleVoList) {
this.companyInvitationRewardRuleVoList = companyInvitationRewardRuleVoList;
}
}
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