Переглянути джерело

修改居民健康管理平台健康银行列表和搜索功能,以及在任务管理添加搜索任务积分规则功能

humingfen 7 роки тому
батько
коміт
6671fc55d3

+ 7 - 2
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/controller/manager/healthbank/ActivityController.java

@ -1,12 +1,13 @@
package com.yihu.wlyy.controller.manager.healthbank;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.yihu.wlyy.controller.BaseController;
import com.yihu.wlyy.entity.healthbank.ActivityDO;
import com.yihu.wlyy.service.manager.healthbank.ActivityService;
import com.yihu.wlyy.util.fastdfs.FastDFSUtil;
import io.swagger.annotations.ApiParam;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@ -20,6 +21,7 @@ import org.springframework.web.multipart.MultipartHttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import java.io.InputStream;
import java.util.List;
import java.util.Map;
/**
@ -61,7 +63,10 @@ public class ActivityController extends BaseController {
            @RequestParam(value = "page",required = false) Integer page,
            @RequestParam(value = "rows",required = false) Integer pageSize){
        try{
            return write(200,"操作成功","detailModelList",activityService.searchList(activity, page, pageSize).get("detailModelList"));
            JSONObject jsonObject = activityService.searchList(activity, page, pageSize);
            String totalCount = String.valueOf(jsonObject.get("totalCount"));
            Long total = Long.parseLong(totalCount);
            return write(200,"操作成功",page,pageSize,total,(List<ActivityDO>)jsonObject.get("detailModelList"));
        }catch (Exception ex){
            error(ex);
            return error(-1,"操作失败!");

+ 8 - 2
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/controller/manager/healthbank/TaskController.java

@ -1,6 +1,8 @@
package com.yihu.wlyy.controller.manager.healthbank;
import com.alibaba.fastjson.JSONObject;
import com.yihu.wlyy.controller.BaseController;
import com.yihu.wlyy.entity.healthbank.TaskDO;
import com.yihu.wlyy.service.manager.healthbank.TaskService;
import net.sf.json.JSONArray;
import org.springframework.beans.factory.annotation.Autowired;
@ -10,6 +12,8 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
/**
 * Created by humingfen on 2018/6/21.
 * 健康任务管理
@ -45,8 +49,10 @@ public class TaskController extends BaseController {
            @RequestParam(value = "page",required = false) Integer page,
            @RequestParam(value = "rows",required = false) Integer pageSize){
        try{
            return write(200,"操作成功","detailModelList",taskService.searchList(task, page, pageSize).get("detailModelList"));
//            return write(200,"操作成功");
            JSONObject jsonObject = taskService.searchList(task, page, pageSize);
            String totalCount = String.valueOf(jsonObject.get("totalCount"));
            Long total = Long.parseLong(totalCount);
            return write(200,"操作成功",page,pageSize,total,(List<TaskDO>)jsonObject.get("detailModelList"));
        }catch (Exception ex){
            error(ex);
            return error(-1,"操作失败!");

+ 32 - 2
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/controller/manager/healthbank/TaskRuleController.java

@ -1,8 +1,11 @@
package com.yihu.wlyy.controller.manager.healthbank;
import com.alibaba.fastjson.JSONObject;
import com.yihu.wlyy.controller.BaseController;
import com.yihu.wlyy.entity.healthbank.TaskRuleDO;
import com.yihu.wlyy.service.manager.healthbank.TaskRuleService;
import net.sf.json.JSONArray;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@ -10,6 +13,8 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
/**
 * Created by humingfen on 2018/6/22.
 * 健康任务规则管理
@ -41,12 +46,37 @@ public class TaskRuleController extends BaseController {
    @RequestMapping(value ="list",method = RequestMethod.POST)
    @ResponseBody
    public String searchList(
            @RequestParam(value = "q", required = false) String name,
            @RequestParam(name = "taskRule") String taskRule,
            @RequestParam(value = "page",required = false) Integer page,
            @RequestParam(value = "rows",required = false) Integer pageSize){
        try{
            if(StringUtils.isNotBlank(name)){
                taskRule = taskRule.replace("}",",\"name\":"+name+"}");
            }
            JSONObject jsonObject = taskRuleService.searchList(taskRule, page, pageSize);
            String totalCount = String.valueOf(jsonObject.get("totalCount"));
            Long total = Long.parseLong(totalCount);
            return write(200,"操作成功",page,pageSize,total,(List<TaskRuleDO>)jsonObject.get("detailModelList"));
        }catch (Exception ex){
            error(ex);
            return error(-1,"操作失败!");
        }
    }
    @RequestMapping(value ="list",method = RequestMethod.GET)
    @ResponseBody
    public String list(
            @RequestParam(value = "q", required = false) String name,
            @RequestParam(name = "taskRule") String taskRule,
            @RequestParam(value = "page",required = false) Integer page,
            @RequestParam(value = "rows",required = false) Integer pageSize){
        try{
            return write(200,"操作成功","detailModelList",taskRuleService.searchList(taskRule, page, pageSize).get("detailModelList"));
//            return write(200,"操作成功");
            if(StringUtils.isNotBlank(name)){
                taskRule = taskRule.replace("}",",\"name\":"+name+"}");
            }
            JSONObject jsonObject = taskRuleService.searchList(taskRule, page, pageSize);
            return write(200,"操作成功","detailModelList",jsonObject.get("detailModelList"));
        }catch (Exception ex){
            error(ex);
            return error(-1,"操作失败!");

+ 102 - 0
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/entity/IdEntityWithOperation.java

@ -0,0 +1,102 @@
package com.yihu.wlyy.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.data.annotation.CreatedBy;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.LastModifiedBy;
import org.springframework.data.annotation.LastModifiedDate;
import org.springframework.data.jpa.domain.support.AuditingEntityListener;
import javax.persistence.Column;
import javax.persistence.EntityListeners;
import javax.persistence.MappedSuperclass;
import java.util.Date;
/**
 * 统一定义id的entity基类.
 * 主键生成策略是UUID
 * 还包含业务表用的 创建人,创建时间 创建人名  修改人,修改时间 修改人名
 * @author calvin
 */
