Forráskód Böngészése

Merge branch 'dev' of lyr/patient-co-management into dev

lyr 8 éve
szülő
commit
cdd6b45e2a

+ 79 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/entity/template/DoctorGuidanceTemp.java

@ -0,0 +1,79 @@
package com.yihu.wlyy.entity.template;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.wlyy.entity.IdEntity;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
/**
 * Created by lyr-pc on 2017/2/3.
 */
@Entity
@Table(name = "wlyy_doctor_guidance_temp")
public class DoctorGuidanceTemp extends IdEntity{
    // 模板编码
    private String code;
    // 所属医生 system为系统标签
    private String owner;
    // 内容
    private String content;
    // 发送次数
    private Integer sendTimes;
    // 创建时间
    private Date createTime;
    // 最后一次发送时间
    private Date lastTime;
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getOwner() {
        return owner;
    }
    public void setOwner(String owner) {
        this.owner = owner;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public Integer getSendTimes() {
        return sendTimes;
    }
    public void setSendTimes(Integer sendTimes) {
        this.sendTimes = sendTimes;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getLastTime() {
        return lastTime;
    }
    public void setLastTime(Date lastTime) {
        this.lastTime = lastTime;
    }
}

+ 24 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/template/DoctorGuidanceTempDao.java

@ -0,0 +1,24 @@
package com.yihu.wlyy.repository.template;
import com.yihu.wlyy.entity.template.DoctorGuidanceTemp;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
/**
 * Created by lyr-pc on 2017/2/3.
 */
public interface DoctorGuidanceTempDao extends PagingAndSortingRepository<DoctorGuidanceTemp, Long> {
    DoctorGuidanceTemp findByCode(String code);
    int deleteByCode(String code);
    @Query("select t from DoctorGuidanceTemp t where t.owner = ?1 order by t.sendTimes desc")
    List<DoctorGuidanceTemp> findByOwner(String owner);
    @Query("select t from DoctorGuidanceTemp t where t.owner = ?1 or t.owner = 'system' order by t.sendTimes desc")
    List<DoctorGuidanceTemp> findByOwnerAndSystem(String owner);
}

+ 103 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/template/DoctorGuidanceTempService.java

@ -0,0 +1,103 @@
package com.yihu.wlyy.service.template;
import com.yihu.wlyy.entity.template.DoctorGuidanceTemp;
import com.yihu.wlyy.repository.template.DoctorGuidanceTempDao;
import com.yihu.wlyy.service.BaseService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
/**
 * 医生健康指导模板
 * <p>
 * Created by lyr-pc on 2017/2/3.
 */
@Service
public class DoctorGuidanceTempService extends BaseService {
    @Autowired
    DoctorGuidanceTempDao guidanceTempDao;
    /**
     * 添加指导模板
     *
     * @param doctor  医生
     * @param content 指导内容
     * @return
     */
    public DoctorGuidanceTemp add(String doctor, String content) {
        DoctorGuidanceTemp guidanceTemp = new DoctorGuidanceTemp();
        guidanceTemp.setCode(getCode());
        guidanceTemp.setOwner(doctor);
        guidanceTemp.setContent(content);
        guidanceTemp.setSendTimes(0);
        guidanceTemp.setCreateTime(new Date());
        return guidanceTempDao.save(guidanceTemp);
    }
    /**
     * 修改指导模板
     *
     * @param code    模板编码
     * @param content 指导内容
     * @return
     */
    public DoctorGuidanceTemp modify(String code, String content) throws Exception {
        DoctorGuidanceTemp guidanceTemp = guidanceTempDao.findByCode(code);
        if (guidanceTemp == null) {
            throw new Exception("模板不存在");
        }
        guidanceTemp.setContent(content);
        return guidanceTempDao.save(guidanceTemp);
    }
    /**
     * 删除指导模板
     *
     * @param code 模板编码
     * @return
     */
    public int delete(String code) throws Exception {
        String[] codes = code.split(",");
        if (codes != null && codes.length > 0) {
            for (String temp : codes) {
                guidanceTempDao.deleteByCode(temp);
            }
        }
        return 1;
    }
    /**
     * 查询指导模板
     *
     * @param doctor 医生
     * @param type   模板类型
     * @return
     */
    public List<DoctorGuidanceTemp> list(String doctor, String type) throws Exception {
        List<DoctorGuidanceTemp> temps = null;
        if (type.equals("1")) {
            temps = guidanceTempDao.findByOwner("system");
        } else if (type.equals("2")) {
            temps = guidanceTempDao.findByOwner(doctor);
        } else {
            temps = guidanceTempDao.findByOwnerAndSystem(doctor);
        }
        return temps;
    }
}

+ 141 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/template/DoctorGuidanceTempController.java

@ -0,0 +1,141 @@
package com.yihu.wlyy.web.doctor.template;
import com.yihu.wlyy.entity.template.DoctorGuidanceTemp;
import com.yihu.wlyy.service.template.DoctorGuidanceTempService;
import com.yihu.wlyy.web.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
 * 医生健康指导模板
 * <p>
 * Created by lyr on 2017/2/3.
 */
@RestController
@RequestMapping(value = "/doctor/guidance_temp")
@Api(description = "医生健康指导模板")
public class DoctorGuidanceTempController extends BaseController {
    @Autowired
    DoctorGuidanceTempService guidanceTempService;
    /**
     * 添加指导模板
     *
     * @param content
     * @return
     */
    @RequestMapping(value = "/add", method = RequestMethod.POST)
    @ApiOperation(value = "添加指导模板")
    public String add(@RequestParam @ApiParam(value = "指导内容") String content) {
        try {
            if (StringUtils.isEmpty(content)) {
                return error(-1, "内容不能为空");
            }
            DoctorGuidanceTemp temp = guidanceTempService.add(getUID(), content);
            if (temp != null) {
                return write(200, "添加成功");
            } else {
                return write(-1, "添加失败");
            }
        } catch (Exception e) {
            e.printStackTrace();
            return error(-1, "添加失败");
        }
    }
    /**
     * 修改指导模板
     *
     * @param code
     * @param content
     * @return
     */
    @RequestMapping(value = "/modify", method = RequestMethod.POST)
    @ApiOperation(value = "修改指导模板")
    public String modify(@RequestParam @ApiParam(value = "指导编码") String code,
                         @RequestParam @ApiParam(value = "指导内容") String content) {
        try {
            if (StringUtils.isEmpty(code)) {
                return error(-1, "请指定需修改的模板");
            }
            if (StringUtils.isEmpty(content)) {
                return error(-1, "内容不能为空");
            }
            DoctorGuidanceTemp temp = guidanceTempService.modify(code, content);
            if (temp != null) {
                return write(200, "修改成功");
            } else {
                return write(-1, "修改失败");
            }
        } catch (Exception e) {
            e.printStackTrace();
            return error(-1, "修改失败");
        }
    }
    /**
     * 删除指导模板
     *
     * @param code
     * @return
     */
    @RequestMapping(value = "/delete", method = RequestMethod.POST)
    @ApiOperation(value = "删除指导模板")
    public String delete(@RequestParam @ApiParam(value = "指导编码") String code) {
        try {
            if (StringUtils.isEmpty(code)) {
                return error(-1, "请指定需删除的模板");
            }
            int result = guidanceTempService.delete(code);
            if (result == 1) {
                return write(200, "删除成功");
            } else {
                return write(-1, "删除失败");
            }
        } catch (Exception e) {
            e.printStackTrace();
            return error(-1, "删除失败");
        }
    }
    /**
     * 查询指导模板
     *
     * @return
     */
    @RequestMapping(value = "/list", method = RequestMethod.GET)
    @ApiOperation(value = "查询指导模板")
    public String list(@RequestParam(required = false, defaultValue = "")
                       @ApiParam(value = "模板类型 1:系统 2:自定义 为空:所有") String type) {
        try {
            List<DoctorGuidanceTemp> temps = guidanceTempService.list(getUID(), type);
            if (temps == null || temps.size() < 1) {
                return write(200, "查询成功", "data", new JSONArray());
            } else {
                return write(200, "查询成功", "data", new JSONArray(temps));
            }
        } catch (Exception e) {
            e.printStackTrace();
            return error(-1, "查询失败");
        }
    }
}