Merge pull request '特色专区用户浏览统计' (#7) from dev into master

This commit is contained in:
otto 2024-11-28 09:55:34 +08:00
commit 8a077da192
7 changed files with 328 additions and 0 deletions

View File

@ -9,6 +9,8 @@ import com.microservices.common.core.web.page.GenericsTableDataInfo;
import com.microservices.common.log.annotation.Log;
import com.microservices.common.log.enums.BusinessType;
import com.microservices.system.api.domain.SysUser;
import com.microservices.zone.common.domain.vo.ZoneVisitsInputVo;
import com.microservices.zone.common.service.IZoneVisitsService;
import com.microservices.zone.dataset.domain.vo.ZoneDataSetProjectVo;
import com.microservices.zone.dataset.service.IZoneDataSetService;
import com.microservices.zone.detail.domain.vo.ZoneBaseDataVo;
@ -90,6 +92,18 @@ public class OpenController extends BaseController {
private IZoneSpecialProjectRelevancyService zoneSpecialProjectRelevancyService;
@Autowired
private IZoneSpecialProjectReportService zoneSpecialProjectReportService;
@Autowired
private IZoneVisitsService zoneVisitsService;
/**
* 新增特色专区用户浏览
*/
@Log(title = "特色专区用户浏览", businessType = BusinessType.INSERT)
@PostMapping("/zoneVisits")
@ApiOperation(value = "新增特色专区用户浏览")
public AjaxResult add(@RequestBody @Validated ZoneVisitsInputVo zoneVisitsInputVo) {
return toAjax(zoneVisitsService.insertZoneVisits(zoneVisitsInputVo.toZoneVisits()));
}
/**

View File

@ -0,0 +1,49 @@
package com.microservices.zone.common.domain;
import com.microservices.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* 特色专区用户浏览对象 zone_visits
*
* @author otto
* @date 2024-11-26
*/
@Data
public class ZoneVisits extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 用户浏览主键
*/
private Long id;
/**
* 用户名
*/
@ApiModelProperty(value = "用户名")
private String username;
/**
* 浏览用户UUID
*/
@ApiModelProperty(value = "浏览用户UUID")
@NotNull(message = "浏览用户UUID不能为空")
private String uuid;
/**
* 浏览地址
*/
@ApiModelProperty(value = "浏览地址")
@NotNull(message = "浏览地址不能为空")
private String url;
/**
* 备注
*/
@ApiModelProperty(value = "备注(JSON字符串可传用户ip、用户浏览器、用户系统类型等)")
private String remark;
}

View File

@ -0,0 +1,52 @@
package com.microservices.zone.common.domain.vo;
import com.microservices.common.core.utils.bean.BeanUtils;
import com.microservices.zone.common.domain.ZoneVisits;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* 特色专区用户浏览对象 zone_visits
*
* @author otto
* @date 2024-11-26
*/
@Data
@ApiModel("用户浏览输入对象")
public class ZoneVisitsInputVo {
/**
* 用户名
*/
@ApiModelProperty(value = "用户名")
private String username;
/**
* 浏览用户UUID
*/
@ApiModelProperty(value = "浏览用户UUID")
@NotNull(message = "浏览用户UUID不能为空")
private String uuid;
/**
* 浏览地址
*/
@ApiModelProperty(value = "浏览地址")
@NotNull(message = "浏览地址不能为空")
private String url;
/**
* 备注
*/
@ApiModelProperty(value = "备注(JSON字符串可传用户ip、用户浏览器、用户系统类型等)")
private String remark;
public ZoneVisits toZoneVisits() {
ZoneVisits target = new ZoneVisits();
BeanUtils.copyProperties(this, target);
return target;
}
}

View File

@ -0,0 +1,63 @@
package com.microservices.zone.common.mapper;
import com.microservices.zone.common.domain.ZoneVisits;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 特色专区用户浏览Mapper接口
*
* @author otto
* @date 2024-11-26
*/
@Mapper
public interface ZoneVisitsMapper {
/**
* 查询特色专区用户浏览
*
* @param id 特色专区用户浏览主键
* @return 特色专区用户浏览
*/
public ZoneVisits selectZoneVisitsById(Long id);
/**
* 查询特色专区用户浏览列表
*
* @param zoneVisits 特色专区用户浏览
* @return 特色专区用户浏览集合
*/
public List<ZoneVisits> selectZoneVisitsList(ZoneVisits zoneVisits);
/**
* 新增特色专区用户浏览
*
* @param zoneVisits 特色专区用户浏览
* @return 结果
*/
public int insertZoneVisits(ZoneVisits zoneVisits);
/**
* 修改特色专区用户浏览
*
* @param zoneVisits 特色专区用户浏览
* @return 结果
*/
public int updateZoneVisits(ZoneVisits zoneVisits);
/**
* 删除特色专区用户浏览
*
* @param id 特色专区用户浏览主键
* @return 结果
*/
public int deleteZoneVisitsById(Long id);
/**
* 批量删除特色专区用户浏览
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteZoneVisitsByIds(Long[] ids);
}

View File

@ -0,0 +1,20 @@
package com.microservices.zone.common.service;
import com.microservices.zone.common.domain.ZoneVisits;
/**
* 特色专区用户浏览Service接口
*
* @author otto
* @date 2024-11-26
*/
public interface IZoneVisitsService {
/**
* 新增特色专区用户浏览
*
* @param zoneVisits 特色专区用户浏览
* @return 结果
*/
public int insertZoneVisits(ZoneVisits zoneVisits);
}

View File

@ -0,0 +1,33 @@
package com.microservices.zone.common.service.impl;
import com.microservices.common.core.utils.DateUtils;
import com.microservices.zone.common.domain.ZoneVisits;
import com.microservices.zone.common.mapper.ZoneVisitsMapper;
import com.microservices.zone.common.service.IZoneVisitsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* 特色专区用户浏览Service业务层处理
*
* @author otto
* @date 2024-11-26
*/
@Service
public class ZoneVisitsServiceImpl implements IZoneVisitsService {
@Autowired
private ZoneVisitsMapper zoneVisitsMapper;
/**
* 新增特色专区用户浏览
*
* @param zoneVisits 特色专区用户浏览
* @return 结果
*/
@Override
public int insertZoneVisits(ZoneVisits zoneVisits) {
zoneVisits.setCreateTime(DateUtils.getNowDate());
return zoneVisitsMapper.insertZoneVisits(zoneVisits);
}
}

View File

@ -0,0 +1,97 @@
<?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.microservices.zone.common.mapper.ZoneVisitsMapper">
<resultMap type="ZoneVisits" id="ZoneVisitsResult">
<result property="id" column="id"/>
<result property="username" column="username"/>
<result property="uuid" column="uuid"/>
<result property="url" column="url"/>
<result property="remark" column="remark"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
</resultMap>
<sql id="selectZoneVisitsVo">
select id,
username,
uuid,
url,
remark,
create_by,
create_time,
update_by,
update_time
from zone_visits
</sql>
<select id="selectZoneVisitsList" parameterType="ZoneVisits" resultMap="ZoneVisitsResult">
<include refid="selectZoneVisitsVo"/>
<where>
<if test="username != null and username != ''">and username like concat('%', #{username}, '%')</if>
<if test="uuid != null and uuid != ''">and uuid = #{uuid}</if>
<if test="url != null and url != ''">and url = #{url}</if>
</where>
</select>
<select id="selectZoneVisitsById" parameterType="Long" resultMap="ZoneVisitsResult">
<include refid="selectZoneVisitsVo"/>
where id = #{id}
</select>
<insert id="insertZoneVisits" parameterType="ZoneVisits" useGeneratedKeys="true" keyProperty="id">
insert into zone_visits
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="username != null">username,</if>
<if test="uuid != null and uuid != ''">uuid,</if>
<if test="url != null">url,</if>
<if test="remark != null">remark,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="username != null">#{username},</if>
<if test="uuid != null and uuid != ''">#{uuid},</if>
<if test="url != null">#{url},</if>
<if test="remark != null">#{remark},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
</trim>
</insert>
<update id="updateZoneVisits" parameterType="ZoneVisits">
update zone_visits
<trim prefix="SET" suffixOverrides=",">
<if test="username != null">username = #{username},</if>
<if test="uuid != null and uuid != ''">uuid = #{uuid},</if>
<if test="url != null">url = #{url},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteZoneVisitsById" parameterType="Long">
delete
from zone_visits
where id = #{id}
</delete>
<delete id="deleteZoneVisitsByIds" parameterType="String">
delete from zone_visits where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>