moreplan.html 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>Document</title>
  8. <link rel="shortcut icon" href="../../../favicon.ico">
  9. <link rel="stylesheet" href="../../../css/font-awesome.min.css">
  10. <link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
  11. <link rel="stylesheet" type="text/css" href="../../../css/cross.ui.css" />
  12. <link rel="stylesheet" href="../../../plugins/layui-v2.3.0/layui/css/layui.css">
  13. <link rel="stylesheet" href="../../../css//bootstrap.min.css">
  14. <link rel="stylesheet" href="../css/moreplan.css">
  15. </head>
  16. <body>
  17. <div id="app">
  18. <div class="re-title no-select">
  19. <div class="name">康复管理</div>
  20. </div>
  21. <header-tab :appname="appname" :isback="isback" :isrefresh="isrefresh"></header-tab>
  22. <div class="neirong2">
  23. <ul class="c-blocks-3">
  24. <li>患者信息</li>
  25. <li>医生及计划信息</li>
  26. <li>操作</li>
  27. </ul>
  28. <!-- henfu -->
  29. <div class="henfu">
  30. <div class="data flex-box">
  31. <div class="dataa">
  32. <div class="quote"></div>
  33. <div class="dataatop">
  34. <div class="dac flex-box">
  35. <p>
  36. <img src="../images/p-male.png" width="40" height="40" class="c-images-cycle" />
  37. </p>
  38. <div class="xinxi">
  39. <div class="xinxitop flex-box">
  40. <p>{{name}}&#x3000;({{sex}}{{age}}岁)
  41. </p>
  42. <p class="biaoqian">
  43. <span></span>康复期
  44. </p>
  45. </div>
  46. <p>{{hospital}}</p>
  47. </div>
  48. </div>
  49. <div class="dataabom">
  50. <p>疾病类型:</p>
  51. <p v-for="(data1, index) in diseaseList" class="inline-block">{{data1}}</p>
  52. </div>
  53. </div>
  54. </div>
  55. <div class="datab flex-box">
  56. <div class="doc fdoctor">
  57. <div class="fdt flex-box">
  58. <img src="../../../images/d-default.png" width="40" height="40" class="c-images-cycle">
  59. <div class="miaoshu cgre">
  60. <p>
  61. <span>家庭医生</span>&nbsp;{{specialistAdminTeamName}}</p>
  62. <p class="mt10">{{familyHospitalName}}</p>
  63. </div>
  64. </div>
  65. <div class="fdb flex-box">
  66. <p>完成项目
  67. <span>{{signFamilyFinishItemCount}}</span>
  68. </p>
  69. <p>服务记录
  70. <span>{{signFamilyServiceRecordCount}}</span>
  71. </p>
  72. </div>
  73. </div>
  74. <div class="doc sdoctor">
  75. <div class="fdt flex-box">
  76. <img src="../../../images/d-default.png" width="40" height="40" class="c-images-cycle">
  77. <div class="miaoshu cgre">
  78. <p>
  79. <span>专科医生</span>&nbsp;{{specialistAdminTeamName}}</p>
  80. <p class="mt10">{{specialistHospitalName}}</p>
  81. </div>
  82. </div>
  83. <div class="fdb flex-box">
  84. <p>完成项目
  85. <span>{{specialistFinishItemCount}}</span>
  86. </p>
  87. <p>服务记录
  88. <span>{{specialistServiceRecordCount}}</span>
  89. </p>
  90. </div>
  91. </div>
  92. </div>
  93. <div class="datad flex-box">
  94. <button class="falsebutton" @click=NoOpen()>健康指导</button>
  95. <button class="falsebutton" @click=NoOpen()>随访</button>
  96. <button class="falsebutton" @click=NoOpen()>复诊预约</button>
  97. </div>
  98. </div>
  99. <!-- 细节点 -->
  100. <div class="detail flex-box" v-for="(data, index) in tablelist">
  101. <div class="detaila flex-box">
  102. <div class="quote2"></div>
  103. {{data.planTypeName}}
  104. </div>
  105. <div class="detailb flex-box">
  106. <span class="cblue" id="span_font">进行中</span>
  107. <div class="layui-progress layui-progress-big" :lay-filter="data.planId" lay-showpercent="true">
  108. <div class="layui-progress-bar" lay-percent="">
  109. </div>
  110. </div>
  111. <span class="cgre">{{data.allFinishCount}}/</span>
  112. <span class="cgre">{{data.allCount}}</span>
  113. </div>
  114. <div class="detailc flex-box">
  115. <p class="cred">今日项目:
  116. <span>{{data.todayBacklogCount}}</span>
  117. </p>
  118. <p class="cgre">已完成:
  119. <span>{{data.finishedCount}}</span>
  120. </p>
  121. <p class="cgre">未完成:
  122. <span>{{data.unfinishedCount}}</span>
  123. </p>
  124. </div>
  125. <div class="detaild">
  126. <a href="">查看患者</a>
  127. <a href="">查看计划</a>
  128. <a href="javascript: void(0)" @click="Stop(data)" id="button_id">终止计划</a>
  129. </div>
  130. </div>
  131. </div>
  132. </div>
  133. </div>
  134. <script type="text/javascript" src="../../../js/vue.js"></script>
  135. <script type="text/javascript" src="../../../js/jquery-2.2.4.js"></script>
  136. <script type="text/javascript" src="../../../js/cross.ui.js"></script>
  137. <script src="../../../js/underscore.js"></script>
  138. <script src="../../../js/util.js"></script>
  139. <script src="../../../plugins/layer/layer.min.js"></script>
  140. <script type="text/javascript" src="../../../plugins/layui-v2.3.0/layui/layui.js"></script>
  141. <script src="../../../api/http-request.js"></script>
  142. <script src="../../../api/healthy-control-api.js"></script>
  143. <script src="../../../component/common/event-bus.js"></script>
  144. <script src="../../../component/common/vuedals.js" type="text/javascript" charset="utf-8"></script>
  145. <script src="../../../component/statistics/header-tab.js" type="text/javascript" charset="utf-8"></script>
  146. <script>
  147. layui.use('element', function () {
  148. element = layui.element//Tab的切换功能,切换事件监听等,需要依赖element模块
  149. function Progress(dom, num) {
  150. window.setTimeout(function () {
  151. element.progress(dom, num)
  152. }, 360)
  153. }
  154. function showInfoMessage(msg) {
  155. layer.msg(msg, {
  156. icon: 6
  157. })
  158. }
  159. function ConFirm(msg, num, isStop,planid,getDat) {
  160. layer.confirm('您确定要执行该操作吗?', { btn: ['确定', '取消'], title: "提示" }, function (index) {
  161. if (num == 2) {
  162. showInfoMessage("计划已完成")
  163. $("#button_id").attr('disabled', true).addClass("falsebutton")
  164. } else {
  165. isStop = num == 0 ? 1 : 0
  166. }
  167. var params = {
  168. status: isStop,
  169. planId: planid
  170. }
  171. healthAPI.updatePlanStatusById(params).then(function (res) {
  172. if (res.status == 200) {
  173. getDat()
  174. }
  175. })
  176. layer.close(index);
  177. });
  178. }
  179. var reqList = []; //记录请求的参数和url,用于后退时使用
  180. Vue.use(Vuedals.default);
  181. new Vue({
  182. el: "#app",
  183. data: {
  184. appname: "更多计划",
  185. isback: true,
  186. isrefresh: true,
  187. paticentcode: "",
  188. tablelistone: [],
  189. tablelist: [],
  190. name: "",
  191. sex: "",
  192. age: "",
  193. hospital: "",
  194. diseaseList: [],
  195. signFamilyFinishItemCount: "",
  196. signFamilyServiceRecordCount: "",
  197. signFamilyAdminTeamName: "",
  198. specialistAdminTeamName: "",
  199. specialistFinishItemCount: "",
  200. specialistServiceRecordCount: "",
  201. progress: "",
  202. specialistHospitalName: "",
  203. familyHospitalName: "",
  204. planid: "",
  205. isStop: 1 //
  206. },
  207. watch: {
  208. tablelist: function (val) {
  209. this.$nextTick(function () {
  210. element.init()
  211. for (var i = 0; i < val.length; i++) {
  212. var allFinishCount = val[i].allFinishCount
  213. var allCount = val[i].allCount
  214. var isStop = val[i].status
  215. var bname=val[i].patientName
  216. // if()
  217. if(isStop==2){
  218. $("#span_font").html("已完成")
  219. $("#span_font").addClass("corg")
  220. }
  221. if(isStop==1){
  222. $("#span_font").html("进行中")
  223. $("#span_font").addClass("cblue")
  224. }
  225. if (isStop == 0) {
  226. $(".layui-progress-bar").css({
  227. "background-color": "gray"
  228. })
  229. $("#button_id").html("激活计划")
  230. $("#span_font").html("已中止")
  231. $("#span_font").addClass("cgre")
  232. } else {
  233. $(".layui-progress-bar").css({
  234. "background-color": "#ff9526"
  235. })
  236. $("#button_id").html("终止计划")
  237. }
  238. var progressNum = Math.ceil((allFinishCount / allCount) * 100)
  239. Progress(val[i].planId, progressNum + "%")
  240. }
  241. })
  242. },
  243. },
  244. mounted() {
  245. var vm = this
  246. vm.getDatas()
  247. EventBus.$on("back-click", function (arg) {
  248. history.go(-1);
  249. });
  250. //监听页面刷新
  251. EventBus.$on("refresh-click", function (arg) {
  252. location.reload();
  253. });
  254. },
  255. components: {
  256. vuedals: Vuedals.Component
  257. },
  258. methods: {
  259. getDatas: function () {
  260. var vm = this
  261. var httpData = GetRequest()
  262. vm.paticentcode = httpData.patientCode
  263. var params = {
  264. patientCode: vm.paticentcode
  265. }
  266. healthAPI.PlanDetailList(params).then(function (res) {
  267. if (res.status == 200) {
  268. console.log(res)
  269. vm.wujilu = false
  270. vm.name = res.data.patientName
  271. vm.sex = res.data.sex
  272. vm.age = res.data.age
  273. vm.hospital = res.data.hospitalName
  274. vm.diseaseList = res.data.diseaseList
  275. vm.tablelist=_.sortBy(res.data.rehabilitationPlanList,"patientName")
  276. vm.signFamilyServiceRecordCount = res.data.signFamilyServiceRecordCount
  277. vm.signFamilyFinishItemCount = res.data.signFamilyFinishItemCount
  278. vm.signFamilyAdminTeamName = res.data.signFamilyAdminTeamName
  279. vm.specialistAdminTeamName = res.data.specialistAdminTeamName
  280. vm.specialistFinishItemCount = res.data.specialistFinishItemCount
  281. vm.specialistServiceRecordCount = res.data.specialistServiceRecordCount
  282. vm.specialistHospitalName = res.data.specialistHospitalName
  283. vm.familyHospitalName = res.data.familyHospitalName
  284. if (vm.tablelist.length == 0) {
  285. vm.wujilu = true
  286. }
  287. } else {
  288. // showErrorMessage(res.msg);
  289. }
  290. })
  291. },
  292. Stop: function (data) {
  293. var vm = this
  294. vm.planid = data.planId
  295. console.log(data.planId)
  296. ConFirm("确定终止该计划吗", data.status, vm.isStop,vm.planid,vm.getDatas)
  297. var params = {
  298. status: vm.isStop,
  299. planId: vm.planid
  300. }
  301. console.log(vm.isStop)
  302. },
  303. NoOpen:function(){
  304. showInfoMessage("暂未开放")
  305. }
  306. }
  307. })
  308. });
  309. </script>
  310. </body>
  311. </html>