Jelajahi Sumber

Merge branch 'dev' of http://192.168.1.220:10080/Amoy/patient-co-management into dev

Conflicts:
	patient-co-wlyy/src/main/java/com/yihu/wlyy/web/common/account/WechatController.java
8 tahun lalu
induk
melakukan
3ee13d0c22

+ 74 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/entity/education/FoodComp.java

@ -0,0 +1,74 @@
package com.yihu.wlyy.entity.education;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.wlyy.entity.IdEntity;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
/**
 * 健康教育
 * @author George
 *
 */
@Entity
@Table(name = "wlyy_food_comp")
public class FoodComp extends IdEntity {
	/**
	 * 
	 */
	private static final long serialVersionUID = 412341231112321L ;
	// 父id
	private Long pid;
	// 名称
	private String name;
	// 热量
	private Long hot;
	// 成分
	private String component;
	//重量
	private int weight;
	public Long getPid() {
		return pid;
	}
	public void setPid(Long pid) {
		this.pid = pid;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Long getHot() {
		return hot;
	}
	public void setHot(Long hot) {
		this.hot = hot;
	}
	public String getComponent() {
		return component;
	}
	public void setComponent(String component) {
		this.component = component;
	}
	public int getWeight() {
		return weight;
	}
	public void setWeight(int weight) {
		this.weight = weight;
	}
}

+ 24 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/education/FoodCompDao.java

@ -0,0 +1,24 @@
package com.yihu.wlyy.repository.education;
import com.yihu.wlyy.entity.education.FoodComp;
import com.yihu.wlyy.entity.education.HealthEduArticle;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
public interface FoodCompDao extends PagingAndSortingRepository<FoodComp, Long>, JpaSpecificationExecutor<FoodComp> {
	List<FoodComp> findByPid(Long pid);
	@Query("select a from FoodComp a where a.name like ?1")
	List<FoodComp> findByName(String name);
	FoodComp findById(Long id);
}

+ 35 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/family/FamilyMemberService.java

@ -139,6 +139,41 @@ public class FamilyMemberService extends BaseService {
        return 1;
    }
    public int addMember(Patient p, String member) throws Exception{
        if (p.getCode().equals(member)) {
            return 0;
        }
        // 添加自己与对方的关系
        PatientFamilyMember fm = memberDao.findByPatientAndFamilyMember(p.getCode(), member);
        // 家庭关系已存在时,不重复添加
        if (fm != null) {
            return -4;
        } else {
            fm = new PatientFamilyMember();
            fm.setPatient(p.getCode());
            fm.setFamilyMember(member);
        }
        fm.setFamilyRelation(6);
        fm.setCzrq(new Date());
        // 添加对方与自己的关系
        PatientFamilyMember fmt = memberDao.findByPatientAndFamilyMember(member, p.getCode());
        // 不存在则创建
        if (fmt == null) {
            fmt = new PatientFamilyMember();
            fmt.setPatient(member);
            fmt.setFamilyMember(p.getCode());
        }
        // 对方与自己的关系转换
        int relationTrans = familyRelationTrans(p, 6);
        fmt.setFamilyRelation(relationTrans);
        fmt.setCzrq(new Date());
        memberDao.save(fm);
        memberDao.save(fmt);
        return 1;
    }
    /**
     * 修改家庭成员关系

+ 48 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/health/FoodCompService.java

@ -0,0 +1,48 @@
package com.yihu.wlyy.service.app.health;
import com.yihu.wlyy.entity.education.FoodComp;
import com.yihu.wlyy.entity.education.HealthNews;
import com.yihu.wlyy.repository.education.FoodCompDao;
import com.yihu.wlyy.repository.education.HealthNewsDao;
import com.yihu.wlyy.service.BaseService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.data.domain.Sort.Direction;
import org.springframework.data.jpa.domain.Specification;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.springside.modules.persistence.DynamicSpecifications;
import org.springside.modules.persistence.SearchFilter;
import org.springside.modules.persistence.SearchFilter.Operator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * 食物健康热量服务类
 * @author George
 *
 */
@Component
@Transactional(rollbackFor = Exception.class)
public class FoodCompService extends BaseService {
	@Autowired
	private FoodCompDao foodCompDao;
	public List<FoodComp> getByPid(Long pid){
		return foodCompDao.findByPid(pid);
	}
	public FoodComp getById(Long id){
		return foodCompDao.findById(id);
	}
	public List<FoodComp> getByName(String name){
		return foodCompDao.findByName("%"+name+"%");
	}
}

+ 24 - 13
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/common/account/WechatController.java

@ -5,10 +5,12 @@ import java.net.URLEncoder;
import java.util.*;
import com.yihu.wlyy.entity.login.LoginLog;
import com.yihu.wlyy.entity.patient.PatientFamilyMember;
import com.yihu.wlyy.entity.patient.SocialSecurityInfo;
import com.yihu.wlyy.logs.BusinessLogs;
import com.yihu.wlyy.repository.patient.PatientDao;
import com.yihu.wlyy.repository.patient.SocialSecurityInfoDao;
import com.yihu.wlyy.service.app.family.FamilyMemberService;
import com.yihu.wlyy.service.app.family.FamilyService;
import com.yihu.wlyy.service.common.login.LoginLogService;
import com.yihu.wlyy.util.HttpUtil;
@ -56,6 +58,8 @@ public class WechatController extends WeixinBaseController {
    private FamilyService familyService;
    @Autowired
    private LoginLogService loginLogService;
    @Autowired
    private FamilyMemberService familyMemberService;
    /**
     * 患者注册-验证手机号
@ -150,9 +154,9 @@ public class WechatController extends WeixinBaseController {
            if (StringUtils.isEmpty(mobile)) {
                return error(-1, "手机号不允许为空");
            }
            if (patientService.findByMobile(mobile) != null) {
                return error(-1, "该手机号已被注册");
            }
            //if (patientService.findByMobile(mobile) != null) {
            //    return error(-1, "该手机号已被注册");
            //}
            // 解密身份证号
            idcard = RSAUtils.getInstance(patientService).decryptString(idcard);
            idcard = URLDecoder.decode(idcard, "UTF-8");
@ -190,8 +194,8 @@ public class WechatController extends WeixinBaseController {
                    return error(-1, "该身份证已被注册");
                }
            }
            return write(200, "验证成功");
            List<Patient> patients = patientService.findByMobile(mobile);
            return write(200, "验证成功","data",patients);
        } catch (Exception e) {
            return error(-1, "验证失败");
        }
@ -207,13 +211,14 @@ public class WechatController extends WeixinBaseController {
     */
    @RequestMapping(value = "regist")
    @ResponseBody
    public String regist(String name,
                         String idcard,
                         String ssc,
                         String mobile,
                         String captcha,
                         String openid,
                         String password) {
    public String regist(@RequestParam(value="name",required = true) String name,
                         @RequestParam(value="idcard",required = true) String idcard,
                         @RequestParam(value="ssc",required = true) String ssc,
                         @RequestParam(value="mobile",required = true) String mobile,
                         @RequestParam(value="captcha",required = true) String captcha,
                         @RequestParam(value="openid",required = true) String openid,
                         @RequestParam(value="password",required = true) String password,
                         @RequestParam(value="home",required = true) String home) {
        try {
            if (StringUtils.isEmpty(name)) {
                return error(-1, "姓名不允许为空!");
@ -284,7 +289,7 @@ public class WechatController extends WeixinBaseController {
                patient = new Patient();
            } else {
                if (!StringUtils.isEmpty(patient.getMobile())) {
                    return error(-1, "该身份证已被注册!");
                    return error(-2, "该身份证已被注册!");
                }
            }
            patient.setName(name);
@ -307,6 +312,12 @@ public class WechatController extends WeixinBaseController {
                try {
                    Patient p = patientDao.findByIdcard(idcard);
                    BusinessLogs.info(BusinessLogs.BusinessType.register, p.getCode(), p.getCode(), new JSONObject(p));
                    if("1".equals(home)){
                        List<Patient> patients = patientService.findByMobile(mobile);
                        for(Patient patient1 :patients){
                            familyMemberService.addMember(p,patient1.getCode());
                        }
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                }

+ 78 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/health/FoodCompController.java

@ -0,0 +1,78 @@
package com.yihu.wlyy.web.patient.health;
import com.yihu.wlyy.entity.education.FoodComp;
import com.yihu.wlyy.service.app.health.FoodCompService;
import com.yihu.wlyy.web.BaseController;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
/**
 * 患者端:食物热量查询
 * @author George
 *
 */
@Controller
@RequestMapping(value = "/patient/health/food", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
@Api(description = "患者端-食物热量查询")
public class FoodCompController extends BaseController {
	@Autowired
	private FoodCompService foodCompService;
	/**
	 * 查询食物热量列表
	 * @param pid 父id
	 * @return 列表
	 */
	@RequestMapping(value = "list")
	@ResponseBody
	public String list(@RequestParam("pid")long pid) {
		try {
			List<FoodComp> foodComps = foodCompService.getByPid(pid);
			return write(200, "查询成功", "list", foodComps);
		} catch (Exception ex) {
			error(ex);
			return invalidUserException(ex, -1, "查询失败!");
		}
	}
	/**
	 * 查询食物热量查询
	 * @param name 查询名称
	 * @return 列表
	 */
	@RequestMapping(value = "search")
	@ResponseBody
	public String list(@RequestParam("name")String name) {
		try {
			List<FoodComp> foodComps = foodCompService.getByName(name);
			return write(200, "查询成功", "list", foodComps);
		} catch (Exception ex) {
			error(ex);
			return invalidUserException(ex, -1, "查询失败!");
		}
	}
	/**
	 * 查询食物热量详情
	 * @param id 查询名称
	 * @return 列表
	 */
	@RequestMapping(value = "detail")
	@ResponseBody
	public String list(@RequestParam("id")Long id) {
		try {
			FoodComp foodComp = foodCompService.getById(id);
			return write(200, "查询成功", "list", foodComp);
		} catch (Exception ex) {
			error(ex);
			return invalidUserException(ex, -1, "查询失败!");
		}
	}
}