package com.matrix.system.shopXcx.api.action;
|
|
import com.matrix.component.redis.RedisUserLoginUtils;
|
import com.matrix.core.pojo.AjaxResult;
|
import com.matrix.core.pojo.PaginationVO;
|
import com.matrix.core.tools.StringUtils;
|
import com.matrix.system.hive.bean.SysSkinCheckRecord;
|
import com.matrix.system.hive.bean.SysSkinDetail;
|
import com.matrix.system.hive.bean.SysVipInfo;
|
import com.matrix.system.hive.dao.SysSkinCheckRecordDao;
|
import com.matrix.system.hive.dao.SysSkinDetailDao;
|
import com.matrix.system.hive.dao.SysVipInfoDao;
|
import com.matrix.system.hive.plugin.util.CollectionUtils;
|
import com.matrix.system.shopXcx.api.pojo.SkinCheckDTO;
|
import com.matrix.system.shopXcx.bean.ShopProduct;
|
import com.matrix.system.shopXcx.dao.ShopProductDao;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.Arrays;
|
import java.util.List;
|
|
/**
|
* @Author wzy
|
* @Date 2020/3/24
|
* @email wangdoubleone@gmail.com
|
* @Version V1.0
|
**/
|
@RestController
|
@RequestMapping(value = "/wxapi/skinCheck")
|
public class WxSkinCheckAction {
|
|
@Autowired
|
private SysSkinCheckRecordDao sysSkinCheckRecordDao;
|
|
@Autowired
|
private SysSkinDetailDao skinDetailDao;
|
|
@Autowired
|
private SysVipInfoDao vipInfoDao;
|
|
@Autowired
|
private RedisUserLoginUtils redisUserLoginUtils;
|
|
@Autowired
|
private ShopProductDao shopProductDao;
|
|
@RequestMapping(value = "/showSkinList")
|
public @ResponseBody AjaxResult showSkinList(@RequestBody SkinCheckDTO skinCheckDTO) {
|
SysVipInfo sysVipInfo = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
|
PaginationVO pageVo = new PaginationVO();
|
pageVo.setLimit(skinCheckDTO.getLimit());
|
pageVo.setOffset(skinCheckDTO.getOffset());
|
SysSkinCheckRecord skinCheckRecord = new SysSkinCheckRecord();
|
skinCheckRecord.setTelphone(sysVipInfo.getPhone());
|
List<SysSkinCheckRecord> dataList = sysSkinCheckRecordDao.selectInPage(skinCheckRecord, pageVo);
|
AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, dataList,
|
sysSkinCheckRecordDao.selectTotalRecord(skinCheckRecord));
|
return result;
|
}
|
|
@RequestMapping(value = "/findById/{id}")
|
public @ResponseBody
|
AjaxResult findById(@PathVariable("id") Long id) {
|
|
|
SysSkinCheckRecord sysSkinCheckRecord = sysSkinCheckRecordDao.selectById(id);
|
|
List<SysSkinDetail> detailList= skinDetailDao.selectByRecordId(sysSkinCheckRecord.getId());
|
detailList.forEach(item->{
|
|
List<Integer> ids = StringUtils.strToCollToInteger(item.getProductIds(), ",");
|
if(CollectionUtils.isNotEmpty(ids)){
|
List<ShopProduct> shopProducts = shopProductDao.selectByIds(ids);
|
item.setShopProducts(shopProducts);
|
}
|
});
|
|
sysSkinCheckRecord.setSkinDetails(detailList);
|
SysVipInfo vipInfo = vipInfoDao.selectByPhone(sysSkinCheckRecord.getTelphone());
|
AjaxResult result=AjaxResult.buildSuccessInstance(Arrays.asList(sysSkinCheckRecord));
|
result.putInMap("vipInfo",vipInfo);
|
return result;
|
}
|
}
|