Explorar o código

Merge branch 'master' of http://git.zthymaoyi.com/wangchao/businessCard

achao %!s(int64=2) %!d(string=hai) anos
pai
achega
2dbcaa2082
Modificáronse 24 ficheiros con 532 adicións e 50 borrados
  1. 3 0
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/ICardClassifyInfoService.java
  2. 64 0
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/ICardExchangeInfoService.java
  3. 8 8
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/ICircleCardInfoService.java
  4. 29 2
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CardClassifyInfoServiceImpl.java
  5. 165 0
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CardExchangeInfoServiceImpl.java
  6. 10 0
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CardHolderInfoServiceImpl.java
  7. 34 14
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CardManagementInfoServiceImpl.java
  8. 1 0
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CertificateManagementInfoServiceImpl.java
  9. 7 6
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CircleCardInfoServiceImpl.java
  10. 34 11
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CircleManagementInfoServiceImpl.java
  11. 1 0
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CommonUserInfoServiceImpl.java
  12. 1 0
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/PersonalHomepageInfoServiceImpl.java
  13. 1 0
      unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/SearchRecordsInfoServiceImpl.java
  14. 2 0
      unimall-app-api/src/main/java/com/iotechn/unimall/app/api/commonUser/CommonUserServiceImpl.java
  15. 2 0
      unimall-core/src/main/java/com/iotechn/unimall/core/exception/ExceptionDefinition.java
  16. 96 0
      unimall-data/src/main/java/com/iotechn/unimall/data/domain/CardExchangeInfo.java
  17. 6 0
      unimall-data/src/main/java/com/iotechn/unimall/data/domain/CardHolderInfo.java
  18. 7 2
      unimall-data/src/main/java/com/iotechn/unimall/data/domain/CardManagementInfo.java
  19. 5 3
      unimall-data/src/main/java/com/iotechn/unimall/data/domain/CircleCardInfo.java
  20. 6 0
      unimall-data/src/main/java/com/iotechn/unimall/data/domain/CircleManagementInfo.java
  21. 14 0
      unimall-data/src/main/java/com/iotechn/unimall/data/mapper/CardExchangeInfoMapper.java
  22. 9 0
      unimall-data/src/main/java/com/iotechn/unimall/data/util/SessionUtil.java
  23. 9 0
      unimall-data/src/main/resources/com/iotechn/unimall/data/mapper/CardExchangeInfoMapper.xml
  24. 18 4
      unimall-launcher/src/main/java/com/iotechn/unimall/launcher/controller/ApiController.java

+ 3 - 0
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/ICardClassifyInfoService.java

