临时提交
This commit is contained in:
parent
76714ad044
commit
fca590fbd3
|
@ -116,7 +116,14 @@ public interface IStoreService
|
|||
/**
|
||||
* ids查询列表
|
||||
*/
|
||||
List<StoreVo> selectSmStoreListByIds(List<Long> ids);
|
||||
default List<StoreVo> selectSmStoreListByIds(List<Long> ids) {
|
||||
return selectSmStoreListByIds(ids, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* ids查询列表
|
||||
*/
|
||||
List<StoreVo> selectSmStoreListByIds(List<Long> ids, Long userId);
|
||||
|
||||
/**
|
||||
* 用户ID查询店铺列表
|
||||
|
|
|
@ -290,14 +290,16 @@ public class StoreServiceImpl implements IStoreService
|
|||
* ids查询列表
|
||||
*
|
||||
* @param ids
|
||||
* @param userId
|
||||
*/
|
||||
@Override
|
||||
public List<StoreVo> selectSmStoreListByIds(List<Long> ids) {
|
||||
public List<StoreVo> selectSmStoreListByIds(List<Long> ids, Long userId) {
|
||||
if (CollectionUtils.isEmptyElement(ids)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
StoreQuery query = new StoreQuery();
|
||||
query.setStoreIds(ids);
|
||||
query.setUserId(userId);
|
||||
return selectSmStoreList(query);
|
||||
}
|
||||
|
||||
|
|
|
@ -89,6 +89,7 @@ public class TransactionBill extends BaseEntity implements Payable
|
|||
@Excel(name = "手续费")
|
||||
@ApiModelProperty("手续费")
|
||||
@Min(value = 0, message = "手续费不允许小于0", groups = { ValidGroup.Withdraw.class})
|
||||
@JsonView(JsonViewProfile.AppMch.class)
|
||||
private BigDecimal serviceCharge;
|
||||
|
||||
@ApiModelProperty("订单状态:1未支付,2支付成功,3已退款,4已取消")
|
||||
|
@ -96,6 +97,7 @@ public class TransactionBill extends BaseEntity implements Payable
|
|||
private String status;
|
||||
|
||||
@ApiModelProperty("渠道id")
|
||||
@JsonView(JsonViewProfile.App.class)
|
||||
private Long channelId;
|
||||
|
||||
@ApiModelProperty("到账后余额")
|
||||
|
@ -104,6 +106,7 @@ public class TransactionBill extends BaseEntity implements Payable
|
|||
|
||||
@ApiModelProperty("支付成功的时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonView(JsonViewProfile.App.class)
|
||||
private Date payTime;
|
||||
|
||||
@ApiModelProperty("支付过期时间")
|
||||
|
@ -111,10 +114,11 @@ public class TransactionBill extends BaseEntity implements Payable
|
|||
private Date expireTime;
|
||||
|
||||
@ApiModelProperty("交易账号(银行卡号、微信openId)")
|
||||
@JsonView(JsonViewProfile.AppMch.class)
|
||||
@JsonView(JsonViewProfile.App.class)
|
||||
private String accountNo;
|
||||
|
||||
@ApiModelProperty("已支付/提现金额")
|
||||
@JsonView(JsonViewProfile.App.class)
|
||||
private BigDecimal payedAmount;
|
||||
|
||||
@ApiModelProperty("微信商家提现明细id列表")
|
||||
|
@ -124,6 +128,7 @@ public class TransactionBill extends BaseEntity implements Payable
|
|||
private BigDecimal channelCost;
|
||||
|
||||
@ApiModelProperty("设备充值状态,0未充值,1充值成功")
|
||||
@JsonView(JsonViewProfile.App.class)
|
||||
private String deviceRechargeStatus;
|
||||
|
||||
@ApiModelProperty("套餐id")
|
||||
|
@ -139,7 +144,7 @@ public class TransactionBill extends BaseEntity implements Payable
|
|||
@ApiModelProperty("套餐时长单位")
|
||||
@NotBlank(message = "套餐时长单位不允许为空", groups = {ValidGroup.Recharge.class})
|
||||
@DictValid(type = DictTypeConstants.TIME_UNIT, message = "非法的套餐时长单位", groups = {ValidGroup.Recharge.class})
|
||||
@JsonView(JsonViewProfile.AppUser.class)
|
||||
@JsonView(JsonViewProfile.App.class)
|
||||
private String suitTimeUnit;
|
||||
|
||||
@ApiModelProperty("套餐开始使用时间")
|
||||
|
@ -179,18 +184,23 @@ public class TransactionBill extends BaseEntity implements Payable
|
|||
private String deviceMac;
|
||||
|
||||
@ApiModelProperty("总计退款金额")
|
||||
@JsonView(JsonViewProfile.App.class)
|
||||
private BigDecimal refundAmount;
|
||||
|
||||
@ApiModelProperty("商户退款金额")
|
||||
@JsonView(JsonViewProfile.AppMch.class)
|
||||
private BigDecimal refundMchAmount;
|
||||
|
||||
@ApiModelProperty("服务费退款金额")
|
||||
@JsonView(JsonViewProfile.AppMch.class)
|
||||
private BigDecimal refundServiceAmount;
|
||||
|
||||
@ApiModelProperty("支付凭证")
|
||||
@JsonView(JsonViewProfile.AppMch.class)
|
||||
private String payPicture;
|
||||
|
||||
@ApiModelProperty("提现方式")
|
||||
@JsonView(JsonViewProfile.AppMch.class)
|
||||
private String withdrawType;
|
||||
|
||||
/**
|
||||
|
|
|
@ -28,6 +28,7 @@ public class TransactionBillVO extends TransactionBill {
|
|||
private String channelName;
|
||||
|
||||
@ApiModelProperty("商户手机号")
|
||||
@JsonView(JsonViewProfile.AppMch.class)
|
||||
private String mchMobile;
|
||||
|
||||
@ApiModelProperty("设备编号")
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.ruoyi.ss.transactionBill.service;
|
|||
|
||||
import com.ruoyi.common.core.domain.ValidateResult;
|
||||
import com.ruoyi.ss.transactionBill.domain.bo.RechargeBO;
|
||||
import com.ruoyi.ss.transactionBill.domain.vo.TransactionBillVO;
|
||||
|
||||
/**
|
||||
* 2024/4/22
|
||||
|
@ -30,4 +31,10 @@ public interface TransactionBillValidator {
|
|||
*/
|
||||
boolean canRechargeOnline(Long deviceId);
|
||||
|
||||
/**
|
||||
* 判断用户是否订单收款人
|
||||
* @param bill 订单
|
||||
* @param userId 用户ID
|
||||
*/
|
||||
boolean isMch(TransactionBillVO bill, Long userId);
|
||||
}
|
||||
|
|
|
@ -14,6 +14,7 @@ import com.ruoyi.ss.suit.domain.SuitVo;
|
|||
import com.ruoyi.ss.suit.service.SuitService;
|
||||
import com.ruoyi.ss.transactionBill.domain.TransactionBill;
|
||||
import com.ruoyi.ss.transactionBill.domain.bo.RechargeBO;
|
||||
import com.ruoyi.ss.transactionBill.domain.vo.TransactionBillVO;
|
||||
import com.ruoyi.ss.transactionBill.service.TransactionBillService;
|
||||
import com.ruoyi.ss.transactionBill.service.TransactionBillValidator;
|
||||
import com.ruoyi.ss.user.domain.SmUserVo;
|
||||
|
@ -156,4 +157,9 @@ public class TransactionBillValidatorImpl extends BaseValidator implements Trans
|
|||
// 4G和WIFI可以进行在线充值
|
||||
return device.getModelTags().contains(ModelTag.FOUR_G.getTag()) || device.getModelTags().contains(ModelTag.WIFI.getTag());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isMch(TransactionBillVO bill, Long userId) {
|
||||
return bill != null && bill.getMchId() != null && bill.getMchId().equals(userId);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,36 @@
|
|||
package com.ruoyi.web.controller.mch;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonView;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.domain.JsonViewProfile;
|
||||
import com.ruoyi.ss.store.domain.StoreVo;
|
||||
import com.ruoyi.ss.store.service.IStoreService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author wjh
|
||||
* 2024/7/30
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/mch/store")
|
||||
public class MchStoreController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private IStoreService storeService;
|
||||
|
||||
@GetMapping("/listByIds/{ids}")
|
||||
@JsonView(JsonViewProfile.AppMch.class)
|
||||
public AjaxResult listByIds(@PathVariable List<Long> ids) {
|
||||
List<StoreVo> list = storeService.selectSmStoreListByIds(ids, getUserId());
|
||||
return success(list);
|
||||
}
|
||||
|
||||
}
|
|
@ -1,16 +1,25 @@
|
|||
package com.ruoyi.web.controller.mch;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonView;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.domain.JsonViewProfile;
|
||||
import com.ruoyi.common.utils.ServiceUtil;
|
||||
import com.ruoyi.ss.transactionBill.domain.TransactionBillQuery;
|
||||
import com.ruoyi.ss.transactionBill.domain.vo.TransactionBillVO;
|
||||
import com.ruoyi.ss.transactionBill.service.TransactionAssembler;
|
||||
import com.ruoyi.ss.transactionBill.service.TransactionBillService;
|
||||
import com.ruoyi.ss.transactionBill.service.TransactionBillValidator;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.Collections;
|
||||
|
||||
/**
|
||||
* @author wjh
|
||||
* 2024/7/29
|
||||
|
@ -22,6 +31,12 @@ public class MchTransactionBillController extends BaseController {
|
|||
@Autowired
|
||||
private TransactionBillService transactionBillService;
|
||||
|
||||
@Autowired
|
||||
private TransactionBillValidator transactionBillValidator;
|
||||
|
||||
@Autowired
|
||||
private TransactionAssembler transactionAssembler;
|
||||
|
||||
@ApiOperation("商户查询统计信息")
|
||||
@GetMapping("/count")
|
||||
public AjaxResult count(TransactionBillQuery query)
|
||||
|
@ -30,5 +45,17 @@ public class MchTransactionBillController extends BaseController {
|
|||
return success(transactionBillService.selectCount(query));
|
||||
}
|
||||
|
||||
@ApiOperation("收款人获取订单详情")
|
||||
@GetMapping("/{billId}")
|
||||
@JsonView(JsonViewProfile.AppMch.class)
|
||||
public AjaxResult detail(@PathVariable Long billId) {
|
||||
TransactionBillVO bill = transactionBillService.selectSmTransactionBillByBillId(billId);
|
||||
if (bill == null || !transactionBillValidator.isMch(bill, getUserId())) {
|
||||
return success();
|
||||
}
|
||||
transactionAssembler.assembleChannelName(Collections.singletonList(bill));
|
||||
return AjaxResult.success(bill);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user