Browse Source

Merge branch 'dev' of http://192.168.1.220:10080/Amoy2/wlyy2.0 into dev

zdm 6 years ago
parent
commit
9c141b5005
27 changed files with 1303 additions and 97 deletions
  1. 12 0
      common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/AccountDO.java
  2. 69 11
      common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/ActivityDO.java
  3. 14 0
      common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/ActivityRuleDO.java
  4. 36 0
      common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/CreditsDetailDO.java
  5. 79 12
      common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/ExchangeGoodsDO.java
  6. 55 14
      common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/TaskGoodsDO.java
  7. 67 3
      common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/TaskPatientDetailDO.java
  8. 5 0
      common/common-request-mapping/src/main/java/com/yihu/jw/rm/health/bank/HealthBankMapping.java
  9. 32 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/controller/ActivityController.java
  10. 62 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/controller/CreditsDetailController.java
  11. 20 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/controller/ExchangeGoodsController.java
  12. 28 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/controller/TaskPatientDetailController.java
  13. 4 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/dao/AccountDao.java
  14. 5 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/dao/ExchangeGoodsDao.java
  15. 6 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/dao/TaskDao.java
  16. 11 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/dao/TaskGoodsDao.java
  17. 4 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/dao/TaskPatientDetailDao.java
  18. 17 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/ActivityRuleService.java
  19. 381 11
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/ActivityService.java
  20. 265 8
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/CreditsDetailService.java
  21. 64 31
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/ExchangeGoodsService.java
  22. 1 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/TaskDetailService.java
  23. 3 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/TaskGoodsService.java
  24. 23 4
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/TaskPatientDtailService.java
  25. 29 0
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/util/DateUtils.java
  26. 9 1
      svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/util/ISqlUtils.java
  27. 2 2
      svr/svr-wlyy-health-bank/src/main/resources/application.yml

+ 12 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/AccountDO.java

@ -28,6 +28,9 @@ public class AccountDO extends UuidIdentityEntityWithOperator implements Seriali
    @Column(name = "total")
    private Integer total;//积分总数
    @Column(name = "coupon_total")
    private Long couponTotal;//活动劵总数
    @Column(name = "password")
    private String password;//密码
@ -251,4 +254,13 @@ public class AccountDO extends UuidIdentityEntityWithOperator implements Seriali
    public void setStatus(Integer status) {
        this.status = status;
    }
    @Column(name = "coupon_total")
    public Long getCouponTotal() {
        return couponTotal;
    }
    public void setCouponTotal(Long couponTotal) {
        this.couponTotal = couponTotal;
    }
}

+ 69 - 11
common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/ActivityDO.java

@ -82,12 +82,18 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
    @Column(name = "count")
    private Long count;//报名人数
    @Column(name = "globel_template")
    private String globelTemplate;//通用模板
/*
    @Column(name = "del")
    private Integer del;//1有效0无效*/
    @Column(name = "del_flag")
    private Integer delFlag;//1有效0无效
    /**
  /*  *//**
     * 通用模板code
     */
    private String globelTemplate;
     *//*
    private String globelTemplate;*/
    /**
     * 活动发布、上线时间
     */
@ -115,7 +121,10 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
    private Long total;//参加总数
    @Transient
    private Integer activityRanking;//活动中的排名
    private Integer activityRanking;//活动中的积分的排名
    @Transient
    private Integer activityCouponRanking;//活动中积分劵的排名
    @Transient
    private List<TaskPatientDetailDO> taskPatientDetailDOS;//参与活动详情
@ -129,7 +138,11 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
    @Transient
    private ActivityRuleDO activityRuleDO;//活动规则
    @Transient
    private List<TaskGoodsDO> taskGoodsDOS;//活动奖品
    @Column(name = "saas_id")
    public String getSaasId() {
        return saasId;
    }
@ -138,6 +151,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.saasId = saasId;
    }
    @Column(name = "organizer")
    public String getOrganizer() {
        return organizer;
    }
@ -146,6 +160,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.organizer = organizer;
    }
    @Column(name = "title")
    public String getTitle() {
        return title;
    }
@ -154,6 +169,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.title = title;
    }
    @Column(name = "description")
    public String getDescription() {
        return description;
    }
@ -162,6 +178,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.description = description;
    }
    @Column(name = "location")
    public String getLocation() {
        return location;
    }
@ -170,6 +187,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.location = location;
    }
    @Column(name = "img")
    public String getImg() {
        return img;
    }
@ -178,6 +196,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.img = img;
    }
    @Column(name = "status")
    public Integer getStatus() {
        return status;
    }
@ -186,6 +205,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.status = status;
    }
    @Column(name = "is_flag")
    public Integer getIsFlag() {
        return isFlag;
    }
@ -194,6 +214,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.isFlag = isFlag;
    }
    @Column(name = "remark")
    public String getRemark() {
        return remark;
    }
@ -202,6 +223,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.remark = remark;
    }
    @Column(name = "area")
    public String getArea() {
        return area;
    }
@ -307,6 +329,8 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.taskDOS = taskDOS;
    }
    @Column(name = "registration_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getRegistrationTime() {
        return registrationTime;
    }
@ -315,6 +339,8 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.registrationTime = registrationTime;
    }
    @Column(name = "activity_offline_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getActivityOfflineTime() {
        return activityOfflineTime;
    }
@ -323,6 +349,8 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.activityOfflineTime = activityOfflineTime;
    }
    @Column(name = "dead_line")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getDeadLine() {
        return deadLine;
    }
@ -331,6 +359,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.deadLine = deadLine;
    }
    @Column(name = "crowd_type")
    public Integer getCrowdType() {
        return crowdType;
    }
@ -339,6 +368,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.crowdType = crowdType;
    }
    @Column(name = "recommended")
    public Integer getRecommended() {
        return recommended;
    }
@ -347,6 +377,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.recommended = recommended;
    }
    @Column(name = "info")
    public String getInfo() {
        return info;
    }
@ -355,6 +386,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.info = info;
    }
    @Column(name = "count")
    public Long getCount() {
        return count;
    }
@ -374,6 +406,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
    }
    @Column(name="limit_register")
    public Integer getLimitRegister() {
        return limitRegister;
    }
@ -382,6 +415,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.limitRegister = limitRegister;
    }
    @Column(name = "del_flag")
    public Integer getDelFlag() {
        return delFlag;
    }
@ -390,6 +424,7 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.delFlag = delFlag;
    }
    @Column(name = "globel_template")
    public String getGlobelTemplate() {
        return globelTemplate;
    }
@ -398,6 +433,36 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
        this.globelTemplate = globelTemplate;
    }
    @Transient
    public Integer getActivityCouponRanking() {
        return activityCouponRanking;
    }
    public void setActivityCouponRanking(Integer activityCouponRanking) {
        this.activityCouponRanking = activityCouponRanking;
    }
    @Transient
    public List<TaskGoodsDO> getTaskGoodsDOS() {
        return taskGoodsDOS;
    }
    public void setTaskGoodsDOS(List<TaskGoodsDO> taskGoodsDOS) {
        this.taskGoodsDOS = taskGoodsDOS;
    }
/*
    @Column(name = "del")
    public Integer getDel() {
        return del;
    }
    public void setDel(Integer del) {
        this.del = del;
    }*/
//    public Date getReleaseTime() {
//        return releaseTime;
//    }
@ -406,11 +471,4 @@ public class ActivityDO extends UuidIdentityEntityWithOperator implements Serial
//        this.releaseTime = releaseTime;
//    }
    public String getAreaName() {
        return areaName;
    }
    public void setAreaName(String areaName) {
        this.areaName = areaName;
    }
}

+ 14 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/ActivityRuleDO.java

@ -5,7 +5,9 @@ import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.List;
/**
 * Created by wzn54 on 2018/12/28.
@ -35,6 +37,9 @@ public class ActivityRuleDO extends UuidIdentityEntityWithOperator implements Se
    @Column(name = "del_flag")
    private Integer delFlag;//1有效、0无效
    @Transient
    private List<TaskGoodsDO> taskGoodsDOS;
    @Column(name = "saas_id")
    public String getSaasId() {
@ -97,5 +102,14 @@ public class ActivityRuleDO extends UuidIdentityEntityWithOperator implements Se
    public void setDelFlag(Integer delFlag) {
        this.delFlag = delFlag;
    }
    @Transient
    public List<TaskGoodsDO> getTaskGoodsDOS() {
        return taskGoodsDOS;
    }
    public void setTaskGoodsDOS(List<TaskGoodsDO> taskGoodsDOS) {
        this.taskGoodsDOS = taskGoodsDOS;
    }
}

+ 36 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/CreditsDetailDO.java

@ -27,6 +27,9 @@ public class CreditsDetailDO extends UuidIdentityEntityWithOperator implements S
    @Column(name="integrate")
    private Integer integrate;//积分
    @Column(name = "coupon")
    private Integer coupon;//活动劵
    @Column(name = "status")
    private Integer status;//状态(有效/无效)
@ -81,6 +84,12 @@ public class CreditsDetailDO extends UuidIdentityEntityWithOperator implements S
    @Transient
    private String weekTimes;//一周的日期
    @Transient
    private Long ActivityRanking;//活动排名
    @Transient
    private Integer mark;//1活动劵,2积分
    @Column(name = "saas_id")
@ -279,4 +288,31 @@ public class CreditsDetailDO extends UuidIdentityEntityWithOperator implements S
    public void setWeekTimes(String weekTimes) {
        this.weekTimes = weekTimes;
    }
    @Column(name = "coupon")
    public Integer getCoupon() {
        return coupon;
    }
    public void setCoupon(Integer coupon) {
        this.coupon = coupon;
    }
    @Transient
    public Long getActivityRanking() {
        return ActivityRanking;
    }
    public void setActivityRanking(Long activityRanking) {
        ActivityRanking = activityRanking;
    }
    @Transient
    public Integer getMark() {
        return mark;
    }
    public void setMark(Integer mark) {
        this.mark = mark;
    }
}

+ 79 - 12
common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/ExchangeGoodsDO.java

@ -3,6 +3,7 @@ package com.yihu.jw.entity.health.bank;/**
 */
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javafx.concurrent.Task;
import javax.persistence.Column;
import javax.persistence.Entity;
@ -22,19 +23,35 @@ public class ExchangeGoodsDO extends UuidIdentityEntityWithOperator implements S
    @Column(name = "saas_id")
    private String saasId;//saasid
    @Column(name = "goods_id")
    private String goodsId;//商品id
    @Column(name = "activity_goods_id")
    private String activityGoodsId;//商品id
    @Column(name = "integrate")
    private String integrate;//积分
    private Integer integrate;//积分
    @Column(name = "patient_id")
    private String patientId;//居民id
    @Column(name = "status")
    private Integer status;//状态
    @Column(name = "coupon")
    private Integer coupon;//活动劵
    @Transient
    private GoodsDO goodsDO;//商品对象
    @Transient
    private String hospital;
    @Transient
    private String hospitalName;
    @Transient
    private TaskGoodsDO taskGoodsDO;
    @Column(name = "saas_id")
    public String getSaasId() {
        return saasId;
    }
