xuqian_management.js 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732
  1. var patient,
  2. msgId,
  3. signCode,
  4. applyDate,
  5. renewFlag = 1; //1-普通续签,2-转签
  6. var docInfo;
  7. var refuseReason = '';//拒绝签约原因
  8. //下拉框选中的数据
  9. var currHealthManagement,
  10. currService,
  11. currTeam;
  12. var $juminLabels = $('#jumin_labels input[data-val=jumin_labels]');
  13. mui.init();
  14. mui.plusReady(function(){
  15. var self = plus.webview.currentWebview();
  16. patient = self.patient;
  17. msgId = self.msgId;
  18. signCode = self.signCode;
  19. applyDate = self.applyDate;
  20. renewFlag = self.renewFlag || renewFlag;
  21. docInfo = JSON.parse(plus.storage.getItem("docInfo"));
  22. getPatientInfo();
  23. bindEvents();
  24. templateHelper();
  25. });
  26. function getPatientInfo(){
  27. // var url = "/doctor/family_contract/patient_signing_renew", //"/doctor/patient_label_info/patient",
  28. // params = {
  29. // patient: patient
  30. // };
  31. var date = new Date();
  32. // if(date.getMonth() > 5){ //7月份开始,算是签约过期流程,请求不一样
  33. getInfo2();
  34. // }else{
  35. // getInfo1();
  36. // }
  37. }
  38. //获得未过期的续签信息
  39. function getInfo1(){
  40. plus.nativeUI.showWaiting();
  41. var promise = getReqPromises([{url:"/doctor/family_contract/patient_signing",data:{patient: patient}},//居民信息
  42. {url:"/doctor/admin-teams/team/"+ docInfo.code +"/teamsLimit",data:{},reqType: 'GET'},
  43. {url:"/doctor/sign/getSigndict", data:{}, reqType: "GET"},//获取服务类型信息
  44. {url:"/common/getDictByDictName?name=SIGN_EXPENSES",data:{},reqType: 'GET'}])//设置政府补贴;
  45. return promise.then(function(datas){
  46. var data0 = datas[0],
  47. data1 = datas[1];
  48. data3 = datas[3];
  49. var teamName = "";
  50. if(data0.status == 200) {
  51. if(renewFlag == "2"){
  52. var url = "/doctor/sign/getTeamNameByTeamCode",
  53. params = {teamCode: data0.data.jtAdminTeam};
  54. sendGet(url, params, null, function(res){
  55. data0.data.teamName = res.data;
  56. data0.data.renewFlag = renewFlag;
  57. data0.data.applyDate = applyDate;
  58. var html = template("info_tmp", data0.data);
  59. $("#pati_info").empty().append(html);
  60. getQytd(data1);
  61. setExpenses(data3);
  62. });
  63. }else{
  64. var isFilled = false;
  65. for(i=0; i<data1.data.length; i++){
  66. var item = data1.data[i];
  67. if(item.id == data0.data.jtSign.adminTeamId){
  68. if(item.signCount >= item.signLimitNumber){
  69. teamName = item.name+"<span class='filled'>(已达上限)</span>";
  70. isFilled = true;
  71. $('#btn_agree').addClass("disabled").attr("disabled", true);
  72. }else{
  73. teamName = item.name+"(已签约"+item.signCount+"人)";
  74. }
  75. break;
  76. }
  77. }
  78. data0.data.teamName = teamName;
  79. data0.data.renewFlag = renewFlag;
  80. data0.data.applyDate = applyDate;
  81. var html = template("info_tmp", data0.data);
  82. $("#pati_info").empty().append(html);
  83. if(isFilled && (data1.data.length > 1)){
  84. getQytd(data1);
  85. $("#qytdNum").after('<span class="mui-icon c-icon-right"></span>');
  86. $("#jgLi").append('<span class="mui-icon c-icon-right"></span>');
  87. $("#btLi").append('<span class="mui-icon c-icon-right"></span>');
  88. }
  89. setExpenses(data3);
  90. }
  91. }else{
  92. mui.toast(data0.msg)
  93. }
  94. var data2 = datas[2];
  95. fillServiceDropdown(data2);
  96. plus.nativeUI.closeWaiting();
  97. });
  98. }
  99. //处理已过期签约关系的续签信息
  100. function getInfo2(){
  101. plus.nativeUI.showWaiting();
  102. var promise2 = getReqPromises([{url:"/doctor/family_contract/patient_signing_outtime",data:{patient: patient}},//居民信息
  103. {url:"/doctor/admin-teams/team/"+ docInfo.code +"/teamsLimit",data:{},reqType: 'GET'},
  104. {url:"/doctor/sign/getSigndict", data:{}, reqType: "GET"},//获取服务类型信息
  105. {url:"/common/getDictByDictName?name=SIGN_EXPENSES",data:{},reqType: 'GET'},//设置政府补贴
  106. {url: "/doctor/patient_label_info/patient_label", data: {patient: patient, labelType: ''}}]); //获取居民标签
  107. return promise2.then(function(datas){
  108. plus.nativeUI.closeWaiting();
  109. var data0 = datas[0],
  110. data1 = datas[1],
  111. data3 = datas[3],
  112. data4 = datas[4];
  113. var teamName = "";
  114. if(data0.status == 200) {
  115. var expense = data0.data.jtSign.expensesType,
  116. list = data3.list,
  117. obj = _.findWhere(list, {code: expense}),
  118. expenseName = obj.value;
  119. var serviceLabels = _.map(data0.data.signFamilyServer, function(o){
  120. return o.serverTypeName;
  121. });
  122. var patientLabels = _.map(data4.data, function(o){
  123. return o.labelName;
  124. })
  125. var info = {
  126. teamName : teamName,
  127. photo: data0.data.photo,
  128. name: data0.data.name,
  129. sex: data0.data.sex,
  130. age: data0.data.age,
  131. renewTime: data0.data.applyDate,
  132. applyDate: applyDate,
  133. idcard: data0.data.idCard,
  134. medicareNumber: data0.data.medicareNumber,
  135. ssc: data0.data.ssc,
  136. mobile: data0.data.mobile,
  137. provinceName: data0.data.provinceName,
  138. cityName: data0.data.cityName,
  139. address: data0.data.address,
  140. jtDoctorName: data0.data.jtSign.doctorName,
  141. jtDoctorHealthName: data0.data.jtSign.doctorHealthName || data0.data.jtSign.doctorName,
  142. jtAdminTeam: data0.data.jtSign.adminTeamId,
  143. jtHospitalName: data0.data.jtSign.hospitalName,
  144. renewFlag: renewFlag,
  145. countryName:data0.data.countryName,
  146. //添加政府补贴内容
  147. expenseType: expense,
  148. expenseName: expenseName,
  149. serviceLabels: serviceLabels.join("、"),
  150. patientLabels: patientLabels.join("、")
  151. };
  152. if(!data0.data.jtSign.doctorHealthName){
  153. currHealthManagement = data0.data.jtSign.doctor;
  154. }else{
  155. currHealthManagement = data0.data.jtSign.doctorHealth;
  156. }
  157. if(renewFlag == "2"){
  158. var url = "/doctor/sign/getTeamNameByTeamCode",
  159. params = {teamCode: data0.data.jtSign.adminTeamId};
  160. sendGet(url, params, null, function(res){
  161. info.teamName = res.data;
  162. var html = template("info_tmp", info);
  163. $("#pati_info").empty().append(html);
  164. getQytd(data1);
  165. setExpenses(data3);
  166. });
  167. }else{
  168. var isFilled = false;
  169. for(i=0; i<data1.data.length; i++){
  170. var item = data1.data[i],
  171. inTeam = false; //判断医生是否在原签约团队
  172. if(item.id == data0.data.jtSign.adminTeamId){
  173. if(item.signCount >= item.signLimitNumber){
  174. teamName = item.name+"<span class='filled'>(已达上限)</span>";
  175. isFilled = true;
  176. $('#btn_agree').addClass("disabled").attr("disabled", true);
  177. }else{
  178. teamName = item.name+"(已签约"+item.signCount+"人)";
  179. }
  180. inTeam = true;
  181. break;
  182. }
  183. }
  184. //如果医生不在原签约团队的话,则不显示团队信息
  185. if(!inTeam){
  186. var url = "/doctor/sign/getTeamNameByTeamCode",
  187. params = {teamCode: data0.data.jtSign.adminTeamId};
  188. sendGet(url, params, null, function(res){
  189. info.preSignTeamName = res.data;
  190. currHealthManagement = "";
  191. var html = template("info_tmp", info);
  192. $("#pati_info").empty().append(html);
  193. getQytd(data1);
  194. setExpenses(data3);
  195. });
  196. }else{
  197. // 修复bug#3551 【医生端】续签未变更续签团队,原本签约团队没有显示出来
  198. info.teamName = teamName;
  199. var html = template("info_tmp", info);
  200. $("#pati_info").empty().append(html);
  201. // if(isFilled && (data1.data.length > 1)){
  202. getQytd(data1);
  203. // $("#qytdNum").after('<span class="mui-icon c-icon-right"></span>');
  204. // $("#jgLi").append('<span class="mui-icon c-icon-right"></span>');
  205. $("#btLi").append('<span class="mui-icon c-icon-right"></span>');
  206. // }
  207. //获取健管师列表
  208. getTeamMember(data0.data.jtSign.adminTeamId, true);
  209. setExpenses(data3);
  210. }
  211. }
  212. }else{
  213. mui.toast(data0.msg)
  214. }
  215. var data2 = datas[2];
  216. fillServiceDropdown(data2);
  217. plus.nativeUI.closeWaiting();
  218. });
  219. }
  220. //获取签约团队
  221. function getQytd(res){
  222. if(res.status == 200) {
  223. if(res.data.length == 0){
  224. alert("查无签约团队");
  225. return;
  226. }
  227. var teams = res.data,
  228. teamCodes=[],
  229. teamNames=[];
  230. // 萃取数组对象中code、name,返回一个数组
  231. teamCodes = _.pluck(teams, 'id');
  232. // teamNames = _.pluck(teams, 'name');
  233. for(var i = 0; i < teams.length; i++){
  234. var signTeam;
  235. var signCount = teams[i].signCount;
  236. var signLimitNumber = teams[i].signLimitNumber;
  237. if(signCount >= signLimitNumber){
  238. signTeam = teams[i].name + "<span class='filled'>(已达上限)</span>";
  239. }else{
  240. signTeam = teams[i].name + "(已签约"+signCount+"人)";
  241. }
  242. teamNames.push(signTeam);
  243. }
  244. qytdSelect(teamCodes, teamNames);
  245. }
  246. }
  247. // 设置团队下拉框
  248. function qytdSelect(teamCodes, teamNames) {
  249. // var $doctorQytdInput = $('input[data-val=qytd]');
  250. var $doctorQytdInput = $('#qytdNum');
  251. $doctorQytdInput.mobiscroll({
  252. theme: 'ios',
  253. lang: 'zh',
  254. customWheels: true,
  255. wheels: [
  256. [{
  257. keys: teamCodes,
  258. values: teamNames
  259. }]
  260. ],
  261. onSelect: function(valueText, inst) {
  262. var valueTextZy = valueText.replace("<span class='filled'>", "<span class=\\\'filled\\\'>");
  263. var dd = eval("[" + valueTextZy + "]"),
  264. name=dd[0].values;
  265. currTeam = dd[0].keys;
  266. // $(this).val(name);
  267. $(this).html(name);
  268. $(this).html(name);
  269. $(this).removeClass("c-9e9e9e");
  270. var isFilled = $(this).find("span").hasClass("filled");
  271. if(isFilled){
  272. $('#btn_agree').addClass("disabled").attr("disabled", true);
  273. }else{
  274. $('#btn_agree').removeClass("disabled").attr("disabled", false);
  275. }
  276. if($(this).text().length>20){
  277. $doctorQytdInput.css({textAlign:'left'});
  278. }else{
  279. $doctorQytdInput.css({textAlign:'right'});
  280. }
  281. $doctorQytdInput.attr("data-code",currTeam);
  282. $('input[data-val=healthManagement]').val("").attr("data-code","")
  283. getTeamMember(currTeam);
  284. }
  285. })
  286. }
  287. //普通 老年 高血 糖尿 孕妇 儿童 贫困 计生 重性 残疾 结核
  288. function filterSer(name){
  289. var $li = $('.dw-bf').find('div.dw-li');
  290. $li.addClass('dw-v');
  291. var nameArr = name.split(',');
  292. $.map(nameArr,function(item,index){
  293. if(item.trim() == '普通人群'){
  294. var arr = [2,3,6,7,8,9,10]
  295. $.map(arr,function(it,index){
  296. $li.eq(it).removeClass('dw-v')
  297. })
  298. }
  299. if(item.trim() == '老年人'){
  300. var arr = [4,5]
  301. $.map(arr,function(it,index){
  302. $li.eq(it).removeClass('dw-v')
  303. })
  304. }
  305. if(item.trim() == '高血压' ||item.trim() == '糖尿病'||item.trim() == '贫困人口'||item.trim() == '计生特殊人群'||item.trim() == '重性精神疾病'||item.trim() == '残疾人'||item.trim() == '结核病' ){
  306. var arr = [0]
  307. $.map(arr,function(it,index){
  308. $li.eq(it).removeClass('dw-v')
  309. })
  310. }
  311. if(item.trim() == '0-6岁儿童'){
  312. var arr = [1,4]
  313. $.map(arr,function(it,index){
  314. $li.eq(it).removeClass('dw-v')
  315. })
  316. }
  317. if(item.trim() == '孕产妇'){
  318. var arr = [1,5]
  319. $.map(arr,function(it,index){
  320. $li.eq(it).removeClass('dw-v')
  321. })
  322. }
  323. })
  324. }
  325. //设置服务类型下拉
  326. function fillServiceDropdown(data){
  327. var $serviceSel = $('#selFuwu'),
  328. data = data.data,
  329. html="";
  330. for(i=0; i<data.length; i++){
  331. html += '<option value="'+data[i].code+'">'+data[i].name+'</option>'
  332. }
  333. $serviceSel.html(html);
  334. $serviceSel.mobiscroll().select({
  335. theme: 'ios',
  336. lang: 'zh',
  337. display: 'bottom',
  338. rows:6,
  339. placeholder:'请选择服务类型',
  340. onSelect: function ( valueText, inst) {
  341. // var vArr = valueText.split(',');
  342. //判断服务类型是否变更
  343. $juminLabels.val("").attr("data-code",JSON.stringify({health: "",disease: "", custom: "" }));
  344. currService = inst._tempValue?inst._tempValue.join(','):'';
  345. },
  346. onChange: function (event, inst) {
  347. filterSer(event)
  348. },
  349. onShow: function (event, inst) {
  350. filterSer(inst)
  351. }
  352. })
  353. }
  354. //获取团队成员
  355. function getTeamMember(teamCode, isInit){
  356. plus.nativeUI.showWaiting();
  357. sendGet("/doctor/admin-teams/"+ teamCode + "/members", {}, null, function(res){
  358. if(res.status == 200){
  359. var jgs= [],
  360. jgCodes =[], jgNames = [],
  361. includeHeathDoctor = false;
  362. $.each(res.data, function(i, v) {
  363. if(v.level == 3 || v.level == 2){
  364. jgs.push(v);
  365. }
  366. if(v.code == currHealthManagement){
  367. includeHeathDoctor = true;
  368. }
  369. });
  370. //如果健管师不在此团队内,则不显示健管师的内容
  371. if(isInit && !includeHeathDoctor){
  372. $("#jgPre").show();
  373. $("input[data-val=healthManagement]").val();
  374. $("input[data-val=healthManagement]").attr("data-code", "");
  375. }
  376. // 萃取数组对象中code、name,返回一个数组
  377. jgCodes = _.pluck(jgs, 'code');
  378. jgNames = _.pluck(jgs, 'name');
  379. activHealthM(jgCodes, jgNames);
  380. } else
  381. mui.toast("获取团队成员失败!");
  382. plus.nativeUI.closeWaiting();
  383. })
  384. }
  385. //填充健管师下拉框
  386. function activHealthM(codes, names) {
  387. $('input[data-val=healthManagement]').mobiscroll({
  388. theme: 'ios',
  389. lang: 'zh',
  390. customWheels: true,
  391. wheels: [
  392. [{
  393. keys: codes,
  394. values: names
  395. }]
  396. ],
  397. onSelect: function(valueText, inst) {
  398. var dd = eval("[" + valueText + "]");
  399. var name=dd[0].values
  400. $(this).val(name);
  401. currHealthManagement = dd[0].keys;
  402. $(this).attr("data-code",currHealthManagement);
  403. }
  404. });
  405. var $mobiscroll = $('input[data-val=healthManagement]');
  406. var helthMobiscroll = $mobiscroll.mobiscroll('getInst');
  407. var valueText = "{keys:'"+$mobiscroll.attr("data-code")+"',values:'"+$mobiscroll.val()+"'}";
  408. helthMobiscroll.setVal([valueText]);
  409. };
  410. //获取政府补贴数据
  411. function setExpenses(res){
  412. var expensesCode=[];
  413. var expensesName=[];
  414. if(res.status == 200) {
  415. var expensesList = res.list;
  416. for(var i = 0; i < expensesList.length; i++) {
  417. expensesCode.push(expensesList[i].code);
  418. expensesName.push(expensesList[i].value);
  419. }
  420. activExpensesM(expensesCode,expensesName);
  421. };
  422. }
  423. //设置政府补贴下拉框
  424. function activExpensesM(expensesCodes,expensesNames) {
  425. var $expensesInput = $('input[data-val=expenses]');
  426. $expensesInput.mobiscroll({
  427. theme: 'ios',
  428. lang: 'zh',
  429. customWheels: true,
  430. wheels: [
  431. [{
  432. keys: [expensesCodes[1],expensesCodes[0],expensesCodes[3],expensesCodes[2]],
  433. values: [expensesNames[1],expensesNames[0],expensesNames[3],expensesNames[2]]
  434. }]
  435. ],
  436. onSelect: function(valueText, inst) {
  437. var dd = eval("[" + valueText + "]");
  438. var name=dd[0].values
  439. $(this).val(name);
  440. currExpenses = dd[0].keys;
  441. $('input[data-val=expenses]').attr("data-code",currExpenses);
  442. }
  443. });
  444. // 获取政府补贴下拉框mibiscroll实例
  445. var expensesMobiscroll = $expensesInput.mobiscroll('getInst');
  446. var valueText = "{keys:'"+$expensesInput.attr("data-code")+"',values:'"+$expensesInput.val()+"'}";
  447. expensesMobiscroll.setVal([valueText]);
  448. }
  449. function validForm(){
  450. if(!$('#agreement_checkbox').hasClass('checked')) {
  451. mui.toast("您还未接受签约协议");
  452. return false;
  453. }
  454. // if(renewFlag == "2"){ //改签
  455. if(!$.trim($("#qytdNum").attr("data-code"))){
  456. mui.toast("请选择签约团队!");
  457. return false;
  458. }
  459. if($("input[data-val=healthManagement]").val()==""){
  460. mui.toast("请选择健康管理师!");
  461. $("#btn_agree").attr("disabled",false);
  462. return false;
  463. }
  464. // }
  465. if(!currService){
  466. mui.toast("请选择服务类型!");
  467. return false;
  468. }
  469. var labelObj = $juminLabels.attr("data-code");
  470. labelObj = JSON.parse(labelObj);
  471. if(!labelObj.health) {
  472. mui.toast("请选择居民标签!");
  473. return false;
  474. }
  475. return true;
  476. }
  477. function bindEvents(){
  478. $("textarea").on("input", function(){
  479. var text = $(this).val().trim(),
  480. len = text.length;
  481. $("#count").text(len);
  482. });
  483. //选择拒绝签约说明文本,直接将内容添加到textarea中
  484. $("#explain").on('tap', '.text-tag', function(){
  485. var $this = $(this),
  486. text = $this.text(),
  487. tatext = $("textarea").val();
  488. if($this.hasClass("active")){
  489. $this.removeClass("active");
  490. var a = tatext.split(text);
  491. tatext = a.join("");
  492. $("textarea").val(tatext);
  493. $("#count").text(tatext.length);
  494. }else{
  495. $this.addClass("active");
  496. tatext += text;
  497. $("textarea").val(tatext);
  498. $("#count").text(tatext.length);
  499. }
  500. });
  501. // 点击家庭医生签约协议(勾选框)
  502. $("body").on('click', '#agreement_checkbox', function() {
  503. $(this).toggleClass("checked");
  504. });
  505. $("body").on("click","#jumin_labels",function(){
  506. var teamCode = $('#qytdNum').attr("data-code");
  507. if($.trim(teamCode)) {
  508. //判断当前服务类型是否已经选择
  509. if(!currService){
  510. mui.confirm('请先选择服务类型', "提示", ["确定"], function(){});
  511. return false;
  512. }
  513. mui.openWindow({
  514. url:"../../huanzhe/html/disease-label-choose.html",
  515. id:"disease-label-choose",
  516. extras: {
  517. teamCode: teamCode,
  518. showData: $juminLabels.attr("data-code") || null,
  519. patientCode: patient,
  520. serviceCode: currService
  521. }
  522. })
  523. } else {
  524. mui.confirm('请先选择签约团队', "提示", ["确定"], function(){
  525. });
  526. }
  527. });
  528. $("#btn_agree").click(function() { //同意
  529. if($("#btn_agree").attr("disabled")){
  530. return false;
  531. }
  532. var isValid = validForm();
  533. if(isValid){
  534. $("#btn_agree").attr("disabled",true);
  535. agreeRenew(1);
  536. }
  537. });
  538. $("#btn_refuse").click(function() { //拒绝
  539. if($("#btn_refuse").attr("disabled")){
  540. return false;
  541. }
  542. $("#btn_refuse").attr("disabled",true);
  543. agreeRenew(0);
  544. });
  545. /*居民标签*/
  546. window.addEventListener("setJuMinLabels", function setJuMinLabels(e) {
  547. var health = e.detail.health,
  548. disease = e.detail.disease,
  549. custom = e.detail.custom,
  550. labelName = e.detail.labelName;
  551. $juminLabels.val(labelName).attr("data-code",JSON.stringify({health: health,disease: disease, custom: custom }));
  552. });
  553. }
  554. function templateHelper(){
  555. template.helper("getSex", function(str){
  556. if(str == 1){
  557. return "男";
  558. }else if(str == 2){
  559. return "女";
  560. }else{
  561. return "其他";
  562. }
  563. });
  564. template.helper("formatShowTime", function(str){
  565. if(str){
  566. return str.substr(0,16);
  567. }else{
  568. return "";
  569. }
  570. });
  571. }
  572. function agreeRenew(state){
  573. var juminLabels = JSON.parse($juminLabels.attr("data-code"));
  574. refuseReason = $('#refuseReason').val();
  575. var url = "/doctor/sign/agreeRenew",
  576. params = {
  577. state: state,
  578. patient: patient,
  579. mesId: msgId || "",
  580. signCode: signCode,
  581. health: juminLabels.health || "",
  582. disease: juminLabels.disease || "",
  583. custom: juminLabels.custom || "",
  584. sevId: currService,
  585. expenses:$("input[data-val=expenses]").attr("data-code"),
  586. healthDoctor : currHealthManagement || "",
  587. teamCode : currTeam || "",
  588. refuseReason: refuseReason
  589. };
  590. //改签情况
  591. // if(renewFlag == "2"){
  592. // params.healthDoctor = currHealthManagement || "";
  593. // params.teamCode = currTeam || "";
  594. // }
  595. plus.nativeUI.showWaiting();
  596. sendPost(url, params, null, function(res){
  597. plus.nativeUI.closeWaiting();
  598. if(res.status == 200){
  599. if(res.data == -1){
  600. //已存在下个年度的签约
  601. var now = new Date();
  602. var signYear = now.getFullYear()+"-"+(now.getFullYear()+1);
  603. dialog({
  604. content: "您已完成"+signYear+"年度签约,不能再次签约",
  605. okValue: "我知道了",
  606. ok: function(){
  607. backToPre(state);
  608. }
  609. }).showModal();
  610. return false;
  611. }else if(res.data == 1){
  612. mui.toast(res.msg);
  613. backToPre(state);
  614. }else{
  615. var data = res.data;
  616. var msg = "";
  617. switch (data){
  618. case 2:
  619. msg = "已同意过申请,不能再次处理";
  620. break;
  621. case 3:
  622. msg = "患者已取消申请";
  623. break;
  624. case 4:
  625. msg = "已拒绝申请,不能再次处理";
  626. break;
  627. case 5:
  628. case 6:
  629. case 7:
  630. msg = "该签约申请已无效,不能操作";
  631. break;
  632. default:
  633. msg = "该申请已处理,无需再次处理";
  634. break;
  635. }
  636. dialog({
  637. content: msg,
  638. okValue: "我知道了",
  639. ok: function(){
  640. backToPre(state);
  641. }
  642. }).showModal();
  643. }
  644. }else{
  645. mui.toast(res.msg);
  646. }
  647. }, "POST", "", true);
  648. }
  649. function backToPre(state){
  650. var self = plus.webview.currentWebview(),
  651. parent = self.opener();
  652. if(parent && parent.id == "sign_manage"){
  653. // var tab = 4; //代缴费tab index
  654. // if(state == 1){
  655. // tab = 4;
  656. // }else{
  657. // tab = 3; //待处理tab
  658. // }
  659. //续签管理页面关闭,所以现在跳转去签约管理的tab中
  660. var tab = 1; //代缴费tab index
  661. if(state == 1){
  662. tab = 1;
  663. }else{
  664. tab = 0; //待处理tab
  665. }
  666. mui.fire(parent, "reloadTab", {tab: tab}); //刷新续签管理的代缴费tab内容
  667. parent.show();
  668. mui.later(function(){
  669. self.close();
  670. }, 300);
  671. }else{
  672. if(parent){
  673. mui.fire(parent, "updata");
  674. self.close();
  675. }
  676. }
  677. }
  678. template.helper("setPhoto", function(p) {
  679. return getImgUrl(p);
  680. });