meth.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414
  1. export default {
  2. //时间
  3. time(index) {
  4. var nowDate = new Date((new Date).getTime() + 8 * 60 * 60 * 1000)
  5. var time = nowDate.toJSON().split('T').join(' ').substr(0, index)
  6. return time
  7. },
  8. //弹出提示
  9. getPrompt(title, icon = 'none', duration = 2000) {
  10. uni.showToast({
  11. title: title,
  12. icon: icon,
  13. duration: duration
  14. })
  15. },
  16. getShowToast(val1, val2) {
  17. let title = '必填'
  18. if (val2 == 1) {
  19. title = '必选一项'
  20. } else if (val2 == 2) {
  21. title = '必添加'
  22. } else if (val2 == 3) {
  23. title = '大于1'
  24. }
  25. this.getPrompt(val1 + title)
  26. },
  27. getForm(item) {
  28. let form = {
  29. weiTuoLeiXing: item.wei_tuo_lei_xing_,
  30. weiTuoDanLaiYuan: item.wei_tuo_lei_xing_,
  31. weiTuoBianHao: item.wei_tuo_bian_hao_,
  32. heTongId: item.he_tong_id_,
  33. weiTuoHeTong: item.wei_tuo_he_tong_,
  34. weiTuoDanWei: item.wei_tuo_dan_wei_,
  35. songJianDanWei: item.wei_tuo_dan_wei_,
  36. qiWangWanChengShi: item.qiWangWanChengShi,
  37. lhypb: [],
  38. fuKuanFangShi: item.fu_kuan_fang_shi_,
  39. baoGaoLeiXing: item.bao_gao_lei_xing_,
  40. chuJuBaoGaoYaoQiu: item.chu_ju_bao_gao_ya,
  41. chuBaoGaoShiJian: item.chu_bao_gao_shi_j,
  42. yangBenChuLi: item.yang_ben_chu_li_,
  43. weiTuoFangMingChe: item.wei_tuo_fang_ming,
  44. weiTuoFangLianXiR: item.wei_tuo_fang_lian,
  45. weiTuoFangLianXiD: item.wei_tuo_lian,
  46. weiTuoRiQi: item.wei_tuo_ri_qi_,
  47. weiTuoFangQueRen: item.wei_tuo_fang_que_,
  48. zongJia: item.zong_jia_,
  49. zhanShiBiaoId: item.zhan_shi_biao_id_
  50. }
  51. return form
  52. },
  53. getListForm(list, jianCeList, taoCanXiangmMuList, taoCanList) {
  54. let TList = []
  55. let noList = []
  56. list.forEach((item, index) => {
  57. //常规项目处理
  58. let jiancLis = JSON.parse(JSON.stringify(jianCeList))
  59. let changGuijianCe = []
  60. if (item.jian_ce_xiang_mu2_) {
  61. changGuijianCe = item.jian_ce_xiang_mu_.split(",")
  62. jiancLis.forEach(it => {
  63. let jianSin = changGuijianCe.findIndex(itg => itg == it.id_)
  64. if (jianSin >= 0) {
  65. it.checked = true
  66. }
  67. })
  68. let showHen = this.getXiangMuList(changGuijianCe, jiancLis) //已经选择的检测项目是否存在常规项目
  69. if (!showHen) {
  70. noList.push(index)
  71. }
  72. }
  73. //套餐处理
  74. let tCList = JSON.parse(JSON.stringify(taoCanList))
  75. if (item.xuan_ze_tao_can_) {
  76. let xuanZeTaoCan = item.xuan_ze_tao_can_.split(',')
  77. if (tCList.length > 0 && xuanZeTaoCan.length > 0) {
  78. xuanZeTaoCan.forEach(ite => {
  79. let showData = tCList.findIndex(itg => itg.id_ == ite)
  80. if (showData >= 0) {
  81. tCList[showData].checked = true
  82. }
  83. })
  84. }
  85. }
  86. //套餐项目处理
  87. let tCXmList = JSON.parse(JSON.stringify(taoCanXiangmMuList))
  88. let tcXmlist = []
  89. if (item.tao_can_xiang_mu_) {
  90. let taoCanXiangMu = item.tao_can_xiang_mu_.split(",")
  91. if (tCXmList.length > 0 && taoCanXiangMu.length > 0) {
  92. taoCanXiangMu.forEach(ite => {
  93. let showData = tCXmList.find(itg => itg.id_ == ite)
  94. if (showData) {
  95. tcXmlist.push(showData)
  96. }
  97. })
  98. }
  99. }
  100. let obj = {
  101. id: item.id_,
  102. jianCeXiangMu: item.jian_ce_xiang_mu_,
  103. jianCeXiangMu2: changGuijianCe, //不传到后台
  104. yangPinMingCheng: item.yang_pin_ming_che,
  105. yangPinBianHao: item.yang_pin_bian_hao,
  106. xingMing: item.xing_ming_,
  107. xingBie: item.xing_bie_,
  108. nianLing: item.nian_ling_,
  109. songJianPiHao: item.song_jian_pi_hao_,
  110. yangPinZhuangTai: item.yang_pin_zhuang_t,
  111. songJianShiJian: item.song_jian_shi_jia,
  112. beiZhu1: item.bei_zhu_1_,
  113. yangPinLeiXing: item.yang_pin_lei_xing,
  114. yangBenYunShuTiao: item.yang_ben_yun_shu_,
  115. shuLiang: parseInt(item.shu_liang_ || 0),
  116. yangPinGuiGe: item.yang_pin_gui_ge_,
  117. yangPinLeiXingEr: item.yang_pin_lei_er_,
  118. yangPinYunShuTiao: item.yang_pin_yun_shu_,
  119. yangPinGuiGeEr: item.yang_pin_gui_ge_e,
  120. shuLiangEr: parseInt(item.shu_liang_er_ || 0),
  121. yangPinLeiXingSan: item.yang_pin_lei_san_,
  122. yangPinGuiGeSan: item.yang_pin_gui_ge_s,
  123. shuLiangSan: parseInt(item.shu_liang_san_ || 0),
  124. yangPinYunShuSan: item.yang_pin_yun_san,
  125. yangPinLeiXingSi: item.yang_pin_lei_si_,
  126. yangPinGuiGeSi: item.yang_pin_gui_si_,
  127. yangPinYunShuSi: item.yang_pin_yun_si_,
  128. shuLiangSi: parseInt(item.shu_liang_si_ || 0),
  129. jianCeList: jiancLis,
  130. jianCeType: '',
  131. xiangMuMingCheng: item.xiang_mu_ming_che,
  132. yangPinZongJia: item.yang_pin_zong_jia,
  133. yangPinZongShu: parseInt(item.yang_pin_zong_shu),
  134. jieYangZhuangTai: item.jie_yang_zhuang_t,
  135. showBoolean1: true,
  136. showBoolean2: false,
  137. showBoolean3: false,
  138. showBoolean4: false,
  139. mingChengShow: false,
  140. taoCanList: tCList,
  141. taoCanXiangMuList: tcXmlist,
  142. taoCanZiBiaoId: item.tao_can_zi_biao_i,
  143. taoCanMingCheng: item.tao_can_ming_chen,
  144. taoCanJiaGe: item.tao_can_jia_ge_,
  145. taoCanXiangMu: item.tao_can_xiang_mu_,
  146. xuanZeTaoCan: item.xuan_ze_tao_can_,
  147. heTongBianHao: item.he_tong_bian_hao_ || '',
  148. jiaoFeiFangShi: item.jiao_fei_fang_shi || '',
  149. fuKuanZhuangTai: item.fu_kuan_zhuang_ta || '',
  150. heTongLeiXing: item.he_tong_lei_xing_ || '',
  151. weiTuoRiQi: item.wei_tuo_ri_qi_ || '',
  152. songJianDanWei: item.song_jian_dan_wei || '',
  153. changGuiJiaGe: item.chang_gui_jia_ge_ || '',
  154. xiangMuMingCheng: item.chang_gui_xiang_m || '',
  155. taoCanZheHouJiaGe: item.tao_can_zhe_hou_j || '',
  156. chuBaoGaoYaoQiu: item.chu_bao_gao_yao_q || '',
  157. changGuiZheHouJia: item.chang_gui_zhe_hou || '',
  158. jianCeTypeString: ''
  159. }
  160. if (obj.yangPinLeiXing != '') {
  161. obj.showBoolean1 = true
  162. }
  163. if (obj.yangPinLeiXingEr != '') {
  164. obj.showBoolean2 = true
  165. }
  166. if (obj.yangPinLeiXingSan != '') {
  167. obj.showBoolean3 = true
  168. }
  169. if (obj.yangPinLeiXingSi != '') {
  170. obj.showBoolean4 = true
  171. }
  172. let show = changGuijianCe.some(item => item == '1039826037036285952' || item ==
  173. '1040205909151711232')
  174. if (show) {
  175. obj.mingChengShow = true
  176. }
  177. TList.push(obj)
  178. })
  179. if (noList.length > 0) {
  180. let setList = [...new Set(noList)]
  181. this.getPrompt('样品' + (parseInt(setList.join(",")) + 1) + '因为特殊原因有些检测项目暂时无法检测,请联系医院确定')
  182. }
  183. return TList
  184. },
  185. //添加样品字段
  186. getMjypbSin(index, list1, list2) {
  187. let obj = {
  188. id: '',
  189. jianCeXiangMu: '',
  190. jianCeXiangMu2: [], //不传到后台
  191. yangPinMingCheng: '',
  192. yangPinBianHao: index,
  193. xingMing: '',
  194. xingBie: '',
  195. nianLing: '',
  196. songJianPiHao: '',
  197. yangPinZhuangTai: '',
  198. songJianShiJian: this.time(10),
  199. beiZhu1: '',
  200. yangPinLeiXing: '',
  201. yangBenYunShuTiao: '',
  202. shuLiang: 0,
  203. yangPinGuiGe: '',
  204. yangPinLeiXingEr: '',
  205. yangPinYunShuTiao: '',
  206. yangPinGuiGeEr: '',
  207. shuLiangEr: 0,
  208. yangPinLeiXingSan: '',
  209. yangPinGuiGeSan: '',
  210. shuLiangSan: 0,
  211. yangPinYunShuSan: '',
  212. yangPinLeiXingSi: '',
  213. yangPinGuiGeSi: '',
  214. yangPinYunShuSi: '',
  215. shuLiangSi: 0,
  216. jianCeList: JSON.parse(JSON.stringify(list1)),
  217. jianCeType: [],
  218. jianCeTypeString: '',
  219. xiangMuMingCheng: '',
  220. yangPinZongJia: '',
  221. lianXiDianHua: '',
  222. lianXiRen: '',
  223. weiTuoDanWei: '',
  224. weiTuoDanHao: '',
  225. yangPinZongShu: 0,
  226. jieYangZhuangTai: "待接收",
  227. showBoolean1: true,
  228. showBoolean2: false,
  229. showBoolean3: false,
  230. showBoolean4: false,
  231. mingChengShow: false,
  232. taoCanList: JSON.parse(JSON.stringify(list2)),
  233. taoCanXiangMuList: [],
  234. taoCanZiBiaoId: '',
  235. taoCanMingCheng: '',
  236. taoCanJiaGe: '',
  237. taoCanXiangMu: '',
  238. xuanZeTaoCan: '',
  239. heTongBianHao: '',
  240. jiaoFeiFangShi: '',
  241. fuKuanZhuangTai: '',
  242. heTongLeiXing: '',
  243. weiTuoRiQi: '',
  244. songJianDanWei: '',
  245. changGuiXiangMuMi: '',
  246. taoCanZheHouJiaGe: '',
  247. changGuiZheHouJia: '',
  248. chuBaoGaoYaoQiu: '',
  249. search: ''
  250. }
  251. return obj
  252. },
  253. getActiveNum1(form) {
  254. if (form.heTongId == '') {
  255. this.getPrompt('请选择合同')
  256. return false
  257. }
  258. if (form.yangBenChuLi == '') {
  259. this.getPrompt('请选择检毕样品处置')
  260. return false
  261. }
  262. return true
  263. },
  264. //提交判断
  265. getJudge(form) {
  266. if (form.showBoolean1) {
  267. if (form.yangPinLeiXing == '') {
  268. this.getShowToast('样品信息的样品类型①')
  269. return false
  270. }
  271. if (form.yangBenYunShuTiao == '') {
  272. this.getShowToast('样品信息的运输条件①')
  273. return false
  274. }
  275. if (form.yangPinGuiGe == '') {
  276. this.getShowToast('样品信息的样品规格①')
  277. return false
  278. }
  279. if (form.shuLiang == 0) {
  280. this.getShowToast('样品信息的样品数量①', 3)
  281. return false
  282. }
  283. }
  284. if (form.showBoolean2) {
  285. if (form.yangPinLeiXingEr == '') {
  286. this.getShowToast('样品信息的样品类型②')
  287. return false
  288. }
  289. if (form.yangPinYunShuTiao == '') {
  290. this.getShowToast('样品信息的运输条件②')
  291. return false
  292. }
  293. if (form.yangPinGuiGeEr == '') {
  294. this.getShowToast('样品信息的样品规格②')
  295. return false
  296. }
  297. if (form.shuLiangEr == 0) {
  298. this.getShowToast('样品信息的样品数量②', 3)
  299. return false
  300. }
  301. }
  302. if (form.showBoolean3) {
  303. if (form.yangPinLeiXingSan == '') {
  304. this.getShowToast('样品信息的样品类型③')
  305. return false
  306. }
  307. if (form.yangPinYunShuSan == '') {
  308. this.getShowToast('样品信息的运输条件③')
  309. return false
  310. }
  311. if (form.yangPinGuiGeSan == '') {
  312. this.getShowToast('样品信息的样品规格③')
  313. return false
  314. }
  315. if (form.shuLiangSan == 0) {
  316. this.getShowToast('样品信息的样品数量③', 3)
  317. return false
  318. }
  319. }
  320. if (form.showBoolean4) {
  321. if (form.yangPinLeiXingSi == '') {
  322. this.getShowToast('样品信息的样品类型④')
  323. return false
  324. }
  325. if (form.yangPinYunShuSi == '') {
  326. this.getShowToast('样品信息的运输条件④')
  327. return false
  328. }
  329. if (form.yangPinGuiGeSi == '') {
  330. this.getShowToast('样品信息的样品规格④')
  331. return false
  332. }
  333. if (form.shuLiangSi == 0) {
  334. this.getShowToast('样品信息的样品数量④', 3)
  335. return false
  336. }
  337. }
  338. //判断是否有套餐,并且是否选择列套餐
  339. let taoCanListShow = false
  340. if (form.taoCanList.length > 0) {
  341. taoCanListShow = form.taoCanList.some(it => it.checked)
  342. }
  343. //判断是否有套餐,并且是否选择列套餐,并且套餐是否有项目
  344. if (form.taoCanList.length > 0 && taoCanListShow && form.taoCanXiangMuList.length > 0) {
  345. return true
  346. } else {
  347. let flag = false
  348. //判断常规项目是否选择项目
  349. let show = form.jianCeList.every(it => !it.checked)
  350. if (show) {
  351. this.getPrompt('常规检测项目与套餐检测项目至少选择其中一项')
  352. return false
  353. }
  354. }
  355. return true
  356. },
  357. //遍历list1 在 list的是否存在
  358. getXiangMuList(list1, list2) {
  359. console.log(list1)
  360. for (let item of list1) {
  361. let show = list2.findIndex(it => it.id_ == item)
  362. console.log(show)
  363. if (show < 0) {
  364. return false
  365. }
  366. }
  367. return true
  368. },
  369. getHeTongBianHao(list, id) {
  370. let data = list.find(item => item.value == id)
  371. if (data) {
  372. return data.text
  373. } else {
  374. return ''
  375. }
  376. }
  377. }