SjlrRsHpController.java 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538
  1. package com.huimv.sjlr;
  2. import java.text.SimpleDateFormat;
  3. import java.util.ArrayList;
  4. import java.util.Calendar;
  5. import java.util.Date;
  6. import java.util.GregorianCalendar;
  7. import java.util.HashMap;
  8. import java.util.List;
  9. import java.util.Map;
  10. import javax.servlet.http.HttpServletRequest;
  11. import javax.servlet.http.HttpServletResponse;
  12. import org.springframework.util.StringUtils;
  13. import org.springframework.web.servlet.ModelAndView;
  14. import com.huimv.busi.xt.constant.XtAppConstant;
  15. import com.huimv.busi.xt.constant.XtSearchSqlConstant;
  16. import com.huimv.busi.xt.model.CommonService;
  17. import com.huimv.busi.xt.utils.DateUtil;
  18. import com.huimv.dto.SjlrRsjlDTO;
  19. import com.huimv.sjlr.dao.SjlrFmjlDAO;
  20. import com.huimv.sjlr.dao.SjlrMzdaDAO;
  21. import com.huimv.sjlr.dao.SjlrPzjlDAO;
  22. import com.huimv.sjlr.dao.SjlrRsjlDAO;
  23. import com.huimv.sjlr.dataobject.SjlrFmjlExample;
  24. import com.huimv.sjlr.dataobject.SjlrMzda;
  25. import com.huimv.sjlr.dataobject.SjlrMzdaExample;
  26. import com.huimv.sjlr.dataobject.SjlrRsjl;
  27. import com.huimv.sjlr.dataobject.SjlrRsjlExample;
  28. import com.huimv.web.base.BaseController;
  29. import com.huimv.xt.dao.XtGydmDAO;
  30. import com.huimv.xt.dataobject.XtGydm;
  31. public class SjlrRsHpController extends BaseController {
  32. private CommonService commonService;
  33. private XtGydmDAO xtGydmDAO;
  34. private SjlrMzdaDAO sjlrMzdaDAO;
  35. private SjlrRsjlDAO sjlrRsjlDAO;
  36. private SjlrPzjlDAO sjlrPzjlDAO;
  37. private SjlrFmjlDAO sjlrFmjlDAO;
  38. /**
  39. * 加载妊娠
  40. * @param request
  41. * @param response
  42. * @return
  43. * @throws Exception
  44. */
  45. public ModelAndView hpSjlrRsIndex(HttpServletRequest request,
  46. HttpServletResponse response) throws Exception {
  47. ModelAndView mv = new ModelAndView("haifmp/sjlr/rs/hpSjlrRsIndex.htm");
  48. Map<String, Object> paramMap = new HashMap<String, Object>();
  49. String dweb = request.getParameter("dweb");
  50. String mcid = request.getParameter("mcid");
  51. String ksrq = request.getParameter("ksrq");
  52. String jsrq = request.getParameter("jsrq");
  53. String cxeph = request.getParameter("cxeph");
  54. String searchFlag = request.getParameter("searchFlag");
  55. SjlrRsjl sjlrRsjl = null;
  56. SjlrRsjlDTO rsjlDTO = null;
  57. List<SjlrRsjlDTO> rsDTOList = new ArrayList<SjlrRsjlDTO>();
  58. List<SjlrRsjl> rsList = null;
  59. String date = "";
  60. int count = 0;
  61. if (StringUtils.hasText(mcid)) {
  62. paramMap.put("mcid", mcid);
  63. paramMap.put("order", XtSearchSqlConstant.order_by_rs);
  64. if (!StringUtils.hasText(searchFlag)) {
  65. searchFlag = "0";//如果没有,默认是耳标搜索页面
  66. }
  67. mv.addObject("searchFlag", searchFlag);
  68. if (XtAppConstant.HAIFMP_SEARCH_FLAG_DATE.equals(searchFlag)) {//日期搜索页面
  69. if (!StringUtils.hasText(jsrq)) {
  70. jsrq = DateUtil.parserDateToDefaultString(commonService.getCurrentDate());
  71. }
  72. paramMap.put("jsrq", jsrq);
  73. mv.addObject("jsrq", jsrq);
  74. if (!StringUtils.hasText(ksrq)) {
  75. Calendar calendar = new GregorianCalendar();
  76. calendar.setTime(commonService.getCurrentDate());
  77. calendar.add(Calendar.DATE, -7);
  78. ksrq = DateUtil.parserDateToDefaultString(calendar.getTime());
  79. }
  80. paramMap.put("ksrq", ksrq);
  81. mv.addObject("ksrq", ksrq);
  82. } else {//耳标搜索页面,无耳标显示当天,有耳标显示当前耳标下全部
  83. if (StringUtils.hasText(dweb)) {
  84. //根据耳标号
  85. paramMap.put("dweb", "%" + dweb +"%" );
  86. mv.addObject("dweb",dweb);
  87. } else if (StringUtils.hasText(cxeph)) {
  88. //根据耳牌号查
  89. paramMap.put("cxeph","%" + cxeph +"%" );
  90. mv.addObject("dweb",cxeph);
  91. } else {
  92. jsrq = ksrq = DateUtil.parserDateToDefaultString(commonService.getCurrentDate());
  93. paramMap.put("jsrq", jsrq);
  94. paramMap.put("ksrq", ksrq);
  95. }
  96. }
  97. List<SjlrRsjl> rsjlList = sjlrRsjlDAO.selectRsjlListByParam(paramMap);
  98. if (rsjlList.size() == 0 && searchFlag.equals("0")) {//如果当天没有则取最近一天
  99. Map<String, Object> paramMapPz = new HashMap<String, Object>();
  100. paramMapPz.put("order", XtSearchSqlConstant.order_by_rs);
  101. List<SjlrRsjl> rsjlListRs = sjlrRsjlDAO.selectRsjlListByParam(paramMapPz);
  102. if (rsjlListRs.size() > 0) {
  103. String lastRssj = DateUtil.parserDateToDefaultString(rsjlListRs.get(0).getRssj());
  104. String lastJsrq = lastRssj;
  105. String lastksrq = lastJsrq;
  106. paramMap.put("jsrq", lastJsrq);
  107. paramMap.put("ksrq", lastksrq);
  108. rsjlList.clear();
  109. rsjlList = sjlrRsjlDAO.selectRsjlListByParam(paramMap);
  110. }
  111. }
  112. List<XtGydm> rsjgList = getGydm(XtAppConstant.CODE_SJLR_RSJG);
  113. if(rsjlList != null && rsjlList.size() > 0 ) {
  114. for (int i = 0 ; i < rsjlList.size() ; i++) {
  115. sjlrRsjl = rsjlList.get(i);
  116. //根据耳标号查询耳牌号
  117. SjlrMzdaExample mzEx = new SjlrMzdaExample();
  118. SjlrMzdaExample.Criteria mzCr = mzEx.createCriteria();
  119. mzCr.andDwebEqualTo(sjlrRsjl.getDweb()).andMcidEqualTo(Integer.parseInt(mcid)).andZfbzEqualTo(XtAppConstant.ZFBZ_VALID);
  120. String eph = sjlrMzdaDAO.selectByExample(mzEx).get(0).getEph();
  121. sjlrRsjl.setEph(eph);
  122. //舍栏
  123. if (StringUtils.hasText(sjlrRsjl.getRsjg())) {
  124. for (XtGydm xtGydm : rsjgList) {
  125. if (xtGydm.getDmid().equals(sjlrRsjl.getRsjg())) {
  126. sjlrRsjl.setRsjgStr(xtGydm.getDmmc());
  127. }
  128. }
  129. }
  130. //妊娠胎次。 筛选该耳标的妊娠修改时间。所有比这个时间小。妊娠结果为怀孕的记录
  131. SjlrRsjlExample rsEx = new SjlrRsjlExample();
  132. SjlrRsjlExample.Criteria rsCr = rsEx.createCriteria();
  133. List<String> rsjg = new ArrayList<String>();
  134. rsjg.add("2");
  135. rsjg.add("13");
  136. rsCr.andDwebEqualTo(sjlrRsjl.getDweb()).andIdLessThanOrEqualTo(sjlrRsjl.getId()).andRssjLessThanOrEqualTo(sjlrRsjl.getRssj()).andRsjgIn(rsjg).andZfbzEqualTo(XtAppConstant.ZFBZ_VALID);
  137. int rstc = sjlrRsjlDAO.countByExample(rsEx);
  138. if (rstc == 0) {
  139. sjlrRsjl.setRstc("1"); //如果从没有记录 则妊娠胎次为1
  140. } else {
  141. sjlrRsjl.setRstc(String.valueOf(rstc));
  142. }
  143. //业务逻辑
  144. if (i == 0) {
  145. rsjlDTO = new SjlrRsjlDTO();
  146. rsList = new ArrayList<SjlrRsjl>();
  147. date = DateUtil.parserDateToDefaultString(sjlrRsjl.getRssj());
  148. rsjlDTO.setDate(date);
  149. rsList.add(sjlrRsjl);
  150. count++;
  151. }else {
  152. if(DateUtil.parserDateToDefaultString(sjlrRsjl.getRssj()).equals(date)) {
  153. count++;
  154. rsList.add(sjlrRsjl);
  155. }else {
  156. rsjlDTO.setRsList(rsList);
  157. rsjlDTO.setCount(count);
  158. rsDTOList.add(rsjlDTO);
  159. rsjlDTO = new SjlrRsjlDTO();
  160. rsList = new ArrayList<SjlrRsjl>();
  161. date = DateUtil.parserDateToDefaultString(sjlrRsjl.getRssj());
  162. rsjlDTO.setDate(date);
  163. rsList.add(sjlrRsjl);
  164. count = 1;
  165. }
  166. }
  167. }
  168. if (count > 0 ) {
  169. rsjlDTO.setRsList(rsList);
  170. rsjlDTO.setCount(count);
  171. rsDTOList.add(rsjlDTO);
  172. }
  173. }
  174. mv.addObject("rsDTOList", rsDTOList);
  175. }
  176. mv.addObject("ksrq", ksrq);
  177. mv.addObject("jsrq", jsrq);
  178. mv.addObject("dweb", dweb);
  179. return mv;
  180. }
  181. /**
  182. * 加载妊娠记录新增页面
  183. * @param request
  184. * @param response
  185. * @return
  186. * @throws Exception
  187. */
  188. public ModelAndView hpSjlrRsAdd(HttpServletRequest request,
  189. HttpServletResponse response) throws Exception {
  190. ModelAndView mv = new ModelAndView("haifmp/sjlr/rs/hpSjlrRsjlAdd.htm");
  191. String dweb = request.getParameter("dweb");
  192. String id = request.getParameter("id");
  193. String mcid = request.getParameter("mcid");
  194. String newDate = request.getParameter("date");
  195. String eph = request.getParameter("eph");
  196. Date drrssj = null;
  197. SjlrRsjl sjlrRsjl = new SjlrRsjl();
  198. List<XtGydm> slList = getGydm(XtAppConstant.CODE_SJLR_SL);
  199. List<XtGydm> rsjgList = getGydm(XtAppConstant.CODE_SJLR_RSJG);
  200. List<XtGydm> bzsfList = getGydm(XtAppConstant.CODE_BZSF);
  201. List<SjlrRsjl> rstcList = null;
  202. if ("undefined".equals(id)) {
  203. id = null;
  204. }
  205. if (StringUtils.hasText(mcid)) {
  206. Map<String, Object> paramMap = new HashMap<String, Object>();
  207. paramMap.put("mcid", mcid);
  208. //修改
  209. if (StringUtils.hasText(id) && !StringUtils.hasText(dweb)) {
  210. sjlrRsjl = sjlrRsjlDAO.selectByPrimaryKey(Integer.parseInt(id));
  211. dweb = sjlrRsjl.getDweb();
  212. //根据动物耳标获得耳牌号
  213. SjlrMzdaExample mzEx = new SjlrMzdaExample();
  214. SjlrMzdaExample.Criteria mzCr = mzEx.createCriteria();
  215. mzCr.andDwebEqualTo(sjlrRsjl.getDweb()).andMcidEqualTo(Integer.parseInt(mcid)).andZfbzEqualTo(XtAppConstant.ZFBZ_VALID);
  216. eph = sjlrMzdaDAO.selectByExample(mzEx).get(0).getEph();
  217. sjlrRsjl.setEph(eph);
  218. //妊娠胎次。 筛选该耳标的妊娠修改时间。所有比这个时间小。妊娠结果为怀孕的记录
  219. Date rssj = sjlrRsjl.getXgsj();
  220. SjlrRsjlExample rsEx = new SjlrRsjlExample();
  221. SjlrRsjlExample.Criteria rsCr = rsEx.createCriteria();
  222. List<String> rsjg = new ArrayList<String>();
  223. rsjg.add("2");
  224. rsjg.add("13");
  225. rsCr.andDwebEqualTo(sjlrRsjl.getDweb()).andRssjLessThanOrEqualTo(rssj).andIdLessThanOrEqualTo(sjlrRsjl.getId()).andRsjgIn(rsjg).andZfbzEqualTo(XtAppConstant.ZFBZ_VALID);
  226. int rstc = sjlrRsjlDAO.countByExample(rsEx);
  227. if (rstc == 0) {
  228. sjlrRsjl.setRstc("1"); //如果从没有记录 则妊娠胎次为1
  229. } else {
  230. sjlrRsjl.setRstc(String.valueOf(rstc));
  231. }
  232. mv.addObject("id",id);
  233. mv.addObject("dweb",dweb);
  234. id = null;
  235. } else if (StringUtils.hasText(dweb) && !StringUtils.hasText(id)) {
  236. if (StringUtils.hasText(eph)) {
  237. sjlrRsjl.setEph(eph);
  238. paramMap.put("dweb", dweb);
  239. rstcList = sjlrRsjlDAO.selectRsjlPzListByParam(paramMap);
  240. SjlrRsjl sjlrRsjl2 = rstcList.get(0);
  241. sjlrRsjl.setRssl(sjlrRsjl2.getSl());
  242. sjlrRsjl.setZrsl(sjlrRsjl2.getSl());
  243. sjlrRsjl.setPzid(Integer.parseInt(sjlrRsjl2.getPzids()));
  244. sjlrRsjl.setDweb(dweb);
  245. //妊娠胎次。 筛选该耳标的妊娠修改时间。所有比这个时间小。妊娠结果为怀孕的记录
  246. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  247. if (StringUtils.hasText(newDate)) {
  248. drrssj = sdf.parse(newDate);
  249. }else {
  250. drrssj = commonService.getCurrentDate();
  251. }
  252. SjlrRsjlExample rsEx = new SjlrRsjlExample();
  253. SjlrRsjlExample.Criteria rsCr = rsEx.createCriteria();
  254. List<String> rsjg = new ArrayList<String>();
  255. rsjg.add("2");
  256. rsjg.add("13");
  257. rsCr.andDwebEqualTo(dweb).andRssjLessThan(drrssj).andRsjgIn(rsjg).andZfbzEqualTo(XtAppConstant.ZFBZ_VALID);
  258. int rstc = sjlrRsjlDAO.countByExample(rsEx);
  259. if (rstc == 0) {
  260. sjlrRsjl.setRstc("1"); //如果从没有记录 则妊娠胎次为1
  261. } else {
  262. sjlrRsjl.setRstc(String.valueOf(rstc+1));
  263. }
  264. }
  265. }
  266. }
  267. if (newDate != null) {
  268. SimpleDateFormat sdf = new SimpleDateFormat(XtAppConstant.TIME_FORMAT);//小写的mm表示的是分钟
  269. java.util.Date newdate = sdf.parse(newDate);
  270. sjlrRsjl.setRssj(newdate);
  271. }
  272. mv.addObject("bzsfList", bzsfList);
  273. mv.addObject("slList", slList);
  274. mv.addObject("rsjgList", rsjgList);
  275. mv.addObject("sjlrRsjl", sjlrRsjl);
  276. mv.addObject("date" , newDate);
  277. mv.addObject("dweb",dweb);
  278. return mv;
  279. }
  280. /**
  281. * 保存
  282. * @param request
  283. * @throws Exception
  284. */
  285. public void saveSjlrRsjl(HttpServletRequest request,
  286. HttpServletResponse response) throws Exception {
  287. response.setContentType("text/json; charset=UTF-8");
  288. response.addHeader("Cache-Control", "no-cache,must-revalidate");
  289. response.addHeader("Pragma", "no-cache");
  290. String dweb = request.getParameter("dweb");
  291. Date rssj = null;
  292. //String id = request.getParameter("id");
  293. SjlrRsjl sjlrRsjl = new SjlrRsjl();
  294. sjlrRsjl = (SjlrRsjl) parseObjectFromRequest(request, sjlrRsjl);
  295. sjlrRsjl.setXgr(getLoginSessionBean(request).getYhid().toString());
  296. sjlrRsjl.setXgsj(commonService.getCurrentDate());
  297. sjlrRsjl.setZfbz(XtAppConstant.ZFBZ_VALID);
  298. if (StringUtils.hasText(dweb)) {
  299. sjlrRsjl.setDweb(dweb);
  300. }
  301. //如果这个配种ID已经被用过, 就返回
  302. SjlrRsjlExample rsEx = new SjlrRsjlExample();
  303. SjlrRsjlExample.Criteria rsCr = rsEx.createCriteria();
  304. rsCr.andPzidEqualTo(sjlrRsjl.getPzid()).andZfbzEqualTo(XtAppConstant.ZFBZ_VALID);
  305. int pzid = sjlrRsjlDAO.countByExample(rsEx);
  306. if (pzid > 0 && sjlrRsjl.getId() == 0) {
  307. String jsonStr = "{\"count\" : \"2\"}";
  308. response.getWriter().write(jsonStr);
  309. return;
  310. }
  311. //妊娠时间应该大于配种时间
  312. Date pzsj = sjlrPzjlDAO.selectByPrimaryKey(sjlrRsjl.getPzid()).getPzsj();
  313. if (sjlrRsjl.getId() != 0) {
  314. rssj = sjlrRsjlDAO.selectByPrimaryKey(sjlrRsjl.getId()).getRssj();
  315. }else {
  316. rssj = sjlrRsjl.getRssj();
  317. }
  318. if (pzsj.getTime() > rssj.getTime()) {
  319. String jsonStr = "{\"count\" : \"3\"}";
  320. response.getWriter().write(jsonStr);
  321. return;
  322. }
  323. if (sjlrRsjl.getId().equals(0)) {
  324. sjlrRsjlDAO.insertSelective(sjlrRsjl);
  325. } else {
  326. sjlrRsjlDAO.updateByPrimaryKeySelective(sjlrRsjl);
  327. }
  328. String zrsl = sjlrRsjl.getZrsl();
  329. if (StringUtils.hasText(zrsl)) {
  330. SjlrMzdaExample mzdaEx = new SjlrMzdaExample();
  331. SjlrMzdaExample.Criteria mzdaCr = mzdaEx.createCriteria();
  332. mzdaCr.andDwebEqualTo(sjlrRsjl.getDweb()).andZfbzEqualTo(XtAppConstant.ZFBZ_VALID);
  333. String mcid = request.getParameter("mcid");
  334. if (StringUtils.hasText(mcid)) {
  335. mzdaCr.andMcidEqualTo(Integer.parseInt(mcid));
  336. }
  337. String sczt = sjlrMzdaDAO.selectByExample(mzdaEx).get(0).getDqzt();
  338. SjlrMzda sjlrMzda = new SjlrMzda();
  339. sjlrMzda.setSl(zrsl);
  340. sjlrMzda.setXgr(getLoginSessionBean(request).getYhid().toString());
  341. sjlrMzda.setXgsj(commonService.getCurrentDate());
  342. if (XtAppConstant.CODE_SJLR_RSJG_HY.equals(sjlrRsjl.getRsjg())) {
  343. sjlrMzda.setDqzt(XtAppConstant.CODE_SJLR_DQZT_HY);
  344. } else if (XtAppConstant.CODE_SJLR_RSJG_KT.equals(sjlrRsjl.getRsjg())) {
  345. sjlrMzda.setDqzt(XtAppConstant.CODE_SJLR_DQZT_KH);
  346. } else if (XtAppConstant.CODE_SJLR_RSJG_LC.equals(sjlrRsjl.getRsjg())) {
  347. sjlrMzda.setDqzt(XtAppConstant.CODE_SJLR_DQZT_LC);
  348. } else if (XtAppConstant.CODE_SJLR_RSJG_FQ.equals(sjlrRsjl.getRsjg())) {
  349. sjlrMzda.setDqzt(XtAppConstant.CODE_SJLR_DQZT_FQ);
  350. }
  351. sjlrMzda.setSczt(sczt);
  352. sjlrMzdaDAO.updateByExampleSelective(sjlrMzda, mzdaEx);
  353. }
  354. String jsonStr = "{\"count\" : \"1\"}";
  355. response.getWriter().write(jsonStr);
  356. }
  357. /**
  358. * 耳标公共查询页面
  359. * @param request
  360. * @param response
  361. * @return
  362. * @throws Exception
  363. */
  364. public ModelAndView getRsjlSearchDweb(HttpServletRequest request,
  365. HttpServletResponse response) throws Exception {
  366. ModelAndView mv = new ModelAndView("haifmp/sjlr/rs/rsjlSearchModel.htm");
  367. String dweb = request.getParameter("dweb");
  368. String mcid = request.getParameter("mcid");
  369. String date = request.getParameter("date");
  370. String cxeph = request.getParameter("cxeph");
  371. if (StringUtils.hasText(mcid)) {
  372. Map<String, Object> paramMap = new HashMap<String, Object>();
  373. paramMap.put("mcid", mcid);
  374. if (StringUtils.hasText(dweb)) {
  375. paramMap.put("dweb", "%" + dweb + "%");
  376. mv.addObject("dweb", dweb);
  377. }
  378. if (StringUtils.hasText(cxeph)) {
  379. paramMap.put("cxeph", "%" + cxeph + "%");
  380. mv.addObject("dweb", cxeph);
  381. }
  382. String dqzthb = XtAppConstant.CODE_SJLR_DQZT_HB;
  383. paramMap.put("hb", dqzthb);
  384. String dqztqt = XtAppConstant.CODE_SJLR_DQZT_QT;
  385. paramMap.put("qt", dqztqt);
  386. String dqztkh = XtAppConstant.CODE_SJLR_DQZT_KH;
  387. paramMap.put("kh", dqztkh);
  388. String dqztdn = XtAppConstant.CODE_SJLR_DQZT_DN;
  389. paramMap.put("dn", dqztdn);
  390. String dqztlc = XtAppConstant.CODE_SJLR_DQZT_LC;
  391. paramMap.put("lc", dqztlc);
  392. String dqztfq = XtAppConstant.CODE_SJLR_DQZT_FQ;
  393. paramMap.put("fq", dqztfq);
  394. String dqztzc = XtAppConstant.CODE_SJLR_DQZT_ZC;
  395. paramMap.put("zc", dqztzc);
  396. List<SjlrMzda> mzdaList = sjlrMzdaDAO.getMzdaListByPzjl(paramMap);
  397. List<XtGydm> pzList = getGydm(XtAppConstant.CODE_SJLR_ZZPZ);
  398. List<XtGydm> dqztList = getGydm(XtAppConstant.CODE_SJLR_MZZT);
  399. if (mzdaList != null && mzdaList.size() > 0) {
  400. for (SjlrMzda sjlrMzda : mzdaList) {
  401. //品种
  402. if (StringUtils.hasText(sjlrMzda.getPz())) {
  403. for (XtGydm xtGydm : pzList) {
  404. if (sjlrMzda.getPz().equals(xtGydm.getDmid())) {
  405. sjlrMzda.setPzStr(xtGydm.getDmmc());
  406. }
  407. }
  408. }
  409. //当前状态
  410. if (StringUtils.hasText(sjlrMzda.getDqzt())) {
  411. for (XtGydm xtGydm : dqztList) {
  412. if (sjlrMzda.getDqzt().equals(xtGydm.getDmid())) {
  413. sjlrMzda.setDqztStr(xtGydm.getDmmc());
  414. }
  415. }
  416. }
  417. }
  418. }
  419. mv.addObject("mzdaList", mzdaList);
  420. mv.addObject("date",date);
  421. }
  422. return mv;
  423. }
  424. /**
  425. * 是否是24小时之内的数据
  426. * @param request
  427. * @throws Exception
  428. */
  429. public void checkRsDataIsIn24H(HttpServletRequest request,
  430. HttpServletResponse response) throws Exception {
  431. response.setContentType("text/json; charset=UTF-8");
  432. response.addHeader("Cache-Control", "no-cache,must-revalidate");
  433. response.addHeader("Pragma", "no-cache");
  434. String id = request.getParameter("id");
  435. String jsonStr = "";
  436. if (StringUtils.hasText(id)) {
  437. SjlrRsjlExample RsjlEx = new SjlrRsjlExample();
  438. SjlrRsjlExample.Criteria rsjlCr = RsjlEx.createCriteria();
  439. rsjlCr.andIdEqualTo(Integer.valueOf(id)).andZfbzEqualTo(XtAppConstant.ZFBZ_VALID);
  440. List<SjlrRsjl> RsjlList = sjlrRsjlDAO.selectByExample(RsjlEx);
  441. if (RsjlList.size() > 0) {
  442. boolean isIn24H = commonService.getCurrentDate().getTime() -RsjlList.get(0).getRssj().getTime() <= 24*60*60*1000;
  443. if (isIn24H) {
  444. jsonStr = "{\"count\" : \"1\"}";
  445. } else {
  446. jsonStr = "{\"count\" : \"0\"}";
  447. }
  448. }
  449. }
  450. response.getWriter().write(jsonStr);
  451. }
  452. /**
  453. * 检查该次妊娠是否已经有分娩记录
  454. * @param id
  455. * @thoews Exception
  456. * @return true of false
  457. */
  458. public void checkFmData(HttpServletRequest request,
  459. HttpServletResponse response) throws Exception {
  460. response.setContentType("text/json; charset=UTF-8");
  461. response.addHeader("Cache-Control", "no-cache,must-revalidate");
  462. response.addHeader("Pragma", "no-cache");
  463. String id = request.getParameter("id");
  464. String jsonStr = "";
  465. if (StringUtils.hasText(id)) {
  466. SjlrFmjlExample FmjlEx = new SjlrFmjlExample();
  467. SjlrFmjlExample.Criteria fmjlCr = FmjlEx.createCriteria();
  468. fmjlCr.andRsidEqualTo(Integer.valueOf(id)).andZfbzEqualTo(XtAppConstant.ZFBZ_VALID);
  469. int count = sjlrFmjlDAO.countByExample(FmjlEx);
  470. if (count == 0) { //如果在分娩记录里没有该RSID ,则可以修改。
  471. jsonStr = "{\"count\" : \"1\"}";
  472. } else {
  473. jsonStr = "{\"count\" : \"0\"}";
  474. }
  475. }
  476. response.getWriter().write(jsonStr);
  477. }
  478. /**
  479. * 获取公用代码
  480. * @param lbmc
  481. * @return
  482. * @throws Exception
  483. */
  484. private List<XtGydm> getGydm(String lbmc) {
  485. return xtGydmDAO.selectGydmByLbmc(lbmc);
  486. }
  487. public void setCommonService(CommonService commonService) {
  488. this.commonService = commonService;
  489. }
  490. public void setXtGydmDAO(XtGydmDAO xtGydmDAO) {
  491. this.xtGydmDAO = xtGydmDAO;
  492. }
  493. public void setSjlrMzdaDAO(SjlrMzdaDAO sjlrMzdaDAO) {
  494. this.sjlrMzdaDAO = sjlrMzdaDAO;
  495. }
  496. public void setSjlrRsjlDAO(SjlrRsjlDAO sjlrRsjlDAO) {
  497. this.sjlrRsjlDAO = sjlrRsjlDAO;
  498. }
  499. public void setSjlrPzjlDAO(SjlrPzjlDAO sjlrPzjlDAO) {
  500. this.sjlrPzjlDAO = sjlrPzjlDAO;
  501. }
  502. public void setSjlrFmjlDAO(SjlrFmjlDAO sjlrFmjlDAO) {
  503. this.sjlrFmjlDAO = sjlrFmjlDAO;
  504. }
  505. }