@ -43,22 +60,17 @@ public class ExchangeGoodsDO extends UuidIdentityEntityWithOperator implements S
        this.saasId = saasId;
    }
    public String getGoodsId() {
        return goodsId;
    }
    public void setGoodsId(String goodsId) {
        this.goodsId = goodsId;
    }
    public String getIntegrate() {
    @Column(name = "integrate")
    public Integer getIntegrate() {
        return integrate;
    }
    public void setIntegrate(String integrate) {
    public void setIntegrate(Integer integrate) {
        this.integrate = integrate;
    }
    @Column(name = "patient_id")
    public String getPatientId() {
        return patientId;
    }
@ -67,6 +79,7 @@ public class ExchangeGoodsDO extends UuidIdentityEntityWithOperator implements S
        this.patientId = patientId;
    }
    @Transient
    public GoodsDO getGoodsDO() {
        return goodsDO;
    }
@ -74,4 +87,58 @@ public class ExchangeGoodsDO extends UuidIdentityEntityWithOperator implements S
    public void setGoodsDO(GoodsDO goodsDO) {
        this.goodsDO = goodsDO;
    }
    @Column(name = "status")
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    @Column(name = "activity_goods_id")
    public String getActivityGoodsId() {
        return activityGoodsId;
    }
    public void setActivityGoodsId(String activityGoodsId) {
        this.activityGoodsId = activityGoodsId;
    }
    @Column(name = "coupon")
    public Integer getCoupon() {
        return coupon;
    }
    public void setCoupon(Integer coupon) {
        this.coupon = coupon;
    }
    @Transient
    public String getHospital() {
        return hospital;
    }
    public void setHospital(String hospital) {
        this.hospital = hospital;
    }
    @Transient
    public String getHospitalName() {
        return hospitalName;
    }
    public void setHospitalName(String hospitalName) {
        this.hospitalName = hospitalName;
    }
    @Transient
    public TaskGoodsDO getTaskGoodsDO() {
        return taskGoodsDO;
    }
    public void setTaskGoodsDO(TaskGoodsDO taskGoodsDO) {
        this.taskGoodsDO = taskGoodsDO;
    }
}

+ 55 - 14
common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/TaskGoodsDO.java

@ -3,10 +3,12 @@ package com.yihu.jw.entity.health.bank;/**
 */
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import org.hibernate.annotations.ColumnTransformer;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
/**
@ -15,14 +17,14 @@ import java.io.Serializable;
 * @desc 活动商品
 **/
@Entity
@Table(name = "wlyy_health_bank_task_goods")
@Table(name = "wlyy_health_bank_activity_goods")
public class TaskGoodsDO extends UuidIdentityEntityWithOperator implements Serializable {
    @Column(name = "saas_id")
    private String saasId;//环境id
    @Column(name = "task_id")
    private String taskId;//任务id
    @Column(name = "activity_id")
    private String activityId;//任务id
    @Column(name = "img")
    private String img;//商品图片
@ -31,8 +33,18 @@ public class TaskGoodsDO extends UuidIdentityEntityWithOperator implements Seria
    private String name;//商品名称
    @Column(name = "integrate")
    private int integrate;//积分
    private Integer integrate;//积分
    @Column(name = "coupon")
    private Integer coupon;//活动劵
    @Column(name = "status")
    private Integer status;//状态(1:充足,-1:库存不足)
    @Transient
    private ExchangeGoodsDO exchangeGoodsDO;//兑换商品
    @Column(name = "saas_id")
    public String getSaasId() {
        return saasId;
    }
@ -41,14 +53,7 @@ public class TaskGoodsDO extends UuidIdentityEntityWithOperator implements Seria
        this.saasId = saasId;
    }
    public String getTaskId() {
        return taskId;
    }
    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }
    @Column(name = "img")
    public String getImg() {
        return img;
    }
@ -65,11 +70,47 @@ public class TaskGoodsDO extends UuidIdentityEntityWithOperator implements Seria
        this.name = name;
    }
    public int getIntegrate() {
    public Integer getIntegrate() {
        return integrate;
    }
    public void setIntegrate(int integrate) {
    public void setIntegrate(Integer integrate) {
        this.integrate = integrate;
    }
    @Column(name = "activity_id")
    public String getActivityId() {
        return activityId;
    }
    public void setActivityId(String activityId) {
        this.activityId = activityId;
    }
    @Column(name = "coupon")
    public int getCoupon() {
        return coupon;
    }
    public void setCoupon(Integer coupon) {
        this.coupon = coupon;
    }
    @Column(name = "status")
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    @Transient
    public ExchangeGoodsDO getExchangeGoodsDO() {
        return exchangeGoodsDO;
    }
    public void setExchangeGoodsDO(ExchangeGoodsDO exchangeGoodsDO) {
        this.exchangeGoodsDO = exchangeGoodsDO;
    }
}

+ 67 - 3
common/common-entity/src/main/java/com/yihu/jw/entity/health/bank/TaskPatientDetailDO.java

@ -7,6 +7,7 @@ import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.List;
/**
 * Created by wamg zhinan 2018/4/27.
@ -42,9 +43,18 @@ public class TaskPatientDetailDO extends UuidIdentityEntityWithOperator implemen
    @Column(name = "total")
    private Long total;//活动中获取的积分
    @Column(name = "coupon_total")
    private Long couponTotal;//活动劵总数
    @Column(name = "union_id")
    private String unionId;
    @Column(name = "hospital")
    private String hospital;
    @Column(name = "street")
    private String street;
    @Transient
    private AccountDO accountDO;//账户信息
@ -57,12 +67,19 @@ public class TaskPatientDetailDO extends UuidIdentityEntityWithOperator implemen
    @Transient
    private String name;//居民名称
    @Transient
    private String hospital;//社区
    @Transient
    private String hospitalName;//社区名称
    @Transient
    private String timeSeparated;//至今多久
    @Transient
    private List<ExchangeGoodsDO> exchangeGoodsDO;//兑换商品
    @Transient
    private ActivityDO activityDO ;//活动实体
    public String getSaasId() {
        return saasId;
    }
@ -179,7 +196,7 @@ public class TaskPatientDetailDO extends UuidIdentityEntityWithOperator implemen
        this.name = name;
    }
    @Transient
    @Column(name = "hospital")
    public String getHospital() {
        return hospital;
    }
@ -196,4 +213,51 @@ public class TaskPatientDetailDO extends UuidIdentityEntityWithOperator implemen
    public void setHospitalName(String hospitalName) {
        this.hospitalName = hospitalName;
    }
    @Column(name = "coupon_total")
    public Long getCouponTotal() {
        return couponTotal;
    }
    public void setCouponTotal(Long couponTotal) {
        this.couponTotal = couponTotal;
    }
    @Transient
    public String getTimeSeparated() {
        return timeSeparated;
    }
    public void setTimeSeparated(String timeSeparated) {
        this.timeSeparated = timeSeparated;
    }
    @Column(name = "street")
    public String getStreet() {
        return street;
    }
    public void setStreet(String street) {
        this.street = street;
    }
    @Transient
    public List<ExchangeGoodsDO> getExchangeGoodsDO() {
        return exchangeGoodsDO;
    }
    public void setExchangeGoodsDO(List<ExchangeGoodsDO> exchangeGoodsDO) {
        this.exchangeGoodsDO = exchangeGoodsDO;
    }
    @Transient
    public ActivityDO getActivityDO() {
        return activityDO;
    }
    public void setActivityDO(ActivityDO activityDO) {
        this.activityDO = activityDO;
    }
}

+ 5 - 0
common/common-request-mapping/src/main/java/com/yihu/jw/rm/health/bank/HealthBankMapping.java

@ -67,5 +67,10 @@ public class HealthBankMapping {
        public static final String doctorDescreaseIntegrate = "/doctorDescreaseIntegrate";
        public static final String selectAccountByPatient="/selectAccountByPatient";
        public static final String selectByActivityRule = "/selectByActivityRule";
        public static final String patientGetInteger = "/patientGetInteger";
        public static final String selectActivityRanking = "/selectActivityRanking";
        public static final String selectByPatientAndDate = "/selectByPatientAndDate";
        public static final String selectTaskAndPatients = "/selectTaskAndPatients";
        public static final String shareIntegrate = "/shareIntegrate";
    }
}

+ 32 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/controller/ActivityController.java

@ -175,6 +175,38 @@ public class ActivityController extends EnvelopRestEndpoint {
    }
    /**
     * 获取活动排行
     *
     * @param activityId
     * @param patient
     * @param page
     * @param size
     * @return
     */
    @PostMapping(value = HealthBankMapping.healthBank.selectActivityRanking)
    @ApiOperation(value = "获取活动排行")
    public MixEnvelop<JSONObject, JSONObject> selectActivityRanking(@ApiParam(name="activityId",value = "活动id")
                                                                        @RequestParam(value = "activityId",required = false)String activityId,
                                                                    @ApiParam(name="patient",value = "居民id")
                                                                        @RequestParam(value = "patient",required = false)String patient,
                                                                    @ApiParam(name = "page", value = "第几页,从1开始")
                                                                        @RequestParam(value = "page", defaultValue = "1",required = false)Integer page,
                                                                    @ApiParam(name = "size",defaultValue = "10",value = ",每页分页大小")
                                                                        @RequestParam(value = "size", required = false)Integer size,
                                                                    @ApiParam(name="street",value = "街道")
                                                                        @RequestParam(value = "street",required = false)String street,
                                                                    @ApiParam(name="town",value = "区")
                                                                        @RequestParam(value = "town",required = false)String town){
        try{
            return service.selectActivityRanking(activityId,patient,page,size,street,town);
        }catch (Exception e){
            e.printStackTrace();
            tracer.getCurrentSpan().logEvent(e.getMessage());
            return MixEnvelop.getError(e.getMessage());
        }
    }
    /**
     * 删除数据
     *

+ 62 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/controller/CreditsDetailController.java

@ -283,6 +283,68 @@ public class CreditsDetailController extends EnvelopRestEndpoint {
    }
    /**
     * 居民获取积分
     *
     * @param creditsDetail
     * @return
     */
    @PostMapping(value = HealthBankMapping.healthBank.patientGetInteger)
    @ApiOperation(value = "居民获取积分")
    public MixEnvelop<CreditsDetailDO, CreditsDetailDO> patientGetInteger(@ApiParam(name = "creditsDetail",value = "积分记录JSON")
                                                               @RequestParam(value = "creditsDetail",required = true)String creditsDetail){
        try {
            CreditsDetailDO creditsDetailDO = toEntity(creditsDetail,CreditsDetailDO.class);
            return service.patientGetInteger(creditsDetailDO);
        }catch (Exception e){
            e.printStackTrace();
            tracer.getCurrentSpan().logEvent(e.getMessage());
            return MixEnvelop.getError(e.getMessage());
        }
    }
    /**
     * 获取当日积分
     *
     * @param patient
     * @param transactionId
     * @return
     */
    @PostMapping(value = HealthBankMapping.healthBank.selectByPatientAndDate)
    @ApiOperation(value = "健康问答--获取当日积分")
    public MixEnvelop<CreditsDetailDO, CreditsDetailDO> patientGetInteger(@ApiParam(name = "patient",value = "居民code")
                                                                          @RequestParam(value = "patient",required = true)String patient,
                                                                          @ApiParam(name = "transactionId",value = "任务id")
                                                                          @RequestParam(value = "transactionId",required = true)String transactionId){
        try {
            return service.selectByDate(patient,transactionId);
        }catch (Exception e){
            e.printStackTrace();
            tracer.getCurrentSpan().logEvent(e.getMessage());
            return MixEnvelop.getError(e.getMessage());
        }
    }
    /**
     * 分享获取积分
     * @param creditsDetail
     * @return
     */
    @PostMapping(value = HealthBankMapping.healthBank.shareIntegrate)
    @ApiOperation(value = "分享获取积分")
    public MixEnvelop<CreditsDetailDO, CreditsDetailDO> shareIntegrate(@ApiParam(name = "creditsDetail",value = "积分记录JSON")
                                                                   @RequestParam(value = "creditsDetail",required = true)String creditsDetail){
        try {
            CreditsDetailDO creditsDetailDO = toEntity(creditsDetail,CreditsDetailDO.class);
            return service.shareIntegrate(creditsDetailDO);
        }catch (Exception e){
            e.printStackTrace();
            tracer.getCurrentSpan().logEvent(e.getMessage());
            return MixEnvelop.getError(e.getMessage());
        }
    }
}