// JPA 基类的标识
@MappedSuperclass
@EntityListeners(AuditingEntityListener.class)
public abstract class IdEntityWithOperation extends IdEntity{
    @CreatedDate
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    @Column(name = "create_time", nullable = false, length = 0,updatable = false)
    protected Date createTime;
    @CreatedBy
    @Column(name = "create_user",updatable = false)
    protected String createUser;
    @CreatedBy
    @Column(name = "create_user_name",updatable = false)
    protected String createUserName;
    @LastModifiedDate
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    @Column(name = "update_time", nullable = false, length = 0)
    protected Date updateTime;
    @LastModifiedBy
    @Column(name = "update_user")
    protected String updateUser;
    @LastModifiedBy
    @Column(name = "update_user_name")
    protected String updateUserName;
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getCreateUser() {
        return createUser;
    }
    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }
    public String getCreateUserName() {
        return createUserName;
    }
    public void setCreateUserName(String createUserName) {
        this.createUserName = createUserName;
    }
    public Date getUpdateTime() {
        return updateTime;
    }
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    public String getUpdateUser() {
        return updateUser;
    }
    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }
    public String getUpdateUserName() {
        return updateUserName;
    }
    public void setUpdateUserName(String updateUserName) {
        this.updateUserName = updateUserName;
    }
}

+ 248 - 0
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/entity/healthbank/AccountDO.java

@ -0,0 +1,248 @@
package com.yihu.wlyy.entity.healthbank;
import com.yihu.wlyy.entity.IdEntityWithOperation;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
/**
 * Created by wang zhinan on 2018/4/26.
 */
