Explorar o código

轮播图接口新增

shicr %!s(int64=8) %!d(string=hai) anos
pai
achega
463df44613

+ 14 - 0
donate-service/src/main/java/com/uas/service/donate/RestTemplateConfig.java

@@ -0,0 +1,14 @@
+package com.uas.service.donate;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.client.RestTemplate;
+
+@Configuration
+public class RestTemplateConfig {
+
+    @Bean
+    public RestTemplate restTemplate(){
+        return new RestTemplate();
+    }
+}

+ 28 - 1
donate-service/src/main/java/com/uas/service/donate/controller/ActiveCenterController.java

@@ -1,7 +1,9 @@
 package com.uas.service.donate.controller;
 
 import com.uas.service.donate.model.Activity;
+import com.uas.service.donate.model.Award;
 import com.uas.service.donate.service.ActivityService;
+import com.uas.service.donate.service.AwardService;
 import com.uas.service.donate.service.ProjectRecodeService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
@@ -12,6 +14,9 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestParam;
 
+import java.util.ArrayList;
+import java.util.List;
+
 
 @Controller
 public class ActiveCenterController {
@@ -22,6 +27,9 @@ public class ActiveCenterController {
     @Autowired
     private ActivityService activityService;
 
+    @Autowired
+    private AwardService awardService;
+
     /**
      * 返回一元捐活动列表freemarker页面
      * @param modelMap
@@ -47,24 +55,43 @@ public class ActiveCenterController {
         //根据活动状态查询出所有活动
         if ("进行中".equals(status)) {
             Page<Activity> activities = activityService.findInProcess(pageable);
+            List<Award> awardList=new ArrayList<Award>();
+            for(Activity activity:activities){
+                awardList=awardService.getAwards(activity.getId());
+                modelMap.put("awards",awardList);
+            }
+
             modelMap.put("page", activities);
         } else if ("已结束".equals(status)) {
             Page<Activity> activities = activityService.findEndActivities(pageable);
             modelMap.put("page", activities);
+            for(Activity activity:activities){
+                List<Award> awardList=awardService.getAwards(activity.getId());
+                activity.setAwards(awardList);
+            }
         } else if ("全部".equals(status)) {
             Page<Activity> activities = activityService.findAll(pageable);
             modelMap.put("page", activities);
+            for(Activity activity:activities){
+                List<Award> awardList=awardService.getAwards(activity.getId());
+                activity.setAwards(awardList);
+            }
         }
 
         if (search != null) {
             Page<Activity> activities = activityService.search(search, pageable);
             modelMap.put("page", activities);
+            for(Activity activity:activities){
+                List<Award> awardList=awardService.getAwards(activity.getId());
+                activity.setAwards(awardList);
+            }
         }
 
         modelMap.put("historyPerson", historyPerson);
         modelMap.put("totality", totality);
-
         return "activeCenter";
     }
 
+
+
 }

+ 15 - 8
donate-service/src/main/java/com/uas/service/donate/controller/AppController.java

@@ -1,5 +1,6 @@
 package com.uas.service.donate.controller;
 
+import com.alibaba.fastjson.JSONObject;
 import com.uas.service.donate.model.*;
 import com.uas.service.donate.service.*;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -38,12 +39,12 @@ public class AppController {
      */
     @ResponseBody
     @RequestMapping(value = "/appIndex",method = RequestMethod.GET)
-    public ModelMap returnapp(){
+    public ModelMap returnapp(@RequestParam(value = "useFor",defaultValue ="donate")String useFor){
         ModelMap modelMap=new ModelMap();
         Double totality=projectRecodeService.totality();
         //存入捐款总数
         modelMap.put("totality",totality);
-        List<Carousel> carouselList=carouselService.findAll();
+        List<JSONObject> carouselList=carouselService.getCarousels(useFor);
         //存入首页轮播图
         modelMap.put("carouselList",carouselList);
         //查询项目中所有领域分类
@@ -56,17 +57,20 @@ public class AppController {
      */
     @ResponseBody
     @RequestMapping(value = "/projects",method = RequestMethod.GET)
-    public ModelMap returnProjects(@RequestParam(value="area",defaultValue = "0")String area,
+    public ModelMap returnProjects(@RequestParam(value="area",defaultValue = "全部")String area,
                                    @RequestParam(value = "search",required = false)String search){
         ModelMap modelMap=new ModelMap();
+            if ("全部".equals(area)) {
+                List<Project> projectList=projectService.findProjects();
+                modelMap.put("projectList",projectList);
+            }else{
+                List<Project> projectList=projectService.findArea(area);
+                modelMap.put("projectList",projectList);
+            }
         if(search!=null){
             List<Project> projectList=projectService.search(search);
             modelMap.put("projectList",projectList);
         }
-        if(area!=null){
-            List<Project> projectList=projectService.findArea(area);
-            modelMap.put("projectList",projectList);
-        }
         return modelMap;
     }
 
@@ -78,7 +82,10 @@ public class AppController {
     public ModelMap returnActivities(@RequestParam(value="status",defaultValue = "全部")String status,
                                      @RequestParam(value = "search",required = false)String search){
         ModelMap modelMap=new ModelMap();
-        if(status!=null){
+        if("全部".equals(status)){
+            List<Activity> activityList=activityService.findAll();
+            modelMap.put("activityList",activityList);
+        }else{
             List<Activity> activityList=activityController.getActivities(status);
             modelMap.put("activityList",activityList);
         }

+ 25 - 0
donate-service/src/main/java/com/uas/service/donate/controller/CarouselController.java

@@ -0,0 +1,25 @@
+package com.uas.service.donate.controller;
+
+import com.alibaba.fastjson.JSONObject;
+import com.uas.service.donate.service.CarouselService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import java.util.List;
+
+@Controller
+@RequestMapping("/carousels")
+public class CarouselController {
+
+    @Autowired
+    private CarouselService carouselService;
+
+    @ResponseBody
+    @RequestMapping("/getAll")
+    public List<JSONObject> getCarousels(@RequestParam("useFor") String useFor){
+        return carouselService.getCarousels(useFor);
+    }
+}

+ 0 - 1
donate-service/src/main/java/com/uas/service/donate/dao/CarouselDao.java

@@ -12,7 +12,6 @@ import java.util.List;
 public interface CarouselDao extends JpaRepository<Carousel,Long>,JpaSpecificationExecutor<Carousel>{
 
     //根据排序顺序正序获取所有轮播图
-    @Query("from Carousel order by sort")
     List<Carousel> findAll();
 
 }

+ 19 - 7
donate-service/src/main/java/com/uas/service/donate/impl/CarouselServiceImpl.java

@@ -1,22 +1,34 @@
 package com.uas.service.donate.impl;
 
+import com.alibaba.fastjson.JSONObject;
 
-import com.uas.service.donate.dao.CarouselDao;
-import com.uas.service.donate.model.Carousel;
+import com.uas.service.donate.model.MicroServicesConf;
 import com.uas.service.donate.service.CarouselService;
+import com.uas.service.donate.util.JsonUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.web.client.RestTemplate;
 
 import java.util.List;
 
 @Service
-public class CarouselServiceImpl implements CarouselService{
+public class CarouselServiceImpl implements CarouselService {
+
+    private final MicroServicesConf conf;
+
+    private final RestTemplate restTemplate;
 
     @Autowired
-    private CarouselDao carouselDao;
+    public CarouselServiceImpl(MicroServicesConf conf, RestTemplate restTemplate) {
+        this.conf = conf;
+        this.restTemplate = restTemplate;
+    }
 
-    //根据排序顺序正序获取所有轮播图
-    public List<Carousel> findAll(){
-        return carouselDao.findAll();
+    public List<JSONObject> getCarousels(String useFor){
+        String url=conf.getRequestUrlForCarousel(20030,"/carousels?usedFor="+useFor);
+        String result=restTemplate.getForEntity(url,String.class).getBody();
+        List<JSONObject> r= JsonUtil.parseJsonToObject(result);
+        return r;
     }
+
 }

+ 0 - 70
donate-service/src/main/java/com/uas/service/donate/impl/MessageServiceImpl.java

@@ -1,70 +0,0 @@
-package com.uas.service.donate.impl;
-
-import com.uas.message.mail.service.MailService;
-import com.uas.platform.core.util.HttpUtil;
-import com.uas.platform.core.util.serializer.FlexJsonUtils;
-import com.uas.service.donate.MessageConfiguration;
-import com.uas.service.donate.model.SmsMessage;
-import com.uas.service.donate.service.MessageService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-import java.util.Map;
-
-/**
- * 发送消息提醒实现方法
- * Created by dongbw
- * 17/09/28 17:40.
- */
-@Service
-public class MessageServiceImpl implements MessageService {
-
-    @Autowired
-    private MailService mailService;
-
-    @Autowired
-    private MessageConfiguration messageConfiguration;
-
-    @Override
-    public ResponseEntity<String> sendMail(String receivedEmail, Map<String, Object> model) {
-        try {
-            if (null != messageConfiguration.getTplInvitationForB2B()) {
-                // 这些需要在调用接口之前设置
-//                model.put("vendorusername", "");
-//                model.put("vendorname", "");
-//                model.put("custname", "");
-//                model.put("inviteuid", "");
-//                model.put("inviteUserCode", "");
-                mailService.send(messageConfiguration.getTplInvitationForB2B(), receivedEmail, model);
-            }
-            return new ResponseEntity<String>(HttpStatus.OK);
-        } catch (Exception e) {
-            e.printStackTrace();
-            return new ResponseEntity<String>(HttpStatus.INTERNAL_SERVER_ERROR);
-        }
-    }
-
-    @Override
-    public ResponseEntity<String> sendMessage(String receiverTel, List<Object> obj) {
-        try {
-            if (null != messageConfiguration.getMsgInvitationForB2B()) {
-                SmsMessage sms = new SmsMessage();
-//            obj.add(record.getVendusername());
-//            obj.add(record.getVendname());
-//            obj.add(SystemSession.getUser().getUserName() + "("
-//                    + SystemSession.getUser().getEnterprise().getEnName() + ")");
-                sms.setParams(obj);
-                sms.setReceiver(receiverTel);
-                sms.setTemplateId(messageConfiguration.getMsgInvitationForB2B());
-                HttpUtil.sendPost(messageConfiguration.getMessageSendUrl(), FlexJsonUtils.toJsonDeep(sms));
-            }
-            return new ResponseEntity<String>(HttpStatus.OK);
-        } catch (Exception e) {
-            e.printStackTrace();
-            return new ResponseEntity<String>(HttpStatus.INTERNAL_SERVER_ERROR);
-        }
-    }
-}

+ 86 - 0
donate-service/src/main/java/com/uas/service/donate/model/MicroServicesConf.java

@@ -0,0 +1,86 @@
+package com.uas.service.donate.model;
+
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+/**
+ * 微服务相关配置
+ */
+@Component
+public class MicroServicesConf {
+    /**
+     * 微服务Docker swarm的主机地址
+     */
+  /*  @Value("#{sys.microServiceIp ?: '10.10.101.23'}")
+    private String microServiceIp;
+
+    *//**
+     * 特殊:news用的是官网数据库
+     *//*
+    @Value("#{sys.newsMicroServiceIp ?: 'news.usoftchina.com'}")
+    private String newsMicroServiceIp;
+
+    *//**
+     * floor
+     *//*
+    @Value("#{sys.floorMicroServiceIp ?: '10.10.0.30'}")
+    private String floorMicroServiceIp;*/
+
+    /**
+     * 轮播
+     */
+    @Value("#{'10.10.101.23'}")
+    private String carouselMicroServiceIp;
+
+  /*  public String getMicroServiceIp() {
+        return microServiceIp;
+    }
+
+    public void setMicroServiceIp(String microServiceIp) {
+        this.microServiceIp = microServiceIp;
+    }
+
+    public String getNewsMicroServiceIp() {
+        return newsMicroServiceIp;
+    }
+
+    public void setNewsMicroServiceIp(String newsMicroServiceIp) {
+        this.newsMicroServiceIp = newsMicroServiceIp;
+    }
+
+    public String getFloorMicroServiceIp() {
+        return floorMicroServiceIp;
+    }
+
+    public void setFloorMicroServiceIp(String floorMicroServiceIp) {
+        this.floorMicroServiceIp = floorMicroServiceIp;
+    }*/
+
+    public String getCarouselMicroServiceIp() {
+        return carouselMicroServiceIp;
+    }
+
+    public void setCarouselMicroServiceIp(String carouselMicroServiceIp) {
+        this.carouselMicroServiceIp = carouselMicroServiceIp;
+    }
+
+  /*  public String getRequestUrl(int port, String requestUrl) {
+        return String.format("http://%s:%d%s", this.microServiceIp, port, requestUrl);
+    }
+
+    public String getRequestUrlForNews(String requestUrl) {
+        return String.format("http://%s%s", this.newsMicroServiceIp, requestUrl);
+    }
+
+    public String getRequestUrlForFloor(int port, String requestUrl) {
+        return String.format("http://%s:%d%s", this.floorMicroServiceIp,port, requestUrl);
+    }*/
+
+    public String getRequestUrlForCarousel(int port, String requestUrl) {
+        return String.format("http://%s:%d%s", this.carouselMicroServiceIp,port, requestUrl);
+    }
+
+ /*   public String getRequestUrl(int port, String requestUrl, PageParams pageable) {
+        return String.format("http://%s:%d%s%s", this.microServiceIp, port, requestUrl, "&count=" + pageable.getCount() + "&page=" + pageable.getPage() + "&filter=" + pageable.getFilter());
+    }*/
+}

+ 4 - 3
donate-service/src/main/java/com/uas/service/donate/service/CarouselService.java

@@ -1,11 +1,12 @@
 package com.uas.service.donate.service;
 
-import com.uas.service.donate.model.Carousel;
+
+import com.alibaba.fastjson.JSONObject;
 
 import java.util.List;
 
 public interface CarouselService {
 
-    //根据排序顺序正序获取所有轮播图
-    List<Carousel> findAll();
+    List<JSONObject> getCarousels(String useFor);
+
 }

+ 78 - 0
donate-service/src/main/java/com/uas/service/donate/util/JsonUtil.java

@@ -0,0 +1,78 @@
+package com.uas.service.donate.util;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import net.sf.json.JSONArray;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Json工具类,利用Jackson完成一些复杂类型的json序列化与反序列化
+ *
+ * @author yangck
+ * @create 2016-11-18 9:21
+ */
+public class JsonUtil {
+
+    private static ObjectMapper mapper = new ObjectMapper();;
+
+    /**
+     * 将Map对象序列化为json字符串
+     * @param map
+     * @return
+     */
+    public static String writeValueAsString(Map<String,? extends Object> map) throws JsonProcessingException {
+        String json = mapper.writeValueAsString(map);
+        return json;
+    }
+
+    /**
+     * 将Map对象序列化为具有良好可读性的json字符串
+     * @param map
+     * @return
+     * @throws JsonProcessingException
+     */
+    public static String writeValueAsPrettyString(Map<String,? extends Object> map) throws JsonProcessingException {
+        String json = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(map);
+        return json;
+    }
+
+    /**
+     * 将json字符串解析为Map对象
+     * @param json
+     * @param <V>
+     * @return
+     */
+    public static <V> Map<String, V> parseJsonToMap(String json) throws IOException {
+        Map<String, V> map = mapper.readValue(json, new TypeReference<HashMap<String, V>>() {});
+
+        return map;
+    }
+
+    /**
+     * json array to JsonArray
+     * @param jsonArray
+     * @return
+     */
+    public static JSONArray parseJsonToArray(String jsonArray) {
+        try {
+            return mapper.readValue(jsonArray, JSONArray.class);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        return new JSONArray();
+    }
+
+    public static <T> T parseJsonToObject(String json) {
+        T result = null;
+        try {
+            result = mapper.readValue(json, new TypeReference<T>(){});
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        return result;
+    }
+}