order-tracking.js 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. var request = getRequest(),
  2. prescriptionCode = request.code;
  3. var docInfo = window.localStorage.getItem("docInfo");
  4. docInfo = JSON.parse(docInfo);
  5. $(function(){
  6. getPrescriptionFollow();
  7. bindEvents();
  8. })
  9. function getPrescriptionFollow(){
  10. var params = {
  11. prescriptionCode: prescriptionCode
  12. };
  13. orderAPI.getPrescriptionFollow({data: params}).then(function(res){
  14. if(res.status == 200){
  15. //如果是健管师配送,且未分配健管师,则显示‘分配’按钮
  16. if((docInfo.code == res.data.leadCode) && (res.data.dispensaryDispensaryType == 3) && (!res.data.prescriptionExpressage.expressageName)){
  17. $(".btn-1").removeClass("hidden");
  18. }
  19. $("#applyDate").text(new Date(res.data.createTime).format('yyyy-MM-dd HH:mm:ss'));
  20. $("#checkDoc").text(res.data.doctorName);
  21. //填充收药信息的内容
  22. var obj = $.extend({
  23. dispensaryDispensaryType: res.data.dispensaryDispensaryType,
  24. dispensaryDispensaryTypeName: res.data.dispensaryDispensaryTypeName
  25. }, res.data.prescriptionExpressage);
  26. var syInfoHtml = template('syinfo_tmp', obj);
  27. $("#syInfo").empty().append(syInfoHtml);
  28. //填充订单记录信息
  29. var obj2 = {
  30. prescriptionStatusName: res.data.prescriptionStatusName,
  31. orderCode: res.data.prescriptionExpressage.code,
  32. prescriptionHospital: res.data.prescriptionHospital
  33. };
  34. var orderInfoHtml = template('record_tmp', obj2);
  35. $("#recordInfo").empty().append(orderInfoHtml);
  36. //填充药品信息
  37. var drugHtml = template('drug_tmp', {list: res.data.prescriptionInfos});
  38. $("#drugInfo").empty().append(drugHtml);
  39. }else{
  40. }
  41. })
  42. }
  43. function getOrderFollow(){
  44. var params = {
  45. prescriptionCode: prescriptionCode
  46. };
  47. orderAPI.getOrderFollow({data: params}).then(function(res){
  48. if(res.status == 200){
  49. var html = template('flow_tmp', {list: res.data});
  50. $("#orderLogs").empty().append(html);
  51. }else{
  52. }
  53. });
  54. }
  55. //获得健管师列表
  56. function getHealthDoctorList(isRefresh){
  57. if(isRefresh){
  58. $("#hDoctor").bootstrapTable('refresh');
  59. }
  60. var options = $.extend(orderAPI.getHealthDoctorTableAjaxObj, {
  61. queryParams: queryParams2,
  62. queryParamsType: "limit",
  63. pagination: true,
  64. paginationLoop: true,
  65. sidePagination: 'server',
  66. pageNumber: 1,
  67. pageSize: 8,
  68. pageList: [5,8,10],
  69. responseHandler: function (res) {
  70. return {
  71. rows: res.data.doctors,
  72. total: res.data.total
  73. }
  74. },
  75. columns: [{
  76. field: 'photo',
  77. title: '',
  78. width: '50',
  79. formatter: function(val, row, index){
  80. var url = "img/d-male.png";
  81. if(val.indexOf("http")>-1 || val.indexOf("https")>-1){
  82. url = val;
  83. }
  84. return '<img src="'+url+'" class="img-circle" width="40">';
  85. }
  86. }, {
  87. field: 'name',
  88. title: '',
  89. align: 'left'
  90. },{
  91. field: 'jobName',
  92. title: '职称',
  93. align: 'right'
  94. }],
  95. onClickRow: function(row, $el){
  96. $("#docInfo").text(row.name+row.jobName);
  97. $("#confirmModal").modal('toggle');
  98. selectDoctor = row.code;
  99. }
  100. });
  101. $("#hDoctor").bootstrapTable(options);
  102. }
  103. function queryParams2(params) {
  104. //当表格数据变化的时候,则取消全选按钮,然后之前的选中的信息将取消选中
  105. return {
  106. page: params.offset/params.limit + 1,
  107. size: params.limit,
  108. name: $.trim($("#doctorName").val())
  109. };
  110. }
  111. function getExpressInfo(){
  112. var params = {
  113. prescriptionCode: prescriptionCode
  114. };
  115. orderAPI.getOrderExpressInfo({data: params}).then(function(res){
  116. if(res.status == 200){
  117. var html = template("expressInfo_tmp", res.data);
  118. $("#expressInfo").empty().append(html);
  119. }else{
  120. }
  121. });
  122. }
  123. function getExpressRouteInfo(){
  124. var params = { prescriptionCode: prescriptionCode};
  125. orderAPI.getSfRouteService({data: params}).then(function(res){
  126. if(res.status == 200){
  127. var list = _.map(res.data.list, function(o){
  128. o.statusName = o.acceptRemark;
  129. o.createTime = o.acceptTime;
  130. return o;
  131. });
  132. var html = tempalte("flow_tmp", {list: list});
  133. $("#expressLogs").empty().append("flow_tmp");
  134. }else{
  135. }
  136. });
  137. }
  138. function showOrderFollow(){
  139. $("#myModal").modal("toggle");
  140. getOrderFollow();
  141. }
  142. function showExpressFollow(){
  143. $("#expressModal").modal('toggle');
  144. getExpressInfo();
  145. getExpressRouteInfo();
  146. }
  147. function bindEvents(){
  148. $(".btn-1").on('click', function(){
  149. $('#docModal').modal('toggle');
  150. getHealthDoctorList();
  151. })
  152. $(".btn-2").on('click', function(){
  153. history.go(-1);
  154. })
  155. $("#doctorName").on('keyup', function(e){
  156. if (e.which === 13) {
  157. getHealthDoctorList(true);
  158. }
  159. });
  160. $("#confirmBtn").on('click', function(){
  161. //发送请求确认的请求
  162. var params = {
  163. codes: prescriptionCode,
  164. healthDoctor: selectDoctor
  165. }
  166. orderAPI.distributeHealthDoctor({data: params}).then(function(res){
  167. if(res.status == 200){
  168. $('#docModal').modal('toggle');
  169. $('#confirmModal').modal('toggle');
  170. //更新数据
  171. getPrescriptionFollow();
  172. }else{
  173. }
  174. })
  175. });
  176. }