+ 20 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/controller/ExchangeGoodsController.java

@ -59,6 +59,26 @@ public class ExchangeGoodsController extends EnvelopRestEndpoint {
        }
    }
    /**
     *
     * @param exchangeGoods
     * @return
     */
    @PostMapping(value = HealthBankMapping.healthBank.exchangeGoods)
    @ApiOperation(value = "兑换奖品")
    public MixEnvelop<ExchangeGoodsDO, ExchangeGoodsDO> exchangeGoods(@ApiParam(name = "exchangeGoods",value = "兑换商品JSON")
                                                                         @RequestParam(value = "exchangeGoods",required = false)String exchangeGoods){
        try{
            ExchangeGoodsDO exchangeGoodsDO = toEntity(exchangeGoods,ExchangeGoodsDO.class);
            return service.insert(exchangeGoodsDO);
        }catch (Exception e){
            e.printStackTrace();
            tracer.getCurrentSpan().logEvent(e.getMessage());
            return MixEnvelop.getError(e.getMessage());
        }
    }
   /* *//**
     * exchange goods
     *

+ 28 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/controller/TaskPatientDetailController.java

@ -10,6 +10,8 @@ import com.yihu.jw.service.TaskPatientDtailService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import net.bytebuddy.agent.builder.AgentBuilder;
import org.apache.catalina.LifecycleState;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.sleuth.Tracer;
import org.springframework.web.bind.annotation.PostMapping;
@ -17,6 +19,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
 * @author wangzhinan
 * @create 2018-06-11 10:37
@ -52,5 +56,29 @@ public class TaskPatientDetailController extends EnvelopRestEndpoint {
        }
    }
    /**
     *
     * @param page
     * @param size
     * @return
     */
    @PostMapping(value = HealthBankMapping.healthBank.selectTaskAndPatients)
    @ApiOperation(value = "获取居民活动")
    public MixEnvelop<TaskPatientDetailDO,TaskPatientDetailDO> select(@ApiParam(name = "page", value = "第几页,从1开始")
                                                                      @RequestParam(value = "page", defaultValue = "1",required = false)Integer page,
                                                                      @ApiParam(name = "size",defaultValue = "10",value = ",每页分页大小")
                                                                      @RequestParam(value = "size", required = false)Integer size){
        MixEnvelop<TaskPatientDetailDO,TaskPatientDetailDO> envelop =new MixEnvelop<>();
        try {
            List<TaskPatientDetailDO> taskPatientDetailDOS = service.select(page,size);
            envelop.setDetailModelList(taskPatientDetailDOS);
        }catch (Exception e){
            e.printStackTrace();
            tracer.getCurrentSpan().logEvent(e.getMessage());
            return MixEnvelop.getError(e.getMessage());
        }
        return envelop;
    }
}

+ 4 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/dao/AccountDao.java

@ -3,7 +3,9 @@ package com.yihu.jw.dao;/**
 */
import com.yihu.jw.entity.health.bank.AccountDO;
import com.yihu.jw.entity.health.bank.ActivityRuleDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
@ -12,4 +14,6 @@ import org.springframework.data.repository.PagingAndSortingRepository;
 * @desc health bank account dao
 **/
public interface AccountDao extends PagingAndSortingRepository<AccountDO,String>,JpaSpecificationExecutor<AccountDO> {
    @Query("select t from AccountDO t where t.patientId=?1 and t.status=1")
    AccountDO selectByPatientId(String patientId);
}

+ 5 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/dao/ExchangeGoodsDao.java

@ -3,7 +3,9 @@ package com.yihu.jw.dao;/**
 */
import com.yihu.jw.entity.health.bank.ExchangeGoodsDO;
import com.yihu.jw.entity.health.bank.TaskDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
@ -12,4 +14,7 @@ import org.springframework.data.repository.PagingAndSortingRepository;
 * @desc exchange goods dao
 **/
public interface ExchangeGoodsDao extends PagingAndSortingRepository<ExchangeGoodsDO,String>,JpaSpecificationExecutor<ExchangeGoodsDO> {
    @Query("select t from ExchangeGoodsDO t where t.activityGoodsId = ?1 and t.patientId = ?2")
    ExchangeGoodsDO selectByActivityGoodsIdAndPatientId(String activityGoodsId,String patientId);
}

+ 6 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/dao/TaskDao.java

@ -7,6 +7,7 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import javax.print.DocFlavor;
import java.util.List;
/**
@ -20,4 +21,9 @@ public interface TaskDao extends PagingAndSortingRepository<TaskDO,String>,JpaSp
    @Query("select t from TaskDO t where t.transactionId = ?1 and t.type='RULE_TASK'")
    TaskDO selectByTaskRuleId(String transactionId);
    @Query("select t from TaskDO t where t.id = ?1 ")
    TaskDO selectById(String id);
}

+ 11 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/dao/TaskGoodsDao.java

@ -2,14 +2,25 @@ package com.yihu.jw.dao;/**
 * Created by nature of king on 2018/6/8.
 */
import com.yihu.jw.entity.health.bank.ActivityDO;
import com.yihu.jw.entity.health.bank.TaskGoodsDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
/**
 * @author wangzhinan
 * @create 2018-06-08 15:28
 * @desc 商品 dao
 **/
public interface TaskGoodsDao extends PagingAndSortingRepository<TaskGoodsDO,String>,JpaSpecificationExecutor<TaskGoodsDO> {
    @Query("select t from TaskGoodsDO t where t.activityId=?1")
    List<TaskGoodsDO> selectByActivityId(String activityId);
    @Query("select t from TaskGoodsDO t where t.id=?1")
    TaskGoodsDO selectById(String di);
}

+ 4 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/dao/TaskPatientDetailDao.java

@ -19,4 +19,8 @@ public interface TaskPatientDetailDao extends PagingAndSortingRepository<TaskPat
    @Query("select t from TaskPatientDetailDO t where taskId = ?1 and patientId =?2")
    TaskPatientDetailDO selectByTaskIdAndPatientId(String taskId,String patientId);
    @Query("select t from TaskPatientDetailDO t where activityId = ?1 and patientId =?2")
    TaskPatientDetailDO selectByActivityIdAndPatientId(String activityId,String patientId);
}

+ 17 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/ActivityRuleService.java

