Commit 242b6704 authored by jiaorz's avatar jiaorz

Merge branch 'base-modify' of http://113.105.137.151:22280/youjj/cloud-platform into base-modify

parents fed5cc66 ea046c7f
...@@ -47,4 +47,15 @@ public class AppUserManageDTO { ...@@ -47,4 +47,15 @@ public class AppUserManageDTO {
private Long registrationTimeEnd; private Long registrationTimeEnd;
/**
* 用户来源:0-自来,1-用户邀请
*/
private Integer source;
/**
*
*/
private String registrationDate;
} }
...@@ -68,6 +68,13 @@ public class BaseUserMemberVO implements Serializable { ...@@ -68,6 +68,13 @@ public class BaseUserMemberVO implements Serializable {
@ApiModelProperty(value = "有效期;0代表永久") @ApiModelProperty(value = "有效期;0代表永久")
private Long validTime; private Long validTime;
/**
* 会员等级名称
*/
@Column(name = "name")
private String name;
......
...@@ -71,7 +71,7 @@ public class AppUserDetail { ...@@ -71,7 +71,7 @@ public class AppUserDetail {
@Column(name = "code") @Column(name = "code")
private String code; private String code;
@ApiModelProperty(value = "邀请人id:") @ApiModelProperty(value = "邀请人账号:")
@Column(name = "inviter_account") @Column(name = "inviter_account")
private String inviterAccount; private String inviterAccount;
} }
package com.github.wxiaoqi.security.admin.entity;
import lombok.Data;
import javax.persistence.Column;
@Data
public class UserMemberLevel {
/**
* 会员id
*/
@Column(name = "id")
private String id;
/**
* 会员等级名称
*/
@Column(name = "name")
private String name;
/**
* 图标
*/
@Column(name = "icon")
private String icon;
/**
* 等级
*/
@Column(name = "level")
private String level;
/**
* describes
*/
@Column(name = "describes")
private String describes;
/**
* 有效数;-1是永久有效
*/
@Column(name = "end_date")
private String end_date;
/**
* 折扣
*/
@Column(name = "discount")
private String discount;
/**
* 是否删除;0-正常;1-删除
*/
@Column(name = "isdel")
private String isdel;
/**
* 购买会员价格
*/
@Column(name = "price")
private String price;
/**
* 权益
*/
@Column(name = "rights")
private String rights;
/**
* 赠送免费天数
*/
@Column(name = "number")
private String number;
}
...@@ -72,6 +72,8 @@ public class AppUserDTO { ...@@ -72,6 +72,8 @@ public class AppUserDTO {
private Integer lockDays; private Integer lockDays;
private Integer discount; private Integer discount;
private Integer memberLevel; private Integer memberLevel;
//图标
private String icon;
private Integer memberNo; private Integer memberNo;
private Long cardLeave; private Long cardLeave;
private Integer isBind; private Integer isBind;
......
...@@ -55,7 +55,7 @@ public class AppUserManageVo { ...@@ -55,7 +55,7 @@ public class AppUserManageVo {
* 邀请人id * 邀请人id
*/ */
@Column(name = "inviter_account") @Column(name = "inviter_account")
private Integer inviterAccount; private String inviterAccount;
/** /**
* 省代码 * 省代码
*/ */
...@@ -90,7 +90,7 @@ public class AppUserManageVo { ...@@ -90,7 +90,7 @@ public class AppUserManageVo {
* 实名认证状态:0-未认证,1-已认证 * 实名认证状态:0-未认证,1-已认证
*/ */
@Column(name = "certification_status") @Column(name = "certification_status")
private String certification_status; private String certificationStatus;
/** /**
* 身份证号 * 身份证号
...@@ -156,4 +156,8 @@ public class AppUserManageVo { ...@@ -156,4 +156,8 @@ public class AppUserManageVo {
*/ */
private String memberName; private String memberName;
/**
* 头像
*/
private String headimgurl;
} }
...@@ -77,4 +77,10 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail ...@@ -77,4 +77,10 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
} }
} }
...@@ -39,11 +39,11 @@ public class AppUserManageBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail ...@@ -39,11 +39,11 @@ public class AppUserManageBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
* @param appUserManageDTO 查询条件 * @param appUserManageDTO 查询条件
* @return * @return
*/ */
public List<AppUserManageVo> findAllByQuery(AppUserManageDTO appUserManageDTO) { public PageInfo<AppUserManageVo> findAllByQuery(AppUserManageDTO appUserManageDTO) {
Page<AppUserManageVo> page = PageHelper.startPage(appUserManageDTO.getPage(), appUserManageDTO.getLimit()); Page<AppUserManageVo> page = PageHelper.startPage(appUserManageDTO.getPage(), appUserManageDTO.getLimit());
List<AppUserManageVo> appUserManageVos = mapper.selectAppUserManage(appUserManageDTO); List<AppUserManageVo> appUserManageVos = mapper.selectAppUserManage(appUserManageDTO);
return PageInfo.of(appUserManageVos).getList(); return PageInfo.of(appUserManageVos);
} }
/** /**
......
...@@ -4,6 +4,8 @@ import com.ace.cache.annotation.Cache; ...@@ -4,6 +4,8 @@ import com.ace.cache.annotation.Cache;
import com.ace.cache.annotation.CacheClear; import com.ace.cache.annotation.CacheClear;
import com.github.wxiaoqi.security.admin.dto.BaseUserMemberVO; import com.github.wxiaoqi.security.admin.dto.BaseUserMemberVO;
import com.github.wxiaoqi.security.admin.dto.UserMemberDTO; import com.github.wxiaoqi.security.admin.dto.UserMemberDTO;
import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
import com.github.wxiaoqi.security.admin.entity.UserMemberLevel;
import com.github.wxiaoqi.security.admin.vo.AppUserVo; import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.admin.vo.UserMemberVo; import com.github.wxiaoqi.security.admin.vo.UserMemberVo;
import com.github.wxiaoqi.security.common.exception.BaseException; import com.github.wxiaoqi.security.common.exception.BaseException;
...@@ -44,6 +46,9 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb ...@@ -44,6 +46,9 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb
@Autowired @Autowired
private TaskExecutor taskExecutor; private TaskExecutor taskExecutor;
@Autowired
private UserMemberLevelBiz userMemberLevelBiz;
//获取用户会员信息 //获取用户会员信息
@Cache(key = "user:member{1}") @Cache(key = "user:member{1}")
public UserMemberVo getMemberInfoByUserId(Integer userId){ public UserMemberVo getMemberInfoByUserId(Integer userId){
...@@ -72,9 +77,13 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb ...@@ -72,9 +77,13 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb
if(freeDays==null||freeDays==0){ if(freeDays==null||freeDays==0){
freeDays=totalNumber; freeDays=totalNumber;
} }
Integer buyCount=1;
if(userMemberDTO.getBuyCount()!=null){
buyCount=userMemberDTO.getBuyCount();
}
if(userMemberVo==null){ if(userMemberVo==null){
baseUserMember.setRentFreeDays(freeDays); baseUserMember.setRentFreeDays(freeDays);
baseUserMember.setBuyCount(1); baseUserMember.setBuyCount(buyCount);
insertSelective(baseUserMember); insertSelective(baseUserMember);
}else { }else {
Integer discount=userMemberVo.getDiscount()==null?0:userMemberVo.getDiscount(); Integer discount=userMemberVo.getDiscount()==null?0:userMemberVo.getDiscount();
...@@ -90,10 +99,6 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb ...@@ -90,10 +99,6 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb
baseUserMember.setId(userMemberVo.getId()); baseUserMember.setId(userMemberVo.getId());
totalNumber+=userMemberVo.getTotalNumber()==null?0:userMemberVo.getTotalNumber(); totalNumber+=userMemberVo.getTotalNumber()==null?0:userMemberVo.getTotalNumber();
freeDays+=userMemberVo.getRentFreeDays()==null?0:userMemberVo.getRentFreeDays(); freeDays+=userMemberVo.getRentFreeDays()==null?0:userMemberVo.getRentFreeDays();
Integer buyCount=1;
if(userMemberDTO.getBuyCount()!=null){
buyCount=userMemberDTO.getBuyCount();
}
baseUserMember.setBuyCount(userMemberVo.getBuyCount()+buyCount); baseUserMember.setBuyCount(userMemberVo.getBuyCount()+buyCount);
baseUserMember.setTotalNumber(totalNumber); baseUserMember.setTotalNumber(totalNumber);
baseUserMember.setRentFreeDays(freeDays); baseUserMember.setRentFreeDays(freeDays);
...@@ -136,6 +141,11 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb ...@@ -136,6 +141,11 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb
if(freeDays>0&&freeDays>=days){ if(freeDays>0&&freeDays>=days){
freeDays=freeDays-days; freeDays=freeDays-days;
baseUserMember.setRentFreeDays(freeDays); baseUserMember.setRentFreeDays(freeDays);
Integer payCount=userMemberVo.getPayCount()==null?0:userMemberVo.getPayCount();
if(days>0){
payCount=payCount+1;
}
baseUserMember.setPayCount(payCount);
getMyBiz().updateSelectiveById(baseUserMember); getMyBiz().updateSelectiveById(baseUserMember);
num=freeDays; num=freeDays;
} }
...@@ -149,10 +159,12 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb ...@@ -149,10 +159,12 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb
baseUserMember.setLockDays(lockDays); baseUserMember.setLockDays(lockDays);
updateSelectiveById(baseUserMember); updateSelectiveById(baseUserMember);
num=freeDays-lockDays;*/ num=freeDays-lockDays;*/
Integer payCount=userMemberVo.getPayCount()==null?0:userMemberVo.getPayCount(); /*Integer payCount=userMemberVo.getPayCount()==null?0:userMemberVo.getPayCount();
payCount=payCount+1; if(days>0){
payCount=payCount+1;
}
baseUserMember.setPayCount(payCount); baseUserMember.setPayCount(payCount);
getMyBiz().updateSelectiveById(baseUserMember); getMyBiz().updateSelectiveById(baseUserMember);*/
num=freeDays; num=freeDays;
}else { }else {
/*lockDays=lockDays>0?(lockDays-days)>0?(lockDays-days):0:0; /*lockDays=lockDays>0?(lockDays-days)>0?(lockDays-days):0:0;
...@@ -179,16 +191,13 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb ...@@ -179,16 +191,13 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb
* @param userId * @param userId
* @return * @return
*/ */
public BaseUserMember findOneByUserId(Integer userId) { public BaseUserMemberVO findOneByUserId(Integer userId) {
Example exa = new Example(BaseUserMember.class); BaseUserMemberVO baseUserMemberVO= mapper.getBaseUserMemberVOByUserId(userId);
Example.Criteria criteria = exa.createCriteria(); if (baseUserMemberVO!=null) {
criteria.andEqualTo("userId",userId); return baseUserMemberVO;
List<BaseUserMember> baseUserMembers = mapper.selectByExample(exa);
if (baseUserMembers.size()>1) {
throw new BaseException("Member purchase repeat!");
} }
return baseUserMembers!=null&&baseUserMembers.size()!=0 ? baseUserMembers.get(0): null; return new BaseUserMemberVO();
} }
...@@ -218,7 +227,7 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb ...@@ -218,7 +227,7 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb
return; return;
}else if (baseUserMembers.size()==1){ }else if (baseUserMembers.size()==1){
baseUserMember.setUpdTime(System.currentTimeMillis()); baseUserMember.setUpdTime(System.currentTimeMillis());
updateSelectiveById(baseUserMember); getMyBiz().updateSelectiveById(baseUserMember);
}else { }else {
throw new BaseException("Member purchase repeat!"); throw new BaseException("Member purchase repeat!");
} }
......
...@@ -42,7 +42,7 @@ public class BaseUserMemberExportBiz extends BaseBiz<BaseUserMemberExportMapper, ...@@ -42,7 +42,7 @@ public class BaseUserMemberExportBiz extends BaseBiz<BaseUserMemberExportMapper,
@Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED) @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
public void importUserMember(List<String[]> userMemberData){ public int importUserMember(List<String[]> userMemberData){
List<BaseUserMemberExport> baseUserMemberExports = new ArrayList<>(); List<BaseUserMemberExport> baseUserMemberExports = new ArrayList<>();
List<Integer> levels = userMemberData.stream().map(x -> x[1]).map(Integer::valueOf).collect(Collectors.toList()); List<Integer> levels = userMemberData.stream().map(x -> x[1]).map(Integer::valueOf).collect(Collectors.toList());
...@@ -90,6 +90,7 @@ public class BaseUserMemberExportBiz extends BaseBiz<BaseUserMemberExportMapper, ...@@ -90,6 +90,7 @@ public class BaseUserMemberExportBiz extends BaseBiz<BaseUserMemberExportMapper,
} }
InsertBatch(baseUserMemberExports); InsertBatch(baseUserMemberExports);
return baseUserMemberExports.size();
} }
@Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED) @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
......
...@@ -30,6 +30,16 @@ public class UserMemberLevelBiz extends BaseBiz<BaseUserMemberLevelMapper,BaseUs ...@@ -30,6 +30,16 @@ public class UserMemberLevelBiz extends BaseBiz<BaseUserMemberLevelMapper,BaseUs
return mapper.selectByExample(example); return mapper.selectByExample(example);
} }
public BaseUserMemberLevel getLevel(Integer level) {
Example example=new Example(BaseUserMemberLevel.class);
example.createCriteria().andEqualTo("isdel",0).andEqualTo("level",level);
List<BaseUserMemberLevel> list=mapper.selectByExample(example);
if (list.size()>0){
return list.get(0);
}
return null;
}
@Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED) @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
public Map<Integer,Integer> getUserMemberLevelAndDisCountMapByLevels(List<Integer> levels){ public Map<Integer,Integer> getUserMemberLevelAndDisCountMapByLevels(List<Integer> levels){
List<BaseUserMemberLevel> baseUserMemberLevels = mapper.selectUserMembersLevelByLevels(levels); List<BaseUserMemberLevel> baseUserMemberLevels = mapper.selectUserMembersLevelByLevels(levels);
......
package com.github.wxiaoqi.security.admin.mapper; package com.github.wxiaoqi.security.admin.mapper;
import com.github.wxiaoqi.security.admin.dto.BaseUserMemberVO;
import com.github.wxiaoqi.security.admin.entity.BaseUserMember; import com.github.wxiaoqi.security.admin.entity.BaseUserMember;
import com.github.wxiaoqi.security.admin.vo.UserMemberVo; import com.github.wxiaoqi.security.admin.vo.UserMemberVo;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -16,5 +17,6 @@ public interface BaseUserMemberMapper extends Mapper<BaseUserMember> { ...@@ -16,5 +17,6 @@ public interface BaseUserMemberMapper extends Mapper<BaseUserMember> {
//获取用户会员信息 //获取用户会员信息
public UserMemberVo getInfoByUserId(@Param("userId")Integer userId); public UserMemberVo getInfoByUserId(@Param("userId")Integer userId);
BaseUserMemberVO getBaseUserMemberVOByUserId(@Param("userId") Integer userId);
} }
...@@ -50,6 +50,9 @@ public class AppUserController extends CommonBaseController { ...@@ -50,6 +50,9 @@ public class AppUserController extends CommonBaseController {
@Autowired @Autowired
AppUserPositionBiz positionBiz; AppUserPositionBiz positionBiz;
@Autowired
private UserMemberLevelBiz userMemberLevelBiz;
@GetMapping("page") @GetMapping("page")
public TableResultResponse list(@RequestParam Map<String, Object> params) { public TableResultResponse list(@RequestParam Map<String, Object> params) {
Query query = new Query(params); Query query = new Query(params);
...@@ -126,6 +129,12 @@ public class AppUserController extends CommonBaseController { ...@@ -126,6 +129,12 @@ public class AppUserController extends CommonBaseController {
UserMemberVo memberVo=userMemberBiz.getMemberInfoByUserId(userid); UserMemberVo memberVo=userMemberBiz.getMemberInfoByUserId(userid);
if(memberVo!=null){ if(memberVo!=null){
BeanUtils.copyProperties(userDTO,memberVo); BeanUtils.copyProperties(userDTO,memberVo);
Integer level=memberVo.getMemberLevel();
BaseUserMemberLevel memberLevel=userMemberLevelBiz.getLevel(level);
if (memberLevel!=null){
String icon=memberLevel.getIcon();
userDTO.setIcon(icon);
}
} }
} }
AppUserPosition userPosition=positionBiz.selectById(positionId); AppUserPosition userPosition=positionBiz.selectById(positionId);
......
...@@ -26,7 +26,7 @@ public class AppUsersManageController extends BaseController<AppUserManageBiz,Ap ...@@ -26,7 +26,7 @@ public class AppUsersManageController extends BaseController<AppUserManageBiz,Ap
* @return * @return
*/ */
@PostMapping("/findAll") @PostMapping("/findAll")
public ObjectRestResponse<List<AppUserManageVo>> findAllByQuery(@RequestBody AppUserManageDTO appUserManageDTO){ public ObjectRestResponse<PageInfo<AppUserManageVo>> findAllByQuery(@RequestBody AppUserManageDTO appUserManageDTO){
return ObjectRestResponse.succ(baseBiz.findAllByQuery(appUserManageDTO)); return ObjectRestResponse.succ(baseBiz.findAllByQuery(appUserManageDTO));
} }
......
...@@ -24,12 +24,9 @@ public class BaseUserMemberController extends BaseController<BaseUserMemberBiz, ...@@ -24,12 +24,9 @@ public class BaseUserMemberController extends BaseController<BaseUserMemberBiz,
* @return * @return
*/ */
@RequestMapping("/findOne/{userId}") @RequestMapping("/findOne/{userId}")
public ObjectRestResponse<AppUserManage> findOneByUserId(@PathVariable Integer userId){ public ObjectRestResponse<BaseUserMemberVO> findOneByUserId(@PathVariable Integer userId){
BaseUserMember oneByUserId = baseBiz.findOneByUserId(userId);
if (oneByUserId==null) { return ObjectRestResponse.succ(baseBiz.findOneByUserId(userId));
return ObjectRestResponse.succ();
}
return ObjectRestResponse.succ(oneByUserId);
} }
......
package com.github.wxiaoqi.security.admin.rest; package com.github.wxiaoqi.security.admin.rest;
import com.github.wxiaoqi.security.admin.AdminBootstrap;
import com.github.wxiaoqi.security.admin.biz.BaseUserMemberBiz; import com.github.wxiaoqi.security.admin.biz.BaseUserMemberBiz;
import com.github.wxiaoqi.security.admin.biz.BaseUserMemberExportBiz; import com.github.wxiaoqi.security.admin.biz.BaseUserMemberExportBiz;
import com.github.wxiaoqi.security.admin.dto.UserMemberDTO; import com.github.wxiaoqi.security.admin.dto.UserMemberDTO;
import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel; import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.exception.BaseException; import com.github.wxiaoqi.security.common.exception.BaseException;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.excel.ExcelImport; import com.github.wxiaoqi.security.common.util.excel.ExcelImport;
import com.xxfc.platform.vehicle.common.RestResponse; import org.apache.commons.io.IOUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.util.List; import java.util.List;
/** /**
...@@ -62,7 +68,7 @@ public class UserMemberController { ...@@ -62,7 +68,7 @@ public class UserMemberController {
} }
@PostMapping("/user/export") @PostMapping("/user/export")
public ObjectRestResponse importUserMember(MultipartFile userMemberExcel) { public ObjectRestResponse importUserMember(@RequestPart("file") MultipartFile userMemberExcel) {
List<String[]> userMemberData = ExcelImport.getExcelData(userMemberExcel); List<String[]> userMemberData = ExcelImport.getExcelData(userMemberExcel);
if (userMemberData.size() < 1) { if (userMemberData.size() < 1) {
return ObjectRestResponse.createFailedResult(1001, "导入不能没数据!!!"); return ObjectRestResponse.createFailedResult(1001, "导入不能没数据!!!");
...@@ -73,7 +79,29 @@ public class UserMemberController { ...@@ -73,7 +79,29 @@ public class UserMemberController {
} }
} }
userMemberData.remove(0); userMemberData.remove(0);
baseUserMemberExportBiz.importUserMember(userMemberData); try {
return ObjectRestResponse.succ(); int effectSize = baseUserMemberExportBiz.importUserMember(userMemberData);
return ObjectRestResponse.succ(effectSize);
}catch (BaseException ex){
return ObjectRestResponse.createDefaultFail();
}
}
@GetMapping("/app/unauth/user/excel_model/dowload")
public ResponseEntity<byte[]> dowloadUserMemberExcelModel(HttpServletResponse response){
// 重置response
response.reset();
//设置http头信息的内容
response.setCharacterEncoding("utf-8");
response.setContentType("application/vnd.ms-excel");
response.addHeader("Content-Disposition", "attachment;filename=usermember.xlsx");
InputStream inputStream = AdminBootstrap.class.getClassLoader().getResourceAsStream("file/usermember.xlsx");
try {
byte[] bytes = IOUtils.toByteArray(inputStream);
return ResponseEntity.ok(bytes);
} catch (IOException e) {
e.printStackTrace();
}
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null);
} }
} }
...@@ -44,30 +44,31 @@ ...@@ -44,30 +44,31 @@
<select id="selectAppUserManage" parameterType="com.github.wxiaoqi.security.admin.dto.AppUserManageDTO" <select id="selectAppUserManage" parameterType="com.github.wxiaoqi.security.admin.dto.AppUserManageDTO"
resultType="com.github.wxiaoqi.security.admin.vo.AppUserManageVo"> resultType="com.github.wxiaoqi.security.admin.vo.AppUserManageVo">
select select
d.userid, l.id As userid,
l.username,
l.certification_status as certificationStatus,
l.id_number as idNumber,
l.createtime,
l.last_time as lastTime,
d.channel, d.channel,
d.is_member, d.is_member,
d.realname, d.realname,
d.isdel, d.isdel,
d.nickname, d.nickname,
d.source, d.source,
d.Inviter_account, d.Inviter_account as inviterAccount,
d.province_code, d.province_code as provinceCode,
d.city_code, d.city_code as cityCode,
d.sex, d.sex,
d.headimgurl,
d.email, d.email,
l.username, m.member_level as memberLevel,
l.certification_status, m.valid_time as validTime,
l.id_number, m.buy_count as buyCount,
l.createtime, m.total_number as totalNumber,
l.last_time, m.rent_free_days as rentFreeDays,
m.member_level, m.crt_time as timeOfMembership,
m.valid_time, m.recent_recharge as recentRecharge,
m.buy_count,
m.total_number,
m.rent_free_days,
m.crt_time AS timeOfMembership,
m.recent_recharge,
m.name as memberName m.name as memberName
from from
app_user_login l app_user_login l
...@@ -84,29 +85,12 @@ ...@@ -84,29 +85,12 @@
left join left join
base_user_member_level ml base_user_member_level ml
on on
ml.id = b.member_level ml.level = b.member_level
) m ) m
on on
l.id = m.user_id l.id = m.user_id
where 1=1 where 1=1
<!-- <if test="mobile !=null or mobile != ''">-->
<!-- and l.username=#{mobile}-->
<!-- </if>-->
<!-- <if test="channel !=null or channel != ''">-->
<!-- and d.channel=#{channel}-->
<!-- </if>-->
<!-- <if test="memberLevel !=null or memberLevel != ''">-->
<!-- and m.member_level = #{memberLevel}-->
<!-- </if>-->
<!-- <if test="registrationTimeBegin !=null or registrationTimeBegin != ''">-->
<!-- and l.createtime &gt;= #{registrationTimeBegin}-->
<!-- </if>-->
<!-- <if test="registrationTimeEnd!=null or registrationTimeEnd != ''">-->
<!-- and l.createtime &lt;= #{registrationTimeEnd}-->
<!-- </if>-->
<if test="mobile !=null"> <if test="mobile !=null">
and l.username=#{mobile} and l.username=#{mobile}
</if> </if>
...@@ -122,7 +106,10 @@ ...@@ -122,7 +106,10 @@
<if test="registrationTimeEnd !=null"> <if test="registrationTimeEnd !=null">
and l.createtime &lt;= #{registrationTimeEnd} and l.createtime &lt;= #{registrationTimeEnd}
</if> </if>
<if test="source !=null">
and d.source &lt;= #{source}
</if>
order by l.id ASC
</select> </select>
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<mapper namespace="com.github.wxiaoqi.security.admin.mapper.BaseUserMemberMapper"> <mapper namespace="com.github.wxiaoqi.security.admin.mapper.BaseUserMemberMapper">
<!-- 可根据自己的需求,是否要使用 --> <!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.github.wxiaoqi.security.admin.vo.UserMemberVo" id="baseUserMemberMap"> <resultMap type="com.github.wxiaoqi.security.admin.vo.UserMemberVo" id="baseUserMemberMap">
<result property="id" column="id"/> <result property="id" column="id"/>
<result property="userId" column="user_id"/> <result property="userId" column="user_id"/>
...@@ -25,4 +25,28 @@ ...@@ -25,4 +25,28 @@
select * from base_user_member where user_id=#{userId} and is_del=0 limit 1 select * from base_user_member where user_id=#{userId} and is_del=0 limit 1
</select> </select>
<select id="getBaseUserMemberVOByUserId" parameterType="Integer"
resultType="com.github.wxiaoqi.security.admin.dto.BaseUserMemberVO">
select
m.id as id,
m.user_id as userId,
m.rent_free_days as rentFreeDays,
m.member_level as memberLevel,
m.total_number as totalNumber,
m.buy_count as buyCount,
m.valid_time as validTime,
ml.name as name
from
base_user_member m
left join
base_user_member_level ml
on
m.member_level =ml.level
where
m.user_id=#{userId}
and
m.is_del=0
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -10,7 +10,7 @@ spring: ...@@ -10,7 +10,7 @@ spring:
datasource: datasource:
type: com.alibaba.druid.pool.DruidDataSource type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.jdbc.Driver driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://10.5.52.3:3306/xxfc_activity?useUnicode=true&characterEncoding=UTF-8 url: jdbc:mysql://10.5.52.3:3306/xxfc_app?useUnicode=true&characterEncoding=UTF-8
username: root username: root
password: sslcloud123*() password: sslcloud123*()
jackson: jackson:
......
#\u4EE3\u7801\u751F\u6210\u5668\uFF0C\u914D\u7F6E\u4FE1\u606F #\u4EE3\u7801\u751F\u6210\u5668\uFF0C\u914D\u7F6E\u4FE1\u606F
#\u5305\u540D #\u5305\u540D
package=com.xxfc.platform.activity package=com.xxfc.platform.app
#\u4F5C\u8005 #\u4F5C\u8005
author=libin author=zjw
#Email #Email
email=18178966185@163.com email=18178966185@163.com
#\u8868\u524D\u9519\u8BEF\u7684Unicode\u5B57\u7B26\u4E32! #\u8868\u524D\u9519\u8BEF\u7684Unicode\u5B57\u7B26\u4E32!
......
package com.xxfc.platform.app.entity;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 购房车提交表单
*
* @author zjw
* @email 18178966185@163.com
* @date 2019-07-09 19:39:47
*/
@Data
@Table(name = "buy_vehicle_form")
public class BuyVehicleForm implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@Id
@GeneratedValue(generator = "JDBC")
@ApiModelProperty("主键")
private Integer id;
/**
* 创建时间
*/
@Column(name = "crt_time")
@ApiModelProperty(value = "创建时间", hidden = true )
private Long crtTime;
/**
* 更新时间
*/
@Column(name = "upd_time")
@ApiModelProperty(value = "更新时间", hidden = true )
private Long updTime;
/**
* 车型id
*/
@Column(name = "model_id")
@ApiModelProperty(value = "车型id")
private Integer modelId;
/**
* 联系人名称
*/
@Column(name = "contact_name")
@ApiModelProperty(value = "联系人名称")
private String contactName;
/**
* 联系人电话
*/
@Column(name = "contact_phone")
@ApiModelProperty(value = "联系人电话")
private String contactPhone;
/**
* 预约时间
*/
@Column(name = "book_time")
@ApiModelProperty(value = "预约时间")
private Long bookTime;
/**
* 公司id
*/
@Column(name = "company_id")
@ApiModelProperty(value = "公司id")
private Integer companyId;
/**
* 备注
*/
@Column(name = "remark")
@ApiModelProperty(value = "备注")
private String remark;
}
package com.xxfc.platform.app.biz;
import org.springframework.stereotype.Service;
import com.xxfc.platform.app.entity.BuyVehicleForm;
import com.xxfc.platform.app.mapper.BuyVehicleFormMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
/**
* 购房车提交表单
*
* @author zjw
* @email 18178966185@163.com
* @date 2019-07-09 19:39:47
*/
@Service
public class BuyVehicleFormBiz extends BaseBiz<BuyVehicleFormMapper,BuyVehicleForm> {
}
\ No newline at end of file
package com.xxfc.platform.app.mapper;
import com.xxfc.platform.app.entity.BuyVehicleForm;
import tk.mybatis.mapper.common.Mapper;
/**
* 购房车提交表单
*
* @author zjw
* @email 18178966185@163.com
* @date 2019-07-09 19:39:47
*/
public interface BuyVehicleFormMapper extends Mapper<BuyVehicleForm> {
}
package com.xxfc.platform.app.rest;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.app.biz.BuyVehicleFormBiz;
import com.xxfc.platform.app.entity.BuyVehicleForm;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("buyVehicleForm")
public class BuyVehicleFormController extends BaseController<BuyVehicleFormBiz,BuyVehicleForm> {
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xxfc.platform.app.mapper.BuyVehicleFormMapper">
<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.xxfc.platform.app.entity.BuyVehicleForm" id="buyVehicleFormMap">
<result property="id" column="id"/>
<result property="crtTime" column="crt_time"/>
<result property="updTime" column="upd_time"/>
<result property="name" column="name"/>
<result property="modelId" column="model_id"/>
<result property="contactName" column="contact_name"/>
<result property="contactPhone" column="contact_phone"/>
<result property="bookTime" column="book_time"/>
<result property="companyId" column="company_id"/>
<result property="remark" column="remark"/>
</resultMap>
</mapper>
\ No newline at end of file
...@@ -238,4 +238,7 @@ public class OrderTourDetail implements Serializable { ...@@ -238,4 +238,7 @@ public class OrderTourDetail implements Serializable {
@ApiModelProperty(value = "出发的站点id") @ApiModelProperty(value = "出发的站点id")
private Integer siteId; private Integer siteId;
@Column(name = "is_outside")
@ApiModelProperty(value = "是否省外 1--省外;0--省内")
private Integer isOutside;
} }
...@@ -15,4 +15,13 @@ public class OrderAboutParamDTO { ...@@ -15,4 +15,13 @@ public class OrderAboutParamDTO {
@ApiModelProperty(value = "旅游订单自动取消时间(毫秒)") @ApiModelProperty(value = "旅游订单自动取消时间(毫秒)")
private Long actTour; private Long actTour;
@ApiModelProperty(value = "会员订单自动取消时间(毫秒)")
private Long actMember;
@ApiModelProperty(value = "平台司机单价")
private BigDecimal driverPrice;
@ApiModelProperty(value = "免赔费用")
private BigDecimal damageSafe;
} }
\ No newline at end of file
package com.xxfc.platform.order.pojo.order;
import com.github.wxiaoqi.security.common.vo.PageParam;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 订单查询类
*/
@Data
public class QueryOrderDTO extends PageParam {
@ApiModelProperty(hidden = false)
private Integer crtUser;
@ApiModelProperty(hidden = false)
private Integer crtCompanyId;
@ApiModelProperty(value = "订单状态\n" +
"0--删除\n" +
"1--创建订单\n" +
"2--取消\n" +
"3--待付款\n" +
"4--待出行\n" +
"5--出行中(进行中)\n" +
"6--已完成")
private Integer status;
private String multiStatus;
@ApiModelProperty(value = "是否有使用会员权益")
private Integer hasMemberRight;
@ApiModelProperty(value = "订单类型 1--租车;2--旅游; 3--会员订单")
private Integer type;
private String multiTypes;
}
\ No newline at end of file
...@@ -191,15 +191,32 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> { ...@@ -191,15 +191,32 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
setOrderId(baseOrder.getId()); setOrderId(baseOrder.getId());
}}); }});
//如果超过出发时间,不能取消订单
//根据时间处理goodsAmount
//获取出发时间 到现在 距离时间
Long timeLag = orvd.getStartTime() - System.currentTimeMillis();
if(timeLag < 0) {
throw new BaseException(ResultCode.FAILED_CODE, new HashSet<String>(){{
add("已超过出发时间,不能取消订单");
}});
}
//退款流程 //退款流程
rentRefundProcess(hasUpdateOrder, orvd.getDeposit(), orvd.getStartTime(), APP_ORDER+ "_"+ RENT_REFUND); rentRefundProcess(hasUpdateOrder, orvd.getDeposit(), timeLag, APP_ORDER+ "_"+ RENT_REFUND);
}else if (OrderTypeEnum.TOUR.getCode().equals(baseOrder.getType())) { }else if (OrderTypeEnum.TOUR.getCode().equals(baseOrder.getType())) {
OrderTourDetail otd = orderTourDetailBiz.selectOne(new OrderTourDetail(){{ OrderTourDetail otd = orderTourDetailBiz.selectOne(new OrderTourDetail(){{
setOrderId(baseOrder.getId()); setOrderId(baseOrder.getId());
}}); }});
Long timeLag = otd.getStartTime() - System.currentTimeMillis();
//判断是省内还是省外
String key = TOUR_IN_REFUND;
if(SYS_TRUE.equals(otd.getIsOutside())) {
key = TOUR_REFUND;
}
//退款流程 //退款流程
rentRefundProcess(hasUpdateOrder, otd.getStartTime(), APP_ORDER+ "_"+ TOUR_REFUND); rentRefundProcess(hasUpdateOrder, timeLag, APP_ORDER+ "_"+ key);
} }
} }
...@@ -253,10 +270,10 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> { ...@@ -253,10 +270,10 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
* 租车退款流程(含押金) * 租车退款流程(含押金)
* @param baseOrder * @param baseOrder
* @param depositAmont * @param depositAmont
* @param startTime * @param timeLag 与开始时间的时间差
* @param dicParentKey * @param dicParentKey
*/ */
private void rentRefundProcess(BaseOrder baseOrder, BigDecimal depositAmont, Long startTime, String dicParentKey) { private void rentRefundProcess(BaseOrder baseOrder, BigDecimal depositAmont, Long timeLag, String dicParentKey) {
//计算退款金额 //计算退款金额
// 1、押金 + 租金(规则扣除) // 1、押金 + 租金(规则扣除)
BigDecimal refundGoodsAmount = baseOrder.getGoodsAmount(); BigDecimal refundGoodsAmount = baseOrder.getGoodsAmount();
...@@ -268,7 +285,6 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> { ...@@ -268,7 +285,6 @@ public class BaseOrderBiz extends BaseBiz<BaseOrderMapper,BaseOrder> {
//根据时间处理goodsAmount //根据时间处理goodsAmount
//获取出发时间 到现在 距离时间 //获取出发时间 到现在 距离时间
Long timeLag = startTime - System.currentTimeMillis();
Integer hourLag = Long.valueOf(timeLag/(1000L * 60L * 60L)).intValue(); Integer hourLag = Long.valueOf(timeLag/(1000L * 60L * 60L)).intValue();
Map<String, com.xxfc.platform.universal.entity.Dictionary> dictionaryMap = thirdFeign.dictionaryGetAll4Map().getData(); Map<String, com.xxfc.platform.universal.entity.Dictionary> dictionaryMap = thirdFeign.dictionaryGetAll4Map().getData();
......
...@@ -46,7 +46,7 @@ public class RabbitConsumer { ...@@ -46,7 +46,7 @@ public class RabbitConsumer {
baseOrderBiz.cancel(baseOrder); baseOrderBiz.cancel(baseOrder);
}catch (BaseException e) { }catch (BaseException e) {
if(ResultCode.DB_OPERATION_FAIL_CODE == e.getStatus()) { if(ResultCode.DB_OPERATION_FAIL_CODE == e.getStatus()) {
log.info("取消操作被取消"); log.info("取消操作被取消;订单id:"+ baseOrder.getId());
} }
}catch (Exception e) { }catch (Exception e) {
log.error("============消费失败,尝试消息补发再次消费!=============="); log.error("============消费失败,尝试消息补发再次消费!==============");
......
...@@ -23,10 +23,7 @@ import com.xxfc.platform.order.biz.OrderMemberDetailBiz; ...@@ -23,10 +23,7 @@ import com.xxfc.platform.order.biz.OrderMemberDetailBiz;
import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum; import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum;
import com.xxfc.platform.order.entity.BaseOrder; import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.mqhandler.RabbitProduct; import com.xxfc.platform.order.mqhandler.RabbitProduct;
import com.xxfc.platform.order.pojo.order.CancelOrderDTO; import com.xxfc.platform.order.pojo.order.*;
import com.xxfc.platform.order.pojo.order.OrderListVo;
import com.xxfc.platform.order.pojo.order.OrderPageVO;
import com.xxfc.platform.order.pojo.order.OrderAboutParamDTO;
import com.xxfc.platform.order.pojo.pay.OrderPayDTO; import com.xxfc.platform.order.pojo.pay.OrderPayDTO;
import com.xxfc.platform.universal.constant.DictionaryKey; import com.xxfc.platform.universal.constant.DictionaryKey;
import com.xxfc.platform.universal.entity.Dictionary; import com.xxfc.platform.universal.entity.Dictionary;
...@@ -113,6 +110,9 @@ public class BaseOrderController extends CommonBaseController { ...@@ -113,6 +110,9 @@ public class BaseOrderController extends CommonBaseController {
setInsurePrice(new BigDecimal(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.INSURE_PRICE).getDetail())); setInsurePrice(new BigDecimal(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.INSURE_PRICE).getDetail()));
setActRent(new Long(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.ACT_RENT).getDetail())); setActRent(new Long(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.ACT_RENT).getDetail()));
setActTour(new Long(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.ACT_TOUR).getDetail())); setActTour(new Long(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.ACT_TOUR).getDetail()));
setActMember(new Long(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.ACT_MEMBER).getDetail()));
setDamageSafe(new BigDecimal(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.DAMAGE_SAFE).getDetail()));
setDriverPrice(new BigDecimal(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.DRIVER_PRICE).getDetail()));
}}); }});
} }
...@@ -236,6 +236,7 @@ public class BaseOrderController extends CommonBaseController { ...@@ -236,6 +236,7 @@ public class BaseOrderController extends CommonBaseController {
@IgnoreClientToken @IgnoreClientToken
@ResponseBody @ResponseBody
public ObjectRestResponse<OrderPageVO> get(@PathVariable String no) { public ObjectRestResponse<OrderPageVO> get(@PathVariable String no) {
log.info("no:"+ no + ",时间戳:"+ System.currentTimeMillis());
//查询列表数据 //查询列表数据
if (StringUtils.isBlank(BaseContextHandler.getUserID())) { if (StringUtils.isBlank(BaseContextHandler.getUserID())) {
throw new BaseException(ResultCode.AJAX_WECHAT_NOTEXIST_CODE); throw new BaseException(ResultCode.AJAX_WECHAT_NOTEXIST_CODE);
...@@ -246,6 +247,7 @@ public class BaseOrderController extends CommonBaseController { ...@@ -246,6 +247,7 @@ public class BaseOrderController extends CommonBaseController {
if (page.getData().isEmpty()) { if (page.getData().isEmpty()) {
throw new BaseException(ResultCode.NOTEXIST_CODE); throw new BaseException(ResultCode.NOTEXIST_CODE);
} }
log.info("no:"+ no + ",时间戳:"+ System.currentTimeMillis());
return new ObjectRestResponse<>().data(page.getData().get(0)); return new ObjectRestResponse<>().data(page.getData().get(0));
} }
...@@ -378,35 +380,7 @@ public class BaseOrderController extends CommonBaseController { ...@@ -378,35 +380,7 @@ public class BaseOrderController extends CommonBaseController {
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
} }
/**
* 订单查询类
*/
@Data
public class QueryOrderDTO extends PageParam {
@ApiModelProperty(hidden = false)
private Integer crtUser;
@ApiModelProperty(hidden = false)
private Integer crtCompanyId;
@ApiModelProperty(value = "订单状态\n" +
"0--删除\n" +
"1--创建订单\n" +
"2--取消\n" +
"3--待付款\n" +
"4--待出行\n" +
"5--出行中(进行中)\n" +
"6--已完成")
private Integer status;
private String multiStatus;
@ApiModelProperty(value = "是否有使用会员权益")
private Integer hasMemberRight;
@ApiModelProperty(value = "订单类型 1--租车;2--旅游; 3--会员订单")
private Integer type;
}
/** /**
* 订单查询类 * 订单查询类
......
...@@ -15,6 +15,8 @@ import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum; ...@@ -15,6 +15,8 @@ import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum;
import com.xxfc.platform.order.pojo.order.MemberBO; import com.xxfc.platform.order.pojo.order.MemberBO;
import com.xxfc.platform.order.pojo.price.OrderPriceVO; import com.xxfc.platform.order.pojo.price.OrderPriceVO;
import com.xxfc.platform.tour.feign.TourFeign; import com.xxfc.platform.tour.feign.TourFeign;
import com.xxfc.platform.universal.constant.DictionaryKey;
import com.xxfc.platform.universal.feign.ThirdFeign;
import com.xxfc.platform.vehicle.feign.VehicleFeign; import com.xxfc.platform.vehicle.feign.VehicleFeign;
import lombok.extern.log4j.Log4j; import lombok.extern.log4j.Log4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -26,6 +28,8 @@ import java.math.BigDecimal; ...@@ -26,6 +28,8 @@ import java.math.BigDecimal;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import static com.xxfc.platform.universal.constant.DictionaryKey.APP_ORDER;
@Service @Service
@Log4j @Log4j
public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz, MemberBO> { public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz, MemberBO> {
...@@ -36,10 +40,14 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz ...@@ -36,10 +40,14 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
@Autowired @Autowired
VehicleFeign vehicleFeign; VehicleFeign vehicleFeign;
@Autowired
ThirdFeign thirdFeign;
private static Integer IS_CHILD = 1; private static Integer IS_CHILD = 1;
private static Integer LEVEL_DEFAULT = 0; private static Integer LEVEL_DEFAULT = 0;
private static Integer NUMBER_ZERO = 0; private static Integer NUMBER_ZERO = 0;
private static Long autoCancelTime;
@Autowired @Autowired
OrderCostDetailBiz orderCostDetailBiz; OrderCostDetailBiz orderCostDetailBiz;
...@@ -68,6 +76,7 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz ...@@ -68,6 +76,7 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
@Override @Override
public void initDetail(MemberBO bo) { public void initDetail(MemberBO bo) {
super.initDetail(bo); super.initDetail(bo);
initDictionary();
BaseUserMemberLevel buml = userFeign.level(bo.getMemberLevel()); BaseUserMemberLevel buml = userFeign.level(bo.getMemberLevel());
if(!bo.getMemberLevelId().equals(buml.getId())) { if(!bo.getMemberLevelId().equals(buml.getId())) {
throw new BaseException(ResultCode.PARAM_ILLEGAL_CODE, new HashSet<String>(){{ throw new BaseException(ResultCode.PARAM_ILLEGAL_CODE, new HashSet<String>(){{
...@@ -79,6 +88,11 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz ...@@ -79,6 +88,11 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
bo.setRebate(buml.getDiscount()); bo.setRebate(buml.getDiscount());
} }
public void initDictionary() {
dictionaryMap = thirdFeign.dictionaryGetAll4Map().getData();
this.autoCancelTime = Long.valueOf(dictionaryMap.get(APP_ORDER+ "_"+ DictionaryKey.ACT_MEMBER).getDetail());
}
@Override @Override
public void handleDetail(MemberBO bo) { public void handleDetail(MemberBO bo) {
//设置订单状态为3 //设置订单状态为3
...@@ -91,7 +105,7 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz ...@@ -91,7 +105,7 @@ public class OrderMemberService extends AbstractOrderHandle<OrderMemberDetailBiz
super.handleDetail(bo); super.handleDetail(bo);
//发送定时取消订单(30分钟) //发送定时取消订单(30分钟)
rabbitProduct.sendDelayMessage(bo.getOrder(), 1000L * 60 * 30); rabbitProduct.sendDelayMessage(bo.getOrder(), autoCancelTime);
} }
@Override @Override
......
...@@ -119,6 +119,9 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To ...@@ -119,6 +119,9 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To
bo.setStartCity(sysRegion.getId().intValue()); bo.setStartCity(sysRegion.getId().intValue());
bo.setStartCityName(sysRegion.getName()); bo.setStartCityName(sysRegion.getName());
//设置省内,省外
bo.setIsOutside(bo.getTourGood().getIsOutside());
//设置verificationId 核销id //设置verificationId 核销id
bo.setVerificationId(tourFeign.entityList(BeanUtil.beanToMap(new TourGoodVerification(){{ bo.setVerificationId(tourFeign.entityList(BeanUtil.beanToMap(new TourGoodVerification(){{
setSpeId(bo.getSpePriceId()); setSpeId(bo.getSpePriceId());
...@@ -197,7 +200,7 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To ...@@ -197,7 +200,7 @@ public class OrderTourService extends AbstractOrderHandle<OrderTourDetailBiz, To
//总价格 //总价格
orderAmount = orderAmount.add(goodsAmount).add(insureAmount); orderAmount = orderAmount.add(goodsAmount).add(insureAmount);
//真实价格 //真实价格
realAmount = realAmount.add(tourSpePriceVo.getRealPrice()).add(tourSpePriceVo.getRealChildPrice()); realAmount = realAmount.add(tourSpePriceVo.getRealPrice()).add(tourSpePriceVo.getRealChildPrice()).add(insureAmount);
//生成订单明细 //生成订单明细
TourPriceVO tpv = BeanUtil.toBean(tourSpePriceVo, TourPriceVO.class); TourPriceVO tpv = BeanUtil.toBean(tourSpePriceVo, TourPriceVO.class);
......
...@@ -86,6 +86,14 @@ ...@@ -86,6 +86,14 @@
</foreach> </foreach>
) )
</if> </if>
<if test="multiTypes != null">
and
(
<foreach collection="multiTypes.split(',')" index="tIndex" item="typeEntity" separator=" or ">
type = #{typeEntity}
</foreach>
)
</if>
</where> </where>
order by crt_time desc order by crt_time desc
</select> </select>
......
...@@ -72,6 +72,7 @@ public class TourUserController extends TourBaseController<TourUserBiz> { ...@@ -72,6 +72,7 @@ public class TourUserController extends TourBaseController<TourUserBiz> {
TourUser tourUser1=new TourUser(); TourUser tourUser1=new TourUser();
tourUser1.setUserid(userid); tourUser1.setUserid(userid);
tourUser1.setIdCard(tourUser.getIdCard()); tourUser1.setIdCard(tourUser.getIdCard());
tourUser1.setIsdel(0);
tourUser1=baseBiz.selectOne(tourUser1); tourUser1=baseBiz.selectOne(tourUser1);
if(tourUser1!=null){ if(tourUser1!=null){
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"出游人证件号一样"); return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE,"出游人证件号一样");
......
...@@ -13,10 +13,11 @@ public class DictionaryKey { ...@@ -13,10 +13,11 @@ public class DictionaryKey {
public static final String UNIVERSAL_PAY ="UNIVERSAL_PAY"; public static final String UNIVERSAL_PAY ="UNIVERSAL_PAY";
/** /**
* 租车,旅游退款 * 租车,旅游(省内、省外)退款
*/ */
public static final String RENT_REFUND ="RENT_REFUND"; public static final String RENT_REFUND ="RENT_REFUND";
public static final String TOUR_REFUND ="TOUR_REFUND"; public static final String TOUR_REFUND ="TOUR_REFUND";
public static final String TOUR_IN_REFUND ="TOUR_IN_REFUND";
/** /**
* 租车:公司司机租金、免赔费用、违章预备金 * 租车:公司司机租金、免赔费用、违章预备金
...@@ -35,6 +36,7 @@ public class DictionaryKey { ...@@ -35,6 +36,7 @@ public class DictionaryKey {
*/ */
public static final String ACT_RENT = "ACT_RENT"; public static final String ACT_RENT = "ACT_RENT";
public static final String ACT_TOUR = "ACT_TOUR"; public static final String ACT_TOUR = "ACT_TOUR";
public static final String ACT_MEMBER = "ACT_MEMBER";
/** /**
* 支付价格减低 * 支付价格减低
......
...@@ -361,7 +361,7 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl ...@@ -361,7 +361,7 @@ public class VehiclePlatCataBiz extends BaseBiz<VehiclePlatCataMapper, VehiclePl
//判断子标签是更新还是新增 //判断子标签是更新还是新增
if (VehiclePlatCata.getId() == null || VehiclePlatCata.getId() == 0) { if (VehiclePlatCata.getId() == null || VehiclePlatCata.getId() == 0) {
VehiclePlatCata.setUpdTime(System.currentTimeMillis()); VehiclePlatCata.setUpdTime(System.currentTimeMillis());
VehiclePlatCata.setParentId(parentVPC.getParentId()); VehiclePlatCata.setParentId(parentVPC.getId());
//添加 //添加
insertSelective(VehiclePlatCata); insertSelective(VehiclePlatCata);
} else { } else {
......
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