Commit d4b6018d by 郑云飞

首页接口修改

parent 4ea2105d
......@@ -3,6 +3,7 @@ package com.yongqi.xinrenli.controller;
import java.util.List;
import java.util.Arrays;
import com.yongqi.common.core.domain.model.LoginUser;
import lombok.RequiredArgsConstructor;
import javax.servlet.http.HttpServletResponse;
......@@ -49,6 +50,25 @@ public class DbOrderController extends BaseController {
}
/**
* 用户需求广场
*/
@SaCheckPermission("xinrenli:order:userDemandSquare")
@GetMapping("/userDemandSquare")
public TableDataInfo<DbOrderVo> userDemandSquare(DbOrderBo bo, PageQuery pageQuery) {
return iDbOrderService.userDemandSquare(bo, pageQuery);
}
/**
* 我的需求
*/
@SaCheckPermission("xinrenli:order:MyNeeds")
@GetMapping("/MyNeeds")
public TableDataInfo<DbOrderVo> MyNeeds(DbOrderBo bo, PageQuery pageQuery) {
LoginUser loginUser = getLoginUser();
return iDbOrderService.myNeeds(bo, pageQuery, loginUser);
}
/**
* 导出订单列表
*/
@SaCheckPermission("xinrenli:order:export")
......
......@@ -29,6 +29,10 @@ public class DbFile {
*/
private String serviceType;
/**
* 业务id
*/
private Long serviceId;
/**
* 文件地址
*/
private String url;
......
package com.yongqi.xinrenli.domain;
import com.baomidou.mybatisplus.annotation.*;
import com.yongqi.common.core.domain.BaseEntity;
import lombok.Data;
import java.util.Date;
......@@ -52,6 +53,10 @@ public class DbOrder {
*/
private BigDecimal budget;
/**
* 成交金额
*/
private BigDecimal actualAmount;
/**
* 备注说明
*/
private String remark;
......@@ -64,6 +69,10 @@ public class DbOrder {
*/
private String createUser;
/**
* 创建时间
*/
private String createTime;
/**
* 修改人
*/
private String modifyUser;
......
package com.yongqi.xinrenli.domain.bo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.yongqi.common.core.validate.AddGroup;
import com.yongqi.common.core.validate.EditGroup;
import lombok.Data;
......@@ -74,6 +75,11 @@ public class DbOrderBo extends BaseEntity {
private BigDecimal budget;
/**
* 成交金额
*/
private BigDecimal actualAmount;
/**
* 备注说明
*/
@NotBlank(message = "备注说明不能为空", groups = {AddGroup.class, EditGroup.class})
......
......@@ -32,6 +32,11 @@ public class DbFileVo {
private String serviceType;
/**
* 业务id
*/
private Long serviceId;
/**
* 文件地址
*/
@ExcelProperty(value = "文件地址")
......
......@@ -2,6 +2,7 @@ package com.yongqi.xinrenli.domain.vo;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
......@@ -67,6 +68,11 @@ public class DbOrderVo {
*/
@ExcelProperty(value = "预算金额")
private BigDecimal budget;
/**
* 成交金额
*/
@ExcelProperty(value = "成交金额")
private BigDecimal actualAmount;
/**
* 备注说明
......@@ -103,6 +109,9 @@ public class DbOrderVo {
*/
@ExcelProperty(value = "删除状态 0:未删除 1:删除")
private Integer deleteStatus;
/**
* 文件列表
*/
private List<DbFileVo> fileVos;
}
package com.yongqi.xinrenli.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author zyf
* @date 2023/3/14
*/
public enum DeleteStatusEnum {
OK("0", "正常"), DELETED("1", "删除");
private final String code;
private final String info;
DeleteStatusEnum(String code, String info) {
this.code = code;
this.info = info;
}
public String getCode() {
return code;
}
public String getInfo() {
return info;
}
}
package com.yongqi.xinrenli.enums;
import com.yongqi.common.enums.UserType;
import com.yongqi.common.utils.StringUtils;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author zyf
* @date 2023/3/14
*/
@Getter
@AllArgsConstructor
public enum FileEnumServiceType {
ORDER("order"), DISABLE("停用"), DELETED("删除");
private final String serviceTyp;
public static FileEnumServiceType getUserType(String str) {
for (FileEnumServiceType value : values()) {
if (StringUtils.contains(str, value.getServiceTyp())) {
return value;
}
}
throw new RuntimeException("'UserType' not found By " + str);
}
}
......@@ -4,6 +4,8 @@ import com.yongqi.xinrenli.domain.DbOrder;
import com.yongqi.xinrenli.domain.vo.DbOrderVo;
import com.yongqi.common.core.mapper.BaseMapperPlus;
import java.math.BigDecimal;
/**
* 订单Mapper接口
*
......@@ -12,4 +14,6 @@ import com.yongqi.common.core.mapper.BaseMapperPlus;
*/
public interface DbOrderMapper extends BaseMapperPlus<DbOrderMapper, DbOrder, DbOrderVo> {
BigDecimal getMinAmount();
}
package com.yongqi.xinrenli.service;
import com.yongqi.common.core.domain.model.LoginUser;
import com.yongqi.xinrenli.domain.vo.DbOrderVo;
import com.yongqi.xinrenli.domain.bo.DbOrderBo;
import com.yongqi.common.core.page.TableDataInfo;
......@@ -45,4 +46,15 @@ public interface IDbOrderService {
* 校验并批量删除订单信息
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
/**
* 需求广场
*/
TableDataInfo<DbOrderVo> userDemandSquare(DbOrderBo bo, PageQuery pageQuery);
/**
* 我的需求
*/
TableDataInfo<DbOrderVo> myNeeds(DbOrderBo bo, PageQuery pageQuery, LoginUser loginUser);
}
package com.yongqi.xinrenli.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.yongqi.common.core.domain.model.LoginUser;
import com.yongqi.common.utils.StringUtils;
import com.yongqi.common.core.page.TableDataInfo;
import com.yongqi.common.core.domain.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.yongqi.xinrenli.domain.DbFile;
import com.yongqi.xinrenli.domain.vo.DbFileVo;
import com.yongqi.xinrenli.enums.DeleteStatusEnum;
import com.yongqi.xinrenli.enums.FileEnumServiceType;
import com.yongqi.xinrenli.mapper.DbFileMapper;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import com.yongqi.xinrenli.domain.bo.DbOrderBo;
......@@ -15,6 +22,8 @@ import com.yongqi.xinrenli.domain.DbOrder;
import com.yongqi.xinrenli.mapper.DbOrderMapper;
import com.yongqi.xinrenli.service.IDbOrderService;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Collection;
......@@ -30,13 +39,20 @@ import java.util.Collection;
public class DbOrderServiceImpl implements IDbOrderService {
private final DbOrderMapper baseMapper;
private final DbFileMapper fileMapper;
/**
* 查询订单
*/
@Override
public DbOrderVo queryById(Long id) {
return baseMapper.selectVoById(id);
DbOrderVo dbOrderVo = baseMapper.selectVoById(id);
List<DbFileVo> dbFileVos = fileMapper.selectVoList(Wrappers.<DbFile>lambdaQuery()
.eq(DbFile::getServiceType, FileEnumServiceType.ORDER.getServiceTyp())
.eq(DbFile::getServiceId, dbOrderVo.getId())
.eq(DbFile::getDeleteStatus, DeleteStatusEnum.OK.getCode()));
dbOrderVo.setFileVos(dbFileVos);
return dbOrderVo;
}
/**
......@@ -117,4 +133,61 @@ public class DbOrderServiceImpl implements IDbOrderService {
}
return baseMapper.deleteBatchIds(ids) > 0;
}
/**
* 用户需求广场
*
* @param bo
* @param pageQuery
* @return
*/
@Override
public TableDataInfo<DbOrderVo> userDemandSquare(DbOrderBo bo, PageQuery pageQuery) {
BigDecimal minamount = baseMapper.getMinAmount();
LambdaQueryWrapper<DbOrder> lqw = Wrappers.lambdaQuery();
lqw.ge(DbOrder::getActualAmount, minamount);
lqw.eq(DbOrder::getDeleteStatus, 0);
Page<DbOrderVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
result.getRecords().forEach(record -> {
DbFileVo dbFileVo = fileMapper.selectVoOne(Wrappers.<DbFile>lambdaQuery()
.eq(DbFile::getServiceId, record.getId())
.eq(DbFile::getServiceType, FileEnumServiceType.ORDER.getServiceTyp())
.eq(DbFile::getSort, 1)
.eq(DbFile::getDeleteStatus, DeleteStatusEnum.OK.getCode()));
List<DbFileVo> vos = new ArrayList<>();
if (ObjectUtils.isNotEmpty(dbFileVo)) {
vos.add(dbFileVo);
}
record.setFileVos(vos);
});
return TableDataInfo.build(result);
}
/**
* 我的需求
*
* @param bo
* @param pageQuery
* @param loginUser
* @return
*/
@Override
public TableDataInfo<DbOrderVo> myNeeds(DbOrderBo bo, PageQuery pageQuery, LoginUser loginUser) {
bo.setUserId(loginUser.getUserId());
LambdaQueryWrapper<DbOrder> lqw = buildQueryWrapper(bo);
Page<DbOrderVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
result.getRecords().forEach(record -> {
DbFileVo dbFileVo = fileMapper.selectVoOne(Wrappers.<DbFile>lambdaQuery()
.eq(DbFile::getServiceId, record.getId())
.eq(DbFile::getServiceType, FileEnumServiceType.ORDER.getServiceTyp())
.eq(DbFile::getSort, 1)
.eq(DbFile::getDeleteStatus, DeleteStatusEnum.OK.getCode()));
List<DbFileVo> vos = new ArrayList<>();
if (ObjectUtils.isNotEmpty(dbFileVo)) {
vos.add(dbFileVo);
}
record.setFileVos(vos);
});
return TableDataInfo.build(result);
}
}
......@@ -22,5 +22,7 @@
<result property="deleteStatus" column="delete_status"/>
</resultMap>
<select id="getMinAmount" resultType="java.math.BigDecimal">
select min_amount from db_config;
</select>
</mapper>
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