Commit 3f42ec6e by guojuxing

gic运营商户列表过滤运维资源组

parent 728b840e
package com.gic.enterprise.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
......@@ -11,6 +13,7 @@ import javax.validation.constraints.NotNull;
* @author guojx
* @date 2019/7/16 4:11 PM
*/
@Data
public class EnterpriseDTO implements Serializable{
private static final long serialVersionUID = -2344967926907229689L;
......@@ -102,127 +105,12 @@ public class EnterpriseDTO implements Serializable{
private Integer serviceStatus;
/**
* 创建人
*/
private Integer creatorId;
/**
* 前置资源,必有
*/
private List<EnterpriseResourceRelDTO> resourcesList;
public Integer getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(Integer enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getEnterpriseName() {
return enterpriseName;
}
public void setEnterpriseName(String enterpriseName) {
this.enterpriseName = enterpriseName;
}
public String getCompanyName() {
return companyName;
}
public void setCompanyName(String companyName) {
this.companyName = companyName;
}
public String getLogo() {
return logo;
}
public void setLogo(String logo) {
this.logo = logo;
}
public String getAreaId() {
return areaId;
}
public void setAreaId(String areaId) {
this.areaId = areaId;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
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 getIsInitComplete() {
return isInitComplete;
}
public void setIsInitComplete(Integer isInitComplete) {
this.isInitComplete = isInitComplete;
}
public Date getAuditTime() {
return auditTime;
}
public void setAuditTime(Date auditTime) {
this.auditTime = auditTime;
}
public String getVersionCode() {
return versionCode;
}
public void setVersionCode(String versionCode) {
this.versionCode = versionCode;
}
public String getVersionName() {
return versionName;
}
public void setVersionName(String versionName) {
this.versionName = versionName;
}
public Integer getServiceStatus() {
return serviceStatus;
}
public void setServiceStatus(Integer serviceStatus) {
this.serviceStatus = serviceStatus;
}
public List<EnterpriseResourceRelDTO> getResourcesList() {
return resourcesList;
}
public void setResourcesList(List<EnterpriseResourceRelDTO> resourcesList) {
this.resourcesList = resourcesList;
}
}
package com.gic.enterprise.qo;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.List;
/**
* 运营商户列表查询参数
* @ClassName: EnterpriseQO

* @Description: 

* @author guojuxing

* @date 2020/3/12 2:56 PM

*/
@Accessors(chain = true)
@Data
public class EnterpriseQO extends PageQO implements Serializable{
private static final long serialVersionUID = 6358283201042863550L;
/**
* 公司名称/品牌名称
*/
private String search;
/**
* 服务版本:例如:达摩基础版 123
*/
private String serviceVersion;
/**
* 0无效,1有效,2停用,3逾期 4:即将到期
*/
private Integer status;
/**
* 用EnterpriseListOrderByEnum.getOrderBy(orderBy)解析成sql, 可以为null
* 1:创建时间正序 2:创建时间倒叙 3:到期时间正序 4:到期时间倒叙
* 例如:EnterpriseListOrderByEnum.getOrderBy(1)
*/
private String orderBy;
/**
* 运维创建人
*/
private Integer creatorId;
/**
* 运维资源组权限:1:全部商户 其他 :部分
*/
private Integer listAll;
/**
* 部分商户的时候,商户ID
*/
private List<Integer> enterpriseIdList;
}
......@@ -11,6 +11,7 @@ import com.gic.enterprise.dto.market.MarketServiceDTO;
import com.gic.enterprise.dto.market.OrderBuyLicenseDTO;
import com.gic.enterprise.dto.market.OrderGicDTO;
import com.gic.enterprise.qo.BuyForGicQO;
import com.gic.enterprise.qo.EnterpriseQO;
import com.gic.enterprise.qo.OrderServiceQO;
import java.util.List;
......@@ -132,11 +133,22 @@ public interface EnterpriseApiService {
* @param pageSize
 每页多少条
* @return com.gic.api.base.commons.ServiceResponse<com.gic.api.base.commons.Page<com.gic.enterprise.dto.EnterpriseListDTO>>


 */
@Deprecated
ServiceResponse<Page<EnterpriseListDTO>> listEnterprise(String search, Integer serviceVersion,
Integer status, String orderBy,
Integer pageNum, Integer pageSize);
/**
* 最新版本的查询接口
* @Title: listEnterprise

* @Description:

* @author guojuxing
* @param params

* @return com.gic.api.base.commons.ServiceResponse<com.gic.api.base.commons.Page<com.gic.enterprise.dto.EnterpriseListDTO>>


*/
ServiceResponse<Page<EnterpriseListDTO>> listEnterprise(EnterpriseQO params);
/**
* 模糊查询商户列表
* @Title: listEnterpriseByName

* @Description:
......
......@@ -3,6 +3,7 @@ package com.gic.enterprise.dao.mapper;
import java.util.List;
import com.gic.enterprise.dto.EnterpriseDTO;
import com.gic.enterprise.qo.EnterpriseQO;
import org.apache.ibatis.annotations.Param;
import com.gic.enterprise.dto.EnterpriseListDTO;
......@@ -93,6 +94,17 @@ public interface TabEnterpriseMapper {
@Param("serviceStatus") Integer serviceStatus,
@Param("orderBy") String orderBy);
/**
* 查询列表最新
* @Title: listEnterpriseIdOfNew

* @Description:

* @author guojuxing
* @param params

* @return java.util.List<com.gic.enterprise.dto.EnterpriseListDTO>


*/
List<EnterpriseListDTO> listEnterpriseIdOfNew(EnterpriseQO params);
/**
* 商户名称/公司名称模糊查询商户
* @Title: listEnterpriseByName

......
......@@ -3,6 +3,7 @@ package com.gic.enterprise.service;
import com.gic.enterprise.dto.EnterpriseDTO;
import com.gic.enterprise.dto.EnterpriseListDTO;
import com.gic.enterprise.entity.TabEnterprise;
import com.gic.enterprise.qo.EnterpriseQO;
import com.github.pagehelper.Page;
import java.util.List;
......@@ -95,6 +96,17 @@ public interface EnterpriseService {
Page<EnterpriseListDTO> listEnterprise(String search, Integer serviceVersion,
Integer status, String orderBy,
Integer pageNum, Integer pageSize);
/**
* 最新版本的查询
* @Title: listEnterprise

* @Description:

* @author guojuxing
* @param params

* @return com.github.pagehelper.Page<com.gic.enterprise.dto.EnterpriseListDTO>


*/
Page<EnterpriseListDTO> listEnterprise(EnterpriseQO params);
/**
* 商户名称/公司名称模糊查询
* @Title: listEnterpriseByName

......
......@@ -5,6 +5,7 @@ import java.util.Date;
import java.util.List;
import com.gic.enterprise.constant.EnterpriseStatusTypeEnum;
import com.gic.enterprise.qo.EnterpriseQO;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -89,6 +90,13 @@ public class EnterpriseServiceImpl implements EnterpriseService{
}
@Override
public Page<EnterpriseListDTO> listEnterprise(EnterpriseQO params) {
PageHelper.startPage(params.getCurrentPage(), params.getPageSize());
List<EnterpriseListDTO> list = tabEnterpriseMapper.listEnterpriseIdOfNew(params);
return (Page<EnterpriseListDTO>) list;
}
@Override
public List<EnterpriseDTO> listEnterpriseByName(String search) {
List<TabEnterprise> list = tabEnterpriseMapper.listEnterpriseByName(search);
if (CollectionUtils.isNotEmpty(list)) {
......
......@@ -297,6 +297,8 @@ public class AppletWechatMenuApiServiceImpl implements AppletWechatMenuApiServic
switch (WeChatMenuTypeEnum.getByCode(menuType)) {
case MESSAGE:
//todo
button.setType("click");
button.setKey(menu.getMenuId().toString());
break;
case OUT_LINK:
button.setType("view");
......
......@@ -9,6 +9,7 @@ import com.gic.enterprise.constants.Constants;
import com.gic.enterprise.dto.EnterpriseResourceRelDTO;
import com.gic.enterprise.entity.TabEnterpriseInit;
import com.gic.enterprise.entity.TabEnterpriseResourceRel;
import com.gic.enterprise.qo.EnterpriseQO;
import com.gic.enterprise.service.*;
import com.gic.member.api.service.MemberInitApiService;
import com.gic.open.api.service.ServeApiService;
......@@ -338,6 +339,13 @@ public class EnterpriseApiServiceImpl implements EnterpriseApiService {
}
@Override
public ServiceResponse<Page<EnterpriseListDTO>> listEnterprise(EnterpriseQO params) {
com.github.pagehelper.Page page = enterpriseService.listEnterprise(params);
Page<EnterpriseListDTO> resultPage = PageHelperUtils.changePageHelperToCurrentPage(page);
return ServiceResponse.success(resultPage);
}
@Override
public ServiceResponse<List<EnterpriseDTO>> listEnterpriseByName(String search) {
return ServiceResponse.success(enterpriseService.listEnterpriseByName(search));
}
......
......@@ -274,6 +274,67 @@
</if>
</select>
<select id="listEnterpriseIdOfNew" resultType="com.gic.enterprise.dto.EnterpriseListDTO" parameterType="com.gic.enterprise.qo.EnterpriseQO">
SELECT
a.enterprise_id enterpriseId,
a.enterprise_name enterpriseName,
a.logo logo,
a.company_name companyName,
a.create_time createTime,
a.is_init_complete isInitComplete,
GROUP_CONCAT(b.upper_limit separator '-') licenseUpperLimitStr,
a.version_code versionCode,
a.version_name versionName,
a.audit_time expirationTime,
a.`service_status` serviceStatus,
if(a.audit_time is not null, DATEDIFF(a.audit_time, now()), 0) aboutToExpireDay
FROM
tab_enterprise a
LEFT JOIN tab_enterprise_license b ON a.enterprise_id = b.enterprise_id
where status = 1
<if test="search != null and search != '' ">
and ( a.enterprise_name like concat('%', #{search}, '%') or a.company_name like concat('%', #{search}, '%') )
</if>
<if test="serviceVersion != null">
and a.version_code = #{serviceVersion}
</if>
<if test="serviceStatus != null">
<if test="serviceStatus == 1 ">
and DATEDIFF(a.audit_time, now()) <![CDATA[ > ]]> 90
</if>
<if test="serviceStatus == 4 ">
and DATEDIFF(a.audit_time, now()) <![CDATA[ <= ]]> 90
and DATEDIFF(a.audit_time, now()) <![CDATA[ >= ]]> 0
</if>
<if test="serviceStatus == 3 ">
and DATEDIFF(a.audit_time, now()) <![CDATA[ < ]]> 0
</if>
<if test="serviceStatus != 4 and serviceStatus != 3 and serviceStatus != 1">
and a.service_status = #{serviceStatus}
</if>
</if>
<if test="listAll == null or listAll != 1 ">
<if test="enterpriseIdList != null and enterpriseIdList.size() &gt; 0">
and enterprise_id in
<foreach close=")" collection="enterpriseIdList" index="index" item="enterpriseId" open="(" separator=",">
#{enterpriseId}
</foreach>
</if>
or creator_id = #{creatorId}
</if>
GROUP BY a.enterprise_id
<if test="orderBy != null and orderBy != '' ">
${orderBy}
</if>
<if test="orderBy == null or orderBy == '' ">
order by a.create_time desc
</if>
</select>
<select id="listEnterpriseByName" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
......
......@@ -7,8 +7,11 @@ import java.util.List;
import java.util.Map;
import com.gic.auth.constant.UserConstants;
import com.gic.authcenter.security.core.dto.EnterpriseTempDTO;
import com.gic.authcenter.security.core.dto.UserDetailsVO;
import com.gic.enterprise.dto.EnterpriseResourceRelDTO;
import com.gic.enterprise.error.ErrorCode;
import com.gic.enterprise.qo.EnterpriseQO;
import com.gic.enterprise.utils.AutoCreatePasswordUtils;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.finance.constant.EnterprisePlatformTypeEnum;
......@@ -106,6 +109,8 @@ public class EnterpriseController {
public RestResponse saveEnterprise(
@Validated({ EnterpriseDTO.SaveEnterpriseValid.class }) EnterpriseDTO enterpriseDTO,
@Validated({ UserDTO.UserQoValid.class }) UserDTO userDTO, String resourceJson) {
//运维创建者ID
enterpriseDTO.setCreatorId(UserUtils.getUser().getId());
//前置资源解析
if (StringUtils.isNotBlank(resourceJson)) {
enterpriseDTO.setResourcesList(JSON.parseArray(resourceJson, EnterpriseResourceRelDTO.class));
......@@ -139,9 +144,22 @@ public class EnterpriseController {
if (orderBy == null) {
orderBy = 0;
}
return ResultControllerUtils
.commonResult(enterpriseApiService.listEnterprise(search, serviceVersion, serviceStatus,
EnterpriseListOrderByEnum.getOrderBy(orderBy), pageQO.getCurrentPage(), pageQO.getPageSize()));
UserDetailsVO user = UserUtils.getUser();
//运维拥有的权限商户ID集合
List<EnterpriseTempDTO> enterpriseTemp = user.getEnterpriseList();
List<Integer> enterpriseIdList = new ArrayList<>();
if (CollectionUtils.isNotEmpty(enterpriseTemp)) {
for (EnterpriseTempDTO enterpriseTempDTO : enterpriseTemp) {
enterpriseIdList.add(enterpriseTempDTO.getId());
}
}
EnterpriseQO params = new EnterpriseQO()
.setSearch(search).setServiceVersion(serviceVersion.toString()).setCreatorId(user.getId())
.setEnterpriseIdList(enterpriseIdList).setOrderBy(EnterpriseListOrderByEnum.getOrderBy(orderBy))
.setStatus(serviceStatus);
pageQO.setCurrentPage(pageQO.getCurrentPage());
pageQO.setPageSize(pageQO.getPageSize());
return ResultControllerUtils.commonResult(enterpriseApiService.listEnterprise(params));
}
/**
......
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