package com.kidgrow.oprationcenter.service.impl;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.kidgrow.common.constant.CommonConstant;
|
import com.kidgrow.common.model.PageResult;
|
import com.kidgrow.common.model.ResultBody;
|
import com.kidgrow.common.model.SysUser;
|
import com.kidgrow.common.service.impl.SuperServiceImpl;
|
import com.kidgrow.common.utils.DateUtil;
|
import com.kidgrow.oprationcenter.feign.RoleOrganizationService;
|
import com.kidgrow.oprationcenter.mapper.SysProductMapper;
|
import com.kidgrow.oprationcenter.model.SysProduct;
|
import com.kidgrow.oprationcenter.service.ISysProductService;
|
import com.kidgrow.oprationcenter.vo.ProductAllVo;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.commons.collections4.MapUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.Arrays;
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.stream.Collectors;
|
|
/**
|
* 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
|
* @Description: <br>
|
* @Project: 用户中心<br>
|
* @CreateDate: Created in 2020-04-01 09:37:05 <br>
|
* @Author: <a href="4345453@kidgrow.com">liuke</a>
|
* @version 1.0
|
*/
|
@Slf4j
|
@Service
|
public class SysProductServiceImpl extends SuperServiceImpl<SysProductMapper, SysProduct> implements ISysProductService {
|
@Autowired
|
private RoleOrganizationService roleOrganizationService;
|
|
/**
|
* 列表
|
* @param params
|
* @return
|
*/
|
@Override
|
public PageResult<SysProduct> findList(Map<String, Object> params, SysUser sysUser){
|
Page<SysProduct> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit"));
|
Map<String, Object> roleOrgMap = roleOrganizationService.getRoleOrgMap(sysUser);
|
params.putAll(roleOrgMap);
|
List<Long> longs = Arrays.asList(CommonConstant.PAY_USER_PRODUCT_ID, CommonConstant.REG_USER_PRODUCT_ID);
|
params.put("idNotIn",longs);
|
List<SysProduct> list = baseMapper.findList(page, params);
|
// list=list.stream().filter(f->(!f.getId().equals(CommonConstant.PAY_USER_PRODUCT_ID)&&!f.getId().equals(CommonConstant.REG_USER_PRODUCT_ID))).collect(Collectors.toList());
|
return PageResult.<SysProduct>builder().data(list).code(0).count(page.getTotal()).build();
|
}
|
/**
|
* 列表
|
* @param params
|
* @return
|
*/
|
@Override
|
public PageResult<ProductAllVo> findAllList(Map<String, Object> params, SysUser sysUser){
|
List<ProductAllVo> list = baseMapper.findAllList(params);
|
if (list != null) {
|
for (int i = 0; i <list.size() ; i++) {
|
list.get(i).setBeginTime(new Date());
|
switch (list.get(i).getProTimeUnit())
|
{
|
//天
|
case 0:
|
list.get(i).setEndTime(DateUtil.addDays(new Date(),list.get(i).getProTime()));
|
break;
|
//月
|
case 1:
|
list.get(i).setEndTime(DateUtil.addMonths(new Date(),list.get(i).getProTime()));
|
break;
|
//年
|
case 2:
|
list.get(i).setEndTime(DateUtil.addYears(new Date(),list.get(i).getProTime()));
|
break;
|
}
|
}
|
list=list.stream().filter(f->(!f.getId().equals(CommonConstant.PAY_USER_PRODUCT_ID)&&!f.getId().equals(CommonConstant.REG_USER_PRODUCT_ID))).collect(Collectors.toList());
|
}
|
|
return PageResult.<ProductAllVo>builder().data(list).code(0).count(0L).build();
|
}
|
|
/**
|
* 根据SysProduct对象当做查询条件进行查询
|
* @param sysProduct
|
* @return SysProduct
|
*/
|
@Override
|
public SysProduct findByObject(SysProduct sysProduct){
|
return baseMapper.findByObject(sysProduct);
|
}
|
|
/**
|
* 根据id和启用禁用值更新数据
|
* @param params
|
* @return ResultBody
|
*/
|
@Override
|
public ResultBody updateEnabled(Map<String, Object> params) {
|
Long id = MapUtils.getLong(params, "id");
|
Boolean enabled = MapUtils.getBoolean(params, "enabled");
|
|
SysProduct sysProduct = baseMapper.selectById(id);
|
if (sysProduct == null) {
|
return ResultBody.failed("该数据不存在!");
|
}
|
sysProduct.setEnabled(enabled);
|
sysProduct.setUpdateTime(new Date());
|
int i = baseMapper.updateById(sysProduct);
|
return i > 0 ? ResultBody.ok().data(sysProduct).msg("更新成功") : ResultBody.failed("更新失败");
|
}
|
}
|