Commit 7597afb2 authored by shiyu's avatar shiyu

钱币设置

parent 8d828fab
......@@ -41,6 +41,8 @@ public class ShiroConfig {
filterChainDefinitionMap.put("/admin/auth/403", "anon");
filterChainDefinitionMap.put("/actuator/health", "anon");
// filterChainDefinitionMap.put("/admin/**", "anon");
filterChainDefinitionMap.put("/admin/**", "authc");
shiroFilterFactoryBean.setLoginUrl("/admin/auth/401");
shiroFilterFactoryBean.setSuccessUrl("/admin/auth/index");
......
package com.wwdz.ch.admin.controller;
import com.wwdz.ch.admin.entity.vo.BidRecordVo;
import com.wwdz.ch.admin.entity.vo.BidRecordRequestDto;
import com.wwdz.ch.admin.service.BidRecordService;
import com.wwdz.ch.admin.util.AuthSupport;
import com.wwdz.ch.core.type.ListResult;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.type.SimpleResult;
import com.wwdz.ch.db.domain.BidRecord;
import com.wwdz.ch.db.service.BidRecordService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
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.*;
import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.stream.Collectors;
@RestController
@RequestMapping("/admin/bidrecord")
@Validated
@Api
public class BidRecordController {
private static final Logger logger = LoggerFactory.getLogger(BidRecordController.class);
......@@ -31,24 +27,36 @@ public class BidRecordController {
@Autowired
private BidRecordService bidRecordService;
// @RequiresPermissions("admin:category:list")
// @RequiresPermissionsDesc(menu = { "商场管理", "成交记录管理" }, button = "查询")
@GetMapping("/list")
@ApiOperation(value = "成交记录列表")
public ListResult<BidRecordVo> list(@ApiParam("分类id") Integer cid) {
public ListResult<BidRecordRequestDto> list(@ApiParam("分类id") Integer cid) {
logger.info("【请求开始】操作人:[" + AuthSupport.userName()+ "] 商场管理->成交记录->查询,请求参数:cid:{}", cid);
List<BidRecord> collectList = bidRecordService.queryByCid(cid);
List<BidRecordVo> data = collectList.parallelStream().map(a -> new BidRecordVo(a)).collect(Collectors.toList());
return new ListResult<BidRecordVo>(data, data.size());
List<BidRecordRequestDto> data = collectList.parallelStream().map(a -> new BidRecordRequestDto(a)).collect(Collectors.toList());
return new ListResult<BidRecordRequestDto>(data, data.size());
}
@PostMapping("/add")
@ApiOperation(value = "添加成交记录")
public SimpleResult<Boolean> add(@ApiParam("成交记录数据") @RequestBody BidRecordVo record) {
public SimpleResult<Boolean> add(@ApiParam("成交记录数据") @RequestBody BidRecordRequestDto record) {
bidRecordService.add(record.toDo());
return new SimpleResult<>(true);
}
@PostMapping("/findDetail")
public Result findDetail(@RequestBody BidRecordRequestDto record) {
BidRecord bidRecord = bidRecordService.queryById(record.getId());
return Result.success(bidRecord);
}
@PostMapping("/update")
@ApiOperation(value = "修改成交记录")
public Result update(@ApiParam("修改成交记录") @RequestBody BidRecordRequestDto record) {
bidRecordService.updateById(record.toDo());
return Result.success();
}
@GetMapping("/delete")
@ApiOperation(value = "删除成交记录")
public SimpleResult<Boolean> delete(@ApiParam("成交记录ID") @NotNull Long id) {
......
......@@ -17,7 +17,7 @@ import org.springframework.web.bind.annotation.*;
* 钱币设置
*/
@RestController
@RequestMapping("/admin/setCoin")
@RequestMapping("/admin/item")
public class ItemController {
private static final Logger logger = LoggerFactory.getLogger(ItemController.class);
......@@ -25,7 +25,7 @@ public class ItemController {
@Autowired
private ItemService itemService;
@RequiresPermissions("admin:setCoin:findDetail")
@RequiresPermissions("admin:item:findDetail")
@RequiresPermissionsDesc(menu = { "钱币列表", "钱币明细" }, button = "查询")
@PostMapping("/findDetail")
public Result findDetail(@RequestBody CoinRequestDto coinRequestDto) {
......@@ -36,7 +36,7 @@ public class ItemController {
}
@RequiresPermissions("admin:setCoin:setCoin")
@RequiresPermissions("admin:item:setCoin")
@RequiresPermissionsDesc(menu = { "钱币列表", "钱币设置" }, button = "更新")
@PostMapping("/setCoin")
public Result setCoin(@RequestBody CoinRequestDto coinRequestDto) {
......
......@@ -2,15 +2,17 @@ package com.wwdz.ch.admin.entity.vo;
import com.qiniu.util.StringUtils;
import com.wwdz.ch.db.domain.BidRecord;
import com.xxdxxs.entity.Entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Arrays;
import java.util.List;
@ApiModel(value = "BidRecordVo", description = "成交记录前端交互VO")
public class BidRecordVo implements Serializable {
@ApiModel(value = "BidRecordRequestDto", description = "成交记录前端交互VO")
@Data
public class BidRecordRequestDto implements Entity {
private static final long serialVersionUID = 4014894220574552837L;
......@@ -35,27 +37,37 @@ public class BidRecordVo implements Serializable {
@ApiModelProperty(value = "成交价格", name = "price")
private Long price;
/**
* 额外的成交信息
*/
private String extra;
/**
* 成交链接
*/
private String link;
public BidRecord toDo() {
BidRecord record = new BidRecord();
record.setBidtime(bidtime);
record.setBidTime(bidtime);
record.setBuyer(buyer);
record.setIsDeleted(false);
record.setIsDeleted(0);
record.setCid(cid);
record.setImages(StringUtils.join(images, ";"));
record.setPlatform(platform);
record.setPrice(price);
record.setExtra("");
record.setLink("");
record.setExtra(extra);
record.setLink(link);
return record;
}
public BidRecordVo() {}
public BidRecordRequestDto() {}
public BidRecordVo(BidRecord record) {
public BidRecordRequestDto(BidRecord record) {
this.id = record.getId();
this.cid = record.getCid();
this.images = Arrays.asList(record.getImages().split(";"));
this.bidtime = record.getBidtime();
this.bidtime = record.getBidTime();
this.price = record.getPrice();
this.buyer = record.getBuyer();
this.platform = record.getPlatform();
......
package com.wwdz.ch.admin.impl;
import com.wwdz.ch.admin.service.BidRecordService;
import com.wwdz.ch.db.domain.BidRecord;
import com.wwdz.ch.db.manager.BidRecordManager;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class BidRecordServiceImpl implements BidRecordService {
@Autowired
BidRecordManager bidRecordManager;
@Override
public void add(BidRecord record) {
bidRecordManager.add(record);
}
@Override
public int updateById(BidRecord record) {
return bidRecordManager.updateById(record);
}
@Override
public BidRecord queryById(Long id) {
return bidRecordManager.queryById(id);
}
@Override
public List<BidRecord> queryByCid(Integer cid) {
return bidRecordManager.queryByCid(cid);
}
@Override
public void deleteById(Long id) {
bidRecordManager.deleteById(id);
}
}
......@@ -50,6 +50,7 @@ public class ItemServiceImpl implements ItemService {
if (ObjectUtils.isEmpty(coinRequestDto.getIsRefresh()) || coinRequestDto.getIsRefresh() != 1) {
CoinVo coinVo = new CoinVo();
Item item = itemManager.findDetails(coinRequestDto.getId());
coinVo = convertEntity(item);
EntityMapper.copyAttribute(item, coinVo);
map.put("isRefresh", 0);
map.put("data", coinVo);
......
......@@ -9,7 +9,6 @@ import org.springframework.stereotype.Service;
@Service
public class OperateLogServiceImpl implements OperateLogService {
@Autowired
OperateLogManager operateLogManager;
......
package com.wwdz.ch.admin.service;
import com.wwdz.ch.db.domain.BidRecord;
import java.util.List;
public interface BidRecordService {
void add(BidRecord record);
int updateById(BidRecord record);
BidRecord queryById(Long id);
List<BidRecord> queryByCid (Integer cid);
void deleteById (Long id);
}
......@@ -6,46 +6,17 @@ import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface BidRecordMapper {
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
long countByExample(BidRecordExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
int deleteByExample(BidRecordExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
int deleteByPrimaryKey(Long id);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
int insert(BidRecord record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
int insertSelective(BidRecord record);
/**
......@@ -75,12 +46,6 @@ public interface BidRecordMapper {
*/
List<BidRecord> selectByExampleSelective(@Param("example") BidRecordExample example, @Param("selective") BidRecord.Column ... selective);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
List<BidRecord> selectByExample(BidRecordExample example);
/**
......@@ -92,52 +57,13 @@ public interface BidRecordMapper {
*/
BidRecord selectByPrimaryKeySelective(@Param("id") Long id, @Param("selective") BidRecord.Column ... selective);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
BidRecord selectByPrimaryKey(Long id);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
int updateByExampleSelective(@Param("record") BidRecord record, @Param("example") BidRecordExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
int updateByExample(@Param("record") BidRecord record, @Param("example") BidRecordExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
int updateByPrimaryKeySelective(BidRecord record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table bid_record
*
* @mbg.generated
*/
int updateByPrimaryKey(BidRecord record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table dts_category
*
* @mbg.generated
* @project https://github.com/itfsw/mybatis-generator-plugin
*/
int logicalDeleteByPrimaryKey(Long id);
}
\ No newline at end of file
......@@ -3,9 +3,9 @@ package com.wwdz.ch.db.dao;
import com.wwdz.ch.db.domain.OperateLog;
import com.wwdz.ch.db.domain.OperateLogExample;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface OperateLogMapper {
long countByExample(OperateLogExample example);
......
package com.wwdz.ch.db.manager;
import com.wwdz.ch.db.domain.BidRecord;
import java.util.List;
public interface BidRecordManager {
void add(BidRecord record);
int updateById(BidRecord record);
BidRecord queryById(Long id);
List<BidRecord> queryByCid (Integer cid);
void deleteById (Long id);
}
\ No newline at end of file
package com.wwdz.ch.db.service;
package com.wwdz.ch.db.manager.impl;
import com.wwdz.ch.db.dao.BidRecordMapper;
import com.wwdz.ch.db.domain.BidRecord;
import com.wwdz.ch.db.domain.BidRecordExample;
import com.wwdz.ch.db.domain.Category;
import com.wwdz.ch.db.domain.FavoritesExample;
import com.wwdz.ch.db.manager.BidRecordManager;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
@Service
public class BidRecordService {
public class BidRecordManagerImpl implements BidRecordManager {
@Resource
private BidRecordMapper bidRecordMapper;
public void add(BidRecord record) {
record.setCreated(LocalDateTime.now());
record.setUpdated(LocalDateTime.now());
Date now = new Date();
record.setCreateTime(now);
record.setUpdateTime(now);
bidRecordMapper.insertSelective(record);
}
public int updateById(BidRecord record) {
record.setUpdated(LocalDateTime.now());
record.setUpdateTime(new Date());
return bidRecordMapper.updateByPrimaryKeySelective(record);
}
public List<BidRecord> queryByCid(Integer cid) {
BidRecordExample example = new BidRecordExample();
example.createCriteria().andCidEqualTo(cid).andIsDeletedEqualTo(false);
example.setOrderByClause("created desc");
example.createCriteria().andCidEqualTo(cid).andIsDeletedEqualTo(0);
example.setOrderByClause("update_time desc");
return bidRecordMapper.selectByExample(example);
}
public BidRecord queryById(Long id) {
BidRecordExample example = new BidRecordExample();
BidRecordExample.Criteria criteria = example.createCriteria();
criteria.andIdEqualTo(id);
return bidRecordMapper.selectOneByExample(example);
}
public void deleteById(Long id) {
bidRecordMapper.logicalDeleteByPrimaryKey(id);
BidRecordExample example = new BidRecordExample();
example.createCriteria().andIdEqualTo(id);
BidRecord record = new BidRecord();
record.setId(id);
record.setIsDeleted(1);
bidRecordMapper.updateByExampleSelective(record, example);
}
}
......@@ -8,6 +8,8 @@ import com.wwdz.ch.db.manager.ItemManager;
import com.xxdxxs.db.component.JdbcHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import org.springframework.util.CollectionUtils;
import java.util.Date;
import java.util.List;
......@@ -32,7 +34,11 @@ public class ItemManagerImpl implements ItemManager {
ItemExample example = new ItemExample();
ItemExample.Criteria criteria = example.createCriteria();
criteria.andIdEqualTo(id);
return itemMapper.selectOneByExample(example);
List<Item> items = itemMapper.selectByExampleWithBLOBs(example);
if (!CollectionUtils.isEmpty(items)) {
return items.get(0);
}
return new Item();
}
@Override
......
......@@ -4,12 +4,13 @@ import com.wwdz.ch.db.dao.OperateLogMapper;
import com.wwdz.ch.db.domain.OperateLog;
import com.wwdz.ch.db.manager.OperateLogManager;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
@Repository
public class OperateLogManagerImpl implements OperateLogManager {
@Mapper
@Autowired
OperateLogMapper operateLogMapper;
@Override
......
package com.wwdz.ch.wx.web;
import com.alibaba.druid.support.json.JSONUtils;
import com.mysql.jdbc.StringUtils;
import com.wwdz.ch.core.type.ListResult;
import com.wwdz.ch.core.type.SimpleResult;
import com.wwdz.ch.core.util.PriceUtil;
import com.wwdz.ch.core.util.ResponseUtil;
import com.wwdz.ch.db.domain.*;
import com.wwdz.ch.db.service.BidRecordService;
import com.wwdz.ch.db.service.UgcCoinService;
import com.wwdz.ch.wx.annotation.LoginUser;
import com.wwdz.ch.wx.dao.UgcCoinVo;
......@@ -21,11 +16,7 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@RestController
......
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