Browse Source

donate-console的代码更新

shicr 8 years ago
parent
commit
6b8efce406
59 changed files with 1965 additions and 313 deletions
  1. 9 2
      donate-console/src/main/java/com/uas/console/donate/Impl/ActivityRecodeServiceImpl.java
  2. 119 11
      donate-console/src/main/java/com/uas/console/donate/Impl/ActivityServiceImpl.java
  3. 42 0
      donate-console/src/main/java/com/uas/console/donate/Impl/FileServiceImpl.java
  4. 4 1
      donate-console/src/main/java/com/uas/console/donate/Impl/OrgServiceImpl.java
  5. 1 0
      donate-console/src/main/java/com/uas/console/donate/Impl/ProjectConcludeServiceImpl.java
  6. 9 7
      donate-console/src/main/java/com/uas/console/donate/Impl/ProjectFinanceServiceImpl.java
  7. 47 0
      donate-console/src/main/java/com/uas/console/donate/Impl/ProjectQualificationServiceImpl.java
  8. 22 0
      donate-console/src/main/java/com/uas/console/donate/Impl/ProjectRecodeServiceImpl.java
  9. 0 19
      donate-console/src/main/java/com/uas/console/donate/Impl/ProjectReportServiceImpl.java
  10. 84 0
      donate-console/src/main/java/com/uas/console/donate/Impl/ProjectServiceImpl.java
  11. 13 0
      donate-console/src/main/java/com/uas/console/donate/WebSecurityConfig.java
  12. 142 5
      donate-console/src/main/java/com/uas/console/donate/controller/ActivityController.java
  13. 31 4
      donate-console/src/main/java/com/uas/console/donate/controller/ActivityRecodeController.java
  14. 11 0
      donate-console/src/main/java/com/uas/console/donate/controller/AwardController.java
  15. 31 0
      donate-console/src/main/java/com/uas/console/donate/controller/BaseController.java
  16. 18 1
      donate-console/src/main/java/com/uas/console/donate/controller/OrgController.java
  17. 45 0
      donate-console/src/main/java/com/uas/console/donate/controller/ProjectConcludeController.java
  18. 168 30
      donate-console/src/main/java/com/uas/console/donate/controller/ProjectController.java
  19. 34 3
      donate-console/src/main/java/com/uas/console/donate/controller/ProjectEvolveController.java
  20. 49 7
      donate-console/src/main/java/com/uas/console/donate/controller/ProjectFinanceController.java
  21. 44 0
      donate-console/src/main/java/com/uas/console/donate/controller/ProjectQualificationController.java
  22. 10 0
      donate-console/src/main/java/com/uas/console/donate/controller/ProjectRecodeController.java
  23. 0 31
      donate-console/src/main/java/com/uas/console/donate/controller/ProjectReportController.java
  24. 24 0
      donate-console/src/main/java/com/uas/console/donate/controller/SmsController.java
  25. 23 3
      donate-console/src/main/java/com/uas/console/donate/dao/ActivityDao.java
  26. 19 1
      donate-console/src/main/java/com/uas/console/donate/dao/ActivityRecodeDao.java
  27. 2 0
      donate-console/src/main/java/com/uas/console/donate/dao/AwardDao.java
  28. 4 0
      donate-console/src/main/java/com/uas/console/donate/dao/OrgDao.java
  29. 47 2
      donate-console/src/main/java/com/uas/console/donate/dao/ProjectDao.java
  30. 4 0
      donate-console/src/main/java/com/uas/console/donate/dao/ProjectEvolveDao.java
  31. 6 0
      donate-console/src/main/java/com/uas/console/donate/dao/ProjectFinanceDao.java
  32. 35 0
      donate-console/src/main/java/com/uas/console/donate/dao/ProjectQualificationDao.java
  33. 18 0
      donate-console/src/main/java/com/uas/console/donate/dao/ProjectRecodeDao.java
  34. 0 11
      donate-console/src/main/java/com/uas/console/donate/dao/ProjectReportDao.java
  35. 161 43
      donate-console/src/main/java/com/uas/console/donate/model/Activity.java
  36. 12 11
      donate-console/src/main/java/com/uas/console/donate/model/ActivityRecode.java
  37. 21 24
      donate-console/src/main/java/com/uas/console/donate/model/Award.java
  38. 10 5
      donate-console/src/main/java/com/uas/console/donate/model/Org.java
  39. 51 6
      donate-console/src/main/java/com/uas/console/donate/model/Project.java
  40. 1 1
      donate-console/src/main/java/com/uas/console/donate/model/ProjectConclude.java
  41. 41 0
      donate-console/src/main/java/com/uas/console/donate/model/ProjectFinance.java
  42. 55 0
      donate-console/src/main/java/com/uas/console/donate/model/ProjectQualification.java
  43. 129 0
      donate-console/src/main/java/com/uas/console/donate/model/ProjectRecode.java
  44. 0 69
      donate-console/src/main/java/com/uas/console/donate/model/ProjectReport.java
  45. 44 0
      donate-console/src/main/java/com/uas/console/donate/model/SmsMessage.java
  46. 44 0
      donate-console/src/main/java/com/uas/console/donate/model/UploadImage.java
  47. 5 0
      donate-console/src/main/java/com/uas/console/donate/service/ActivityRecodeService.java
  48. 24 2
      donate-console/src/main/java/com/uas/console/donate/service/ActivityService.java
  49. 20 0
      donate-console/src/main/java/com/uas/console/donate/service/FileService.java
  50. 3 3
      donate-console/src/main/java/com/uas/console/donate/service/OrgService.java
  51. 1 0
      donate-console/src/main/java/com/uas/console/donate/service/ProjectConcludeService.java
  52. 5 2
      donate-console/src/main/java/com/uas/console/donate/service/ProjectFinanceService.java
  53. 25 0
      donate-console/src/main/java/com/uas/console/donate/service/ProjectQualificationService.java
  54. 11 0
      donate-console/src/main/java/com/uas/console/donate/service/ProjectRecodeService.java
  55. 0 9
      donate-console/src/main/java/com/uas/console/donate/service/ProjectReportService.java
  56. 28 0
      donate-console/src/main/java/com/uas/console/donate/service/ProjectService.java
  57. 12 0
      donate-console/src/main/java/com/uas/console/donate/service/SmsService.java
  58. 94 0
      donate-console/src/main/java/com/uas/console/donate/util/FastjsonUtils.java
  59. 53 0
      donate-console/src/main/java/com/uas/console/donate/util/HttpUtils.java

+ 9 - 2
donate-console/src/main/java/com/uas/console/donate/Impl/ActivityRecodeServiceImpl.java

@@ -18,11 +18,18 @@ public class ActivityRecodeServiceImpl implements ActivityRecodeService {
 
         return activityRecodeDao.save(joinActivity);
     }