@ -1,15 +1,21 @@
package com.yihu.jw.service;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.dao.ActivityDao;
import com.yihu.jw.dao.ActivityRuleDao;
import com.yihu.jw.dao.TaskGoodsDao;
import com.yihu.jw.entity.health.bank.ActivityDO;
import com.yihu.jw.entity.health.bank.ActivityRuleDO;
import com.yihu.jw.entity.health.bank.TaskGoodsDO;
import com.yihu.jw.restmodel.web.MixEnvelop;
import com.yihu.mysql.query.BaseJpaService;
import org.apache.catalina.LifecycleState;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.transaction.Transactional;
import java.util.ArrayList;
import java.util.List;
/**
 * Created by wzn54 on 2019/1/4.
@ -20,6 +26,8 @@ public class ActivityRuleService extends BaseJpaService<ActivityDO,ActivityDao>
    @Autowired
    private ActivityRuleDao activityRuleDao;
    @Autowired
    private TaskGoodsDao taskGoodsDao;
    /**
     * 根据id获取活动id
@ -29,6 +37,15 @@ public class ActivityRuleService extends BaseJpaService<ActivityDO,ActivityDao>
    public MixEnvelop<ActivityRuleDO,ActivityRuleDO> selectByActivityId(String id){
        MixEnvelop<ActivityRuleDO,ActivityRuleDO> envelop = new MixEnvelop<>();
        ActivityRuleDO ruleDO = activityRuleDao.selectByActivityId(id);
        if (ruleDO.getValue3() != null && ruleDO.getValue3() != ""){
            JSONObject object = JSONObject.parseObject(ruleDO.getValue3());
            Integer exchangeType = object.getInteger("exchangeType");
            List<TaskGoodsDO> taskGoodsDOS = null;
            if (exchangeType == 2){
               taskGoodsDOS = taskGoodsDao.selectByActivityId(id);
            }
            ruleDO.setTaskGoodsDOS(taskGoodsDOS);
        }
        envelop.setObj(ruleDO);
        return envelop;
    }

+ 381 - 11
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/ActivityService.java

@ -2,22 +2,16 @@ package com.yihu.jw.service;/**
 * Created by nature of king on 2018/4/27.
 */
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.dao.ActivityDao;
import com.yihu.jw.dao.ActivityRuleDao;
import com.yihu.jw.dao.TaskDao;
import com.yihu.jw.dao.TaskPatientDetailDao;
import com.yihu.jw.entity.health.bank.ActivityDO;
import com.yihu.jw.entity.health.bank.ActivityRuleDO;
import com.yihu.jw.entity.health.bank.TaskDO;
import com.yihu.jw.entity.health.bank.TaskPatientDetailDO;
import com.yihu.jw.dao.*;
import com.yihu.jw.entity.health.bank.*;
import com.yihu.jw.restmodel.web.MixEnvelop;
import com.yihu.jw.restmodel.web.ObjEnvelop;
import com.yihu.jw.rm.health.bank.HealthBankMapping;
import com.yihu.jw.util.DateUtils;
import com.yihu.jw.util.ISqlUtils;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.mysql.query.BaseJpaService;
import org.apache.commons.lang.time.DateFormatUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
@ -50,6 +44,12 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
    private JdbcTemplate jdbcTemplate;
    @Autowired
    private ActivityRuleDao activityRuleDao;
    @Autowired
    private TaskGoodsDao taskGoodsDao;
    @Autowired
    private AccountDao accountDao;
    @Autowired
    private ExchangeGoodsDao exchangeGoodsDao;
    /**
@ -59,7 +59,7 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
     * @return
     */
    public MixEnvelop<Boolean, Boolean> insert(ActivityDO activityDO,String value1,String value2,String value3){
        if (value2 != null){
        if (value2 != null && value2 !=""){
            JSONObject object = JSONObject.parseObject(value2);
            activityDO.setActivityOfflineTime(object.getDate("activityOfflineTime"));
            activityDO.setRegistrationTime(object.getDate("registrationTime"));
@ -71,7 +71,40 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
//            activityDO.setReleaseTime(new Date());
//        }
        activityDO.setDelFlag(1);
      /*  activityDO.setDel(1);*/
        activityDO= activityDao.save(activityDO);
        if (value3 !=null && value3 !=""){
            JSONObject object = JSONObject.parseObject(value3);
            String exchangeType = object.getString("exchangeType");
            JSONArray array = object.getJSONArray("goodDetail");
            for (int i =0;i<array.size();i++){
                JSONObject jsonObject = array.getJSONObject(i);
                if (exchangeType.equals("2")){
                    TaskGoodsDO taskGoodsDO = new TaskGoodsDO();
                    taskGoodsDO.setActivityId(activityDO.getId());
                    taskGoodsDO.setCoupon(jsonObject.getInteger("integrate"));
                    taskGoodsDO.setImg(jsonObject.getString("img"));
                    taskGoodsDO.setName(jsonObject.getString("name"));
                    taskGoodsDO.setSaasId("dev");
                    taskGoodsDO.setStatus(1);
                    taskGoodsDao.save(taskGoodsDO);
                }
            }
        }
        TaskDO taskDO = new TaskDO();
        taskDO.setTitle(activityDO.getTitle());
        taskDO.setStatus(1);
        taskDO.setTransactionId(activityDO.getId());
        taskDO.setType("ACTIVITY_TASK");
        taskDO.setSaasId("dev");
        taskDO.setContent(activityDO.getDescription());
        taskDO.setPeriod(1);
        taskDO.setTaskCode("ACTIVITY_QUESTION");
        taskDO.setStartTime(activityDO.getRegistrationTime());
        taskDO.setEndTime(activityDO.getActivityOfflineTime());
        taskDO.setCreateTime(new Date());
        taskDO.setUpdateTime(new Date());
        taskDao.save(taskDO);
        ActivityRuleDO activityRuleDO = new ActivityRuleDO();
        activityRuleDO.setCreateTime(new Date());
        activityRuleDO.setUpdateTime(new Date());
@ -81,6 +114,7 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
        activityRuleDO.setValue2(value2);
        activityRuleDO.setValue3(value3);
        activityRuleDO.setDelFlag(1);
      /*  activityRuleDO.setDel(1);*/
        activityRuleDao.save(activityRuleDO);
        MixEnvelop<Boolean, Boolean> envelop = new MixEnvelop<>();
        envelop.setObj(true);
@ -124,6 +158,14 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
            activityDO1.setTaskPatientDetailDOS(taskPatientDetailDOS);
            String tasksql = "select * from wlyy_health_bank_task where transaction_id = '"+activityDO1.getId()+"'";
            List<TaskDO> taskDOList = jdbcTemplate.query(tasksql,new BeanPropertyRowMapper(TaskDO.class));
            List<TaskGoodsDO> taskGoodsDOS = taskGoodsDao.selectByActivityId(activityDO1.getId());
            for (TaskGoodsDO taskGoodsDO:taskGoodsDOS){
                ExchangeGoodsDO exchangeGoodsDO = exchangeGoodsDao.selectByActivityGoodsIdAndPatientId(taskGoodsDO.getId(),activityDO.getPatientId());
                taskGoodsDO.setExchangeGoodsDO(exchangeGoodsDO);
            }
            activityDO1.setTaskGoodsDOS(taskGoodsDOS);
            ActivityRuleDO activityRuleDO = activityRuleDao.selectByActivityId(activityDO1.getId());
            activityDO1.setActivityRuleDO(activityRuleDO);
            activityDO1.setTaskDOS(taskDOList);
        }
        String sqlcount = new ISqlUtils().getSql(activityDO,0,0,"count");
@ -413,5 +455,333 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
    }
    /**
     * 活动排名
     *
     * @param activityId
     * @param patient
     * @param page
     * @param size
     * @return
     */
    public MixEnvelop<JSONObject,JSONObject> selectActivityRanking(String activityId,String patient,Integer page,Integer size,String street,String town){
        MixEnvelop<JSONObject,JSONObject> envelop = new MixEnvelop<>();
        ActivityDO activityDO = activityDao.selectById(activityId);
        JSONObject jsonObject = new JSONObject();
        TaskPatientDetailDO taskPatientDetailDO1 = taskPatientDetailDao.selectByActivityIdAndPatientId(activityId,patient);
        //积分排行
        String sql  ="SELECT btpd.patient_id AS patientId,btpd.total,btpd.update_time AS updateTime FROM ( SELECT sum(btpd.total) AS total, btpd.patient_id,btpd.update_time " +
                "FROM wlyy_health_bank_task_patient_detail btpd " +
                "WHERE btpd.activity_id = '"+activityId +
                "' GROUP BY  btpd.patient_id " +
                " ) btpd " +
                "ORDER BY " +
                " btpd.total DESC LIMIT " + (page-1)*size+","+size;
        List<TaskPatientDetailDO> patientDetailDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(TaskPatientDetailDO.class));
        for (TaskPatientDetailDO taskPatientDetailDO:patientDetailDOS){
            String timeSeparated = DateUtils.getDatePoor(new Date(),taskPatientDetailDO.getUpdateTime());
            String goodsSql = "select * from wlyy_health_bank_exchange_goods where patient_id ='"+taskPatientDetailDO.getPatientId()+"' " +
                    "and activity_goods_id in(select id from wlyy_health_bank_activity_goods where activity_id ='"+activityId+"')";
            List<ExchangeGoodsDO> exchangeGoodsDOS = jdbcTemplate.query(goodsSql,new BeanPropertyRowMapper<>(ExchangeGoodsDO.class));
            for (ExchangeGoodsDO exchangeGoodsDO :exchangeGoodsDOS){
                TaskGoodsDO taskGoodsDO = taskGoodsDao.selectById(exchangeGoodsDO.getActivityGoodsId());
                exchangeGoodsDO.setTaskGoodsDO(taskGoodsDO);
            }
            taskPatientDetailDO.setExchangeGoodsDO(exchangeGoodsDOS);
            taskPatientDetailDO.setTimeSeparated(timeSeparated);
        }
        //活动劵排行
        String sqlCoupon  ="SELECT btpd.patient_id AS patientId,btpd.couponTotal,btpd.update_time AS updateTime  FROM ( SELECT sum(btpd.coupon_total) AS couponTotal, btpd.patient_id,btpd.update_time " +
                "FROM wlyy_health_bank_task_patient_detail btpd " +
                "WHERE btpd.activity_id = '"+activityId +
                "' GROUP BY  btpd.patient_id " +
                " ) btpd " +
                "ORDER BY " +
                " btpd.couponTotal DESC LIMIT " + (page-1)*size+","+size;
        List<TaskPatientDetailDO> patientDetailDOS1 = jdbcTemplate.query(sqlCoupon,new BeanPropertyRowMapper<>(TaskPatientDetailDO.class));
        for (TaskPatientDetailDO taskPatientDetailDO:patientDetailDOS1){
            String timeSeparated = DateUtils.getDatePoor(new Date(),taskPatientDetailDO.getUpdateTime());
            String goodsSql = "select * from wlyy_health_bank_exchange_goods where patient_id ='"+taskPatientDetailDO.getPatientId()+"' " +
                    "and activity_goods_id in(select id from wlyy_health_bank_activity_goods where activity_id ='"+activityId+"')";
            List<ExchangeGoodsDO> exchangeGoodsDOS = jdbcTemplate.query(goodsSql,new BeanPropertyRowMapper<>(ExchangeGoodsDO.class));
            for (ExchangeGoodsDO exchangeGoodsDO :exchangeGoodsDOS){
                TaskGoodsDO taskGoodsDO = taskGoodsDao.selectById(exchangeGoodsDO.getActivityGoodsId());
                exchangeGoodsDO.setTaskGoodsDO(taskGoodsDO);
            }
            taskPatientDetailDO.setExchangeGoodsDO(exchangeGoodsDOS);
            taskPatientDetailDO.setTimeSeparated(timeSeparated);
        }
        //活动总积分排名
        String rankingSql1 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(total) AS sum , " +
                " patient_id, " +
                " activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"' AND btpd1.sum >= (SELECT SUM(s.total) as total " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal1 = jdbcTemplate.queryForList(rankingSql1);
        Long count = 0L;
        if(rstotal1!=null&&rstotal1.size()>0){
            count = (Long) rstotal1.get(0).get("total");
        }
        Long countTotal = 0L;
        if ((count-2)>=0){
            countTotal = (count-2);
        }
        //排名前一个积分
        String rankingSql9 = "SELECT btpd1.sum as total FROM (SELECT " +
                " SUM(total) AS sum , " +
                " patient_id, " +
                " activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"' AND btpd1.sum >= (SELECT SUM(s.total) as total " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"') limit "+countTotal+",1" ;
        List<Map<String,Object>> rstotal9 = jdbcTemplate.queryForList(rankingSql9);
        Integer total = 0;
        if(rstotal9!=null&&rstotal9.size()>0){
            total = Integer.parseInt(rstotal9.get(0).get("total").toString()) ;
        }
        String totalSql = " SELECT SUM(s.total) as total " +
                " FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"'";
        List<Map<String,Object>> rstotal10 = jdbcTemplate.queryForList(totalSql);
        Integer total1 = 0;
        if(rstotal10!=null&&rstotal10.size()>0){
            total1 = Integer.parseInt( rstotal10.get(0).get("total").toString());
        }
        //总活动劵的排名
        String rankingSql2 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(coupon_total) AS sum , " +
                " patient_id, " +
                " activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"' AND btpd1.sum >= (SELECT SUM(s.coupon_total) as couponTotal " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal2 = jdbcTemplate.queryForList(rankingSql2);
        Long count2 = 0L;
        if(rstotal2!=null&&rstotal2.size()>0){
            count2 = (Long) rstotal2.get(0).get("total");
        }
        Long countTotal1 = 0L;
        if ((count2-2)>=0){
            countTotal1=(count2-2);
        }
        //活动劵前一个活动劵
        String rankingSql10 = "SELECT btpd1.sum as total FROM (SELECT " +
                " SUM(coupon_total) AS sum , " +
                " patient_id, " +
                " activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"' AND btpd1.sum >= (SELECT SUM(s.total) as total " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"') limit "+countTotal1+",1" ;
        List<Map<String,Object>> totalSql10 = jdbcTemplate.queryForList(rankingSql10);
        Integer total2 = 0;
        if(totalSql10!=null&&totalSql10.size()>0){
            total2 = Integer.parseInt(totalSql10.get(0).get("total").toString());
        }
        String totalSql1 = " SELECT SUM(s.coupon_total) as total " +
                " FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"'";
        List<Map<String,Object>> totalSql11 = jdbcTemplate.queryForList(totalSql1);
        Integer total3 = 0;
        if(totalSql11!=null&&totalSql11.size()>0){
            total3 = Integer.parseInt(totalSql11.get(0).get("total").toString());
        }
        //活动劵
        //街道排名
        String rankingSql3 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(btpd.coupon_total) AS sum , " +
                " btpd.patient_id, " +
                " btpd.activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail btpd " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"' and  btpd1.patient_id IN(SELECT p.code FROM wlyy.wlyy_patient p WHERE p.street = '"+street+"') AND btpd1.sum >= (SELECT SUM(s.coupon_total) as couponTotal " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal3 = jdbcTemplate.queryForList(rankingSql3);
        Long count3 = 0L;
        if(rstotal3!=null&&rstotal3.size()>0){
            count3 = (Long) rstotal3.get(0).get("total");
        }
        //区排名
        String rankingSql4 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(btpd.coupon_total) AS sum , " +
                " btpd.patient_id, " +
                " btpd.activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail btpd " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"' and  btpd1.patient_id IN(SELECT p.code FROM wlyy.wlyy_patient p WHERE p.town = '"+town+"') AND btpd1.sum >= (SELECT SUM(s.coupon_total) as couponTotal " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal4 = jdbcTemplate.queryForList(rankingSql4);
        Long count4 = 0L;
        if(rstotal4!=null&&rstotal4.size()>0){
            count4= (Long) rstotal4.get(0).get("total");
        }
        //积分
        //街道排名
        String rankingSql5 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(btpd.total) AS sum , " +
                " btpd.patient_id, " +
                " btpd.activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail btpd " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"' and  btpd1.patient_id IN(SELECT p.code FROM wlyy.wlyy_patient p WHERE p.street = '"+street+"') AND btpd1.sum >= (SELECT SUM(s.coupon_total) as couponTotal " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal5 = jdbcTemplate.queryForList(rankingSql5);
        Long count5 = 0L;
        if(rstotal5!=null&&rstotal5.size()>0){
            count5 = (Long) rstotal5.get(0).get("total");
        }
        //区排名
        String rankingSql6 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(btpd.total) AS sum , " +
                " btpd.patient_id, " +
                " btpd.activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail btpd " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"' and  btpd1.patient_id IN(SELECT p.code FROM wlyy.wlyy_patient p WHERE p.town = '"+town+"') AND btpd1.sum >= (SELECT SUM(s.coupon_total) as couponTotal " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal6 = jdbcTemplate.queryForList(rankingSql6);
        Long count6 = 0L;
        if(rstotal6!=null&&rstotal6.size()>0){
            count6= (Long) rstotal6.get(0).get("total");
        }
        //团队排名
        //街道排名
        String rankingSql7 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(btpd.total) AS sum , " +
                " btpd.patient_id, " +
                " btpd.activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail btpd " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"' and  btpd1.patient_id IN(SELECT sf.patient FROM wlyy.wlyy_sign_family sf WHERE sf.status=1 " +
                "AND sf.admin_team_code=(SELECT sf.admin_team_code FROM wlyy.wlyy_sign_family sf WHERE sf.status=1 AND sf.patient='"+patient+"') ) AND btpd1.sum >= (SELECT SUM(s.coupon_total) as couponTotal " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal7 = jdbcTemplate.queryForList(rankingSql7);
        Long count7 = 0L;
        if(rstotal7!=null&&rstotal7.size()>0){
            count7 = (Long) rstotal7.get(0).get("total");
        }
        //区排名
        String rankingSql8 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(btpd.total) AS sum , " +
                " btpd.patient_id, " +
                " btpd.activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail btpd " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"' and  btpd1.patient_id IN(SELECT sf.patient FROM wlyy.wlyy_sign_family sf WHERE sf.status=1 " +
                "AND sf.admin_team_code=(SELECT sf.admin_team_code FROM wlyy.wlyy_sign_family sf WHERE sf.status=1 AND sf.patient='"+patient+"') ) AND btpd1.sum >= (SELECT SUM(s.coupon_total) as couponTotal " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal8 = jdbcTemplate.queryForList(rankingSql8);
        Long count8 = 0L;
        if(rstotal8!=null&&rstotal8.size()>0){
            count8 = (Long) rstotal8.get(0).get("total");
        }
      /*  //活动劵
        String rankingSql4 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(coupon_total) AS sum , " +
                " patient_id, " +
                " activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"'"+buffer+" AND btpd1.sum >= (SELECT SUM(s.coupon_total) as couponTotal " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal4 = jdbcTemplate.queryForList(rankingSql4);
        Long count4 = 0L;
        if(rstotal4!=null&&rstotal4.size()>0){
            count4= (Long) rstotal4.get(0).get("total");
        }
        //积分
        String rankingSql5 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(total) AS sum , " +
                " patient_id, " +
                " activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"'"+buffer+" AND btpd1.sum >= (SELECT SUM(s.total) as total " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal5 = jdbcTemplate.queryForList(rankingSql5);
        Long count5 = 0L;
        if(rstotal5!=null&&rstotal5.size()>0){
            count5 = (Long) rstotal5.get(0).get("total");
        }
        String rankingSql6 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(total) AS sum , " +
                " patient_id, " +
                " activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+activityDO.getId()+"'"+buffer+" AND btpd1.sum >= (SELECT SUM(s.total) as total " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+activityId+"')" ;
        List<Map<String,Object>> rstotal6 = jdbcTemplate.queryForList(rankingSql6);
        Long count6 = 0L;
        if(rstotal6!=null&&rstotal6.size()>0){
            count6= (Long) rstotal6.get(0).get("total");
        }*/
        ActivityRuleDO activityRuleDO = activityRuleDao.selectByActivityId(activityId);
        JSONObject object = JSONObject.parseObject(activityRuleDO.getValue1());
        Integer type = object.getInteger("type");
        if (type == 2){
            jsonObject.put("activityTownCouponRanking",count4);//活动劵全区排名
            jsonObject.put("activityStreetCouponRanking",count3);//活动劵街道排名
            jsonObject.put("activityCouponRanking",count2);//活动劵的排名
            jsonObject.put("couponTotal",taskPatientDetailDO1.getCouponTotal());//本人活动劵总数
            jsonObject.put("couponRanking",patientDetailDOS1);//活动劵人数排名
            jsonObject.put("signCouponRanking",count7);//活动劵团队排名
            jsonObject.put("differTotal",total2-total3);//相距前一个差多少活动劵
        }else if (type ==1){
            jsonObject.put("IntegrateRanking",patientDetailDOS);
            jsonObject.put("activityStreetIntegrateRanking",count5);//积分街道排名
            jsonObject.put("total",taskPatientDetailDO1.getTotal());//本人总积分
            jsonObject.put("activityTownIntegrateRanking",count6);//积分全区排名
            jsonObject.put("activityRanking",count);//积分排名
            jsonObject.put("signRanking",count8);//积分团队排名
            jsonObject.put("differTotal",total-total1);//相距前一个差多少积分
        }
        jsonObject.put("type",type);//积分还是活动劵
        envelop.setObj(jsonObject);
        return envelop;
    }
}