@Entity
@Table(name = "wlyy_health_bank_account")
public class AccountDO extends IdEntityWithOperation implements Serializable {
    @Column(name = "saas_id")
    private String saasId; //saasId
    @Column(name = "patient_id")
    private String patientId;//居民id
    @Column(name = "account_name")
    private String accountName;//账户名
    @Column(name = "total")
    private Integer total;//积分总数
    @Column(name = "password")
    private String password;//密码
    @Column(name = "card_number")
    private String cardNumber;//卡号
    @Column(name = "hospital_name")
    private String hospitalName;//社区名字
    @Column(name = "hospital")
    private String hospital;//社区
    @Column(name = "status")
    private Integer status;//状态(1有效,-1失效)
    @Transient
    private String idCard;//身份证号码
    @Transient
    private Long sum;//总积分(已用积分和剩余积分)
    @Transient
    private Integer usedTotal;//已用积分
    @Transient
    private Long nowTotal;//今日获取积分
    @Transient
    private Long activityTotal;//参与活动数;
    @Transient
    private Long taskTotal;//参与任务数;
    @Transient
    private Integer teamRanking;//团队排名
    @Transient
    private Integer cityRanking;//全市排名
   /* @Transient
    private List<String> patientIds;//团队居民id*/
    @Transient
    private String taskId;//任务id
    @Transient
    private Long activityRanking;//活动排名
    @Transient
    private Long activityIntegrate;//活动积分
    public String getSaasId() {
        return saasId;
    }
    public void setSaasId(String saasId) {
        this.saasId = saasId;
    }
    public String getPatientId() {
        return patientId;
    }
    public void setPatientId(String patientId) {
        this.patientId = patientId;
    }
    public String getAccountName() {
        return accountName;
    }
    public void setAccountName(String accountName) {
        this.accountName = accountName;
    }
    public Integer getTotal() {
        return total;
    }
    public void setTotal(Integer total) {
        this.total = total;
    }
    public String getHospital() {
        return hospital;
    }
    public void setHospital(String hospital) {
        this.hospital = hospital;
    }
    public Integer getUsedTotal() {
        return usedTotal;
    }
    public void setUsedTotal(Integer usedTotal) {
        this.usedTotal = usedTotal;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public String getCardNumber() {
        return cardNumber;
    }
    public void setCardNumber(String cardNumber) {
        this.cardNumber = cardNumber;
    }
    public String getHospitalName() {
        return hospitalName;
    }
    public void setHospitalName(String hospitalName) {
        this.hospitalName = hospitalName;
    }
    public Long getSum() {
        return sum;
    }
    public void setSum(Long sum) {
        this.sum = sum;
    }
    public Long getNowTotal() {
        return nowTotal;
    }
    public void setNowTotal(Long nowTotal) {
        this.nowTotal = nowTotal;
    }
    public Long getActivityTotal() {
        return activityTotal;
    }
    public void setActivityTotal(Long activityTotal) {
        this.activityTotal = activityTotal;
    }
    public Long getTaskTotal() {
        return taskTotal;
    }
    public void setTaskTotal(Long taskTotal) {
        this.taskTotal = taskTotal;
    }
    public Integer getTeamRanking() {
        return teamRanking;
    }
    public void setTeamRanking(Integer teamRanking) {
        this.teamRanking = teamRanking;
    }
    public Integer getCityRanking() {
        return cityRanking;
    }
    public void setCityRanking(Integer cityRanking) {
        this.cityRanking = cityRanking;
    }
    /*public List<String> getPatientIds() {
        return patientIds;
    }
    public void setPatientIds(List<String> patientIds) {
        this.patientIds = patientIds;
    }*/
    public String getTaskId() {
        return taskId;
    }
    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }
    public Long getActivityRanking() {
        return activityRanking;
    }
    public void setActivityRanking(Long activityRanking) {
        this.activityRanking = activityRanking;
    }
    public Long getActivityIntegrate() {
        return activityIntegrate;
    }
    public void setActivityIntegrate(Long activityIntegrate) {
        this.activityIntegrate = activityIntegrate;
    }
    public String getIdCard() {
        return idCard;
    }
    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
}

