From f9691d544e62d6c04dbfe45d05a6c7bc5e004291 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 29 十二月 2023 11:52:29 +0800
Subject: [PATCH] 服务商

---
 server/services/src/main/java/com/doumee/service/business/impl/AdServiceImpl.java |   55 ++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 44 insertions(+), 11 deletions(-)

diff --git a/server/services/src/main/java/com/doumee/service/business/impl/AdServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/AdServiceImpl.java
index 0c6d52a..de162d3 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/AdServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/AdServiceImpl.java
@@ -1,5 +1,8 @@
 package com.doumee.service.business.impl;
 
+import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.core.constants.Constants;
+import com.doumee.core.model.LoginUserInfo;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.utils.Utils;
@@ -10,11 +13,14 @@
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.shiro.SecurityUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
+import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 骞垮憡淇℃伅琛⊿ervice瀹炵幇
@@ -27,8 +33,16 @@
     @Autowired
     private AdMapper adMapper;
 
+    @Autowired
+    SystemDictDataBiz systemDictDataBiz;
+
     @Override
     public String create(Ad ad) {
+        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+        ad.setIsdeleted(Constants.ZERO);
+        ad.setStatus(Constants.ZERO);
+        ad.setCreateDate(new Date());
+        ad.setCreator(loginUserInfo.getId());
         adMapper.insert(ad);
         return ad.getId();
     }
@@ -54,7 +68,19 @@
 
     @Override
     public void updateById(Ad ad) {
-        adMapper.updateById(ad);
+        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+
+        UpdateWrapper<Ad> wrapper = new UpdateWrapper<>();
+        wrapper.lambda()
+                .eq(Ad::getId,ad.getId())
+                .set(Ad::getEditor,loginUserInfo.getId())
+                .set(Ad::getEditDate,ad.getEditDate())
+                .set(Objects.nonNull(ad.getName()),Ad::getName,ad.getName())
+                .set(Objects.nonNull(ad.getImgurl()),Ad::getImgurl,ad.getImgurl())
+                .set(Ad::getSortnum,ad.getSortnum())
+                .set(Objects.nonNull(ad.getContent()),Ad::getContent,ad.getContent())
+                .set(Objects.nonNull(ad.getStatus()),Ad::getStatus,ad.getStatus());
+        adMapper.update(null,wrapper);
     }
 
     @Override
@@ -69,7 +95,11 @@
 
     @Override
     public Ad findById(String id) {
-        return adMapper.selectById(id);
+        String path =systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.FILE_DIR).getCode()+
+                systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.PROJECTS).getCode();
+        Ad ad = adMapper.selectById(id);
+        ad.setImgfullurl(path+ad.getImgurl());
+        return ad;
     }
 
     @Override
@@ -83,7 +113,7 @@
         QueryWrapper<Ad> wrapper = new QueryWrapper<>(ad);
         return adMapper.selectList(wrapper);
     }
-  
+
     @Override
     public PageData<Ad> findPage(PageWrap<Ad> pageWrap) {
         IPage<Ad> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
@@ -110,7 +140,7 @@
             queryWrapper.lambda().eq(Ad::getIsdeleted, pageWrap.getModel().getIsdeleted());
         }
         if (pageWrap.getModel().getName() != null) {
-            queryWrapper.lambda().eq(Ad::getName, pageWrap.getModel().getName());
+            queryWrapper.lambda().like(Ad::getName, pageWrap.getModel().getName());
         }
         if (pageWrap.getModel().getSortnum() != null) {
             queryWrapper.lambda().eq(Ad::getSortnum, pageWrap.getModel().getSortnum());
@@ -130,14 +160,17 @@
         if (pageWrap.getModel().getImgurl() != null) {
             queryWrapper.lambda().eq(Ad::getImgurl, pageWrap.getModel().getImgurl());
         }
-        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
-            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
-                queryWrapper.orderByDesc(sortData.getProperty());
-            } else {
-                queryWrapper.orderByAsc(sortData.getProperty());
-            }
+        queryWrapper.lambda().orderByAsc(Ad::getSortnum);
+        String path =systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.FILE_DIR).getCode()+
+                systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.PROJECTS).getCode();
+
+        IPage<Ad> adIPage = adMapper.selectPage(page, queryWrapper);
+        if (!CollectionUtils.isEmpty(adIPage.getRecords())){
+            adIPage.getRecords().forEach(s->{
+                s.setImgfullurl(path+s.getImgurl());
+            });
         }
-        return PageData.from(adMapper.selectPage(page, queryWrapper));
+        return PageData.from(adIPage);
     }
 
     @Override

--
Gitblit v1.9.3