+ 265 - 8
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/CreditsDetailService.java

@ -10,6 +10,7 @@ import com.yihu.jw.restmodel.web.MixEnvelop;
import com.yihu.jw.rm.health.bank.HealthBankMapping;
import com.yihu.jw.util.DateUtils;
import com.yihu.jw.util.ISqlUtils;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.mysql.query.BaseJpaService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -20,6 +21,7 @@ import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import javax.print.DocFlavor;
import javax.transaction.Transactional;
import java.text.ParseException;
import java.text.SimpleDateFormat;
@ -55,6 +57,8 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
    private StringRedisTemplate redisTemplate;
    @Autowired
    private ActiveRecordService activeRecordService;
    @Autowired
    private ActivityRuleDao activityRuleDao;
   /**
     *  find creditsLogInfo
@ -227,6 +231,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
                    AccountDO accountDO1 = new AccountDO();
                    accountDO1.setPatientId(creditsDetailDO.getPatientId());
                    accountDO1.setTotal(0);
                    accountDO1.setCouponTotal(0L);
                    accountDO1.setAccountName(creditsDetailDO.getName());
                    if(creditsDetailDO.getIdCard().length()>=4){// 判断是否长度大于等于4
                        String cardNumber=creditsDetailDO.getIdCard().substring(creditsDetailDO.getIdCard().length()- 4,creditsDetailDO.getIdCard().length());//截取两个数字之间的部分
@ -757,6 +762,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
                    accountDO1.setPatientId(creditsDetailDO.getPatientId());
                    accountDO1.setSaasId("dev");
                    accountDO1.setTotal(0);
                    accountDO1.setCouponTotal(0L);
                    accountDO1.setAccountName(creditsDetailDO.getName());
                    if(creditsDetailDO.getIdCard().length()>=4){// 判断是否长度大于等于4
                        String cardNumber=creditsDetailDO.getIdCard().substring(creditsDetailDO.getIdCard().length()- 4,creditsDetailDO.getIdCard().length());//截取两个数字之间的部分
@ -785,13 +791,64 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
                        "transaction_id = '"+creditsDetailDO.getTransactionId()+"' AND create_time > '"+DateUtils.getDayBegin() +"' AND" +
                        " create_time < '"+DateUtils.getDayEnd()+"'AND ISNULL(description)";
                List<CreditsDetailDO> creditsDetailDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(CreditsDetailDO.class));
                String step = redisTemplate.opsForValue().get(STEP);
                if (StringUtils.isEmpty(step)){
                    throw new Exception("获取步数失败!");
                ActivityRuleDO activityRuleDO = activityRuleDao.selectByActivityId(taskPatientDetailDO.getActivityId());
                if (activityRuleDO.getValue1() != null){
                    JSONObject object = JSONObject.parseObject(activityRuleDO.getValue1());
                    //获取步数
                    JSONArray array = object.getJSONArray("healthStep");
                    int j = array.size();
                    int z= 0;
                    for (int i = 0;i<=array.size();i++){
                        JSONObject jsonObject = array.getJSONObject(i);
                        Long step = jsonObject.getLong("step");
                        int integrate = jsonObject.getInteger("integrate");
                        if (creditsDetailDOS != null && creditsDetailDOS.size() != 0){
                            CreditsDetailDO creditsDetailDO1 = creditsDetailDOS.get(0);
                            TaskRuleDO taskRuleDO = taskRuleDao.findOne(taskDO.getRuleCode());
                            if (creditsDetailDO.getStepNumber()>0 && creditsDetailDO.getStepNumber()<=step){
                                int integrate1=creditsDetailDO1.getIntegrate();
                                creditsDetailDO1.setIntegrate(creditsDetailDO.getIntegrate());
                                creditsDetailDO1.setTradeDirection(1);
                                CreditsDetailDO creditsDetailDO2 = credittsLogDetailDao.save(creditsDetailDO1);
                                AccountDO accountDO = accountDao.findOne(creditsDetailDO2.getAccountId());
                                accountDO.setTotal(accountDO.getTotal()-integrate1+creditsDetailDO2.getIntegrate());
                                AccountDO accountDO1 = accountDao.save(accountDO);
                                creditsDetailDO2.setTotal(accountDO1.getTotal());
                                taskPatientDetailDO.setTotal(taskPatientDetailDO.getTotal()-integrate1+creditsDetailDO2.getIntegrate());
                                taskPatientDetailDao.save(taskPatientDetailDO);
                                creditsDetailDOS.clear();
                                creditsDetailDOS.add(creditsDetailDO2);
                                break;
                            }
                        }else {
                            CreditsDetailDO creditsDetailDO1 = new CreditsDetailDO();
                            if (creditsDetailDO.getStepNumber()>0 && creditsDetailDO.getStepNumber()<=step){
                                creditsDetailDO1.setIntegrate(creditsDetailDO.getIntegrate());
                                creditsDetailDO1.setTradeDirection(1);
                                creditsDetailDO1.setSaasId("dev");
                                creditsDetailDO1.setTradeType("ACTIVITY_TASK");
                                creditsDetailDO1.setPatientId(creditsDetailDO.getPatientId());
                                creditsDetailDO1.setHospital(creditsDetailDO.getHospital());
                                creditsDetailDO1.setHospitalName(creditsDetailDO.getHospitalName());
                                creditsDetailDO1.setAccountId(creditsDetailDO.getAccountId());
                                creditsDetailDO1.setStatus(1);
                                creditsDetailDO1.setCreateTime(new Date());
                                creditsDetailDO1.setUpdateTime(new Date());
                                creditsDetailDO1.setTransactionId(taskPatientDetailDO.getTaskId());
                                CreditsDetailDO creditsDetailDO2 = credittsLogDetailDao.save(creditsDetailDO1);
                                AccountDO accountDO = accountDao.findOne(creditsDetailDO2.getAccountId());
                                accountDO.setTotal(accountDO.getTotal()+creditsDetailDO2.getIntegrate());
                                taskPatientDetailDO.setTotal(taskPatientDetailDO.getTotal()+creditsDetailDO2.getIntegrate());
                                taskPatientDetailDao.save(taskPatientDetailDO);
                                creditsDetailDO2.setTotal(accountDO.getTotal());
                                creditsDetailDOS.add(creditsDetailDO2);
                                break;
                            }
                        }
                    }
                }
                JSONObject object = JSONObject.parseObject(step);
                int step1 = object.getInteger("step1");
                int step2 = object.getInteger("step2");
          /*  for (int i = 0;i<array.size();i++){
                JSONObject jsonObject = array.getJSONObject(i);
                if (creditsDetailDOS != null && creditsDetailDOS.size() != 0){
                    CreditsDetailDO creditsDetailDO1 = creditsDetailDOS.get(0);
                    TaskRuleDO taskRuleDO = taskRuleDao.findOne(taskDO.getRuleCode());
@ -832,7 +889,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
                            taskPatientDetailDao.save(taskPatientDetailDO);
                            creditsDetailDOS.clear();
                            creditsDetailDOS.add(creditsDetailDO2);
                        }/*else if(creditsDetailDO1.getIntegrate() == 3){
                        }*//*else if(creditsDetailDO1.getIntegrate() == 3){
                            creditsDetailDO1.setIntegrate(creditsDetailDO1.getIntegrate()+5);
                            creditsDetailDO1.setTradeDirection(1);
                            CreditsDetailDO creditsDetailDO2 = credittsLogDetailDao.save(creditsDetailDO1);
@ -844,7 +901,7 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
                            taskPatientDetailDao.save(taskPatientDetailDO);
                            creditsDetailDOS.clear();
                            creditsDetailDOS.add(creditsDetailDO2);
                        }*/
                        }*//*
                    }
                }else{
                    CreditsDetailDO creditsDetailDO1 = new CreditsDetailDO();
@ -875,7 +932,15 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
                    taskPatientDetailDao.save(taskPatientDetailDO);
                    creditsDetailDO2.setTotal(accountDO.getTotal());
                    creditsDetailDOS.add(creditsDetailDO2);
                }*/
              /*  String step = redisTemplate.opsForValue().get(STEP);
                if (StringUtils.isEmpty(step)){
                    throw new Exception("获取步数失败!");
                }
                JSONObject object = JSONObject.parseObject(step);
                int step1 = object.getInteger("step1");
                int step2 = object.getInteger("step2");
*/
                try{
                    activeRecordService.insert("dev",creditsDetailDOS.get(0).getTransactionId(),null,null,null,creditsDetailDOS.get(0).getPatientId());
                }catch (Exception e){
@ -1067,4 +1132,196 @@ public class CreditsDetailService extends BaseJpaService<CreditsDetailDO,Creditt
    }
    /**
     * 健康问答添加积分
     *
     * @param creditsDetailDO
     * @return
     * @throws Exception
     */
    public MixEnvelop<CreditsDetailDO,CreditsDetailDO> patientGetInteger(CreditsDetailDO creditsDetailDO) throws Exception {
        MixEnvelop<CreditsDetailDO,CreditsDetailDO> envelop = new MixEnvelop<>();
        TaskDO  taskDO = taskDao.selectById(creditsDetailDO.getTransactionId());
        ActivityRuleDO ruleDO = activityRuleDao.selectByActivityId(taskDO.getTransactionId());
        JSONObject object = JSONObject.parseObject(ruleDO.getValue1());
        Integer type = object.getInteger("type");
        AccountDO accountDO = accountDao.selectByPatientId(creditsDetailDO.getPatientId());
        creditsDetailDO.setUpdateTime(new Date());
        creditsDetailDO.setCreateTime(new Date());
        creditsDetailDO.setStatus(1);
        if (type == 2){
            creditsDetailDO.setCoupon(creditsDetailDO.getCoupon());
            creditsDetailDO.setIntegrate(null);
        }else if (type==1){
            creditsDetailDO.setIntegrate(creditsDetailDO.getCoupon());
            creditsDetailDO.setCoupon(null);
        }
        creditsDetailDO.setSaasId("dev");
        creditsDetailDO.setTradeType("ACTIVITY_TASK");
        creditsDetailDO.setTradeDirection(1);
        creditsDetailDO.setAccountId(accountDO.getId());
        CreditsDetailDO creditsDetailDO1 = credittsLogDetailDao.save(creditsDetailDO);
        if (creditsDetailDO1 == null){
            throw new Exception("积分添加失败!");
        }
        TaskPatientDetailDO patientDetailDO = taskPatientDetailDao.selectByTaskIdAndPatientId(creditsDetailDO.getTransactionId(),creditsDetailDO.getPatientId());
        patientDetailDO.setUpdateTime(new Date());
        patientDetailDO.setCreateTime(new Date());
        if (type == 2){
            patientDetailDO.setCouponTotal(patientDetailDO.getCouponTotal()+creditsDetailDO.getCoupon());
        }else if (type==1||type==3){
            patientDetailDO.setTotal(patientDetailDO.getTotal()+creditsDetailDO.getIntegrate());
        }
        patientDetailDO.setStatus(1);
        TaskPatientDetailDO taskPatientDetailDO = taskPatientDetailDao.save(patientDetailDO);
        if (taskPatientDetailDO == null){
            throw new Exception("修改活动状态和积分失败!");
        }
        if (type == 2){
            accountDO.setCouponTotal(accountDO.getCouponTotal()+creditsDetailDO.getCoupon());
        }else if (type==1||type==3){
            accountDO.setTotal(accountDO.getTotal()+creditsDetailDO.getIntegrate());
        }
        accountDO.setUpdateTime(new Date());
        AccountDO accountDO1 = accountDao.save(accountDO);
        if (accountDO1 == null){
            throw new Exception("修改银行账户积分失败!");
        }
        envelop.setObj(creditsDetailDO);
        return envelop;
    }
    /**
     * 健康问答--获取当日积分
     *
     * @param patient
     * @param transactionId
     * @return
     */
    public MixEnvelop<CreditsDetailDO,CreditsDetailDO> selectByDate(String patient,String transactionId){
        MixEnvelop<CreditsDetailDO,CreditsDetailDO> envelop = new MixEnvelop<>();
        String sql ="select * from wlyy_health_bank_credits_detail where patient_id = '"+patient+"' and " +
                "transaction_id = '"+transactionId+"' and create_time >='"+ DateUtils.getDayBegin()+"' and "  +
                "create_time <= '"+DateUtils.getDayEnd()+"'";
        List<CreditsDetailDO> creditsDetailDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(CreditsDetailDO.class));
        CreditsDetailDO creditsDetailDO = new CreditsDetailDO();
        if (creditsDetailDOS != null && creditsDetailDOS.size()!=0){
            creditsDetailDO = creditsDetailDOS.get(0);
        }
        TaskDO  taskDO = taskDao.selectById(transactionId);
        ActivityRuleDO ruleDO = activityRuleDao.selectByActivityId(taskDO.getTransactionId());
        //活动总积分排名
        String rankingSql1 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(total) AS sum , " +
                " patient_id, " +
                " activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+taskDO.getTransactionId()+"' AND btpd1.sum >= (SELECT SUM(s.total) as total " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+taskDO.getTransactionId()+"')" ;
        List<Map<String,Object>> rstotal1 = jdbcTemplate.queryForList(rankingSql1);
        Long count = 0L;
        if(rstotal1!=null&&rstotal1.size()>0){
            count = (Long) rstotal1.get(0).get("total");
        }
        //总活动劵的排名
        String rankingSql2 = "SELECT count(1)+1 AS total FROM (SELECT " +
                " SUM(coupon_total) AS sum , " +
                " patient_id, " +
                " activity_id " +
                "FROM " +
                " wlyy_health_bank_task_patient_detail " +
                "GROUP BY patient_id )btpd1 " +
                "WHERE " +
                " btpd1.activity_id = '"+taskDO.getTransactionId()+"' AND btpd1.sum >= (SELECT SUM(s.coupon_total) as couponTotal " +
                "FROM  wlyy_health_bank_task_patient_detail s WHERE s.patient_id ='"+patient+"' AND  s.activity_id='"+taskDO.getTransactionId()+"')" ;
        List<Map<String,Object>> rstotal2 = jdbcTemplate.queryForList(rankingSql2);
        Long count2 = 0L;
        if(rstotal2!=null&&rstotal2.size()>0){
            count2 = (Long) rstotal2.get(0).get("total");
        }
        JSONObject object = JSONObject.parseObject(ruleDO.getValue1());
        Integer type = object.getInteger("type");
        if (type == 2){
            creditsDetailDO.setActivityRanking(count2);
            creditsDetailDO.setMark(1);
        }else if (type==1||type==3){
            creditsDetailDO.setActivityRanking(count);
            creditsDetailDO.setMark(2);
        }
        envelop.setObj(creditsDetailDO);
        return envelop;
    }
    /**
     * 分享获取积分
     *
     * @param creditsDetailDO
     * @return
     */
    public MixEnvelop<CreditsDetailDO, CreditsDetailDO> shareIntegrate(CreditsDetailDO creditsDetailDO) {
        try {
            synchronized (creditsDetailDO.getPatientId()) {
                String sqlAccount = "select * from wlyy_health_bank_account ba where ba.patient_id = '" + creditsDetailDO.getPatientId() + "'";
                List<AccountDO> accountDOList = jdbcTemplate.query(sqlAccount, new BeanPropertyRowMapper(AccountDO.class));
                if (accountDOList != null && accountDOList.size() != 0) {
                    creditsDetailDO.setAccountId(accountDOList.get(0).getId());
                }
                String creditsSql = "select * from wlyy_health_bank_credits_detail where patient_id = '" + creditsDetailDO.getPatientId() + "' and description = '分享'";
                List<CreditsDetailDO> creditsDetailDOS1 = jdbcTemplate.query(creditsSql, new BeanPropertyRowMapper(CreditsDetailDO.class));
                List<CreditsDetailDO> creditsDetailDOList = new ArrayList<>();
                MixEnvelop<CreditsDetailDO, CreditsDetailDO> envelop = new MixEnvelop<>();
                if (creditsDetailDOS1 == null || creditsDetailDOS1.size() == 0) {
                    creditsDetailDO.setTradeType("ACTIVITY_TASK");
                    creditsDetailDO.setDescription("分享");
                    creditsDetailDO.setSaasId("dev");
                    creditsDetailDO.setStatus(1);
                    creditsDetailDO.setTransactionId(creditsDetailDO.getTransactionId());
                    creditsDetailDO.setCreateTime(new Date());
                    creditsDetailDO.setUpdateTime(new Date());
                    creditsDetailDO.setTradeDirection(1);
                    CreditsDetailDO creditsDetailDO1 = credittsLogDetailDao.save(creditsDetailDO);
                    creditsDetailDO1.setFlag("1");
                    creditsDetailDOList.add(creditsDetailDO1);
                    TaskPatientDetailDO taskPatientDetailDO = new TaskPatientDetailDO();
                    taskPatientDetailDO.setPatientId(creditsDetailDO1.getPatientId());
                    taskPatientDetailDO.setTaskId(creditsDetailDO1.getTransactionId());
                    String taskSql1 = ISqlUtils.getAllSql(taskPatientDetailDO);
                    List<TaskPatientDetailDO> taskPatientDetailDOS1 = jdbcTemplate.query(taskSql1, new BeanPropertyRowMapper(TaskPatientDetailDO.class));
                    TaskPatientDetailDO taskPatientDetailDO1 = taskPatientDetailDOS1.get(0);
                    if (creditsDetailDO1.getTradeDirection() == 1) {
                        taskPatientDetailDO1.setTotal(taskPatientDetailDO1.getTotal() + creditsDetailDO1.getIntegrate());
                    } else if (creditsDetailDO.getTradeDirection() == -1) {
                        taskPatientDetailDO1.setTotal(taskPatientDetailDO1.getTotal() - creditsDetailDO1.getIntegrate());
                    }
                    taskPatientDetailDao.save(taskPatientDetailDO1);
                    AccountDO accountDO = accountDao.findOne(creditsDetailDO1.getAccountId());
                    if (creditsDetailDO1.getTradeDirection() == 1) {
                        accountDO.setTotal(accountDO.getTotal() + creditsDetailDO1.getIntegrate());
                    } else if (creditsDetailDO.getTradeDirection() == -1) {
                        accountDO.setTotal(accountDO.getTotal() - creditsDetailDO1.getIntegrate());
                    }
                    accountDao.save(accountDO);
                    envelop.setDetailModelList(creditsDetailDOList);
                }else {
                    for (CreditsDetailDO creditsDetailDO1:creditsDetailDOS1){
                        creditsDetailDO1.setFlag("2");
                        creditsDetailDOList.add(creditsDetailDO1);
                    }
                    envelop.setDetailModelList(creditsDetailDOList);
                }
                return envelop;
            }
        } catch (Exception e) {
            e.printStackTrace();
            MixEnvelop<CreditsDetailDO, CreditsDetailDO> envelop = new MixEnvelop<>();
            return envelop;
        }
    }
}

+ 64 - 31
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/ExchangeGoodsService.java

@ -2,11 +2,9 @@ package com.yihu.jw.service;/**
 * Created by nature of king on 2018/5/3.
 */
import com.yihu.jw.dao.CredittsLogDetailDao;
import com.yihu.jw.dao.ExchangeGoodsDao;
import com.yihu.jw.dao.GoodsDao;
import com.yihu.jw.entity.health.bank.ExchangeGoodsDO;
import com.yihu.jw.entity.health.bank.GoodsDO;
import com.netflix.discovery.converters.jackson.EurekaXmlJacksonCodec;
import com.yihu.jw.dao.*;
import com.yihu.jw.entity.health.bank.*;
import com.yihu.jw.restmodel.web.MixEnvelop;
import com.yihu.jw.rm.health.bank.HealthBankMapping;
import com.yihu.jw.util.ISqlUtils;
@ -19,6 +17,7 @@ import org.springframework.stereotype.Service;
import javax.transaction.Transactional;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -39,36 +38,67 @@ public class ExchangeGoodsService extends BaseJpaService<ExchangeGoodsDO,Exchang
    private CredittsLogDetailDao credittsLogDetailDao;
    @Autowired
    private GoodsDao goodsDao;
    @Autowired
    private TaskGoodsDao taskGoodsDao;
    @Autowired
    private TaskPatientDetailDao taskPatientDetailDao;
    @Autowired
    private AccountDao accountDao;
  /*  *//**
    /**
     * exchange goods
     *
     * @param exchangeGoodsDO
     * @return
     *//*
    public Envelop<Boolean> insert(ExchangeGoodsDO exchangeGoodsDO){
        GoodsDO goodsDO = goodsDao.findOne(exchangeGoodsDO.getGoodsId());
        exchangeGoodsDO.setIntegrate(goodsDO.getRequireIntegrate());
        exchangeGoodsDao.save(exchangeGoodsDO);
        String sql = "select cl.status as status,cl.total as total from health_bank_credits_log cl order by cl.update_time desc";
        List<CreditsDetailDO> creditsLogDetailDOList = jdbcTemplate.query(sql,new BeanPropertyRowMapper(CreditsDetailDO.class));
        CreditsDetailDO creditsLogDetailDO = new CreditsDetailDO();
        if (creditsLogDetailDOList == null || creditsLogDetailDOList.size() ==0){
            creditsLogDetailDO.setTotal(Long.parseLong(goodsDO.getRequireIntegrate()));
        }else {
            creditsLogDetailDO.setTotal(creditsLogDetailDOList.get(0).getTotal()-Long.parseLong(goodsDO.getRequireIntegrate()));
        }
        creditsLogDetailDO.setPatientId(exchangeGoodsDO.getPatientId());
        creditsLogDetailDO.setIntegrate("-"+exchangeGoodsDO.getIntegrate());
        creditsLogDetailDO.setIntegrateType("EXCHANGE_GOODS");
        creditsLogDetailDO.setIntegrateId(exchangeGoodsDO.getGoodsId());
        creditsLogDetailDO.setStatus("used");
        creditsLogDetailDO.setCommunity(goodsDO.getCommunity());
        credittsLogDetailDao.save(creditsLogDetailDO);
        Envelop<Boolean> envelop = new Envelop<>();
        envelop.setObj(true);
        return envelop;
    }*/
     */
    public MixEnvelop<ExchangeGoodsDO,ExchangeGoodsDO> insert(ExchangeGoodsDO exchangeGoodsDO) throws Exception {
       MixEnvelop<ExchangeGoodsDO,ExchangeGoodsDO> envelop = new MixEnvelop<>();
       TaskGoodsDO taskGoodsDO = taskGoodsDao.selectById(exchangeGoodsDO.getActivityGoodsId());
       AccountDO accountDO = accountDao.selectByPatientId(exchangeGoodsDO.getPatientId());
       TaskPatientDetailDO taskPatientDetailDO = taskPatientDetailDao.selectByActivityIdAndPatientId(taskGoodsDO.getActivityId(),exchangeGoodsDO.getPatientId());
       if (taskPatientDetailDO.getTotal() != 0 && taskPatientDetailDO.getTotal() != null&&exchangeGoodsDO.getIntegrate()!=null){
           if (taskPatientDetailDO.getTotal() < exchangeGoodsDO.getIntegrate()){
               throw new Exception("积分余额不足!");
           }else {
               taskPatientDetailDO.setTotal(taskPatientDetailDO.getTotal() - exchangeGoodsDO.getIntegrate());
           }
       }
       if (taskPatientDetailDO.getCouponTotal() !=0 && taskPatientDetailDO.getCouponTotal() != null && exchangeGoodsDO.getCoupon() !=null){
           if (taskPatientDetailDO.getCouponTotal() < exchangeGoodsDO.getCoupon()){
               throw new Exception("活动劵余额不足!");
           }else {
               taskPatientDetailDO.setCouponTotal(taskPatientDetailDO.getCouponTotal() - exchangeGoodsDO.getCoupon());
           }
       }
       if (exchangeGoodsDO.getCoupon() == null){
           accountDO.setTotal(accountDO.getTotal()-exchangeGoodsDO.getIntegrate());
       }else if (exchangeGoodsDO.getIntegrate() == null){
           accountDO.setCouponTotal(accountDO.getCouponTotal()-exchangeGoodsDO.getCoupon());
       }
       exchangeGoodsDO.setCreateTime(new Date());
       exchangeGoodsDO.setUpdateTime(new Date());
       exchangeGoodsDO.setSaasId("dev");
       exchangeGoodsDO.setStatus(1);
       exchangeGoodsDO = exchangeGoodsDao.save(exchangeGoodsDO);
       envelop.setObj(exchangeGoodsDO);
       CreditsDetailDO creditsDetailDO = new CreditsDetailDO();
       creditsDetailDO.setCoupon(exchangeGoodsDO.getCoupon());
       creditsDetailDO.setIntegrate(exchangeGoodsDO.getIntegrate());
       creditsDetailDO.setSaasId("dev");
       creditsDetailDO.setAccountId(accountDO.getId());
       creditsDetailDO.setTradeDirection(-1);
       creditsDetailDO.setStatus(1);
       creditsDetailDO.setTradeType("EXCHANGE_GOODS");
       creditsDetailDO.setIdCard(accountDO.getIdCard());
       creditsDetailDO.setHospital(exchangeGoodsDO.getHospital());
       creditsDetailDO.setHospitalName(exchangeGoodsDO.getHospitalName());
       creditsDetailDO.setTransactionId(exchangeGoodsDO.getId());
       creditsDetailDO.setPatientId(exchangeGoodsDO.getPatientId());
       credittsLogDetailDao.save(creditsDetailDO);
       taskPatientDetailDao.save(taskPatientDetailDO);
       accountDao.save(accountDO);
       return envelop;
    }
    /**
     * find exchange goods info
@ -84,7 +114,7 @@ public class ExchangeGoodsService extends BaseJpaService<ExchangeGoodsDO,Exchang
        List<ExchangeGoodsDO> exchangeGoodsDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(ExchangeGoodsDO.class));
        List<ExchangeGoodsDO> exchangeGoodsDOList = new ArrayList<>();
        for (ExchangeGoodsDO exchangeGoodsDO1:exchangeGoodsDOS){
            GoodsDO goodsDO = goodsDao.findOne(exchangeGoodsDO1.getGoodsId());
            GoodsDO goodsDO = goodsDao.findOne(exchangeGoodsDO1.getActivityGoodsId());
            exchangeGoodsDO1.setGoodsDO(goodsDO);
            exchangeGoodsDOList.add(exchangeGoodsDO1);
        }
@ -96,4 +126,7 @@ public class ExchangeGoodsService extends BaseJpaService<ExchangeGoodsDO,Exchang
        }
        return MixEnvelop.getSuccessListWithPage(HealthBankMapping.api_success,exchangeGoodsDOList,page,size,count);
    }
}

+ 1 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/TaskDetailService.java

@ -37,6 +37,7 @@ public class TaskDetailService extends BaseJpaService<TaskPatientDetailDO,TaskPa
     * @return
     */
    public MixEnvelop<Boolean, Boolean> insert(TaskPatientDetailDO taskPatientDetailDO){
        taskPatientDetailDO.setCouponTotal(0L);
        taskPatientDetailDao.save(taskPatientDetailDO);
        MixEnvelop<Boolean, Boolean> envelop = new MixEnvelop<>();
        envelop.setObj(true);

+ 3 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/TaskGoodsService.java

@ -3,6 +3,7 @@ package com.yihu.jw.service;/**
 */
import com.yihu.jw.dao.TaskGoodsDao;
import com.yihu.jw.entity.health.bank.ExchangeGoodsDO;
import com.yihu.jw.entity.health.bank.TaskGoodsDO;
import com.yihu.jw.restmodel.web.MixEnvelop;
import com.yihu.jw.rm.health.bank.HealthBankMapping;
@ -82,4 +83,6 @@ public class TaskGoodsService extends BaseJpaService<TaskGoodsDO,TaskGoodsDao> {
        envelop.setObj(true);
        return envelop;
    }
}