-    public List<ActivityRecode> joins(Long activityId){
-        List<ActivityRecode> joinActivities =  activityRecodeDao. findByActivityId(activityId);
+
+    //查询某一活动的中奖者信息
+    public List<ActivityRecode> whoGetAward(Long activityId){
+        List<ActivityRecode> joinActivities =  activityRecodeDao. findWhoGetAward(activityId);
         return joinActivities;
     }
 
+    //查询某一活动的参与人
+    public List<ActivityRecode> joins(Long activityId){
+       return activityRecodeDao.joins(activityId);
+    }
+
     public List<ActivityRecode> queryOne(Long uuid){
         return activityRecodeDao.findByUuid(uuid);
     }

+ 119 - 11
donate-console/src/main/java/com/uas/console/donate/Impl/ActivityServiceImpl.java

@@ -2,13 +2,21 @@ package com.uas.console.donate.Impl;
 
 import com.uas.console.donate.dao.ActivityDao;
 import com.uas.console.donate.dao.AwardDao;
+import com.uas.console.donate.dao.ProjectDao;
+import com.uas.console.donate.dao.ProjectQualificationDao;
 import com.uas.console.donate.model.Activity;
 import com.uas.console.donate.model.Award;
+import com.uas.console.donate.model.Project;
+import com.uas.console.donate.model.ProjectQualification;
 import com.uas.console.donate.service.ActivityService;
 import com.uas.console.donate.util.CollectionUtils;
+import com.uas.console.donate.util.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
@@ -22,26 +30,99 @@ public class ActivityServiceImpl implements ActivityService{
     @Autowired
     private AwardDao awardDao;
 
+    @Autowired
+    private ProjectDao projectDao;
+
+    @Autowired
+    private ProjectQualificationDao projectQualificationDao;
+
+
+    /**
+     * 如果活动有草稿状态就取出草稿
+     */
+    public Activity show(){
+        if(activityDao.findDraft()!=null){
+            return activityDao.findDraft();
+        }else{
+            return null;
+        }
+    }
+    /**
+     * 保存活动
+     * @param activity
+     * @return
+     */
     public Activity save(Activity activity) {
         Date date = new Date();
+        //如果是保存过的活动,则不需要重新生成编号
+        if(activity.getId()!=null){
+           // activity.setId(activity.getId());
+            //删除和该活动关联过的所有项目
+            projectQualificationDao.deletByActivityId(activity.getId());
+        }
         activity.setSubmitTime(date);
-        activity.setCode(date.toString());
-        activity.setStatus(1);
+       // activity.setCode();
+        //设置成草稿状态
+        if(activity.getPublish()!=2){
+            activity.setPublish(1);
+        }
+        //设置活动展示优先级
         activity.setPriority(1);
+
+        //存放不同奖品的list集合
+        List<Award> list=new ArrayList<Award>();
+
+        //设置奖品信息
         List<Award> awardList = activity.getAwards();
-        activity = activityDao.saveAndFlush(activity);
-        if(!CollectionUtils.isEmpty(awardList)) {
+
             for (Award award : awardList) {
-                award.setActivityId(activity.getId());
-                awardDao.save(award);
+                //如果对象里的属性值不是全部为空
+                if(ObjectUtils.isNull(award)){
+                    System.out.print(award+"  ");
+                    award.setActivityId(activity.getId());
+                    list.add(award);
+                }
             }
-        }
-        return activity;
+            awardDao.save(list);
+
+        /**
+         * 重新设置该活动关联的项目
+         */
+        //存放多个有资格参与活动的项目的集合
+        List<ProjectQualification> list1=new ArrayList<ProjectQualification>();
+
+        //有资格参与该活动的项目,前台传入的是项目id号
+        List<ProjectQualification> projectQualificationList=activity.getProjectQualificationList();
+            for(ProjectQualification projectQualification:projectQualificationList){
+                //关联项目数
+                int count=0;
+                //由于前台可能传来一个空对象,所以要对对象属性做判空判断
+                if(ObjectUtils.isNull(projectQualification)){
+                    //给项目资格表设置活动id
+                    projectQualification.setActivityId(activity.getId());
+
+                    if(projectQualification.getProId()!=null){
+                        //通过项目id,获取项目名称
+                        Project project=projectDao.findOne(projectQualification.getProId());
+                        //给项目资格表里面设置项目的名称
+                        projectQualification.setName(project.getName());
+                        count++;
+                    }
+
+                    list1.add(projectQualification);
+                }
+                //给活动设置相关项目数
+                activity.setSumconnect(count);
+            }
+            projectQualificationDao.save(list1);
+
+        return  activityDao.saveAndFlush(activity);
     }
 
-    public Activity submit(Long id){
-        Activity activity= activityDao.findOne(id);
-        activity.setStatus(2);
+    public Activity submit(Activity activity){
+
+        //设置成发布状态
+        activity.setPublish(2);
 
         return activityDao.save(activity);
     }
@@ -53,4 +134,31 @@ public class ActivityServiceImpl implements ActivityService{
         activity.setPriority(max);
         return activityDao.save(activity);
     }
+
+
+    public Activity findOne(Long id){
+        return activityDao.findOne(id);
+    }
+
+    //搜索出所有已结束的活动
+    public Page<Activity> findEndActivities(Pageable pageable){
+        return activityDao.findEndActivities(pageable);
+    }
+
+    //搜索出所有还未开始的活动
+    public Page<Activity> findNotStart(Pageable pageable){
+        return activityDao.findNotStart(pageable);
+    }
+
+    //搜索出所有正在进行的活动
+    public  Page<Activity> findInprocess(Pageable pageable){
+        return activityDao.findInprocess(pageable);
+    }
+
+    //查找某一活动具体信息
+    public Activity fingById(Long id){
+        return  activityDao.findOne(id);
+    }
+
+
 }

+ 42 - 0
donate-console/src/main/java/com/uas/console/donate/Impl/FileServiceImpl.java

@@ -0,0 +1,42 @@
+package com.uas.console.donate.Impl;
+
+import com.uas.console.donate.model.FileUpload;
+import com.uas.console.donate.service.FileService;
+import com.uas.dfs.service.FileClient;
+import com.uas.platform.core.exception.IllegalOperatorException;
+import org.apache.commons.io.FilenameUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.commons.CommonsMultipartFile;
+
+@Service
+public class FileServiceImpl implements FileService {
+
+    @Autowired
+    private FileClient fileClient;
+
+    @Override
+    public String save(FileUpload fileUpload) {
+        CommonsMultipartFile file = fileUpload.getFile();
+        try {
+            // 上传到文件系统
+            return fileClient.upload(file.getBytes(), file.getSize(),
+                    FilenameUtils.getExtension(file.getOriginalFilename()), null);
+        } catch (Exception e) {
+            e.printStackTrace();
+            throw new IllegalOperatorException("附件上传失败");
+        }
+    }
+
+    @Override
+    public String save(String fileName, byte[] fileBytes) {
+        try {
+            String path = fileClient.upload(fileBytes, fileBytes.length, FilenameUtils.getExtension(fileName), null);
+            return path;
+        } catch (Exception e) {
+            e.printStackTrace();
+            throw new IllegalOperatorException("附件上传失败");
+        }
+    }
+
+}

+ 4 - 1
donate-console/src/main/java/com/uas/console/donate/Impl/OrgServiceImpl.java

@@ -93,6 +93,9 @@ public class OrgServiceImpl implements OrgService {
         return orgDao.findByTypeAndMajorArea(type,majorArea,status);
     }
 
-
+    //根据搜索框查询机构信息
+    public List<Org> search(String search){
+        return orgDao.search(search);
+    }
 
 }

+ 1 - 0
donate-console/src/main/java/com/uas/console/donate/Impl/ProjectConcludeServiceImpl.java

@@ -8,6 +8,7 @@ import org.springframework.stereotype.Service;
 
 @Service
 public class ProjectConcludeServiceImpl implements ProjectConcludeService{
+
     @Autowired
     private ProjectConcludeDao projectConcludeDao;
 

+ 9 - 7
donate-console/src/main/java/com/uas/console/donate/Impl/ProjectFinanceServiceImpl.java

@@ -1,11 +1,15 @@
 package com.uas.console.donate.Impl;
 
 import com.uas.console.donate.dao.ProjectFinanceDao;
+import com.uas.console.donate.model.FileUpload;
+import com.uas.console.donate.model.ProjectFinance;
 import com.uas.console.donate.service.ProjectFinanceService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.web.servlet.ServletComponentScan;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 @Service
 @ServletComponentScan(basePackages = {"com.uas.dfs.service"})
 public class ProjectFinanceServiceImpl implements ProjectFinanceService{
@@ -13,13 +17,11 @@ public class ProjectFinanceServiceImpl implements ProjectFinanceService{
     @Autowired
     private ProjectFinanceDao projectFinanceDao;
 
-/*    @Autowired
-    private FileClient fileClient;*/
-
-    /*public ProjectFinance save(ProjectFinance projectFinance, FileUpload file) {
-        String path = fileClient.upload(file.getFile().getBytes(), file.getFile().getSize(), file.getFile().getOriginalFilename(), null);
-        System.out.println(path);
+    public ProjectFinance save(ProjectFinance projectFinance) {
         return projectFinanceDao.save(projectFinance);
-    }*/
+    }
 
+    public List<ProjectFinance> findByProId(Long proId){
+        return projectFinanceDao.findByProId(proId);
+    }
 }

+ 47 - 0
donate-console/src/main/java/com/uas/console/donate/Impl/ProjectQualificationServiceImpl.java

@@ -0,0 +1,47 @@
+package com.uas.console.donate.Impl;
+
+import com.uas.console.donate.dao.ProjectQualificationDao;
+import com.uas.console.donate.model.Project;
+import com.uas.console.donate.model.ProjectQualification;
+import com.uas.console.donate.service.ProjectQualificationService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+
+
+@Service
+public class ProjectQualificationServiceImpl implements ProjectQualificationService{
+
+    @Autowired
+    private ProjectQualificationDao projectQualificationDao;
+
+    public ProjectQualification save(ProjectQualification projectQualification){
+        return projectQualificationDao.save(projectQualification);
+    }
+
+    /*public ProjectQualification deleteByProject(Long proId){
+        return projectQualificationDao.deleteByProject(proId);
+    }*/
+
+    //查询某活动已关联的项目
+    public List<ProjectQualification> hasConnected(Long activityId){
+        return projectQualificationDao.hasConnected(activityId);
+    }
+
+    //查询所有还未被关联活动的项目
+    public List<Project> notConnectList(){
+        return projectQualificationDao.notConnectList();
+    }
+
+
+    //删除该活动所有关联的有资格参与该活动的所有项目
+    @Transactional
+    public void deletByActivityId(Long activityId){
+        projectQualificationDao.deletByActivityId(activityId);
+    }
+
+
+
+}

+ 22 - 0
donate-console/src/main/java/com/uas/console/donate/Impl/ProjectRecodeServiceImpl.java

@@ -0,0 +1,22 @@
+package com.uas.console.donate.Impl;
+
+import com.uas.console.donate.dao.ProjectRecodeDao;
+import com.uas.console.donate.model.ProjectRecode;
+import com.uas.console.donate.service.ProjectRecodeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class ProjectRecodeServiceImpl implements ProjectRecodeService {
+
+    @Autowired
+    private ProjectRecodeDao projectRecodeDao;
+
+    //展示某项目的所有捐款明细
+    public List<ProjectRecode> findProjectDetail(Long proId){
+
+        return projectRecodeDao.findProjectDetail(proId);
+    }
+}

+ 0 - 19
donate-console/src/main/java/com/uas/console/donate/Impl/ProjectReportServiceImpl.java

@@ -1,19 +0,0 @@
-package com.uas.console.donate.Impl;
-
-
-import com.uas.console.donate.dao.ProjectReportDao;
-import com.uas.console.donate.model.ProjectReport;
-import com.uas.console.donate.service.ProjectReportService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-@Service
-public class ProjectReportServiceImpl implements ProjectReportService{
-
-    @Autowired
-    ProjectReportDao projectReportDao;
-
-    public ProjectReport save(ProjectReport projectReport){
-        return projectReportDao.save(projectReport);
-    }
-}

+ 84 - 0
donate-console/src/main/java/com/uas/console/donate/Impl/ProjectServiceImpl.java

@@ -1,7 +1,9 @@
 package com.uas.console.donate.Impl;
 
 
+import com.uas.console.donate.dao.OrgDao;
 import com.uas.console.donate.dao.ProjectDao;
+import com.uas.console.donate.model.Org;
 import com.uas.console.donate.model.Project;
 import com.uas.console.donate.service.ProjectService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -9,23 +11,85 @@ import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Service;
 
+import java.util.Date;
+import java.util.List;
+
 @Service
 public class ProjectServiceImpl implements ProjectService {
 
     @Autowired
     private ProjectDao projectDao;
 
+    @Autowired
+    private OrgDao orgDao;
+
+    //项目发起,有草稿则取出草稿
+    public Project show(){
+        if(projectDao.getDraft()==null){
+            return null;
+        }else{
+            return projectDao.getDraft();
+        }
+    }
+
+    //保存项目草稿
+    public Project save(Project project){
+        if(project.getOrgId()!=null){
+            Org org= orgDao.findOne(project.getOrgId());
+            //得到机构名
+            String orgName=org.getName();
+            project.setOrgName(orgName);
+        }
+        if(project.getPublish()==null||project.getPublish()==1){
+            project.setPublish(1);
+        }
+        return projectDao.save(project);
+    }
+
+    //提交项目
+    public Project submit(Project project) {
+
+        if(project.getOrgId()!=null){
+            Org org= orgDao.findOne(project.getOrgId());
+            //得到机构名
+            String orgName=org.getName();
+            project.setOrgName(orgName);
+        }
+
+        //正式发布
+        project.setPublish(2);
+        //设置未审核状态
+        project.setStatus(0);
+
+        return projectDao.save(project);
+    }
+
+    //取出某项目的机构信息
+    public Org findOrgInfo(Long id){
+        return projectDao.findOrgInfo(id);
+    }
+
+    //取出某项目的具体信息
+    public Project findOne(Long id){
+        return projectDao.findOne(id);
+    }
+
+
+    //查出所有项目
     public Page<Project> findAll(Pageable pageable){
 
         return projectDao.findAll(pageable);
     }
 
+
+    //批注项目
     public Project approve(Long id){
         Project project=projectDao.findOne(id);
         project.setStatus(1);
         return projectDao.save(project);
     }
 
+    //驳回项目
     public Project unapprove(Long id,String refuse){
         Project project=projectDao.findOne(id);
         project.setRefuse(refuse);
@@ -33,4 +97,24 @@ public class ProjectServiceImpl implements ProjectService {
         return projectDao.save(project);
     }
 
+    public List<Project> getProjects(){
+        return projectDao.getProjects();
+    }
+
+
+    //查询某领域以及某状态下的项目
+    public List<Project> queryProjects(Integer area,Integer status){
+        return projectDao.queryProjects(area,status);
+    }
+
+    //查询某状态下的所有项目
+    public List<Project> findByStatus(Integer status){
+        return projectDao.findByStatus(status);
+    }
+
+    //项目列表搜索框查询
+    public List<Project> search(String search){
+        return projectDao.search(search);
+    }
+
 }

+ 13 - 0
donate-console/src/main/java/com/uas/console/donate/WebSecurityConfig.java

@@ -0,0 +1,13 @@
+package com.uas.console.donate;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
+import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
+
+/*
+@Configuration
+@EnableWebSecurity
+public class WebSecurityConfig  extends WebSecurityConfigurerAdapter {
+
+}
+*/

+ 142 - 5
donate-console/src/main/java/com/uas/console/donate/controller/ActivityController.java

@@ -3,30 +3,87 @@ package com.uas.console.donate.controller;
 
 import com.alibaba.fastjson.JSONObject;
 import com.uas.console.donate.model.Activity;
+import com.uas.console.donate.model.ActivityRecode;
+import com.uas.console.donate.model.Award;
+import com.uas.console.donate.service.ActivityRecodeService;
 import com.uas.console.donate.service.ActivityService;
+import com.uas.console.donate.service.AwardService;
+import com.uas.dfs.service.FileClient;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageRequest;
+import org.springframework.data.domain.Pageable;
+import org.springframework.data.domain.Sort;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.List;
 
 
 @Controller
 @RequestMapping("/activity")
-public class ActivityController {
+public class
+ActivityController {
+
+    private static final SimpleDateFormat codesdf=new SimpleDateFormat("yyyymmddhhmmsssss");
 
     @Autowired
     private ActivityService activityService;
 
+    @Autowired
+    private AwardService awardService;
+
+    @Autowired
+    private ActivityRecodeService activityRecodeService;
+
+    @Autowired
+    private FileClient fileClient;
+
+    /**
+     * 发起活动,有草稿取出草稿,没有就新建活动表单
+     */
+    @ResponseBody
+    @RequestMapping("/show")
+    public Activity show(){
+        return activityService.show();
+    }
+
+
+
+    /**
+     * 上传文件
+     */
+    @ResponseBody
+    @RequestMapping(value = "/upload",method = RequestMethod.POST)
+    public String ueditorUpload(MultipartFile file) throws IOException {
+        //上传图片
+        String path=fileClient.upload(file.getBytes(),file.getSize(),"jpg",null);
+
+        return path;
+    }
+
+
     /**
      * 保存活动
      */
     @ResponseBody
     @RequestMapping("/save")
-    public Activity save(String jsonStr) {
+    public Activity save(String jsonStr) throws IOException {
+
         Activity activity = JSONObject.parseObject(jsonStr, Activity.class);
-        activity.setSubmitTime(new Date());
+
+        List<Award> award=activity.getAwards();
+
         return activityService.save(activity);
     }
 
@@ -35,8 +92,15 @@ public class ActivityController {
      */
     @ResponseBody
     @RequestMapping("/submit")
-    public Activity submit(Long id){
-        return activityService.submit(id);
+    public Activity submit(String jsonStr){
+        Activity activity = JSONObject.parseObject(jsonStr, Activity.class);
+        Date date=new Date();
+        //设置活动发布时间
+        activity.setSubmitTime(date);
+        //设置活动编号
+        activity.setCode(codesdf.format(date));
+
+        return activityService.submit(activity);
     }
 
 
@@ -48,4 +112,77 @@ public class ActivityController {
     public Activity up(Long id){
         return activityService.up(id);
     }
+
+
+    /**
+     *展示还没开始的活动
+     */
+    @ResponseBody
+    @RequestMapping("/getNotStart")
+    public Page<Activity> findNotStart(@RequestParam(value = "page",defaultValue = "0")Integer page,
+                                            @RequestParam(value = "size",defaultValue = "10")Integer size){
+        Pageable pageable=pageSort(page,size);
+        return activityService.findNotStart(pageable);
+    }
+
+    /**
+     * 展示所有正在进行的活动
+     */
+    @ResponseBody
+    @RequestMapping("/getInprocess")
+    public Page<Activity> findInProcess(@RequestParam(value = "page",defaultValue = "0")Integer page,
+                                            @RequestParam(value = "size",defaultValue = "10")Integer size){
+        Pageable pageable=pageSort(page,size);
+        return activityService.findInprocess(pageable);
+    }
+
+    /**
+     * 展示所有已结束的活动
+     */
+    @ResponseBody
+    @RequestMapping("/getEnd")
+    public Page<Activity> findEndActivities(@RequestParam(value = "page",defaultValue = "0")Integer page,
+                                    @RequestParam(value = "size",defaultValue = "10")Integer size){
+        Pageable pageable=pageSort(page,size);
+        return activityService.findEndActivities(pageable);
+    }
+
+
+
+    /*优先级倒序,时间倒序排序的方式*/
+    private Pageable pageSort(Integer page, Integer size){
+        Sort.Order prioritySort=new Sort.Order(Sort.Direction.DESC,"priority");
+        Sort.Order timeSort=new Sort.Order(Sort.Direction.DESC,"submitTime");
+        List<Sort.Order> list=new ArrayList<Sort.Order>();
+        list.add(prioritySort);
+        list.add(timeSort);
+        Sort sort = new Sort(list);
+        Pageable pageable=new PageRequest(page,size,sort);
+        return pageable;
+    }
+
+    /**
+     * 展示某具体活动
+     */
+    @ResponseBody
+    @RequestMapping("/detail")
+    public List<Object> findById(Long id){
+        //查询活动信息
+        Activity activity=activityService.findOne(id);
+        //查询活动奖品信息
+        List<Award> awardList=awardService.findByActivityId(id);
+        //查询活动获奖者信息
+        List<ActivityRecode> activityRecodeList=activityRecodeService.whoGetAward(id);
+
+        List<Object> list=new ArrayList<Object>();
+
+        list.add(activity);
+
+        list.add(awardList);
+
+        list.add(activityRecodeList);
+
+        return list;
+    }
+
 }

+ 31 - 4
donate-console/src/main/java/com/uas/console/donate/controller/ActivityRecodeController.java

@@ -1,9 +1,11 @@
 package com.uas.console.donate.controller;
 
 import com.alibaba.fastjson.JSONObject;
+import com.uas.console.donate.model.Activity;
 import com.uas.console.donate.model.ActivityRecode;
 import com.uas.console.donate.model.Award;
 import com.uas.console.donate.service.ActivityRecodeService;
+import com.uas.console.donate.service.ActivityService;
 import com.uas.console.donate.service.AwardService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -24,6 +26,9 @@ public class ActivityRecodeController {
     @Autowired
     private AwardService awardService;
 
+    @Autowired
+    private ActivityService activityService;
+
     /**
      * 保存活动参与人信息
      */
@@ -45,8 +50,19 @@ public class ActivityRecodeController {
     }
 
     /**
-     * 查询某一活动参与者
-     *
+     * 查询某一活动获奖者信息
+     * @param activityId
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping("/whoget")
+    public List<ActivityRecode> whoGetAward(Long activityId) {
+
+        return activityRecodeService.whoGetAward(activityId);
+    }
+
+    /**
+     * 查询某一活动参与人信息
      * @param activityId
      * @return
      */
@@ -78,9 +94,9 @@ public class ActivityRecodeController {
             int amount = award.getAmount();
             //参与活动人数
             int size = activityRecodeList.size();
-
+            //中奖数量
             int list = (amount <= size) ? amount : size;
-
+            //设置随机抽奖
             for (int i = 1; i <= list; i++) {
                 int random = (int) (Math.random() * size);
                 while (set.contains(random)) {
@@ -89,12 +105,23 @@ public class ActivityRecodeController {
                 ActivityRecode activityRecode = activityRecodeList.get(random);
 
                 activityRecode.setAwardId(award.getId());
+                activityRecode.setIsGetAward(1);
                 activityRecode.setReceiveTime(new Date());
                 activityRecode.setStatus(0);
+
                 activityRecodeService.save(activityRecode);
                 set.add(random);
             }
+            //在活动表里面保存中奖数
+            Activity activity=activityService.findOne(activityId);
+            activity.setReceivePerson(list);
+
+            //计算出这个活动的中奖率,中奖数除以总人数
+            Double chance=(list*100.00)/size;
+
+            activityService.save(activity);
         }
         return activityRecodeList;
     }
+
 }

+ 11 - 0
donate-console/src/main/java/com/uas/console/donate/controller/AwardController.java

@@ -7,6 +7,8 @@ import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
 
+import java.util.List;
+
 @Controller
 @RequestMapping("/award")
 public class AwardController {
@@ -22,5 +24,14 @@ public class AwardController {
         return  awardService.save(award);
     }
 
+    /**
+     * 展示某一活动的所有奖品
+     */
+    @ResponseBody
+    @RequestMapping("/awards")
+    public List<Award> awardList(Long activityId){
+
+        return awardService.findByActivityId(activityId);
+    }
 
 }

+ 31 - 0
donate-console/src/main/java/com/uas/console/donate/controller/BaseController.java

@@ -0,0 +1,31 @@
+package com.uas.console.donate.controller;
+
+import com.uas.dfs.service.FileClient;
+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.RequestMethod;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.IOException;
+
+@Controller("/base")
+public class BaseController {
+
+    @Autowired
+    private FileClient fileClient;
+
+    /**
+     * 上传图片
+     */
+    @ResponseBody
+    @RequestMapping(value = "/upload",method = RequestMethod.POST)
+    public String ueditorUpload(MultipartFile file) throws IOException {
+        //上传图片
+        String path=fileClient.upload(file.getBytes(),file.getSize(),"jpg",null);
+
+        return path;
+
+    }
+}

+ 18 - 1
donate-console/src/main/java/com/uas/console/donate/controller/OrgController.java

@@ -1,6 +1,7 @@
 package com.uas.console.donate.controller;
 
 import com.alibaba.fastjson.JSONObject;
+import com.uas.console.donate.dao.OrgDao;
 import com.uas.console.donate.model.Org;
 import com.uas.console.donate.service.OrgService;
 import com.uas.dfs.service.FileClient;
@@ -14,11 +15,16 @@ import org.springframework.web.multipart.MultipartFile;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.List;
 
 @Controller
 @RequestMapping("/org")
 public class OrgController {
+
+    private static final SimpleDateFormat codesdf=new SimpleDateFormat("yyyymmddhhmmsssss");
+
     @Autowired
     private OrgService orgService;
 
@@ -78,7 +84,6 @@ public class OrgController {
             String file7=fileClient.upload(certify.getBytes(),certify.getSize(),"jpg",null);
             org.setCertify(file7);
         }
-
         return orgService.save(org);
     }
 
@@ -124,6 +129,11 @@ public class OrgController {
             String file7=fileClient.upload(certify.getBytes(),certify.getSize(),"jpg",null);
             org.setCertify(file7);
         }
+        Date date=new Date();
+        //设置机构提交时间
+        org.setSubmitTime(date);
+        //设置机构编号
+        org.setCode(codesdf.format(date));
         return orgService.sumbit(org);
     }
 
@@ -173,4 +183,11 @@ public class OrgController {
          }
      }
 
+
+    //根据搜索框查询机构信息
+    @ResponseBody
+    @RequestMapping("/search")
+    public List<Org> search(String search){
+         return orgService.search(search);
+    }
 }

+ 45 - 0
donate-console/src/main/java/com/uas/console/donate/controller/ProjectConcludeController.java

@@ -1,11 +1,56 @@
 package com.uas.console.donate.controller;
 
+import com.alibaba.fastjson.JSONObject;
+import com.uas.console.donate.model.ProjectConclude;
+import com.uas.console.donate.service.ProjectConcludeService;
+import com.uas.console.donate.util.StringUtils;
+import com.uas.dfs.service.FileClient;
+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.RequestMethod;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
 
 @Controller
 @RequestMapping("/projectconclude")
 public class ProjectConcludeController {
 
+    @Autowired
+    private ProjectConcludeService projectConcludeService;
+
+    @Autowired
+    private FileClient fileClient;
+
+    /**
+     * 提交项目结项
+     * @param jsonStr
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping(value = "/save", method = RequestMethod.POST)
+    public ProjectConclude save(String jsonStr) throws IOException{
+
+        ProjectConclude projectConclude= JSONObject.parseObject(jsonStr,ProjectConclude.class);
+
+        return projectConcludeService.save(projectConclude);
+    }
+
+    /**
+     * 上传图片
+     */
+    @ResponseBody
+    @RequestMapping(value = "/upload",method = RequestMethod.POST)
+    public String ueditorUpload(MultipartFile file) throws IOException {
+        //上传图片
+        String path=fileClient.upload(file.getBytes(),file.getSize(),"jpg",null);
+
+        return path;
 
+    }
 }

+ 168 - 30
donate-console/src/main/java/com/uas/console/donate/controller/ProjectController.java

@@ -1,55 +1,48 @@
 package com.uas.console.donate.controller;
 
+import com.alibaba.fastjson.JSONObject;
+import com.uas.console.donate.model.Org;
 import com.uas.console.donate.model.Project;
+import com.uas.console.donate.model.ProjectRecode;
+import com.uas.console.donate.service.ProjectRecodeService;
 import com.uas.console.donate.service.ProjectService;
+import com.uas.dfs.service.FileClient;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.PageRequest;
-import org.springframework.data.domain.Pageable;
-import org.springframework.data.domain.Sort;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.sql.DataSource;
+import java.io.IOException;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 @Controller
 @RequestMapping("/project")
 public class ProjectController {
 
+    private static final SimpleDateFormat codesdf=new SimpleDateFormat("yyyymmddhhmmsssss");
+
     @Autowired
     private ProjectService projectService ;
 
-    /**
-     * 获取所有捐款项目
-     * @param page
-     * @param size
-     * @return
-     */
-    @RequestMapping("/getProjects")
-    @ResponseBody
-    public Page<Project> findAll(@RequestParam(value = "page",defaultValue = "0")Integer page,
-                                 @RequestParam(value = "size",defaultValue = "5")Integer size){
-        Pageable pageable=pageSort(page,size);
-        return projectService.findAll(pageable);
-    }
+    @Autowired
+    private ProjectRecodeService projectRecodeService;
+
+    @Autowired
+    private FileClient fileClient;
 
-    /*审核状态正序,时间倒序排序的方式*/
-    private Pageable pageSort(Integer page,Integer size){
-        Sort.Order statusSort=new Sort.Order(Sort.Direction.ASC,"status");
-        Sort.Order timeSort=new Sort.Order(Sort.Direction.DESC,"submitTime");
-        List<Sort.Order> list=new ArrayList<Sort.Order>();
-        list.add(statusSort);
-        list.add(timeSort);
-        Sort sort = new Sort(list);
-        Pageable pageable=new PageRequest(page,size,sort);
-        return pageable;
-    }
 
     /**
-     * 审核所有捐款项目
+     * 审核通过项目
      */
     @RequestMapping("/approve")
     @ResponseBody
@@ -58,7 +51,7 @@ public class ProjectController {
     }
 
     /**
-     * 驳回所有捐款项目
+     * 审核驳回项目
      */
     @RequestMapping("/unapprove")
     @ResponseBody
@@ -66,5 +59,150 @@ public class ProjectController {
         return projectService.unapprove(id,refuse);
     }
 
+    /**
+     * 获取所有未被活动关联到的项目
+     */
+    @RequestMapping("/getProjectQualification")
+    @ResponseBody
+    public List<Project> getProjectQualification(){
+        return projectService.getProjects();
+    }
+
+    /**
+     * 展示特定项目信息
+     * area=0,展示全部分类
+     * 默认展示已审核的项目信息
+     */
+    @ResponseBody
+    @RequestMapping("/showProjects")
+    public List<Project> showProjects(@RequestParam(defaultValue ="0") Integer area,@RequestParam(defaultValue="1")Integer status) {
+        if(area==0){
+            return projectService.findByStatus(status);
+        }else{
+            return projectService.queryProjects(area,status);
+        }
+    }
+
+    /**
+     * 判断项目中有没有草稿,有,展示到项目填写表单,没有,就新建表单
+     */
+    @ResponseBody
+    @RequestMapping("/show")
+    public Project show(){
+        return projectService.show();
+    }
+
+    /**
+     * 保存项目草稿
+     */
+    @ResponseBody
+    @RequestMapping("/save")
+    public Project save(@RequestParam(required = false) MultipartFile logo,
+                        @RequestParam(required = false) MultipartFile pcImg,
+                        @RequestParam(required = false) MultipartFile mobileImg,
+                        @RequestParam(required = false) MultipartFile listImg,
+                        String jsonStr, HttpServletRequest request, HttpServletResponse response) throws IOException{
+
+        Project project=JSONObject.parseObject(jsonStr,Project.class);
+        if(logo!=null){
+            String file1=fileClient.upload(logo.getBytes(),logo.getSize(),"jpg",null);
+            project.setLogo(file1);
+        }
+        if(pcImg!=null){
+            String file2=fileClient.upload(pcImg.getBytes(),pcImg.getSize(),"jpg",null);
+            project.setPcImg(file2);
+        }
+        if(mobileImg!=null){
+            String file3=fileClient.upload(mobileImg.getBytes(),mobileImg.getSize(),"jpg",null);
+            project.setMobileImg(file3);
+        }
+        if(listImg!=null){
+            String file4=fileClient.upload(listImg.getBytes(),listImg.getSize(),"jpg",null);
+            project.setListImg(file4);
+        }
+        return projectService.save(project);
+    }
+
+    /**
+     * 上传图片
+     */
+    @ResponseBody
+    @RequestMapping(value = "/upload",method = RequestMethod.POST)
+    public String ueditorUpload(MultipartFile file) throws IOException {
+        //上传图片
+        String path=fileClient.upload(file.getBytes(),file.getSize(),"jpg",null);
+
+        return path;
+
+    }
+
+    /**
+     * 正式提交项目
+     */
+    @ResponseBody
+    @RequestMapping("/submit")
+    public Project submit(@RequestParam(required = false) MultipartFile logo,
+                          @RequestParam(required = false) MultipartFile pcImg,
+                          @RequestParam(required = false) MultipartFile mobileImg,
+                          @RequestParam(required = false) MultipartFile listImg,
+                          String jsonStr, HttpServletRequest request, HttpServletResponse response)throws IOException{
+        Project project = JSONObject.parseObject(jsonStr, Project.class);
+        if(logo!=null){
+            String file1=fileClient.upload(logo.getBytes(),logo.getSize(),"jpg",null);
+            project.setLogo(file1);
+        }
+        if(pcImg!=null){
+            String file2=fileClient.upload(pcImg.getBytes(),pcImg.getSize(),"jpg",null);
+            project.setPcImg(file2);
+        }
+        if(mobileImg!=null){
+            String file3=fileClient.upload(mobileImg.getBytes(),mobileImg.getSize(),"jpg",null);
+            project.setMobileImg(file3);
+        }
+        if(listImg!=null){
+            String file4=fileClient.upload(listImg.getBytes(),listImg.getSize(),"jpg",null);
+            project.setListImg(file4);
+        }
+        Date date=new Date();
+        //设置项目提交时间
+        project.setSubmitTime(date);
+        //设置项目编号
+        project.setCode(codesdf.format(date));
+
+        return projectService.submit(project);
+    }
+
+    /**
+     * 取出某项目的,以及该项目对应机构的具体信息
+     * @param id
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping("/detail")
+    public List<Object> detail(Long id){
+        Org org=projectService.findOrgInfo(id);
+        Project project=projectService.findOne(id);
+        //项目进度
+
+        //捐款信息
+        List<ProjectRecode> projectRecodeList=projectRecodeService.findProjectDetail(id);
+        //财务披露
 
+        List<Object> list=new ArrayList<>();
+        list.add(org);
+        list.add(project);
+        list.add(projectRecodeList);
+        return list;
+    }
+
+    /**
+     *项目列表搜索框查询
+     * @param search
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping("/search")
+    public List<Project> search(String search){
+        return projectService.search(search);
+    }
 }

+ 34 - 3
donate-console/src/main/java/com/uas/console/donate/controller/ProjectEvolveController.java

@@ -1,24 +1,55 @@
 package com.uas.console.donate.controller;
 
 
+import com.alibaba.fastjson.JSONObject;
 import com.uas.console.donate.model.ProjectEvolve;
 import com.uas.console.donate.service.ProjectEvolveService;
+import com.uas.dfs.service.FileClient;
 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.RequestMethod;
 import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.IOException;
+import java.util.Date;
 
 @Controller
 @RequestMapping("/projectEvolve")
 public class ProjectEvolveController {
+
     @Autowired
     private ProjectEvolveService projectEvolveService;
 
+    @Autowired
+    private FileClient fileClient;
+
+    /**
+     * 提交进度结项
+     * @param jsonStr
+     * @return
+     */
     @ResponseBody
     @RequestMapping("/save")
-    public ProjectEvolve save(ProjectEvolve projectEvolve){
-        //状态.1:保存2:提交
-        projectEvolve.setStatus(1);
+    public ProjectEvolve save(String jsonStr){
+
+        ProjectEvolve projectEvolve= JSONObject.parseObject(jsonStr,ProjectEvolve.class);
+
         return projectEvolveService.save(projectEvolve);
     }
+
+    /**
+     * 上传图片
+     */
+    @ResponseBody
+    @RequestMapping(value = "/upload",method = RequestMethod.POST)
+    public String ueditorUpload(MultipartFile file) throws IOException {
+        //上传图片
+        String path=fileClient.upload(file.getBytes(),file.getSize(),"jpg",null);
+
+        return path;
+
+    }
+
 }

+ 49 - 7
donate-console/src/main/java/com/uas/console/donate/controller/ProjectFinanceController.java

@@ -1,25 +1,67 @@
 package com.uas.console.donate.controller;
 
-import com.uas.console.donate.model.FileUpload;
+import com.alibaba.fastjson.JSONObject;
 import com.uas.console.donate.model.ProjectFinance;
+import com.uas.console.donate.service.FileService;
 import com.uas.console.donate.service.ProjectFinanceService;
+import com.uas.console.donate.util.StringUtils;
+import com.uas.dfs.service.FileClient;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.ComponentScan;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.multipart.MultipartRequest;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 @Controller
 @RequestMapping("/projectFinance")
 public class ProjectFinanceController {
+
     @Autowired
     private ProjectFinanceService projectFinanceService;
 
-   /* @ResponseBody
+    @Autowired
+    private FileService fileService;
+
+    @Autowired
+    private FileClient fileClient;
+
+    @ResponseBody
     @RequestMapping("/save")
-    public ProjectFinance save(ProjectFinance projectFinance, FileUpload fileItem){
-        //状态.1:保存2:提交
-        projectFinance.setStatus(1);
-        return projectFinanceService.save(projectFinance, fileItem);
+    public ProjectFinance save(MultipartFile url,String jsonStr, HttpServletRequest request, HttpServletResponse response)throws IOException{
+        ProjectFinance projectFinance= JSONObject.parseObject(jsonStr,ProjectFinance.class);
+        String path = fileClient.upload(url.getBytes(), url.getSize(), "jpg", null);
+        projectFinance.setPath(path);
+        return projectFinanceService.save(projectFinance);
+    }
+
+   /* @ResponseBody
+    @RequestMapping("/test")
+    public ProjectFinance test(String name, String age, MultipartFile path, HttpServletRequest request, HttpServletResponse response) throws IOException {
+        System.out.println(path==null);
+        String url = fileClient.upload(path.getBytes(), path.getSize(), "jpg", null);
+        return null;
     }*/
+
+    /**
+     * 展示某项目的所有财务信息
+     * @param proId
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping("/showFinance")
+    public List<ProjectFinance> show(Long proId){
+        return projectFinanceService.findByProId(proId);
+    }
+
+
 }

+ 44 - 0
donate-console/src/main/java/com/uas/console/donate/controller/ProjectQualificationController.java

@@ -0,0 +1,44 @@
+package com.uas.console.donate.controller;
+
+import com.uas.console.donate.model.Project;
+import com.uas.console.donate.model.ProjectQualification;
+import com.uas.console.donate.service.ProjectQualificationService;
+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.ResponseBody;
+
+import java.util.List;
+
+@Controller
+@RequestMapping("/projectqualification")
+public class ProjectQualificationController {
+
+    @Autowired
+    private ProjectQualificationService projectQualificationService;
+
+    /**
+     * 查询某活动已关联的项目
+     */
+    public List<ProjectQualification> hasConnected(Long activityId){
+        return projectQualificationService.hasConnected(activityId);
+    }
+
+    /**
+     *  查询所有还未被关联活动的项目
+     */
+    @ResponseBody
+    @RequestMapping("/notConnect")
+    public List<Project> notConnectList(){
+
+        return projectQualificationService.notConnectList();
+    }
+    /**
+     * 删除该活动所有关联的有资格参与该活动的所有项目
+     */
+     public void  deletByActivityId(Long activityId){
+         projectQualificationService.deletByActivityId(activityId);
+     }
+
+
+}

+ 10 - 0
donate-console/src/main/java/com/uas/console/donate/controller/ProjectRecodeController.java

@@ -0,0 +1,10 @@
+package com.uas.console.donate.controller;
+
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+
+@Controller
+@RequestMapping("/projectrecode")
+public class ProjectRecodeController {
+
+}

+ 0 - 31
donate-console/src/main/java/com/uas/console/donate/controller/ProjectReportController.java

@@ -1,31 +0,0 @@
-package com.uas.console.donate.controller;
-
-import com.uas.console.donate.model.ProjectReport;
-import com.uas.console.donate.service.ProjectReportService;
-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.ResponseBody;
-
-@Controller
-@RequestMapping("/projectReport")
-public class ProjectReportController {
-
-    @Autowired
-    private ProjectReportService projectReportService;
-
-    @ResponseBody
-    @RequestMapping("/save")
-    public ProjectReport save(ProjectReport projectReport){
-        //状态.1:保存2:提交
-        projectReport.setStatus(1);
-        return projectReportService.save(projectReport);
-    }
-
-    @ResponseBody
-    @RequestMapping("/submit")
-    public ProjectReport submit(ProjectReport projectReport){
-        projectReport.setStatus(2);
-        return projectReportService.save(projectReport);
-    }
-}

+ 24 - 0
donate-console/src/main/java/com/uas/console/donate/controller/SmsController.java

@@ -0,0 +1,24 @@
+package com.uas.console.donate.controller;
+
+import com.alibaba.fastjson.JSONObject;
+import com.uas.console.donate.model.SmsMessage;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+@Controller
+public class SmsController {
+
+
+
+    /**
+     * 发送给个人
+     * @param jsonStr
+     */
+    @ResponseBody
+    @RequestMapping("/")
+    public void sendMessage(String jsonStr){
+        SmsMessage smsMessage= JSONObject.parseObject(jsonStr,SmsMessage.class);
+
+    }
+}

+ 23 - 3
donate-console/src/main/java/com/uas/console/donate/dao/ActivityDao.java

@@ -1,6 +1,8 @@
 package com.uas.console.donate.dao;
 
 import com.uas.console.donate.model.Activity;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.data.jpa.repository.Query;
@@ -8,9 +10,27 @@ import org.springframework.stereotype.Repository;
 
 @Repository
 public interface ActivityDao extends JpaRepository<Activity,Long>,JpaSpecificationExecutor<Activity> {
-
-    Activity findOne(Long id);
-
+    /**
+     * 找出当前活动中的最大优先级
+     * @return
+     */
     @Query("select max(priority) from Activity ")
     Integer findMAxPrioruty();
+
+    //取出还未发布的活动
+    @Query("from Activity a where a.publish=1")
+    Activity findDraft();
+
+    //搜索出所有还未开始的活动,活动开始时间小于当前时间
+    @Query("from Activity a where NOW()<a.startTime and a.publish=2")
+    Page<Activity> findNotStart(Pageable pageable);
+
+    //搜索出所有正在进行的活动,当前时间大于等于活动开始时间,并且小于等于活动结束时间
+    @Query("from Activity a where NOW() between a.startTime and a.endTime  and a.publish=2")
+    Page<Activity> findInprocess(Pageable pageable);
+
+    //搜索出所有已结束的活动,当前时间大于活动结束时间
+    @Query("from Activity a where NOW()>a.endTime and a.publish=2")
+    Page<Activity> findEndActivities(Pageable pageable);
+
 }

+ 19 - 1
donate-console/src/main/java/com/uas/console/donate/dao/ActivityRecodeDao.java

@@ -3,6 +3,7 @@ package com.uas.console.donate.dao;
 import com.uas.console.donate.model.ActivityRecode;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
 
@@ -11,8 +12,25 @@ import java.util.List;
 @Repository
 public interface ActivityRecodeDao extends JpaRepository<ActivityRecode,Long>,JpaSpecificationExecutor<ActivityRecode> {
 
-    List<ActivityRecode> findByActivityId(@Param(value = "activityId")Long activityId);
+    //查询某一活动的参与人
+    @Query("from ActivityRecode where  activityId=:activityId")
+    List<ActivityRecode> joins(@Param(value = "activityId")Long activityId);
 
+    //查询某一活动的中奖者信息
+    @Query("from ActivityRecode where isGetAward=1 and activityId=:activityId")
+    List<ActivityRecode> findWhoGetAward(@Param(value = "activityId")Long activityId);
+
+    //查找某人参加的所有活动
     List<ActivityRecode> findByUuid(@Param(value = "uuid")Long uuid);
 
+    //查询某活动的中奖总人数
+    @Query("select count(*) from ActivityRecode where isGetAward=1 and activityId=:activityId")
+    Long sumLuckyPerson(@Param(value = "activityId")Long activityId);
+
+    //查询某活动的领奖总人数,status=2表示已领奖
+    @Query("select count(*) from ActivityRecode where activityId=:activityId and status=2")
+    Long sumReceivePerson (@Param(value = "activityId")Long activityId);
+
+
+
 }

+ 2 - 0
donate-console/src/main/java/com/uas/console/donate/dao/AwardDao.java

@@ -12,6 +12,8 @@ import java.util.List;
 @Repository
 public interface AwardDao extends JpaRepository<Award,Long>,JpaSpecificationExecutor<Award>{
 
+    //获取某活动的所有奖品
     @Query("from Award where activityId=:activityId")
     List<Award> findByActivityId(@Param(value="activityId") Long activityId);
+
 }

+ 4 - 0
donate-console/src/main/java/com/uas/console/donate/dao/OrgDao.java

@@ -38,4 +38,8 @@ public interface OrgDao extends JpaRepository<Org,Long>,JpaSpecificationExecutor
 
     Page<Org> findAll(Pageable pageable);
 
+    //根据搜索框查询机构信息
+    @Query("from Org o  where  o.name like %:search%")
+    List<Org> search(@Param("search") String search);
+
 }

+ 47 - 2
donate-console/src/main/java/com/uas/console/donate/dao/ProjectDao.java

@@ -1,18 +1,63 @@
 package com.uas.console.donate.dao;
 
 
+import com.uas.console.donate.model.Org;
 import com.uas.console.donate.model.Project;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.repository.PagingAndSortingRepository;
+import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 @Repository
 public interface ProjectDao extends JpaRepository<Project,Long>,JpaSpecificationExecutor<Project>,PagingAndSortingRepository<Project, Long> {
 
-  //  Project findOne(Long id);
-
     Page<Project> findAll(Pageable pageable);
+
+    /**
+     * 获取所有未被活动关联的项目
+     */
+    @Query("from Project as p where p.id not in (select pq.proId from  ProjectQualification as pq) ")
+    List<Project> getProjects();
+
+    /**
+     * 查询某领域以及某状态下的非草稿项目
+     * @param area:捐助领域
+     * @param status:状态
+     * @return
+     */
+    @Query("from Project p where status=:status and area=:area and publish=2 ")
+    List<Project> queryProjects(@Param("area")Integer area,@Param("status")Integer status);
+
+    /**
+     * 查询某状态下的所有非草稿项目
+     * @param status
+     * @return
+     */
+    @Query("from Project p where status=:status and publish=2 ")
+    List<Project> findByStatus(@Param("status")Integer status);
+
+    /**
+     * 取出草稿状态的项目
+     */
+    @Query("from Project p where publish=1")
+    Project getDraft();
+
+    /**
+     * 取出某项目的机构信息
+     */
+    @Query("select o from Project p ,Org o where p.id=:id and p.orgId=o.id ")
+    Org findOrgInfo(@Param("id")Long id);
+
+    /**
+     * 项目列表搜索框查询
+     */
+    @Query("from Project p where p.name like %:search% or p.orgName like %:search%")
+    List<Project> search(@Param("search")String search);
+
 }

+ 4 - 0
donate-console/src/main/java/com/uas/console/donate/dao/ProjectEvolveDao.java

@@ -4,5 +4,9 @@ import com.uas.console.donate.model.ProjectEvolve;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 
+import java.util.List;
+
 public interface ProjectEvolveDao extends JpaRepository<ProjectEvolve,Long>,JpaSpecificationExecutor<ProjectEvolve> {
+    //展示所有的机构
+    List<ProjectEvolve> findAll();
 }

+ 6 - 0
donate-console/src/main/java/com/uas/console/donate/dao/ProjectFinanceDao.java

@@ -3,9 +3,15 @@ package com.uas.console.donate.dao;
 import com.uas.console.donate.model.ProjectFinance;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 @Repository
 public interface ProjectFinanceDao extends JpaRepository<ProjectFinance,Long>,JpaSpecificationExecutor<ProjectFinance> {
 
+    @Query("from ProjectFinance where proId=:proId")
+    List<ProjectFinance> findByProId(@Param("proId")Long proId);
 }

+ 35 - 0
donate-console/src/main/java/com/uas/console/donate/dao/ProjectQualificationDao.java

@@ -0,0 +1,35 @@
+package com.uas.console.donate.dao;
+
+import com.uas.console.donate.model.Project;
+import com.uas.console.donate.model.ProjectQualification;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Modifying;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+import org.springframework.stereotype.Repository;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+
+@Repository
+@Transactional
+public interface ProjectQualificationDao extends JpaRepository<ProjectQualification,Long> {
+
+
+    //删除该活动所有关联的有资格参与该活动的所有项目
+    @Modifying
+    @Query("delete  from ProjectQualification  where activityId=:activityId")
+    void deletByActivityId(@Param("activityId")Long activityId);
+
+    //查询所有还未被关联活动的项目
+    @Query("from Project as p where p.id not in (select  pq.proId from ProjectQualification as pq)")
+    List<Project> notConnectList();
+
+    //查询某活动已关联的项目
+    @Query("from ProjectQualification")
+    List<ProjectQualification> hasConnected(@Param("activityId")Long activityId);
+
+
+
+
+}

+ 18 - 0
donate-console/src/main/java/com/uas/console/donate/dao/ProjectRecodeDao.java

@@ -0,0 +1,18 @@
+package com.uas.console.donate.dao;
+
+import com.uas.console.donate.model.ProjectRecode;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+@Repository
+public interface ProjectRecodeDao extends JpaRepository<ProjectRecode,Long>,JpaSpecificationExecutor<ProjectRecode>{
+
+    //查询某项目的捐款明细
+    @Query("from ProjectRecode where proId=:proId")
+    List<ProjectRecode> findProjectDetail(@Param("proId")Long proId);
+}

+ 0 - 11
donate-console/src/main/java/com/uas/console/donate/dao/ProjectReportDao.java

@@ -1,11 +0,0 @@
-package com.uas.console.donate.dao;
-
-import com.uas.console.donate.model.ProjectReport;
-import org.springframework.data.jpa.repository.JpaRepository;
-import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
-import org.springframework.stereotype.Repository;
-
-@Repository
-public interface ProjectReportDao extends JpaRepository<ProjectReport,Long>,JpaSpecificationExecutor<ProjectReport>{
-
-}

+ 161 - 43
donate-console/src/main/java/com/uas/console/donate/model/Activity.java

@@ -14,6 +14,7 @@ public class Activity implements Serializable{
     private static final long serialVersionUID = 1L;
     private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm");
 
+
     @Id
     @GeneratedValue(strategy= GenerationType.IDENTITY)
     @Column(name="act_id")
@@ -41,19 +42,31 @@ public class Activity implements Serializable{
      * 开始时间
      */
     @Column(name="act_start_time")
-    private String startTime;
+    private Date startTime;
 
     /**
      * 结束时间
      */
     @Column(name="act_end_time")
-    private  String endTime;
+    private  Date endTime;
 
     /**
      * 开奖日期
      */
     @Column(name="act_lucky_time")
-    private  String luckyTime;
+    private  Date luckyTime;
+
+    /**
+     * 兑奖开始时间
+     */
+    @Column(name="act_receive_start")
+    private Date receiveStartTime;
+
+    /**
+     * 兑奖结束时间
+     */
+    @Column(name="act_receive_end")
+    private Date receiveEndTime;
 
     /**
      * 活动提交人
@@ -70,10 +83,10 @@ public class Activity implements Serializable{
     private Date submitTime;
 
     /**
-     * stutus   1:已保存 2:已发布
+     * 是否发布,1:草稿  2:发布
      */
-    @Column(name="act_status")
-    private Integer status;
+    @Column(name="act_publish")
+    private Integer publish;
 
     /**
      * 活动优先级
@@ -81,6 +94,45 @@ public class Activity implements Serializable{
     @Column(name="act_priority")
     private Integer priority;
 
+    /**
+     * 活动中奖人数
+     * @return
+     */
+    @Column(name="act_lucky_person")
+    private Integer luckyPerson;
+
+    /**
+     * 活动领奖人数
+     */
+    @Column(name = "act_receive_person")
+    private Integer receivePerson;
+
+    /**
+     * 已筹集善款
+     * @return
+     */
+    @Column(name="act_amount")
+    private Long amount;
+    /**
+     * 相关项目数
+     */
+    @Column(name = "act_connect_project")
+    private Integer sumconnect;
+
+    /**
+     * 活动中奖概率
+     * @return
+     */
+    @Column(name = "act_chance")
+    private Double chance;
+
+    /**
+     * 活动缩略图
+     * @return
+     */
+    @Column(name = "act_img")
+    private String actImg;
+
     public Long getId() {
         return id;
     }
@@ -90,7 +142,8 @@ public class Activity implements Serializable{
     }
 
     public String getCode() {
-        return code;
+        Date date=new Date();
+        return date!=null?sdf.format(date):null;
     }
 
     public void setCode(String code) {
@@ -113,14 +166,51 @@ public class Activity implements Serializable{
         this.summary = summary;
     }
 
+    public String getStartTime() {
+        Date date=this.startTime;
+        return date!=null?sdf.format(this.startTime):null;
+    }
+
+    public void setStartTime(Date startTime) {
+        this.startTime = startTime;
+    }
+
+    public String getEndTime() {
+        Date date=this.endTime;
+        return date!=null?sdf.format(this.endTime):null;
+    }
+
+    public void setEndTime(Date endTime) {
+        this.endTime = endTime;
+    }
+
     public String getLuckyTime() {
-        return luckyTime;
+        Date date=this.luckyTime;
+        return date!=null?sdf.format(this.luckyTime):null;
     }
 
-    public void setLuckyTime(String luckyTime) {
+    public void setLuckyTime(Date luckyTime) {
         this.luckyTime = luckyTime;
     }
 
+    public String getReceiveStartTime() {
+        Date date=this.receiveStartTime;
+        return date!=null?sdf.format(this.receiveStartTime):null;
+    }
+
+    public void setReceiveStartTime(Date receiveStartTime) {
+        this.receiveStartTime = receiveStartTime;
+    }
+
+    public String getReceiveEndTime() {
+        Date date=this.receiveEndTime;
+        return date!=null?sdf.format(this.receiveEndTime):null;
+    }
+
+    public void setReceiveEndTime(Date receiveEndTime) {
+        this.receiveEndTime = receiveEndTime;
+    }
+
     public String getPerson() {
         return person;
     }
@@ -129,55 +219,79 @@ public class Activity implements Serializable{
         this.person = person;
     }
 
+    public String getSubmitTime() {
+        Date date=this.submitTime;
+        return date!=null?sdf.format(this.submitTime):null;
+    }
 
-    public String getStartTime() {
-        return startTime;
+    public void setSubmitTime(Date submitTime) {
+        this.submitTime = submitTime;
     }
 
-    public void setStartTime(String startTime) {
+    public Integer getPublish() {
+        return publish;
+    }
 
-        this.startTime = startTime;
+    public void setPublish(Integer publish) {
+        this.publish = publish;
     }
 
-    public String getEndTime() {
-       return endTime;
+    public Integer getPriority() {
+        return priority;
     }
 
-    public void setEndTime(String endTime) {
-        this.endTime = endTime;
+    public void setPriority(Integer priority) {
+        this.priority = priority;
     }
 
-    public String getSubmitTime() {
-        Date date = this.submitTime;
-        return date != null ? sdf.format(this.submitTime) : null;
+    public Integer getLuckyPerson() {
+        return luckyPerson;
     }
 
-    public void setSubmitTime(Date submitTime) {
-        this.submitTime = submitTime;
+    public void setLuckyPerson(Integer luckyPerson) {
+        this.luckyPerson = luckyPerson;
     }
 
-    public Integer getStatus() {
-        return status;
+    public Integer getReceivePerson() {
+        return receivePerson;
     }
 
-    public void setStatus(Integer status) {
-        this.status = status;
+    public void setReceivePerson(Integer receivePerson) {
+        this.receivePerson = receivePerson;
     }
 
-    @Override
-    public String toString() {
-        return "Activity{" +
-                "id=" + id +
-                ", code='" + code + '\'' +
-                ", name='" + name + '\'' +
-                ", summary='" + summary + '\'' +
-                ", startTime='" + startTime + '\'' +
-                ", endTime='" + endTime + '\'' +
-                ", luckyTime='" + luckyTime + '\'' +
-                ", person='" + person + '\'' +
-                ", submitTime=" + submitTime +
-                '}';
+    public Long getAmount() {
+        return amount;
     }
+
+    public void setAmount(Long amount) {
+        this.amount = amount;
+    }
+
+    public Integer getSumconnect() {
+        return sumconnect;
+    }
+
+    public void setSumconnect(Integer sumconnect) {
+        this.sumconnect = sumconnect;
+    }
+
+    public Double getChance() {
+        return chance;
+    }
+
+    public void setChance(Double chance) {
+        this.chance = chance;
+    }
+
+    public String getActImg() {
+        return actImg;
+    }
+
+    public void setActImg(String actImg) {
+        this.actImg = actImg;
+    }
+
     @Transient
     private  List<Award> awards;
 
@@ -189,11 +303,15 @@ public class Activity implements Serializable{
         this.awards = awards;
     }
 
-    public Integer getPriority() {
-        return priority;
+   @Transient
+    private List<ProjectQualification> projectQualificationList;
+
+    public List<ProjectQualification> getProjectQualificationList() {
+        return projectQualificationList;
     }
 
-    public void setPriority(Integer priority) {
-        this.priority = priority;
+    public void setProjectQualificationList(List<ProjectQualification> projectQualificationList) {
+        this.projectQualificationList = projectQualificationList;
     }
+
 }

+ 12 - 11
donate-console/src/main/java/com/uas/console/donate/model/ActivityRecode.java

@@ -23,13 +23,6 @@ public class ActivityRecode {
     @Column(name="ar_act_id")
     private Long activityId;
 
-    /**
-     * 活动
-     */
-    @OneToOne(cascade = { CascadeType.REFRESH, CascadeType.MERGE })
-    @JoinColumn(name = "ar_act_id", insertable = false, updatable = false)
-    private Activity activity;
-
     /**
      * 优软云账号
      */
@@ -55,6 +48,14 @@ public class ActivityRecode {
     @Column(name="ar_receive_time")
     private Date receiveTime;
 
+    /**
+     * 是否获奖,1代表已获奖
+     * @return
+     */
+    @Column(name = "ar_getaward")
+    private Integer isGetAward;
+
+
     public Long getId() {
         return id;
     }
@@ -103,11 +104,11 @@ public class ActivityRecode {
         this.receiveTime = receiveTime;
     }
 
-    public Activity getActivity() {
-        return activity;
+    public Integer getIsGetAward() {
+        return isGetAward;
     }
 
-    public void setActivity(Activity activity) {
-        this.activity = activity;
+    public void setIsGetAward(Integer isGetAward) {
+        this.isGetAward = isGetAward;
     }
 }

+ 21 - 24
donate-console/src/main/java/com/uas/console/donate/model/Award.java

@@ -1,10 +1,8 @@
 package com.uas.console.donate.model;
 
-import com.alibaba.fastjson.annotation.JSONField;
-import com.fasterxml.jackson.annotation.JsonIgnore;
-
 import javax.persistence.*;
 import java.io.Serializable;
+import java.util.Date;
 
 @Entity
 @Table(name="donate$award")
@@ -20,16 +18,9 @@ public class Award implements Serializable{
     /**
      * 活动编号
      */
-    @Column(name="act_id")
+    @Column(name="aw_act_id")
     private Long activityId;
 
-    /**
-     * 活动编号
-     */
-    @ManyToOne(cascade = {CascadeType.MERGE, CascadeType.REFRESH})
-    @JoinColumn(name = "act_id", nullable = false)
-    private Activity activity;
-
     /**
      * 奖品级别
      */
@@ -55,12 +46,19 @@ public class Award implements Serializable{
     @Column(name = "aw_amount")
     private Integer amount;
 
+
     /**
-     * 奖品数量
+     * 奖品领取方式
+     * 1:快递配送   2.短信通知
      * @return
      */
-    @Column(name = "aw_thumbnail")
-    private String thumbnail;
+    @Column(name = "aw_giveway")
+    private  Integer way;
+    /**
+     * 奖品照片
+     */
+    @Column(name="aw_img")
+    private  String img;
 
     public Long getId() {
         return id;
@@ -110,21 +108,20 @@ public class Award implements Serializable{
         this.amount = amount;
     }
 
-    public String getThumbnail() {
-        return thumbnail;
+
+    public Integer getWay() {
+        return way;
     }
 
-    public void setThumbnail(String thumbnail) {
-        this.thumbnail = thumbnail;
+    public void setWay(Integer way) {
+        this.way = way;
     }
 
-    @JsonIgnore
-    @JSONField(serialize = false)
-    public Activity getActivity() {
-        return activity;
+    public String getImg() {
+        return img;
     }
 
-    public void setActivity(Activity activity) {
-        this.activity = activity;
+    public void setImg(String img) {
+        this.img = img;
     }
 }

+ 10 - 5
donate-console/src/main/java/com/uas/console/donate/model/Org.java

@@ -3,6 +3,7 @@ package com.uas.console.donate.model;
 
 import javax.persistence.*;
 import java.io.Serializable;
+import java.text.SimpleDateFormat;
 import java.util.Date;
 
 @Entity
@@ -10,6 +11,9 @@ import java.util.Date;
 public class Org implements Serializable{
 
     private static final long serialVersionUID = 1L;
+    private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm");
+
+
 
     @Id
     @GeneratedValue(strategy= GenerationType.IDENTITY)
@@ -27,7 +31,7 @@ public class Org implements Serializable{
      *优软云账号
      */
     @Column(name="org_uuid")
-    private Long uuid;
+    private String uuid;
 
     /**
      * 提交人姓名
@@ -293,11 +297,11 @@ public class Org implements Serializable{
         this.code = code;
     }
 
-    public Long getUuid() {
+    public String getUuid() {
         return uuid;
     }
 
-    public void setUuid(Long uuid) {
+    public void setUuid(String uuid) {
         this.uuid = uuid;
     }
 
@@ -309,8 +313,9 @@ public class Org implements Serializable{
         this.person = person;
     }
 
-    public Date getSubmitTime() {
-        return submitTime;
+    public String getSubmitTime() {
+        Date date=this.submitTime;
+        return date!=null?sdf.format(this.submitTime):null;
     }
 
     public void setSubmitTime(Date submitTime) {

+ 51 - 6
donate-console/src/main/java/com/uas/console/donate/model/Project.java

@@ -1,5 +1,6 @@
 package com.uas.console.donate.model;
 
+
 import javax.persistence.*;
 import java.io.Serializable;
 import java.text.SimpleDateFormat;
@@ -12,7 +13,6 @@ public class Project implements Serializable{
     private static final long serialVersionUID = 1L;
     private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm");
 
-
     /**
      * 项目编号
      */
@@ -38,7 +38,7 @@ public class Project implements Serializable{
      * 捐助领域
      */
     @Column(name = "pro_area")
-    private String area;
+    private Integer area;
 
     /**
      * 项目所在省
@@ -140,6 +140,12 @@ public class Project implements Serializable{
     @Column(name = "pro_org_id")
     private Long orgId;
 
+    /**
+     * 所属机构名
+     */
+    @Column(name="pro_org_name")
+    private String orgName;
+
     /**
      * 开始时间
      */
@@ -159,11 +165,26 @@ public class Project implements Serializable{
     private Date submitTime;
 
     /**
-     * 驳回理由
+     * 驳回理由,true:正式发布,false:草稿状态
      */
-    @Column(name="org_refuse")
+    @Column(name="pro_refuse")
     private String refuse;
 
+    /**
+     * 是否是提交状态
+     * @return
+     */
+    @Column(name = "pro_publish")
+    private Integer publish;
+
+
+    /**
+     * 项目已筹款金额
+     * @return
+     */
+    @Column(name = "pro_total_amount")
+    private Double totalAmount;
+
     public Long getId() {
         return id;
     }
@@ -180,11 +201,11 @@ public class Project implements Serializable{
         this.name = name;
     }
 
-    public String getArea() {
+    public Integer getArea() {
         return area;
     }
 
-    public void setArea(String area) {
+    public void setArea(Integer area) {
         this.area = area;
     }
 
@@ -363,4 +384,28 @@ public class Project implements Serializable{
     public void setRefuse(String refuse) {
         this.refuse = refuse;
     }
+
+    public Integer getPublish() {
+        return publish;
+    }
+
+    public void setPublish(Integer publish) {
+        this.publish = publish;
+    }
+
+    public String getOrgName() {
+        return orgName;
+    }
+
+    public void setOrgName(String orgName) {
+        this.orgName = orgName;
+    }
+
+    public Double getTotalAmount() {
+        return totalAmount;
+    }
+
+    public void setTotalAmount(Double totalAmount) {
+        this.totalAmount = totalAmount;
+    }
 }

+ 1 - 1
donate-console/src/main/java/com/uas/console/donate/model/ProjectConclude.java

@@ -29,7 +29,7 @@ public class ProjectConclude {
     private String description;
 
     /**
-     *表单提交状态
+     *表单提交状态,1为已提交过
      */
     @Column(name="status")
     private Integer status;

+ 41 - 0
donate-console/src/main/java/com/uas/console/donate/model/ProjectFinance.java

@@ -21,6 +21,23 @@ public class ProjectFinance {
     @Column(name="pro_id")
     private Long proId;
 
+    /**
+     * 支出类型,1:项目支出  2:执行成本
+     */
+    @Column(name = "type")
+    private Integer type;
+
+    /**
+     * 支出金额
+     */
+    @Column(name = "amount")
+    private Long amount;
+
+    /**
+     * 发票图片
+     */
+    @Column(name = "receipt")
+    private String path;
 
     /**
      * 项目报告描述
@@ -66,4 +83,28 @@ public class ProjectFinance {
     public void setStatus(Integer status) {
         this.status = status;
     }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public Long getAmount() {
+        return amount;
+    }
+
+    public void setAmount(Long amount) {
+        this.amount = amount;
+    }
+
+    public String getPath() {
+        return path;
+    }
+
+    public void setPath(String path) {
+        this.path = path;
+    }
 }

+ 55 - 0
donate-console/src/main/java/com/uas/console/donate/model/ProjectQualification.java

@@ -0,0 +1,55 @@
+package com.uas.console.donate.model;
+
+import javax.persistence.*;
+
+@Entity
+@Table(name="donate$projectqualification")
+public class ProjectQualification {
+    private static final long serialVersionUID = 1L;
+
+    @Id
+    @GeneratedValue(strategy= GenerationType.IDENTITY)
+    @Column(name="actqua_id")
+    private  Long id;
+
+    @Column(name = "actqua_act_id")
+    private Long activityId;
+
+    @Column(name = "actqua_pro_id")
+    private Long proId;
+
+    @Column(name = "actqua_pro_name")
+    private String name;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getActivityId() {
+        return activityId;
+    }
+
+    public void setActivityId(Long activityId) {
+        this.activityId = activityId;
+    }
+
+    public Long getProId() {
+        return proId;
+    }
+
+    public void setProId(Long proId) {
+        this.proId = proId;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+}

+ 129 - 0
donate-console/src/main/java/com/uas/console/donate/model/ProjectRecode.java

@@ -0,0 +1,129 @@
+package com.uas.console.donate.model;
+
+import javax.persistence.*;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+@Entity
+@Table(name="donate$projectrecode")
+public class ProjectRecode {
+    private static final long serialVersionUID = 1L;
+    private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm");
+
+    @Id
+    @GeneratedValue(strategy= GenerationType.IDENTITY)
+    @Column(name="pr_id")
+    private  Long id;
+
+    /**
+     * 项目编号
+     */
+    @Column(name="pr_pro_id")
+    private Long proId;
+
+    /**
+     * 项目
+     */
+    @OneToOne(cascade = { CascadeType.REFRESH, CascadeType.MERGE })
+    @JoinColumn(name = "pr_pro_id", insertable = false, updatable = false)
+    private Project project;
+
+    /**
+     * 优软云账号
+     */
+    @Column(name="pr_uuid")
+    private Long uuid;
+
+
+    /**
+     * 捐款额
+     * @return
+     */
+    @Column(name = "pr_amount")
+    private Double amount;
+
+    /**
+     * 捐款时间
+     * @return
+     */
+    @Column(name = "pr_time")
+    private Date time;
+
+    /**
+     * 捐赠项目
+     * @return
+     */
+    @Column(name = "pr_pro_name")
+    private String projectName;
+
+    /**
+     * 收益机构
+     */
+    @Column(name = "pr_org_name")
+    private String orgName;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getProId() {
+        return proId;
+    }
+
+    public void setProId(Long proId) {
+        this.proId = proId;
+    }
+
+    public Project getProject() {
+        return project;
+    }
+
+    public void setProject(Project project) {
+        this.project = project;
+    }
+
+    public Long getUuid() {
+        return uuid;
+    }
+
+    public void setUuid(Long uuid) {
+        this.uuid = uuid;
+    }
+
+    public Double getAmount() {
+        return amount;
+    }
+
+    public void setAmount(Double amount) {
+        this.amount = amount;
+    }
+
+    public String getTime() {
+        Date time=this.time;
+        return time!=null?sdf.format(time):null;
+    }
+
+    public void setTime(Date time) {
+        this.time = time;
+    }
+
+    public String getProjectName() {
+        return projectName;
+    }
+
+    public void setProjectName(String projectName) {
+        this.projectName = projectName;
+    }
+
+    public String getOrgName() {
+        return orgName;
+    }
+
+    public void setOrgName(String orgName) {
+        this.orgName = orgName;
+    }
+}

+ 0 - 69
donate-console/src/main/java/com/uas/console/donate/model/ProjectReport.java

@@ -1,69 +0,0 @@
-package com.uas.console.donate.model;
-
-import javax.persistence.*;
-
-@Entity
-@Table(name = "donate$projectreport")
-public class ProjectReport {
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * 编号
-     */
-    @Id
-    @GeneratedValue(strategy= GenerationType.IDENTITY)
-    @Column(name = "id")
-    private Long id;
-
-    /**
-     * 项目编号
-     */
-    @Column(name="pro_id")
-    private Long proId;
-
-
-    /**
-     * 项目报告描述
-     */
-    @Column(name="report_description")
-    private String description;
-
-    /**
-     *表单提交状态
-     */
-    @Column(name="status")
-    private Integer status;
-
-
-    public Long getId() {
-        return id;
-    }
-
-    public void setId(Long id) {
-        this.id = id;
-    }
-
-    public Long getProId() {
-        return proId;
-    }
-
-    public void setProId(Long proId) {
-        this.proId = proId;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-
-    public void setDescription(String description) {
-        this.description = description;
-    }
-
-    public Integer getStatus() {
-        return status;
-    }
-
-    public void setStatus(Integer status) {
-        this.status = status;
-    }
-}

+ 44 - 0
donate-console/src/main/java/com/uas/console/donate/model/SmsMessage.java

@@ -0,0 +1,44 @@
+package com.uas.console.donate.model;
+
+import java.util.List;
+
+public class SmsMessage {
+    /**
+     * 接收方电话
+     */
+    private String receiver;
+
+    /**
+     * 参数
+     */
+    private List<Object> params;
+
+    /**
+     * 模板id
+     */
+    private String templateId;
+
+    public String getReceiver() {
+        return receiver;
+    }
+
+    public void setReceiver(String receiver) {
+        this.receiver = receiver;
+    }
+
+    public List<Object> getParams() {
+        return params;
+    }
+
+    public void setParams(List<Object> params) {
+        this.params = params;
+    }
+
+    public String getTemplateId() {
+        return templateId;
+    }
+
+    public void setTemplateId(String templateId) {
+        this.templateId = templateId;
+    }
+}

+ 44 - 0
donate-console/src/main/java/com/uas/console/donate/model/UploadImage.java

@@ -0,0 +1,44 @@
+package com.uas.console.donate.model;
+
+/**
+ * 富文本编辑器上传的文件
+ */
+public class UploadImage {
+
+    private String state;//上传状态SUCCESS 一定要大写
+    private String url;//上传地址
+    private String title;//图片名称demo.jpg
+    private String original;//图片名称demo.jpg
+
+    public String getState() {
+        return state;
+    }
+
+    public void setState(String state) {
+        this.state = state;
+    }
+
+    public String getUrl() {
+        return url;
+    }
+
+    public void setUrl(String url) {
+        this.url = url;
+    }
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+    public String getOriginal() {
+        return original;
+    }
+
+    public void setOriginal(String original) {
+        this.original = original;
+    }
+}

+ 5 - 0
donate-console/src/main/java/com/uas/console/donate/service/ActivityRecodeService.java

@@ -8,8 +8,13 @@ public interface ActivityRecodeService {
 
     ActivityRecode save(ActivityRecode joinActivity);
 
+    //查询某一活动的中奖者信息
+    List<ActivityRecode> whoGetAward(Long activityId);
+
+    //查询某一活动的参与人
     List<ActivityRecode> joins(Long activityId);
 
+
     List<ActivityRecode> queryOne(Long uuid);
 
 }

+ 24 - 2
donate-console/src/main/java/com/uas/console/donate/service/ActivityService.java

@@ -1,13 +1,35 @@
 package com.uas.console.donate.service;
 
 import com.uas.console.donate.model.Activity;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
 
 
 public interface ActivityService {
 
-    Activity save(Activity activity1);
+    //如果有草稿状态的活动,取出草稿
+    Activity show();
 
-    Activity submit(Long id);
+    //保存活动
+    Activity save(Activity activity);
 
+    //提交活动
+    Activity submit(Activity activity);
+
+    //活动置顶
     Activity up(Long id);
+
+    Activity findOne(Long id);
+
+    //搜索出所有已结束的活动
+    Page<Activity> findEndActivities(Pageable pageable);
+
+    //搜索出所有还未开始的活动
+    Page<Activity> findNotStart(Pageable pageable);
+
+    //搜索出所有正在进行的活动
+    Page<Activity> findInprocess(Pageable pageable);
+
+    //查找某一具体活动信息
+    Activity fingById(Long id);
 }

+ 20 - 0
donate-console/src/main/java/com/uas/console/donate/service/FileService.java

@@ -0,0 +1,20 @@
+package com.uas.console.donate.service;
+
+import com.uas.console.donate.model.FileUpload;
+
+public interface FileService {
+    /**
+     * 保存文件
+     * @param fileUpload 上传文件
+     * @return 文件路径
+     */
+    public String save(FileUpload fileUpload);
+
+    /**
+     * 保存文件
+     * @param fileName 文件名
+     * @param fileBytes 文件字节数组
+     * @return 文件路径
+     */
+    public String save(String fileName, byte[] fileBytes);
+}

+ 3 - 3
donate-console/src/main/java/com/uas/console/donate/service/OrgService.java

@@ -4,6 +4,7 @@ package com.uas.console.donate.service;
 import com.uas.console.donate.model.Org;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
+import org.springframework.data.repository.query.Param;
 
 import java.util.List;
 
@@ -41,7 +42,6 @@ public interface OrgService {
     //根据机构类别,主要领域,状态查询机构
     List<Org> findByTypeAndMajorArea(Integer type,Integer majorArea,Integer status);
 
-
-
-
+    //根据搜索框查询机构信息
+    List<Org> search(String search);
 }

+ 1 - 0
donate-console/src/main/java/com/uas/console/donate/service/ProjectConcludeService.java

@@ -3,5 +3,6 @@ package com.uas.console.donate.service;
 import com.uas.console.donate.model.ProjectConclude;
 
 public interface ProjectConcludeService {
+    //提交项目结项
     ProjectConclude save(ProjectConclude projectRepor);
 }

+ 5 - 2
donate-console/src/main/java/com/uas/console/donate/service/ProjectFinanceService.java

@@ -1,9 +1,12 @@
 package com.uas.console.donate.service;
-import com.uas.console.donate.model.FileUpload;
 import com.uas.console.donate.model.ProjectFinance;
 
+import java.util.List;
+
 
 public interface ProjectFinanceService {
 
-  /*  ProjectFinance save(ProjectFinance projectFinance, FileUpload upload);*/
+    ProjectFinance save(ProjectFinance projectFinance);
+
+    List<ProjectFinance> findByProId(Long proId);
 }

+ 25 - 0
donate-console/src/main/java/com/uas/console/donate/service/ProjectQualificationService.java

@@ -0,0 +1,25 @@
+package com.uas.console.donate.service;
+
+import com.uas.console.donate.model.Project;
+import com.uas.console.donate.model.ProjectQualification;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+
+
+public interface ProjectQualificationService {
+
+    ProjectQualification save(ProjectQualification projectQualification);
+
+    /*ProjectQualification deleteByProject(Long proId);*/
+
+    //查询某活动已关联的项目
+    List<ProjectQualification> hasConnected(Long activityId);
+
+    //查询所有还未被关联活动的项目
+    List<Project> notConnectList();
+
+    //删除该活动所有关联的有资格参与该活动的所有项目
+    @Transactional
+    void  deletByActivityId(Long activityId);
+}

+ 11 - 0
donate-console/src/main/java/com/uas/console/donate/service/ProjectRecodeService.java

@@ -0,0 +1,11 @@
+package com.uas.console.donate.service;
+
+import com.uas.console.donate.model.ProjectRecode;
+
+import java.util.List;
+
+public interface ProjectRecodeService {
+
+    //展示某项目的捐款明细
+    List<ProjectRecode> findProjectDetail(Long proId);
+}

+ 0 - 9
donate-console/src/main/java/com/uas/console/donate/service/ProjectReportService.java

@@ -1,9 +0,0 @@
-package com.uas.console.donate.service;
-
-import com.uas.console.donate.model.ProjectReport;
-
-
-public interface ProjectReportService {
-
-    ProjectReport save(ProjectReport projectRepor);
-}

+ 28 - 0
donate-console/src/main/java/com/uas/console/donate/service/ProjectService.java

@@ -2,6 +2,7 @@ package com.uas.console.donate.service;
 
 
 
+import com.uas.console.donate.model.Org;
 import com.uas.console.donate.model.Project;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
@@ -10,10 +11,37 @@ import java.util.List;
 
 public interface ProjectService {
 
+    //保存项目草稿
+    Project save(Project project);
+
+    //提交项目
+    Project submit(Project project);
+
+    //项目发起,有草稿则取出草稿
+    Project show();
+
     Page<Project> findAll(Pageable pageable);
 
+    //批准项目
     Project approve(Long id);
 
+    //驳回项目
     Project unapprove(Long id,String refuse);
 
+    List<Project> getProjects();
+
+    //取出某项目的机构信息
+    Org findOrgInfo(Long id);
+
+    //取出某项目的具体信息
+    Project findOne(Long id);
+
+    //查询某领域以及某状态下的项目
+    List<Project> queryProjects(Integer area,Integer status);
+
+    //查询某状态下的所有项目
+    List<Project> findByStatus(Integer status);
+
+    //项目列表搜索框查询
+    List<Project> search(String search);
 }

+ 12 - 0
donate-console/src/main/java/com/uas/console/donate/service/SmsService.java

@@ -0,0 +1,12 @@
+package com.uas.console.donate.service;
+
+import com.uas.message.common.domain.SimpleMessage;
+import com.uas.message.common.service.MessageService;
+import com.uas.message.sms.domain.SmsLog;
+
+import java.util.List;
+import java.util.Map;
+
+public interface SmsService extends MessageService<Object[], SimpleMessage, SmsLog> {
+    List<Map<String, Object>> sendByDefault(String[] var1, String var2);
+}

+ 94 - 0
donate-console/src/main/java/com/uas/console/donate/util/FastjsonUtils.java

@@ -0,0 +1,94 @@
+package com.uas.console.donate.util;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.parser.Feature;
+import com.alibaba.fastjson.serializer.SerializerFeature;
+
+import java.util.List;
+
+/**
+ * alibaba fastjson工具类封装
+ * @author yingp
+ * @see JSON
+ *
+ */
+public class FastjsonUtils {
+
+	public static Feature DEFAULT_PARSER_FEATURE = Feature.DisableCircularReferenceDetect;
+	public static SerializerFeature DEFAULT_SERIAL_FEATURE = SerializerFeature.DisableCircularReferenceDetect;
+
+	/**
+	 * 把JSON文本parse为JSONObject或者JSONArray
+	 * 
+	 * @param text
+	 * @return
+	 */
+	public static Object parse(String text) {
+		return JSON.parse(text, DEFAULT_PARSER_FEATURE);
+	}
+
+	/**
+	 * 把JSON文本parse成JSONObject
+	 * 
+	 * @param text
+	 * @return
+	 */
+	public static final JSONObject parseObject(String text) {
+		return JSON.parseObject(text, DEFAULT_PARSER_FEATURE);
+	}
+
+	/**
+	 * 把JSON文本parse为JavaBean
+	 * 
+	 * @param text
+	 * @param clazz
+	 * @return
+	 */
+	public static final <T> T fromJson(String text, Class<T> clazz) {
+		return JSON.parseObject(text, clazz, DEFAULT_PARSER_FEATURE);
+	}
+
+	/**
+	 * 把JSON文本parse成JSONArray
+	 * 
+	 * @param text
+	 * @return
+	 */
+	public static final JSONArray fromJsonArray(String text) {
+		return JSON.parseArray(text);
+	}
+
+	/**
+	 * 把JSON文本parse成JavaBean集合
+	 * 
+	 * @param text
+	 * @param clazz
+	 * @return
+	 */
+	public static final <T> List<T> fromJsonArray(String text, Class<T> clazz) {
+		return JSON.parseArray(text, clazz);
+	}
+
+	/**
+	 * 将JavaBean序列化为JSON文本
+	 * 
+	 * @param object
+	 * @return
+	 */
+	public static final String toJson(Object object) {
+		return JSON.toJSONString(object, DEFAULT_SERIAL_FEATURE);
+	}
+
+	/**
+	 * 将JavaBean转换为JSONObject或者JSONArray。
+	 * 
+	 * @param javaObject
+	 * @return
+	 */
+	public static final Object toJSON(Object javaObject) {
+		return JSON.toJSON(javaObject);
+	}
+
+}

+ 53 - 0
donate-console/src/main/java/com/uas/console/donate/util/HttpUtils.java

@@ -0,0 +1,53 @@
+package com.uas.console.donate.util;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.PrintWriter;
+import java.net.URL;
+import java.net.URLConnection;
+
+public class HttpUtils {
+
+    public static String sendPost(String url, String param) {
+        PrintWriter out = null;
+        BufferedReader in = null;
+        String result = "";
+
+        try {
+            URL realUrl = new URL(url);
+            URLConnection conn = realUrl.openConnection();
+            conn.setRequestProperty("content-type", "application/json");
+            conn.setRequestProperty("accept", "*/*");
+            conn.setRequestProperty("connection", "Keep-Alive");
+            conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
+            conn.setDoOutput(true);
+            conn.setDoInput(true);
+            out = new PrintWriter(conn.getOutputStream());
+            out.print(param);
+            out.flush();
+
+            String line;
+            for(in = new BufferedReader(new InputStreamReader(conn.getInputStream())); (line = in.readLine()) != null; result = result + line) {
+                ;
+            }
+        } catch (Exception var16) {
+            var16.printStackTrace();
+        } finally {
+            try {
+                if (out != null) {
+                    out.close();
+                }
+
+                if (in != null) {
+                    in.close();
+                }
+            } catch (IOException var15) {
+                var15.printStackTrace();
+            }
+
+        }
+
+        return result;
+    }
+}