From 4b1f67afb07b6f92d31944f2087ef5a69404f284 Mon Sep 17 00:00:00 2001 From: chenye <chenye0811@qq.com> Date: 星期五, 07 七月 2023 14:54:47 +0800 Subject: [PATCH] 首页&合作商查询 by cheny --- ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java | 1 ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml | 14 ++ ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopTotalMapper.java | 3 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/MemberTaskService.java | 8 + ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerBaseDto.java | 3 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java | 44 ++++++ ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopTotalService.java | 4 ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskMapper.xml | 13 ++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java | 20 +++ ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MgtShopIdByCodeDto.java | 3 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 20 ++ ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/task/MemberTaskMapper.java | 2 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/UserServiceRecordMapper.java | 7 + ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java | 5 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopPageDto.java | 7 + ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopTotalServiceImpl.java | 10 + ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java | 10 + ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MerHomeShopTotalVo.java | 4 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffController.java | 67 +++++++++++ ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopTotalMapper.xml | 41 ++++++ ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml | 12 ++ ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/UserServiceRecordMapper.xml | 10 + 22 files changed, 298 insertions(+), 10 deletions(-) diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerBaseDto.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerBaseDto.java index f8cb3d0..04c62b4 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerBaseDto.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MerBaseDto.java @@ -19,4 +19,7 @@ @ApiModelProperty(value = "商户id") private Long shopId; + @ApiModelProperty(value = "userIds") + private Long userIds; + } diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MgtShopIdByCodeDto.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MgtShopIdByCodeDto.java index f6c529e..2eb406d 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MgtShopIdByCodeDto.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/MgtShopIdByCodeDto.java @@ -27,5 +27,8 @@ @ApiModelProperty(value = "店铺名称") private String shopName; + @ApiModelProperty(value = "归属员工di") + private Long belongUserId; + } diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MerHomeShopTotalVo.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MerHomeShopTotalVo.java index 79c1546..9f9948b 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MerHomeShopTotalVo.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MerHomeShopTotalVo.java @@ -5,6 +5,7 @@ import lombok.Data; import java.math.BigDecimal; +import java.util.List; /** * @author jqs34 @@ -40,4 +41,7 @@ @ApiModelProperty(value = "剩余体验人数") private Integer explorationSurp; + @ApiModelProperty(value = "多个商户id") + private List<Long> shopIds; + } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java index 481bcc2..265845d 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java @@ -421,6 +421,14 @@ MerHomeShopTotalVo getMerHomeShopTotalVo(Long shopId); /** + * @description + * @author cheny + * @param shopIds + * @return MerHomeShopTotalVo + */ + MerHomeShopTotalVo getMerHomeShopsTotalVo(List<Long> shopIds); + + /** * @description 统计商户营业额 * @author jqs * @date 2023/6/27 19:13 @@ -505,4 +513,6 @@ * @return List<MgtShopAllOrderPageVo> */ List<MgtShopAllOrderPageVo> pageMgtShopAllOrder(Page page, @Param("param")MgtShopAllOrderPageDto mgtShopAllOrderPageDto); + + } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/UserServiceRecordMapper.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/UserServiceRecordMapper.java index 93347de..22129f5 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/UserServiceRecordMapper.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/UserServiceRecordMapper.java @@ -63,4 +63,11 @@ * @return Integer */ Integer countShopServicePerson(@Param("shopId")Long shopId); + /** + * @description 商户端统计商户到店人数 + * @author cheny + * @param shopIds + * @return Integer + */ + Integer countShopServicePersons(List<Long> shopIds); } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java index bde96b6..38dda16 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java @@ -16,6 +16,7 @@ import com.ruoyi.order.domain.pojo.order.OrderGoods; import com.ruoyi.order.domain.vo.*; import com.ruoyi.order.mapper.order.OrderMapper; +import com.ruoyi.order.mapper.order.UserServiceRecordMapper; import com.ruoyi.order.service.order.ConsumerGoodsService; import com.ruoyi.order.service.order.OrderGoodsService; import com.ruoyi.order.service.order.OrderService; @@ -85,6 +86,9 @@ @Resource private RemoteActivityService remoteActivityService; + + @Resource + private UserServiceRecordMapper userServiceRecordMapper; /** * @description: buyGoods @@ -764,10 +768,18 @@ */ @Override public MerHomeShopTotalVo getMerHomeTotal(MerHomeShopTotalVo merHomeShopTotalVo) { - Long shopId = merHomeShopTotalVo.getShopId(); - Integer todayShop = userServiceRecordService.countShopServicePerson(shopId); - merHomeShopTotalVo.setTodayShop(todayShop); - merHomeShopTotalVo = orderMapper.getMerHomeShopTotalVo(shopId); + List<Long> shopIds = merHomeShopTotalVo.getShopIds(); + if (null != shopIds && shopIds.size() != 0) { + Integer todayShop = userServiceRecordMapper.countShopServicePersons(shopIds); + merHomeShopTotalVo = orderMapper.getMerHomeShopsTotalVo(shopIds); + merHomeShopTotalVo.setTodayShop(todayShop); + }else{ + Long shopId = merHomeShopTotalVo.getShopId(); + Integer todayShop = userServiceRecordService.countShopServicePerson(shopId); + merHomeShopTotalVo.setTodayShop(todayShop); + merHomeShopTotalVo = orderMapper.getMerHomeShopTotalVo(shopId); + + } return merHomeShopTotalVo; } diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml index cf9518b..0d5ee61 100644 --- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml +++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml @@ -1239,6 +1239,20 @@ WHERE del_flag = 0 AND shopId = #{shopId} </select> + <select id="getMerHomeShopsTotalVo" resultType="com.ruoyi.system.api.domain.vo.MerHomeShopTotalVo"> + SELECT + SUM(CASE WHEN order_status = 2 THEN 1 ELSE 0 END) unHandleOrder, + SUM(pay_money) shopTurnover + FROM t_order + WHERE del_flag = 0 + <if test="list != null and list.size() > 0"> + AND shop_id IN + <foreach collection="list" item="item" open="(" separator="," close=")"> + #{item} + </foreach> + </if> + </select> + <select id="getMemberUnpaidOrder" resultType="java.math.BigDecimal"> SELECT IFNULL(SUM(receivable_money-pay_money),0) FROM t_order diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/UserServiceRecordMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/UserServiceRecordMapper.xml index 82273b2..53af0b0 100644 --- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/UserServiceRecordMapper.xml +++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/UserServiceRecordMapper.xml @@ -141,4 +141,14 @@ FROM t_user_service_record WHERE shop_id = #{shopId} AND DATE(create_time) = CURDATE() </select> + + <select id="countShopServicePersons" resultType="java.lang.Integer"> + SELECT COUNT(DISTINCT user_id) + FROM t_user_service_record + WHERE shop_id in + <foreach item="id" collection="list" open="(" separator="," close=")"> + #{id} + </foreach> + AND DATE(create_time) = CURDATE() + </select> </mapper> diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffController.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffController.java new file mode 100644 index 0000000..28afd9f --- /dev/null +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/staff/StaffController.java @@ -0,0 +1,67 @@ +package com.ruoyi.shop.controller.staff; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.security.utils.SecurityUtils; +import com.ruoyi.shop.domain.dto.MgtShopPageDto; +import com.ruoyi.shop.domain.vo.MgtShopPageVo; +import com.ruoyi.shop.service.shop.ShopService; +import com.ruoyi.system.api.domain.vo.MerHomeShopTotalVo; +import com.ruoyi.system.api.service.RemoteSysStaffService; +import com.ruoyi.system.api.service.RemoteUserService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; + + +@Api(value = "员工端商户接口", tags = "员工端商户接口", description = "员工端商户接口") +@RestController +@RequestMapping("/staff/shop") +public class StaffController { + + @Resource + private ShopService shopService; + @Resource + private RemoteUserService sysUserService; + @Resource + private RemoteSysStaffService remoteSysStaffService; + + /** + * 未完成实际统计 + * @return + */ + @RequestMapping(value = "/getStaffHomeTotal", method = RequestMethod.POST) + @ApiOperation(value = "获取员工端商铺统计") + public R<MerHomeShopTotalVo> getStaffHomeTotal() { + Long userId = SecurityUtils.getUserId(); + MerHomeShopTotalVo merHomeShopTotalVo = shopService.getStaffHomeTotal(userId); + return R.ok(merHomeShopTotalVo); + } + + @RequestMapping(value = "/list", method = RequestMethod.POST) + @ApiOperation(value = "获取商户端商业统计") + public R getShopByUserId(@RequestBody MgtShopPageDto mgtShopPageDto) { + Long userId = SecurityUtils.getUserId(); + if (remoteSysStaffService.isLeader()) { + Long deptId = sysUserService.getSysUser(userId).getData().getDeptId(); + List<Long> userIds = remoteSysStaffService.getUserIds(deptId).getData(); + if(userIds.size()==0){ + return R.ok("未关联商户"); + } + mgtShopPageDto.setIds(userIds); + } else { + mgtShopPageDto.setBelongUserId(userId); + } + Page<MgtShopPageVo> page = new Page<>(); + page.setSize(mgtShopPageDto.getPageSize()); + page.setCurrent(mgtShopPageDto.getPageNum()); + List<MgtShopPageVo> mgtShopPageVoList = shopService.pageMgtShop(page,mgtShopPageDto); + return R.ok(page.setRecords(mgtShopPageVoList)); + } +} diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopPageDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopPageDto.java index 2af483d..4eb2160 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopPageDto.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopPageDto.java @@ -4,6 +4,8 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.List; + /** * @author jqs34 * @ClassName MgtShopPageDto @@ -86,6 +88,9 @@ @ApiModelProperty(value = "与合作商关系1.好2.差") private Integer relationPartner; + @ApiModelProperty(value = "商铺id") + private Integer shopId; - + @ApiModelProperty(value = "多个用户的id") + private List<Long> ids; } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopTotalMapper.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopTotalMapper.java index 4593b1d..dbbd461 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopTotalMapper.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopTotalMapper.java @@ -3,6 +3,8 @@ import com.ruoyi.shop.domain.pojo.shop.ShopTotal; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import java.util.List; + /** * <p> * 商户统计 Mapper 接口 @@ -13,4 +15,5 @@ */ public interface ShopTotalMapper extends BaseMapper<ShopTotal> { + ShopTotal shopsTotalByIds(List<Long> shopIds); } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/task/MemberTaskMapper.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/task/MemberTaskMapper.java index dd7c1e4..4229f77 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/task/MemberTaskMapper.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/task/MemberTaskMapper.java @@ -47,4 +47,6 @@ * @return MemberTaskSimpleVo */ MemberTaskSimpleVo getLastMemberTask(@Param("userId")Long userId); + + Integer getMembersIngTotal(List<Long> shopIds); } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java index dfe1539..691d59d 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java @@ -25,10 +25,7 @@ import com.ruoyi.system.api.domain.poji.shop.Shop; import com.ruoyi.system.api.domain.poji.sys.SysUser; import com.ruoyi.system.api.domain.vo.*; -import com.ruoyi.system.api.service.RemoteConfigService; -import com.ruoyi.system.api.service.RemoteMemberService; -import com.ruoyi.system.api.service.RemoteOrderService; -import com.ruoyi.system.api.service.RemoteUserService; +import com.ruoyi.system.api.service.*; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -103,6 +100,8 @@ @Resource private RemoteUserService remoteUserService; + @Resource + private RemoteSysStaffService remoteSysStaffService; /** * 获取商户详情 @@ -639,6 +638,43 @@ } /** + * 获取获取员工端首页统计 + * @param userId + * @return + */ + @Override + public MerHomeShopTotalVo getStaffHomeTotal(Long userId){ + List<Long> userIds = null; + List<Long> shopIds = null; + //如果是leader 查询leader下面所有的员工下的所有shopId + if(remoteSysStaffService.isLeader()){ + Long deptId = sysUserService.getSysUser(userId).getData().getDeptId(); + userIds = remoteSysStaffService.getUserIds(deptId).getData(); + //根据用户所有id查询关联的商户id + MgtBasePlatformDto mgtBasePlatformDto = new MgtBasePlatformDto(); + mgtBasePlatformDto.setUserIdList(userIds); + shopIds = shopMapper.listShopIdByTotal(mgtBasePlatformDto); + }else { + //普通员工查询商户归属的shopId + MgtShopIdByCodeDto mgtShopIdByCodeDto = new MgtShopIdByCodeDto(); + mgtShopIdByCodeDto.setBelongUserId(userId); + shopIds = shopMapper.getShopIdByCode(mgtShopIdByCodeDto); + } + //分别查询 + MerHomeShopTotalVo merHomeShopTotalVo = new MerHomeShopTotalVo(); + merHomeShopTotalVo.setShopIds(shopIds); + MerHomeShopTotalVo orderVo = remoteOrderService.getMerHomeTotal(merHomeShopTotalVo).getData(); + merHomeShopTotalVo.setTodayShop(orderVo.getTodayShop()); + merHomeShopTotalVo.setUnHandleOrder(orderVo.getUnHandleOrder()); + merHomeShopTotalVo.setShopTurnover(orderVo.getShopTurnover()); + ShopTotal shopTotal = shopTotalService.shopsTotalByIds(shopIds); + merHomeShopTotalVo.setCycleSurp(shopTotal.getUseableCyclePerson()); + merHomeShopTotalVo.setExplorationSurp(shopTotal.getUseableExperiencePerson()); + Integer taskCount = memberTaskService.getMembersIngTotal(shopIds); + merHomeShopTotalVo.setTask(taskCount); + return merHomeShopTotalVo; + } + /** * 获取商户端 * @param userId * @return diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopTotalServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopTotalServiceImpl.java index b2c2fa5..73ece42 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopTotalServiceImpl.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopTotalServiceImpl.java @@ -7,7 +7,9 @@ import com.ruoyi.system.api.domain.dto.ShopTotalChangeDto; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.math.BigDecimal; +import java.util.List; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.locks.Lock; @@ -26,6 +28,9 @@ private Lock lock = new ReentrantLock(); private ExecutorService executor = Executors.newSingleThreadExecutor(); + @Resource + private ShopTotalMapper shopTotalMapper; + /** * @param shopTotalChangeDto @@ -44,6 +49,11 @@ }); } + @Override + public ShopTotal shopsTotalByIds(List<Long> shopIds) { + return shopTotalMapper.shopsTotalByIds(shopIds); + } + //更新商户统计实现 private void handleShopTotal(ShopTotalChangeDto shopTotalChangeDto){ ShopTotal shopTotal = this.getById(shopTotalChangeDto.getShopId()); diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java index f5acba0..3dae1f3 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/MemberTaskServiceImpl.java @@ -213,6 +213,11 @@ return memberTaskMapper.getMemberIngTotal(shopId); } + @Override + public Integer getMembersIngTotal(List<Long> shopIds) { + return memberTaskMapper.getMembersIngTotal(shopIds); + } + /** * @description 获取最近任务 * @author jqs diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java index 69c2fd7..afed314 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java @@ -98,6 +98,7 @@ Shop getByShopId(Long shopId); + MerHomeShopTotalVo getStaffHomeTotal(Long userId); /** * 获取商户端首页统计 diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopTotalService.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopTotalService.java index 9e5557e..aea8c66 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopTotalService.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopTotalService.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.system.api.domain.dto.ShopTotalChangeDto; +import java.util.List; + /** * <p> * 商户统计 服务类 @@ -22,4 +24,6 @@ * @return void */ void changeShopTotal(ShopTotalChangeDto shopTotalChangeDto); + + ShopTotal shopsTotalByIds(List<Long> shopIds); } diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/MemberTaskService.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/MemberTaskService.java index 3142801..9add6bd 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/MemberTaskService.java +++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/MemberTaskService.java @@ -62,5 +62,11 @@ */ MemberTaskSimpleVo getLastMemberTask(Long userId); - + /** + * @description 员工端获取进行中任务数 + * @author jqs + * @param shopIds + * @return Integer + */ + Integer getMembersIngTotal(List<Long> shopIds); } diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml index 7ac9ef6..948fc5d 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml +++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml @@ -309,6 +309,14 @@ FROM t_shop ts LEFT JOIN t_shop_marketing tsm ON tsm.shop_id = ts.shop_id WHERE ts.del_flag = 0 + + <if test="param.ids != null and !param.ids.isEmpty()"> + AND ts.belong_user_id in + <foreach item="id" collection="param.ids" open="(" separator="," close=")"> + #{id} + </foreach> + </if> + <if test="param.shopType!=null and param.shopType!=''"> AND ts.shop_type = #{param.shopType} </if> @@ -460,6 +468,9 @@ <if test="param.shopAreaCode!=null and param.shopAreaCode!=''"> AND ts.shop_area_code = #{param.shopAreaCode} </if> + <if test="param.belongUserId!=null and param.belongUserId!=''"> + AND ts.belong_user_id = #{param.belongUserId} + </if> </select> <select id="listMgtShopSimpleVo" resultType="com.ruoyi.shop.domain.vo.MgtShopListSimpleVo"> @@ -474,6 +485,7 @@ <if test="param.keyword!=null and param.keyword!=''"> AND shop_name LIKE CONCAT('%',#{param.keyword},'%') </if> + </select> <select id="listShopSimpleVoByIds" resultType="com.ruoyi.system.api.domain.vo.MgtSimpleShopVo"> diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopTotalMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopTotalMapper.xml index 4dd3b03..00a34c3 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopTotalMapper.xml +++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopTotalMapper.xml @@ -1,6 +1,47 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.shop.mapper.shop.ShopTotalMapper"> + <select id="shopsTotalByIds" parameterType="java.util.List" resultType="com.ruoyi.shop.domain.pojo.shop.ShopTotal"> + SELECT + sum(last_pay_money) lastPayMoney , + sum(total_activity_count) totalActivityCount, + sum(total_order) totalOrder, + sum(total_cycle_order) totalCycleOrder, + sum(total_experience_order) totalExperienceOrder, + sum(total_service_order) totalServiceOrder, + sum(total_goods_order) totalGoodsOrder, + sum(total_service_count) totalServiceCount, + sum(used_service_count) usedServiceCount, + sum(useable_service_count) useableServiceCount, + sum(total_cycle_service) totalCycleService, + sum(used_cycle_service) usedCycleService, + sum(useable_cycle_service) useableCycleService, + sum(total_cycle_person) totalCyclePerson, + sum(useable_cycle_person) useable_cycle_person, + sum(total_service_service) totalServiceService, + sum(used_service_service) usedServiceService, + sum(useable_service_service) useableServiceService, + sum(total_service_person) totalServicePerson, + sum(useable_service_person) useableServicePerson, + sum(total_experience_service) totalExperienceService, + sum(used_experience_service) usedExperienceService, + sum(useable_experience_service) useableExperienceService, + sum(total_experience_person) totalExperiencePerson, + sum(useable_experience_person) useableExperiencePerson, + sum(total_order_money) totalOrderMoney, + sum(total_cycle_money) totalCycleMoney, + sum(total_experience_money) totalExperienceMoney, + sum(total_service_money) totalServiceMoney, + sum(total_goods_money) totalGoodsMoney + FROM + t_shop_total + <if test="list!=null and list!=''"> + where shop_id IN + <foreach collection="list" item="id" open="(" separator="," close=")"> + #{id} + </foreach> + </if> + </select> </mapper> diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskMapper.xml index 88203d4..19eb288 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskMapper.xml +++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskMapper.xml @@ -99,6 +99,19 @@ WHERE del_flag = 0 AND task_status = 1 AND shop_id = #{shopId} AND task_date = DATE(NOW()) </select> + <select id="getMembersIngTotal" resultType="java.lang.Integer"> + SELECT COUNT(task_id) + FROM t_member_task + WHERE del_flag = 0 AND task_status = 1 + <if test="list!=null and list!=''"> + AND shop_id IN + <foreach collection="list" item="id" open="(" separator="," close=")"> + #{id} + </foreach> + </if> + AND task_date = DATE(NOW()) + </select> + <select id="getLastMemberTask" resultType="com.ruoyi.system.api.domain.vo.MemberTaskSimpleVo"> SELECT task_date taskDate, diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java index f966109..d7c5674 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java @@ -27,6 +27,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; +import java.util.ArrayList; import java.util.List; import java.util.Set; import java.util.stream.Collectors; @@ -58,6 +59,25 @@ @Autowired private ISysConfigService configService; + + /** + * 根据部门获取所有员工id + * @param deptId + * @return + */ + @GetMapping("/dept/{deptId}") + public R<List<Long>> getUserIds(@PathVariable("deptId") Long deptId) + { + SysUser sysUser = new SysUser(); + sysUser.setDeptId(deptId); + List<SysUser> userList = userService.selectUserList(sysUser); + List<Long> userIds = new ArrayList<>(); + for (int i = 0; i < userList.size(); i++) { + userIds.add(userList.get(i).getUserId()); + } + return R.ok(userIds); + } + /** * 获取用户列表 */ -- Gitblit v1.7.1