+ 23 - 4
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/service/TaskPatientDtailService.java

@ -6,10 +6,7 @@ import com.yihu.jw.dao.AccountDao;
import com.yihu.jw.dao.ActivityDao;
import com.yihu.jw.dao.TaskDao;
import com.yihu.jw.dao.TaskPatientDetailDao;
import com.yihu.jw.entity.health.bank.AccountDO;
import com.yihu.jw.entity.health.bank.TaskDO;
import com.yihu.jw.entity.health.bank.TaskPatientDetailDO;
import com.yihu.jw.entity.health.bank.TaskRangDO;
import com.yihu.jw.entity.health.bank.*;
import com.yihu.jw.restmodel.web.MixEnvelop;
import com.yihu.jw.rm.health.bank.HealthBankMapping;
import com.yihu.jw.util.ISqlUtils;
@ -92,6 +89,7 @@ public class TaskPatientDtailService extends BaseJpaService<TaskPatientDetailDO,
            }
            accountDO.setAccountName(taskPatientDetailDO.getName());
            accountDO.setTotal(0);
            accountDO.setCouponTotal(0L);
            accountDO.setPatientId(taskPatientDetailDO.getPatientId());
            accountDO.setCardNumber(taskPatientDetailDO.getPatientIdcard());
            accountDO.setHospital(taskPatientDetailDO.getHospital());
