Commit b91e2596 by jinxin

通讯录接口开发

parent d990286a
package com.gic.haoban.manage.api.dto; package com.gic.haoban.manage.api.dto;
import com.gic.commons.util.DateUtil;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
...@@ -106,6 +108,62 @@ public class StaffDTO implements Serializable { ...@@ -106,6 +108,62 @@ public class StaffDTO implements Serializable {
private String ownerRemark ; private String ownerRemark ;
/**
* 许可激活时间
*/
private Date activeTime;
/**
* 许可过期时间
*/
private Date expireTime;
/**
* 许可状态 0 未激活,1 正常有效,2 即将过期,3 已过期
*/
private Integer permitState;
public Date getActiveTime() {
return activeTime;
}
public void setActiveTime(Date activeTime) {
this.activeTime = activeTime;
}
public Date getExpireTime() {
return expireTime;
}
public void setExpireTime(Date expireTime) {
this.expireTime = expireTime;
}
public Integer getPermitState() {
/**
* 根据当前时间判断许可状态 0 未激活,1 正常有效,2 即将过期,3 已过期
* 正常有效:过期时间>30天
* 即将过期:未过期且过期时间<=30天
* 已过期:当前许可已到过期时间
*/
Date now = new Date();
if (null == this.expireTime){
this.permitState = 0;
}else if (now.after(this.expireTime)){
this.permitState = 3;
}else if (now.before(this.expireTime)){
Date date = DateUtil.addDay(now, 30);
if (now.after(this.expireTime)){
this.permitState = 2;
}else {
this.permitState = 1;
}
}
return permitState;
}
public void setPermitState(Integer permitState) {
this.permitState = permitState;
}
public String getOwnerRemark() { public String getOwnerRemark() {
return ownerRemark; return ownerRemark;
} }
......
package com.gic.haoban.manage.service.dao.mapper;
import com.gic.haoban.manage.service.entity.TabHaobanWxEnterpriseActiveData;
import org.apache.ibatis.annotations.Mapper;
/**
* @description:
* @Author: wenhua
* @Date: 2023/1/31 11:20
*/
@Mapper
public interface TabHaobanWxEnterpriseActiveDataMapper {
int insert(TabHaobanWxEnterpriseActiveData tabHaobanWxEnterpriseActiveData);
TabHaobanWxEnterpriseActiveData getWxEnterpriseActiveDataById();
TabHaobanWxEnterpriseActiveData getWxEnterpriseActiveDataByWxEnterpriseId();
int updateActiveDataByWxEnterpriseId(TabHaobanWxEnterpriseActiveData activeData);
}
package com.gic.haoban.manage.service.entity;
import java.io.Serializable;
import java.util.Date;
/**
* @description: 通讯录许可数据总览
* @Author: wenhua
* @Date: 2023/1/30 20:28
*/
public class TabHaobanWxEnterpriseActiveData implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键id
*/
private Long id;
/**
* wx企业id
*/
private String wxEnterpriseId;
/**
* 已购买许可总数
*/
private Integer purchased;
/**
* 未激活许可总数
*/
private Integer inactive;
/**
* 待转移许可总数
*/
private Integer transfer;
/**
* 已激活许可总数
*/
private Integer activated;
/**
* 已过期许可总数
*/
private Integer expired;
private Date createTime;
private Date updateTime;
private Integer deleteFlag;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public Integer getPurchased() {
return purchased;
}
public void setPurchased(Integer purchased) {
this.purchased = purchased;
}
public Integer getInactive() {
return inactive;
}
public void setInactive(Integer inactive) {
this.inactive = inactive;
}
public Integer getTransfer() {
return transfer;
}
public void setTransfer(Integer transfer) {
this.transfer = transfer;
}
public Integer getActivated() {
return activated;
}
public void setActivated(Integer activated) {
this.activated = activated;
}
public Integer getExpired() {
return expired;
}
public void setExpired(Integer expired) {
this.expired = expired;
}
}
<?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.gic.haoban.manage.service.dao.mapper.TabHaobanWxEnterpriseActiveDataMapper">
<resultMap id="BaseResultMap" type="com.gic.haoban.manage.service.entity.TabHaobanWxEnterpriseActiveData">
<id column="id" jdbcType="BIGINT" property="id"/>
<result column="wx_enterprise_id" jdbcType="VARCHAR" property="wxEnterpriseId"/>
<result column="purchased" jdbcType="INTEGER" property="purchased"/>
<result column="inactive" jdbcType="INTEGER" property="inactive"/>
<result column="transfer" jdbcType="INTEGER" property="transfer"/>
<result column="activated" jdbcType="INTEGER" property="activated"/>
<result column="expired" jdbcType="INTEGER" property="expired"/>
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
<result column="delete_flag" jdbcType="INTEGER" property="deleteFlag"/>
</resultMap>
<insert id="insert" parameterType="com.gic.haoban.manage.service.entity.TabHaobanWxEnterpriseActiveData">
insert into tab_haoban_wx_enterprise_active_data (id, wx_enterprise_id, purchased,
inactive, transfer, activated,expired,create_time,delete_flag)
values (#{id,jdbcType=BIGINT}, #{wxEnterpriseId,jdbcType=VARCHAR}, #{purchased,jdbcType=INTEGER},#{inactive,jdbcType=INTEGER},
#{transfer,jdbcType=INTEGER},#{activated,jdbcType=INTEGER},#{expired,jdbcType=INTEGER},now(),0)
</insert>
<select id="getWxEnterpriseActiveDataById" resultMap="BaseResultMap">
select * from tab_haoban_wx_enterprise_active_data where id=#{id} and delete_flag=0
</select>
<select id="getWxEnterpriseActiveDataByWxEnterpriseId" resultMap="BaseResultMap">
select * from tab_haoban_wx_enterprise_active_data where wx_enterprise_id=#{wxEnterpriseId} and delete_flag=0
</select>
<update id="updateActiveDataByWxEnterpriseId" parameterType="com.gic.haoban.manage.service.entity.TabHaobanWxEnterpriseActiveData" >
update tab_haoban_wx_enterprise_active_data
<set >
<if test="purchased != null" >
purchased = #{purchased,jdbcType=INTEGER},
</if>
<if test="inactive != null" >
inactive = #{inactive,jdbcType=INTEGER},
</if>
<if test="transfer != null" >
transfer = #{transfer,jdbcType=INTEGER},
</if>
<if test="activated != null" >
activated = #{activated,jdbcType=INTEGER},
</if>
<if test="expired != null" >
expired = #{expired,jdbcType=INTEGER},
</if>
update_time = now()
</set>
where wx_enterprise_id=#{wxEnterpriseId}
</update>
</mapper>
\ No newline at end of file
...@@ -6,14 +6,14 @@ import java.util.stream.Collectors; ...@@ -6,14 +6,14 @@ import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.gic.haoban.manage.web.qo.TransferActiveCodeQO;
import com.gic.haoban.manage.web.vo.StaffActiveDataVO;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
...@@ -134,6 +134,8 @@ public class StaffController extends WebBaseController { ...@@ -134,6 +134,8 @@ public class StaffController extends WebBaseController {
* @param activeFlag 激活状态 - 后期删除 * @param activeFlag 激活状态 - 后期删除
* @param keyWord 关键字 * @param keyWord 关键字
* @param relationFlag 关联状态 * @param relationFlag 关联状态
* @param permitState 许可状态 0 未激活,1 正常有效,2 即将过期,3 已过期,可多传,按‘,’隔开
* @param occupy 其他占用许可页面标志,传1返回该页面数据
* @param pageInfo 分页参数 * @param pageInfo 分页参数
* @return res * @return res
*/ */
...@@ -142,6 +144,8 @@ public class StaffController extends WebBaseController { ...@@ -142,6 +144,8 @@ public class StaffController extends WebBaseController {
Integer activeFlag, Integer activeFlag,
Integer relationFlag, Integer relationFlag,
String keyWord, String keyWord,
String permitState,
Integer occupy,
BasePageInfo pageInfo) { BasePageInfo pageInfo) {
WebLoginDTO login = AuthWebRequestUtil.getLoginUser(); WebLoginDTO login = AuthWebRequestUtil.getLoginUser();
String wxEnterpriseId = login.getWxEnterpriseId(); String wxEnterpriseId = login.getWxEnterpriseId();
...@@ -479,7 +483,7 @@ public class StaffController extends WebBaseController { ...@@ -479,7 +483,7 @@ public class StaffController extends WebBaseController {
* @Description 会员导出 * @Description 会员导出
*/ */
@RequestMapping("staff-export") @RequestMapping("staff-export")
public HaobanResponse staffExport(HttpServletRequest request, HttpServletResponse response, String departmentId, Integer activeFlag, Integer relationFlag, String keyWord, BasePageInfo pageInfo) { public HaobanResponse staffExport(HttpServletRequest request, HttpServletResponse response, String departmentId, Integer activeFlag, Integer relationFlag, String keyWord, Integer permitState,BasePageInfo pageInfo) {
List<String> departmentIdSet = new ArrayList<>(); List<String> departmentIdSet = new ArrayList<>();
departmentIdSet.add(departmentId); departmentIdSet.add(departmentId);
WebLoginDTO login = AuthWebRequestUtil.getLoginUser(); WebLoginDTO login = AuthWebRequestUtil.getLoginUser();
...@@ -602,4 +606,27 @@ public class StaffController extends WebBaseController { ...@@ -602,4 +606,27 @@ public class StaffController extends WebBaseController {
} }
return resultResponse(HaoBanErrCode.ERR_1); return resultResponse(HaoBanErrCode.ERR_1);
} }
/**
* 通讯录许可数据总览
*
*/
@RequestMapping("staff-active-data")
public RestResponse<StaffActiveDataVO> getStaffActiveData() {
WebLoginDTO login = AuthWebRequestUtil.getLoginUser();
String wxEnterpriseId = login.getWxEnterpriseId();
StaffActiveDataVO staffActiveDataVo = new StaffActiveDataVO();
return RestResponse.successResult(staffActiveDataVo);
}
/**
* 通讯录许可转移
*/
@RequestMapping("staff-active-transfer")
public RestResponse transferActiveCode(@RequestBody List<TransferActiveCodeQO> transferActiveCodeQOList) {
WebLoginDTO login = AuthWebRequestUtil.getLoginUser();
String wxEnterpriseId = login.getWxEnterpriseId();
StaffActiveDataVO staffActiveDataVo = new StaffActiveDataVO();
return RestResponse.successResult();
}
} }
package com.gic.haoban.manage.web.qo;
import java.io.Serializable;
/**
* @description: 通讯录转移许可QO
* @Author: wenhua
* @Date: 2023/1/30 20:39
*/
public class TransferActiveCodeQO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 转移成员的userid。只支持加密的userid
*/
private String handover_userid ;
/**
* 接收成员的userid。只支持加密的userid
*/
private String takeover_userid ;
public String getHandover_userid() {
return handover_userid;
}
public void setHandover_userid(String handover_userid) {
this.handover_userid = handover_userid;
}
public String getTakeover_userid() {
return takeover_userid;
}
public void setTakeover_userid(String takeover_userid) {
this.takeover_userid = takeover_userid;
}
}
package com.gic.haoban.manage.web.vo;
import java.io.Serializable;
/**
* @description: 通讯录许可数据总览
* @Author: wenhua
* @Date: 2023/1/30 20:28
*/
public class StaffActiveDataVO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键id
*/
private String id;
/**
* wx企业id
*/
private String wxEnterpriseId;
/**
* 已购买许可总数
*/
private Integer purchased;
/**
* 未激活许可总数
*/
private Integer inactive;
/**
* 待转移许可总数
*/
private Integer transfer;
/**
* 已激活许可总数
*/
private Integer activated;
/**
* 已过期许可总数
*/
private Integer expired;
/**
* 其他占用许可总数
*/
private Integer occupy;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public Integer getPurchased() {
return purchased;
}
public void setPurchased(Integer purchased) {
this.purchased = purchased;
}
public Integer getInactive() {
return inactive;
}
public void setInactive(Integer inactive) {
this.inactive = inactive;
}
public Integer getTransfer() {
return transfer;
}
public void setTransfer(Integer transfer) {
this.transfer = transfer;
}
public Integer getActivated() {
return activated;
}
public void setActivated(Integer activated) {
this.activated = activated;
}
public Integer getExpired() {
return expired;
}
public void setExpired(Integer expired) {
this.expired = expired;
}
public Integer getOccupy() {
return occupy;
}
public void setOccupy(Integer occupy) {
this.occupy = occupy;
}
}
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