index.js 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. var template = ''
  2. $.ajax('../../../component/statistics/LascProgressData/index.html', {
  3. data: {},
  4. dataType: 'html',
  5. cache: false,
  6. timeout: 60000,
  7. async: false,
  8. error: function (res) {},
  9. success: function (res) {
  10. template = res
  11. }
  12. })
  13. Vue.component('lasc-progress-data', {
  14. template: template,
  15. props: [],
  16. data: function () {
  17. return {
  18. status: 0,
  19. serviceHospitalList: [],
  20. form: {
  21. name: '',
  22. orderId: '',
  23. phone: '',
  24. uterineNeck: '',
  25. breastCancer: '',
  26. reception: '',
  27. molStatus: '',
  28. colStatus: ''
  29. },
  30. rangeTime: [],
  31. rangeTimeTwo: [],
  32. tableData: [],
  33. tableDataTwo: [],
  34. page: 1,
  35. pageSize: 10,
  36. total: 0,
  37. tabsId: 1,
  38. tabsList: [
  39. { id: '1', text: '筛查数据', show: true },
  40. { id: '2', text: '质控数据', show: false }
  41. ],
  42. qualityControl: [
  43. { id: '1', text: '乳腺临床检查待完善', show: true },
  44. { id: '2', text: '乳腺超声待完善', show: false },
  45. { id: '3', text: '乳腺钼靶待完善', show: false },
  46. { id: '4', text: '乳腺病理待完善', show: false },
  47. { id: '5', text: '乳腺缺漏', show: false },
  48. { id: '6', text: '乳腺初筛已完成', show: false },
  49. { id: '7', text: '乳腺超声分级比例', show: false },
  50. { id: '8', text: '统计指标', show: false }
  51. ],
  52. loginDoctor: {},
  53. loading: false,
  54. resDistrictData: [{ name: '全部', code: '' }],
  55. code: '',
  56. qualityControlId: '1',
  57. statisticalIndex: {},
  58. exportLoading: false
  59. }
  60. },
  61. methods: {
  62. eliminateClick() {
  63. this.form = {
  64. name: '',
  65. orderId: '',
  66. phone: '',
  67. uterineNeck: '',
  68. breastCancer: '',
  69. reception: '',
  70. molStatus: '',
  71. colStatus: ''
  72. }
  73. this.rangeTime = []
  74. },
  75. outputServerOrder() {},
  76. search: function () {
  77. this.page = 1
  78. this.getDoorOrderList()
  79. },
  80. outputServerOrder: function (num) {
  81. var vm = this
  82. console.log('111111111111111111', vm)
  83. vm.exportLoading = true
  84. httpRequest
  85. .downLoadFileForAjax('doctor/twoCancers/count/excel', '两癌筛查数据.xls', this.getDoorOrderParameters())
  86. .then(res => {
  87. vm.exportLoading = false
  88. })
  89. .catch(err => {
  90. vm.$message.error(err)
  91. })
  92. },
  93. hospitalList() {
  94. var vm = this
  95. var data = {
  96. town: this.level == 2 ? this.area : '',
  97. hospital: this.level == 3 ? this.area : ''
  98. }
  99. httpRequest.get('doctor/twoCancers/count/hospitalList', { data }).then(function (res) {
  100. if (res.status == 200) {
  101. res.data.forEach(item => {
  102. vm.resDistrictData.push({
  103. name: item.hospital_name,
  104. code: item.hospital
  105. })
  106. })
  107. }
  108. })
  109. },
  110. getDoorOrderParameters: function () {
  111. var parameters = {
  112. patientName: this.form.name, //居民姓名
  113. idcard: this.form.orderId, //身份证
  114. phone: this.form.phone, //手机号
  115. startTime: this.rangeTime[0] ? this.rangeTime[0] : '', //开始时间
  116. endTime: this.rangeTime[1] ? this.rangeTime[1] : '', //结束时间
  117. hospitalCode: this.form.reception, //筛查机构
  118. breastStatus: this.form.breastCancer, // 乳癌初筛1是0否
  119. cervicalStatus: this.form.cervicalStatus, //宫颈初筛1是0否
  120. chStatus: this.form.chStatus, //宫颈检查数据1是0否
  121. page: this.page,
  122. size: this.pageSize,
  123. molStatus: this.form.molStatus,
  124. colStatus: this.form.colStatus,
  125. queryCode: this.loginDoctor.currentUserRole.code,
  126. queryLevel: this.level,
  127. level: '',
  128. area: ''
  129. }
  130. return parameters
  131. },
  132. getDoorOrderList: function () {
  133. this.loading = true
  134. var vm = this
  135. console.log(vm, ';;;;;;;;;;;;')
  136. httpRequest.get('doctor/twoCancers/count/doctorPCgzl', { data: vm.getDoorOrderParameters() }).then(item => {
  137. if (item.status == 200) {
  138. vm.loading = false
  139. var res = item.detailModelList
  140. vm.tableData = res
  141. vm.total = item.totalCount
  142. res.forEach(is => {
  143. is.id_card_no = is.id_card_no.replace(/^(.{6})(?:\d+)(.{4})$/, '$1****$2')
  144. })
  145. }
  146. })
  147. },
  148. handleCurrentChange: function (page) {
  149. this.page = page
  150. this.getDoorOrderList()
  151. },
  152. handleSizeChange: function (val) {
  153. this.pageSize = val
  154. this.getDoorOrderList()
  155. },
  156. prevClick() {
  157. this.page--
  158. this.getDoorOrderList()
  159. },
  160. nextClick() {
  161. this.page++
  162. this.getDoorOrderList()
  163. }
  164. },
  165. mounted() {
  166. var selectedRole = JSON.parse(sessionStorage.getItem('selectedRole'))
  167. if (selectedRole.code.indexOf('350200') > -1 || selectedRole.code.indexOf('8d94ce907e4d4356b68f6c5d4d0d6bc9') > -1) {
  168. this.level = 1 // 市卫健委
  169. } else if (selectedRole.code.length == 6) {
  170. this.level = 2 // 区管理
  171. this.area = selectedRole.code
  172. } else {
  173. this.level = 3
  174. this.area = selectedRole.code
  175. }
  176. this.loginDoctor = JSON.parse(window.localStorage.getItem('wlyyAgent'))
  177. this.hospitalList()
  178. this.getDoorOrderList()
  179. }
  180. })