Commit fb64b9b5 authored by lining's avatar lining

feat: 业绩统计接口

parent d60dd880
......@@ -115,14 +115,6 @@ public class ServiceWorkerService extends AbstractMapper<ServiceWorker> {
}
private void checkAuth(Long userId) {
User user = userMapper.selectByPrimaryKey(userId);
if (Objects.isNull(user) || !user.getRoleType().equals(ServiceUserTypeEnum.ADMIN.getId())) {
throw new ServiceException(BizCodeEnum.NO_AUTH);
}
}
public List<WorkerInfoVO> selectByName(String name) {
log.info("worker selectByName name: {}", name);
List<ServiceWorker> workerList;
......
......@@ -69,7 +69,12 @@ public enum BizCodeEnum {
/**
* 服务子类
*/
SERVICE_SUBCLASS_NOT_EXIST("服务项目不存在");
SERVICE_SUBCLASS_NOT_EXIST("服务项目不存在"),
/**
* 用户
*/
USER_NOT_EXIST("用户不存在");
@Getter
private String msg;
......
package com.onsiteservice.dao.mapper.service;
import com.onsiteservice.dao.common.Mapper;
import com.onsiteservice.entity.service.ServicePromote;
public interface ServicePromoteMapper extends Mapper<ServicePromote> {
int promoteCount(Long userId);
}
\ No newline at end of file
<?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.onsiteservice.dao.mapper.service.ServicePromoteMapper">
<resultMap id="BaseResultMap" type="com.onsiteservice.entity.service.ServicePromote">
<!--
WARNING - @mbg.generated
-->
<id column="id" jdbcType="BIGINT" property="id"/>
<result column="account_no" jdbcType="BIGINT" property="accountNo"/>
<result column="user_name" jdbcType="VARCHAR" property="userName"/>
<result column="count" jdbcType="INTEGER" property="count"/>
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
<result column="modify_time" jdbcType="TIMESTAMP" property="modifyTime"/>
</resultMap>
<update id="promoteCount">
update service_promote
SET count = count + 1
WHERE account_no = #{userId}
</update>
</mapper>
\ No newline at end of file
package com.onsiteservice.entity.service;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.*;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
@ApiModel("推广统计表")
@Table(name = "service_promote")
public class ServicePromote implements Serializable {
/**
* 主键
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@ApiModelProperty("主键")
private Long id;
/**
* 账号
*/
@Column(name = "account_no")
@ApiModelProperty("账号")
private Long accountNo;
/**
* 用户
*/
@Column(name = "user_name")
@ApiModelProperty("用户")
private String userName;
/**
* 数量
*/
@ApiModelProperty("数量")
private Integer count;
/**
* 创建时间
*/
@Column(name = "create_time")
@ApiModelProperty("创建时间")
private Date createTime;
/**
* 修改时间
*/
@Column(name = "modify_time")
@ApiModelProperty("修改时间")
private Date modifyTime;
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.onsiteservice.miniapp.service.user;
import com.onsiteservice.constant.constant.BizConstants;
import com.onsiteservice.constant.enums.BizCodeEnum;
import com.onsiteservice.core.exception.ServiceException;
import com.onsiteservice.dao.common.AbstractMapper;
import com.onsiteservice.dao.mapper.service.ServicePromoteMapper;
import com.onsiteservice.dao.mapper.user.UserMapper;
import com.onsiteservice.entity.service.ServicePromote;
import com.onsiteservice.entity.user.User;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Condition;
import javax.annotation.Resource;
import java.util.Objects;
@Service
@Transactional(rollbackFor = Exception.class)
public class ServicePromoteService extends AbstractMapper<ServicePromote> {
@Resource
private ServicePromoteMapper servicePromoteMapper;
@Resource
private UserMapper userMapper;
public int promoteCount(Long userId) {
User user = userMapper.selectByPrimaryKey(userId);
if (Objects.isNull(user)) {
throw new ServiceException(BizCodeEnum.USER_NOT_EXIST);
}
return servicePromoteMapper.promoteCount(userId);
}
}
package com.onsiteservice;
import com.onsiteservice.miniapp.MiniAppApplication;
import com.onsiteservice.miniapp.service.user.ServicePromoteService;
import lombok.extern.log4j.Log4j2;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import javax.annotation.Resource;
/**
* <P></P>
*
* @author 李宁
* @version v1.0
* @since 2022/7/8 09:58
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = MiniAppApplication.class)
@Log4j2
public class ServicePromoteTest {
@Resource
private ServicePromoteService servicePromoteService;
@Test
public void testPromoteCount() {
for (int i = 1; i <= 100; i++) {
servicePromoteService.promoteCount(100L);
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment