worktime.html 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <meta name="author" content="yihu.com" />
  6. <meta name="format-detection" content="telephone=no" />
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
  8. <meta name="apple-mobile-web-app-capable" content="yes" />
  9. <meta name="apple-mobile-web-app-status-bar-style" content="black" />
  10. <title>工作时间</title>
  11. <link rel="stylesheet" href="../../../common/cross/css/cross.css" type="text/css" />
  12. <link rel="stylesheet" href="../../../common/cross/css/cross.ui.css" type="text/css" />
  13. <style>
  14. body,html{
  15. height: 100%;
  16. overflow: auto;
  17. }
  18. .c-list-link{ padding: 0;}
  19. .c-nowrap{ line-height: 40px;}
  20. .demo-comtop .save{ display: block;width: 45px;height: 45px; color:#17b3ec;position: absolute;right: 10px;top: 0;}
  21. .tit{background: #f2f4f6;padding: 0 0 0 15px;font-size: 16px;line-height: 40px;color: #999999;}
  22. .tit1{background: #fa8888;padding: 0 0 0 15px;font-size: 16px;line-height: 40px;color: #999999; color: #fff; font-size:14px;}
  23. .tit1 i{ float:right; width: 30px; height: 30px; background: url(../images/close.png) center no-repeat; background-size:20px 20px ; display:inline;margin: 5px;}
  24. .work{ }
  25. .work .c-list-value{ text-align: right;}
  26. .work .c-list-value i,.work .c-list-value em{ color: #34b8ed; display: inline-block; vertical-align: middle; line-height: 40px; padding: 0 10px; font-size:16px;}
  27. .work .c-list-value i.on{color:red}
  28. .work .c-list-value em{ padding: 0;}
  29. .cycworktime{ width: 100%;border-left:1px #e1e1e1 solid ;border-top:1px #e1e1e1 solid ;}
  30. .cycworktime th,.cycworktime td{ line-height: 50px; width: 28%; text-align: center; color:#999999 ; font-size:20px; border-right:1px #e1e1e1 solid ;border-bottom:1px #e1e1e1 solid ;}
  31. .cycworktime tr th:nth-of-type(1),.cycworktime tr td:nth-of-type(1){ width:16px}
  32. .cycworktime td.on{ background: url(../images/cyc-check.png) no-repeat center; background-size:26px ;}
  33. .c-list-link{padding-top: 5px !important;;padding-bottom: 5px !important;}
  34. #save { color: #FFF; }
  35. </style>
  36. </head>
  37. <body>
  38. <div class="h45">
  39. <div class="demo-comtop">
  40. <a class="mui-action-back"></a>
  41. <h1>工作时间</h1>
  42. <a href="javascript:void(0);" class="save" id="save">保存</a>
  43. </div>
  44. </div>
  45. <div class="c-list-info tit1">
  46. <!--设置工作时间后,-->
  47. <h4 class="c-nowrap"><i></i>设置工作时间后,非工作时间将不再收到消息提醒</h4>
  48. </div>
  49. <div class="c-list-info tit">
  50. <h4 class="c-nowrap">接收咨询提醒时间段:</h4>
  51. </div>
  52. <ul class="c-list c-border-b work">
  53. <li class="c-list-text c-list-link">
  54. <div class="c-list-info">
  55. <h4 class="c-nowrap">上午:</h4>
  56. </div>
  57. <div class="c-list-value c-f16">
  58. <i class="a1">8:00</i><em>~</em><i class="a2">12:00</i>
  59. </div>
  60. <span class="list-icon arrow-right"></span>
  61. </li>
  62. <li class="c-list-text c-list-link">
  63. <div class="c-list-info">
  64. <h4 class="c-nowrap">下午:</h4>
  65. </div>
  66. <div class="c-list-value c-f16">
  67. <i class="a3">13:30</i><em>~</em><i class="a4">17:30</i>
  68. </div>
  69. <span class="list-icon arrow-right"></span>
  70. </li>
  71. <li class="c-list-text c-list-link">
  72. <div class="c-list-info">
  73. <h4 class="c-nowrap">晚上:</h4>
  74. </div>
  75. <div class="c-list-value c-f16">
  76. <i class="a5">19:00</i><em>~</em><i class="a6">23:00</i>
  77. </div>
  78. <span class="list-icon arrow-right"></span>
  79. </li>
  80. </ul>
  81. <div class="c-list-info tit">
  82. <h4 class="c-nowrap">每周排班计划:</h4>
  83. </div>
  84. <table class="cycworktime" style="margin-bottom: 40px;">
  85. <thead>
  86. <tr>
  87. <th></th>
  88. <th>上午</th>
  89. <th>下午</th>
  90. <th>晚上</th>
  91. </tr>
  92. </thead>
  93. <tbody>
  94. <tr data-fl="1">
  95. <td>周一</td>
  96. <td class="fill" data-type="1"></td>
  97. <td class="fill" data-type="2"></td>
  98. <td class="fill" data-type="3"></td>
  99. </tr>
  100. <tr data-fl="2">
  101. <td>周二</td>
  102. <td class="fill" data-type="1"></td>
  103. <td class="fill" data-type="2"></td>
  104. <td class="fill" data-type="3"></td>
  105. </tr>
  106. <tr data-fl="3">
  107. <td>周三</td>
  108. <td class="fill" data-type="1"></td>
  109. <td class="fill" data-type="2"></td>
  110. <td class="fill" data-type="3"></td>
  111. </tr>
  112. <tr data-fl="4">
  113. <td>周四</td>
  114. <td class="fill" data-type="1"></td>
  115. <td class="fill" data-type="2"></td>
  116. <td class="fill" data-type="3"></td>
  117. </tr>
  118. <tr data-fl="5">
  119. <td>周五</td>
  120. <td class="fill" data-type="1"></td>
  121. <td class="fill" data-type="2"></td>
  122. <td class="fill" data-type="3"></td>
  123. </tr>
  124. <tr data-fl="6">
  125. <td>周六</td>
  126. <td class="fill" data-type="1"></td>
  127. <td class="fill" data-type="2"></td>
  128. <td class="fill" data-type="3"></td>
  129. </tr>
  130. <tr data-fl="7">
  131. <td>周日</td>
  132. <td class="fill" data-type="1"></td>
  133. <td class="fill" data-type="2"></td>
  134. <td class="fill" data-type="3"></td>
  135. </tr>
  136. </tbody>
  137. </table>
  138. <script type="text/javascript" src="../../../js/jquery/2.1.3/jquery.js"></script>
  139. <script type="text/javascript" src="../js/base.js"></script>
  140. <script type="text/javascript" src="../../../js/mui.min.js"></script>
  141. <script type="text/javascript" src="../../../js/common_http.js"></script>
  142. <script>
  143. mui.init()
  144. mui.plusReady(function() {
  145. $(".work .c-list-value i").click(function(){//时间控件
  146. var time=$(this).html()
  147. pickTime($(this),time)
  148. })
  149. $(".tit1 i").click(function(){//头部提示条
  150. $(".tit1").slideUp();
  151. })
  152. $(".cycworktime").on("tap","td.fill",function(){//选中未选中
  153. var $this = $(this)
  154. if($this.hasClass('on')){
  155. $this.removeClass('on')
  156. }else{
  157. $this.addClass('on')
  158. }
  159. })
  160. $("#save").click(function(){
  161. var dataArr=[]//时间
  162. var dataVal={};
  163. var szwArr=[]//上中晚排版
  164. $.each($(".work .c-list-value i"),function(i,v){
  165. dataArr.push($(v).html())
  166. })
  167. //判断可以不可以上传 star
  168. for(var i=0;i<dataArr.length-1;i++){
  169. var h=parseInt(dataArr[i].split(":")[0]);
  170. var f=parseInt(dataArr[i].split(":")[1]);
  171. var h1=parseInt(dataArr[parseInt(i+1)].split(":")[0]);
  172. var f1=parseInt(dataArr[parseInt(i+1)].split(":")[1]);
  173. if(h>h1 || (h==h1 && f>f1) ){
  174. mui.alert("咨询提醒时间段设置有误","保存失败")
  175. return false
  176. }
  177. }
  178. //end
  179. $.each($(".cycworktime tbody tr"),function(i,v){
  180. var arr=["","",""]
  181. $.each($(v).find("td"),function(ii,vv){
  182. if($(vv).hasClass("on")){
  183. arr[ii]="1"
  184. }else{
  185. arr[ii]="0"
  186. }
  187. })
  188. szwArr.push({
  189. week:$(v).attr("data-fl"),
  190. morning:arr[1],//上午
  191. afternoon:arr[2],//下午
  192. night:arr[3]//晚上
  193. })
  194. })
  195. dataVal={
  196. morningBegin:dataArr[0], // 上午开始时间 08:00
  197. morningEnd:dataArr[1], //上午结束时间
  198. afternoonBegin:dataArr[2], //下午开始时间
  199. afternoonEnd:dataArr[3], //下午结束时间
  200. nightBegin:dataArr[4], //晚上开始时间
  201. nightEnd:dataArr[5], //晚上结束时间
  202. }
  203. var workScheduling={
  204. workTime:dataVal,
  205. workWeeks:szwArr
  206. }
  207. sendPost("/doctor/work_scheduling/save",{workScheduling:JSON.stringify(workScheduling)},null,function(res){
  208. mui.alert('保存成功', '提示', function()
  209. {
  210. var self=plus.webview.currentWebview();
  211. self.reload(true);
  212. });
  213. })
  214. })
  215. initPage()
  216. })
  217. function initPage(){//填充数据
  218. sendPost("/doctor/work_scheduling/all",{},function(res){
  219. mui.toast('请求失败')
  220. },function(res){
  221. if(res.status==200){
  222. var Time=res.data.workTime//时间
  223. var Weeks=res.data.workWeeks//周安排
  224. if(Time.length!=0){//查询成功有数据
  225. $($(".work .c-list-value i")[0]).html(Time.morningBegin)
  226. $($(".work .c-list-value i")[1]).html(Time.morningEnd)
  227. $($(".work .c-list-value i")[2]).html(Time.afternoonBegin)
  228. $($(".work .c-list-value i")[3]).html(Time.afternoonEnd)
  229. $($(".work .c-list-value i")[4]).html(Time.nightBegin)
  230. $($(".work .c-list-value i")[5]).html(Time.nightEnd)
  231. $.each(Weeks,function(i,v){
  232. var obj=$(".cycworktime tr[data-fl="+v.week+"]");
  233. if(v.morning=="1"){
  234. obj.find("td[data-type='1']").addClass("on")
  235. }
  236. if(v.afternoon=="1"){
  237. obj.find("td[data-type='2']").addClass("on")
  238. }
  239. if(v.night=="1"){
  240. obj.find("td[data-type='3']").addClass("on")
  241. }
  242. })
  243. }
  244. }
  245. })
  246. }
  247. // 选择时间
  248. function pickTime(obj,time){
  249. var time=time;
  250. var timeArr=time.split(":")
  251. var t=new Date();
  252. t.setHours(parseInt(timeArr[0]),parseInt(timeArr[1]));
  253. plus.nativeUI.pickTime( function(e){
  254. var d=e.date;
  255. var hours=d.getHours();
  256. var minutes=d.getMinutes();
  257. switch(obj.attr("class")){
  258. case "a1":
  259. if(!((hours>=0&&hours<=12) ||(hours==12 &&minutes==0))){
  260. mui.toast("上午的时间段需在0点~12点内")
  261. }
  262. if(hours>$("i.a2").html().split(":")[0]){
  263. mui.toast("起始时间不得晚于截止时间")
  264. };
  265. break;
  266. case "a2":
  267. if(!((hours>=0&&hours<=12) ||(hours==12 &&minutes==0))){
  268. mui.toast("上午的时间段需在0点~12点内")
  269. }
  270. if(hours<$("i.a1").html().split(":")[0]){
  271. mui.toast("截止时间不得早于起始时间")
  272. };
  273. break;
  274. case "a3":
  275. if(!((hours>=12&&hours<=19) ||(hours==12 &&minutes==0)||(hours==19 &&minutes==0))){
  276. mui.toast("下午的时间段需在12点~19点内")
  277. }
  278. break;
  279. case "a4":
  280. if(!((hours>=12&&hours<=19) ||(hours==12 &&minutes==0)||(hours==19 &&minutes==0))){
  281. mui.toast("下午的时间段需在12点~19点内")
  282. }
  283. break;
  284. case "a5":
  285. if(!((hours>=19&&hours<=24) ||(hours==19 &&minutes==0)||(hours==24 &&minutes==0))){
  286. mui.toast("晚上的时间段需在19点~24点内")
  287. }
  288. break;
  289. case "a6":
  290. if(!((hours>=19&&hours<=24) ||(hours==19 &&minutes==0)||(hours==24 &&minutes==0))){
  291. mui.toast("晚上的时间段需在19点~24点内")
  292. }
  293. break;
  294. }
  295. if(hours<10){
  296. hours="0"+hours
  297. }
  298. if(minutes<10){
  299. minutes="0"+minutes
  300. }
  301. obj.html(hours+":"+minutes)
  302. },function(e){
  303. },{time:t,title:"请选择时间:"});
  304. }
  305. </script>
  306. </body>
  307. </html>