zhangyuewww 2 anos atrás
pai
commit
90e59da297

+ 2 - 1
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/ICircleManagementInfoService.java

@@ -42,7 +42,8 @@ public interface ICircleManagementInfoService{
 	public Boolean update(@NotNull @HttpParam(name = "circleManagementInfo", type = HttpParamType.COMMON, description = "圈子管理") CircleManagementInfo circleManagementInfo)throws ServiceException;
 
 	@HttpMethod(description = "查询",  permissionName = "圈子管理管理")
-	public CircleManagementInfo get(@NotNull @HttpParam(name = "id", type = HttpParamType.COMMON, description = "")Long id)throws ServiceException;
+	public CircleManagementInfo get(@NotNull @HttpParam(name = "id", type = HttpParamType.COMMON, description = "")Long id,
+									@HttpParam(name = "commonId", type = HttpParamType.COMMON, description = "个人id") Long commonId)throws ServiceException;
 	
 	@HttpMethod(description = "导出excl表",  permissionName = "圈子管理管理")
 	public String export(

+ 26 - 8
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CardExchangeInfoServiceImpl.java

@@ -3,10 +3,16 @@ package com.iotechn.unimall.admin.api.card.impl;
 import java.util.List;
 
 import com.iotechn.unimall.admin.api.card.ICardExchangeInfoService;
+import com.iotechn.unimall.core.exception.AppServiceException;
+import com.iotechn.unimall.core.exception.ExceptionDefinition;
 import com.iotechn.unimall.data.domain.CardExchangeInfo;
 import com.iotechn.unimall.data.domain.CardHolderInfo;
+import com.iotechn.unimall.data.domain.CardManagementInfo;
+import com.iotechn.unimall.data.dto.goods.GroupShopDTO;
+import com.iotechn.unimall.data.dto.order.OrderDTO;
 import com.iotechn.unimall.data.mapper.CardExchangeInfoMapper;
 import com.iotechn.unimall.data.mapper.CardHolderInfoMapper;
+import com.iotechn.unimall.data.mapper.CardManagementInfoMapper;
 import com.iotechn.unimall.data.model.Page;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
@@ -32,6 +38,8 @@ public class CardExchangeInfoServiceImpl implements ICardExchangeInfoService {
 	private CardExchangeInfoMapper cardExchangeInfoMapper;
 	@Autowired
 	private CardHolderInfoMapper cardHolderInfoMapper;
+	@Autowired
+	private CardManagementInfoMapper cardManagementInfoMapper;
 	
 	@Override
 	public Boolean add(CardExchangeInfo cardExchangeInfo) throws ServiceException {
@@ -72,8 +80,8 @@ public class CardExchangeInfoServiceImpl implements ICardExchangeInfoService {
 					wrapper.eq("delete_flag", deleteFlag);
 				}
 							wrapper.eq("delete_flag", 0);
-		List<CardExchangeInfo> list = cardExchangeInfoMapper.selectPage(new RowBounds((page - 1) * limit, limit), wrapper);
 		Integer count = cardExchangeInfoMapper.selectCount(wrapper);
+		List<CardExchangeInfo> list = cardExchangeInfoMapper.getCardExchangeInfoPage((page - 1) * limit, limit,receiveId);
 		return new Page<CardExchangeInfo>(list, page, limit, count);
 	}
 
@@ -97,29 +105,39 @@ public class CardExchangeInfoServiceImpl implements ICardExchangeInfoService {
 		cardExchangeInfo.setGmtUpdate(now);
 		//拉黑
 		if ("1".equals(updateFlag)){
+			cardExchangeInfo.setStatus("7");
 		}
 		//拒绝
 		else if ("2".equals(updateFlag)){
 			cardExchangeInfo.setStatus("3");
 		}
 		//接受
-		else{
+		else if ("3".equals(updateFlag)){
 			cardExchangeInfo.setStatus("1");
-			//发起人名片夹添加数据
+			//接收人名片夹添加数据
 			CardHolderInfo cardHolderInfo=new CardHolderInfo();
-			cardHolderInfo.setCardId(String.valueOf(cardExchangeInfo.getReceiveCardId()));
-			cardHolderInfo.setCommonId(cardExchangeInfo.getSendId());
+			cardHolderInfo.setCardId(String.valueOf(cardExchangeInfo.getSendCardId()));
+			CardManagementInfo cardManagementInfo=cardManagementInfoMapper.selectById(cardExchangeInfo.getSendCardId());
+			//查看发起人名片是否删除
+			if (cardManagementInfo.getCommonId()==-1){
+				throw new AppServiceException(ExceptionDefinition.ACCEPT_CARD_ERROR);
+			}
+			cardHolderInfo.setCommonId(cardExchangeInfo.getReceiveId());
 			cardHolderInfo.setGmtCreate(now);
 			cardHolderInfo.setGmtUpdate(now);
 			cardHolderInfoMapper.insert(cardHolderInfo);
-			//接收人名片夹添加数据
+			//发起人名片夹添加数据
 			cardHolderInfo=new CardHolderInfo();
-			cardHolderInfo.setCardId(String.valueOf(cardExchangeInfo.getSendCardId()));
-			cardHolderInfo.setCommonId(cardExchangeInfo.getReceiveId());
+			cardHolderInfo.setCardId(String.valueOf(cardExchangeInfo.getReceiveCardId()));
+			cardHolderInfo.setCommonId(cardExchangeInfo.getSendId());
 			cardHolderInfo.setGmtCreate(now);
 			cardHolderInfo.setGmtUpdate(now);
 			cardHolderInfoMapper.insert(cardHolderInfo);
 		}
+		//移除
+		else{
+			cardExchangeInfo.setStatus("0");
+		}
 		return cardExchangeInfoMapper.updateById(cardExchangeInfo)>0;
 	}
 

+ 41 - 5
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CircleManagementInfoServiceImpl.java

@@ -3,9 +3,7 @@ package com.iotechn.unimall.admin.api.card.impl;
 import java.util.*;
 
 import com.iotechn.unimall.data.domain.*;
-import com.iotechn.unimall.data.mapper.CardManagementInfoMapper;
-import com.iotechn.unimall.data.mapper.CircleCardInfoMapper;
-import com.iotechn.unimall.data.mapper.CommonUserInfoMapper;
+import com.iotechn.unimall.data.mapper.*;
 import org.apache.ibatis.session.RowBounds;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -16,7 +14,6 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.iotechn.unimall.core.exception.ServiceException;
 import com.iotechn.unimall.data.util.ExcelUtil;
-import com.iotechn.unimall.data.mapper.CircleManagementInfoMapper;
 import com.iotechn.unimall.admin.api.card.ICircleManagementInfoService;
 import com.iotechn.unimall.data.model.Page;
 import org.springframework.transaction.annotation.Transactional;
@@ -37,6 +34,10 @@ public class CircleManagementInfoServiceImpl implements ICircleManagementInfoSer
 	private CardManagementInfoMapper cardManagementInfoMapper;
 	@Autowired
 	private CommonUserInfoMapper commonUserInfoMapper;
+	@Autowired
+	private CardHolderInfoMapper cardHolderInfoMapper;
+	@Autowired
+	private CardExchangeInfoMapper cardExchangeInfoMapper;
 	
 	@Override
 	public Boolean add(CircleManagementInfo circleManagementInfo) throws ServiceException {
@@ -123,7 +124,7 @@ public class CircleManagementInfoServiceImpl implements ICircleManagementInfoSer
 	}
 
 	@Override
-	public CircleManagementInfo get(Long id) throws ServiceException {
+	public CircleManagementInfo get(Long id,Long commonId) throws ServiceException {
 		CircleManagementInfo circleManagementInfo=circleManagementInfoMapper.selectById(id);
 		//查询圈子名片关系表
 		List<CircleCardInfo> circleCardInfoList=circleCardInfoMapper.selectList(new EntityWrapper<CircleCardInfo>()
@@ -134,6 +135,32 @@ public class CircleManagementInfoServiceImpl implements ICircleManagementInfoSer
 			//查询名片信息
 			CardManagementInfo cardManagementInfo=cardManagementInfoMapper.selectById(circleCardInfo.getCardId());
 			if (cardManagementInfo!=null){
+				//我的名片
+				if (cardManagementInfo.getCommonId().equals(commonId)){
+					cardManagementInfo.setNotDisplay(1l);
+				}
+				List<CardHolderInfo> cardHolderInfoList=cardHolderInfoMapper.selectList(new EntityWrapper<CardHolderInfo>()
+					.eq("delete_flag",0)
+					.eq("common_id",commonId)
+					.eq("card_id",cardManagementInfo.getId()));
+				//我拥有的名片
+				if (cardHolderInfoList.size()>0){
+					cardManagementInfo.setNotDisplay(1l);
+					cardManagementInfo.setExchangeFlag(1l);
+				}
+				List<CardExchangeInfo> cardExchangeInfoList=cardExchangeInfoMapper.selectList(new EntityWrapper<CardExchangeInfo>()
+						.eq("delete_flag",0)
+						.eq("send_id",commonId)
+						.eq("receive_card_id",cardManagementInfo.getId()));
+				//发送过邀请的名片
+				if (cardHolderInfoList.size()>0){
+					for (CardExchangeInfo cardExchangeInfo:cardExchangeInfoList){
+						//已接收未处理或者拉黑的
+						if ("1".equals(cardExchangeInfo.getStatus())||"7".equals(cardExchangeInfo.getStatus())||"0".equals(cardExchangeInfo.getStatus())){
+							cardManagementInfo.setNotDisplay(1l);
+						}
+					}
+				}
 				//查看是否允许圈子成员查看主页
 				CommonUserInfo commonUserInfo=commonUserInfoMapper.selectById(cardManagementInfo.getCommonId());
 				if (commonUserInfo!=null){
@@ -143,6 +170,15 @@ public class CircleManagementInfoServiceImpl implements ICircleManagementInfoSer
 			}
 		}
 		circleManagementInfo.setCardManagementInfoList(cardManagementInfoList);
+		CircleCardInfo circleCardInfo=new CircleCardInfo();
+		circleCardInfo.setCommonId(commonId);
+		circleCardInfo.setCircleId(circleManagementInfo.getId());
+		circleCardInfo.setDeleteFlag(0l);
+		CircleCardInfo circleCardInfo1=circleCardInfoMapper.selectOne(circleCardInfo);
+		//我加入该圈子的名片
+		if (circleCardInfo1!=null){
+			circleManagementInfo.setCircleCardInfo(circleCardInfo1);
+		}
 		return circleManagementInfo;
 	}
 	

+ 2 - 0
unimall-core/src/main/java/com/iotechn/unimall/core/exception/ExceptionDefinition.java

@@ -386,6 +386,8 @@ public class ExceptionDefinition {
             new ServiceExceptionDefinition(53017, "导入表失败");
     public static final ServiceExceptionDefinition CLASSIFY_REPEAT_ERROR =
             new ServiceExceptionDefinition(53018, "分类名称重复");
+    public static final ServiceExceptionDefinition ACCEPT_CARD_ERROR =
+            new ServiceExceptionDefinition(53019, "接受失败,对方名片已删除");
 
 
 

+ 2 - 2
unimall-data/src/main/java/com/iotechn/unimall/data/domain/CardExchangeInfo.java

@@ -54,7 +54,7 @@ public class CardExchangeInfo extends SuperDO {
     private String circleName;
 
     /** 状态(1已接受3已拒绝5已过期) */
-    @Excel(name = "状态(1已接受3已拒绝5已过期)")
+    @Excel(name = "状态(1已接受3已拒绝5已过期7已拉黑)")
     @TableField("status")
     private String status;
 
@@ -73,7 +73,7 @@ public class CardExchangeInfo extends SuperDO {
     @TableField("delete_flag")
     private Long deleteFlag;
     /**
-     * 修改标识 1拉黑2拒绝3接受
+     * 修改标识 1拉黑2拒绝3接受4移除
      */
     @TableField(exist = false)
     private String updateFlag;

+ 6 - 0
unimall-data/src/main/java/com/iotechn/unimall/data/domain/CardManagementInfo.java

@@ -127,6 +127,12 @@ public class CardManagementInfo extends SuperDO {
     /** 允许圈子成员查看主页(1允许) */
     @TableField(exist = false)
     private Long lookPage;
+    /** 交换按钮不显示标识(1不显示) */
+    @TableField(exist = false)
+    private Long notDisplay;
+    /** 已交换标识 */
+    @TableField(exist = false)
+    private Long exchangeFlag;
 
     @Override
     public String toString() {

+ 2 - 1
unimall-data/src/main/java/com/iotechn/unimall/data/domain/CircleManagementInfo.java

@@ -72,7 +72,8 @@ public class CircleManagementInfo extends SuperDO {
     /** 圈子内人数 */
     @TableField(exist = false)
     private Integer cardNum;
-
+    @TableField(exist = false)
+    private CircleCardInfo circleCardInfo;
 
     @Override
     public String toString() {

+ 4 - 1
unimall-data/src/main/java/com/iotechn/unimall/data/mapper/CardExchangeInfoMapper.java

@@ -2,6 +2,9 @@ package com.iotechn.unimall.data.mapper;
 
 import com.baomidou.mybatisplus.mapper.BaseMapper;
 import com.iotechn.unimall.data.domain.CardExchangeInfo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * 名片交换Mapper接口
@@ -10,5 +13,5 @@ import com.iotechn.unimall.data.domain.CardExchangeInfo;
  * @date 2023-04-12
  */
 public interface CardExchangeInfoMapper extends BaseMapper<CardExchangeInfo> {
-
+    public List<CardExchangeInfo> getCardExchangeInfoPage(@Param("offset") Integer offset, @Param("limit") Integer limit, @Param("receiveId") Long receiveId);
 }

+ 27 - 1
unimall-data/src/main/resources/com/iotechn/unimall/data/mapper/CardExchangeInfoMapper.xml

@@ -3,7 +3,33 @@
 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.iotechn.unimall.data.mapper.CardExchangeInfoMapper">
-    
 
 
+    <select id="getCardExchangeInfoPage" resultType="com.iotechn.unimall.data.domain.CardExchangeInfo">
+        SELECT
+        id,
+        send_id AS sendId,
+        receive_id AS receiveId,
+        send_card_id AS sendCardId,
+        receive_card_id AS receiveCardId,
+        circle_name AS circleName,
+        case when gmt_create &lt; DATE_SUB(now(), INTERVAL 5 DAY) and status=0 then 5 else `status` end as `status`,
+        gmt_update AS gmtUpdate,
+        gmt_create AS gmtCreate
+        FROM
+        card_exchange_info
+        WHERE
+        receive_id = #{receiveId}
+        <if test="status != null">
+            <if test="status == 1">
+                AND status != 7
+            </if>
+            <if test="status == 2">
+                AND status = 7
+            </if>
+        </if>
+        ORDER BY gmt_update DESC
+        LIMIT #{offset}, #{limit}
+
+    </select>
 </mapper>