+ 278 - 0
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/entity/healthbank/ActivityDO.java

@ -0,0 +1,278 @@
package com.yihu.wlyy.entity.healthbank;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.wlyy.entity.IdEntityWithOperation;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.Date;
/**
 * Created by wang zhinan on 2018/4/26.
 */
@Entity
@Table(name = "wlyy_health_bank_activity")
public class ActivityDO extends IdEntityWithOperation implements Serializable {
    @Column(name = "saas_id")
    private String saasId;//saasId
    @Column(name = "organizer")
    private String organizer; // 主办方&&发布机构
    @Column(name = "title")
    private String title;//活动标题
    @Column(name = "description")
    private String description;//活动说明
    @Column(name = "location")
    private String location;//活动地点
    @Column(name = "img")
    private String img;//活动图片
    @Column(name = "start_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    private Date startTime;//开始时间
    @Column(name = "end_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    private Date endTime; //结束时间
    @Column(name = "status")
    private Integer status;//状态(1代表有效,0代表无效,-1代表过期)
    @Column(name = "is_flag")
    private Integer isFlag;//标识是否有问卷(1:有,-1:没有)
    @Column(name = "area")
    private String area;//区域
    @Column(name = "area_type")
    private Integer areaType; //区域类型
    @Column(name = "remark")
    private String remark;//活动备注
    @Column(name = "type")
    private String type;//活动类型
    @Transient
    private String patientId;//居民id
    @Transient
    private String openId;//微信编码
    @Transient
    private String unionId;
    @Transient
    private String patientIdcard;//身份证号
    @Transient
    private Long total;//参加总数
    @Transient
    private Integer activityRanking;//活动中的排名
   /* @Transient
    private List<TaskPatientDetailDO> taskPatientDetailDOS;//参与活动详情
*/
   /* @Transient
    private List<TaskDO> taskDOS;//活动任务列表*/
    @Transient
    private Long sum;//活动积分总数
    public String getSaasId() {
        return saasId;
    }
    public void setSaasId(String saasId) {
        this.saasId = saasId;
    }
    public String getOrganizer() {
        return organizer;
    }
    public void setOrganizer(String organizer) {
        this.organizer = organizer;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public String getDescription() {
        return description;
    }
    public void setDescription(String description) {
        this.description = description;
    }
    public String getLocation() {
        return location;
    }
    public void setLocation(String location) {
        this.location = location;
    }
    public String getImg() {
        return img;
    }
    public void setImg(String img) {
        this.img = img;
    }
    public Date getStartTime() {
        return startTime;
    }
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    public Integer getIsFlag() {
        return isFlag;
    }
    public void setIsFlag(Integer isFlag) {
        this.isFlag = isFlag;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public String getArea() {
        return area;
    }
    public void setArea(String area) {
        this.area = area;
    }
    public Integer getAreaType() {
        return areaType;
    }
    public void setAreaType(Integer areaType) {
        this.areaType = areaType;
    }
    public String getOpenId() {
        return openId;
    }
    public void setOpenId(String openId) {
        this.openId = openId;
    }
    public String getPatientId() {
        return patientId;
    }
    public void setPatientId(String patientId) {
        this.patientId = patientId;
    }
    public Long getTotal() {
        return total;
    }
    public void setTotal(Long total) {
        this.total = total;
    }
    public String getType() {
        return type;
    }
    public void setType(String type) {
        this.type = type;
    }
    /*public List<TaskPatientDetailDO> getTaskPatientDetailDOS() {
        return taskPatientDetailDOS;
    }
    public void setTaskPatientDetailDOS(List<TaskPatientDetailDO> taskPatientDetailDOS) {
        this.taskPatientDetailDOS = taskPatientDetailDOS;
    }*/
    public String getUnionId() {
        return unionId;
    }
    public void setUnionId(String unionId) {
        this.unionId = unionId;
    }
    public String getPatientIdcard() {
        return patientIdcard;
    }
    public void setPatientIdcard(String patientIdcard) {
        this.patientIdcard = patientIdcard;
    }
    public Integer getActivityRanking() {
        return activityRanking;
    }
    public void setActivityRanking(Integer activityRanking) {
        this.activityRanking = activityRanking;
    }
    public Long getSum() {
        return sum;
    }
    public void setSum(Long sum) {
        this.sum = sum;
    }
    /*public List<TaskDO> getTaskDOS() {
        return taskDOS;
    }
    public void setTaskDOS(List<TaskDO> taskDOS) {
        this.taskDOS = taskDOS;
    }*/
}

+ 194 - 0
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/entity/healthbank/TaskDO.java

@ -0,0 +1,194 @@
package com.yihu.wlyy.entity.healthbank;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.wlyy.entity.IdEntityWithOperation;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.Date;
/**
 * Created by wamg zhinan 2018/4/27.
 */
@Entity
@Table(name = "wlyy_health_bank_task")
public class TaskDO extends IdEntityWithOperation implements Serializable {
    @Column(name = "saas_id")
    private String saasId; //saasid
    @Column(name = "title")
    private String title; //任务标题
    @Column(name = "content")
    private String content; //任务内容
    @Column(name = "type")
    private String type; //交易类型
    @Column(name = "transaction_id")
    private String transactionId; // 业务id
    @Column(name = "period")
    private Integer period; //周期性
    @Column(name = "task_code")
    private String taskCode ; // 标识是什么任务
    @Column(name = "status")
    private Integer status; //状态
    @Column(name = "rule_code")
    private String ruleCode;//规则code
    @Column(name = "start_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    private Date startTime;//开始时间
    @Column(name = "end_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    private Date endTime; //结束时间
    @Transient
    private ActivityDO activityDO;//活动详情
    @Transient
    private String patientId;//居民id
    @Transient
    private String openId;//微信编码
    @Transient
    private Long total;//参加总数
   /* @Transient
    private List<TaskPatientDetailDO> taskPatientDetailDOS;//参与人详情*/
    public String getSaasId() {
        return saasId;
    }
    public void setSaasId(String saasId) {
        this.saasId = saasId;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public String getType() {
        return type;
    }
    public void setType(String type) {
        this.type = type;
    }
    public String getTransactionId() {
        return transactionId;
    }
    public void setTransactionId(String transactionId) {
        this.transactionId = transactionId;
    }
    public Integer getPeriod() {
        return period;
    }
    public void setPeriod(Integer period) {
        this.period = period;
    }
    public String getTaskCode() {
        return taskCode;
    }
    public void setTaskCode(String taskCode) {
        this.taskCode = taskCode;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    public String getRuleCode() {
        return ruleCode;
    }
    public void setRuleCode(String ruleCode) {
        this.ruleCode = ruleCode;
    }
    public Date getStartTime() {
        return startTime;
    }
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }
    public Date getEndTime() {
        return endTime;
    }
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
    public ActivityDO getActivityDO() {
        return activityDO;
    }
    public void setActivityDO(ActivityDO activityDO) {
        this.activityDO = activityDO;
    }
    public String getPatientId() {
        return patientId;
    }
    public void setPatientId(String patientId) {
        this.patientId = patientId;
    }
   /* public List<TaskPatientDetailDO> getTaskPatientDetailDOS() {
        return taskPatientDetailDOS;
    }
    public void setTaskPatientDetailDOS(List<TaskPatientDetailDO> taskPatientDetailDOS) {
        this.taskPatientDetailDOS = taskPatientDetailDOS;
    }*/
    public Long getTotal() {
        return total;
    }
    public void setTotal(Long total) {
        this.total = total;
    }
    public String getOpenId() {
        return openId;
    }
    public void setOpenId(String openId) {
        this.openId = openId;
    }
}

+ 160 - 0
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/entity/healthbank/TaskPatientDetailDO.java

@ -0,0 +1,160 @@
package com.yihu.wlyy.entity.healthbank;
import com.yihu.wlyy.entity.IdEntityWithOperation;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
/**
 * Created by wamg zhinan 2018/4/27.
 */
@Entity
@Table(name = "wlyy_health_bank_task_patient_detail")
public class TaskPatientDetailDO extends IdEntityWithOperation implements Serializable {
    @Column(name = "saas_id")
    private String saasId; //saasid
    @Column(name = "status")
    private Integer status;//任务完整状态:1完成,0参与,-1作废
    @Column(name = "patient_id")
    private String patientId;//居民id
    @Column(name = "patient_idcard")
    private String patientIdcard;//居民身份证
    @Column(name = "patient_openid")
    private String patientOpenid;//居民openid
    @Column(name = "doctor_id")
    private String doctorId;//医生id
    @Column(name = "task_id")
    private String taskId;//任务id
    @Column(name = "activity_id")
    private String activityId;//活动id
    @Column(name = "total")
    private Long total;//活动中获取的积分
    @Column(name = "union_id")
    private String unionId;
    /*@Transient
    private AccountDO accountDO;//账户信息
*/
    @Transient
    private Integer isFlag;//标识是否为当前用户
    @Transient
    private String taskCode;//任务标识
    public String getSaasId() {
        return saasId;
    }
    public void setSaasId(String saasId) {
        this.saasId = saasId;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    public String getPatientId() {
        return patientId;
    }
    public void setPatientId(String patientId) {
        this.patientId = patientId;
    }
    public String getPatientIdcard() {
        return patientIdcard;
    }
    public void setPatientIdcard(String patientIdcard) {
        this.patientIdcard = patientIdcard;
    }
    public String getPatientOpenid() {
        return patientOpenid;
    }
    public void setPatientOpenid(String patientOpenid) {
        this.patientOpenid = patientOpenid;
    }
    public String getDoctorId() {
        return doctorId;
    }
    public void setDoctorId(String doctorId) {
        this.doctorId = doctorId;
    }
    public String getTaskId() {
        return taskId;
    }
    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }
    public String getActivityId() {
        return activityId;
    }
    public void setActivityId(String activityId) {
        this.activityId = activityId;
    }
    public Long getTotal() {
        return total;
    }
    public void setTotal(Long total) {
        this.total = total;
    }
    /*public AccountDO getAccountDO() {
        return accountDO;
    }
    public void setAccountDO(AccountDO accountDO) {
        this.accountDO = accountDO;
    }*/
    public String getUnionId() {
        return unionId;
    }
    public void setUnionId(String unionId) {
        this.unionId = unionId;
    }
    public Integer getIsFlag() {
        return isFlag;
    }
    public void setIsFlag(Integer isFlag) {
        this.isFlag = isFlag;
    }
    public String getTaskCode() {
        return taskCode;
    }
    public void setTaskCode(String taskCode) {
        this.taskCode = taskCode;
    }
}

+ 116 - 0
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/entity/healthbank/TaskRuleDO.java

@ -0,0 +1,116 @@
package com.yihu.wlyy.entity.healthbank;
import com.yihu.wlyy.entity.IdEntityWithOperation;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.io.Serializable;
/**
 * Created by wamg zhinan 2018/4/27.
 */
@Entity
@Table(name = "wlyy_health_bank_task_rule")
public class TaskRuleDO extends IdEntityWithOperation implements Serializable {
    @Column(name = "saas_id")
    private String saasId; //saasid
    @Column(name = "name")
    private String name;//规则名称
    @Column(name = "description")
    private String description;//规则描述
    @Column(name = "integrate")
    private Integer integrate; //积分
    @Column(name = "trade_direction")
    private Integer tradeDirection;//交易方向 1增、-1减、0清零
    @Column(name = "type")
    private String type;//规则类型:NORMAL-手动,AUTO-自动
    @Column(name = "status")
    private Integer status; //状态
    @Column(name = "java_class_path")
    private String javaClassPath;//java反射类路径
    @Column(name = "period")
    private Integer period;//周期性
    public String getSaasId() {
        return saasId;
    }
    public void setSaasId(String saasId) {
        this.saasId = saasId;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getDescription() {
        return description;
    }
    public void setDescription(String description) {
        this.description = description;
    }
    public Integer getIntegrate() {
        return integrate;
    }
    public void setIntegrate(Integer integrate) {
        this.integrate = integrate;
    }
    public Integer getTradeDirection() {
        return tradeDirection;
    }
    public void setTradeDirection(Integer tradeDirection) {
        this.tradeDirection = tradeDirection;
    }
    public String getType() {
        return type;
    }
    public void setType(String type) {
        this.type = type;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    public String getJavaClassPath() {
        return javaClassPath;
    }
    public void setJavaClassPath(String javaClassPath) {
        this.javaClassPath = javaClassPath;
    }
    public Integer getPeriod() {
        return period;
    }
    public void setPeriod(Integer period) {
        this.period = period;
    }
}

+ 1 - 0
patient-co-manage/wlyy-manage/src/main/resources/application.yml

@ -103,6 +103,7 @@ reservation:
#健康活动url
healthbank:
  url: http://172.19.103.33:8660/svr-wlyy-health-bank/svr-health-bank/
#  url: http://192.168.131.133:10051/svr-health-bank/
wechat:
  appId: wxd03f859efdf0873d

+ 5 - 4
patient-co-manage/wlyy-manage/src/main/webapp/WEB-INF/views/healthbank/activity_list_js.jsp

@ -52,15 +52,15 @@
                        ]
                    });
                    this.$startTime.ligerDateEditor({
                        format: "yyyy-MM-dd",
                        showTime: false,
                        format: "yyyy-MM-dd hh:mm:ss",
                        showTime: true,
                        labelWidth: 100,
                        labelAlign: 'center',
                        cancelable: true
                    });
                    this.$endTime.ligerDateEditor({
                        format: "yyyy-MM-dd",
                        showTime: false,
                        format: "yyyy-MM-dd hh:mm:ss",
                        showTime: true,
                        labelWidth: 100,
                        labelAlign: 'center',
                        cancelable: true
@ -136,6 +136,7 @@
                reloadGrid: function (msg) {
                    activity.$element.attrScan();
                    var values = activity.$element.Fields.getValues();
                    values.status = activity.statusBox.getValue();
                    reloadGrid.call(this,{"activity":JSON.stringify(values)});
                },
                delRecord: function (id, code) {

+ 1 - 1
patient-co-manage/wlyy-manage/src/main/webapp/WEB-INF/views/healthbank/task_modify.jsp

@ -51,7 +51,7 @@
    <div class="m-form-group">
        <label class="label_title" style="width:120px">积分规则</label>
        <div class="l-text-wrapper m-form-control essential">
            <input type="text"  id="inp_ruleCode" class="required useTitle ajax f-w240 validate-special-char" required-title="积分规则不能为空" data-attr-scan="ruleCode"/>
            <select  id="inp_ruleCode" class="required useTitle ajax f-w240 validate-special-char "  required-title="积分规则不能为空" data-attr-scan="ruleCode"></select>
        </div>
    </div>
    <div class="m-form-group">

+ 46 - 17
patient-co-manage/wlyy-manage/src/main/webapp/WEB-INF/views/healthbank/task_modify_js.jsp

@ -1,5 +1,7 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="utf-8" %>
<%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags" %>
<link href="${ctx}/static/develop/lib/select2/select2.min.css" rel="stylesheet">
<script src="${ctx}/static/develop/lib/select2/select2.js"></script>
<script>
    (function ($, win) {
        $(function () {
@ -11,6 +13,7 @@
            function pageInit() {
                taskInfo.init();
                $("#select2-inp_ruleCode-container").attr("style","color: #555555");
                if(type != "create") {
                    taskInfo.initForm();
                }
@ -70,7 +73,7 @@
                    //活动下拉框
                    _this.transactionBox = _this.$transactionId.ligerComboBox({
                        url: ctx + "/admin/activity/list",
                        parms: {"activity":"{}","page":1,"rows":10},
                        parms: {"activity":"{}","page":1,"rows":20},
                        dataParmName: "detailModelList",
                        textField: "title",
                        valueField: "id",
@ -82,20 +85,43 @@
                        },
                    });
                    //积分规则下拉框
                    _this.ruleBox = _this.$ruleCode.ligerComboBox({
                        url: ctx + "/admin/taskRule/list",
                        parms: {"taskRule":"{}","page":1,"rows":10},
                        dataParmName: "detailModelList",
                        textField: "name",
                        valueField: "id",
                        isMultiSelect: false,
                        ajaxBeforeSend: function (xhr) {
                            if (ajaxHeaderName) {
                                xhr.setRequestHeader(ajaxHeaderName, ajaxHeaderValue);
                            }
                        },
                    });
                    _this.selectBind();
                },
                selectBind:function() {
                    var _this = this;
                    var taskRule =  _this.$ruleCode.select2({
                        placeholder: "请选择积分规则",//只显示前15条结果
                        ajax: {
                            async:false,
                            dataType : "json",
                            // method: "post",
                            url: ctx + "/admin/taskRule/list?taskRule={\"status\":\"1\"}&page=1&rows=20",
                            // data: {"taskRule":"{\"status\":\"1\"}","page":1,"rows":20},
                            processResults: function (data, page) {
                                if(data.status==200) {
                                    var result = data.detailModelList;
                                    var a = [];
                                    if(result != null) {
                                        for (var i = 0; i < result.length; i++) {
                                            var b = {};
                                            b.id = result[i].id;
                                            b.text = result[i].name;
                                            a.push(b);
                                        }
                                    }
                                    return {
                                        results:  a
                                    };
                                }else{
                                    $.ligerDialog.error(data.msg);
                                }
                            },
                            escapeMarkup: function (markup) { return markup; }, // let our custom formatter work
                            minimumInputLength: 1,
                        }
                    })
                },
                initForm: function () {
@ -122,7 +148,8 @@
                                _this.periodBox.selectValue(data.period);
                                _this.statusBox.selectValue(data.status);
                                _this.transactionBox.selectValue(data.transactionId);
                                _this.ruleBox.selectValue(data.ruleCode);
                                $("#select2-inp_ruleCode-container").empty().append(data.ruleName);
                                // $("#select2-inp_ruleCode-container").empty().append(data.ruleCode)
                            } else {
                                $.Notice.error(result.msg);
                            }
@ -134,11 +161,14 @@
                    if (type == "view") {
                        _this.$form.addClass("m-form-readonly"); //表单只读
                        $("#inp_ruleCode").attr("disabled",true);
                        $("#select2-inp_ruleCode-container").attr("style","background-color: #EDF6FA;color: #555555");
                        $(".essential").addClass("XXXtest");
                        $(".essential").removeClass("essential");
                        $("#btn_save_close").css("display", "none");
                    } else {
                        this.$form.removeClass("m-form-readonly");
                        $("#inp_ruleCode").attr("disabled",false);
                        $("#btn_save_close").css("display", "block");
                        $(".XXXtest").addClass("essential");
                    }
@ -160,7 +190,6 @@
                        values.status = self.statusBox.getValue();
                        values.period = self.periodBox.getValue();
                        values.transactionId = self.transactionBox.getValue();
                        values.ruleCode = self.ruleBox.getValue();
                        if (!validator.validate()) {
                            return;
                        }