ManageUtilService.java 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518
  1. package com.yihu.wlyy.service.common.util;
  2. import com.yihu.wlyy.entity.doctor.team.sign.DoctorPatientGroupInfo;
  3. import com.yihu.wlyy.entity.doctor.team.sign.DoctorTeam;
  4. import com.yihu.wlyy.entity.doctor.team.sign.DoctorTeamInfo;
  5. import com.yihu.wlyy.entity.doctor.team.sign.DoctorTeamMember;
  6. import com.yihu.wlyy.entity.patient.SignFamily;
  7. import com.yihu.wlyy.repository.doctor.DoctorPatientGroupInfoDao;
  8. import com.yihu.wlyy.repository.doctor.DoctorTeamDao;
  9. import com.yihu.wlyy.repository.doctor.DoctorTeamMemberDao;
  10. import com.yihu.wlyy.repository.patient.SignFamilyDao;
  11. import com.yihu.wlyy.service.BaseService;
  12. import com.yihu.wlyy.util.IdCardUtil;
  13. import org.apache.commons.lang3.StringUtils;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.data.domain.Page;
  16. import org.springframework.data.domain.PageRequest;
  17. import org.springframework.jdbc.datasource.DataSourceTransactionManager;
  18. import org.springframework.orm.jpa.JpaTransactionManager;
  19. import org.springframework.stereotype.Service;
  20. import org.springframework.transaction.TransactionDefinition;
  21. import org.springframework.transaction.TransactionStatus;
  22. import org.springframework.transaction.annotation.Transactional;
  23. import org.springframework.transaction.support.DefaultTransactionDefinition;
  24. import java.util.*;
  25. import java.util.concurrent.ExecutionException;
  26. /**
  27. * Created by lyr-pc on 2016/10/11.
  28. */
  29. @Service
  30. public class ManageUtilService extends BaseService {
  31. @Autowired
  32. SignFamilyDao signFamilyDao;
  33. @Autowired
  34. DoctorPatientGroupInfoDao groupInfoDao;
  35. @Autowired
  36. DoctorTeamDao teamDao;
  37. @Autowired
  38. DoctorTeamMemberDao teamMemberDao;
  39. @Autowired
  40. JpaTransactionManager transactionManager;
  41. public static int page = 0;
  42. public static List<Integer> errorPages = new ArrayList<>();
  43. public static List<Long> errorSigns = new ArrayList<>();
  44. /**
  45. * 清洗头同步签约数据分组
  46. *
  47. * @return
  48. */
  49. public void signPatientSetGroup() {
  50. boolean flag = true;
  51. while (flag) {
  52. PageRequest pageRequest = new PageRequest(page, 1000);
  53. Page<SignFamily> signs = signFamilyDao.findByTypeAndSignSource(2, "1", pageRequest);
  54. if (signs != null && signs.getContent().size() == 1000) {
  55. page++;
  56. } else {
  57. flag = false;
  58. }
  59. DefaultTransactionDefinition def = new DefaultTransactionDefinition();
  60. def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW); // 事物隔离级别,开启新事务
  61. TransactionStatus status = transactionManager.getTransaction(def); // 获得事务状态
  62. try {
  63. for (SignFamily sign : signs.getContent()) {
  64. try {
  65. if (StringUtils.isNotEmpty(sign.getTeamCode())) {
  66. continue;
  67. }
  68. //建立团队
  69. DoctorTeam doctorTeam = new DoctorTeam();
  70. String doctorTeamCode = getCode();
  71. doctorTeam.setCode(doctorTeamCode);
  72. doctorTeam.setCzrq(new Date());
  73. doctorTeam.setName("团队名称:" + sign.getName());
  74. doctorTeam.setSignType("2");//家庭签约
  75. doctorTeam.setDel("1");
  76. teamDao.save(doctorTeam);
  77. //添加团队成员
  78. if (StringUtils.isNotEmpty(sign.getDoctor())) {
  79. //添加全科
  80. DoctorTeamMember wlyyDoctorTeamDoctor = new DoctorTeamMember();
  81. wlyyDoctorTeamDoctor.setTeam(doctorTeamCode);
  82. wlyyDoctorTeamDoctor.setMemberCode(sign.getDoctor());
  83. wlyyDoctorTeamDoctor.setName(sign.getDoctorName());
  84. wlyyDoctorTeamDoctor.setDel("1");
  85. wlyyDoctorTeamDoctor.setType(2);
  86. wlyyDoctorTeamDoctor.setSignType("2");//家庭签约
  87. wlyyDoctorTeamDoctor.setCode(getCode());
  88. wlyyDoctorTeamDoctor.setCzrq(new Date());
  89. teamMemberDao.save(wlyyDoctorTeamDoctor);
  90. }
  91. if (StringUtils.isNotEmpty(sign.getDoctorHealth())) {
  92. //添加健康管理师
  93. DoctorTeamMember wlyyDoctorTeamDoctor = new DoctorTeamMember();
  94. wlyyDoctorTeamDoctor.setTeam(doctorTeamCode);
  95. wlyyDoctorTeamDoctor.setMemberCode(sign.getDoctorHealth());
  96. wlyyDoctorTeamDoctor.setName(sign.getDoctorHealthName());
  97. wlyyDoctorTeamDoctor.setDel("1");
  98. wlyyDoctorTeamDoctor.setType(3);
  99. wlyyDoctorTeamDoctor.setSignType("2");//家庭签约
  100. wlyyDoctorTeamDoctor.setCode(getCode());
  101. wlyyDoctorTeamDoctor.setCzrq(new Date());
  102. teamMemberDao.save(wlyyDoctorTeamDoctor);
  103. }
  104. //添加患者和团队的关系
  105. DoctorTeamMember wlyyDoctorTeamPatient = new DoctorTeamMember();
  106. wlyyDoctorTeamPatient.setTeam(doctorTeamCode);
  107. wlyyDoctorTeamPatient.setMemberCode(sign.getPatient());
  108. wlyyDoctorTeamPatient.setName(sign.getName());
  109. wlyyDoctorTeamPatient.setDel("1");
  110. wlyyDoctorTeamPatient.setSignType("2");//家庭签约
  111. wlyyDoctorTeamPatient.setType(5);
  112. wlyyDoctorTeamPatient.setCode(getCode());
  113. wlyyDoctorTeamPatient.setCzrq(new Date());
  114. teamMemberDao.save(wlyyDoctorTeamPatient);
  115. if (StringUtils.isEmpty(sign.getIdcard())) {
  116. System.out.println("error:sign-family-set-group:no-idcard:" + sign.getId());
  117. continue;
  118. }
  119. int age = IdCardUtil.getAgeForIdcard(sign.getIdcard());
  120. String groupCode = "1";
  121. if (age >= 65) {
  122. groupCode = "3";
  123. }
  124. if (StringUtils.isNotEmpty(sign.getDoctorHealth())) {
  125. //把病人添加到健康管理师的健康分组里
  126. DoctorPatientGroupInfo doctorPatientGroupInfo = new DoctorPatientGroupInfo();
  127. doctorPatientGroupInfo.setCzrq(new Date());
  128. doctorPatientGroupInfo.setDoctor(sign.getDoctorHealth());
  129. doctorPatientGroupInfo.setStatus(1);
  130. doctorPatientGroupInfo.setPatient(sign.getPatient());
  131. doctorPatientGroupInfo.setPname(sign.getName());
  132. doctorPatientGroupInfo.setPartAmount(0);
  133. doctorPatientGroupInfo.setGroup(groupCode);//默认健康分组
  134. doctorPatientGroupInfo.setQyrq(sign.getApplyDate());
  135. doctorPatientGroupInfo.setSignType("2");//家庭签约
  136. groupInfoDao.save(doctorPatientGroupInfo);
  137. }
  138. if (StringUtils.isNotEmpty(sign.getDoctor())) {
  139. //把病人添加到全科医生的健康分组里
  140. DoctorPatientGroupInfo doctorPatientGroupInfo = new DoctorPatientGroupInfo();
  141. doctorPatientGroupInfo.setCzrq(new Date());
  142. doctorPatientGroupInfo.setDoctor(sign.getDoctor());
  143. doctorPatientGroupInfo.setStatus(1);
  144. doctorPatientGroupInfo.setPatient(sign.getPatient());
  145. doctorPatientGroupInfo.setPname(sign.getName());
  146. doctorPatientGroupInfo.setPartAmount(0);
  147. doctorPatientGroupInfo.setGroup(groupCode);//默认健康分组
  148. doctorPatientGroupInfo.setQyrq(sign.getApplyDate());
  149. doctorPatientGroupInfo.setSignType("2");//家庭签约
  150. groupInfoDao.save(doctorPatientGroupInfo);
  151. }
  152. List<DoctorPatientGroupInfo> groups = groupInfoDao.findPatientGroups(sign.getPatient());
  153. if (groups != null && groups.size() > 0) {
  154. for (DoctorPatientGroupInfo group : groups) {
  155. if (StringUtils.isNotEmpty(group.getSignType()) && group.getSignType().equals("2")) {
  156. continue;
  157. }
  158. DoctorPatientGroupInfo patientGroup = new DoctorPatientGroupInfo();
  159. patientGroup.setCzrq(new Date());
  160. patientGroup.setDoctor(group.getDoctor());
  161. patientGroup.setStatus(1);
  162. patientGroup.setPatient(sign.getPatient());
  163. patientGroup.setPname(sign.getName());
  164. patientGroup.setPartAmount(0);
  165. patientGroup.setGroup(group.getGroup());
  166. patientGroup.setQyrq(sign.getApplyDate());
  167. patientGroup.setSignType("2");//家庭签约
  168. groupInfoDao.save(patientGroup);
  169. }
  170. }
  171. sign.setTeamCode(doctorTeamCode);
  172. signFamilyDao.save(sign);
  173. } catch (Exception e) {
  174. e.printStackTrace();
  175. errorSigns.add(sign.getId());
  176. }
  177. }
  178. //事物提交
  179. transactionManager.commit(status);
  180. } catch (Exception e) {
  181. errorPages.add(page - 1);
  182. transactionManager.rollback(status);
  183. }
  184. }
  185. }
  186. /**
  187. * 执行某一页
  188. *
  189. * @param page
  190. * @throws Exception
  191. */
  192. @Transactional
  193. public void setSignTeamAndGroupByPage(int page) throws Exception {
  194. PageRequest pageRequest = new PageRequest(page, 1000);
  195. Page<SignFamily> signs = signFamilyDao.findByTypeAndSignSource(2, "1", pageRequest);
  196. for (SignFamily sign : signs.getContent()) {
  197. if (StringUtils.isNotEmpty(sign.getTeamCode())) {
  198. continue;
  199. }
  200. //建立团队
  201. DoctorTeam doctorTeam = new DoctorTeam();
  202. String doctorTeamCode = getCode();
  203. doctorTeam.setCode(doctorTeamCode);
  204. doctorTeam.setCzrq(new Date());
  205. doctorTeam.setName("团队名称:" + sign.getName());
  206. doctorTeam.setSignType("2");//家庭签约
  207. doctorTeam.setDel("1");
  208. teamDao.save(doctorTeam);
  209. //添加团队成员
  210. if (StringUtils.isNotEmpty(sign.getDoctor())) {
  211. //添加全科
  212. DoctorTeamMember wlyyDoctorTeamDoctor = new DoctorTeamMember();
  213. wlyyDoctorTeamDoctor.setTeam(doctorTeamCode);
  214. wlyyDoctorTeamDoctor.setMemberCode(sign.getDoctor());
  215. wlyyDoctorTeamDoctor.setName(sign.getDoctorName());
  216. wlyyDoctorTeamDoctor.setDel("1");
  217. wlyyDoctorTeamDoctor.setType(2);
  218. wlyyDoctorTeamDoctor.setSignType("2");//家庭签约
  219. wlyyDoctorTeamDoctor.setCode(getCode());
  220. wlyyDoctorTeamDoctor.setCzrq(new Date());
  221. teamMemberDao.save(wlyyDoctorTeamDoctor);
  222. }
  223. if (StringUtils.isNotEmpty(sign.getDoctorHealth())) {
  224. //添加健康管理师
  225. DoctorTeamMember wlyyDoctorTeamDoctor = new DoctorTeamMember();
  226. wlyyDoctorTeamDoctor.setTeam(doctorTeamCode);
  227. wlyyDoctorTeamDoctor.setMemberCode(sign.getDoctorHealth());
  228. wlyyDoctorTeamDoctor.setName(sign.getDoctorHealthName());
  229. wlyyDoctorTeamDoctor.setDel("1");
  230. wlyyDoctorTeamDoctor.setType(3);
  231. wlyyDoctorTeamDoctor.setSignType("2");//家庭签约
  232. wlyyDoctorTeamDoctor.setCode(getCode());
  233. wlyyDoctorTeamDoctor.setCzrq(new Date());
  234. teamMemberDao.save(wlyyDoctorTeamDoctor);
  235. }
  236. //添加患者和团队的关系
  237. DoctorTeamMember wlyyDoctorTeamPatient = new DoctorTeamMember();
  238. wlyyDoctorTeamPatient.setTeam(doctorTeamCode);
  239. wlyyDoctorTeamPatient.setMemberCode(sign.getPatient());
  240. wlyyDoctorTeamPatient.setName(sign.getName());
  241. wlyyDoctorTeamPatient.setDel("1");
  242. wlyyDoctorTeamPatient.setSignType("2");//家庭签约
  243. wlyyDoctorTeamPatient.setType(5);
  244. wlyyDoctorTeamPatient.setCode(getCode());
  245. wlyyDoctorTeamPatient.setCzrq(new Date());
  246. teamMemberDao.save(wlyyDoctorTeamPatient);
  247. if (StringUtils.isEmpty(sign.getIdcard())) {
  248. System.out.println("error:sign-family-set-group:no-idcard:" + sign.getId());
  249. continue;
  250. }
  251. int age = IdCardUtil.getAgeForIdcard(sign.getIdcard());
  252. String groupCode = "1";
  253. if (age >= 65) {
  254. groupCode = "3";
  255. }
  256. if (StringUtils.isNotEmpty(sign.getDoctorHealth())) {
  257. //把病人添加到健康管理师的健康分组里
  258. DoctorPatientGroupInfo doctorPatientGroupInfo = new DoctorPatientGroupInfo();
  259. doctorPatientGroupInfo.setCzrq(new Date());
  260. doctorPatientGroupInfo.setDoctor(sign.getDoctorHealth());
  261. doctorPatientGroupInfo.setStatus(1);
  262. doctorPatientGroupInfo.setPatient(sign.getPatient());
  263. doctorPatientGroupInfo.setPname(sign.getName());
  264. doctorPatientGroupInfo.setPartAmount(0);
  265. doctorPatientGroupInfo.setGroup(groupCode);//默认健康分组
  266. doctorPatientGroupInfo.setQyrq(sign.getApplyDate());
  267. doctorPatientGroupInfo.setSignType("2");//家庭签约
  268. groupInfoDao.save(doctorPatientGroupInfo);
  269. }
  270. if (StringUtils.isNotEmpty(sign.getDoctor())) {
  271. //把病人添加到全科医生的健康分组里
  272. DoctorPatientGroupInfo doctorPatientGroupInfo = new DoctorPatientGroupInfo();
  273. doctorPatientGroupInfo.setCzrq(new Date());
  274. doctorPatientGroupInfo.setDoctor(sign.getDoctor());
  275. doctorPatientGroupInfo.setStatus(1);
  276. doctorPatientGroupInfo.setPatient(sign.getPatient());
  277. doctorPatientGroupInfo.setPname(sign.getName());
  278. doctorPatientGroupInfo.setPartAmount(0);
  279. doctorPatientGroupInfo.setGroup(groupCode);//默认健康分组
  280. doctorPatientGroupInfo.setQyrq(sign.getApplyDate());
  281. doctorPatientGroupInfo.setSignType("2");//家庭签约
  282. groupInfoDao.save(doctorPatientGroupInfo);
  283. }
  284. List<DoctorPatientGroupInfo> groups = groupInfoDao.findPatientGroups(sign.getPatient());
  285. if (groups != null && groups.size() > 0) {
  286. for (DoctorPatientGroupInfo group : groups) {
  287. if (StringUtils.isNotEmpty(group.getSignType()) && group.getSignType().equals("2")) {
  288. continue;
  289. }
  290. DoctorPatientGroupInfo patientGroup = new DoctorPatientGroupInfo();
  291. patientGroup.setCzrq(new Date());
  292. patientGroup.setDoctor(group.getDoctor());
  293. patientGroup.setStatus(1);
  294. patientGroup.setPatient(sign.getPatient());
  295. patientGroup.setPname(sign.getName());
  296. patientGroup.setPartAmount(0);
  297. patientGroup.setGroup(group.getGroup());
  298. patientGroup.setQyrq(sign.getApplyDate());
  299. patientGroup.setSignType("2");//家庭签约
  300. groupInfoDao.save(patientGroup);
  301. }
  302. }
  303. sign.setTeamCode(doctorTeamCode);
  304. signFamilyDao.save(sign);
  305. }
  306. }
  307. /**
  308. * 执行某一条
  309. *
  310. * @param id
  311. */
  312. @Transactional
  313. public void setSignTeamAndGroupById(Long id) throws Exception {
  314. SignFamily sign = signFamilyDao.findOne(id);
  315. try {
  316. if (StringUtils.isNotEmpty(sign.getTeamCode())) {
  317. throw new Exception("error:sign-family-set-group:team-exist:" + id);
  318. }
  319. //建立团队
  320. DoctorTeam doctorTeam = new DoctorTeam();
  321. String doctorTeamCode = getCode();
  322. doctorTeam.setCode(doctorTeamCode);
  323. doctorTeam.setCzrq(new Date());
  324. doctorTeam.setName("团队名称:" + sign.getName());
  325. doctorTeam.setSignType("2");//家庭签约
  326. doctorTeam.setDel("1");
  327. teamDao.save(doctorTeam);
  328. //添加团队成员
  329. if (StringUtils.isNotEmpty(sign.getDoctor())) {
  330. //添加全科
  331. DoctorTeamMember wlyyDoctorTeamDoctor = new DoctorTeamMember();
  332. wlyyDoctorTeamDoctor.setTeam(doctorTeamCode);
  333. wlyyDoctorTeamDoctor.setMemberCode(sign.getDoctor());
  334. wlyyDoctorTeamDoctor.setName(sign.getDoctorName());
  335. wlyyDoctorTeamDoctor.setDel("1");
  336. wlyyDoctorTeamDoctor.setType(2);
  337. wlyyDoctorTeamDoctor.setSignType("2");//家庭签约
  338. wlyyDoctorTeamDoctor.setCode(getCode());
  339. wlyyDoctorTeamDoctor.setCzrq(new Date());
  340. teamMemberDao.save(wlyyDoctorTeamDoctor);
  341. }
  342. if (StringUtils.isNotEmpty(sign.getDoctorHealth())) {
  343. //添加健康管理师
  344. DoctorTeamMember wlyyDoctorTeamDoctor = new DoctorTeamMember();
  345. wlyyDoctorTeamDoctor.setTeam(doctorTeamCode);
  346. wlyyDoctorTeamDoctor.setMemberCode(sign.getDoctorHealth());
  347. wlyyDoctorTeamDoctor.setName(sign.getDoctorHealthName());
  348. wlyyDoctorTeamDoctor.setDel("1");
  349. wlyyDoctorTeamDoctor.setType(3);
  350. wlyyDoctorTeamDoctor.setSignType("2");//家庭签约
  351. wlyyDoctorTeamDoctor.setCode(getCode());
  352. wlyyDoctorTeamDoctor.setCzrq(new Date());
  353. teamMemberDao.save(wlyyDoctorTeamDoctor);
  354. }
  355. //添加患者和团队的关系
  356. DoctorTeamMember wlyyDoctorTeamPatient = new DoctorTeamMember();
  357. wlyyDoctorTeamPatient.setTeam(doctorTeamCode);
  358. wlyyDoctorTeamPatient.setMemberCode(sign.getPatient());
  359. wlyyDoctorTeamPatient.setName(sign.getName());
  360. wlyyDoctorTeamPatient.setDel("1");
  361. wlyyDoctorTeamPatient.setSignType("2");//家庭签约
  362. wlyyDoctorTeamPatient.setType(5);
  363. wlyyDoctorTeamPatient.setCode(getCode());
  364. wlyyDoctorTeamPatient.setCzrq(new Date());
  365. teamMemberDao.save(wlyyDoctorTeamPatient);
  366. if (StringUtils.isEmpty(sign.getIdcard())) {
  367. System.out.println("error:sign-family-set-group:no-idcard:" + sign.getId());
  368. }
  369. int age = IdCardUtil.getAgeForIdcard(sign.getIdcard());
  370. String groupCode = "1";
  371. if (age >= 65) {
  372. groupCode = "3";
  373. }
  374. if (StringUtils.isNotEmpty(sign.getDoctorHealth())) {
  375. //把病人添加到健康管理师的健康分组里
  376. DoctorPatientGroupInfo doctorPatientGroupInfo = new DoctorPatientGroupInfo();
  377. doctorPatientGroupInfo.setCzrq(new Date());
  378. doctorPatientGroupInfo.setDoctor(sign.getDoctorHealth());
  379. doctorPatientGroupInfo.setStatus(1);
  380. doctorPatientGroupInfo.setPatient(sign.getPatient());
  381. doctorPatientGroupInfo.setPname(sign.getName());
  382. doctorPatientGroupInfo.setPartAmount(0);
  383. doctorPatientGroupInfo.setGroup(groupCode);//默认健康分组
  384. doctorPatientGroupInfo.setQyrq(sign.getApplyDate());
  385. doctorPatientGroupInfo.setSignType("2");//家庭签约
  386. groupInfoDao.save(doctorPatientGroupInfo);
  387. }
  388. if (StringUtils.isNotEmpty(sign.getDoctor())) {
  389. //把病人添加到全科医生的健康分组里
  390. DoctorPatientGroupInfo doctorPatientGroupInfo = new DoctorPatientGroupInfo();
  391. doctorPatientGroupInfo.setCzrq(new Date());
  392. doctorPatientGroupInfo.setDoctor(sign.getDoctor());
  393. doctorPatientGroupInfo.setStatus(1);
  394. doctorPatientGroupInfo.setPatient(sign.getPatient());
  395. doctorPatientGroupInfo.setPname(sign.getName());
  396. doctorPatientGroupInfo.setPartAmount(0);
  397. doctorPatientGroupInfo.setGroup(groupCode);//默认健康分组
  398. doctorPatientGroupInfo.setQyrq(sign.getApplyDate());
  399. doctorPatientGroupInfo.setSignType("2");//家庭签约
  400. groupInfoDao.save(doctorPatientGroupInfo);
  401. }
  402. List<DoctorPatientGroupInfo> groups = groupInfoDao.findPatientGroups(sign.getPatient());
  403. if (groups != null && groups.size() > 0) {
  404. for (DoctorPatientGroupInfo group : groups) {
  405. if (StringUtils.isNotEmpty(group.getSignType()) && group.getSignType().equals("2")) {
  406. continue;
  407. }
  408. DoctorPatientGroupInfo patientGroup = new DoctorPatientGroupInfo();
  409. patientGroup.setCzrq(new Date());
  410. patientGroup.setDoctor(group.getDoctor());
  411. patientGroup.setStatus(1);
  412. patientGroup.setPatient(sign.getPatient());
  413. patientGroup.setPname(sign.getName());
  414. patientGroup.setPartAmount(0);
  415. patientGroup.setGroup(group.getGroup());
  416. patientGroup.setQyrq(sign.getApplyDate());
  417. patientGroup.setSignType("2");//家庭签约
  418. groupInfoDao.save(patientGroup);
  419. }
  420. }
  421. sign.setTeamCode(doctorTeamCode);
  422. signFamilyDao.save(sign);
  423. } catch (Exception e) {
  424. e.printStackTrace();
  425. errorSigns.add(sign.getId());
  426. throw new Exception(e.getMessage());
  427. }
  428. }
  429. }