Commit d5ff891e by 墨竹

Merge remote-tracking branch 'origin/developer' into developer

parents 048665f8 3a30951c
......@@ -45,4 +45,11 @@ public interface HmGroupApiService {
* @return
*/
ServiceResponse<Integer> queryGroupTotalReferCount(String enterpriseId, String wxEnterpriseId);
/**
* 查询单个分组信息
* @param groupId
* @return
*/
ServiceResponse<HmGroupDTO> queryGroupDetail(Long groupId);
}
\ No newline at end of file
......@@ -21,6 +21,8 @@ public interface HmLinkApiService {
public ServiceResponse<HmLinkDTO> getByLinkId(String wxEnterpriseId, String enterprieId, Long linkId);
public ServiceResponse<HmLinkDTO> getByShortCode(String shortCode);
/**
*
* @Title: listForSms
......
......@@ -26,7 +26,7 @@ public interface TabHaobanWelcomeTemplateRelationMapper {
*/
List<TabHaobanWelcomeTemplateRelation> queryWelcomeTemplate(WelcomeRelationQO welcomeRelationQO);
TabHaobanWelcomeTemplateRelation queryWelTemplateRelation(@Param("welcomeId") String welcomeId,
List<TabHaobanWelcomeTemplateRelation> queryWelTemplateRelation(@Param("welcomeId") String welcomeId,
@Param("referId") String referId,
@Param("status") Integer status);
}
\ No newline at end of file
......@@ -50,8 +50,7 @@ public interface HmLinkMapper {
* @return
* @throws
*/
public TabHmLink selectByShortCode(@Param("enterpriseId") String enterpriseId,
@Param("shortCode") String shortCode);
public TabHmLink selectByShortCode(@Param("shortCode") String shortCode);
public List<TabHmLink> listForSms(@Param("wxEnterpriseId") String wxEnterpriseId,
@Param("enterpriseId") String enterpriseId, @Param("linkName") String linkName,
......
......@@ -26,6 +26,11 @@ public class HmPageRelationQO extends BasePageInfo {
*/
private String wxEnterpriseId;
/**
* 引用方id
*/
private String referId;
public String getPageCode() {
return pageCode;
}
......@@ -65,4 +70,12 @@ public class HmPageRelationQO extends BasePageInfo {
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getReferId() {
return referId;
}
public void setReferId(String referId) {
this.referId = referId;
}
}
......@@ -13,7 +13,7 @@ public interface HmLinkService {
public HmLinkBO getByLinkId(String wxEnterpriseId, String enterprieId,Long linkId);
public HmLinkBO getByLinkShortCode(String enterprieId,String shortCode);
public HmLinkBO getByLinkShortCode(String shortCode);
public HmLinkBO getByLinkIdFormCache(String wxEnterpriseId, String enterprieId,Long linkId);
......
......@@ -19,11 +19,14 @@ public interface HmPageRelationService {
* 保存活码 与落地页的引用关系
*
* @param hmPageRelationBO
*
* @return true 保存成功
*/
boolean savePageRelation(HmPageRelationBO hmPageRelationBO);
/**
* 更新 落地页关联状态
* referId pageId
*
* @param hmPageRelationBO
* @return
......@@ -46,7 +49,7 @@ public interface HmPageRelationService {
Page<HmPageRelationBO> queryPageRelationWithSearchText(HmPageRelationQO hmPageRelationQo);
/**
* 统计templateCode 被引用的总数
* 统计pageCode 被引用的总数
* @param pageCode
* @return
*/
......
package com.gic.haoban.manage.service.service.hm;
import com.gic.haoban.manage.service.pojo.bo.hm.HmWelcomeRelationBO;
import com.gic.haoban.manage.service.pojo.bo.welcome.WelcomeDetailBO;
/**
* @Author MUSI
* @Date 2022/7/1 6:00 PM
* @Description 活码欢迎语相关
* @Version
**/
public interface HmWelComeService {
/**
* 根据 关联方的code 获取关联的欢迎语
* @param referId
* @return
*/
WelcomeDetailBO queryHmWelcomeWithReferId(String referId);
/**
* 保存欢迎语引用关联关系
* @param hmWelcomeRelationBO
* @return
*/
Boolean saveHmWelcomeRelation(HmWelcomeRelationBO hmWelcomeRelationBO);
/**
* 修改关联关系状态
*
* @param referId
* @param status
*
* @see com.gic.haoban.manage.api.enums.WelcomeRelationStatusEnum
* @return
*/
Boolean updateWelcomeRelationStatus(String referId, Integer status);
}
......@@ -2,6 +2,7 @@ package com.gic.haoban.manage.service.service.hm;
import com.gic.api.base.commons.Page;
import com.gic.haoban.manage.service.pojo.bo.hm.HmWelcomeRelationBO;
import com.gic.haoban.manage.service.pojo.bo.welcome.WelcomeDetailBO;
import com.gic.haoban.manage.service.pojo.qo.WelcomeRelationQO;
import java.util.List;
......@@ -35,4 +36,28 @@ public interface WelcomeRelationService {
* @return
*/
Page<HmWelcomeRelationBO> queryWelcomeRelationPage(WelcomeRelationQO welcomeRelationQo);
/**
* 根据 关联方的code 获取关联的欢迎语
* @param referId
* @return
*/
WelcomeDetailBO queryHmWelcomeWithReferId(String referId);
/**
* 保存欢迎语引用关联关系
* @param hmWelcomeRelationBO
* @return
*/
Boolean saveHmWelcomeRelation(HmWelcomeRelationBO hmWelcomeRelationBO);
/**
* 修改关联关系状态
*
* @param hmWelcomeRelationBO
*
* @see com.gic.haoban.manage.api.enums.WelcomeRelationStatusEnum
* @return
*/
Boolean updateWelcomeRelationStatus(HmWelcomeRelationBO hmWelcomeRelationBO);
}
......@@ -3,6 +3,7 @@ package com.gic.haoban.manage.service.service.hm.impl;
import java.util.Date;
import java.util.List;
import org.apache.commons.collections.CollectionUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -44,18 +45,18 @@ public class HmLinkServiceImpl implements HmLinkService {
@Override
public HmLinkBO getByLinkId(String wxEnterpriseId, String enterprieId, Long linkId) {
TabHmLink link = this.linkMapper.selectById(linkId);
if(null == link) {
return null ;
if (null == link) {
return null;
}
HmLinkBO bo = EntityUtil.changeEntityByJSON(HmLinkBO.class, link);
return bo;
}
@Override
public HmLinkBO getByLinkShortCode(String enterpriseId, String shortCode) {
TabHmLink link = this.linkMapper.selectByShortCode(enterpriseId, shortCode);
if(null == link) {
return null ;
public HmLinkBO getByLinkShortCode(String shortCode) {
TabHmLink link = this.linkMapper.selectByShortCode(shortCode);
if (null == link) {
return null;
}
HmLinkBO bo = EntityUtil.changeEntityByJSON(HmLinkBO.class, link);
return bo;
......@@ -99,6 +100,12 @@ public class HmLinkServiceImpl implements HmLinkService {
TabHmLink entity = EntityUtil.changeEntityByJSON(TabHmLink.class, dto);
this.linkMapper.update(entity);
}
if (CollectionUtils.isNotEmpty(storeList)) {
storeList.forEach(item -> {
item.setWxEnterpriseId(dto.getWxEnterpriseId());
item.setEnterpriseId(dto.getEnterpriseId());
});
}
this.hmLinkStoreService.saveStore(linkId, storeList);
return dto.getLinkCode();
}
......@@ -135,11 +142,11 @@ public class HmLinkServiceImpl implements HmLinkService {
}
sb.append(PADDING[(int) (Math.random() * totalLength)]);
String code = sb.toString();
TabHmLink link = this.linkMapper.selectByShortCode(enterpriseId, code) ;
if(null == link) {
return code ;
TabHmLink link = this.linkMapper.selectByShortCode(code);
if (null == link) {
return code;
}
return shortCode(enterpriseId) ;
return shortCode(enterpriseId);
}
}
......@@ -10,6 +10,7 @@ import com.gic.haoban.manage.service.pojo.bo.hm.HmPageRelationBO;
import com.gic.haoban.manage.service.pojo.qo.HmPageRelationQO;
import com.gic.haoban.manage.service.service.hm.HmPageRelationService;
import com.github.pagehelper.PageHelper;
import org.apache.commons.collections.CollectionUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
......@@ -41,7 +42,7 @@ public class HmPageRelationServiceImpl implements HmPageRelationService {
public boolean savePageRelation(HmPageRelationBO hmPageRelationBO) {
TabHaobanHmPageRelation pageRelation = new TabHaobanHmPageRelation();
pageRelation.setEnterpriseId(hmPageRelationBO.getEnterpriseId());
pageRelation.setWxEnterpriseId(pageRelation.getWxEnterpriseId());
pageRelation.setWxEnterpriseId(hmPageRelationBO.getWxEnterpriseId());
pageRelation.setPageCode(hmPageRelationBO.getPageCode());
pageRelation.setReferId(hmPageRelationBO.getReferId());
pageRelation.setReferName(hmPageRelationBO.getReferName());
......@@ -54,7 +55,21 @@ public class HmPageRelationServiceImpl implements HmPageRelationService {
@Override
public boolean updateRelationStatus(HmPageRelationBO hmPageRelationBO) {
return false;
// 移除该referId之前的引用
Date now = new Date();
HmPageRelationQO pageRelationQo = new HmPageRelationQO();
pageRelationQo.setStatus(HmPageStatus.ENABLE.getCode());
pageRelationQo.setReferId(hmPageRelationBO.getReferId());
List<TabHaobanHmPageRelation> tabHaobanHmPageRelations = haobanHmPageRelationMapper.queryPageRelationList(pageRelationQo);
if (CollectionUtils.isNotEmpty(tabHaobanHmPageRelations)){
for (TabHaobanHmPageRelation tabHaobanHmPageRelation : tabHaobanHmPageRelations) {
tabHaobanHmPageRelation.setStatus(HmPageStatus.DISABLE.getCode());
tabHaobanHmPageRelation.setUpdateTime(now);
haobanHmPageRelationMapper.updateByPrimaryKey(tabHaobanHmPageRelation);
}
}
// insert new relation
return this.savePageRelation(hmPageRelationBO);
}
@Override
......
package com.gic.haoban.manage.service.service.hm.impl;
import com.gic.commons.util.UniqueIdUtils;
import com.gic.haoban.manage.api.enums.WelcomeRelationStatusEnum;
import com.gic.haoban.manage.service.dao.mapper.TabHaobanWelcomeTemplateRelationMapper;
import com.gic.haoban.manage.service.entity.hm.TabHaobanWelcomeTemplateRelation;
import com.gic.haoban.manage.service.pojo.bo.hm.HmWelcomeRelationBO;
import com.gic.haoban.manage.service.pojo.bo.welcome.WelcomeDetailBO;
import com.gic.haoban.manage.service.service.WelcomeService;
import com.gic.haoban.manage.service.service.hm.HmWelComeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
/**
* @Author MUSI
* @Date 2022/7/4 1:06 PM
* @Description
* @Version
**/
@Component
public class HmWelComeServiceImpl implements HmWelComeService {
@Autowired
private TabHaobanWelcomeTemplateRelationMapper welcomeTemplateRelationMapper;
@Autowired
private WelcomeService welcomeService;
/**
* 根据 关联方的code 获取关联的欢迎语
*
* @param referId
* @return
*/
@Override
public WelcomeDetailBO queryHmWelcomeWithReferId(String referId) {
TabHaobanWelcomeTemplateRelation welcomeTemplateRelation = welcomeTemplateRelationMapper.queryWelTemplateRelation(null, referId, WelcomeRelationStatusEnum.ENABLE.getCode());
if (welcomeTemplateRelation == null) {
return null;
}
return welcomeService.getWelcome(welcomeTemplateRelation.getWelcomeId(), welcomeTemplateRelation.getEnterpriseId());
}
/**
* 保存欢迎语引用关联关系
*
* @param hmWelcomeRelationBO
* @return
*/
@Override
@Transactional(rollbackFor = RuntimeException.class)
public Boolean saveHmWelcomeRelation(HmWelcomeRelationBO hmWelcomeRelationBO) {
TabHaobanWelcomeTemplateRelation welcomeTemplateRelation = new TabHaobanWelcomeTemplateRelation();
welcomeTemplateRelation.setRelationId(UniqueIdUtils.uniqueLong());
welcomeTemplateRelation.setEnterpriseId(hmWelcomeRelationBO.getEnterpriseId());
welcomeTemplateRelation.setWxEnterpriseId(hmWelcomeRelationBO.getWxEnterpriseId());
welcomeTemplateRelation.setWelcomeId(hmWelcomeRelationBO.getWelcomeId());
welcomeTemplateRelation.setReferId(hmWelcomeRelationBO.getReferId());
welcomeTemplateRelation.setReferName(hmWelcomeRelationBO.getReferName());
welcomeTemplateRelation.setType(hmWelcomeRelationBO.getType());
welcomeTemplateRelation.setStatus(WelcomeRelationStatusEnum.ENABLE.getCode());
welcomeTemplateRelation.setCreateTime(new Date());
welcomeTemplateRelation.setUpdateTime(new Date());
welcomeTemplateRelationMapper.insertSelective(welcomeTemplateRelation);
return Boolean.TRUE;
}
/**
* 删除关联关系
* 此处事务 为了事务传播
*
* @param referId
* @return
*/
@Override
@Transactional(rollbackFor = RuntimeException.class)
public Boolean updateWelcomeRelationStatus(String referId, Integer status) {
TabHaobanWelcomeTemplateRelation welcomeTemplateRelation = welcomeTemplateRelationMapper.queryWelTemplateRelation(null, referId, WelcomeRelationStatusEnum.ENABLE.getCode());
if (welcomeTemplateRelation == null) {
return Boolean.FALSE;
}
TabHaobanWelcomeTemplateRelation temp = new TabHaobanWelcomeTemplateRelation();
temp.setRelationId(welcomeTemplateRelation.getRelationId());
temp.setUpdateTime(new Date());
temp.setStatus(status);
welcomeTemplateRelationMapper.updateByPrimaryKeySelective(temp);
return Boolean.TRUE;
}
}
package com.gic.haoban.manage.service.service.hm.impl;
import com.alibaba.fastjson.JSON;
import com.gic.api.base.commons.Page;
import com.gic.commons.util.UniqueIdUtils;
import com.gic.haoban.common.utils.EntityUtil;
import com.gic.haoban.common.utils.PageUtil;
import com.gic.haoban.manage.api.enums.WelcomeRelationStatusEnum;
import com.gic.haoban.manage.service.dao.mapper.TabHaobanWelcomeTemplateRelationMapper;
import com.gic.haoban.manage.service.entity.hm.TabHaobanWelcomeTemplateRelation;
import com.gic.haoban.manage.service.pojo.bo.hm.HmWelcomeRelationBO;
import com.gic.haoban.manage.service.pojo.bo.welcome.WelcomeDetailBO;
import com.gic.haoban.manage.service.pojo.qo.WelcomeRelationQO;
import com.gic.haoban.manage.service.service.WelcomeService;
import com.gic.haoban.manage.service.service.hm.WelcomeRelationService;
import com.github.pagehelper.PageHelper;
import org.apache.commons.collections.CollectionUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
......@@ -26,9 +36,14 @@ import java.util.stream.Collectors;
@Component
public class WelcomeRelationServiceImpl implements WelcomeRelationService {
private static final Logger log = LoggerFactory.getLogger(WelcomeRelationServiceImpl.class);
@Autowired
private TabHaobanWelcomeTemplateRelationMapper welcomeTemplateRelationMapper;
@Autowired
private WelcomeService welcomeService;
/**
* 查询欢迎语关联关系
*
......@@ -38,13 +53,11 @@ public class WelcomeRelationServiceImpl implements WelcomeRelationService {
*/
@Override
public HmWelcomeRelationBO queryWelcomeRelation(String referId, Integer status) {
TabHaobanWelcomeTemplateRelation welcomeTemplateRelation = welcomeTemplateRelationMapper.queryWelTemplateRelation(null, referId, status);
if (welcomeTemplateRelation == null) {
List<TabHaobanWelcomeTemplateRelation> welcomeTemplateRelations = welcomeTemplateRelationMapper.queryWelTemplateRelation(null, referId, status);
if (CollectionUtils.isEmpty(welcomeTemplateRelations)) {
return null;
}
HmWelcomeRelationBO welcomeRelationBo = new HmWelcomeRelationBO();
BeanUtils.copyProperties(welcomeTemplateRelation, welcomeRelationBo);
return welcomeRelationBo;
return EntityUtil.changeEntityByOrika(HmWelcomeRelationBO.class, welcomeTemplateRelations.get(0));
}
/**
......@@ -80,4 +93,65 @@ public class WelcomeRelationServiceImpl implements WelcomeRelationService {
(com.github.pagehelper.Page<TabHaobanWelcomeTemplateRelation>) welcomeTemplateRelationMapper.queryWelcomeTemplate(welcomeRelationQo);
return PageUtil.changePageHelperToCurrentPage(tabHaobanWelcomeTemplateRelations, HmWelcomeRelationBO.class);
}
/**
* 根据 关联方的code 获取关联的欢迎语
*
* @param referId
* @return
*/
@Override
public WelcomeDetailBO queryHmWelcomeWithReferId(String referId) {
List<TabHaobanWelcomeTemplateRelation> welcomeTemplateRelations = welcomeTemplateRelationMapper.queryWelTemplateRelation(null, referId, WelcomeRelationStatusEnum.ENABLE.getCode());
if (CollectionUtils.isEmpty(welcomeTemplateRelations)) {
return null;
}
return welcomeService.getWelcome(welcomeTemplateRelations.get(0).getWelcomeId(), welcomeTemplateRelations.get(0).getEnterpriseId());
}
/**
* 保存欢迎语引用关联关系
*
* @param hmWelcomeRelationBO
* @return
*/
@Override
@Transactional(rollbackFor = RuntimeException.class)
public Boolean saveHmWelcomeRelation(HmWelcomeRelationBO hmWelcomeRelationBO) {
log.info("[saveHmWelcomeRelation] params:{}", JSON.toJSONString(hmWelcomeRelationBO));
TabHaobanWelcomeTemplateRelation welcomeTemplateRelation = new TabHaobanWelcomeTemplateRelation();
welcomeTemplateRelation.setRelationId(UniqueIdUtils.uniqueLong());
welcomeTemplateRelation.setEnterpriseId(hmWelcomeRelationBO.getEnterpriseId());
welcomeTemplateRelation.setWxEnterpriseId(hmWelcomeRelationBO.getWxEnterpriseId());
welcomeTemplateRelation.setWelcomeId(hmWelcomeRelationBO.getWelcomeId());
welcomeTemplateRelation.setReferId(hmWelcomeRelationBO.getReferId());
welcomeTemplateRelation.setReferName(hmWelcomeRelationBO.getReferName());
welcomeTemplateRelation.setType(hmWelcomeRelationBO.getType());
welcomeTemplateRelation.setStatus(WelcomeRelationStatusEnum.ENABLE.getCode());
welcomeTemplateRelation.setCreateTime(new Date());
welcomeTemplateRelation.setUpdateTime(new Date());
welcomeTemplateRelationMapper.insertSelective(welcomeTemplateRelation);
return Boolean.TRUE;
}
/**
* 删除关联关系
*
* @param hmWelcomeRelationBO
* @return
*/
@Override
@Transactional(rollbackFor = RuntimeException.class)
public Boolean updateWelcomeRelationStatus(HmWelcomeRelationBO hmWelcomeRelationBO) {
log.info("[updateWelcomeRelationStatus] params:{}", JSON.toJSONString(hmWelcomeRelationBO));
// 取消该referId已有的引用
List<TabHaobanWelcomeTemplateRelation> tabHaobanWelcomeTemplateRelations =
welcomeTemplateRelationMapper.queryWelTemplateRelation(null, hmWelcomeRelationBO.getReferId(), WelcomeRelationStatusEnum.ENABLE.getCode());
for (TabHaobanWelcomeTemplateRelation tabHaobanWelcomeTemplateRelation : tabHaobanWelcomeTemplateRelations) {
tabHaobanWelcomeTemplateRelation.setStatus(WelcomeRelationStatusEnum.DISABLE.getCode());
tabHaobanWelcomeTemplateRelation.setUpdateTime(new Date());
welcomeTemplateRelationMapper.updateByPrimaryKeySelective(tabHaobanWelcomeTemplateRelation);
}
return this.saveHmWelcomeRelation(hmWelcomeRelationBO);
}
}
......@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.base.api.common.errCode.HaoBanErrCodeCommon;
import com.gic.haoban.common.utils.EntityUtil;
import com.gic.haoban.common.utils.PageUtil;
import com.gic.haoban.manage.api.dto.hm.HmGroupDTO;
import com.gic.haoban.manage.api.dto.hm.HmGroupQueryDTO;
......@@ -98,8 +99,11 @@ public class HmGroupApiServiceImpl implements HmGroupApiService {
Page<HmGroupDTO> groupDtoPage = PageUtil.changeToCurrentPage(groupSettingPage, HmGroupDTO.class);
List<HmGroupDTO> result = new ArrayList<>();
if (groupQueryDTO.getPageNum() == 1) {
// 第一页展示默认分组选项
// todo query 活码 默认分组的总数
result.add(buildDefault(0));
}
if (CollectionUtils.isNotEmpty(groupDtoPage.getResult())) {
groupDtoPage.getResult().forEach(item -> item.setDefaultFlag(0));
result.addAll(groupDtoPage.getResult());
......@@ -150,4 +154,17 @@ public class HmGroupApiServiceImpl implements HmGroupApiService {
Integer referCount = groupService.queryGroupTotalReferCount(enterpriseId, wxEnterpriseId);
return ServiceResponse.success(referCount);
}
/**
* 查询单个分组信息
*
* @param groupId
* @return
*/
@Override
public ServiceResponse<HmGroupDTO> queryGroupDetail(Long groupId) {
HmGroupSettingBO groupSettingBO = groupService.queryGroupSettingDetail(groupId);
HmGroupDTO groupDTO = EntityUtil.changeEntityByOrika(HmGroupDTO.class, groupSettingBO);
return ServiceResponse.success(groupDTO);
}
}
......@@ -89,22 +89,32 @@ public class HmLinkApiServiceImpl implements HmLinkApiService {
}
@Override
public ServiceResponse<HmLinkDTO> getByShortCode(String shortCode) {
HmLinkBO bo = this.hmLinkService.getByLinkShortCode(shortCode);
if (null == bo) {
return ServiceResponse.failure(HaoBanErrCode.ERR_OTHER.getCode(), "链接不存在");
}
HmLinkDTO dto = EntityUtil.changeEntityByJSON(HmLinkDTO.class, bo);
return ServiceResponse.success(dto);
}
@Override
public ServiceResponse<List<HmLinkDTO>> listForSms(String wxEnterpriseId, String enterprieId, String linkName,
Integer linkType) {
List<HmLinkBO> list = this.hmLinkService.listForSms(wxEnterpriseId, enterprieId, linkName, linkType) ;
List<HmLinkDTO> retList = EntityUtil.changeEntityListByJSON(HmLinkDTO.class, list) ;
List<HmLinkBO> list = this.hmLinkService.listForSms(wxEnterpriseId, enterprieId, linkName, linkType);
List<HmLinkDTO> retList = EntityUtil.changeEntityListByJSON(HmLinkDTO.class, list);
return ServiceResponse.success(retList);
}
@Override
public ServiceResponse<String> save(HmLinkDTO dto) {
String id = this.hmLinkService.saveLink(dto, dto.getStoreList()) ;
String id = this.hmLinkService.saveLink(dto, dto.getStoreList());
return ServiceResponse.success(id);
}
@Override
public ServiceResponse<Page<HmLinkDTO>> listPage(HmLinkSearchQDTO qdto, BasePageInfo basePageInfo) {
Page<HmLinkBO> page = this.hmLinkService.listPage(qdto, basePageInfo) ;
Page<HmLinkBO> page = this.hmLinkService.listPage(qdto, basePageInfo);
Page<HmLinkDTO> resultPage = PageHelperUtils.changePageToCurrentPage(page, HmLinkDTO.class);
return ServiceResponse.success(resultPage);
}
......@@ -115,7 +125,7 @@ public class HmLinkApiServiceImpl implements HmLinkApiService {
HmQrcodeBO hm = null;
HmLinkWxaDTO retDTO = new HmLinkWxaDTO();
log.info("小程序获取活码={},linkShortCode={},mixPhone={}", enterpriseId, linkShortCode, mixPhone);
HmLinkBO link = this.hmLinkService.getByLinkShortCode(enterpriseId, linkShortCode);
HmLinkBO link = this.hmLinkService.getByLinkShortCode(linkShortCode);
if (null == link) {
log.error("链接记录不存,linkShortCode={}", linkShortCode);
return ServiceResponse.failure(HaoBanErrCode.ERR_OTHER.getCode(), "链接记录不存");
......
package com.gic.haoban.manage.service.service.out.impl.hm;
import com.alibaba.fastjson.JSON;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.base.api.common.errCode.HaoBanErrCodeCommon;
......@@ -68,7 +69,7 @@ public class HmPageApiServiceImpl implements HmPageApiService {
@Override
@Transactional(rollbackFor = RuntimeException.class)
public ServiceResponse<Boolean> deleteHmPage(HmPageDTO pageDTO) {
log.info("[deleteHmPage] 删除落地页模板, params:{}", JSON.toJSONString(pageDTO));
HmPageBO pageBo = haobanHmPageService.queryHmPageDetail(pageDTO.getPageId());
if (Objects.isNull(pageBo) || !Objects.equals(HmPageStatus.ENABLE.getCode(), pageBo.getStatus())) {
return ServiceResponse.failure(HaoBanErrCodeCommon.ERR_8.getCode() + "", HaoBanErrCodeCommon.ERR_8.getMsg());
......
......@@ -115,7 +115,7 @@
</select>
<select id="selectByShortCode" resultMap="result-map-tabHaobanHmLink">
SELECT <include refid="Base_Column_List" /> FROM tab_haoban_hm_link WHERE enterprise_id=#{enterpriseId} and short_code=#{shortCode} and status_flag = 1
SELECT <include refid="Base_Column_List" /> FROM tab_haoban_hm_link WHERE short_code=#{shortCode} and status_flag = 1
</select>
<select id="listForSms" resultMap="result-map-tabHaobanHmLink">
......
......@@ -20,6 +20,7 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
import java.util.Optional;
/**
* @Author MUSI
......@@ -45,6 +46,7 @@ public class HmGroupController extends WebBaseController {
hmGroupDTO.setWxEnterpriseId(loginUser.getWxEnterpriseId());
ServiceResponse<Long> serviceResponse = groupApiService.saveOrUpdateHmGroupSetting(hmGroupDTO);
if (serviceResponse.isSuccess()){
String logContent = "新增分组【" + hmGroupDTO.getGroupName() + "】";
return RestResponse.successResult(serviceResponse.getResult());
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
......@@ -76,8 +78,13 @@ public class HmGroupController extends WebBaseController {
hmGroupDTO.setGroupId(hmGroupSettingVO.getGroupId());
hmGroupDTO.setEnterpriseId(loginUser.getEnterpriseId());
hmGroupDTO.setWxEnterpriseId(loginUser.getWxEnterpriseId());
ServiceResponse<HmGroupDTO> queryGroupDetail = groupApiService.queryGroupDetail(hmGroupDTO.getGroupId());
ServiceResponse<Long> serviceResponse = groupApiService.saveOrUpdateHmGroupSetting(hmGroupDTO);
if (serviceResponse.isSuccess()){
String oldGroupName = Optional.ofNullable(queryGroupDetail.getResult()).map(HmGroupDTO::getGroupName).orElse("");
String logContent = "修改分组【" + hmGroupDTO.getGroupName() + "】:分组名称「 " + oldGroupName + "」变更为「 " + hmGroupDTO.getGroupName() + "」";
return RestResponse.successResult(serviceResponse.getResult());
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
......@@ -93,8 +100,11 @@ public class HmGroupController extends WebBaseController {
hmGroupDTO.setModifierId(loginUser.getClerkId());
hmGroupDTO.setModifierName(loginUser.getClerkName());
hmGroupDTO.setGroupId(hmGroupSettingVO.getGroupId());
ServiceResponse<HmGroupDTO> queryGroupDetail = groupApiService.queryGroupDetail(hmGroupDTO.getGroupId());
ServiceResponse<Boolean> serviceResponse = groupApiService.deleteGroupSetting(hmGroupDTO);
if (serviceResponse.isSuccess()){
String logContent = "删除分组【" + queryGroupDetail.getResult().getGroupName()+ "】";
return RestResponse.successResult(serviceResponse.getResult());
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
......
......@@ -377,6 +377,13 @@ public class HmLinkController {
HmLinkDTO link = linkResp.getResult();
Map<String, Object> retMap = new HashMap<>();
HmLinkVO linkVO = EntityUtil.changeEntityByJSON(HmLinkVO.class, link);
String memberLabelId = link.getMemberLabelId();
if (StringUtils.isNotBlank(memberLabelId)) {
MemberTagItemDTO tag = this.memberTagApiService.findMemberTagItem(memberLabelId);
if (null != tag) {
linkVO.setMemberLabelName(tag.getTagName() + "-" + tag.getTagItemName());
}
}
retMap.put("link", linkVO);
// 落地页
Long pageId = link.getPageId();
......
......@@ -7,23 +7,23 @@ import com.gic.haoban.base.api.common.PageResult2;
import com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO;
import com.gic.haoban.common.utils.AuthWebRequestUtil;
import com.gic.haoban.common.utils.PageUtil;
import com.gic.haoban.manage.api.dto.qdto.hm.HmPageRelationQDTO;
import com.gic.haoban.manage.api.dto.hm.HmPageRelationDTO;
import com.gic.haoban.manage.api.dto.hm.HmPageDTO;
import com.gic.haoban.manage.api.dto.hm.HmPageRelationDTO;
import com.gic.haoban.manage.api.dto.qdto.hm.HmPageQDTO;
import com.gic.haoban.manage.api.dto.qdto.hm.HmPageRelationQDTO;
import com.gic.haoban.manage.api.service.hm.HmPageApiService;
import com.gic.haoban.manage.web.vo.hm.HmPageInfoVO;
import com.gic.haoban.manage.web.vo.hm.HmPageListVO;
import com.gic.haoban.manage.web.vo.hm.HmPageSettingReq;
import com.gic.haoban.manage.web.errCode.HaoBanErrCode;
import com.gic.haoban.manage.web.qo.hm.HmPageListQO;
import com.gic.haoban.manage.web.qo.hm.HmPageSettingReq;
import com.gic.haoban.manage.web.vo.hm.PageRelationVO;
import com.gic.log.record.util.GicLogRecordEvaluationContext;
import org.springframework.beans.BeanUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
import java.util.List;
import java.util.stream.Collectors;
/**
* @Author MUSI
......@@ -35,27 +35,28 @@ import java.util.stream.Collectors;
@RequestMapping(path = "/hm/guide")
public class HmPageController {
private static final Logger log = LoggerFactory.getLogger(HmPageController.class);
@Autowired
private HmPageApiService pageApiService;
@RequestMapping(path = "/page/save")
public RestResponse<?> savePage(@Valid HmPageSettingReq pageSettingVO){
public RestResponse<?> savePage(@Valid HmPageSettingReq pageSettingReq){
WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser();
HmPageDTO pageDTO = new HmPageDTO();
pageDTO.setPageName(pageSettingVO.getTemplateName());
pageDTO.setPageTitle(pageSettingVO.getPageTitle());
pageDTO.setMerchantName(pageSettingVO.getMerchantName());
pageDTO.setMerchantPhoneNumber(pageSettingVO.getMerchantPhoneNumber());
pageDTO.setMerchantLogo(pageSettingVO.getMerchantLogo());
pageDTO.setPageBackgroundImg(pageSettingVO.getPageBackgroundImg());
pageDTO.setGuideComment(pageSettingVO.getGuideComment());
pageDTO.setPageName(pageSettingReq.getPageName());
pageDTO.setPageTitle(pageSettingReq.getPageTitle());
pageDTO.setMerchantName(pageSettingReq.getMerchantName());
pageDTO.setMerchantPhoneNumber(pageSettingReq.getMerchantPhoneNumber());
pageDTO.setMerchantLogo(pageSettingReq.getMerchantLogo());
pageDTO.setPageBackgroundImg(pageSettingReq.getPageBackgroundImg());
pageDTO.setGuideComment(pageSettingReq.getGuideComment());
pageDTO.setCreateorId(loginUser.getClerkId());
pageDTO.setCreateorName(loginUser.getClerkName());
pageDTO.setEnterpriseId(loginUser.getEnterpriseId());
pageDTO.setWxEnterpriseId(loginUser.getWxEnterpriseId());
ServiceResponse<Long> serviceResponse = pageApiService.saveOrUpdateHmPage(pageDTO);
if (serviceResponse.isSuccess()){
String logContent = "新增落地页模板【MB01" + serviceResponse.getResult()+"-" + pageSettingVO.getTemplateName() +"】";
String logContent = "新增落地页模板【MB01" + serviceResponse.getResult()+"-" + pageSettingReq.getPageName() +"】";
return RestResponse.successResult(serviceResponse.getResult());
}
GicLogRecordEvaluationContext.putAttribute("saved", Boolean.FALSE);
......@@ -64,17 +65,23 @@ public class HmPageController {
@RequestMapping(path = "/page/edit")
public RestResponse<?> editPageTemplate(@Valid HmPageSettingReq pageSettingVO){
public RestResponse<?> editPage(@Valid HmPageSettingReq pageSettingReq){
if (pageSettingReq.getPageId() == null){
log.warn("[editPage] 无pageId");
return RestResponse.failure(HaoBanErrCode.ERR_2.getCode()+"", HaoBanErrCode.ERR_2.getMsg());
}
WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser();
HmPageDTO pageDTO = new HmPageDTO();
pageDTO.setPageId(pageSettingVO.getTemplateId());
pageDTO.setPageName(pageSettingVO.getTemplateName());
pageDTO.setPageTitle(pageSettingVO.getPageTitle());
pageDTO.setMerchantName(pageSettingVO.getMerchantName());
pageDTO.setMerchantPhoneNumber(pageSettingVO.getMerchantPhoneNumber());
pageDTO.setMerchantLogo(pageSettingVO.getMerchantLogo());
pageDTO.setPageBackgroundImg(pageSettingVO.getPageBackgroundImg());
pageDTO.setGuideComment(pageSettingVO.getGuideComment());
pageDTO.setPageId(pageSettingReq.getPageId());
pageDTO.setPageName(pageSettingReq.getPageName());
pageDTO.setPageTitle(pageSettingReq.getPageTitle());
pageDTO.setMerchantName(pageSettingReq.getMerchantName());
pageDTO.setMerchantPhoneNumber(pageSettingReq.getMerchantPhoneNumber());
pageDTO.setMerchantLogo(pageSettingReq.getMerchantLogo());
pageDTO.setPageBackgroundImg(pageSettingReq.getPageBackgroundImg());
pageDTO.setGuideComment(pageSettingReq.getGuideComment());
pageDTO.setCreateorId(loginUser.getClerkId());
pageDTO.setCreateorName(loginUser.getClerkName());
pageDTO.setEnterpriseId(loginUser.getEnterpriseId());
......@@ -130,10 +137,10 @@ public class HmPageController {
}
@RequestMapping(path = "/page/list")
public RestResponse<?> queryPageList(HmPageListVO pageListVO){
public RestResponse<?> queryPageList(HmPageListQO pageListVO){
WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser();
com.gic.haoban.manage.api.dto.qdto.hm.HmPageQDTO hmPageQDTO = new com.gic.haoban.manage.api.dto.qdto.hm.HmPageQDTO();
HmPageQDTO hmPageQDTO = new HmPageQDTO();
hmPageQDTO.setPageNum(pageListVO.getPageNum());
hmPageQDTO.setPageSize(pageListVO.getPageSize());
hmPageQDTO.setEnterpriseId(loginUser.getEnterpriseId());
......@@ -143,15 +150,6 @@ public class HmPageController {
hmPageQDTO.setEndTime(pageListVO.getEndTime());
ServiceResponse<Page<HmPageDTO>> serviceResponse = pageApiService.queryPageList(hmPageQDTO);
PageResult2 pageInfo = PageUtil.getPageInfo(serviceResponse.getResult());
List<HmPageInfoVO> pageInfoVos = ((List<HmPageDTO>)pageInfo.getList()).stream().map(item -> {
HmPageInfoVO pageInfoVo = new HmPageInfoVO();
BeanUtils.copyProperties(item, pageInfoVo);
pageInfoVo.setTemplateName(item.getPageName());
pageInfoVo.setTemplateCode(item.getPageCode());
pageInfoVo.setTemplateId(item.getPageId());
return pageInfoVo;
}).collect(Collectors.toList());
pageInfo.setList(pageInfoVos);
return RestResponse.successResult(pageInfo);
}
......@@ -162,16 +160,20 @@ public class HmPageController {
hmPageDTO.setPageId(pageId);
hmPageDTO.setModifierId(loginUser.getClerkId());
hmPageDTO.setModifierName(loginUser.getClerkName());
ServiceResponse<HmPageDTO> queryPageDetail = pageApiService.queryPageDetail(pageId);
ServiceResponse<Boolean> serviceResponse = pageApiService.deleteHmPage(hmPageDTO);
if (serviceResponse.isSuccess()){
String logContent = "删除落地页模板【" + queryPageDetail.getResult().getPageTitle() + "-" + queryPageDetail.getResult().getPageName()+"】";
return RestResponse.successResult(serviceResponse.getResult());
}
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
@RequestMapping(path = "/page/detail")
public RestResponse<?> queryPageDetail(Long templateId){
ServiceResponse<HmPageDTO> serviceResponse = pageApiService.queryPageDetail(templateId);
public RestResponse<?> queryPageDetail(Long pageId){
ServiceResponse<HmPageDTO> serviceResponse = pageApiService.queryPageDetail(pageId);
return RestResponse.successResult(serviceResponse.getResult());
}
......
package com.gic.haoban.manage.web.log;
import com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO;
import com.gic.haoban.common.utils.AuthWebRequestUtil;
import com.gic.log.record.bean.GicLogRecordUser;
import com.gic.log.record.service.LogRecordUserService;
import org.springframework.stereotype.Service;
/**
* 描述: LogRecordUserServiceImpl
*
* @author yujie
* @date 2022/1/22 15:17
*/
@Service
public class LogRecordUserServiceImpl extends LogRecordUserService {
@Override
public boolean isDefault() { //是否默认的用户获取类,如果设置了默认的 注解里的 userFunc的默认值就会变成这个获取用户信息
return true;
}
@Override
public GicLogRecordUser getUser() {
WebLoginDTO loginUser = AuthWebRequestUtil.getLoginUser();
return new GicLogRecordUser(loginUser.getClerkId(), loginUser.getClerkName(), loginUser.getClerkFullName(), loginUser.getEnterpriseId());
}
}
......@@ -11,6 +11,7 @@ import com.gic.haoban.base.api.common.BasePageInfo;
public class HmGroupQO extends BasePageInfo {
private static final long serialVersionUID = -121538712996188058L;
private String groupName;
public String getGroupName() {
......
package com.gic.haoban.manage.web.vo.hm;
package com.gic.haoban.manage.web.qo.hm;
import com.gic.haoban.base.api.common.BasePageInfo;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
......@@ -10,12 +11,15 @@ import java.util.Date;
* @Description
* @Version
**/
public class HmPageListVO extends BasePageInfo {
public class HmPageListQO extends BasePageInfo {
private static final long serialVersionUID = 660563636929408221L;
private String pageSearchText;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date startTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endTime;
public String getPageSearchText() {
......
package com.gic.haoban.manage.web.vo.hm;
package com.gic.haoban.manage.web.qo.hm;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotEmpty;
......@@ -14,13 +14,13 @@ import java.io.Serializable;
public class HmPageSettingReq implements Serializable {
private static final long serialVersionUID = -3759274516687664059L;
private Long templateId;
private Long pageId;
/**
* 落地页模板名称
*/
@NotEmpty(message = "落地页模板名称不能为空")
@Length(max = 20, message = "落地页模板名称长度最大为20个字符")
private String templateName;
private String pageName;
/**
* 页面标题
*/
......@@ -53,20 +53,20 @@ public class HmPageSettingReq implements Serializable {
*/
private String guideComment;
public Long getTemplateId() {
return templateId;
public Long getPageId() {
return pageId;
}
public void setTemplateId(Long templateId) {
this.templateId = templateId;
public void setPageId(Long pageId) {
this.pageId = pageId;
}
public String getTemplateName() {
return templateName;
public String getPageName() {
return pageName;
}
public void setTemplateName(String templateName) {
this.templateName = templateName;
public void setPageName(String pageName) {
this.pageName = pageName;
}
public String getPageTitle() {
......
......@@ -26,6 +26,15 @@ public class HmLinkListVO extends HmLinkStatisticsVO implements Serializable {
private java.util.Date createTime;
private java.util.Date updateTime;
private String shortCode;
private String linkUrl ;
public String getLinkUrl() {
return linkUrl;
}
public void setLinkUrl(String linkUrl) {
this.linkUrl = linkUrl;
}
public Long getLinkId() {
return linkId;
......
......@@ -40,11 +40,29 @@ public class HmLinkVO implements Serializable {
private String customRuleJson;
/**会员活动标签*/
private String memberLabelId;
private String memberLabelName;
/**0删除 1正常*/
private Integer statusFlag;
private String shortCode;
private String linkUrl;
private List<HmLinkStoreVO> storeList;
public String getMemberLabelName() {
return memberLabelName;
}
public void setMemberLabelName(String memberLabelName) {
this.memberLabelName = memberLabelName;
}
public String getLinkUrl() {
return linkUrl;
}
public void setLinkUrl(String linkUrl) {
this.linkUrl = linkUrl;
}
public List<HmLinkStoreVO> getStoreList() {
return storeList;
}
......
......@@ -10,16 +10,17 @@ import com.gic.haoban.base.api.common.BasePageInfo;
**/
public class PageRelationVO extends BasePageInfo {
private Long templateId;
private static final long serialVersionUID = 620990188413994137L;
private Long pageId;
private String searchContent;
public Long getTemplateId() {
return templateId;
public Long getPageId() {
return pageId;
}
public void setTemplateId(Long templateId) {
this.templateId = templateId;
public void setPageId(Long pageId) {
this.pageId = pageId;
}
public String getSearchContent() {
......
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