admin
2025-02-25 30d8e227e8d823b6c38c3b9c90ac2df03b63befe
fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/WXMPDynamicInfoServiceImpl.java
@@ -1,76 +1,79 @@
package com.yeshi.fanli.service.impl.dynamic;
import java.util.Date;
import java.util.List;
import java.util.UUID;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import org.yeshi.utils.StringUtil;
import com.yeshi.fanli.dao.dynamic.WXMPDynamicInfoDao;
import com.yeshi.fanli.entity.dynamic.WXMPDynamicInfo;
import com.yeshi.fanli.exception.dynamic.WXMPDynamicInfoException;
import com.yeshi.fanli.service.inter.dynamic.WXMPDynamicInfoService;
import com.yeshi.fanli.service.manger.goods.ConvertLinkManager;
@Service
public class WXMPDynamicInfoServiceImpl implements WXMPDynamicInfoService {
   @Resource
   private WXMPDynamicInfoDao wxmpDynamicInfoDao;
   @Resource
   private ConvertLinkManager convertLinkManager;
   @Override
   public void addWXMPDynamicInfo(WXMPDynamicInfo info) throws WXMPDynamicInfoException {
      if (StringUtil.isNullOrEmpty(info.getContent()))
         throw new WXMPDynamicInfoException(1, "无文案");
      if (info.getSource() == null)
         throw new WXMPDynamicInfoException(1, "无来源");
      if (info.getUser() == null)
         throw new WXMPDynamicInfoException(1, "无发布用户");
      if (info.getId() == null)
         info.setId(StringUtil.Md5(UUID.randomUUID().toString()));
      if (info.getCreateTime() == null)
         info.setCreateTime(new Date());
      info.setShareCount(0);
      if (wxmpDynamicInfoDao.get(info.getId()) != null)
         throw new WXMPDynamicInfoException(2, "动态已存在");
      wxmpDynamicInfoDao.save(info);
   }
   @Override
   public List<WXMPDynamicInfo> listDynamicInfo(int page, int pageSize) {
      return wxmpDynamicInfoDao.list((page - 1) * pageSize, pageSize);
   }
   @Override
   public Long countDynamicInfo() {
      return wxmpDynamicInfoDao.count();
   }
   @Override
   public String copyContent(String id, Long uid) throws WXMPDynamicInfoException {
      // 转链
      WXMPDynamicInfo info = wxmpDynamicInfoDao.get(id);
      if (info == null)
         throw new WXMPDynamicInfoException(1, "信息不存在");
      // 转链
      String convertContent = null;
      try {
         convertContent = convertLinkManager.convertLinkFromText(info.getContent(), uid, true);
      } catch (Exception e) {
         e.printStackTrace();
         throw new WXMPDynamicInfoException(2, "转链出错");
      }
      wxmpDynamicInfoDao.addShareCount(id);
      return convertContent;
   }
}
package com.yeshi.fanli.service.impl.dynamic;
import java.util.Date;
import java.util.List;
import java.util.UUID;
import javax.annotation.Resource;
import com.yeshi.fanli.entity.SystemEnum;
import org.springframework.stereotype.Service;
import org.yeshi.utils.StringUtil;
import com.yeshi.fanli.dao.dynamic.WXMPDynamicInfoDao;
import com.yeshi.fanli.entity.dynamic.WXMPDynamicInfo;
import com.yeshi.fanli.exception.dynamic.WXMPDynamicInfoException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.dynamic.WXMPDynamicInfoService;
import com.yeshi.fanli.service.manger.goods.ConvertLinkManager;
@Service
public class WXMPDynamicInfoServiceImpl implements WXMPDynamicInfoService {
   @Resource
   private WXMPDynamicInfoDao wxmpDynamicInfoDao;
   @Resource
   private ConvertLinkManager convertLinkManager;
   @Override
   public void addWXMPDynamicInfo(WXMPDynamicInfo info) throws WXMPDynamicInfoException {
      if (StringUtil.isNullOrEmpty(info.getContent()))
         throw new WXMPDynamicInfoException(1, "无文案");
      if (info.getSource() == null)
         throw new WXMPDynamicInfoException(1, "无来源");
      if (info.getUser() == null)
         throw new WXMPDynamicInfoException(1, "无发布用户");
      if (info.getId() == null)
         info.setId(StringUtil.Md5(UUID.randomUUID().toString()));
      if (info.getCreateTime() == null)
         info.setCreateTime(new Date());
      info.setShareCount(0);
      if (wxmpDynamicInfoDao.get(info.getId()) != null)
         throw new WXMPDynamicInfoException(2, "动态已存在");
      wxmpDynamicInfoDao.save(info);
   }
   @Override
   public List<WXMPDynamicInfo> listDynamicInfo(int page, int pageSize) {
      return wxmpDynamicInfoDao.list((page - 1) * pageSize, pageSize);
   }
   @Override
   public Long countDynamicInfo() {
      return wxmpDynamicInfoDao.count();
   }
   @Override
   public String copyContent(String id, Long uid) throws WXMPDynamicInfoException {
      // 转链
      WXMPDynamicInfo info = wxmpDynamicInfoDao.get(id);
      if (info == null)
         throw new WXMPDynamicInfoException(1, "信息不存在");
      // 转链
      String convertContent = null;
      try {
         convertContent = convertLinkManager.convertLinkFromText(SystemEnum.blks, info.getContent(), uid, true,false);
      } catch (Exception e) {
         e.printStackTrace();
         LogHelper.errorDetailInfo(e);
         throw new WXMPDynamicInfoException(2, "转链出错");
      }
      wxmpDynamicInfoDao.addShareCount(id);
      return convertContent;
   }
}