@@ -41,6 +41,9 @@ public interface ICardClassifyInfoService{
 	@HttpMethod(description = "置顶",  permissionName = "名片分类管理")
 	@HttpMethod(description = "置顶",  permissionName = "名片分类管理")
 	public Boolean top(@NotNull @HttpParam(name = "cardClassifyInfo", type = HttpParamType.COMMON, description = "名片分类") CardClassifyInfo cardClassifyInfo)throws ServiceException;
 	public Boolean top(@NotNull @HttpParam(name = "cardClassifyInfo", type = HttpParamType.COMMON, description = "名片分类") CardClassifyInfo cardClassifyInfo)throws ServiceException;
 
 
+	@HttpMethod(description = "置顶默认分类",  permissionName = "名片分类管理")
+	public Boolean topDefault(@NotNull @HttpParam(name = "cardClassifyInfo", type = HttpParamType.COMMON, description = "名片分类") CardClassifyInfo cardClassifyInfo)throws ServiceException;
+
 	@HttpMethod(description = "修改",  permissionName = "名片分类管理")
 	@HttpMethod(description = "修改",  permissionName = "名片分类管理")
 	public Boolean update(@NotNull @HttpParam(name = "cardClassifyInfo", type = HttpParamType.COMMON, description = "名片分类") CardClassifyInfo cardClassifyInfo)throws ServiceException;
 	public Boolean update(@NotNull @HttpParam(name = "cardClassifyInfo", type = HttpParamType.COMMON, description = "名片分类") CardClassifyInfo cardClassifyInfo)throws ServiceException;
 
 

+ 64 - 0
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/ICardExchangeInfoService.java

@@ -0,0 +1,64 @@
+package com.iotechn.unimall.admin.api.card;
+
+
+import com.iotechn.unimall.core.annotation.HttpMethod;
+import com.iotechn.unimall.core.annotation.HttpOpenApi;
+import com.iotechn.unimall.core.annotation.HttpParam;
+import com.iotechn.unimall.core.annotation.HttpParamType;
+import com.iotechn.unimall.core.annotation.param.NotNull;
+import com.iotechn.unimall.core.exception.ServiceException;
+import com.iotechn.unimall.data.domain.CardExchangeInfo;
+import com.iotechn.unimall.data.model.Page;
+import java.util.Date;
+
+/**
+ * 名片交换Service接口
+ * 
+ * @author jlb
+ * @date 2023-04-12
+ */
+@HttpOpenApi(group = "admin.unimall.cardExchangeInfo", description = "名片交换")
+public interface ICardExchangeInfoService{
+	@HttpMethod(description = "新增", permission = "admin:unimall:cardExchangeInfo:add", permissionParentName = "宠物管理", permissionName = "名片交换管理")
+	public Boolean add(@NotNull @HttpParam(name = "cardExchangeInfo", type = HttpParamType.COMMON, description = "名片交换") CardExchangeInfo cardExchangeInfo)throws ServiceException;
+
+	@HttpMethod(description = "列表", permission = "admin:unimall:cardExchangeInfo:list",permissionParentName = "宠物管理", permissionName = "名片交换管理")
+	public Page<CardExchangeInfo> list(
+								@HttpParam(name = "sendId", type = HttpParamType.COMMON, description = "发起人id") Long sendId,
+							@HttpParam(name = "receiveId", type = HttpParamType.COMMON, description = "接收人id") Long receiveId,
+							@HttpParam(name = "sendCardId", type = HttpParamType.COMMON, description = "发起人名片id") Long sendCardId,
+							@HttpParam(name = "receiveCardId", type = HttpParamType.COMMON, description = "接收人名片id") Long receiveCardId,
+							@HttpParam(name = "circleName", type = HttpParamType.COMMON, description = "圈子名称") String circleName,
+							@HttpParam(name = "status", type = HttpParamType.COMMON, description = "状态(1已接受3已拒绝5已过期)") String status,
+							@HttpParam(name = "gmtCreate", type = HttpParamType.COMMON, description = "") Date gmtCreate,
+							@HttpParam(name = "gmtUpdate", type = HttpParamType.COMMON, description = "") Date gmtUpdate,
+							@HttpParam(name = "deleteFlag", type = HttpParamType.COMMON, description = "删除标识") Long deleteFlag,
+					@HttpParam(name = "page", type = HttpParamType.COMMON, description = "页码", valueDef = "1") Integer page,
+		@HttpParam(name = "limit", type = HttpParamType.COMMON, description = "页码长度", valueDef = "20") Integer limit)
+		throws ServiceException;
+
+	@HttpMethod(description = "删除", permission = "admin:unimall:cardExchangeInfo:delete",permissionParentName = "宠物管理", permissionName = "名片交换管理")
+	public Boolean delete(@NotNull @HttpParam(name = "id", type = HttpParamType.COMMON, description = "")String id)throws ServiceException;
+
+	@HttpMethod(description = "修改", permission = "admin:unimall:cardExchangeInfo:update",permissionParentName = "宠物管理", permissionName = "名片交换管理")
+	public Boolean update(@NotNull @HttpParam(name = "cardExchangeInfo", type = HttpParamType.COMMON, description = "名片交换") CardExchangeInfo cardExchangeInfo,
+						  @HttpParam(name = "updateFlag", type = HttpParamType.COMMON, description = "updateFlag") String updateFlag)throws ServiceException;
+
+	@HttpMethod(description = "查询", permission = "admin:unimall:cardExchangeInfo:get",permissionParentName = "宠物管理", permissionName = "名片交换管理")
+	public CardExchangeInfo get(@NotNull @HttpParam(name = "id", type = HttpParamType.COMMON, description = "")Long id)throws ServiceException;
+	
+	@HttpMethod(description = "导出excl表", permission = "admin:unimall:cardExchangeInfo:export",permissionParentName = "宠物管理", permissionName = "名片交换管理")
+	public String export(
+								@HttpParam(name = "sendId", type = HttpParamType.COMMON, description = "发起人id") Long sendId,
+							@HttpParam(name = "receiveId", type = HttpParamType.COMMON, description = "接收人id") Long receiveId,
+							@HttpParam(name = "sendCardId", type = HttpParamType.COMMON, description = "发起人名片id") Long sendCardId,
+							@HttpParam(name = "receiveCardId", type = HttpParamType.COMMON, description = "接收人名片id") Long receiveCardId,
+							@HttpParam(name = "circleName", type = HttpParamType.COMMON, description = "圈子名称") String circleName,
+							@HttpParam(name = "status", type = HttpParamType.COMMON, description = "状态(1已接受3已拒绝5已过期)") String status,
+							@HttpParam(name = "gmtCreate", type = HttpParamType.COMMON, description = "") Date gmtCreate,
+							@HttpParam(name = "gmtUpdate", type = HttpParamType.COMMON, description = "") Date gmtUpdate,
+							@HttpParam(name = "deleteFlag", type = HttpParamType.COMMON, description = "删除标识") Long deleteFlag,
+				@HttpParam(name = "page", type = HttpParamType.COMMON, description = "页码", valueDef = "1") Integer page,
+	@HttpParam(name = "limit", type = HttpParamType.COMMON, description = "页码长度", valueDef = "20") Integer limit)throws ServiceException;
+	
+}

+ 8 - 8
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/ICircleCardInfoService.java

@@ -24,9 +24,9 @@ public interface ICircleCardInfoService{
 
 
 	@HttpMethod(description = "列表", permissionName = "圈子个人关系管理")
 	@HttpMethod(description = "列表", permissionName = "圈子个人关系管理")
 	public Page<CircleCardInfo> list(
 	public Page<CircleCardInfo> list(
-					@HttpParam(name = "circleId", type = HttpParamType.COMMON, description = "圈子id") String circleId,
-							@HttpParam(name = "cardId", type = HttpParamType.COMMON, description = "名片id") String cardId,
-							@HttpParam(name = "commonId", type = HttpParamType.COMMON, description = "个人id") String commonId,
+					@HttpParam(name = "circleId", type = HttpParamType.COMMON, description = "圈子id") Long circleId,
+							@HttpParam(name = "cardId", type = HttpParamType.COMMON, description = "名片id") Long cardId,
+							@HttpParam(name = "commonId", type = HttpParamType.COMMON, description = "个人id") Long commonId,
 							@HttpParam(name = "gmtCreate", type = HttpParamType.COMMON, description = "") Date gmtCreate,
 							@HttpParam(name = "gmtCreate", type = HttpParamType.COMMON, description = "") Date gmtCreate,
 							@HttpParam(name = "gmtUpdate", type = HttpParamType.COMMON, description = "") Date gmtUpdate,
 							@HttpParam(name = "gmtUpdate", type = HttpParamType.COMMON, description = "") Date gmtUpdate,
 							@HttpParam(name = "deleteFlag", type = HttpParamType.COMMON, description = "删除标识") Long deleteFlag,
 							@HttpParam(name = "deleteFlag", type = HttpParamType.COMMON, description = "删除标识") Long deleteFlag,
@@ -35,19 +35,19 @@ public interface ICircleCardInfoService{
 		throws ServiceException;
 		throws ServiceException;
 
 
 	@HttpMethod(description = "删除", permissionName = "圈子个人关系管理")
 	@HttpMethod(description = "删除", permissionName = "圈子个人关系管理")
-	public Boolean delete(@NotNull @HttpParam(name = "circleId", type = HttpParamType.COMMON, description = "圈子id")String circleId)throws ServiceException;
+	public Boolean delete(@NotNull @HttpParam(name = "id", type = HttpParamType.COMMON, description = " ")String id)throws ServiceException;
 
 
 	@HttpMethod(description = "修改",  permissionName = "圈子个人关系管理")
 	@HttpMethod(description = "修改",  permissionName = "圈子个人关系管理")
 	public Boolean update(@NotNull @HttpParam(name = "circleCardInfo", type = HttpParamType.COMMON, description = "圈子个人关系") CircleCardInfo circleCardInfo)throws ServiceException;
 	public Boolean update(@NotNull @HttpParam(name = "circleCardInfo", type = HttpParamType.COMMON, description = "圈子个人关系") CircleCardInfo circleCardInfo)throws ServiceException;
 
 
 	@HttpMethod(description = "查询",  permissionName = "圈子个人关系管理")
 	@HttpMethod(description = "查询",  permissionName = "圈子个人关系管理")
-	public CircleCardInfo get(@NotNull @HttpParam(name = "circleId", type = HttpParamType.COMMON, description = "圈子id")String circleId)throws ServiceException;
+	public CircleCardInfo get(@NotNull @HttpParam(name = "id", type = HttpParamType.COMMON, description = "")Long id)throws ServiceException;
 	
 	
 	@HttpMethod(description = "导出excl表", permissionName = "圈子个人关系管理")
 	@HttpMethod(description = "导出excl表", permissionName = "圈子个人关系管理")
 	public String export(
 	public String export(
-					@HttpParam(name = "circleId", type = HttpParamType.COMMON, description = "圈子id") String circleId,
-							@HttpParam(name = "cardId", type = HttpParamType.COMMON, description = "名片id") String cardId,
-							@HttpParam(name = "commonId", type = HttpParamType.COMMON, description = "个人id") String commonId,
+					@HttpParam(name = "circleId", type = HttpParamType.COMMON, description = "圈子id") Long circleId,
+							@HttpParam(name = "cardId", type = HttpParamType.COMMON, description = "名片id") Long cardId,
+							@HttpParam(name = "commonId", type = HttpParamType.COMMON, description = "个人id") Long commonId,
 							@HttpParam(name = "gmtCreate", type = HttpParamType.COMMON, description = "") Date gmtCreate,
 							@HttpParam(name = "gmtCreate", type = HttpParamType.COMMON, description = "") Date gmtCreate,
 							@HttpParam(name = "gmtUpdate", type = HttpParamType.COMMON, description = "") Date gmtUpdate,
 							@HttpParam(name = "gmtUpdate", type = HttpParamType.COMMON, description = "") Date gmtUpdate,
 							@HttpParam(name = "deleteFlag", type = HttpParamType.COMMON, description = "删除标识") Long deleteFlag,
 							@HttpParam(name = "deleteFlag", type = HttpParamType.COMMON, description = "删除标识") Long deleteFlag,

+ 29 - 2
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CardClassifyInfoServiceImpl.java

@@ -2,6 +2,9 @@ package com.iotechn.unimall.admin.api.card.impl;
 
 
 import java.util.List;
 import java.util.List;
 
 
+import com.iotechn.unimall.core.exception.AdminServiceException;
+import com.iotechn.unimall.core.exception.AppServiceException;
+import com.iotechn.unimall.core.exception.ExceptionDefinition;
 import com.iotechn.unimall.data.domain.CardManagementInfo;
 import com.iotechn.unimall.data.domain.CardManagementInfo;
 import org.apache.ibatis.session.RowBounds;
 import org.apache.ibatis.session.RowBounds;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -36,6 +39,13 @@ public class CardClassifyInfoServiceImpl implements ICardClassifyInfoService{
 		Date now = new Date();
 		Date now = new Date();
 		cardClassifyInfo.setGmtCreate(now);
 		cardClassifyInfo.setGmtCreate(now);
 		cardClassifyInfo.setGmtUpdate(now);
 		cardClassifyInfo.setGmtUpdate(now);
+		List<CardClassifyInfo> cardClassifyInfoList=cardClassifyInfoMapper.selectList(new EntityWrapper<CardClassifyInfo>()
+				.eq("common_id",cardClassifyInfo.getCommonId())
+				.eq("delete_flag",0)
+				.eq("circle_name",cardClassifyInfo.getCircleName()));
+		if (cardClassifyInfoList.size()>0) {
+			throw new AppServiceException(ExceptionDefinition.CLASSIFY_REPEAT_ERROR);
+		}
 		return cardClassifyInfoMapper.insert(cardClassifyInfo)>0;
 		return cardClassifyInfoMapper.insert(cardClassifyInfo)>0;
 	}
 	}
 
 
@@ -60,7 +70,7 @@ public class CardClassifyInfoServiceImpl implements ICardClassifyInfoService{
 												if (!StringUtils.isEmpty(deleteFlag)) {
 												if (!StringUtils.isEmpty(deleteFlag)) {
 					wrapper.eq("delete_flag", deleteFlag);
 					wrapper.eq("delete_flag", deleteFlag);
 				}
 				}
-							wrapper.eq("delete_flag", 0);
+							wrapper.eq("delete_flag", 0).orderBy("top_marking",false);
 		List<CardClassifyInfo> list = cardClassifyInfoMapper.selectPage(new RowBounds((page - 1) * limit, limit), wrapper);
 		List<CardClassifyInfo> list = cardClassifyInfoMapper.selectPage(new RowBounds((page - 1) * limit, limit), wrapper);
 		Integer count = cardClassifyInfoMapper.selectCount(wrapper);
 		Integer count = cardClassifyInfoMapper.selectCount(wrapper);
 		return new Page<CardClassifyInfo>(list, page, limit, count);
 		return new Page<CardClassifyInfo>(list, page, limit, count);
@@ -74,6 +84,7 @@ public class CardClassifyInfoServiceImpl implements ICardClassifyInfoService{
 			CardClassifyInfo tmp =  cardClassifyInfoMapper.selectById(Long.parseLong(tt));
 			CardClassifyInfo tmp =  cardClassifyInfoMapper.selectById(Long.parseLong(tt));
 			if(tmp != null){
 			if(tmp != null){
 				tmp.setDeleteFlag(1l);
 				tmp.setDeleteFlag(1l);
+				tmp.setGmtUpdate(new Date());
 				cardClassifyInfoMapper.updateById(tmp);
 				cardClassifyInfoMapper.updateById(tmp);
 			}
 			}
 		}
 		}
@@ -84,7 +95,8 @@ public class CardClassifyInfoServiceImpl implements ICardClassifyInfoService{
 	public Boolean top(CardClassifyInfo cardClassifyInfo) throws ServiceException {
 	public Boolean top(CardClassifyInfo cardClassifyInfo) throws ServiceException {
 		CardClassifyInfo cardClassifyInfo1=cardClassifyInfoMapper.selectById(cardClassifyInfo.getId());
 		CardClassifyInfo cardClassifyInfo1=cardClassifyInfoMapper.selectById(cardClassifyInfo.getId());
 		List<CardClassifyInfo> cardClassifyInfoList=cardClassifyInfoMapper.selectList(new EntityWrapper<CardClassifyInfo>()
 		List<CardClassifyInfo> cardClassifyInfoList=cardClassifyInfoMapper.selectList(new EntityWrapper<CardClassifyInfo>()
-				.eq("common_id",cardClassifyInfo1.getCommonId()));
+				.eq("common_id",cardClassifyInfo1.getCommonId())
+				.eq("delete_flag",0));
 		if (!CollectionUtils.isEmpty(cardClassifyInfoList)) {
 		if (!CollectionUtils.isEmpty(cardClassifyInfoList)) {
 			for (CardClassifyInfo aa : cardClassifyInfoList) {
 			for (CardClassifyInfo aa : cardClassifyInfoList) {
 				aa.setTopMarking(0l);
 				aa.setTopMarking(0l);
@@ -92,9 +104,24 @@ public class CardClassifyInfoServiceImpl implements ICardClassifyInfoService{
 			}
 			}
 		}
 		}
 		cardClassifyInfo1.setTopMarking(1l);
 		cardClassifyInfo1.setTopMarking(1l);
+		cardClassifyInfo1.setGmtUpdate(new Date());
 		return cardClassifyInfoMapper.updateById(cardClassifyInfo1)>0;
 		return cardClassifyInfoMapper.updateById(cardClassifyInfo1)>0;
 	}
 	}
 
 
+	@Override
+	public Boolean topDefault(CardClassifyInfo cardClassifyInfo) throws ServiceException {
+		List<CardClassifyInfo> cardClassifyInfoList=cardClassifyInfoMapper.selectList(new EntityWrapper<CardClassifyInfo>()
+				.eq("common_id",cardClassifyInfo.getCommonId())
+				.eq("delete_flag",0));
+		if (!CollectionUtils.isEmpty(cardClassifyInfoList)) {
+			for (CardClassifyInfo aa : cardClassifyInfoList) {
+				aa.setTopMarking(0l);
+				cardClassifyInfoMapper.updateById(aa);
+			}
+		}
+		return true;
+	}
+
 	@Override
 	@Override
 	public Boolean update(CardClassifyInfo cardClassifyInfo) throws ServiceException {
 	public Boolean update(CardClassifyInfo cardClassifyInfo) throws ServiceException {
 		Date now = new Date();
 		Date now = new Date();

+ 165 - 0
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CardExchangeInfoServiceImpl.java

@@ -0,0 +1,165 @@
+package com.iotechn.unimall.admin.api.card.impl;
+
+import java.util.List;
+
+import com.iotechn.unimall.admin.api.card.ICardExchangeInfoService;
+import com.iotechn.unimall.data.domain.CardExchangeInfo;
+import com.iotechn.unimall.data.domain.CardHolderInfo;
+import com.iotechn.unimall.data.mapper.CardExchangeInfoMapper;
+import com.iotechn.unimall.data.mapper.CardHolderInfoMapper;
+import com.iotechn.unimall.data.model.Page;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.mapper.Wrapper;
+import com.iotechn.unimall.data.util.ExcelUtil;
+import org.apache.ibatis.session.RowBounds;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+
+import com.iotechn.unimall.core.exception.ServiceException;
+import java.util.Date;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+ * 名片交换Service业务层处理
+ * 
+ * @author jlb
+ * @date 2023-04-12
+ */
+@Service
+public class CardExchangeInfoServiceImpl implements ICardExchangeInfoService {
+	@Autowired
+	private CardExchangeInfoMapper cardExchangeInfoMapper;
+	@Autowired
+	private CardHolderInfoMapper cardHolderInfoMapper;
+	
+	@Override
+	public Boolean add(CardExchangeInfo cardExchangeInfo) throws ServiceException {
+		Date now = new Date();
+		cardExchangeInfo.setGmtCreate(now);
+		cardExchangeInfo.setGmtUpdate(now);
+		return cardExchangeInfoMapper.insert(cardExchangeInfo)>0;
+	}
+
+	@Override
+	public Page<CardExchangeInfo> list(Long sendId,Long receiveId,Long sendCardId,Long receiveCardId,String circleName,String status,Date gmtCreate,Date gmtUpdate,Long deleteFlag, Integer page, Integer limit)throws ServiceException {
+		Wrapper<CardExchangeInfo> wrapper = new EntityWrapper<CardExchangeInfo>();
+														if (!StringUtils.isEmpty(sendId)) {
+					wrapper.eq("send_id", sendId);
+				}
+												if (!StringUtils.isEmpty(receiveId)) {
+					wrapper.eq("receive_id", receiveId);
+				}
+												if (!StringUtils.isEmpty(sendCardId)) {
+					wrapper.eq("send_card_id", sendCardId);
+				}
+												if (!StringUtils.isEmpty(receiveCardId)) {
+					wrapper.eq("receive_card_id", receiveCardId);
+				}
+												if (!StringUtils.isEmpty(circleName)) {
+					wrapper.eq("circle_name", circleName);
+				}
+												if (!StringUtils.isEmpty(status)) {
+					wrapper.eq("status", status);
+				}
+												if (!StringUtils.isEmpty(gmtCreate)) {
+					wrapper.eq("gmt_create", gmtCreate);
+				}
+												if (!StringUtils.isEmpty(gmtUpdate)) {
+					wrapper.eq("gmt_update", gmtUpdate);
+				}
+												if (!StringUtils.isEmpty(deleteFlag)) {
+					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);
+		return new Page<CardExchangeInfo>(list, page, limit, count);
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public Boolean delete(String id) {
+		String[] ids = String.valueOf(id).split(",");
+		for (String tt:ids) {
+			CardExchangeInfo tmp =  cardExchangeInfoMapper.selectById(Long.parseLong(tt));
+			if(tmp != null){
+				tmp.setDeleteFlag(1L);
+				cardExchangeInfoMapper.updateById(tmp);
+			}
+		}
+		return true;
+	}
+
+	@Override
+	public Boolean update(CardExchangeInfo cardExchangeInfo,String updateFlag) throws ServiceException {
+		Date now = new Date();
+		cardExchangeInfo.setGmtUpdate(now);
+		//拉黑
+		if ("1".equals(updateFlag)){
+		}
+		//拒绝
+		else if ("2".equals(updateFlag)){
+			cardExchangeInfo.setStatus("3");
+		}
+		//接受
+		else{
+			cardExchangeInfo.setStatus("1");
+			//发起人名片夹添加数据
+			CardHolderInfo cardHolderInfo=new CardHolderInfo();
+			cardHolderInfo.setCardId(String.valueOf(cardExchangeInfo.getReceiveCardId()));
+			cardHolderInfo.setCommonId(cardExchangeInfo.getSendId());
+			cardHolderInfo.setGmtCreate(now);
+			cardHolderInfo.setGmtUpdate(now);
+			cardHolderInfoMapper.insert(cardHolderInfo);
+			//接收人名片夹添加数据
+			cardHolderInfo=new CardHolderInfo();
+			cardHolderInfo.setCardId(String.valueOf(cardExchangeInfo.getSendCardId()));
+			cardHolderInfo.setCommonId(cardExchangeInfo.getReceiveId());
+			cardHolderInfo.setGmtCreate(now);
+			cardHolderInfo.setGmtUpdate(now);
+			cardHolderInfoMapper.insert(cardHolderInfo);
+		}
+		return cardExchangeInfoMapper.updateById(cardExchangeInfo)>0;
+	}
+
+	@Override
+	public CardExchangeInfo get(Long id) throws ServiceException {
+		return cardExchangeInfoMapper.selectById(id);
+	}
+	
+	@Override
+	public String export(Long sendId,Long receiveId,Long sendCardId,Long receiveCardId,String circleName,String status,Date gmtCreate,Date gmtUpdate,Long deleteFlag, Integer page, Integer limit)throws ServiceException {
+		Wrapper<CardExchangeInfo> wrapper = new EntityWrapper<CardExchangeInfo>();
+														if (!StringUtils.isEmpty(sendId)) {
+					wrapper.eq("send_id", sendId);
+				}
+												if (!StringUtils.isEmpty(receiveId)) {
+					wrapper.eq("receive_id", receiveId);
+				}
+												if (!StringUtils.isEmpty(sendCardId)) {
+					wrapper.eq("send_card_id", sendCardId);
+				}
+												if (!StringUtils.isEmpty(receiveCardId)) {
+					wrapper.eq("receive_card_id", receiveCardId);
+				}
+												if (!StringUtils.isEmpty(circleName)) {
+					wrapper.eq("circle_name", circleName);
+				}
+												if (!StringUtils.isEmpty(status)) {
+					wrapper.eq("status", status);
+				}
+												if (!StringUtils.isEmpty(gmtCreate)) {
+					wrapper.eq("gmt_create", gmtCreate);
+				}
+												if (!StringUtils.isEmpty(gmtUpdate)) {
+					wrapper.eq("gmt_update", gmtUpdate);
+				}
+												if (!StringUtils.isEmpty(deleteFlag)) {
+					wrapper.eq("delete_flag", deleteFlag);
+				}
+							List<CardExchangeInfo> list = cardExchangeInfoMapper.selectList(wrapper);
+		ExcelUtil<CardExchangeInfo> util = new ExcelUtil<CardExchangeInfo>(CardExchangeInfo.class);
+		return util.exportExcel(list, "操作日志");
+	}
+}

+ 10 - 0
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CardHolderInfoServiceImpl.java

@@ -44,6 +44,15 @@ public class CardHolderInfoServiceImpl implements ICardHolderInfoService{
 		Date now = new Date();
 		Date now = new Date();
 		cardHolderInfo.setGmtCreate(now);
 		cardHolderInfo.setGmtCreate(now);
 		cardHolderInfo.setGmtUpdate(now);
 		cardHolderInfo.setGmtUpdate(now);
+		//个人展示的二维码 相互交换
+		if (cardHolderInfo.getCardCommonId()!=null){
+			CardHolderInfo cardHolderInfo1=new CardHolderInfo();
+			cardHolderInfo1.setCardId(cardHolderInfo.getMyCardId());
+			cardHolderInfo1.setCommonId(cardHolderInfo.getCardCommonId());
+			cardHolderInfo1.setGmtCreate(now);
+			cardHolderInfo1.setGmtUpdate(now);
+			cardHolderInfoMapper.insert(cardHolderInfo1);
+		}
 		return cardHolderInfoMapper.insert(cardHolderInfo)>0;
 		return cardHolderInfoMapper.insert(cardHolderInfo)>0;
 	}
 	}
 
 
@@ -95,6 +104,7 @@ public class CardHolderInfoServiceImpl implements ICardHolderInfoService{
 			CardHolderInfo tmp =  cardHolderInfoMapper.selectById(Long.parseLong(tt));
 			CardHolderInfo tmp =  cardHolderInfoMapper.selectById(Long.parseLong(tt));
 			if(tmp != null){
 			if(tmp != null){
 				tmp.setDeleteFlag(1l);
 				tmp.setDeleteFlag(1l);
+				tmp.setGmtUpdate(new Date());
 				cardHolderInfoMapper.updateById(tmp);
 				cardHolderInfoMapper.updateById(tmp);
 			}
 			}
 		}
 		}

+ 34 - 14
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CardManagementInfoServiceImpl.java

@@ -2,9 +2,9 @@ package com.iotechn.unimall.admin.api.card.impl;
 
 
 import java.util.List;
 import java.util.List;
 
 
+import com.iotechn.unimall.core.util.GeneratorUtil;
 import com.iotechn.unimall.data.util.QRCodeUtil;
 import com.iotechn.unimall.data.util.QRCodeUtil;
 import com.iotechn.unimall.data.domain.*;
 import com.iotechn.unimall.data.domain.*;
-import com.iotechn.unimall.data.domain.tools.gen.GenTableColumn;
 import com.iotechn.unimall.data.mapper.CardHolderInfoMapper;
 import com.iotechn.unimall.data.mapper.CardHolderInfoMapper;
 import com.iotechn.unimall.data.mapper.CircleCardInfoMapper;
 import com.iotechn.unimall.data.mapper.CircleCardInfoMapper;
 import com.iotechn.unimall.data.mapper.PersonalHomepageInfoMapper;
 import com.iotechn.unimall.data.mapper.PersonalHomepageInfoMapper;
@@ -47,13 +47,19 @@ public class CardManagementInfoServiceImpl implements ICardManagementInfoService
 		Date now = new Date();
 		Date now = new Date();
 		cardManagementInfo.setGmtCreate(now);
 		cardManagementInfo.setGmtCreate(now);
 		cardManagementInfo.setGmtUpdate(now);
 		cardManagementInfo.setGmtUpdate(now);
-		return cardManagementInfoMapper.insert(cardManagementInfo)>0;
+		cardManagementInfoMapper.insert(cardManagementInfo);
+		//更新数据库默认值
+		cardManagementInfo = cardManagementInfoMapper.selectById(cardManagementInfo.getId());
+		//二维码
+		String str = qrCodeUtil.getQRCodeImage(String.valueOf(cardManagementInfo.getId()), false, cardManagementInfo.getName(), GeneratorUtil.genUUId());
+		String str1 = qrCodeUtil.getQRCodeImage(cardManagementInfo.getId()+","+cardManagementInfo.getCommonId(), false, cardManagementInfo.getName(), GeneratorUtil.genUUId());
+		cardManagementInfo.setQrCode(str);
+		cardManagementInfo.setQrCodeMyself(str1);
+		return cardManagementInfoMapper.updateById(cardManagementInfo)>0;
 	}
 	}
 
 
 	@Override
 	@Override
 	public Page<CardManagementInfo> list(Long commonId,String cardBusiness,String name,String post,String companyName,String location,String detailedAddress,String phone,String headSculpture,String qrCode,Date gmtCreate,Date gmtUpdate,Long deleteFlag, Integer page, Integer limit)throws ServiceException {
 	public Page<CardManagementInfo> list(Long commonId,String cardBusiness,String name,String post,String companyName,String location,String detailedAddress,String phone,String headSculpture,String qrCode,Date gmtCreate,Date gmtUpdate,Long deleteFlag, Integer page, Integer limit)throws ServiceException {
-//		String str = qrCodeUtil.getQRCodeImage("id=xxx二维码字符串", false, "名字", GeneratorUtil.genUUId());
-//		System.out.println(str);
 		Wrapper<CardManagementInfo> wrapper = new EntityWrapper<CardManagementInfo>();
 		Wrapper<CardManagementInfo> wrapper = new EntityWrapper<CardManagementInfo>();
 														if (!StringUtils.isEmpty(commonId)) {
 														if (!StringUtils.isEmpty(commonId)) {
 					wrapper.eq("common_id", commonId);
 					wrapper.eq("common_id", commonId);
@@ -100,6 +106,7 @@ public class CardManagementInfoServiceImpl implements ICardManagementInfoService
 			for (CardManagementInfo cardManagementInfo:list){
 			for (CardManagementInfo cardManagementInfo:list){
 				PersonalHomepageInfo personalHomepageInfo=new PersonalHomepageInfo();
 				PersonalHomepageInfo personalHomepageInfo=new PersonalHomepageInfo();
 				personalHomepageInfo.setCommonId(cardManagementInfo.getCommonId());
 				personalHomepageInfo.setCommonId(cardManagementInfo.getCommonId());
+				personalHomepageInfo.setDeleteFlag(0l);
 				PersonalHomepageInfo personalHomepageInfo1=personalHomepageInfoMapper.selectOne(personalHomepageInfo);
 				PersonalHomepageInfo personalHomepageInfo1=personalHomepageInfoMapper.selectOne(personalHomepageInfo);
 				if (personalHomepageInfo1!=null){
 				if (personalHomepageInfo1!=null){
 					cardManagementInfo.setPersonalHomeId(personalHomepageInfo1.getId());
 					cardManagementInfo.setPersonalHomeId(personalHomepageInfo1.getId());
@@ -118,20 +125,31 @@ public class CardManagementInfoServiceImpl implements ICardManagementInfoService
 			CardManagementInfo tmp =  cardManagementInfoMapper.selectById(Long.parseLong(tt));
 			CardManagementInfo tmp =  cardManagementInfoMapper.selectById(Long.parseLong(tt));
 			if(tmp != null){
 			if(tmp != null){
 				//退出关联的圈子
 				//退出关联的圈子
-				List<CircleCardInfo> list=circleCardInfoMapper.selectList(new EntityWrapper<CircleCardInfo>().eq("card_id",tmp.getId()));
-				for(CircleCardInfo aa:list){
-					aa.setDeleteFlag(1l);
-					circleCardInfoMapper.updateById(aa);
+				List<CircleCardInfo> list=circleCardInfoMapper.selectList(new EntityWrapper<CircleCardInfo>()
+						.eq("card_id",tmp.getId())
+						.eq("delete_flag",0));
+				if (!CollectionUtils.isEmpty(list)) {
+					for (CircleCardInfo aa : list) {
+						aa.setDeleteFlag(1l);
+						aa.setGmtUpdate(new Date());
+						circleCardInfoMapper.updateById(aa);
+					}
 				}
 				}
 				//从所有拥有此名片用户列表删除
 				//从所有拥有此名片用户列表删除
 				if ("1".equals(deleteCondition)){
 				if ("1".equals(deleteCondition)){
-					List<CardHolderInfo> cardHolderInfoList=cardHolderInfoMapper.selectList(new EntityWrapper<CardHolderInfo>().eq("card_id",tmp.getId()));
-					for(CardHolderInfo aa:cardHolderInfoList){
-						aa.setDeleteFlag(1l);
-						cardHolderInfoMapper.updateById(aa);
+					List<CardHolderInfo> cardHolderInfoList=cardHolderInfoMapper.selectList(new EntityWrapper<CardHolderInfo>()
+							.eq("card_id",tmp.getId())
+							.eq("delete_flag",0));
+					if (!CollectionUtils.isEmpty(cardHolderInfoList)) {
+						for (CardHolderInfo aa : cardHolderInfoList) {
+							aa.setDeleteFlag(1l);
+							aa.setGmtUpdate(new Date());
+							cardHolderInfoMapper.updateById(aa);
+						}
 					}
 					}
 				}
 				}
-				tmp.setCommonId(null);
+				tmp.setCommonId(-1l);
+				tmp.setGmtUpdate(new Date());
 				cardManagementInfoMapper.updateById(tmp);
 				cardManagementInfoMapper.updateById(tmp);
 			}
 			}
 		}
 		}
@@ -149,7 +167,8 @@ public class CardManagementInfoServiceImpl implements ICardManagementInfoService
 	public Boolean top(CardManagementInfo cardManagementInfo) throws ServiceException {
 	public Boolean top(CardManagementInfo cardManagementInfo) throws ServiceException {
 		CardManagementInfo cardManagementInfo1=cardManagementInfoMapper.selectById(cardManagementInfo.getId());
 		CardManagementInfo cardManagementInfo1=cardManagementInfoMapper.selectById(cardManagementInfo.getId());
 		List<CardManagementInfo> cardManagementInfoList=cardManagementInfoMapper.selectList(new EntityWrapper<CardManagementInfo>()
 		List<CardManagementInfo> cardManagementInfoList=cardManagementInfoMapper.selectList(new EntityWrapper<CardManagementInfo>()
-				.eq("common_id",cardManagementInfo1.getCommonId()));
+				.eq("common_id",cardManagementInfo1.getCommonId())
+				.eq("delete_flag",0));
 		if (!CollectionUtils.isEmpty(cardManagementInfoList)) {
 		if (!CollectionUtils.isEmpty(cardManagementInfoList)) {
 			for (CardManagementInfo aa : cardManagementInfoList) {
 			for (CardManagementInfo aa : cardManagementInfoList) {
 				aa.setTopMarking(0l);
 				aa.setTopMarking(0l);
@@ -157,6 +176,7 @@ public class CardManagementInfoServiceImpl implements ICardManagementInfoService
 			}
 			}
 		}
 		}
 		cardManagementInfo1.setTopMarking(1l);
 		cardManagementInfo1.setTopMarking(1l);
+		cardManagementInfo1.setGmtUpdate(new Date());
 		return cardManagementInfoMapper.updateById(cardManagementInfo1)>0;
 		return cardManagementInfoMapper.updateById(cardManagementInfo1)>0;
 	}
 	}
 
 

+ 1 - 0
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CertificateManagementInfoServiceImpl.java

@@ -72,6 +72,7 @@ public class CertificateManagementInfoServiceImpl implements ICertificateManagem
 			CertificateManagementInfo tmp =  certificateManagementInfoMapper.selectById(Long.parseLong(tt));
 			CertificateManagementInfo tmp =  certificateManagementInfoMapper.selectById(Long.parseLong(tt));
 			if(tmp != null){
 			if(tmp != null){
 				tmp.setDeleteFlag(1l);
 				tmp.setDeleteFlag(1l);
+				tmp.setGmtUpdate(new Date());
 				certificateManagementInfoMapper.updateById(tmp);
 				certificateManagementInfoMapper.updateById(tmp);
 			}
 			}
 		}
 		}

+ 7 - 6
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CircleCardInfoServiceImpl.java

@@ -38,7 +38,7 @@ public class CircleCardInfoServiceImpl implements ICircleCardInfoService{
 	}
 	}
 
 
 	@Override
 	@Override
-	public Page<CircleCardInfo> list(String circleId,String cardId,String commonId,Date gmtCreate,Date gmtUpdate,Long deleteFlag, Integer page, Integer limit)throws ServiceException {
+	public Page<CircleCardInfo> list(Long circleId,Long cardId,Long commonId,Date gmtCreate,Date gmtUpdate,Long deleteFlag, Integer page, Integer limit)throws ServiceException {
 		Wrapper<CircleCardInfo> wrapper = new EntityWrapper<CircleCardInfo>();
 		Wrapper<CircleCardInfo> wrapper = new EntityWrapper<CircleCardInfo>();
 									if (!StringUtils.isEmpty(circleId)) {
 									if (!StringUtils.isEmpty(circleId)) {
 					wrapper.eq("circle_id", circleId);
 					wrapper.eq("circle_id", circleId);
@@ -66,12 +66,13 @@ public class CircleCardInfoServiceImpl implements ICircleCardInfoService{
 
 
 	@Override
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@Transactional(rollbackFor = Exception.class)
-	public Boolean delete(String circleId) {
-		String[] ids = String.valueOf(circleId).split(",");
+	public Boolean delete(String id) {
+		String[] ids = String.valueOf(id).split(",");
 		for (String tt:ids) {
 		for (String tt:ids) {
 			CircleCardInfo tmp =  circleCardInfoMapper.selectById(Long.parseLong(tt));
 			CircleCardInfo tmp =  circleCardInfoMapper.selectById(Long.parseLong(tt));
 			if(tmp != null){
 			if(tmp != null){
 				tmp.setDeleteFlag(1l);
 				tmp.setDeleteFlag(1l);
+				tmp.setGmtUpdate(new Date());
 				circleCardInfoMapper.updateById(tmp);
 				circleCardInfoMapper.updateById(tmp);
 			}
 			}
 		}
 		}
@@ -86,12 +87,12 @@ public class CircleCardInfoServiceImpl implements ICircleCardInfoService{
 	}
 	}
 
 
 	@Override
 	@Override
-	public CircleCardInfo get(String circleId) throws ServiceException {
-		return circleCardInfoMapper.selectById(circleId);
+	public CircleCardInfo get(Long id) throws ServiceException {
+		return circleCardInfoMapper.selectById(id);
 	}
 	}
 	
 	
 	@Override
 	@Override
-	public String export(String circleId,String cardId,String commonId,Date gmtCreate,Date gmtUpdate,Long deleteFlag, Integer page, Integer limit)throws ServiceException {
+	public String export(Long circleId,Long cardId,Long commonId,Date gmtCreate,Date gmtUpdate,Long deleteFlag, Integer page, Integer limit)throws ServiceException {
 		Wrapper<CircleCardInfo> wrapper = new EntityWrapper<CircleCardInfo>();
 		Wrapper<CircleCardInfo> wrapper = new EntityWrapper<CircleCardInfo>();
 									if (!StringUtils.isEmpty(circleId)) {
 									if (!StringUtils.isEmpty(circleId)) {
 					wrapper.eq("circle_id", circleId);
 					wrapper.eq("circle_id", circleId);

+ 34 - 11
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CircleManagementInfoServiceImpl.java

@@ -1,17 +1,15 @@
 package com.iotechn.unimall.admin.api.card.impl;
 package com.iotechn.unimall.admin.api.card.impl;
 
 
-import java.util.ArrayList;
-import java.util.List;
+import java.util.*;
 
 
-import com.iotechn.unimall.data.domain.CardManagementInfo;
-import com.iotechn.unimall.data.domain.CircleCardInfo;
-import com.iotechn.unimall.data.domain.CommonUserInfo;
+import com.iotechn.unimall.data.domain.*;
 import com.iotechn.unimall.data.mapper.CardManagementInfoMapper;
 import com.iotechn.unimall.data.mapper.CardManagementInfoMapper;
 import com.iotechn.unimall.data.mapper.CircleCardInfoMapper;
 import com.iotechn.unimall.data.mapper.CircleCardInfoMapper;
 import com.iotechn.unimall.data.mapper.CommonUserInfoMapper;
 import com.iotechn.unimall.data.mapper.CommonUserInfoMapper;
 import org.apache.ibatis.session.RowBounds;
 import org.apache.ibatis.session.RowBounds;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 import org.springframework.util.StringUtils;
 import org.springframework.util.StringUtils;
 
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
@@ -19,10 +17,8 @@ import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.iotechn.unimall.core.exception.ServiceException;
 import com.iotechn.unimall.core.exception.ServiceException;
 import com.iotechn.unimall.data.util.ExcelUtil;
 import com.iotechn.unimall.data.util.ExcelUtil;
 import com.iotechn.unimall.data.mapper.CircleManagementInfoMapper;
 import com.iotechn.unimall.data.mapper.CircleManagementInfoMapper;
-import com.iotechn.unimall.data.domain.CircleManagementInfo;
 import com.iotechn.unimall.admin.api.card.ICircleManagementInfoService;
 import com.iotechn.unimall.admin.api.card.ICircleManagementInfoService;
 import com.iotechn.unimall.data.model.Page;
 import com.iotechn.unimall.data.model.Page;
-import java.util.Date;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 
 
 /**
 /**
@@ -47,15 +43,14 @@ public class CircleManagementInfoServiceImpl implements ICircleManagementInfoSer
 		Date now = new Date();
 		Date now = new Date();
 		circleManagementInfo.setGmtCreate(now);
 		circleManagementInfo.setGmtCreate(now);
 		circleManagementInfo.setGmtUpdate(now);
 		circleManagementInfo.setGmtUpdate(now);
+		//添加圈子状态默认未审核
+		circleManagementInfo.setStatus(0l);
 		return circleManagementInfoMapper.insert(circleManagementInfo)>0;
 		return circleManagementInfoMapper.insert(circleManagementInfo)>0;
 	}
 	}
 
 
 	@Override
 	@Override
 	public Page<CircleManagementInfo> list(Long commonId,String circleName,String circleLabel,Long status,Date gmtCreate,Date gmtUpdate,Long deleteFlag, Integer page, Integer limit)throws ServiceException {
 	public Page<CircleManagementInfo> list(Long commonId,String circleName,String circleLabel,Long status,Date gmtCreate,Date gmtUpdate,Long deleteFlag, Integer page, Integer limit)throws ServiceException {
 		Wrapper<CircleManagementInfo> wrapper = new EntityWrapper<CircleManagementInfo>();
 		Wrapper<CircleManagementInfo> wrapper = new EntityWrapper<CircleManagementInfo>();
-														if (!StringUtils.isEmpty(commonId)) {
-					wrapper.eq("common_id", commonId);
-				}
 												if (!StringUtils.isEmpty(circleName)) {
 												if (!StringUtils.isEmpty(circleName)) {
 					wrapper.eq("circle_name", circleName);
 					wrapper.eq("circle_name", circleName);
 				}
 				}
@@ -76,6 +71,31 @@ public class CircleManagementInfoServiceImpl implements ICircleManagementInfoSer
 				}
 				}
 							wrapper.eq("delete_flag", 0);
 							wrapper.eq("delete_flag", 0);
 		List<CircleManagementInfo> list = circleManagementInfoMapper.selectPage(new RowBounds((page - 1) * limit, limit), wrapper);
 		List<CircleManagementInfo> list = circleManagementInfoMapper.selectPage(new RowBounds((page - 1) * limit, limit), wrapper);
+		if(!CollectionUtils.isEmpty(list)){
+			for (CircleManagementInfo circleManagementInfo:list){
+				List<CircleCardInfo> circleCardInfoList=circleCardInfoMapper.selectList(new EntityWrapper<CircleCardInfo>()
+						.eq("circle_id",circleManagementInfo.getId())
+						.eq("delete_flag",0));
+				circleManagementInfo.setCardNum(circleCardInfoList.size());
+				CircleCardInfo circleCardInfo=new CircleCardInfo();
+				circleCardInfo.setCommonId(commonId);
+				circleCardInfo.setCircleId(circleManagementInfo.getId());
+				circleCardInfo.setDeleteFlag(0l);
+				CircleCardInfo circleCardInfo1=circleCardInfoMapper.selectOne(circleCardInfo);
+				if (circleCardInfo1!=null){
+					circleManagementInfo.setAddedFlag(1l);
+				}
+				else {
+					circleManagementInfo.setAddedFlag(0l);
+				}
+			}
+		}
+		Collections.sort(list, new Comparator<CircleManagementInfo>() {
+			@Override
+			public int compare(CircleManagementInfo o1, CircleManagementInfo o2) {
+				return o1.getAddedFlag()>o2.getAddedFlag()?-1:(o1.getAddedFlag()==o2.getAddedFlag())?0:1;
+			}
+		});
 		Integer count = circleManagementInfoMapper.selectCount(wrapper);
 		Integer count = circleManagementInfoMapper.selectCount(wrapper);
 		return new Page<CircleManagementInfo>(list, page, limit, count);
 		return new Page<CircleManagementInfo>(list, page, limit, count);
 	}
 	}
@@ -88,6 +108,7 @@ public class CircleManagementInfoServiceImpl implements ICircleManagementInfoSer
 			CircleManagementInfo tmp =  circleManagementInfoMapper.selectById(Long.parseLong(tt));
 			CircleManagementInfo tmp =  circleManagementInfoMapper.selectById(Long.parseLong(tt));
 			if(tmp != null){
 			if(tmp != null){
 				tmp.setDeleteFlag(1l);
 				tmp.setDeleteFlag(1l);
+				tmp.setGmtUpdate(new Date());
 				circleManagementInfoMapper.updateById(tmp);
 				circleManagementInfoMapper.updateById(tmp);
 			}
 			}
 		}
 		}
@@ -105,7 +126,9 @@ public class CircleManagementInfoServiceImpl implements ICircleManagementInfoSer
 	public CircleManagementInfo get(Long id) throws ServiceException {
 	public CircleManagementInfo get(Long id) throws ServiceException {
 		CircleManagementInfo circleManagementInfo=circleManagementInfoMapper.selectById(id);
 		CircleManagementInfo circleManagementInfo=circleManagementInfoMapper.selectById(id);
 		//查询圈子名片关系表
 		//查询圈子名片关系表
-		List<CircleCardInfo> circleCardInfoList=circleCardInfoMapper.selectList(new EntityWrapper<CircleCardInfo>().eq("circle_id",id));
+		List<CircleCardInfo> circleCardInfoList=circleCardInfoMapper.selectList(new EntityWrapper<CircleCardInfo>()
+				.eq("circle_id",id)
+				.eq("delete_flag",0));
 		List<CardManagementInfo> cardManagementInfoList=new ArrayList<>();
 		List<CardManagementInfo> cardManagementInfoList=new ArrayList<>();
 		for(CircleCardInfo circleCardInfo:circleCardInfoList){
 		for(CircleCardInfo circleCardInfo:circleCardInfoList){
 			//查询名片信息
 			//查询名片信息

+ 1 - 0
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/CommonUserInfoServiceImpl.java

@@ -87,6 +87,7 @@ public class CommonUserInfoServiceImpl implements ICommonUserInfoService{
 			CommonUserInfo tmp =  commonUserInfoMapper.selectById(Long.parseLong(tt));
 			CommonUserInfo tmp =  commonUserInfoMapper.selectById(Long.parseLong(tt));
 			if(tmp != null){
 			if(tmp != null){
 				tmp.setDeleteFlag(1L);
 				tmp.setDeleteFlag(1L);
+				tmp.setGmtUpdate(new Date());
 				commonUserInfoMapper.updateById(tmp);
 				commonUserInfoMapper.updateById(tmp);
 			}
 			}
 		}
 		}

+ 1 - 0
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/PersonalHomepageInfoServiceImpl.java

@@ -90,6 +90,7 @@ public class PersonalHomepageInfoServiceImpl implements IPersonalHomepageInfoSer
 			PersonalHomepageInfo tmp =  personalHomepageInfoMapper.selectById(Long.parseLong(tt));
 			PersonalHomepageInfo tmp =  personalHomepageInfoMapper.selectById(Long.parseLong(tt));
 			if(tmp != null){
 			if(tmp != null){
 				tmp.setDeleteFlag(1l);
 				tmp.setDeleteFlag(1l);
+				tmp.setGmtUpdate(new Date());
 				personalHomepageInfoMapper.updateById(tmp);
 				personalHomepageInfoMapper.updateById(tmp);
 			}
 			}
 		}
 		}

+ 1 - 0
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/card/impl/SearchRecordsInfoServiceImpl.java

@@ -72,6 +72,7 @@ public class SearchRecordsInfoServiceImpl implements ISearchRecordsInfoService{
 			SearchRecordsInfo tmp =  searchRecordsInfoMapper.selectById(Long.parseLong(tt));
 			SearchRecordsInfo tmp =  searchRecordsInfoMapper.selectById(Long.parseLong(tt));
 			if(tmp != null){
 			if(tmp != null){
 				tmp.setDeleteFlag(1l);
 				tmp.setDeleteFlag(1l);
+				tmp.setGmtUpdate(new Date());
 				searchRecordsInfoMapper.updateById(tmp);
 				searchRecordsInfoMapper.updateById(tmp);
 			}
 			}
 		}
 		}

+ 2 - 0
unimall-app-api/src/main/java/com/iotechn/unimall/app/api/commonUser/CommonUserServiceImpl.java

@@ -38,6 +38,8 @@ import java.util.Date;
 import java.util.HashMap;
 import java.util.HashMap;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
+import java.util.concurrent.TimeUnit;
+
 import com.iotechn.unimall.data.mapper.CommonUserInfoMapper;
 import com.iotechn.unimall.data.mapper.CommonUserInfoMapper;
 /**
 /**
  * Created by rize on 2019/6/30.
  * Created by rize on 2019/6/30.

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

@@ -384,6 +384,8 @@ public class ExceptionDefinition {
     
     
     public static final ServiceExceptionDefinition TABLE_IMPORT_ERROR=
     public static final ServiceExceptionDefinition TABLE_IMPORT_ERROR=
             new ServiceExceptionDefinition(53017, "导入表失败");
             new ServiceExceptionDefinition(53017, "导入表失败");
+    public static final ServiceExceptionDefinition CLASSIFY_REPEAT_ERROR =
+            new ServiceExceptionDefinition(53018, "分类名称重复");
 
 
 
 
 
 

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

@@ -0,0 +1,96 @@
+package com.iotechn.unimall.data.domain;
+
+import com.iotechn.unimall.data.domain.SuperDO;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.iotechn.unimall.core.framework.aspectj.lang.annotaion.Excel;
+import com.iotechn.unimall.core.framework.aspectj.lang.annotaion.Excel.ColumnType;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import lombok.Data;
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.enums.FieldFill;
+import com.iotechn.unimall.core.util.StringUtils;
+import java.util.Date;
+
+/**
+ * 名片交换对象 card_exchange_info
+ * 
+ * @author jlb
+ * @date 2023-04-12
+ */
+@Data
+@TableName("card_exchange_info")
+public class CardExchangeInfo extends SuperDO {
+    private static final long serialVersionUID = 1L;
+
+    /**  */
+    @TableId("id")
+    private Long id;
+
+    /** 发起人id */
+    @Excel(name = "发起人id")
+    @TableField("send_id")
+    private Long sendId;
+
+    /** 接收人id */
+    @Excel(name = "接收人id")
+    @TableField("receive_id")
+    private Long receiveId;
+
+    /** 发起人名片id */
+    @Excel(name = "发起人名片id")
+    @TableField("send_card_id")
+    private Long sendCardId;
+
+    /** 接收人名片id */
+    @Excel(name = "接收人名片id")
+    @TableField("receive_card_id")
+    private Long receiveCardId;
+
+    /** 圈子名称 */
+    @Excel(name = "圈子名称")
+    @TableField("circle_name")
+    private String circleName;
+
+    /** 状态(1已接受3已拒绝5已过期) */
+    @Excel(name = "状态(1已接受3已拒绝5已过期)")
+    @TableField("status")
+    private String status;
+
+    /**  */
+    @Excel(name = "", width = 30, dateFormat = "yyyy-MM-dd")
+    @TableField("gmt_create")
+    private Date gmtCreate;
+
+    /**  */
+    @Excel(name = "", width = 30, dateFormat = "yyyy-MM-dd")
+    @TableField("gmt_update")
+    private Date gmtUpdate;
+
+    /** 删除标识 */
+    @Excel(name = "删除标识")
+    @TableField("delete_flag")
+    private Long deleteFlag;
+    /**
+     * 修改标识 1拉黑2拒绝3接受
+     */
+    @TableField(exist = false)
+    private String updateFlag;
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("sendId", getSendId())
+            .append("receiveId", getReceiveId())
+            .append("sendCarId", getSendCardId())
+            .append("receiveCarId", getReceiveCardId())
+            .append("circleName", getCircleName())
+            .append("status", getStatus())
+            .append("gmtCreate", getGmtCreate())
+            .append("gmtUpdate", getGmtUpdate())
+            .append("deleteFlag", getDeleteFlag())
+            .toString();
+    }
+}

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

@@ -67,6 +67,12 @@ public class CardHolderInfo extends SuperDO {
     /** 允许他人分享名片(1允许) */
     /** 允许他人分享名片(1允许) */
     @TableField(exist = false)
     @TableField(exist = false)
     private Long shareCard;
     private Long shareCard;
+    /** 扫码名片归属人id */
+    @TableField(exist = false)
+    private Long cardCommonId;
+    /** 我的名片id */
+    @TableField(exist = false)
+    private String myCardId;
     @Override
     @Override
     public String toString() {
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

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

@@ -85,11 +85,16 @@ public class CardManagementInfo extends SuperDO {
     @TableField("head_sculpture")
     @TableField("head_sculpture")
     private String headSculpture;
     private String headSculpture;
 
 
-    /** 二维码 */
-    @Excel(name = "二维码")
+    /** 他人分享二维码 */
+    @Excel(name = "他人分享二维码")
     @TableField("qr_code")
     @TableField("qr_code")
     private String qrCode;
     private String qrCode;
 
 
+    /** 个人展示二维码 */
+    @Excel(name = "个人展示二维码")
+    @TableField("qr_code_myself")
+    private String qrCodeMyself;
+
     /** 置顶标识 */
     /** 置顶标识 */
     @Excel(name = "置顶标识")
     @Excel(name = "置顶标识")
     @TableField("top_marking")
     @TableField("top_marking")

+ 5 - 3
unimall-data/src/main/java/com/iotechn/unimall/data/domain/CircleCardInfo.java

@@ -23,16 +23,18 @@ import java.util.Date;
 @TableName("circle_card_info")
 @TableName("circle_card_info")
 public class CircleCardInfo extends SuperDO {
 public class CircleCardInfo extends SuperDO {
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;
-
+    /**  */
+    @TableId("id")
+    private Long id;
     /** 圈子id */
     /** 圈子id */
     @Excel(name = "圈子id")
     @Excel(name = "圈子id")
     @TableField("circle_id")
     @TableField("circle_id")
-    private String circleId;
+    private Long circleId;
 
 
     /** 名片id */
     /** 名片id */
     @Excel(name = "名片id")
     @Excel(name = "名片id")
     @TableField("card_id")
     @TableField("card_id")
-    private String cardId;
+    private Long cardId;
 
 
     /** 个人id */
     /** 个人id */
     @Excel(name = "个人id")
     @Excel(name = "个人id")

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

@@ -66,6 +66,12 @@ public class CircleManagementInfo extends SuperDO {
 
 
     @TableField(exist = false)
     @TableField(exist = false)
     private List<CardManagementInfo> cardManagementInfoList;
     private List<CardManagementInfo> cardManagementInfoList;
+    /** 我的圈子标识 */
+    @TableField(exist = false)
+    private Long addedFlag;
+    /** 圈子内人数 */
+    @TableField(exist = false)
+    private Integer cardNum;
 
 
 
 
     @Override
     @Override

+ 14 - 0
unimall-data/src/main/java/com/iotechn/unimall/data/mapper/CardExchangeInfoMapper.java

@@ -0,0 +1,14 @@
+package com.iotechn.unimall.data.mapper;
+
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.iotechn.unimall.data.domain.CardExchangeInfo;
+
+/**
+ * 名片交换Mapper接口
+ * 
+ * @author jlb
+ * @date 2023-04-12
+ */
+public interface CardExchangeInfoMapper extends BaseMapper<CardExchangeInfo> {
+
+}

+ 9 - 0
unimall-data/src/main/java/com/iotechn/unimall/data/util/SessionUtil.java

@@ -2,6 +2,7 @@ package com.iotechn.unimall.data.util;
 
 
 
 
 import com.google.protobuf.ServiceException;
 import com.google.protobuf.ServiceException;
+import com.iotechn.unimall.data.domain.CommonUserInfo;
 import com.iotechn.unimall.data.dto.AdminDTO;
 import com.iotechn.unimall.data.dto.AdminDTO;
 import com.iotechn.unimall.data.dto.UserDTO;
 import com.iotechn.unimall.data.dto.UserDTO;
 
 
@@ -13,6 +14,7 @@ import java.util.List;
 public class SessionUtil {
 public class SessionUtil {
 
 
     private static ThreadLocal<UserDTO> userLocal = new ThreadLocal<>();
     private static ThreadLocal<UserDTO> userLocal = new ThreadLocal<>();
+    private static ThreadLocal<CommonUserInfo> commonLocal = new ThreadLocal<>();
 
 
     private static ThreadLocal<AdminDTO> adminLocal = new ThreadLocal<>();
     private static ThreadLocal<AdminDTO> adminLocal = new ThreadLocal<>();
 
 
@@ -23,6 +25,13 @@ public class SessionUtil {
     public static UserDTO getUser() {
     public static UserDTO getUser() {
         return userLocal.get();
         return userLocal.get();
     }
     }
+    public static void setCommonUser(CommonUserInfo commonUserInfo) {
+        commonLocal.set(commonUserInfo);
+    }
+
+    public static CommonUserInfo getCommonUser() {
+        return commonLocal.get();
+    }
 
 
     public static void setAdmin(AdminDTO adminDTO) {
     public static void setAdmin(AdminDTO adminDTO) {
         adminLocal.set(adminDTO);
         adminLocal.set(adminDTO);

+ 9 - 0
unimall-data/src/main/resources/com/iotechn/unimall/data/mapper/CardExchangeInfoMapper.xml

@@ -0,0 +1,9 @@
+<?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.iotechn.unimall.data.mapper.CardExchangeInfoMapper">
+    
+
+
+</mapper>

+ 18 - 4
unimall-launcher/src/main/java/com/iotechn/unimall/launcher/controller/ApiController.java

@@ -10,6 +10,7 @@ import com.iotechn.unimall.core.annotation.param.NotNull;
 import com.iotechn.unimall.core.annotation.param.Range;
 import com.iotechn.unimall.core.annotation.param.Range;
 import com.iotechn.unimall.core.annotation.param.TextFormat;
 import com.iotechn.unimall.core.annotation.param.TextFormat;
 import com.iotechn.unimall.core.exception.ServiceException;
 import com.iotechn.unimall.core.exception.ServiceException;
+import com.iotechn.unimall.data.domain.CommonUserInfo;
 import com.iotechn.unimall.data.domain.log.SysLogininfor;
 import com.iotechn.unimall.data.domain.log.SysLogininfor;
 import com.iotechn.unimall.data.domain.log.SysOperLog;
 import com.iotechn.unimall.data.domain.log.SysOperLog;
 import com.iotechn.unimall.data.dto.AdminDTO;
 import com.iotechn.unimall.data.dto.AdminDTO;
@@ -120,7 +121,20 @@ public class ApiController {
 				operLog.setErrorMsg(e.getMessage());
 				operLog.setErrorMsg(e.getMessage());
 				operLog.setOperIp(BrowserData.getIpAddr(req));
 				operLog.setOperIp(BrowserData.getIpAddr(req));
 				operLog.setOperatorType(1);
 				operLog.setOperatorType(1);
-				operLog.setOperName(SessionUtil.getAdmin().getRealname());
+				if(SessionUtil.getAdmin() != null){
+					operLog.setOperName(SessionUtil.getAdmin().getRealname());
+				}
+				if(SessionUtil.getCommonUser() == null){
+					String accessToken = res.getHeader(Const.USER_ACCESS_TOKEN);
+					if (!StringUtils.isEmpty(accessToken)) {
+						String userJson = userRedisTemplate.opsForValue().get(Const.USER_REDIS_PREFIX + accessToken);
+						if (!StringUtils.isEmpty(userJson)) {
+							CommonUserInfo commonUserInfo = JSONObject.parseObject(userJson, CommonUserInfo.class);
+							SessionUtil.setCommonUser(commonUserInfo);
+							operLog.setOperName(commonUserInfo.getId()+"");
+						}
+					}
+				}
 				operLog.setOperUrl(_gp+"."+_mt);
 				operLog.setOperUrl(_gp+"."+_mt);
 				operLog.setOperLocation(BrowserData.getAddresses(operLog.getOperIp()));
 				operLog.setOperLocation(BrowserData.getAddresses(operLog.getOperIp()));
 				operLog.setStatus(1);
 				operLog.setStatus(1);
@@ -232,9 +246,9 @@ public class ApiController {
 					if (!StringUtils.isEmpty(accessToken)) {
 					if (!StringUtils.isEmpty(accessToken)) {
 						String userJson = userRedisTemplate.opsForValue().get(Const.USER_REDIS_PREFIX + accessToken);
 						String userJson = userRedisTemplate.opsForValue().get(Const.USER_REDIS_PREFIX + accessToken);
 						if (!StringUtils.isEmpty(userJson)) {
 						if (!StringUtils.isEmpty(userJson)) {
-							UserDTO userDTO = JSONObject.parseObject(userJson, UserDTO.class);
-							SessionUtil.setUser(userDTO);
-							args[i] = userDTO.getId();
+							CommonUserInfo commonUserInfo = JSONObject.parseObject(userJson, CommonUserInfo.class);
+							SessionUtil.setCommonUser(commonUserInfo);
+							args[i] = commonUserInfo.getId();
 							userRedisTemplate.expire(Const.USER_REDIS_PREFIX + accessToken, 30, TimeUnit.DAYS);
 							userRedisTemplate.expire(Const.USER_REDIS_PREFIX + accessToken, 30, TimeUnit.DAYS);
 							continue;
 							continue;
 						}
 						}