@ -117,6 +115,7 @@ public class TaskPatientDtailService extends BaseJpaService<TaskPatientDetailDO,
        for (TaskDO taskDO : taskDOList){
            taskPatientDetailDO.setTotal(Long.parseLong("0"));
            taskPatientDetailDO.setTaskId(taskDO.getId());
            taskPatientDetailDO.setCouponTotal(0L);
            taskPatientDetailDao.save(taskPatientDetailDO);
        }
        envelop.setObj(true);
@ -157,4 +156,24 @@ public class TaskPatientDtailService extends BaseJpaService<TaskPatientDetailDO,
        logger.info("参与信息:"+taskPatientDetailDOS);
        return taskPatientDetailDOS.get(0);
    }
    /**
     * 获取参与详情
     *
     * @param page
     * @param size
     * @return
     */
    public List<TaskPatientDetailDO> select(Integer page,Integer size){
        String sql ="SELECT * FROM `wlyy_health_bank_task_patient_detail` btpd " +
                "GROUP BY btpd.activity_id, btpd.patient_id ORDER BY btpd.create_time limit "+(page-1)*size+","+size;
        List<TaskPatientDetailDO> taskPatientDetailDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper<>(TaskPatientDetailDO.class));
        for (TaskPatientDetailDO taskPatientDetailDO : taskPatientDetailDOS){
            ActivityDO activityDO = activityDao.selectById(taskPatientDetailDO.getActivityId());
            taskPatientDetailDO.setActivityDO(activityDO);
        }
        return taskPatientDetailDOS;
    }
}

+ 29 - 0
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/util/DateUtils.java

@ -4,6 +4,7 @@ package com.yihu.jw.util;/**
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
/**
@ -56,4 +57,32 @@ public  class DateUtils {
        }
        return null;
    }
    /**
     * 获取两天时间相差的
     *
     * @param endDate
     * @param nowDate
     * @return
     */
    public static String getDatePoor(Date endDate, Date nowDate) {
        long nd = 1000 * 24 * 60 * 60;
        long nh = 1000 * 60 * 60;
        long nm = 1000 * 60;
        long diff = endDate.getTime() - nowDate.getTime();
        long day = diff / nd;//计算相差多少天
        long hour = diff % nd / nh;//计算相差多少小时
        long min = diff % nd % nh / nm;//计算相差多少分钟
        return day+"h "+hour+" h"+min+" m";
    }
}

+ 9 - 1
svr/svr-wlyy-health-bank/src/main/java/com/yihu/jw/util/ISqlUtils.java

@ -32,6 +32,7 @@ public class ISqlUtils {
        if (object1.getString("id") !=null){
            sb.append(" and id = '" + object1.getString("id")+"' ");
        }
        Boolean flag = false;
        Field[] fArray= c.getDeclaredFields();
        for(Field f:fArray){
                //拿到字段后与实体类中的属性匹配,并得到其get方法,用来获取他的属性值
@ -40,6 +41,9 @@ public class ISqlUtils {
                if(isCExist){
                    Column mc =f.getAnnotation(Column.class);
                    String columeName =mc.name();  //字段对应数据库名字
                    if (columeName.equals("recommended")){
                        flag = true;
                    }
                    String name =f.getName();       //字段名字
                    Class a= f.getType();          //字段类型
                    Object value=null;              //字段值
@ -83,7 +87,11 @@ public class ISqlUtils {
            sb.append(" and end_time <= '"+endTime+"'");
        }
        if(isFlag.equalsIgnoreCase("*")){
            sb.append(" ORDER BY create_time DESC ").append("LIMIT ").append((page-1)*size+",").append(size);
            if (flag){
                sb.append(" ORDER BY  recommended DESC ").append("LIMIT ").append((page-1)*size+",").append(size);
            }else {
                sb.append(" ORDER BY create_time DESC ").append("LIMIT ").append((page-1)*size+",").append(size);
            }
        }
        return sb.toString();
    }

+ 2 - 2
svr/svr-wlyy-health-bank/src/main/resources/application.yml

@ -86,8 +86,8 @@ spring:
  profiles: jwtest
  datasource:
    url: jdbc:mysql://172.17.110.160:3306/wlyy_health_bank?useUnicode=true&amp;characterEncoding=utf-8&amp;autoReconnect=true
    username: ssgg
    password: ssgg
    username: linzhou
    password: linzhou
  redis:
    host: 172.19.103.88 # Redis server host.
    port: 6379 # Redis server port.