|
@@ -1,12 +1,17 @@
|
|
|
package com.miaxis.app.controller.extension;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.miaxis.common.constant.Constants;
|
|
|
import com.miaxis.common.core.controller.BaseController;
|
|
|
import com.miaxis.common.core.domain.Response;
|
|
|
import com.miaxis.common.core.domain.entity.UserInfo;
|
|
|
+import com.miaxis.common.exception.CustomException;
|
|
|
import com.miaxis.common.utils.SecurityUtils;
|
|
|
+import com.miaxis.extension.dto.ExtensionSettleDTO;
|
|
|
import com.miaxis.extension.service.IWxExtensionIncomeService;
|
|
|
import com.miaxis.extension.vo.ExtensionIncomeVo;
|
|
|
+import com.miaxis.spread.domain.WxSpreadRelation;
|
|
|
+import com.miaxis.spread.service.IWxSpreadRelationService;
|
|
|
import com.miaxis.user.service.IUserInfoService;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
@@ -24,7 +29,7 @@ import java.util.List;
|
|
|
*/
|
|
|
@RestController
|
|
|
@RequestMapping(Constants.STUDENT_PREFIX + "/extension/income")
|
|
|
-@Api(tags={"【H5-分成收益】"})
|
|
|
+@Api(tags={"【H5-推广积分】"})
|
|
|
@AllArgsConstructor
|
|
|
public class WxExtensionIncomeController extends BaseController {
|
|
|
|
|
@@ -32,30 +37,34 @@ public class WxExtensionIncomeController extends BaseController {
|
|
|
|
|
|
private final IUserInfoService userInfoService;
|
|
|
|
|
|
-// /**
|
|
|
-// * 查询收益列表
|
|
|
-// */
|
|
|
-// @GetMapping(value = "/extensionIncomeList")
|
|
|
-// @ApiOperation("查询收益列表")
|
|
|
-// @ApiImplicitParam(name = "nickName", value = "微信昵称", dataType = "string", required = false)
|
|
|
-// public ResponsePageInfo<WxGzhExtensionIncomeVo> extensionIncomeList(String nickName) {
|
|
|
-// UserInfo userInfo = SecurityUtils.getLoginUser().getStudent();
|
|
|
-// startPage();
|
|
|
-// List<WxGzhExtensionIncomeVo> incomeDtos = extensionIncomeService.extensionIncomeList(userInfo.getOpenid(),nickName);
|
|
|
-// return toResponsePageInfo(incomeDtos);
|
|
|
-// }
|
|
|
+ private final IWxSpreadRelationService wxSpreadRelationService;
|
|
|
|
|
|
|
|
|
-// /**
|
|
|
-// * 查询收益金额(总金额、已提现金额、未提现金额)
|
|
|
-// */
|
|
|
-// @GetMapping(value = "/extensionIncomePrice")
|
|
|
-// @ApiOperation("查询收益金额(总金额、已提现金额、未提现金额)")
|
|
|
-// public Response<ExtensionIncomeVo> extensionIncomePrice() {
|
|
|
-// UserInfo userInfo = SecurityUtils.getLoginUser().getStudent();
|
|
|
-// ExtensionIncomeVo incomePrice = extensionIncomeService.extensionIncomePrice(userInfo.getOpenid());
|
|
|
-// return Response.success(incomePrice);
|
|
|
-// }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询收益金额(总金额、已提现金额、未提现金额)
|
|
|
+ */
|
|
|
+ @GetMapping(value = "/extensionIncomePrice")
|
|
|
+ @ApiOperation("对下级结算")
|
|
|
+ public Response extensionIncomePrice(ExtensionSettleDTO extensionSettleDTO) {
|
|
|
+ UserInfo userInfo = SecurityUtils.getLoginUser().getStudent();
|
|
|
+ //查询该下级用户的上级是否为当前用户
|
|
|
+ WxSpreadRelation wxSpreadRelation = wxSpreadRelationService.getOne(new QueryWrapper<WxSpreadRelation>().eq("openid", extensionSettleDTO.getOpenid()));
|
|
|
+ if (wxSpreadRelation!= null && wxSpreadRelation.getParentOpenid().equals(userInfo.getOpenid())){
|
|
|
+ //进行结算
|
|
|
+ UserInfo downUserInfo = userInfoService.getOne(new QueryWrapper<UserInfo>().eq("openid", extensionSettleDTO.getOpenid()));
|
|
|
+ if (downUserInfo.getAchievement()< extensionSettleDTO.getSettlePoints()){
|
|
|
+ throw new CustomException("积分不足");
|
|
|
+ }
|
|
|
+ //更新积分
|
|
|
+ downUserInfo.setAchievement(downUserInfo.getAchievement()-extensionSettleDTO.getSettlePoints());
|
|
|
+ downUserInfo.setAchievementSettled(downUserInfo.getAchievementSettled()+extensionSettleDTO.getSettlePoints());
|
|
|
+ userInfoService.updateById(downUserInfo);
|
|
|
+ }else{
|
|
|
+ throw new CustomException("该下级不存在或不是本用户的下级");
|
|
|
+ }
|
|
|
+ return Response.success();
|
|
|
+ }
|
|
|
|
|
|
|
|
|
/**
|