| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505 |
- <!DOCTYPE HTML>
- <html>
- <head>
- <title>
- </title>
- <%-- 改。Lin
- <link rel="stylesheet" type="text/css" href="/${sessionScope['XMMC']}/js/fullcalendar/theme/main_.css">
- <link rel="stylesheet" type="text/css" href="/${sessionScope['XMMC']}/js/fullcalendar/theme/fullcalendar.css">
- <link rel="stylesheet" type="text/css" href="/${sessionScope['XMMC']}/js/fullcalendar/theme/jquery-ui.css"> --%>
- <css.ss file="/ss/fullcalendar/main_.css"/>
- <css.ss file="/ss/fullcalendar/fullcalendar.css"/>
- <css.ss file="/ss/fullcalendar/jquery-ui.css"/>
- <%-- 改。Lin
- <script src='/wd/js/setNzTimer.js' type='text/javascript' charset='utf-8'></script> --%>
- <js.ss file="/ss/setNzTimer.js"/>
- <%-- 改。Lin
- <script type="text/javascript" src="/wd/edit.js"></script> --%>
- <js.ss file="/ss/edit.js"/>
- <style type="text/css">
- #calendar {
- width: 960px;
- margin: 20px auto 10px auto
- }
- .fancy {
- width: 450px;
- height: auto
- }
- .fancy h3 {
- height: 30px;
- line-height: 30px;
- border-bottom: 1px solid #d3d3d3;
- font-size: 14px
- }
- .fancy form {
- padding: 10px
- }
- .fancy p {
- height: 28px;
- line-height: 28px;
- padding: 4px;
- color: #999
- }
- .input {
- height: 20px;
- line-height: 20px;
- padding: 2px;
- border: 1px solid #d3d3d3;
- width: 100px
- }
- .btn {
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- padding: 5px 12px;
- cursor: pointer
- }
- .btn_ok {
- background: #360;
- border: 1px solid #390;
- color: #fff
- }
- .btn_cancel {
- background: #f0f0f0;
- border: 1px solid #d3d3d3;
- color: #666
- }
- .btn_del {
- background: #f90;
- border: 1px solid #f80;
- color: #fff
- }
- .sub_btn {
- height: 32px;
- line-height: 32px;
- padding-top: 6px;
- border-top: 1px solid #f0f0f0;
- text-align: right;
- position: relative
- }
- .sub_btn .del {
- position: absolute;
- left: 2px
- }
- #menu {
- position: absolute;
- height: auto;
- display: none;
- z-index:99999999999;
- padding: 5px 5px;
- overflow: auto hidden;
- outline: none;
- box-shadow: 4px 4px 9px rgba(0, 0, 0, .13);
- box-sizing: border-box;
- background-color: #fff;
- border-left: 1px solid #e1e1e1;
- border-right: 1px solid #e1e1e1;
- border-bottom: 1px solid #e1e1e1;
- /*border-top: 1px solid #6c9ed7;*/
- }
- .popList{
- width: 60px;
- height: 100%;
- }
- .active:hover{
- background: rgba(107, 159, 211);
- color: #fff;
- }
- </style>
- </head>
- <body>
- <div id='calendar' style="width: 90%;">
- <menu id="menu">
- <ul class="popList">
- </ul>
- </menu>
- </div>
- <div id="datass" style="display: none;">
- </div> <%-- 增加。Lin --%>
- </body>
- <js.ss file="/ss/fullcalendar/jquery-ui.js"/> <%-- src='jquery-ui.js'。Lin --%>
- <js.ss file="/ss/fullcalendar/fullcalendar.js"/> <%-- src='fullcalendar.js'。Lin --%>
- <script type="text/javascript">
- var riqi = '';
- window.onload = function() {
- var el = document.getElementById("calendar");
- var oMenu = document.getElementById("menu");
- el.oncontextmenu = function(e) {
- //左键--button属性=1,右键button属性=2
- if(e.button == 2) {
- e.preventDefault();
- var _x = e.clientX,
- _y = e.clientY;
- oMenu.style.display = "block";
- oMenu.style.left = _x + "px";
- oMenu.style.top = _y + "px";
- }
- if($(e.srcElement).hasClass("fc-day")){
- riqi = $(e.srcElement).attr('data-date');
- }else{
- if($(e.srcElement).parents('.fc-day').attr('data-date')){
- riqi = $(e.srcElement).parents('.fc-day').attr('data-date');
- }
- }
- }
- //关闭右键菜单,很简单
- // window.onclick=function(e){
- // //用户触发click事件就可以关闭了,因为绑定在window上,按事件冒泡处理,不会影响菜单的功能
- // document.querySelector('#menu').style.display='none';
- // }
- }
- //js中注释的代码暂时不用,待日程搬运时再放出来
- var pluginList;
- $(function() {
- var el = document.getElementById("calendar");
- var oMenu = document.getElementById("menu");
- pluginList = wd.display.createObjectService("p_rc","add").pluginList;
- var html = "";
- var html = "";
- if (pluginList) { // 增加。抄自 display.js 里的 wd.display.createObjectService(。Lin
- for(var i=0;i<pluginList.length;i++){
- html += "<li class='active' onclick=\"rc_lr_zj('"+pluginList[i].pluginDesc+"')\">"+pluginList[i].pluginDesc+"</li>";
- }
- }
- $(".popList").append(html);
- var dateEventsSize = new Map();
- $('#calendar').fullCalendar({
- defaultDate:"${defaultDate}",
- height: window.innerHeight - 50,
- windowResize: function(view) {
- $('#calendar').fullCalendar('option', 'height', window.innerHeight - 50);
- },
- eventMouseover:function(event, jsEvent, view){
- riqi = event.start.format('yyyy-MM-dd');
- },
- eventDrop: function(event, dayDelta, minuteDelta, allDay, revertFunc, jsEvent, ui, view) {
- if (event.lb != '81') {
- revertFunc();
- return;
- }
- update(event.id, event.start, event.end);
- },
- eventResize: function(event, dayDelta, minuteDelta, revertFunc, jsEvent, ui, view) {
- if (event.lb != '81') {
- revertFunc();
- return;
- }
- update(event.id, event.start, event.end);
- },
- eventDragStart: function(event, jsEvent, ui, view) {
- if (event.lb != '81') {
- // revertFunc();
- return false;
- }
- },
- eventResizeStart: function(event, jsEvent, ui, view) {
- if (event.lb != '81') {
- // revertFunc();
- return false;
- }
- },
- buttonicons: {
- prev: 'circle-triangle-w',
- next: 'circle-triangle-e'
- },
- editable: true,
- firstDay: 0,
- header: {
- left: 'prev,next today',
- center: 'title',
- right: 'month,agendaWeek,agendaDay'
- },
- weekMode: 'liquid',
- eventBackgroundColor:"transparent",
- eventBorderColor:"transparent",
- eventTextColor:"#000",
- loading: function(isLoading, view) {
- $.ajax({
- type: "post",
- url: "<serv.ss name='selAllSched'/>", // :"getAllNz"。Lin
- async: false,
- success: function(data) {
- $("#datass").html(data);
- }
- });
- },
- events: function (i,s,callback) {
- $.ajax({
- type: "post",
- url: "<serv.ss name='selAllSched'/>", // :"getAllNz"。Lin
- async: false,
- dataType:'json',
- success: function(data) {
- /* 去掉,就有颜色(底色)了。Lin
- for( var i= 0 ;i<data.length ;i++){
- data[i].color = "" // 为什么要清掉 ."color"???Lin
- }
- */
- console.log(callback)
- callback(data);
- }
- });
- },
- dayClick: function(date, allDay, jsEvent, view) {
- var theDate = date.format('yyyy-MM-dd');
- var eventsSize = dateEventsSize.get(theDate);
- if(eventsSize == undefined || eventsSize == null || eventsSize == 'null'){
- var events = $('#calendar').fullCalendar('clientEvents', function(event) {
- var eventStart = event.start.format('yyyy-MM-dd');
- var eventEnd = event.end ? event.end.format('yyyy-MM-dd') : null;
- return (eventStart <= theDate && (eventEnd >= theDate) && !(eventStart < theDate && (eventEnd == theDate))) || (eventStart == theDate && (eventEnd === null));
- });
- eventsSize = events.length;
- dateEventsSize.set(theDate,eventsSize);
- }
- var oMenu = document.getElementById("menu");
- if(eventsSize == 0){
- jsEvent.preventDefault();
- var _x = jsEvent.clientX,
- _y = jsEvent.clientY;
- oMenu.style.display = "block";
- oMenu.style.left = _x + "px";
- oMenu.style.top = _y + "px";
- riqi = $(jsEvent.currentTarget).attr('data-date');
- return;
- }else{
- oMenu.style.display = "none";
- }
- console.log(new Date(date.Format("yyyy-MM-dd")) < new Date(new Date().Format("yyyy-MM-dd")));
- console.log(new Date(date.Format("yyyy-MM-dd")) == new Date(new Date().Format("yyyy-MM-dd")));
- console.log(new Date(date.Format("yyyy-MM-dd")) > new Date(new Date().Format("yyyy-MM-dd")));
- if (new Date(date.Format("yyyy-MM-dd")) < new Date(new Date().Format("yyyy-MM-dd"))){
- //点击日期小于当前日期,只有增加实习记录
- //建立需要的参数
- var isCreatSxjl;
- var isZdy;
- var sxjhids;
- //ajax同步查询获得判断条件
- $.ajax({
- type:"get",
- url:'@service{name:"sxjl_nzbjdjpd"}@',
- data: {'date': date.Format("yyyy-MM-dd")},
- async:false,
- dataType:"json",
- success: function(re) {
- isCreatSxjl = re.isCreatSxjl;
- isZdy = re.isZdy;
- sxjhids = re.sxjhids;
- }
- });
- if(!isCreatSxjl) return false;
- var ymlb = "1";
- var selDate = $.fullCalendar.formatDate(date, 'yyyy-MM-dd HH:mm:ss');
- var jssj = $.fullCalendar.formatDate(date, 'yyyy-MM-dd ') + '23:59:59' ;
- var json = JSON.parse('{"kssj":"'+selDate+'","jssj":"'+jssj+'","ymlb":"'+ymlb+'","isZdy":"'+isZdy+'","sxjhids":"'+sxjhids+'"}');
- var js = '@service{dest:"add",show:"wdDialog",param:{"kssj":"wdVal{kssj}","jssj":"wdVal{jssj}","ymlb":"wdVal{ymlb}","isZdy":"wdVal{isZdy}","sxjhids":"wdVal{sxjhids}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }else if(new Date(date.Format("yyyy-MM-dd")) > new Date(new Date().Format("yyyy-MM-dd"))){
- //点击日期是当前日期之后的,只能增加日程
- /*
- 这段代码用于判断点击的时间是否超过当前时间,如果是就不允许填写,跳出提示框
- var ymlb = "3";
- var selDate = $.fullCalendar.formatDate(date, 'yyyy-MM-dd HH:mm:ss');
- var jssj = $.fullCalendar.formatDate(date, 'yyyy-MM-dd ') + '23:59:59' ;
- var json = JSON.parse('{"kssj":"'+selDate+'","jssj":"'+jssj+'","ymlb":"'+ymlb+'"}');
- var js = '@service{dest:"sys_alert",show:"wdDialog",param:{msg:"不能录入今天之后的周记,请点击今天或之前的时间进行录入!"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- console.log(js);
- eval(js);
- //点击日期是当前日期之后的,只能增加日程
- var ymlb = "3";
- var selDate = $.fullCalendar.formatDate(date, 'yyyy-MM-dd HH:mm:ss');
- var jssj = $.fullCalendar.formatDate(date, 'yyyy-MM-dd ') + '23:59:59' ;
- var json = JSON.parse('{"kssj":"'+selDate+'","jssj":"'+jssj+'","ymlb":"'+ymlb+'"}');
- var js = '@service{name:"rc_lr",dest:"add",show:"wdDialog",param:{"kssj":"wdVal{kssj}","jssj":"wdVal{jssj}","ymlb":"wdVal{ymlb}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);*/
- }else{
- //点击日期是当前日期,可以增加实习记录以及日程
- //建立需要的参数
- var isCreatSxjl;
- var isZdy;
- var sxjhids;
- //ajax同步查询获得判断条件
- $.ajax({
- type:"get",
- url:'@service{name:"sxjl_nzbjdjpd"}@',
- data: {'date': date.Format("yyyy-MM-dd")},
- async:false,
- dataType:"json",
- success: function(re) {
- isCreatSxjl = re.isCreatSxjl;
- isZdy = re.isZdy;
- sxjhids = re.sxjhids;
- }
- });
- if(isCreatSxjl){
- //有实习计划
- var ymlb = "2";
- var selDate = $.fullCalendar.formatDate(date, 'yyyy-MM-dd HH:mm:ss');
- var jssj = $.fullCalendar.formatDate(date, 'yyyy-MM-dd ') + '23:59:59' ;
- var json = JSON.parse('{"kssj":"'+selDate+'","jssj":"'+jssj+'","ymlb":"'+ymlb+'","isZdy":"'+isZdy+'","sxjhids":"'+sxjhids+'"}');
- var js = '@service{dest:"add",show:"wdDialog",param:{"kssj":"wdVal{kssj}","jssj":"wdVal{jssj}","ymlb":"wdVal{ymlb}","isZdy":"wdVal{isZdy}","sxjhids":"wdVal{sxjhids}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }else{
- /*
- var ymlb = "3";
- var selDate = $.fullCalendar.formatDate(date, 'yyyy-MM-dd HH:mm:ss');
- var jssj = $.fullCalendar.formatDate(date, 'yyyy-MM-dd ') + '23:59:59' ;
- var json = JSON.parse('{"kssj":"'+selDate+'","jssj":"'+jssj+'","ymlb":"'+ymlb+'"}');
- var js = '@service{dest:"add",show:"wdDialog",param:{"kssj":"wdVal{kssj}","jssj":"wdVal{jssj}","ymlb":"wdVal{ymlb}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);*/
- }
- }
- },
- eventClick: function(calEvent, jsEvent, view) {
- console.log(calEvent.lb );
- if(calEvent.lb=='130'){
- var json = JSON.parse('{"data":"'+calEvent.id+ '"}');
- var js = '@service{name:"ycd_cdyd_ck_jbqk",show:"wdDialog",dest:"ycd_cdyd_ck_jbqk",param:{"cdydid":"wdVal{data}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }
- else if(calEvent.lb == '81'){
- var json = JSON.parse('{"data":"'+calEvent.id+ '"}');
- var js = '@service{name:"rc_lr_xg_jbqk",show:"wdDialog",dest:"env_input",param:{"rcid":"wdVal{data}",rclbm:81,dataType:"update"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }
- else if(calEvent.lb == '85'){
- var json = JSON.parse('{"data":"'+calEvent.id+ '"}');
- var js = '@service{name:"rc_lr_xg_jbqk",show:"wdDialog",dest:"env_input",param:{"rcid":"wdVal{data}",rclbm:85,dataType:"update"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }
- else if(calEvent.lb == '71' || calEvent.lb == '75'){
- /* var startDate = $.fullCalendar.formatDate(calEvent.start, 'yyyy-MM-dd HH:mm:ss');
- var endDate = $.fullCalendar.formatDate(calEvent.end, 'yyyy-MM-dd HH:mm:ss');
- var json = JSON.parse('{"kssj":"'+startDate+'","jssj":"'+endDate+'","lb":"71,75"}');
- var js = '@service{dest:"add",show:"wdDialog",param:{"kssj":"wdVal{kssj}","jssj":"wdVal{jssj}","lb":"wdVal{lb}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);*/
- var json = {};
- json["rcid"]=calEvent.id;
- json["dxid"]=calEvent.id;
- var url = '@service{name:"rc_ck_jbqk_nz_byId",show:"wdDialog",dest:"env_play",param:{"rcid":"wdVal{rcid}","dxid":"wdVal{dxid}","dxm":"rc"}}@';
- url=wd.display.replaceDynamicParam(url,json);
- eval(url);
- }
- else if (calEvent.lb == '101' ){
- var json = JSON.parse('{"data":"'+calEvent.id+ '"}');
- var js = '@service{name:"sw_ck",show:"wdDialog",dest:"sw_baseInfo",param:{"swid":"wdVal{data}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }
- else if(calEvent.lb == '110'){
- console.log(calEvent.jlztm+"================"+calEvent.id);
- if(calEvent.jlztm == '1'){
- //记录状态码是1 ,修改页面
- var json = JSON.parse('{"sxjlid":"'+calEvent.id+ '"}');
- var js = '@service{name:"sxjl_xg",show:"wdDialog",dest:"sxjl_xg",param:{"sxjlid":"wdVal{sxjlid}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }else{
- var json = JSON.parse('{"sxjlid":"'+calEvent.id+ '"}');
- var js = '@service{name:"sxjl_ck",show:"wdDialog",dest:"sxjl_ck",param:{"sxjlid":"wdVal{sxjlid}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }
- }
- else if(calEvent.lb == '120'){
- console.log(jsEvent);
- var json = JSON.parse('{"sxjhid":"'+calEvent.id+ '"}');
- var js = '@service{name:"sxjh_ck",show:"wdDialog",dest:"sxjh_baseInfo",param:{"dataType":"play","sxjhid":"wdVal{sxjhid}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }
- else if (calEvent.lb != '81' &&calEvent.lb != '92'|| calEvent.start < new Date()&&calEvent.lb != '92') {
- var rcid = calEvent.id;
- var json = JSON.parse('{"data":"'+calEvent.id+ '"}');
- var js = '@service{name:"rc_ck_jbqk_nz",show:"wdDialog",dest:"rcap_ck",param:{"rcid":"wdVal{data}"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }else if (calEvent.lb == '92') {
- var json = JSON.parse('{"kcbid":"'+calEvent.id+'","dxid":"'+calEvent.id+'"}');
- var js = '@service{name:"kcb_ck",show:"wdDialog",dest:"env_play",param:{"kcbid":"wdVal{kcbid}","dxid":"wdVal{dxid}","dxm":"kcb"}}@';
- js=wd.display.replaceDynamicParam(js,json);
- eval(js);
- }
- }
- });
- window.top.initData();
- if (window.top.rcid) {
- if (window.top.rcid.split("_")[1] != "81") {
- return;
- }
- var js = '@service{name:"ry_xg_rcap_xg",show:"wdDialog",dest:"edit",param:{rcid:"rcid"}}@';
- js = js.replace('rcid=rcid', 'rcid=' + window.top.rcid.split("_")[0]);
- eval(js);
- window.top.rcid= null;
- }
- });
- function update(id, start, end) {
- var sta = $.fullCalendar.formatDate(start, 'yyyy-MM-dd HH:mm:ss');
- var en = $.fullCalendar.formatDate(end, 'yyyy-MM-dd HH:mm:ss');
- var url = '@service{name:"bcNz",param:{rcid:"wdVal{RCID}",kssj:"wdVal{KSSJ}",jssj:"wdVal{JSSJ}"}}@';
- var json = JSON.parse('{"RCID":"'+id+ '","KSSJ":"'+sta+'","JSSJ":"'+en+'"}');
- url=wd.display.replaceDynamicParam(url,json);
- $.ajax({
- type: "post",
- url: url,
- async: true,
- success: function(data) {
- window.top.initData();
- }
- });
- }
- function rc_lr_zj(flag){
- var url = '';
- for(var i = 0;i < pluginList.length;i++){
- if(pluginList[i].pluginDesc == flag){
- var pluginobj=pluginList[i];
- url = "wd.display.showComponent({show:['wdDialog'],hide:[],url:'"+pluginobj.url+"&date="+riqi+"',title:'"+pluginobj.title+"',width:"+pluginobj.width+",height:"+pluginobj.height+",minHeight:"+pluginobj.minHeight+",maxHeight:"+pluginobj.maxHeight+"});";
- break;
- }
- }
- eval(url);
- }
- </script>
- </html>
|