|
@@ -6,6 +6,8 @@ import com.caimei365.commodity.model.po.CmDistributionTeamProduct;
|
|
|
import com.caimei365.commodity.model.po.CmReportingClub;
|
|
|
import com.caimei365.commodity.model.po.CmReportingMember;
|
|
|
import com.caimei365.commodity.model.vo.ArchiveVo;
|
|
|
+import com.caimei365.commodity.model.vo.CmDistributionVO;
|
|
|
+import com.caimei365.commodity.model.vo.CmReportingMemberVO;
|
|
|
import com.caimei365.commodity.model.vo.PaginationVo;
|
|
|
import com.caimei365.commodity.service.CmReportingClubService;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
@@ -13,9 +15,13 @@ import io.swagger.annotations.ApiImplicitParam;
|
|
|
import io.swagger.annotations.ApiImplicitParams;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
+import java.util.Date;
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
* @创建人 hzg
|
|
@@ -42,11 +48,109 @@ public class ReportingClubApi {
|
|
|
public ResponseJson list(CmDistribution cmDistribution,String clubName,
|
|
|
@RequestParam(value = "pageNum", defaultValue = "1") int pageNum, @RequestParam(value = "pageSize", defaultValue = "20") int pageSize) {
|
|
|
PageHelper.startPage(pageNum, pageSize);
|
|
|
- List<CmReportingMember> cmReportingClubList = cmReportingClubService.getCmReportingClubList(cmDistribution,clubName);
|
|
|
- PaginationVo<CmReportingMember> paginationVo = new PaginationVo(cmReportingClubList);
|
|
|
+ if (StringUtils.isBlank(cmDistribution.getId()) && null == cmDistribution.getParentId()) {
|
|
|
+ return ResponseJson.error("参数异常", null);
|
|
|
+ }
|
|
|
+ List<CmReportingMember> cmReportingClubList = cmReportingClubService.getCmReportingClubList(new CmDistribution()
|
|
|
+ .id(cmDistribution.id())
|
|
|
+ .parentId(cmDistribution.getParentId())
|
|
|
+ , clubName, null, null, null, null, null, null);
|
|
|
+ PaginationVo<CmReportingMemberVO> paginationVo = new PaginationVo(CmReportingMemberVO.setValues(cmReportingClubList));
|
|
|
return ResponseJson.success(paginationVo);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 报备佣金列表
|
|
|
+ */
|
|
|
+ @GetMapping("/reportingDistributionList")
|
|
|
+ public ResponseJson reportingDistributionList(CmDistribution cmDistribution, Integer settleStatus) {
|
|
|
+ if (null == cmDistribution.parentId()||null==settleStatus) {
|
|
|
+ return ResponseJson.error("参数异常!", null);
|
|
|
+ }
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ List<CmDistribution> cmDistributionList = cmReportingClubService.getCmDistributionList(new CmDistribution()
|
|
|
+ .linkMan(cmDistribution.linkMan())
|
|
|
+ .mobile(cmDistribution.mobile())
|
|
|
+ .status(90)
|
|
|
+ .parentId(cmDistribution.parentId()));
|
|
|
+ List<CmDistributionVO> cmDistributionVOS = CmDistributionVO.setValues(cmDistributionList);
|
|
|
+ cmDistributionVOS.forEach(s -> {
|
|
|
+ s.setOrderCount(cmReportingClubService.getCmReportingMemberCount(s.getId(), null, cmDistribution.linkMan(), cmDistribution.mobile(), settleStatus));
|
|
|
+ s.setCommission(cmReportingClubService.getCmReportingMemberCommission(s.getId(), null, cmDistribution.linkMan(), cmDistribution.mobile(), settleStatus));
|
|
|
+ });
|
|
|
+ map.put("orderCount", cmReportingClubService.getCmReportingMemberCount(null, cmDistribution.parentId(), cmDistribution.linkMan(), cmDistribution.mobile(), settleStatus));
|
|
|
+ map.put("commission", cmReportingClubService.getCmReportingMemberCommission(null, cmDistribution.parentId(), cmDistribution.linkMan(), cmDistribution.mobile(), settleStatus));
|
|
|
+ map.put("cmDistributionList", cmDistributionVOS);
|
|
|
+ return ResponseJson.success(map);
|
|
|
+ }
|
|
|
+
|
|
|
+ @GetMapping("/reportingDistributionFrom")
|
|
|
+ public ResponseJson reportingDistributionFrom(CmDistribution cmDistribution, String clubName, Integer settleStatus,
|
|
|
+ @RequestParam(value = "pageNum", defaultValue = "1") int pageNum, @RequestParam(value = "pageSize", defaultValue = "20") int pageSize) {
|
|
|
+ PageHelper.startPage(pageNum, pageSize);
|
|
|
+ if (StringUtils.isBlank(cmDistribution.getId())||null==settleStatus) {
|
|
|
+ return ResponseJson.error("参数异常", null);
|
|
|
+ }
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ CmDistributionVO cmDistributionVO = CmDistributionVO.setValue(cmReportingClubService.getCmDistributionById(cmDistribution.id()));
|
|
|
+ cmDistributionVO.setOrderCount(cmReportingClubService.getCmReportingMemberCount(cmDistributionVO.getId(), null, null, null, settleStatus));
|
|
|
+ cmDistributionVO.setCommission(cmReportingClubService.getCmReportingMemberCommission(cmDistributionVO.getId(), null, null, null, settleStatus));
|
|
|
+
|
|
|
+ List<CmReportingMember> cmReportingClubList = cmReportingClubService.getCmReportingClubList(new CmDistribution()
|
|
|
+ .id(cmDistribution.id())
|
|
|
+ , clubName, settleStatus, null, null, null, null, null);
|
|
|
+ PaginationVo<CmReportingMemberVO> paginationVo = new PaginationVo(CmReportingMemberVO.setValues(cmReportingClubList));
|
|
|
+ map.put("cmDistribution", cmDistributionVO);
|
|
|
+ map.put("paginationVo", paginationVo);
|
|
|
+ return ResponseJson.success(map);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 销售佣金列表
|
|
|
+ */
|
|
|
+ @GetMapping("/splitReportingDistributionList")
|
|
|
+ public ResponseJson splitReportingDistributionList(CmDistribution cmDistribution, Integer splitSettleStatus, Integer payWay) {
|
|
|
+ if (null == cmDistribution.parentId()||null==splitSettleStatus||null==payWay) {
|
|
|
+ return ResponseJson.error("参数异常!", null);
|
|
|
+ }
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ List<CmDistribution> cmDistributionList = cmReportingClubService.getCmDistributionList(new CmDistribution()
|
|
|
+ .linkMan(cmDistribution.linkMan())
|
|
|
+ .mobile(cmDistribution.mobile())
|
|
|
+ .status(90)
|
|
|
+ .parentId(cmDistribution.parentId()));
|
|
|
+ List<CmDistributionVO> cmDistributionVOS = CmDistributionVO.setValues(cmDistributionList);
|
|
|
+ cmDistributionVOS.forEach(s -> {
|
|
|
+ s.setOrderCount(cmReportingClubService.getCmReportingMemberSplitCount(s.getId(), null, cmDistribution.linkMan(), cmDistribution.mobile(), splitSettleStatus, payWay));
|
|
|
+ s.setCommission(cmReportingClubService.getCmReportingMemberSplitCommission(s.getId(), null, cmDistribution.linkMan(), cmDistribution.mobile(), splitSettleStatus, payWay));
|
|
|
+ });
|
|
|
+ map.put("orderCount", cmReportingClubService.getCmReportingMemberSplitCount(null, cmDistribution.parentId(), cmDistribution.linkMan(), cmDistribution.mobile(), splitSettleStatus, payWay));
|
|
|
+ map.put("commission", cmReportingClubService.getCmReportingMemberSplitCommission(null, cmDistribution.parentId(), cmDistribution.linkMan(), cmDistribution.mobile(), splitSettleStatus, payWay));
|
|
|
+ map.put("cmDistributionList", cmDistributionVOS);
|
|
|
+ return ResponseJson.success(map);
|
|
|
+ }
|
|
|
+
|
|
|
+ @GetMapping("/splitReportingDistributionFrom")
|
|
|
+ public ResponseJson splitReportingDistributionFrom(CmDistribution cmDistribution, Integer splitSettleStatus, Integer payWay, String shopOrderNo, String startTime, String entTime,
|
|
|
+ @RequestParam(value = "pageNum", defaultValue = "1") int pageNum, @RequestParam(value = "pageSize", defaultValue = "20") int pageSize) {
|
|
|
+ PageHelper.startPage(pageNum, pageSize);
|
|
|
+ if (StringUtils.isBlank(cmDistribution.getId())||null==splitSettleStatus||null==payWay) {
|
|
|
+ return ResponseJson.error("参数异常", null);
|
|
|
+ }
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ CmDistributionVO cmDistributionVO = CmDistributionVO.setValue(cmReportingClubService.getCmDistributionById(cmDistribution.id()));
|
|
|
+ cmDistributionVO.setOrderCount(cmReportingClubService.getCmReportingMemberSplitCount(cmDistributionVO.getId(), null, null, null, splitSettleStatus, payWay));
|
|
|
+ cmDistributionVO.setCommission(cmReportingClubService.getCmReportingMemberSplitCommission(cmDistributionVO.getId(), null, null, null, splitSettleStatus, payWay));
|
|
|
+
|
|
|
+ List<CmReportingMember> cmReportingClubList = cmReportingClubService.getCmReportingClubList(new CmDistribution()
|
|
|
+ .id(cmDistribution.id())
|
|
|
+ , null, null, payWay, splitSettleStatus, shopOrderNo, startTime, entTime);
|
|
|
+ PaginationVo<CmReportingMemberVO> paginationVo = new PaginationVo(CmReportingMemberVO.setValues(cmReportingClubList));
|
|
|
+ map.put("cmDistribution", cmDistributionVO);
|
|
|
+ map.put("paginationVo", paginationVo);
|
|
|
+ return ResponseJson.success(map);
|
|
|
+ }
|
|
|
+
|
|
|
@ApiOperation("分销团队商品列表")
|
|
|
@ApiImplicitParams({
|
|
|
@ApiImplicitParam(readOnly = true, name = "pageNo", value = "页面页数"),
|
|
@@ -58,6 +162,9 @@ public class ReportingClubApi {
|
|
|
public ResponseJson productList(CmDistribution cmDistribution,
|
|
|
@RequestParam(value = "pageNum", defaultValue = "1") int pageNum, @RequestParam(value = "pageSize", defaultValue = "20") int pageSize) {
|
|
|
PageHelper.startPage(pageNum, pageSize);
|
|
|
+ if (StringUtils.isBlank(cmDistribution.getId())) {
|
|
|
+ return ResponseJson.error("参数异常", null);
|
|
|
+ }
|
|
|
List<CmDistributionTeamProduct> cmDistributionTeamProducts = cmReportingClubService.getCmDistributionTeamProductList(cmDistribution);
|
|
|
PaginationVo<CmDistributionTeamProduct> paginationVo = new PaginationVo(cmDistributionTeamProducts);
|
|
|
return ResponseJson.success(paginationVo);
|
|
@@ -67,13 +174,17 @@ public class ReportingClubApi {
|
|
|
@ApiImplicitParams({
|
|
|
@ApiImplicitParam(readOnly = true, name = "pageNo", value = "页面页数"),
|
|
|
@ApiImplicitParam(readOnly = true, name = "pageSize", value = "页面数据量"),
|
|
|
+ @ApiImplicitParam(readOnly = true, name = "id", value = "团队管理员Id"),
|
|
|
@ApiImplicitParam(readOnly = true, name = "productName", value = "商品名称"),
|
|
|
})
|
|
|
@GetMapping("/archiveList")
|
|
|
- public ResponseJson getProductArchiveList(String productName,
|
|
|
- @RequestParam(value = "pageNum", defaultValue = "1") int pageNum, @RequestParam(value = "pageSize", defaultValue = "20") int pageSize) {
|
|
|
+ public ResponseJson getProductArchiveList(Integer id, String productName,
|
|
|
+ @RequestParam(value = "pageNum", defaultValue = "1") int pageNum, @RequestParam(value = "pageSize", defaultValue = "20") int pageSize) {
|
|
|
+ if (null==id) {
|
|
|
+ return ResponseJson.error("参数异常", null);
|
|
|
+ }
|
|
|
PageHelper.startPage(pageNum, pageSize);
|
|
|
- List<ArchiveVo> archiveList = cmReportingClubService.getProductArchiveList(productName);
|
|
|
+ List<ArchiveVo> archiveList = cmReportingClubService.getProductArchiveList(id, productName);
|
|
|
PaginationVo<ArchiveVo> paginationVo = new PaginationVo(archiveList);
|
|
|
return ResponseJson.success(paginationVo);
|
|
|
}
|
|
@@ -85,18 +196,82 @@ public class ReportingClubApi {
|
|
|
})
|
|
|
@GetMapping("/details")
|
|
|
public ResponseJson list(String id) {
|
|
|
+ if (StringUtils.isBlank(id)) {
|
|
|
+ return ResponseJson.error("参数异常", null);
|
|
|
+ }
|
|
|
CmReportingMember cmReportingMember = cmReportingClubService.getCmReportingMemberById(id);
|
|
|
- return ResponseJson.success(cmReportingMember);
|
|
|
+ return ResponseJson.success(CmReportingMemberVO.setValue(cmReportingMember));
|
|
|
}
|
|
|
|
|
|
@ApiOperation("新增机构意向订单")
|
|
|
@ApiImplicitParams({
|
|
|
- @ApiImplicitParam(readOnly = true, name = "id", value = "机构意向订单报备成员记录Id"),
|
|
|
})
|
|
|
@PostMapping("/add")
|
|
|
public ResponseJson add(CmReportingClub cmReportingClub) {
|
|
|
return cmReportingClubService.addCmReportingClub(cmReportingClub);
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation("锁定机构意向订单")
|
|
|
+ @ApiImplicitParams({
|
|
|
+ })
|
|
|
+ @GetMapping("/updateReportingClub")
|
|
|
+ public ResponseJson updateCmReportingClub(CmReportingClub cmReportingClub) {
|
|
|
+ if (StringUtils.isBlank(cmReportingClub.id()) && null == cmReportingClub.distributionId()) {
|
|
|
+ return ResponseJson.error("参数异常!", null);
|
|
|
+ }
|
|
|
+ cmReportingClubService.updateCmReportingClub(new CmReportingClub()
|
|
|
+ .id(cmReportingClub.id())
|
|
|
+ .distributionId(cmReportingClub.distributionId())
|
|
|
+ .lockStatus(1)
|
|
|
+ .lockTime(new Date())
|
|
|
+ );
|
|
|
+ return ResponseJson.success("确认成功!", null);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation("确认结算机构意向订单")
|
|
|
+ @ApiImplicitParams({
|
|
|
+ })
|
|
|
+ @GetMapping("/updateSettleStatus")
|
|
|
+ public ResponseJson updateSettleStatus(CmReportingMember cmReportingMember) {
|
|
|
+ if (StringUtils.isBlank(cmReportingMember.id())) {
|
|
|
+ return ResponseJson.error("参数异常!", null);
|
|
|
+ }
|
|
|
+ CmReportingMember cmReportingMemberById = cmReportingClubService.getCmReportingMemberById(cmReportingMember.id());
|
|
|
+ if (null != cmReportingMemberById &&cmReportingMemberById.auditStatus().equals("2")) {
|
|
|
+ cmReportingClubService.updateCmReportingMember(new CmReportingMember()
|
|
|
+ .id(cmReportingMember.id())
|
|
|
+ .settleStatus(3)
|
|
|
+ .settleTime(new Date())
|
|
|
+ );
|
|
|
+ } else {
|
|
|
+ return ResponseJson.error("订单异常!", null);
|
|
|
+ }
|
|
|
+
|
|
|
+ return ResponseJson.success("确认成功!", null);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation("确认分账结算机构意向订单")
|
|
|
+ @ApiImplicitParams({
|
|
|
+ @ApiImplicitParam(readOnly = true, name = "id", value = "机构意向订单报备记录Id"),
|
|
|
+ })
|
|
|
+ @GetMapping("/updateSplitSettleStatus")
|
|
|
+ public ResponseJson updateSplitSettleStatus(String [] ids) {
|
|
|
+ if (ids.length>0) {
|
|
|
+ return ResponseJson.error("参数异常!", null);
|
|
|
+ }
|
|
|
+ for (String id : ids) {
|
|
|
+ CmReportingClub cmReportingClubById = cmReportingClubService.getCmReportingClubById(id);
|
|
|
+ if (null != cmReportingClubById && cmReportingClubById.orderStatus() == 1) {
|
|
|
+ cmReportingClubService.updateCmReportingClub(new CmReportingClub()
|
|
|
+ .id(id)
|
|
|
+ .splitSettleStatus(3)
|
|
|
+ .splitSettleTime(new Date())
|
|
|
+ );
|
|
|
+ } else {
|
|
|
+ return ResponseJson.error("订单异常!", null);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return ResponseJson.success("确认成功!", null);
|
|
|
+ }
|
|
|
|
|
|
}
|