Commit 65956a4c authored by jiaorz's avatar jiaorz

Merge remote-tracking branch 'origin/master'

parents 31f355cf 33675910
package com.github.wxiaoqi.security.admin.dto;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Set;
......@@ -8,6 +10,8 @@ import java.util.Set;
* 用户信息表
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class AppUserManageDTO {
/**
* 每页条数
......
package com.github.wxiaoqi.security.admin.dto;
import lombok.Data;
import java.io.Serializable;
import java.sql.Timestamp;
/**
* 员工变更记录表
*/
@Data
public class AppUserPositionChangeRecordDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键id
*/
private Integer id;
/**
* 用户id
*/
private String phone;
/**
* 用户名称
*/
private String userName;
/**
* 变更后所在公司ID
*/
private Integer newCompanyId;
/**
* 变更前所在公司ID
*/
private Integer oldCompanyId;
/**
* 变更后所在公司名称
*/
private String newCompanyName;
/**
* 变更前所在公司名称
*/
private String oldCompanyName;
/**
* 旧职位ID
*/
private Integer oldJobId;
/**
* 新职位ID
*/
private Integer newJobId;
/**
* 新职位名称
*/
private String newJobName;
/**
* 旧职位名称
*/
private String oldJobName;
/**
* 操作人名称
*/
private Integer operatorId;
/**
* 操作时间
*/
private Timestamp crtTime;
/**
* 状态
* 1:入职;2:职位变更;3:身份变更 4:公司所属变更;5离职
*/
private Integer jobRemark;
/***
* 旧身份ID
*/
private Integer oldPositionId;
/***
* 新身份ID
*/
private Integer newPositionId;
/***
* 新身份名称
*/
private String newPositionName;
/***
* 旧身份名称
*/
private String oldPositionName;
/**
* 员工职位、所属公司、离职、入职等的实际上任时间
*/
private Timestamp relTime;
}
......@@ -4,6 +4,8 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;
import java.sql.Timestamp;
/**
* @author libin
* @version 1.0
......@@ -20,11 +22,9 @@ public class AppUserPositionTempDTO {
@ApiModelProperty(value = "手机号码")
private String phone;
@ApiModelProperty(value = "姓名")
private String name;
@ApiModelProperty(value = "身份id")
private Integer positionId;
......@@ -37,4 +37,21 @@ public class AppUserPositionTempDTO {
@ApiModelProperty(value = "分公司")
private String companyName;
@ApiModelProperty(value = "变动操作内容")
private Integer ChangeStatus;
@ApiModelProperty(value = "员工职位、所属公司、离职、入职等的实际上任时间")
private Timestamp relTime;
@ApiModelProperty(value = "是否删除:0-正常;1-删除")
private Integer isDel;
@ApiModelProperty(value = "员工职位状态:0-正常;1-离职")
private Integer isQuit;
@ApiModelProperty(value = "用户id")
private Integer userId;
}
......@@ -15,4 +15,5 @@ public class AppUserPositionTempFindDTO extends PageParam {
private String name;
private Integer status;
private Integer companyId;
private Integer positionId;
}
package com.github.wxiaoqi.security.admin.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.Date;
/**
* 员工变更记录表
*/
@Table(name = "app_user_position_change_record")
@Data
public class AppUserPositionChangeRecord implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(generator = "JDBC")//此处加上注解
@ApiModelProperty("主键id")
private Integer id;
@ApiModelProperty("用户id")
@Column(name = "phone")
private String phone;
@ApiModelProperty("用户名称")
@Column(name = "user_name")
private String userName;
@ApiModelProperty("变更后所在公司ID")
@Column(name = "new_company_id")
private Integer newCompanyId;
@ApiModelProperty("变更前所在公司ID")
@Column(name = "old_company_id")
private Integer oldCompanyId;
@ApiModelProperty("变更后所在公司名称")
@Column(name = "new_company_name")
private String newCompanyName;
@ApiModelProperty("变更前所在公司名称")
@Column(name = "old_company_name")
private String oldCompanyName;
@ApiModelProperty("旧职位ID")
@Column(name = "old_job_id")
private Integer oldJobId;
@ApiModelProperty("新职位ID")
@Column(name = "new_job_id")
private Integer newJobId;
@ApiModelProperty("操作人名称")
@Column(name = "operator_id")
private Integer operatorId;
@ApiModelProperty("操作时间")
@Column(name = "crt_time")
private Timestamp crtTime;
@ApiModelProperty("员工职位、所属公司、离职、入职等的实际上任时间")
@Column(name = "rel_time")
private Timestamp relTime;
@ApiModelProperty("新身份ID")
@Column(name = "new_position_id")
private Integer newPositionId;
@ApiModelProperty("旧身份ID")
@Column(name = "old_position_id")
private Integer oldPositionId;
@ApiModelProperty("1:入职;2:职位变更;3:身份变更 4:公司所属变更;5离职")
@Column(name = "job_remark")
private Integer jobRemark;
@ApiModelProperty("新身份名称")
@Column(name = "new_position_name")
private String newPositionName;
@ApiModelProperty("旧身份名称")
@Column(name = "old_position_name")
private String oldPositionName;
@ApiModelProperty("新职位名称")
@Column(name = "new_job_name")
private String newJobName;
@ApiModelProperty("旧职位名称")
@Column(name = "old_job_name")
private String oldJobName;
}
......@@ -75,5 +75,9 @@ public class AppUserPositionTemp implements Serializable {
@ApiModelProperty(value = "是否删除:0-正常;1-删除")
private Integer isDel;
@Column(name = "is_quit")
@ApiModelProperty(value = "员工职位状态:0-正常;1-离职")
private Integer isQuit;
}
......@@ -46,6 +46,8 @@ public class BaseUserMemberExport implements Serializable {
private Integer beforeDiscount;
@Column(name = "source")
private Integer source;
@Column(name = "user_id")
private Integer userId;
}
......@@ -5,7 +5,6 @@ import com.github.wxiaoqi.security.admin.bo.UserStaffBo;
import com.github.wxiaoqi.security.admin.dto.AppUserSellingWaterDTO;
import com.github.wxiaoqi.security.admin.dto.UserMemberDTO;
import com.github.wxiaoqi.security.admin.entity.AppUserLogin;
import com.github.wxiaoqi.security.admin.entity.AppUserPosition;
import com.github.wxiaoqi.security.admin.entity.BaseUserMember;
import com.github.wxiaoqi.security.admin.entity.BaseUserMemberLevel;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
......@@ -185,4 +184,10 @@ public interface UserFeign {
@GetMapping("/public/getUsersByUserIdList")
ObjectRestResponse<List<AppUserVo>> getByUserIdList(@RequestParam("userIds") List<Integer> userIds);
@GetMapping("/app/user/collect/exist")
boolean isCollectionByTypeAndTypeId(@RequestParam("userId") Integer userId,
@RequestParam(value = "type") int type,
@RequestParam("id") Integer typId);
}
......@@ -14,12 +14,14 @@ import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.tour.entity.TourGood;
import com.xxfc.platform.tour.feign.TourFeign;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example;
import java.util.List;
import java.util.Objects;
/**
* ${DESCRIPTION}
......@@ -105,17 +107,13 @@ public class AppUserCollectBiz extends BaseBiz<AppUserCollectMapper, AppUserColl
}
public boolean isCollectionByTypeAndTypeId(Integer userId,int type, Integer typeId) {
AppUserCollect appUserCollect = new AppUserCollect();
appUserCollect.setType(type);
appUserCollect.setTypeId(typeId);
appUserCollect.setUserId(userId);
appUserCollect.setIsDel(0);
List<AppUserCollect> collect = mapper.select(appUserCollect);
return CollectionUtils.isNotEmpty(collect);
}
}
......@@ -95,13 +95,13 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
AppUserDetail entity = new AppUserDetail();
Example example = new Example(AppUserDetail.class);
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("userid",userVo.getUserid());
criteria.andEqualTo("userid", userVo.getUserid());
try {
BeanUtils.copyProperties(entity, userVo);
if (entity != null) {
entity.setUpdHost(AppPermissionService.getIp());
entity.setUpdatetime(Instant.now().toEpochMilli() / 1000L);
mapper.updateByExampleSelective(entity,example);
mapper.updateByExampleSelective(entity, example);
}
} catch (Exception e) {
......@@ -134,7 +134,7 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
@CacheClear(pre = "user{1}")
public void updateUserPositionByUserId(Integer userId, Integer positionId) {
mapper.updateUserPositionByUserId(userId,positionId);
mapper.updateUserPositionByUserId(userId, positionId);
}
public AppUserInfoVo findUserInfoByCode(String code) {
......@@ -144,7 +144,7 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
appUserDetail.setCode(code);
AppUserDetail userDetail = mapper.selectOne(appUserDetail);
if (userDetail==null){
if (userDetail == null) {
return appUserInfoVo;
}
appUserInfoVo.setHeadimgurl(userDetail.getHeadimgurl());
......@@ -156,19 +156,19 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
return mapper.getUserIdByUsername(keywords);
}
public void updateByUserId(AccountBindDTO accountBindDTO,Integer userId) {
public void updateByUserId(AccountBindDTO accountBindDTO, Integer userId) {
AppUserDetail appUserDetail = new AppUserDetail();
if (accountBindDTO.getType().equals("wx")){
if (accountBindDTO.getType().equals("wx")) {
appUserDetail.setWxNickname(accountBindDTO.getNickName());
}
if(accountBindDTO.getType().equals("q")){
if (accountBindDTO.getType().equals("q")) {
appUserDetail.setQqNickname(accountBindDTO.getNickName());
}
Example example = new Example(AppUserDetail.class);
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("userid",userId);
mapper.updateByExampleSelective(appUserDetail,example);
criteria.andEqualTo("userid", userId);
mapper.updateByExampleSelective(appUserDetail, example);
}
public List<AppUserVo> getUserByUserIds(List<Integer> ids) {
......@@ -177,21 +177,21 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
public List<UserStaffBo> findAllStaffs() {
List<UserStaffBo> userStaffBos = mapper.selectAllStaffs();
return CollectionUtils.isEmpty(userStaffBos)? Collections.EMPTY_LIST:userStaffBos;
return CollectionUtils.isEmpty(userStaffBos) ? Collections.EMPTY_LIST : userStaffBos;
}
public List<AppUserVo> getUserByUserIdList(List<Integer> userIds) {
List<AppUserVo> appUserVos = mapper.getUserByUserIdList(userIds);
return CollectionUtils.isEmpty(appUserVos)?Collections.EMPTY_LIST:appUserVos;
return CollectionUtils.isEmpty(appUserVos) ? Collections.EMPTY_LIST : appUserVos;
}
public PageDataVO<UserStaffBo> findAllStaffsByCompanyIdAndPostionIdWithPage(StaffStatisticsFindDTO staffStatisticsFindDTO) {
return PageDataVO.pageInfo(staffStatisticsFindDTO.getPage(),staffStatisticsFindDTO.getLimit(),()->mapper.findAllStaffsByCompanyIdAndPostionId(staffStatisticsFindDTO));
return PageDataVO.pageInfo(staffStatisticsFindDTO.getPage(), staffStatisticsFindDTO.getLimit(), () -> mapper.findAllStaffsByCompanyIdAndPostionId(staffStatisticsFindDTO));
}
public List<UserStaffBo> findStaffsByIdsAndCompanyAndPostion(StaffStatisticsFindDTO staffStatisticsFindDTO) {
List<UserStaffBo> staffBos = mapper.findAllStaffsByCompanyIdAndPostionId(staffStatisticsFindDTO);
return CollectionUtils.isEmpty(staffBos)?Collections.EMPTY_LIST:staffBos;
return CollectionUtils.isEmpty(staffBos) ? Collections.EMPTY_LIST : staffBos;
}
public AppUserVo findByCode(String code) {
......@@ -199,7 +199,7 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
AppUserDetail appUserDetail = new AppUserDetail();
appUserDetail.setCode(code);
appUserDetail = mapper.selectOne(appUserDetail);
org.springframework.beans.BeanUtils.copyProperties(appUserDetail,appUserVo);
org.springframework.beans.BeanUtils.copyProperties(appUserDetail, appUserVo);
return appUserVo;
}
......@@ -207,4 +207,19 @@ public class AppUserDetailBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
return mapper.getUser(userId);
}
/**
* 判断员工是否是APP用户
*
* @return
*/
public AppUserDetail checkeIsAppUser(Integer userid) {
Example example = new Example(AppUserDetail.class);
example.createCriteria().andEqualTo("userid", userid);
List<AppUserDetail> appUserDetailList = mapper.selectByExample(example);
if (appUserDetailList != null && appUserDetailList.size() != 0) {
return appUserDetailList.get(0);
}
return null;
}
}
......@@ -66,6 +66,10 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
@Autowired
private AppUserSellingWaterBiz appUserSellingWaterBiz;
@Autowired
private AppUserPositionTempBiz appUserPositionTempBiz;
@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
@Override
public void insertSelective(AppUserLogin entity) {
......@@ -334,7 +338,7 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
public List<AppUserLogin> getUserByUsernameAndRealName(String username, String realName) {
return mapper.getUserByUsernameAndRealName(username,realName);
return mapper.getUserByUsernameAndRealName(username, realName);
}
......@@ -410,7 +414,7 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
public List<Integer> findAppuser(String phone, String leaderPhone, String name) {
List<Integer> memberIds = null;
//1.根据leader手机号查询userid
boolean isNoNullLeaderPhone = StringUtils.isNotEmpty(leaderPhone) && leaderPhone.trim().length()>0;
boolean isNoNullLeaderPhone = StringUtils.isNotEmpty(leaderPhone) && leaderPhone.trim().length() > 0;
if (isNoNullLeaderPhone) {
List<AppUserLogin> appUserLogins = mapper.selectbyPhones(Arrays.asList(leaderPhone));
Integer leaderId = null;
......@@ -420,18 +424,18 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
leaderId = appUserLogins.get(0).getId();
//2.根据leader userId查询下级 userid
if (Objects.nonNull(leaderId)) {
memberIds = appUserSellingWaterBiz.findMemberIdByLeaderIdAndOrdreType(leaderId,3);
if(CollectionUtils.isEmpty(memberIds)){
memberIds = appUserSellingWaterBiz.findMemberIdByLeaderIdAndOrdreType(leaderId, 3);
if (CollectionUtils.isEmpty(memberIds)) {
return Collections.EMPTY_LIST;
}
}
}
List<Integer> userIds = mapper.findAppUser(phone, name, memberIds);
return userIds==null?Collections.EMPTY_LIST:userIds;
return userIds == null ? Collections.EMPTY_LIST : userIds;
}
public List<UserBo> findUserDetailInfo(List<UserBo> userBos) {
Map<String, Integer> userIdAndFacilitateIdMap = userBos.stream().filter(x->Objects.nonNull(x.getFacilitateId())).collect(Collectors.toMap(UserBo::getOrderNo, UserBo::getFacilitateId));
Map<String, Integer> userIdAndFacilitateIdMap = userBos.stream().filter(x -> Objects.nonNull(x.getFacilitateId())).collect(Collectors.toMap(UserBo::getOrderNo, UserBo::getFacilitateId));
List<Integer> userIdList = userBos.stream().map(UserBo::getUserId).distinct().collect(Collectors.toList());
//查询上级人
......@@ -439,13 +443,13 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
Map<Integer, Integer> memberIdAndParentMap = appUserRelationList.stream().collect(Collectors.toMap(AppUserRelation::getUserId, AppUserRelation::getParentId));
List<Integer> uids = new ArrayList<>();
uids.addAll(userIdAndFacilitateIdMap==null?Collections.EMPTY_LIST:userIdList);
uids.addAll(userIdAndFacilitateIdMap==null?Collections.EMPTY_LIST:userIdAndFacilitateIdMap.values());
uids.addAll(memberIdAndParentMap==null?Collections.EMPTY_LIST:memberIdAndParentMap.values());
uids.addAll(userIdAndFacilitateIdMap == null ? Collections.EMPTY_LIST : userIdList);
uids.addAll(userIdAndFacilitateIdMap == null ? Collections.EMPTY_LIST : userIdAndFacilitateIdMap.values());
uids.addAll(memberIdAndParentMap == null ? Collections.EMPTY_LIST : memberIdAndParentMap.values());
List<UserBo> userBoList = mapper.selectByUserIds(uids);
Map<Integer, UserBo> userMap = userBoList==null?Collections.EMPTY_MAP:userBoList.stream().collect(Collectors.toMap(UserBo::getUserId, Function.identity()));
if (userMap.isEmpty()){
Map<Integer, UserBo> userMap = userBoList == null ? Collections.EMPTY_MAP : userBoList.stream().collect(Collectors.toMap(UserBo::getUserId, Function.identity()));
if (userMap.isEmpty()) {
return Collections.EMPTY_LIST;
}
......@@ -468,4 +472,21 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
}
return userBos;
}
@CacheClear(pre = "user{1}")
public void updateUserPosition(Integer userId, Integer positionId, Integer operatorId) {
AppUserLogin appUserLogin = selectById(userId);
if (appUserLogin != null) {
String phone = appUserLogin.getUsername();
appUserPositionTempBiz.findUserPositionTemp(userId, positionId, operatorId);
}
appUserDetailBiz.updateUserPositionByUserId(userId, positionId);
}
@CacheClear(pre = "user{1}")
public void updateUserPosition(Integer userId, Integer positionId) {
appUserDetailBiz.updateUserPositionByUserId(userId, positionId);
}
}
......@@ -7,7 +7,6 @@ import com.github.wxiaoqi.security.admin.entity.AppUserDetail;
import com.github.wxiaoqi.security.admin.entity.AppUserLogin;
import com.github.wxiaoqi.security.admin.mapper.AppUserDetailMapper;
import com.github.wxiaoqi.security.admin.mapper.AppUserLoginMapper;
import com.github.wxiaoqi.security.admin.mapper.BaseUserMemberMapper;
import com.github.wxiaoqi.security.admin.vo.AppUserManageVo;
import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
......@@ -26,7 +25,7 @@ import tk.mybatis.mapper.entity.Example;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.Objects;
import java.util.stream.Collectors;
......@@ -55,6 +54,10 @@ public class AppUserManageBiz extends BaseBiz<AppUserDetailMapper, AppUserDetail
* @return
*/
public PageInfo<AppUserManageVo> findAllByQuery(AppUserManageDTO appUserManageDTO) {
if (Objects.nonNull(appUserManageDTO.getRegistrationTimeEnd())){
long registerEndTime = appUserManageDTO.getRegistrationTimeEnd()+(24*60*60);
appUserManageDTO.setRegistrationTimeEnd(registerEndTime);
}
PageHelper.startPage(appUserManageDTO.getPage(), appUserManageDTO.getLimit());
List<AppUserManageVo> appUserManageVos = mapper.selectAppUser(appUserManageDTO);
PageInfo<AppUserManageVo> pageInfo = PageInfo.of(appUserManageVos);
......
package com.github.wxiaoqi.security.admin.biz;
import com.alibaba.druid.sql.visitor.functions.If;
import com.github.wxiaoqi.security.admin.dto.AppUserPositionChangeRecordDTO;
import com.github.wxiaoqi.security.admin.dto.AppUserPositionTempDTO;
import com.github.wxiaoqi.security.admin.entity.AppUserPosition;
import com.github.wxiaoqi.security.admin.entity.AppUserPositionChangeRecord;
import com.github.wxiaoqi.security.admin.entity.AppUserPositionTemp;
import com.github.wxiaoqi.security.admin.mapper.AppUserPositionChangeRecordMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import lombok.NonNull;
import org.apache.commons.lang3.StringUtils;
import org.jsoup.select.Evaluator;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Transactional
@Service("appUserPositionChangeRecordBiz")
public class AppUserPositionChangeRecordBiz extends BaseBiz<AppUserPositionChangeRecordMapper, AppUserPositionChangeRecord> {
@Autowired
private AppUserPositionBiz appUserPositionBiz;
@Autowired
private AppUserJobLevelBiz appUserJobLevelBiz;
public static final int USER_ADD_COMPANY = 1;
public static final int JOB_CHANGE = 2;
public static final int POSITION_CHANGE = 3;
public static final int COMPANY_CHANGE = 4;
public static final int USER_LEAVE_COMPANT = 5;
public static final int USER_AND_ADD_COMPANY = 6;
/**
* 变更记录表插入
*
* @param userPositionTemp
*/
public void addPositionChangeRecord(AppUserPositionTemp userPositionTemp, AppUserPositionTemp oldData, Integer operatorId, Timestamp relTime) {
AppUserPositionChangeRecord appUserPositionChangeRecord = new AppUserPositionChangeRecord();
if (!(userPositionTemp.getIsQuit().equals(oldData.getIsQuit()))) {
appUserPositionChangeRecord.setJobRemark(USER_LEAVE_COMPANT);
}
//状态1:职位变动
if (!(userPositionTemp.getJobId().equals(oldData.getJobId()))) {
appUserPositionChangeRecord.setOldJobId(oldData.getJobId());
appUserPositionChangeRecord.setNewJobId(userPositionTemp.getJobId());
appUserPositionChangeRecord.setJobRemark(JOB_CHANGE);
findUserJobName(appUserPositionChangeRecord);
}
//状态2:身份变动
if (!(userPositionTemp.getPositionId().equals(oldData.getPositionId()))) {
appUserPositionChangeRecord.setOldPositionId(oldData.getPositionId());
appUserPositionChangeRecord.setNewPositionId(userPositionTemp.getPositionId());
appUserPositionChangeRecord.setJobRemark(POSITION_CHANGE);
findUserPositionName(appUserPositionChangeRecord);
}
//状态3:公司变动调整
if (!(userPositionTemp.getCompanyId().equals(oldData.getCompanyId()))) {
appUserPositionChangeRecord.setOldCompanyId(oldData.getCompanyId());
appUserPositionChangeRecord.setOldCompanyName(oldData.getCompanyName());
appUserPositionChangeRecord.setNewCompanyId(userPositionTemp.getCompanyId());
appUserPositionChangeRecord.setNewCompanyName(userPositionTemp.getCompanyName());
appUserPositionChangeRecord.setJobRemark(COMPANY_CHANGE);
}
appUserPositionChangeRecord.setPhone(userPositionTemp.getPhone());
appUserPositionChangeRecord.setRelTime(relTime);
appUserPositionChangeRecord.setUserName(userPositionTemp.getName());
appUserPositionChangeRecord.setCrtTime(new Timestamp(System.currentTimeMillis()));
appUserPositionChangeRecord.setOperatorId(operatorId);
mapper.insert(appUserPositionChangeRecord);
}
/**
* 入职时插入记录表
*
* @param userPositionTemp
* @param updUserId
*/
public void addJoinJobRecord(AppUserPositionTempDTO userPositionTemp, Integer updUserId) {
AppUserPositionChangeRecord appUserPositionChangeRecord = new AppUserPositionChangeRecord();
appUserPositionChangeRecord.setPhone(userPositionTemp.getPhone());
appUserPositionChangeRecord.setUserName(userPositionTemp.getName());
appUserPositionChangeRecord.setRelTime(userPositionTemp.getRelTime());
appUserPositionChangeRecord.setCrtTime(new Timestamp(System.currentTimeMillis()));
appUserPositionChangeRecord.setJobRemark(USER_ADD_COMPANY);
appUserPositionChangeRecord.setOperatorId(updUserId);
mapper.insert(appUserPositionChangeRecord);
}
/**
* 员工复职
*
* @param userPositionTemp
* @param updUserId
*/
public void andAddJoinJobRecord(AppUserPositionTempDTO userPositionTemp, Integer updUserId) {
AppUserPositionChangeRecord appUserPositionChangeRecord = new AppUserPositionChangeRecord();
appUserPositionChangeRecord.setPhone(userPositionTemp.getPhone());
if (userPositionTemp.getPositionId() != null) {
appUserPositionChangeRecord.setNewPositionId(userPositionTemp.getPositionId());
}
appUserPositionChangeRecord.setUserName(userPositionTemp.getName());
appUserPositionChangeRecord.setRelTime(userPositionTemp.getRelTime());
appUserPositionChangeRecord.setCrtTime(new Timestamp(System.currentTimeMillis()));
appUserPositionChangeRecord.setJobRemark(USER_AND_ADD_COMPANY);
appUserPositionChangeRecord.setOperatorId(updUserId);
mapper.insert(appUserPositionChangeRecord);
}
/**
* APP用户修改身份
*
* @param userPositionTemp
* @param updUserId
*/
public void andAddJoinJobRecord(AppUserPositionTemp userPositionTemp, Integer updUserId) {
AppUserPositionChangeRecord appUserPositionChangeRecord = new AppUserPositionChangeRecord();
appUserPositionChangeRecord.setPhone(userPositionTemp.getPhone());
if (userPositionTemp.getPositionId() != null) {
appUserPositionChangeRecord.setNewPositionId(userPositionTemp.getPositionId());
}
appUserPositionChangeRecord.setUserName(userPositionTemp.getName());
appUserPositionChangeRecord.setCrtTime(new Timestamp(System.currentTimeMillis()));
appUserPositionChangeRecord.setJobRemark(USER_AND_ADD_COMPANY);
appUserPositionChangeRecord.setOperatorId(updUserId);
mapper.insert(appUserPositionChangeRecord);
}
/**
* 查询新旧职位名称
* zyh
*
* @param appUserPositionChangeRecord
* @return
*/
public AppUserPositionChangeRecord findUserJobName(AppUserPositionChangeRecord appUserPositionChangeRecord) {
appUserPositionChangeRecord.setNewJobName(appUserJobLevelBiz.selectById(appUserPositionChangeRecord.getNewJobId()).getName());
appUserPositionChangeRecord.setOldJobName(appUserJobLevelBiz.selectById(appUserPositionChangeRecord.getOldJobId()).getName());
return appUserPositionChangeRecord;
}
/**
* 查询新旧身份名称
* zyh
*
* @param appUserPositionChangeRecord
* @return
*/
public AppUserPositionChangeRecord findUserPositionName(AppUserPositionChangeRecord appUserPositionChangeRecord) {
appUserPositionChangeRecord.setOldPositionName(appUserPositionBiz.selectById(appUserPositionChangeRecord.getOldPositionId()).getName());
appUserPositionChangeRecord.setNewPositionName(appUserPositionBiz.selectById(appUserPositionChangeRecord.getNewPositionId()).getName());
return appUserPositionChangeRecord;
}
/**
* 查询员工信息变更记录表
*/
public List<AppUserPositionChangeRecordDTO> findPositionChangeRecord(AppUserPositionTemp userPositionTemp) {
Example example = new Example(AppUserPositionChangeRecord.class);
example.createCriteria().andEqualTo("phone", userPositionTemp.getPhone());
List<AppUserPositionChangeRecord> list = selectByExample(example);
List<AppUserPositionChangeRecordDTO> listAppUserPositionChangeRecordDTO = new ArrayList<>();
list.stream().forEach(x -> {
AppUserPositionChangeRecordDTO appUserPositionChangeRecordDTO = new AppUserPositionChangeRecordDTO();
BeanUtils.copyProperties(x, appUserPositionChangeRecordDTO);
listAppUserPositionChangeRecordDTO.add(appUserPositionChangeRecordDTO);
});
return listAppUserPositionChangeRecordDTO;
}
}
......@@ -79,7 +79,7 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper, BaseUserMem
@Cache(key = "user:member{1}")
public UserMemberVo getMemberInfoByUserId(Integer userId) {
return mapper.getInfoByUserId(userId);
}
}
//更新会员信息
@Override
......@@ -287,6 +287,7 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper, BaseUserMem
baseUserMember.setRentFreeDays(days);
getMyBiz().updateSelectiveById(baseUserMember);
}
AppUserVo userVo = detailBiz.getUserInfoById(userId);
if (userVo != null && (userVo.getIsMember() == null || userVo.getIsMember() == 0)) {
AppUserVo userVo1 = new AppUserVo();
......@@ -309,21 +310,28 @@ public class BaseUserMemberBiz extends BaseBiz<BaseUserMemberMapper, BaseUserMem
mapper.deleteByExample(example);
}
private void setModifyData(UserMemberVo beforeMember, BaseUserMember aftereMember) throws Exception {
log.info("保存修改会员记录={}",aftereMember);
IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request));
log.info("token信息={}",infoFromToken);
if (beforeMember==null) {
beforeMember = new UserMemberVo();
}
UserMemberVo finalBeforeMember = beforeMember;
executorService.submit(()->{
try {
AppUserVo qppUser = detailBiz.getUserInfoById(beforeMember.getUserId());
AppUserVo qppUser = detailBiz.getUserInfoById(aftereMember.getUserId());
BaseUserMemberExport baseUserMemberExport = BaseUserMemberExport
.builder()
.username(qppUser.getUsername())
.beforeMemberLevel(beforeMember.getMemberLevel())
.beforeMemberLevel(finalBeforeMember.getMemberLevel())
.memberLevel(aftereMember.getMemberLevel())
.totalNumber(aftereMember.getTotalNumber() - beforeMember.getTotalNumber())
.rentFreeDays(aftereMember.getRentFreeDays() - beforeMember.getRentFreeDays())
.beforeDiscount(beforeMember.getDiscount())
.totalNumber(aftereMember.getTotalNumber() - (finalBeforeMember.getTotalNumber()==null?0:finalBeforeMember.getTotalNumber()))
.rentFreeDays(aftereMember.getRentFreeDays() - (finalBeforeMember.getRentFreeDays()==null?0:finalBeforeMember.getRentFreeDays()))
.beforeDiscount(finalBeforeMember.getDiscount())
.discount(aftereMember.getDiscount())
.status(1)
.userId(aftereMember.getUserId())
.crtTime(System.currentTimeMillis())
.crtId(Integer.valueOf(infoFromToken.getId()))
.crtName(infoFromToken.getUniqueName())
......
package com.github.wxiaoqi.security.admin.mapper;
import com.github.wxiaoqi.security.admin.entity.AppUserPositionChangeRecord;
import tk.mybatis.mapper.common.Mapper;
public interface AppUserPositionChangeRecordMapper extends Mapper<AppUserPositionChangeRecord> {
}
......@@ -19,6 +19,7 @@ import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.github.wxiaoqi.security.common.util.result.JsonResultUtil;
import com.xxfc.platform.tour.feign.TourFeign;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
......@@ -108,4 +109,11 @@ public class AppUserCollectController extends CommonBaseController {
return collectBiz.upUserCollect(collectDTO);
}
@GetMapping("/collect/exist")
@ApiOperation("判断是否收藏")
public boolean isCollectionByTypeAndTypeId(@RequestParam("userId") Integer userId,
@RequestParam(value = "type") int type,
@RequestParam("id") Integer typId){
return collectBiz.isCollectionByTypeAndTypeId(userId,type,typId);
}
}
......@@ -12,19 +12,24 @@ import com.github.wxiaoqi.security.admin.entity.User;
import com.github.wxiaoqi.security.admin.vo.AppUserManageVo;
import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil;
import com.github.wxiaoqi.security.auth.common.util.jwt.IJWTInfo;
import com.github.wxiaoqi.security.common.exception.BaseException;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.vehicle.feign.VehicleFeign;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.Set;
/**
* app用户管理类
* @author Administrator
*/
@Slf4j
@RestController
@RequestMapping("appUsersManage")
public class AppUsersManageController extends BaseController<AppUserManageBiz,AppUserManage> {
......@@ -44,6 +49,10 @@ public class AppUsersManageController extends BaseController<AppUserManageBiz,Ap
@Autowired
private VehicleFeign vehicleFeign;
@Autowired
private UserAuthUtil userAuthUtil;
private Integer ALL_PERMISSIONS=1;
/**
* 查询所有
......@@ -137,9 +146,17 @@ public class AppUsersManageController extends BaseController<AppUserManageBiz,Ap
}
@PutMapping("/user_position")
public ObjectRestResponse<Void> setUserPositionById(@RequestParam("id") Integer id,@RequestParam("positionId") Integer positionId){
appUserDetailBiz.updateUserPositionByUserId(id,positionId);
public ObjectRestResponse<Void> setUserPositionById(@RequestParam("id") Integer id, @RequestParam("positionId") Integer positionId, HttpServletRequest request) {
try {
IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request));
Integer operatorId = Integer.valueOf(infoFromToken.getId());
appUserLoginBiz.updateUserPosition(id, positionId,operatorId);
return ObjectRestResponse.succ();
} catch (Exception e) {
log.error("修改失败【{}】", e);
throw new BaseException("修改失败");
}
}
}
......@@ -6,15 +6,22 @@ import com.github.wxiaoqi.security.admin.biz.AppUserPositionTempBiz;
import com.github.wxiaoqi.security.admin.dto.AppUserPositionTempDTO;
import com.github.wxiaoqi.security.admin.dto.AppUserPositionTempFindDTO;
import com.github.wxiaoqi.security.admin.dto.UserPostionDTO;
import com.github.wxiaoqi.security.admin.entity.AppUserPositionTemp;
import com.github.wxiaoqi.security.admin.vo.AppUserPositionTempVo;
import com.github.wxiaoqi.security.admin.vo.WalletPostionVo;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil;
import com.github.wxiaoqi.security.auth.common.util.jwt.IJWTInfo;
import com.github.wxiaoqi.security.common.exception.BaseException;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.excel.ExcelImport;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
......@@ -24,6 +31,7 @@ import java.util.Map;
* @description
* @data 2019/7/17 16:13
*/
@Slf4j
@RestController
@RequestMapping("/postion/admin")
public class AppUserPositionController {
......@@ -37,6 +45,13 @@ public class AppUserPositionController {
@Autowired
private AppUserPositionTempBiz appUserPositionTempBiz;
@Autowired
private UserAuthUtil userAuthUtil;
@Autowired
private UserAuthConfig userAuthConfig;
@GetMapping("/jobs")
public ObjectRestResponse findAllJobs() {
return ObjectRestResponse.succ(jobLevelBiz.selectListAll());
......@@ -57,21 +72,78 @@ public class AppUserPositionController {
/**
* 新增或编辑身份信息
*
* @return
*/
@PostMapping("/addUserPostion")
public ObjectRestResponse<Void> addUserPostion(@RequestBody AppUserPositionTempDTO appUserPositionTempDTO){
return appUserPositionTempBiz.add(appUserPositionTempDTO);
public ObjectRestResponse<Void> addUserPostion(@RequestBody AppUserPositionTempDTO appUserPositionTempDTO, HttpServletRequest request) {
try {
IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request));
Integer s = Integer.valueOf(infoFromToken.getId());
return appUserPositionTempBiz.add(appUserPositionTempDTO, Integer.valueOf(infoFromToken.getId()));
} catch (Exception e) {
log.error("新增失败【{}】", e);
throw new BaseException("新增失败");
}
}
/**
* 新增或编辑身份信息
*
* @return
*/
@PostMapping("/updUserPostion")
public ObjectRestResponse<Void> updUserPostion(@RequestBody AppUserPositionTempDTO appUserPositionTempDTO){
public ObjectRestResponse<Void> updUserPostion(@RequestBody AppUserPositionTempDTO appUserPositionTempDTO, HttpServletRequest request) {
try {
IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request));
return appUserPositionTempBiz.add(appUserPositionTempDTO, Integer.valueOf(infoFromToken.getId()));
} catch (Exception e) {
log.error("修改失败【{}】", e);
throw new BaseException("修改失败");
}
}
return appUserPositionTempBiz.add(appUserPositionTempDTO);
/**
* 员工信息更改,并插入变更记录表
* zuoyh
*
* @return
*/
@PostMapping("/updUserChange")
public ObjectRestResponse<Void> updUserChange(@RequestBody AppUserPositionTempDTO appUserPositionTempDTO, HttpServletRequest request) {
try {
IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request));
Integer operatorId = Integer.valueOf(infoFromToken.getId());
return ObjectRestResponse.succ(appUserPositionTempBiz.addUserPositionChangeRecord(appUserPositionTempDTO.getChangeStatus(), appUserPositionTempDTO, operatorId)) ;
} catch (Exception e) {
log.error("修改失败【{}】", e);
throw new BaseException("修改失败");
}
}
/**
* 查询员工信息变更记录表
*/
@GetMapping("/findPositionChangeRecord")
public ObjectRestResponse findPositionChangeRecord(AppUserPositionTemp appUserPositionTemp) {
return ObjectRestResponse.succ(appUserPositionTempBiz.findPositionChangeRecord(appUserPositionTemp));
}
/**
* 员工复职位
*/
@PostMapping("/updAddPositionChangeRecord")
public ObjectRestResponse updAddPositionChangeRecord(@RequestBody AppUserPositionTempDTO appUserPositionTempDTO, HttpServletRequest request) {
try {
IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request));
Integer operatorId = Integer.valueOf(infoFromToken.getId());
appUserPositionTempBiz.andAddUserPositionChangeRecord(appUserPositionTempDTO, operatorId);
return ObjectRestResponse.succ();
} catch (Exception e) {
log.error("修改失败【{}】", e);
throw new BaseException("修改失败");
}
}
/**
......
package com.xxfc.platform.app.entity;
import lombok.Data;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import java.util.Date;
/**
* 下载记录
* @author Administrator
*/
@Data
public class AppDownloadRecord {
@Id
@GeneratedValue(generator ="JDBC")
private Integer id;
private String source;
private Date creTime;
private String terminal;
}
package com.xxfc.platform.app.biz;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.xxfc.platform.app.entity.AppDownloadRecord;
import com.xxfc.platform.app.mapper.AppDownloadRecordMapper;
import org.springframework.stereotype.Service;
/**
* @author hf
* @Date: 2019/12/19 15:47
* @Description:
*/
@Service
public class AppDownloadRecordBiz extends BaseBiz<AppDownloadRecordMapper, AppDownloadRecord> {
}
package com.xxfc.platform.app.mapper;
import com.xxfc.platform.app.entity.AppDownloadRecord;
import tk.mybatis.mapper.common.Mapper;
/**
* @Auther: Administrator
* @Date: 2019/12/19 15:49
* @Description:
*/
public interface AppDownloadRecordMapper extends Mapper<AppDownloadRecord> {
}
package com.xxfc.platform.app.rest.admin;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.app.biz.AppDownloadRecordBiz;
import com.xxfc.platform.app.entity.AppDownloadRecord;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import java.util.Date;
/**
* @Auther: Administrator
* @Date: 2019/12/19 15:46
* @Description:
*/
@RestController
@RequestMapping("/app/unauth/adr")
public class AppDownloadRecordController extends BaseController<AppDownloadRecordBiz, AppDownloadRecord> {
@Override
@ApiOperation("添加")
@PostMapping(value = "add")
public ObjectRestResponse<AppDownloadRecord> add(@RequestBody AppDownloadRecord appDownloadRecord ){
appDownloadRecord.setCreTime(new Date());
baseBiz.insertSelective(appDownloadRecord);
return ObjectRestResponse.succ();
}
}
<?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.AppDownloadRecordMapper">
</mapper>
\ No newline at end of file
......@@ -19,4 +19,6 @@ public class CampsiteShopFindDTO extends PageParam {
private Integer type;
private String name;
private String keyWord;
}
......@@ -100,4 +100,9 @@ public class CampsiteShopDetailVo {
@ApiModelProperty(value = "海报背景")
private String posterBackground;
/**
* 是否已经被收藏
*/
private Boolean hasCollection;
}
......@@ -19,6 +19,7 @@ import tk.mybatis.spring.annotation.MapperScan;
*/
@SpringBootApplication(scanBasePackages = {
"com.xxfc.platform",
"com.github.wxiaoqi.security.admin.support.aop",
"com.github.wxiaoqi.security.common.handler",
"com.github.wxiaoqi.security.common.log"
})
......
......@@ -2,6 +2,7 @@ package com.xxfc.platform.campsite.biz;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.util.RandomUtil;
import com.github.wxiaoqi.security.common.vo.GoodDataVO;
......@@ -22,6 +23,7 @@ import com.xxfc.platform.campsite.mapper.CampsiteShopMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestParam;
import javax.annotation.Resource;
import java.time.Instant;
......@@ -41,6 +43,8 @@ import java.util.stream.Collectors;
@Slf4j
public class CampsiteShopBiz extends BaseBiz<CampsiteShopMapper, CampsiteShop> {
private final int CAMPSITE_COLLECTION_TYPE=3;
@Autowired
private CampsiteShopTagBiz campsiteShopTagBiz;
......@@ -56,6 +60,9 @@ public class CampsiteShopBiz extends BaseBiz<CampsiteShopMapper, CampsiteShop> {
@Resource(name = "customRedisTemplate")
ValueOperations<String, String> campsiteValueOperations;
@Autowired
private UserFeign userFeign ;
/**
* 营地缓存前缀
*/
......@@ -81,7 +88,7 @@ public class CampsiteShopBiz extends BaseBiz<CampsiteShopMapper, CampsiteShop> {
public PageDataVO<CampsiteShopPageVo> findCampsiteShopPageByType(CampsiteShopFindDTO campsiteShopFindDTO) {
String campsite_cache_key = String.format("%s%s%s%s%s", campsiteShopFindDTO.getType() == null ? "" : campsiteShopFindDTO.getType() + ":",
/* String campsite_cache_key = String.format("%s%s%s%s%s", campsiteShopFindDTO.getType() == null ? "" : campsiteShopFindDTO.getType() + ":",
campsiteShopFindDTO.getAddrProvince() == null ? "" : campsiteShopFindDTO.getAddrProvince() + ":",
campsiteShopFindDTO.getAddrCity()==null?"":campsiteShopFindDTO.getAddrCity()+":",
campsiteShopFindDTO.getPage()+":",
......@@ -90,9 +97,9 @@ public class CampsiteShopBiz extends BaseBiz<CampsiteShopMapper, CampsiteShop> {
if (result != null) {
return JSONObject.parseObject(result, new TypeReference<PageDataVO<CampsiteShopPageVo>>() {
});
}
}*/
PageDataVO<CampsiteShopPageVo> campsiteShopPageDataVO = findCampsiteShopPageByTypeAndName(campsiteShopFindDTO);
campHashOperations.put(CAMPSITE_LIST_CACHE_PREKEY,campsite_cache_key,JSONObject.toJSONString(campsiteShopPageDataVO));
/* campHashOperations.put(CAMPSITE_LIST_CACHE_PREKEY,campsite_cache_key,JSONObject.toJSONString(campsiteShopPageDataVO));*/
return campsiteShopPageDataVO;
}
......@@ -100,8 +107,7 @@ public class CampsiteShopBiz extends BaseBiz<CampsiteShopMapper, CampsiteShop> {
public PageDataVO<CampsiteShopPageVo> findCampsiteShopPageByTypeAndName(CampsiteShopFindDTO campsiteShopFindDTO){
PageDataVO<CampsiteShopPageVo> campsiteShopPageDataVO = new PageDataVO<>();
PageDataVO<CampsiteShopPageDTO> pageDataVO = PageDataVO.pageInfo(campsiteShopFindDTO.getPage(), campsiteShopFindDTO.getLimit(),
() -> mapper.findAllCampsiteShopsByTypeOrCodeOrName(campsiteShopFindDTO.getType(),campsiteShopFindDTO.getAddrProvince(),
campsiteShopFindDTO.getAddrCity(),campsiteShopFindDTO.getName()));
() -> mapper.findAllCampsiteShopsByTypeOrCodeOrName(campsiteShopFindDTO));
List<CampsiteShopPageDTO> campsiteShopPageDTOS = pageDataVO.getData();
if (CollectionUtils.isEmpty(campsiteShopPageDTOS)) {
campsiteShopPageDataVO.setPageNum(campsiteShopFindDTO.getPage());
......@@ -131,18 +137,19 @@ public class CampsiteShopBiz extends BaseBiz<CampsiteShopMapper, CampsiteShop> {
}
/**
* @param id
* @param longitude 经度
* @param latitude 纬度
* @return
*/
public CampsiteShopDetailVo findCampsiteShopDetailById(Integer id, Double longitude, Double latitude) {
public CampsiteShopDetailVo findCampsiteShopDetailById(Integer userId,Integer id, Double longitude, Double latitude) {
/*
String result = campsiteValueOperations.get(String.format("%s%d", CAMSITE_DETAIL_CACHE_PREKEY, id));
if (Objects.nonNull(result)) {
return JSONObject.parseObject(result, new TypeReference<CampsiteShopDetailVo>() {
});
}
*/
CampsiteShopDetailVo campsiteShopDetailVo = new CampsiteShopDetailVo();
CampsiteShopDetailDTO campsiteShopDetailDTO = mapper.findCampsiteShopDetailById(id);
......@@ -181,7 +188,17 @@ public class CampsiteShopBiz extends BaseBiz<CampsiteShopMapper, CampsiteShop> {
campsiteShopDetailVo.setDistance(String.format("%.1f", distance));
}
}
campsiteValueOperations.set(String.format("%s%d", CAMSITE_DETAIL_CACHE_PREKEY, id), JSONObject.toJSONString(campsiteShopDetailVo));
if (Objects.nonNull(userId)){
boolean isCollection = userFeign.isCollectionByTypeAndTypeId(userId,CAMPSITE_COLLECTION_TYPE,id);
campsiteShopDetailVo.setHasCollection(isCollection);
}else {
campsiteShopDetailVo.setHasCollection(false);
}
/* campsiteValueOperations.set(String.format("%s%d", CAMSITE_DETAIL_CACHE_PREKEY, id), JSONObject.toJSONString(campsiteShopDetailVo));*/
return campsiteShopDetailVo;
}
......@@ -258,7 +275,7 @@ public class CampsiteShopBiz extends BaseBiz<CampsiteShopMapper, CampsiteShop> {
//保存或更新 * 营地与营地类型信息
List<Integer> campsiteTagDTOS = campsiteShopAdminDTO.getCampsiteTagDTOS();
campsiteShopTagBiz.saveBatch(campsiteTagDTOS, campsiteShop.getId());
redisTemplate.delete(CAMPSITE_LIST_CACHE_PREKEY);
// redisTemplate.delete(CAMPSITE_LIST_CACHE_PREKEY);
return effectRows;
}
......@@ -294,8 +311,8 @@ public class CampsiteShopBiz extends BaseBiz<CampsiteShopMapper, CampsiteShop> {
}
campsiteShopAdminVO.setCarouse(campsiteShopAdminVO.getCarouse() == null ? new ArrayList<CampsiteShopCarouselVo>() : campsiteShopAdminVO.getCarouse());
campsiteShopAdminVO.setCampsiteTagListVos(campsiteShopAdminVO.getCampsiteTagListVos() == null ? new ArrayList<CampsiteTagListVo>() : campsiteShopAdminVO.getCampsiteTagListVos());
redisTemplate.delete(String.format("%s%d", CAMSITE_DETAIL_CACHE_PREKEY, id));
redisTemplate.delete(CAMPSITE_LIST_CACHE_PREKEY);
// redisTemplate.delete(String.format("%s%d", CAMSITE_DETAIL_CACHE_PREKEY, id));
// redisTemplate.delete(CAMPSITE_LIST_CACHE_PREKEY);
return campsiteShopAdminVO;
}
......@@ -307,20 +324,20 @@ public class CampsiteShopBiz extends BaseBiz<CampsiteShopMapper, CampsiteShop> {
*/
public int updateCampsiteSatus(int id) {
int effectRows = mapper.updateCampsiteStatusById(id, 1);
if (effectRows > 0) {
/* if (effectRows > 0) {
redisTemplate.delete(String.format("%s%d", CAMSITE_DETAIL_CACHE_PREKEY, id));
redisTemplate.delete(CAMPSITE_LIST_CACHE_PREKEY);
}
}*/
return effectRows;
}
public int upperOrLowerShelves(Integer id, Integer status) {
int effectRows = mapper.updateCampsiteSaleStatusById(id, status);
if (effectRows > 0) {
/* if (effectRows > 0) {
redisTemplate.delete(String.format("%s%d", CAMSITE_DETAIL_CACHE_PREKEY, id));
redisTemplate.delete(CAMPSITE_LIST_CACHE_PREKEY);
}
}*/
return effectRows;
}
......
package com.xxfc.platform.campsite.mapper;
import com.github.wxiaoqi.security.common.vo.GoodDataVO;
import com.xxfc.platform.campsite.dto.CampsiteShopAdminFindDTO;
import com.xxfc.platform.campsite.dto.CampsiteShopAdminPageDTO;
import com.xxfc.platform.campsite.dto.CampsiteShopDetailDTO;
import com.xxfc.platform.campsite.dto.CampsiteShopPageDTO;
import com.xxfc.platform.campsite.dto.*;
import com.xxfc.platform.campsite.entity.CampsiteShop;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;
......@@ -24,12 +21,8 @@ public interface CampsiteShopMapper extends Mapper<CampsiteShop> {
/**
* 根据店铺类型查找店铺列表
*
* @param typeId
*/
List<CampsiteShopPageDTO> findAllCampsiteShopsByTypeOrCodeOrName(@Param("typeId") Integer typeId,
@Param("proviceCode") Integer proviceCode,
@Param("cityCode") Integer cityCode,
@Param("name") String name);
List<CampsiteShopPageDTO> findAllCampsiteShopsByTypeOrCodeOrName(CampsiteShopFindDTO campsiteShopFindDTO);
/**
* 首页营地列表
......
package com.xxfc.platform.campsite.rest;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.github.wxiaoqi.security.common.vo.GoodDataVO;
......@@ -31,11 +32,13 @@ public class CampsiteShopController extends BaseController<CampsiteShopBiz, Camp
@GetMapping("/app/unauth/shops")
public ObjectRestResponse<PageDataVO<CampsiteShopPageVo>> findCampsiteShopPageByTypeAndName(@RequestParam(value = "type", required = false) Integer type,
@RequestParam(value = "pageNo", required = false, defaultValue = "1") Integer pageNo,
@RequestParam(value = "pageSize", required = false, defaultValue = "6") Integer pageSize) {
@RequestParam(value = "pageSize", required = false, defaultValue = "6") Integer pageSize,
@RequestParam(value = "keyWord",required = false) String keyWord) {
CampsiteShopFindDTO campsiteShopFindDTO = new CampsiteShopFindDTO();
campsiteShopFindDTO.setType(type);
campsiteShopFindDTO.setPage(pageNo);
campsiteShopFindDTO.setLimit(pageSize);
campsiteShopFindDTO.setKeyWord(keyWord);
PageDataVO<CampsiteShopPageVo> pageDataVO = getBaseBiz().findCampsiteShopPageByType(campsiteShopFindDTO);
return ObjectRestResponse.succ(pageDataVO);
}
......@@ -55,8 +58,9 @@ public class CampsiteShopController extends BaseController<CampsiteShopBiz, Camp
@GetMapping("/app/unauth/shop")
public ObjectRestResponse<CampsiteShopDetailVo> findCampsiteShopDetailById(@RequestParam(value = "id") Integer id,
@RequestParam(value = "longitude", required = false) Double longitude,
@RequestParam(value = "latitude", required = false) Double latitude) {
CampsiteShopDetailVo campsiteShopDetailVo = getBaseBiz().findCampsiteShopDetailById(id, longitude, latitude);
@RequestParam(value = "latitude", required = false) Double latitude,
AppUserDTO appUserDTO) {
CampsiteShopDetailVo campsiteShopDetailVo = getBaseBiz().findCampsiteShopDetailById(appUserDTO.getUserid(),id, longitude, latitude);
return ObjectRestResponse.succ(campsiteShopDetailVo);
}
......
......@@ -66,18 +66,21 @@
cs.sale_state = 1
AND cs.is_del = 0
<if test="typeId!=null">
and cst.tag_id=#{typeId}
<if test="type!=null">
and cst.tag_id=#{type}
</if>
<if test="proviceCode != null">
and cs.`province`=#{proviceCode}
<if test="addrProvince != null">
and cs.`province`=#{addrProvince}
</if>
<if test="cityCode != null">
and cs.`city`=#{cityCode}
<if test="addrCity != null">
and cs.`city`=#{addrCity}
</if>
<if test="name!=null and name!=''">
and cs.`name` like concat('%',#{name},'%')
</if>
<if test="keyWord!=null and keyWord!=''">
and cs.`name` like concat('%',#{keyWord},'%')
</if>
GROUP BY cs.id
order by cs.hot DESC,cs.crt_time DESC
</select>
......
package com.xxfc.platform.order.bo;
import cn.hutool.json.JSONObject;
import com.xxfc.platform.order.contant.enumerate.AccountTypeEnum;
import com.xxfc.platform.order.contant.enumerate.DeductionTypeEnum;
import com.xxfc.platform.order.contant.enumerate.StatisticsStatusEnum;
import com.xxfc.platform.order.pojo.account.OrderAccountBo;
import com.xxfc.platform.order.pojo.account.OrderAccountDeduction;
import com.xxfc.platform.order.pojo.account.OrderAccountDetail;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
import java.util.Objects;
/**
* @author libin
......@@ -40,6 +30,7 @@ public class FeeTypeBo implements Serializable {
private BigDecimal breakRulesRegulationAmount = BigDecimal.ZERO;
private BigDecimal lossSpecifiedAmount = BigDecimal.ZERO;
private BigDecimal extraAmount = BigDecimal.ZERO;
private BigDecimal extraNoDeductibleAmount = BigDecimal.ZERO;
}
......
......@@ -6,7 +6,6 @@ import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
import java.math.BigDecimal;
import java.util.*;
import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Function;
import java.util.stream.Collectors;
......
package com.xxfc.platform.order.contant.enumerate;
import cn.hutool.core.date.DateUtil;
import com.xxfc.platform.order.entity.OrderReceivedStatisticsBase;
import com.xxfc.platform.order.pojo.vo.OrderReceivedStatisticsVo;
import org.springframework.util.CollectionUtils;
......@@ -29,6 +30,7 @@ public enum ReceivedStatisticsEnum {
}
return orderReceivedStatisticsBases.stream().peek(x -> {
((OrderReceivedStatisticsBase) x).setDivisor(1);
((OrderReceivedStatisticsBase) x).setDateStr(DateUtil.format(((OrderReceivedStatisticsBase) x).getDate(),"yyyy-MM-dd"));
}).collect(Collectors.groupingBy(OrderReceivedStatisticsBase::getDate, Collectors.toList()));
}
},
......@@ -106,6 +108,7 @@ public enum ReceivedStatisticsEnum {
.weekOfYear(orderReceivedStatisticsBase.getWeekOfYear())
.year(orderReceivedStatisticsBase.getYear())
.orderNum(quantity)
.dateStr(orderReceivedStatisticsBase.getDateStr())
.orderAmount(amount)
.build();
}
......
......@@ -96,7 +96,7 @@ public enum StatisticsStatusEnum {
x.getPayWay() == null ? NO_PAY_WAY : x.getPayWay()
, x.getHasPay()));
stisticsActiveState.add(x.getStateGroup());
}).collect(Collectors.partitioningBy(x -> Objects.nonNull(x.getPayWay()), Collectors.groupingBy(OrderDTO::getStateGroup, Collectors.toList())));
}).collect(Collectors.partitioningBy(x -> Objects.equals(x.getHasPay(),1), Collectors.groupingBy(OrderDTO::getStateGroup, Collectors.toList())));
return stateGroupMap == null ? Collections.EMPTY_MAP : stateGroupMap;
}
......@@ -132,12 +132,14 @@ public enum StatisticsStatusEnum {
if (orderAccountBo.getAccountType().equals(AccountTypeEnum.IN_ORDER_PAY.getCode())) {
//订单押金
feeTypeBo.setDepositAmount(feeTypeBo.getDepositAmount().add(accountDetailEntity.getDepositAmount()));
//订单金额(不包含免赔和押金)
feeTypeBo.setTotalAmount(feeTypeBo.getTotalAmount().add(accountDetailEntity.getOrderAmount()));
if (hasDamageSafe) {
BigDecimal dameSafeAmount = getDameSafeAmount(orderAccountBo.getData());
feeTypeBo.setNoDeductibleAmount(feeTypeBo.getNoDeductibleAmount().add(dameSafeAmount));
feeTypeBo.setTotalAmount(feeTypeBo.getTotalAmount().subtract(feeTypeBo.getNoDeductibleAmount()));
}
//订单金额(不包含免赔和押金)
feeTypeBo.setTotalAmount(feeTypeBo.getTotalAmount().add(accountDetailEntity.getOrderAmount()).subtract(feeTypeBo.getNoDeductibleAmount()));
} else {
//退款订单押金
feeTypeBo.setDepositRefundAmount(feeTypeBo.getDepositRefundAmount().add(accountDetailEntity.getDepositAmount()));
......@@ -182,6 +184,10 @@ public enum StatisticsStatusEnum {
feeTypeBo.setExtraAmount(feeTypeBo.getExtraAmount().add(extendAmount));
}
}
//其他费用-延迟用车不记免赔
if (Objects.equals(DeductionTypeEnum.OTHER_DELAY_SAFE.getCode(),deduction.getType())){
feeTypeBo.setExtraNoDeductibleAmount(feeTypeBo.getExtraNoDeductibleAmount().add(deductionAmount));
}
}
//退款订单金额(不包含免赔和押金)
feeTypeBo.setOrderRefundAmount(feeTypeBo.getOrderRefundAmount().add(accountDetailEntity.getOrderAmount()).subtract(feeTypeBo.getNoDeductibleRefundAmount()));
......
......@@ -118,4 +118,7 @@ public class OrderReceivedStatisticsBase implements Serializable {
@Transient
private String stateGroup;
@Transient
private String dateStr;
}
......@@ -45,4 +45,6 @@ public class OrderRentVehicleReceivedStatistics extends OrderReceivedStatisticsB
@ApiModelProperty("不计免赔费用")
private BigDecimal noDeductibleRefundAmount;
@Column(name = "extra_no_deductible_amount")
private BigDecimal extraNoDeductibleAmount;
}
......@@ -23,6 +23,7 @@ public class OrderReceivedStatisticsVo {
private String year;
@ApiModelProperty("日期-->日统计方式")
private Date date;
private String dateStr;
@ApiModelProperty("第几周---->周统计方式")
private String weekOfYear;
@ApiModelProperty("月统计")
......
......@@ -31,7 +31,6 @@ import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.stream.Collectors;
/**
......@@ -155,6 +154,18 @@ public class OrderReceivedStatisticsBiz extends BaseBiz<OrderReceivedStatisticsM
dataCell.setCellStyle(cellStyle);
String sign = signs.get(cellIndex - 1);
List<OrderReceivedStatisticsVo> orderReceivedStatisticsVos = data.get(sign);
if (ReceivedStatisticsEnum.DAY.getWayCode() == statisticalWay){
orderReceivedStatisticsVos.sort(Comparator.comparing(OrderReceivedStatisticsVo::getDate));
}
if (ReceivedStatisticsEnum.WEEK.getWayCode() == statisticalWay){
orderReceivedStatisticsVos.sort(Comparator.comparing(OrderReceivedStatisticsVo::getWeekOfYear));
}
if (ReceivedStatisticsEnum.MONTH.getWayCode() == statisticalWay){
orderReceivedStatisticsVos.sort(Comparator.comparing(OrderReceivedStatisticsVo::getMonth));
}
if (CollectionUtils.isEmpty(orderReceivedStatisticsVos) || i > orderReceivedStatisticsVos.size()) {
continue;
}
......
......@@ -102,7 +102,7 @@ public class OrderRentVehicleReceivedStatisticsBiz extends BaseBiz<OrderRentVehi
List<OrderRentVehicleReceivedStatistics> otherStatisticsStateGroupList = createOtherStatisticsStateGroupList(startDate, stisticsActiveState, companyMap);
orderRentVehicleReceivedStatisticsList.addAll(otherStatisticsStateGroupList);
//保存
StatisticsStatusEnum.insertReceivedStatisticsBatch(orderRentVehicleReceivedStatisticsList,mapper);
// StatisticsStatusEnum.insertReceivedStatisticsBatch(orderRentVehicleReceivedStatisticsList,mapper);
return orderRentVehicleReceivedStatisticsList;
}
......
......@@ -30,8 +30,8 @@
</resultMap>
<select id="selectOrderMemberReceivedStatisticsGroupByDate" resultType="com.xxfc.platform.order.entity.OrderMemberReceivedStatistics">
select `date`,`year`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity`,IFNULL(sum(`toal_common_ammount`),0) as `toalCommonAmmount`,
IFNULL(sum(`total_common_quantity`),0) as `totalCommonQuantity`,IFNULL(sum(`total_gold_amount`),0) as `totalGoldAmount`,IFNULL(sum(`total_gold_quantity`),0),
select `date`,`year`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity`,IFNULL(sum(`toal_common_ammount`),0) as `toalCommonAmmount`,
IFNULL(sum(`total_common_quantity`),0) as `totalCommonQuantity`,IFNULL(sum(`total_gold_amount`),0) as `totalGoldAmount`,IFNULL(sum(`total_gold_quantity`),0) as `totalGoldQuantity`,
IFNULL(sum(`total_diamond_ammount`),0) as `totalDiamondAmmount`,IFNULL(sum(`total_diamond_quantity`),0) as `totalDiamondQuantity` from `order_member_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
......@@ -60,8 +60,8 @@
</select>
<select id="selectOrderMemberReceivedStatisticsGroupByMonth" resultType="com.xxfc.platform.order.entity.OrderMemberReceivedStatistics">
select `year`,`month`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity`,IFNULL(sum(`toal_common_ammount`),0) as `toalCommonAmmount`,
IFNULL(sum(`total_common_quantity`),0) as `totalCommonQuantity`,IFNULL(sum(`total_gold_amount`),0) as `totalGoldAmount`,IFNULL(sum(`total_gold_quantity`),0),
select `year`,`month`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity`,IFNULL(sum(`toal_common_ammount`),0) as `toalCommonAmmount`,
IFNULL(sum(`total_common_quantity`),0) as `totalCommonQuantity`,IFNULL(sum(`total_gold_amount`),0) as `totalGoldAmount`,IFNULL(sum(`total_gold_quantity`),0) as `totalGoldQuantity`,
IFNULL(sum(`total_diamond_ammount`),0) as `totalDiamondAmmount`,IFNULL(sum(`total_diamond_quantity`),0) as `totalDiamondQuantity` from `order_member_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
......@@ -90,8 +90,8 @@
</select>
<select id="selectOrderMemberReceivedStatisticsGroupByWeekOfYear" resultType="com.xxfc.platform.order.entity.OrderMemberReceivedStatistics">
select `year`,`week_of_year`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity`,IFNULL(sum(`toal_common_ammount`),0) as `toalCommonAmmount`
,IFNULL(sum(`total_common_quantity`),0) as `totalCommonQuantity`,IFNULL(sum(`total_gold_amount`),0) as `totalGoldAmount`,IFNULL(sum(`total_gold_quantity`),0),
select `year`,`week_of_year`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity`,IFNULL(sum(`toal_common_ammount`),0) as `toalCommonAmmount`
,IFNULL(sum(`total_common_quantity`),0) as `totalCommonQuantity`,IFNULL(sum(`total_gold_amount`),0) as `totalGoldAmount`,IFNULL(sum(`total_gold_quantity`),0) as `totalGoldQuantity`,
IFNULL(sum(`total_diamond_ammount`),0) as `totalDiamondAmmount`,IFNULL(sum(`total_diamond_quantity`),0) as `totalDiamondQuantity` from `order_member_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
......
......@@ -32,7 +32,7 @@
</resultMap>
<select id="selectOrderReceivedStatisticsDateList" resultType="com.xxfc.platform.order.entity.OrderReceivedStatistics">
select `year`,`date`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_received_statistics` where 1=1
select `year`,`date`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
</if>
......@@ -61,7 +61,7 @@
</select>
<select id="selectOrderReceivedStatisticsMonthList" resultType="com.xxfc.platform.order.entity.OrderReceivedStatistics">
select `year`,`month`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_received_statistics` where 1=1
select `year`,`month`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
</if>
......@@ -90,7 +90,7 @@
</select>
<select id="selectOrderReceivedStatisticsWeekOfYearList" resultType="com.xxfc.platform.order.entity.OrderReceivedStatistics">
select `year`,`week_of_year`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_received_statistics` where 1=1
select `year`,`week_of_year`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
</if>
......
......@@ -17,9 +17,20 @@
<result property="payWay" column="pay_way"/>
<result property="companyId" column="company_id"/>
<result property="crtTime" column="crt_time"/>
<result property="extraNoDeductibleAmount" column="extral_no_deductible_amount"/>
<result property="orderRefundAmount" column="order_refund_amount"/>
<result property="lateFeeAmount" column="late_fee_amount"/>
<result property="extraAmount" column="extra_amount"/>
<result property="companyName" column="company_name"/>
<result property="noDeductibleAmount" column="no_deductible_amount"/>
<result property="noDeductibleRefundAmount" column="no_deductible_refund_amount"/>
<result property="lossSpecifiedAmount" column="loss_specified_amount"/>
<result property="depositRefundAmount" column="deposit_refund_amount"/>
<result property="depositAmount" column="deposit_amount"/>
<result property="breakRulesRegulationAmount" column="break_rules_regulation_amount"/>
</resultMap>
<select id="selectOrderRentVehicleReceivedStatisticsGroupByDate" resultType="com.xxfc.platform.order.entity.OrderRentVehicleReceivedStatistics">
select `year`,`date`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_rent_vehicle_received_statistics` where 1=1
select `year`,`date`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_rent_vehicle_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
</if>
......@@ -47,7 +58,7 @@
</select>
<select id="selectOrderRentVehicleReceivedStatisticsGroupByMonth" resultType="com.xxfc.platform.order.entity.OrderRentVehicleReceivedStatistics">
select `year`,`month`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_rent_vehicle_received_statistics` where 1=1
select `year`,`month`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_rent_vehicle_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
</if>
......@@ -75,7 +86,7 @@
</select>
<select id="selectOrderRentVehicleReceivedStatisticsGroupByWeekOfYear" resultType="com.xxfc.platform.order.entity.OrderRentVehicleReceivedStatistics">
select `year`,`week_of_year`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_rent_vehicle_received_statistics` where 1=1
select `year`,`week_of_year`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_rent_vehicle_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
</if>
......
......@@ -24,7 +24,7 @@
</resultMap>
<select id="selectOrderTourReceivedStatisticsGroupByDate" resultType="com.xxfc.platform.order.entity.OrderTourReceivedStatistics">
select `year`,`date`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_tour_received_statistics` where 1=1
select `year`,`date`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_tour_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
</if>
......@@ -52,7 +52,7 @@
</select>
<select id="selectOrderTourReceivedStatisticsGroupByMonth" resultType="com.xxfc.platform.order.entity.OrderTourReceivedStatistics">
select `year`,`month`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_tour_received_statistics` where 1=1
select `year`,`month`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_tour_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
</if>
......@@ -80,7 +80,7 @@
</select>
<select id="selectOrderTourReceivedStatisticsGroupByWeekOfYear" resultType="com.xxfc.platform.order.entity.OrderTourReceivedStatistics">
select `year`,`week_of_year`,IFNULL(sum(`total_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_tour_received_statistics` where 1=1
select `year`,`week_of_year`,IFNULL(sum(`total_amount`-`order_refund_amount`),0) as `totalAmount`,IFNULL(sum(`total_quantity`),0) as `totalQuantity` from `order_tour_received_statistics` where 1=1
<if test="orderState!=null">
and `has_pay`=#{orderState}
</if>
......
import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateUtil;
import com.xxfc.platform.order.OrderApplication;
import com.xxfc.platform.order.biz.*;
......@@ -16,8 +15,6 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Date;
import java.util.Map;
......@@ -98,7 +95,7 @@ public class ServiceTest {
@Test
public void testMemberStatistics(){
Date date = DateTime.parse("2019-11-28").toDate();
Date date = DateTime.parse("2019-11-15").toDate();
Date startDate = DateUtil.beginOfDay(date).toJdkDate();
Date endDate = DateUtil.endOfDay(date).toJdkDate();
Map<Integer, String> companyMap = vehicleFeign.findCompanyMap();
......@@ -107,7 +104,7 @@ public class ServiceTest {
@Test
public void testRentVehicleStatistics(){
Date date = DateTime.parse("2019-11-29").toDate();
Date date = DateTime.parse("2019-11-15").toDate();
Date startDate = DateUtil.beginOfDay(date).toJdkDate();
Date endDate = DateUtil.endOfDay(date).toJdkDate();
Map<Integer, String> companyMap = vehicleFeign.findCompanyMap();
......@@ -128,14 +125,13 @@ public class ServiceTest {
public void testOrderReceivedStatisticsJobHandler(){
cn.hutool.core.date.DateTime dateTime = DateUtil.parse("2019-11-29", "yyyy-MM-dd");
// cn.hutool.core.date.DateTime offset = DateUtil.offset(dateTime, DateField.DAY_OF_MONTH, 1);
/* orderReceivedStatisticsJobHandler.execute("2019-11-29");*/
LocalDate startLocalDate = LocalDate.of(2019, 10, 1);
LocalDate endLocalDate = LocalDate.of(2019,11,30);
orderReceivedStatisticsJobHandler.execute("2019-11-15");
/* LocalDate startLocalDate = LocalDate.of(2019, 10, 01);
LocalDate endLocalDate = LocalDate.of(2019,12,19);
while (startLocalDate.isBefore(endLocalDate)){
String dateStr = startLocalDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
startLocalDate = startLocalDate.plusDays(1);
orderReceivedStatisticsJobHandler.execute(dateStr);
}
}*/
}
}
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