Commit 0e5e1235 authored by muhong's avatar muhong

Merge branch 'master' into applet-dev

parents d63790c3 6fd7d644
......@@ -4,18 +4,26 @@ import com.alibaba.fastjson.JSONObject;
import com.wwdz.ch.admin.annotation.RequiresPermissionsDesc;
import com.wwdz.ch.admin.service.AdminUserService;
import com.wwdz.ch.admin.util.AuthSupport;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.ResponseUtil;
import com.wwdz.ch.core.validator.Order;
import com.wwdz.ch.core.validator.Sort;
import com.wwdz.ch.db.domain.Admin;
import com.wwdz.ch.db.domain.User;
import com.wwdz.ch.db.dto.request.UserSearchRequestDto;
import org.apache.commons.collections.map.AbstractMapDecorator;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@RestController
@RequestMapping("/admin/user")
......@@ -44,5 +52,26 @@ public class AdminUserController {
}
return ResponseUtil.fail();
}
@RequiresPermissions("admin:user:findList")
@RequiresPermissionsDesc(menu = { "邀请码管理", "下拉框会员列表" }, button = "查询")
@PostMapping("/findList")
public Result findList(@RequestBody UserSearchRequestDto dto) {
try {
List<Map<String, Object>> mapList = new ArrayList<>();
List<User> list = adminUserService.findList(dto);
list.forEach(user -> {
Map<String, Object> map = new HashMap<>();
map.put("id", user.getId());
map.put("name", user.getNickname());
mapList.add(map);
});
return Result.success(mapList);
} catch (Exception e) {
logger.error("邀请码管理->下拉框会员列表->查询 error:{]",e);
}
return Result.failed();
}
}
......@@ -38,7 +38,7 @@ public class InvitationCodeController {
public Result create(@RequestBody InvitationCodeRequestDto invitationCodeRequestDto) {
logger.info("【请求开始】操作人:[" + AuthSupport.userName()+ "] 邀请码管理->生成邀请码->新增,请求参数:parma:{}", invitationCodeRequestDto);
Validator validator = new Validator(FormHandler.ofEntity(invitationCodeRequestDto));
validator.set("effectiveStartTime", "有效期起始时间").must().string()
validator.set("effectiveStartTime", "有效期起始时间").sometimes().string()
.set("effectiveEndTime", "有效期结束时间").must().string()
.set("enabledNum", "可使用的人数").must().integer()
.set("applicant", "申请人").must().number()
......
......@@ -33,6 +33,11 @@ public class InvitationCodeVo implements Entity {
*/
private Integer enabledNum;
/**
* 使用人数
*/
private Integer usedNum;
/**
* 申请人
*/
......@@ -75,4 +80,6 @@ public class InvitationCodeVo implements Entity {
*/
private String remark;
}
......@@ -5,6 +5,7 @@ import com.wwdz.ch.admin.controller.AdminUserController;
import com.wwdz.ch.admin.service.AdminUserService;
import com.wwdz.ch.db.dao.dts.DtsUserDao;
import com.wwdz.ch.db.domain.User;
import com.wwdz.ch.db.dto.request.UserSearchRequestDto;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -31,4 +32,10 @@ public class AdminUserServiceImpl implements AdminUserService {
data.put("items", userList);
return data;
}
@Override
public List<User> findList(UserSearchRequestDto dto) {
return dtsUserDao.querySelective(dto.getNickname(), null, 1, 1000, "update_time", "desc");
}
}
......@@ -50,7 +50,7 @@ public class CategoryServiceImpl implements CategoryService {
@Override
public List<CategoryVo> querySelective(String id, String name, Integer page, Integer size, String sort, String order) {
List<Category> collectList = categoryDao.querySelective(id, name, page, size, sort, order);
List<CategoryVo> data = collectList.parallelStream().map(a -> new CategoryVo(a)).collect(Collectors.toList());
List<CategoryVo> data = collectList.stream().map(a -> new CategoryVo(a)).collect(Collectors.toList());
return data;
}
......
......@@ -5,11 +5,13 @@ import com.wwdz.ch.admin.entity.vo.InvitationCodeVo;
import com.wwdz.ch.admin.entity.vo.InviteRecordVo;
import com.wwdz.ch.admin.service.InvitationCodeService;
import com.wwdz.ch.admin.service.InviteRecordService;
import com.wwdz.ch.admin.util.AuthSupport;
import com.wwdz.ch.core.consts.InvitationCodeStateEnum;
import com.wwdz.ch.core.type.PageSearchResult;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.CacheUtil;
import com.wwdz.ch.core.util.CharUtil;
import com.wwdz.ch.core.util.DateTimeUtil;
import com.wwdz.ch.db.dao.InvitationCodeDao;
import com.wwdz.ch.db.domain.InvitationCode;
import com.wwdz.ch.db.dto.request.InvitationCodeRequestDto;
......@@ -21,12 +23,18 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.*;
@Service
public class InvitationCodeServiceImpl implements InvitationCodeService {
private static final Logger logger = LoggerFactory.getLogger(InvitationCodeServiceImpl.class);
@Autowired
InvitationCodeDao invitationCodeDao;
......@@ -42,10 +50,13 @@ public class InvitationCodeServiceImpl implements InvitationCodeService {
Date now = new Date();
InvitationCode invitationCode = new InvitationCode();
EntityMapper.copyAttribute(invitationCodeRequestDto, invitationCode);
invitationCode.setEffectiveStartTime(DateUtils.parseString(invitationCodeRequestDto.getEffectiveStartTime()));
invitationCode.setEffectiveEndTime(DateUtils.parseString(invitationCodeRequestDto.getEffectiveEndTime()));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String currentDate = sdf.format(now);
invitationCode.setEffectiveStartTime(DateTimeUtil.getDateWithMinTime(currentDate));
invitationCode.setEffectiveEndTime(DateTimeUtil.getDateWithMaxTime(invitationCodeRequestDto.getEffectiveEndTime()));
invitationCode.setCreateTime(now);
invitationCode.setUpdateTime(now);
invitationCode.setCreator(AuthSupport.adminId());
String code = CharUtil.getInvitationCode(6);
if (invitationCodeDao.isExisted(code)) {
logger.info("邀请码 : {} 已经存在,", code);
......@@ -95,7 +106,27 @@ public class InvitationCodeServiceImpl implements InvitationCodeService {
invitationCodeList.forEach(invitationCode -> {
InvitationCodeVo invitationCodeVo = new InvitationCodeVo();
EntityMapper.copyAttribute(invitationCode, invitationCodeVo);
Date effectEndTime = invitationCode.getEffectiveEndTime();
Date now = new Date();
int comparison = effectEndTime.compareTo(now);
if (comparison <= 0) {
//设置邀请码状态为已过期
if (invitationCode.getState() == InvitationCodeStateEnum.NOT_USED.getCode() || invitationCode.getState() == InvitationCodeStateEnum.PART_USED.getCode()) {
invitationCodeDao.updateState(invitationCode.getCode(), InvitationCodeStateEnum.EXPIRED.getCode());
invitationCode.setState(InvitationCodeStateEnum.EXPIRED.getCode());
invitationCodeVo.setState(InvitationCodeStateEnum.EXPIRED.getCode());
}
}
invitationCodeVo.setStateName(InvitationCodeStateEnum.getNameByCode(invitationCode.getState()));
InviteRecordRequestDto inviteRecordRequestDto = new InviteRecordRequestDto();
inviteRecordRequestDto.setInvitationCode(invitationCode.getCode());
List<InviteRecordVo> inviteRecordVoList = inviteRecordService.findList(inviteRecordRequestDto);
if (CollectionUtils.isEmpty(inviteRecordVoList)) {
invitationCodeVo.setUsedNum(0);
} else {
invitationCodeVo.setUsedNum(inviteRecordVoList.size());
}
invitationCodeVoList.add(invitationCodeVo);
});
return Result.success(PageSearchResult.of(pageInfo, invitationCodeVoList));
......@@ -120,6 +151,7 @@ public class InvitationCodeServiceImpl implements InvitationCodeService {
invitationCodeVo.setCreatorName(cacheUtil.getSystemUserNameById(invitationCodeVo.getCreator()));
invitationCodeVo.setStateName(InvitationCodeStateEnum.getNameByCode(invitationCode.getState()));
InviteRecordRequestDto inviteRecordRequestDto = new InviteRecordRequestDto();
inviteRecordRequestDto.setInvitationCode(invitationCodeRequestDto.getCode());
List<InviteRecordVo> inviteRecordVoList = inviteRecordService.findList(inviteRecordRequestDto);
map.put("invitationCodeVo", invitationCodeVo);
map.put("record", inviteRecordVoList);
......
......@@ -150,7 +150,7 @@ public class ItemServiceImpl implements ItemService {
paramMap.put("topImage", url);
item.setTopImage(url);
}
item.setState(ItemStateEnum.FINISH.getCode());
item.setState(coinRequestDto.getState());
itemDao.setCoin(item);
//记录钱币设置的操作日志
......
package com.wwdz.ch.admin.service;
import com.wwdz.ch.db.domain.User;
import com.wwdz.ch.db.dto.request.UserSearchRequestDto;
import java.util.List;
public interface AdminUserService {
Object findList(String username, String mobile, Integer page, Integer size, String sort, String order);
List<User> findList(UserSearchRequestDto dto);
}
......@@ -108,7 +108,8 @@ public class ElasticSearchConfig {
HttpClientConfigCallback callback = httpAsyncClientBuilder -> httpAsyncClientBuilder
.setSSLContext(buildSSLContext())
.setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE)
.setDefaultCredentialsProvider(credentialsProvider);
.setDefaultCredentialsProvider(credentialsProvider)
.setKeepAliveStrategy((response, context) -> 180 * 1000);
// 用builder创建RestClient对象
RestClient client = RestClient
......
package com.wwdz.ch.core.util;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
import java.util.Date;
......@@ -42,4 +46,33 @@ public class DateTimeUtil {
return null;
}
}
public static Date getDateWithMinTime(String dateString) {
try {
LocalDate localDate = LocalDate.parse(dateString);
LocalDateTime startOfDay = localDate.atTime(LocalTime.MIN);
Date startDate = Date.from(startOfDay.atZone(java.time.ZoneId.systemDefault()).toInstant());
return startDate;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public static Date getDateWithMaxTime(String dateString) {
try {
LocalDate localDate = LocalDate.parse(dateString);
LocalDateTime endOfDay = localDate.atTime(LocalTime.MAX);
Date endDate = Date.from(endOfDay.atZone(java.time.ZoneId.systemDefault()).toInstant());
return endDate;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
......@@ -19,6 +19,8 @@ public interface CategoryDao {
List<Category> queryByPid(Integer pid);
List<Category> queryByPids(List<Integer> pidList);
Category findById(Integer id);
/**
......
......@@ -3,6 +3,7 @@ package com.wwdz.ch.db.dao.dts;
import com.wwdz.ch.db.bean.DayStatis;
import com.wwdz.ch.db.domain.User;
import com.wwdz.ch.db.domain.UserVo;
import com.wwdz.ch.db.dto.request.UserSearchRequestDto;
import java.util.List;
......
......@@ -291,7 +291,7 @@ public class InvitationCodeExample {
}
public Criteria andCodeEqualTo(String value) {
addCriterion("code =", value, "code");
addCriterion("binary code =", value, "code");
return (Criteria) this;
}
......@@ -308,7 +308,7 @@ public class InvitationCodeExample {
}
public Criteria andCodeNotEqualTo(String value) {
addCriterion("code <>", value, "code");
addCriterion("binary code <>", value, "code");
return (Criteria) this;
}
......@@ -403,12 +403,12 @@ public class InvitationCodeExample {
}
public Criteria andCodeIn(List<String> values) {
addCriterion("code in", values, "code");
addCriterion("binary code in", values, "code");
return (Criteria) this;
}
public Criteria andCodeNotIn(List<String> values) {
addCriterion("code not in", values, "code");
addCriterion("binary code not in", values, "code");
return (Criteria) this;
}
......
......@@ -829,7 +829,7 @@ public class InviteRecordExample {
}
public Criteria andInvitationCodeEqualTo(String value) {
addCriterion("invitation_code =", value, "invitationCode");
addCriterion("binary invitation_code =", value, "invitationCode");
return (Criteria) this;
}
......@@ -846,7 +846,7 @@ public class InviteRecordExample {
}
public Criteria andInvitationCodeNotEqualTo(String value) {
addCriterion("invitation_code <>", value, "invitationCode");
addCriterion("binary invitation_code <>", value, "invitationCode");
return (Criteria) this;
}
......@@ -941,12 +941,12 @@ public class InviteRecordExample {
}
public Criteria andInvitationCodeIn(List<String> values) {
addCriterion("invitation_code in", values, "invitationCode");
addCriterion("binary invitation_code in", values, "invitationCode");
return (Criteria) this;
}
public Criteria andInvitationCodeNotIn(List<String> values) {
addCriterion("invitation_code not in", values, "invitationCode");
addCriterion("binary invitation_code not in", values, "invitationCode");
return (Criteria) this;
}
......
......@@ -98,4 +98,9 @@ public class CoinRequestDto extends BaseRequestDto implements Entity {
private Double price;
/**
* 状态
*/
private Integer state;
}
......@@ -42,8 +42,6 @@ public class ItemEsDao {
//来源中国,排除2,7,尚未去除水印的
private final static List<String> SOURCE_LIST = Arrays.asList("1", "3", "8", "11", "1000");
@Resource(name="clientByPasswd")
ElasticsearchClient elasticsearchClient;
......@@ -151,7 +149,8 @@ public class ItemEsDao {
List<BulkOperation> opts = new ArrayList<>();
for (Item item : itemList) {
CreateOperation<Item> optObj = new CreateOperation.Builder<Item>()
.index(INDEX)
.index("quanku_prod_temp")
// .index(INDEX)
.id(String.valueOf(item.getId()))
.document(item)
.build();
......
......@@ -55,7 +55,7 @@ public class BidRecordDaoImpl implements BidRecordDao {
criteria.andCidEqualTo(dto.getCid()).andIsDeletedEqualTo(0);
JdbcHelper.ifPresent(dto.getStartBidTime(), criteria::andBidTimeGreaterThanOrEqualTo);
JdbcHelper.ifPresent(dto.getEndBidTime(), criteria::andBidTimeLessThanOrEqualTo);
example.setOrderByClause("update_time asc");
example.setOrderByClause("bid_time asc");
return bidRecordMapper.selectByExample(example);
}
......
......@@ -47,15 +47,26 @@ public class CategoryDaoImpl implements CategoryDao {
criteria.andNameLike("%" + dto.getName() + "%");
}
criteria.andIsDeletedEqualTo(false);
return categoryMapper.selectByExample(example);
return categoryMapper.selectByExampleWithBLOBs(example);
}
public List<Category> queryByPid(Integer pid) {
CategoryExample example = new CategoryExample();
example.or().andPidEqualTo(pid).andIsDeletedEqualTo(false);
return categoryMapper.selectByExampleWithBLOBs(example);
}
@Override
public List<Category> queryByPids(List<Integer> pidList) {
CategoryExample example = new CategoryExample();
CategoryExample.Criteria criteria = example.createCriteria();
criteria.andPidIn(pidList).andIsDeletedEqualTo(false);
return categoryMapper.selectByExample(example);
}
public Category findById(Integer id) {
return categoryMapper.selectByPrimaryKey(id);
}
......@@ -63,7 +74,7 @@ public class CategoryDaoImpl implements CategoryDao {
public Category findByName(String name) {
CategoryExample example = new CategoryExample();
example.or().andNameEqualTo(name).andIsDeletedEqualTo(false);
return categoryMapper.selectOneByExample(example);
return categoryMapper.selectOneByExampleWithBLOBs(example);
}
@Override
......
......@@ -66,6 +66,7 @@ public class InvitationCodeDaoImpl implements InvitationCodeDao {
public PageInfo<InvitationCode> findByPage(InvitationCodeRequestDto dto) {
InvitationCodeExample invitationCodeExample = new InvitationCodeExample();
InvitationCodeExample.Criteria criteria = invitationCodeExample.createCriteria();
invitationCodeExample.setOrderByClause(" update_time desc");
PageHelper.startPage(dto.getPage(), dto.getLimit());
List<InvitationCode> list = invitationCodeMapper.selectByExample(invitationCodeExample);
return new PageInfo<>(list);
......
......@@ -6,9 +6,11 @@ import com.wwdz.ch.db.dao.dts.DtsUserDao;
import com.wwdz.ch.db.domain.User;
import com.wwdz.ch.db.domain.UserExample;
import com.wwdz.ch.db.domain.UserVo;
import com.wwdz.ch.db.dto.request.UserSearchRequestDto;
import com.wwdz.ch.db.mapper.UserAccountObsoleteMapper;
import com.wwdz.ch.db.mapper.UserMapper;
import com.wwdz.ch.db.mapper.ex.StatMapper;
import com.xxdxxs.db.component.JdbcHelper;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
......@@ -132,6 +134,7 @@ public class DtsUserDaoImpl implements DtsUserDao {
return userMapper.selectByExample(example);
}
@Override
public List<DayStatis> recentCount(int statisDaysRang) {
return statMapper.statisIncreaseUserCnt(statisDaysRang);
......
package com.wwdz.ch.wx.entity;
import com.wwdz.ch.db.domain.Category;
import com.xxdxxs.entity.Entity;
import lombok.Data;
@Data
public class TransverseCategory implements Entity {
private Integer id;
private String name;
private Integer pid;
private Integer level;
private Boolean isLeaf;
public TransverseCategory() {
}
public TransverseCategory(Integer id, String name, Integer pid, Integer level, Boolean isLeaf) {
this.id = id;
this.name = name;
this.pid = pid;
this.level = level;
this.isLeaf = isLeaf;
}
public static TransverseCategory ofTitle(Category category) {
TransverseCategory transverseCategory = new TransverseCategory();
transverseCategory.setId(category.getId());
transverseCategory.setName(category.getName());
transverseCategory.setLevel(category.getLevel());
transverseCategory.setIsLeaf(category.getIsLeaf());
transverseCategory.setPid(category.getPid());
return transverseCategory;
}
}
......@@ -10,4 +10,5 @@ public class CategoryRequestDto implements Entity {
private Integer page;
private Integer size;
private String name;
private Integer pid;
}
......@@ -185,6 +185,15 @@ public class CategoryVo implements Serializable {
return new CategoryVo(category);
}
public static CategoryVo ofTitle(Category category) {
CategoryVo categoryVo = new CategoryVo();
categoryVo.setId(category.getId());
categoryVo.setName(category.getName());
categoryVo.setLevel(category.getLevel());
categoryVo.setIsLeaf(category.getIsLeaf());
return categoryVo;
}
public Integer getId() {
return id;
}
......
package com.wwdz.ch.wx.entity.vo;
import com.wwdz.ch.wx.entity.TransverseCategory;
import lombok.Data;
import java.util.List;
import java.util.Map;
/**
* 横向类目展示
*/
@Data
public class TransverseCategoryVo {
private List<TransverseCategory> firstCategory;
private List<Map<String, Object>> childCategory;
}
......@@ -5,8 +5,11 @@ import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dao.CategoryDao;
import com.wwdz.ch.db.domain.Category;
import com.wwdz.ch.db.dto.request.CategorySearchRequestDto;
import com.wwdz.ch.wx.entity.TransverseCategory;
import com.wwdz.ch.wx.entity.request.CategoryRequestDto;
import com.wwdz.ch.wx.entity.vo.CategoryResponseVo;
import com.wwdz.ch.wx.entity.vo.CategoryVo;
import com.wwdz.ch.wx.entity.vo.TransverseCategoryVo;
import com.wwdz.ch.wx.service.CategoryService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
......@@ -21,6 +24,9 @@ import java.util.stream.Collectors;
@Service
public class CategoryServiceImpl implements CategoryService {
private static final Logger logger = LoggerFactory.getLogger(CategoryServiceImpl.class);
private static final Integer TOP_PID = 0;
@Autowired
private CategoryDao categoryDao;
......@@ -168,4 +174,38 @@ public class CategoryServiceImpl implements CategoryService {
vo.setIsChosen(0);
return vo;
}
@Override
public Result findCategoryByTransverse(CategoryRequestDto dto) {
try {
TransverseCategoryVo transverseCategoryVo = new TransverseCategoryVo();
//查询所有的第一级类目
List<Category> categoryList = categoryDao.queryByPid(TOP_PID);
List<TransverseCategory> firstCategoryVoList = categoryList.stream().map(e -> TransverseCategory.ofTitle(e)).collect(Collectors.toList());
transverseCategoryVo.setFirstCategory(firstCategoryVoList);
List<Map<String, Object>> childList = new ArrayList<>();
categoryList.forEach(firstCategory -> {
int firstCategoryId = firstCategory.getId();
//查询第二级类目
List<Category> secondCategoryList = categoryDao.queryByPid(firstCategoryId);
List<Integer> secondCategoryIdList = secondCategoryList.stream().map(Category::getId).collect(Collectors.toList());
//查询三级类目
List<Category> thirdCategoryList = categoryDao.queryByPids(secondCategoryIdList);
List<TransverseCategory> secondCategoryVoList = secondCategoryList.stream().map(e -> TransverseCategory.ofTitle(e)).collect(Collectors.toList());
List<TransverseCategory> thirdCategoryVoList = thirdCategoryList.stream().map(e -> TransverseCategory.ofTitle(e)).collect(Collectors.toList());
Map<String, Object> valueMap = new HashMap<>();
valueMap.put("firstCategoryId", firstCategory.getId());
valueMap.put("secondCategory", secondCategoryVoList);
valueMap.put("thirdCategory", thirdCategoryVoList);
childList.add(valueMap);
});
transverseCategoryVo.setChildCategory(childList);
return Result.success(transverseCategoryVo);
} catch (Exception e) {
logger.error("获取类目横向展示出错:{}", e);
}
return Result.failed();
}
}
......@@ -42,4 +42,12 @@ public interface CategoryService {
* @return
*/
Result findNames(CategoryRequestDto dto);
/**
* 查价页面横向展示类目
* @param dto
* @return
*/
Result findCategoryByTransverse(CategoryRequestDto dto);
}
......@@ -4,7 +4,9 @@ import com.alibaba.fastjson.JSON;
import com.wwdz.ch.core.consts.ResultCode;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dto.request.BidRecordRequestDto;
import com.wwdz.ch.wx.entity.request.CategoryRequestDto;
import com.wwdz.ch.wx.entity.request.QueryPriceRequestDto;
import com.wwdz.ch.wx.service.CategoryService;
import com.wwdz.ch.wx.service.QueryPriceService;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
......@@ -26,6 +28,9 @@ public class QueryPriceController {
@Autowired
QueryPriceService queryPriceService;
@Autowired
CategoryService categoryService;
@ApiOperation(value = "查价价格详情")
@PostMapping("/findDetails")
public Result findDetails(@RequestBody QueryPriceRequestDto dto) {
......@@ -45,4 +50,11 @@ public class QueryPriceController {
}
return queryPriceService.findBidRecord(dto);
}
@ApiOperation(value = "横向类目查询")
@PostMapping("/findTransverseCategory")
public Result findTransverseCategory(@RequestBody CategoryRequestDto dto) {
return categoryService.findCategoryByTransverse(dto);
}
}
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