package com.pz.web.controller.system; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaIgnore; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.pz.common.core.controller.BaseController; import com.pz.common.core.domain.PageQuery; import com.pz.common.core.domain.R; import com.pz.common.core.domain.dto.RoleDTO; import com.pz.common.core.domain.model.LoginUser; import com.pz.common.core.page.TableDataInfo; import com.pz.merchant.domain.bo.CompanyBo; import com.pz.merchant.domain.vo.CompanyVo; import com.pz.system.domain.bo.DbghOrderBo; import com.pz.system.domain.bo.OrderColumnarBo; import com.pz.system.domain.vo.DbghOrderVo; import com.pz.system.domain.vo.OrderColumnarVo; import com.pz.system.domain.vo.OrderLineVo; import com.pz.system.mapper.TotalOrderMapper; import com.pz.common.core.domain.R; import com.pz.merchant.service.ICompanyService; import com.pz.merchant.service.IEmployeesService; import com.pz.system.domain.bo.DataViewBo; import com.pz.system.domain.vo.DataOrderVo; import com.pz.system.domain.vo.DataViewVo; import com.pz.system.domain.vo.DbghOrderVo; import com.pz.system.service.IStoreApplyService; import com.pz.system.service.ISysUserService; import com.pz.system.service.ITotalOrderService; import com.pz.system.service.ITotalOrderService; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; 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 javax.validation.constraints.NotNull; import javax.validation.constraints.NotEmpty; import java.util.List; import java.util.Map; /** * 数据总览 * * @author ruoyi * @date 2023-09-07 */ @Validated @RequiredArgsConstructor @RestController @RequestMapping("/system/data") public class DataViewController extends BaseController { private final ITotalOrderService iTotalOrderService; private final ISysUserService iSysUserService; private final IEmployeesService iEmployeesService; private final ICompanyService iCompanyService; private final IStoreApplyService iStoreApplyService; /** * 新增用户统计 */ @GetMapping("/dataUser") public R<DataViewVo> dataUser(DataViewBo dataViewBo) { return R.ok(iSysUserService.dataUser(dataViewBo)); } /** * 新增陪诊员统计 */ @GetMapping("/dataEmployees") public R<DataViewVo> dataEmployees(DataViewBo dataViewBo) { Long roleId = getLoginUser().getRoleId(); if (null != roleId && roleId == 3) { dataViewBo.setUserId(getUserId()); } return R.ok(iEmployeesService.dataEmployees(dataViewBo)); } /** * 新增机构统计 */ @GetMapping("/dataCompany") public R<DataViewVo> dataCompany(DataViewBo dataViewBo) { return R.ok(iCompanyService.dataCompany(dataViewBo)); } /** * 新增商城商户统计 */ @GetMapping("/dataStoreApply") public R<DataViewVo> dataStoreApply(DataViewBo dataViewBo) { return R.ok(iStoreApplyService.dataStoreApply(dataViewBo)); } /** * 订单销售额 */ @GetMapping("/saleroom") public R<DataOrderVo> saleroom(DataViewBo dataViewBo) { return R.ok(iTotalOrderService.saleroom(dataViewBo)); } /** * 平台收益/机构收益 */ @GetMapping("/platformRevenue") public R<DataOrderVo> platformRevenue(DataViewBo dataViewBo) { Long roleId = getLoginUser().getRoleId(); if (null != roleId && roleId == 3) { dataViewBo.setUserId(getUserId()); } return R.ok(iTotalOrderService.platformRevenue(dataViewBo)); } /** * 总后台订单量/机构订单量 */ @GetMapping("/orderQuantity") public R<DataViewVo> orderQuantity(DataViewBo dataViewBo) { Long roleId = getLoginUser().getRoleId(); if (null != roleId && roleId == 3) { dataViewBo.setUserId(getUserId()); } DataOrderVo dataOrderVo = iTotalOrderService.orderQuantity(dataViewBo); DataViewVo dataViewVo = new DataViewVo(); dataViewVo.setDataSum((int) dataOrderVo.getDataSum()); return R.ok(dataViewVo); } /** * 数据总览折线图 */ @GetMapping("/findOrderColumnarVoList") public R<List<OrderLineVo>> findOrderColumnarVoList( OrderColumnarBo bo) { return R.ok(iTotalOrderService.findOrderColumnarVoList(bo)); } /** * 机构列表 */ @GetMapping("/companyList") public R<List<CompanyVo>> companyList( CompanyBo bo) { return R.ok(iCompanyService.queryList(bo)); } }