Commit 1164b8c8 authored by hanfeng's avatar hanfeng

修改用户会员后台管理(19/7/06)

parent 7c7ad9e3
package com.github.wxiaoqi.security.admin.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* 用户信息表
*/
@Data
public class AppUserManageDTO {
/**
* 每页条数
*/
private Integer limit;
/**
* 当前页数
*/
private Integer page;
/**
* 手机号
*/
private Integer mobile;
/**
* 注册终端
*/
private Integer channel;
/**
* 会员等级
*/
private Integer memberLevel;
/**
* 注册时间(开始)
*/
@JsonFormat(pattern = "yyyy-MM-DD HH:mm", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-DD HH:mm")
private Date registrationTimeBegin;
/**
* 注册时间(结束)
*/
@JsonFormat(pattern = "yyyy-MM-DD HH:mm", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-DD HH:mm")
private Date registrationTimeEnd;
public Long getRegistrationTimeBegin() {
return registrationTimeBegin.getTime();
}
public Long getRegistrationTimeEnd() {
return registrationTimeEnd.getTime();
}
}
package com.github.wxiaoqi.security.admin.dto;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 用户会员信息
*/
@Data
public class BaseUserMemberVO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键id
*/
@Id
@GeneratedValue(generator = "JDBC")
@ApiModelProperty("主键id")
private Integer id;
/**
* 用户id
*/
@Column(name = "user_id")
@ApiModelProperty(value = "用户id")
private Integer userId;
/**
* 会员等级
*/
@Column(name = "member_level")
@ApiModelProperty(value = "会员等级")
private Integer memberLevel;
/**
* 赠送总天数
*/
@Column(name = "total_number")
@ApiModelProperty(value = "赠送总天数")
private Integer totalNumber;
/**
* 剩余天数
*/
@Column(name = "rent_free_days")
@ApiModelProperty(value = "剩余天数")
private Integer rentFreeDays;
/**
* 购买会员次数
*/
@Column(name = "buy_count")
@ApiModelProperty(value = "购买会员次数")
private Integer buyCount;
/**
* 有效期;0代表永久
*/
@Column(name = "valid_time")
@ApiModelProperty(value = "有效期;0代表永久")
private Long validTime;
}
...@@ -132,6 +132,9 @@ public class BaseUserMember implements Serializable { ...@@ -132,6 +132,9 @@ public class BaseUserMember implements Serializable {
@Column(name = "is_del") @Column(name = "is_del")
@ApiModelProperty(value = "是否删除;0-正常;1-删除") @ApiModelProperty(value = "是否删除;0-正常;1-删除")
private Integer isDel; private Integer isDel;
@Column(name = "recent_recharge")
private Long recentRecharge;
} }
package com.github.wxiaoqi.security.admin.vo;
import lombok.Data;
import javax.persistence.Column;
/**
* 用户信息表
*/
@Data
public class AppUserManageVo {
/**
* 用户id
*/
@Column(name = "userid")
private Integer userId;
/**
* 注册终端
*/
@Column(name = "channel")
private String channel;
/**
* 是否是会员:0-不是;1-会员
*/
@Column(name = "is_member")
private Integer isMember;
/**
* 真实姓名
*/
@Column(name = "realname")
private String realName;
/**
* 状态:0-正常,1-禁用
*/
@Column(name = "isdel")
private Integer isDel;
/**
* 昵称
*/
@Column(name = "nickname")
private String nickName;
/**
* 用户来源:0-自来,1-公司人员推荐,2-用户推荐
*/
@Column(name = "source")
private Integer source;
/**
* 邀请人id
*/
@Column(name = "Inviter_account")
private Integer InviterAccount;
/**
* 账号申请所在地
*/
@Column(name = "address")
private String address;
/**
* 用户性别
*/
@Column(name = "sex")
private Integer sex;
/**
* 用户邮箱
*/
@Column(name = "email")
private String email;
/**
* 用户名(手机号码)
*/
@Column(name = "username")
private String username;
/**
* 实名认证状态:0-未认证,1-已认证
*/
@Column(name = "certification_status")
private String certification_status;
/**
* 身份证号
*/
@Column(name = "id_number")
private String idNumber;
/**
* 会员等级
*/
@Column(name = "member_level")
private Integer memberLevel;
/**
* 有效期;0代表永久
*/
@Column(name = "valid_time")
private Integer validTime;
/**
* 创建时间
*/
@Column(name = "createtime")
private Long createTime;
/**
* 最后的登录时间
*/
@Column(name = "last_time")
private Long lastTime;
/**
* 购买会员次数
*/
@Column(name = "buy_count")
private String buyCount;
/**
* 赠送总天数
*/
@Column(name = "total_number")
private String totalNumber;
/**
* 剩余天数
*/
@Column(name = "rent_free_days")
private String rentFreeDays;
/**
* 加入会员时间
*/
private Long timeOfMembership;
/**
* 最近充值时间
*/
@Column(name = "recent_recharge")
private Long recentRecharge;
/**
* 会员名称
*/
private String memberName;
}
package com.github.wxiaoqi.security.admin.biz; package com.github.wxiaoqi.security.admin.biz;
import com.github.wxiaoqi.security.admin.dto.AppUserManageDTO;
import com.github.wxiaoqi.security.admin.entity.*; import com.github.wxiaoqi.security.admin.entity.*;
import com.github.wxiaoqi.security.admin.mapper.*; import com.github.wxiaoqi.security.admin.mapper.*;
import com.github.wxiaoqi.security.admin.vo.AppUserManageVo;
import com.github.wxiaoqi.security.admin.vo.AppUserVo; import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import org.apache.commons.beanutils.BeanUtilsBean; import org.apache.commons.beanutils.BeanUtilsBean;
...@@ -24,42 +26,58 @@ public class AppUserManageBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail ...@@ -24,42 +26,58 @@ public class AppUserManageBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
@Autowired @Autowired
private AppUserLoginMapper appUserLoginMapper; private AppUserLoginMapper appUserLoginMapper;
@Autowired
private BaseUserMemberMapper baseUserMemberMapper;
/** /**
* 根据条件查询 * 根据条件查询
* *
* @param appUserVo * @param appUserManageDTO 查询条件
* @return * @return
*/ */
public AppUserVo findAllByQuery(AppUserVo appUserVo) { public AppUserManageVo findAllByQuery(AppUserManageDTO appUserManageDTO) {
return mapper.selectAppUserManage(appUserVo); return mapper.selectAppUserManage(appUserManageDTO);
} }
/**
@Transactional * 禁用账户
public void deleteAppUser(Integer id) { * @param id
*/
@Transactional(rollbackFor =Exception.class)
public void deleteAppUser(Integer id,Integer isDel) {
AppUserLogin appUserLogin = new AppUserLogin(); AppUserLogin appUserLogin = new AppUserLogin();
appUserLogin.setIsdel(1); //修改为禁用并设置修改时间
appUserLogin.setIsdel(isDel);
appUserLogin.setUpdatetime(System.currentTimeMillis());
Example example = new Example(AppUserLogin.class); Example example = new Example(AppUserLogin.class);
Example.Criteria criteria = example.createCriteria(); Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("id", id); criteria.andEqualTo("id", id);
appUserLogin.setUpdatetime(System.currentTimeMillis());
appUserLoginMapper.updateByExampleSelective(appUserLogin, example); appUserLoginMapper.updateByExampleSelective(appUserLogin, example);
//设置
AppUserDetail appUserDetail = new AppUserDetail(); AppUserDetail appUserDetail = new AppUserDetail();
appUserDetail.setIsdel(1); appUserDetail.setIsdel(isDel);
appUserDetail.setUpdatetime(System.currentTimeMillis()); appUserDetail.setUpdatetime(System.currentTimeMillis());
Example detailExample = new Example(AppUserLogin.class); Example detailExample = new Example(AppUserLogin.class);
Example.Criteria detailCriteria = detailExample.createCriteria(); Example.Criteria detailCriteria = detailExample.createCriteria();
criteria.andEqualTo("id", id); criteria.andEqualTo("id", id);
mapper.updateByExampleSelective(appUserDetail, detailCriteria); mapper.updateByExampleSelective(appUserDetail, detailCriteria);
} }
/**
* 查询一条
* @param id
* @return
*/
public AppUserVo findOneById(Integer id) { public AppUserVo findOneById(Integer id) {
return mapper.getUserInfo(id); return mapper.getUserInfo(id);
} }
@Transactional /**
*
* @param appUserVo
*/
@Transactional(rollbackFor =Exception.class)
public void save(AppUserVo appUserVo) { public void save(AppUserVo appUserVo) {
AppUserLogin appUserLogin = new AppUserLogin(); AppUserLogin appUserLogin = new AppUserLogin();
AppUserDetail appUserDetail = new AppUserDetail(); AppUserDetail appUserDetail = new AppUserDetail();
......
...@@ -2,18 +2,28 @@ package com.github.wxiaoqi.security.admin.biz; ...@@ -2,18 +2,28 @@ package com.github.wxiaoqi.security.admin.biz;
import com.ace.cache.annotation.Cache; 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.UserMemberDTO; import com.github.wxiaoqi.security.admin.dto.UserMemberDTO;
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 lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.beanutils.BeanUtilsBean;
import org.springframework.aop.framework.AopContext; import org.springframework.aop.framework.AopContext;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.task.TaskExecutor;
import org.springframework.integration.amqp.dsl.Amqp;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.github.wxiaoqi.security.admin.entity.BaseUserMember; import com.github.wxiaoqi.security.admin.entity.BaseUserMember;
import com.github.wxiaoqi.security.admin.mapper.BaseUserMemberMapper; import com.github.wxiaoqi.security.admin.mapper.BaseUserMemberMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example;
import tk.mybatis.mapper.weekend.WeekendSqls;
import java.lang.reflect.InvocationTargetException;
import java.util.List;
/** /**
* 用户会员表 * 用户会员表
...@@ -30,6 +40,9 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb ...@@ -30,6 +40,9 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb
@Autowired @Autowired
AppUserDetailBiz detailBiz; AppUserDetailBiz detailBiz;
@Autowired
private TaskExecutor taskExecutor;
//获取用户会员信息 //获取用户会员信息
@Cache(key = "user:member{1}") @Cache(key = "user:member{1}")
public UserMemberVo getMemberInfoByUserId(Integer userId){ public UserMemberVo getMemberInfoByUserId(Integer userId){
...@@ -155,5 +168,56 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb ...@@ -155,5 +168,56 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper,BaseUserMemb
return AopContext.currentProxy() != null ? (BaseUserMemberBiz) AopContext.currentProxy() : this; return AopContext.currentProxy() != null ? (BaseUserMemberBiz) AopContext.currentProxy() : this;
} }
/**
* 获取用户会员信息
* @param userId
* @return
*/
public BaseUserMember findOneByUserId(Integer userId) {
Example exa = new Example(BaseUserMember.class);
Example.Criteria criteria = exa.createCriteria();
criteria.andEqualTo("userId",userId);
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;
}
/**
* 设置用户会员
* @param baseUserMemberVO
*/
@Transactional(rollbackFor = Exception.class)
public void setUserMember(BaseUserMemberVO baseUserMemberVO) throws InvocationTargetException, IllegalAccessException {
Example exa = Example.builder(BaseUserMember.class).where(
WeekendSqls.<BaseUserMember>custom()
.andEqualTo(BaseUserMember::getUserId, baseUserMemberVO.getUserId())
).build();
List<BaseUserMember> baseUserMembers = mapper.selectByExample(exa);
BaseUserMember baseUserMember = new BaseUserMember();
BeanUtilsBean.getInstance().copyProperties(baseUserMember,baseUserMemberVO);
if (baseUserMembers==null||baseUserMembers.size()==0) {
baseUserMember.setCrtTime(System.currentTimeMillis());
baseUserMember.setIsDel(0);
baseUserMember.setPayCount(0);
baseUserMember.setCardLeave(0);
baseUserMember.setRecentRecharge(System.currentTimeMillis());
insertSelective(baseUserMember);
return;
}else if (baseUserMembers.size()==1){
baseUserMember.setUpdTime(System.currentTimeMillis());
updateSelectiveById(baseUserMember);
}else {
throw new BaseException("Member purchase repeat!");
}
}
} }
\ No newline at end of file
package com.github.wxiaoqi.security.admin.mapper; package com.github.wxiaoqi.security.admin.mapper;
import com.github.wxiaoqi.security.admin.dto.AppUserManageDTO;
import com.github.wxiaoqi.security.admin.entity.AppUserDetail; import com.github.wxiaoqi.security.admin.entity.AppUserDetail;
import com.github.wxiaoqi.security.admin.entity.AppUserManage; import com.github.wxiaoqi.security.admin.vo.AppUserManageVo;
import com.github.wxiaoqi.security.admin.vo.AppUserVo; import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper; import tk.mybatis.mapper.common.Mapper;
...@@ -11,5 +12,5 @@ public interface AppUserDetailMapper extends Mapper<AppUserDetail> { ...@@ -11,5 +12,5 @@ public interface AppUserDetailMapper extends Mapper<AppUserDetail> {
//查询用户信息 //查询用户信息
public AppUserVo getUserInfo(@Param("userId") Integer userId); public AppUserVo getUserInfo(@Param("userId") Integer userId);
AppUserVo selectAppUserManage(AppUserVo appUserVo); AppUserManageVo selectAppUserManage(AppUserManageDTO appUserManageDTO);
} }
\ No newline at end of file
package com.github.wxiaoqi.security.admin.rest; package com.github.wxiaoqi.security.admin.rest;
import com.github.wxiaoqi.security.admin.biz.AppUserManageBiz; import com.github.wxiaoqi.security.admin.biz.AppUserManageBiz;
import com.github.wxiaoqi.security.admin.dto.AppUserManageDTO;
import com.github.wxiaoqi.security.admin.dto.BaseUserMemberVO;
import com.github.wxiaoqi.security.admin.entity.AppUserManage; import com.github.wxiaoqi.security.admin.entity.AppUserManage;
import com.github.wxiaoqi.security.admin.vo.AppUserManageVo;
import com.github.wxiaoqi.security.admin.vo.AppUserVo; import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController; import com.github.wxiaoqi.security.common.rest.BaseController;
...@@ -20,18 +23,18 @@ public class AppUsersManageController extends BaseController<AppUserManageBiz,Ap ...@@ -20,18 +23,18 @@ public class AppUsersManageController extends BaseController<AppUserManageBiz,Ap
* @return * @return
*/ */
@GetMapping("/findAll") @GetMapping("/findAll")
public ObjectRestResponse<AppUserVo> findAllByQuery(@RequestBody AppUserVo appUserVo){ public ObjectRestResponse<AppUserManageVo> findAllByQuery(@RequestBody AppUserManageDTO appUserManageDTO){
return ObjectRestResponse.succ(baseBiz.findAllByQuery(appUserVo)); return ObjectRestResponse.succ(baseBiz.findAllByQuery(appUserManageDTO));
} }
/** /**
* 删除 * 禁用
* @param id * @param id
* @return * @return
*/ */
@DeleteMapping("/deleteById/{id}") @DeleteMapping("/deleteById/{id}/{isDel}")
public ObjectRestResponse deleteById(@PathVariable Integer id){ public ObjectRestResponse deleteById(@PathVariable Integer id,@PathVariable Integer isDel){
baseBiz.deleteAppUser(id); baseBiz.deleteAppUser(id,isDel);
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
} }
...@@ -45,6 +48,11 @@ public class AppUsersManageController extends BaseController<AppUserManageBiz,Ap ...@@ -45,6 +48,11 @@ public class AppUsersManageController extends BaseController<AppUserManageBiz,Ap
return ObjectRestResponse.succ(baseBiz.findOneById(id)); return ObjectRestResponse.succ(baseBiz.findOneById(id));
} }
/**
* 保存
* @param appUserVo
* @return
*/
@PostMapping("/save") @PostMapping("/save")
public ObjectRestResponse save(@RequestBody AppUserVo appUserVo){ public ObjectRestResponse save(@RequestBody AppUserVo appUserVo){
baseBiz.save(appUserVo); baseBiz.save(appUserVo);
......
package com.github.wxiaoqi.security.admin.rest;
import com.github.wxiaoqi.security.admin.biz.BaseUserMemberBiz;
import com.github.wxiaoqi.security.admin.dto.BaseUserMemberVO;
import com.github.wxiaoqi.security.admin.entity.AppUserManage;
import com.github.wxiaoqi.security.admin.entity.BaseUserMember;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import org.springframework.web.bind.annotation.*;
import java.lang.reflect.InvocationTargetException;
/**
* 用户会员
* @author Administrator
*/
@RestController
@RequestMapping("baseUserMember")
public class BaseUserMemberController extends BaseController<BaseUserMemberBiz, BaseUserMember> {
@RequestMapping("/findOne/{userId}")
public ObjectRestResponse<AppUserManage> findOneByUserId(@PathVariable Integer userId){
BaseUserMember oneByUserId = baseBiz.findOneByUserId(userId);
if (oneByUserId==null) {
return ObjectRestResponse.succ();
}
return ObjectRestResponse.succ(oneByUserId);
}
/**
* 设置用户会员
* @param baseUserMemberVO
* @return
*/
@PostMapping("/setUserMember")
public ObjectRestResponse setUserMember(@RequestBody BaseUserMemberVO baseUserMemberVO)
throws InvocationTargetException, IllegalAccessException {
baseBiz.setUserMember(baseUserMemberVO);
return ObjectRestResponse.succ();
}
}
...@@ -32,85 +32,69 @@ ...@@ -32,85 +32,69 @@
where d.userid = #{userId} limit 1 where d.userid = #{userId} limit 1
</select> </select>
<select id="selectAppUserManage" parameterType="Integer" resultMap="AppUserVoMap"> <select id="selectAppUserManage" parameterType="com.github.wxiaoqi.security.admin.dto.AppUserDTO"
select l.im_userid,l.username,l.wx_openid,l.unionid,l.openid,l.status,l.id_number,l.certification_status,d.* from app_user_login l resultType="com.github.wxiaoqi.security.admin.vo.AppUserManageVo">
left join app_user_detail d select
on d.userid = l.id where 1=1 d.userid,
d.channel,
<if test="id != null"> d.is_member,
and d.id =#{id} d.realname,
</if> d.isdel,
d.nickname,
<if test="userid != null" > d.source,
and d.userid = #{userId} d.Inviter_account,
</if> d.address,
d.sex,
<if test="username != null" > d.email,
and l.username=#{username} l.username,
</if> l.certification_status,
l.id_number,
l.createtime,
<if test="imUserd != null" > l.last_time,
and l.im_userid=#{imUserid} m.member_level,
</if> m.valid_time,
m.buy_count,
<if test="wxOpenid != null" > m.total_number,
and l.wx_openid=#{wxOpenid} m.rent_free_days,
</if> m.crt_time AS timeOfMembership,
m.recent_recharge,
<if test="unionid != null" > m.name as memberName
and l.unionid=#{unionid} from
</if> app_user_login l
left join
<if test="openid != null" > app_user_detail d
and l.openid=#{openid} on d.userid = l.id
</if> left join
(
<if test="status != null" > select
and l.status=#{status} b.*,
</if> ml.name
from
<if test="idNumber != null" > base_user_member b
and l.id_number=#{idNumber} left join
</if> base_user_member_level ml
on
<if test="certificationStatus != null" > ml.id = b.member_level
and l.certification_status=#{certificationStatus} ) m
</if> on
l.id = m.user_id
<if test="isMember != null" > where 1=1
and d.is member=#{isMember}
</if> <if test="mobile !=null || mobile ! = ''">
and l.username=#{mobile}
<if test="nickname != null" > </if>
and d.nickname=#{nickname} <if test="channel !=null || channel != ''">
</if> and d.channel=#{channel}
</if>
<if test="realname != null" > <if test="memberLevel !=null || memberLevel != ''">
and d.realname=#{realname} and m.member_level = #{memberLevel}
</if> </if>
<if test="registrationTimeBegin !=null || registrationTimeBegin != ''">
<if test="email != null" > and l.createtime &gt;= #{registrationTimeBegin}
and d.email=#{email} </if>
</if> <if test="registrationTimeEnd!=null || registrationTimeEnd != ''">
and l.createtime &lt;= #{registrationTimeEn}
<if test="sex != null" > </if>
and d.sex=#{sex}
</if>
<if test="birthday != null" >
and d.birthday=#{birthday}
</if>
<if test="personSign != null" >
and d.person_sign=#{personSign}
</if>
<if test="remark != null" >
and d.remark=#{remark}
</if>
</select> </select>
......
...@@ -50,6 +50,7 @@ public class AppVersionBiz extends BaseBiz<AppVersionMapper,AppVersion> { ...@@ -50,6 +50,7 @@ public class AppVersionBiz extends BaseBiz<AppVersionMapper,AppVersion> {
private String uploadPath; private String uploadPath;
@Autowired @Autowired
private RedisTemplate redisTemplate; private RedisTemplate redisTemplate;
public static final DateTimeFormatter DEFAULT_DATE_TIME_FORMATTER = DateTimeFormat.forPattern("yyyy-MM-dd"); public static final DateTimeFormatter DEFAULT_DATE_TIME_FORMATTER = DateTimeFormat.forPattern("yyyy-MM-dd");
......
...@@ -103,7 +103,7 @@ public class AppVersionController extends BaseController<AppVersionBiz,AppVersio ...@@ -103,7 +103,7 @@ public class AppVersionController extends BaseController<AppVersionBiz,AppVersio
@IgnoreUserToken @IgnoreUserToken
@GetMapping(value = "/download/installationPackage") //匹配的是href中的download请求 @GetMapping(value = "/download/installationPackage/{realFileRelPath}") //匹配的是href中的download请求
@ApiOperation(value = "下载app安装包") @ApiOperation(value = "下载app安装包")
public ResponseEntity<byte[]> downloadInstallationPackage(@RequestParam("realFileRelPath") String realFileRelPath) throws Exception { public ResponseEntity<byte[]> downloadInstallationPackage(@RequestParam("realFileRelPath") String realFileRelPath) throws Exception {
return baseBiz.downloadInstallationPackage(realFileRelPath); return baseBiz.downloadInstallationPackage(realFileRelPath);
......
...@@ -3,7 +3,6 @@ package com.xxfc.platform.universal.entity; ...@@ -3,7 +3,6 @@ package com.xxfc.platform.universal.entity;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
...@@ -12,8 +11,6 @@ import javax.persistence.GeneratedValue; ...@@ -12,8 +11,6 @@ import javax.persistence.GeneratedValue;
import javax.persistence.Id; import javax.persistence.Id;
import javax.persistence.Table; import javax.persistence.Table;
import java.io.Serializable; import java.io.Serializable;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; import java.util.Date;
/** /**
......
package com.xxfc.platform.vehicle;
import org.junit.Test;
import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.List;
public class ListTest {
@Test
public void ListTest(){
List<Object> objects = Arrays.asList();
System.out.println("objects.size()"+objects.get(0));
}
}
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