  
//    $(document).ready(function() {

//         initChargeTeamSchedule()

//    })

   function initChargeTeamSchedule(){
         $("#main_content_title").html("收费人员排班")

        var user = $.zui.store.get("user") ;  // 缓存用户信息，取出dept_id

        // 用户的dept_id
        var user_dept_id = user.organid ;
        
        // 收费小组type
        var team_type = 1 ;

        // 日期游标
        var date_cursor = 0 ;

       

        $('#calendar').calendar();
        var calendar = $('#calendar').data('zui.calendar');
       
        calendarInit();

        // 请求收费人员排班数据
        function calendarInit(data_param){
            var data = {
                "dept_id": user_dept_id ,
                "start_time":getCurrentMonthFirst(),
                "end_time":getCurrentMonthLast(),
                 'type':team_type
            }
            if(data_param != undefined){
                data = data_param ;
            }
            getTeamClass(data,function(data){
                var newEvents = [];

                

                // console.log(data);
                for(var i=0;i<data.length;i++){
                    var obj = {id:data[i].id ,desc:data[i].team_name ,title: data[i].team_name+"-"+getTeamName(data[i].class_type),  start: data[i].start_time, end: data[i].end_time};
                    newEvents.push(obj);
                }
               

                 // 这里轮训给每天都增加一个事件
               
                var date = new Date();
                var end_date =new Date(getCurrentMonthLast2()) ;
                if(data_param != undefined){
                    date =  new Date(data_param.start_time);
                    end_date = new Date(data_param.end_time) ;
                }


                for(var i =0;i<31;i++){
                    if( date.setDate(i+1) <= end_date ){
                        var obj =  {id:-1 ,desc:'详细排班' ,title: '+详细排班',  start:date.format('yyyy-MM-dd'), end: date.format('yyyy-MM-dd'),color:'#bd7b46'};
                        newEvents.push(obj);
                    }
                }


                calendar.addEvents(newEvents);
            })
        }

        // 获取排班信息
        function getTeamClass(data,_function){
            post_common_service( "teamClass/getClassList",data,function(data){
               _function(data);
            },function(error){
                return "" ;
            })
        }

        getStation();


        var lans = 0;
        var entrance_number = 0;
        var exit_number = 0;

        // 获取收费站信息
        function getStation(){
            get_common_service( "dept/getFsByDept","",function(data){
                if(data != null){
                    $(".thread_charge").append("<th>"+data.name+"</th>");
                    $(".thread_charge").append("<th>值班室</th>");
                    // console.log(data);
                    lans = data.lanes_number;
                    entrance_number = data.entrance_numer ;
                    exit_number = data.exit_numer ;
                    // for(var i=0;i<data.lanes_number;i++){
                    //     $(".thread_charge").append("<th>进口车道"+(i+1)+"</th>");
                    // }
                    for(var i=0;i<entrance_number;i++){
                        $(".thread_charge").append("<th>进口车道"+(i+1)+"</th>");
                    }
                    for(var i=0;i<exit_number;i++){
                         $(".thread_charge").append("<th>出口车道"+(i+1)+"</th>");
                    }
                }
            },function(error){
                return "" ;
            })
        }

        getClassCode();

        var classCode = {};


        /**
         * 获取班组信息
         */
        function getClassCode(){
            var data = {} ;
            post_common_service( "teamClass/getClassCode",data,function(data){
                for(var i=0;i<data.length;i++){
                    classCode[data[i].code] = data[i];
                }
                // console.log(classCode);
                $(".class_type_1").html(classCode[1].class_name);
                $(".class_type_2").html(classCode[2].class_name);
                $(".class_type_3").html(classCode[3].class_name);
            },function(error){
                return "" ;
            })
        }

        // 更新日历数据
        function updateCalendar(data){
            calendar.events = [];
            calendar.display();
            calendarInit(data);
        }

        // 当月第一天
        function getCurrentMonthFirst(){
            var date=new Date();
            date.setDate(1);
            return date.toLocaleDateString()+" 00:00:00";
        }

        // 当月最后一天
        function getCurrentMonthLast(){
            var date=new Date();
            var currentMonth=date.getMonth();
            var nextMonth=++currentMonth;
            var nextMonthFirstDay=new Date(date.getFullYear(),nextMonth,1);
            var oneDay=1000*60*60*24;
            return new Date(nextMonthFirstDay-oneDay).toLocaleDateString()+" 00:00:00";
        }


        // 当月最后一天
        function getCurrentMonthLast2(){
            var date=new Date();
            var currentMonth=date.getMonth();
            var nextMonth=++currentMonth;
            var nextMonthFirstDay=new Date(date.getFullYear(),nextMonth,1);
            var oneDay=1000*60*60*24;
            return new Date(nextMonthFirstDay-oneDay).toLocaleDateString()+" 23:59:00";
        }

        // 上一个月或者下个月的第一天或者最后一天
        function getMonthByCondition(pre_or_after,first_or_last){
            if(first_or_last == 'first'){
                var date=new Date();
                date.setDate(1);
                date.setMonth(date.getMonth()+pre_or_after);
                return date;
            }else if(first_or_last == 'last'){
                var date = new Date();
                var currentMonth=date.getMonth();
                var nextMonth=++currentMonth;
                var nextMonthFirstDay=new Date(date.getFullYear(),nextMonth,1);
                var oneDay=1000*60*60*24;
                date = new Date(nextMonthFirstDay-oneDay);
                date.setMonth(date.getMonth()+pre_or_after);
                return date ;
            }
        }

        $("#save_user_class").click(function(){
            var dutyList = [];
            var work_date = $("#save_user_class").data("work_date")+"00:00:00";

            for(var j=1;j<4;j++){
                var cache = $(".tr-"+j).data("cache");

                if(cache) {
                    for(var i=0;i<lans+1;i++){
                        if($(".tr-"+j+" td select").eq(i).val()!='' ){


                        

                            var start_time = $("#save_user_class").data("work_date")+ classCode[j].start_time+":00" ;
                            var end_time =  $("#save_user_class").data("work_date")+classCode[j].end_time+":00";

                            var obj = { "work_date":work_date,"dept_id":cache.dept_id,"user_id": $(".tr-"+j+" td select").eq(i).val() , "class_type":j,"team_id":cache.team_id,"start_time":start_time, "end_time":end_time,"lane":$(".tr-"+j+" td select").eq(i).parent().attr('tag') };
                            dutyList.push(obj);
                        }
                    }
                }
            }
            $("#save_user_class").attr("disabled","disabled");

            if($("#save_user_class").data("modify_flag")){
                $("#save_user_class").data("modify_flag",false);
                post_common_service( "userClass/updateList",dutyList,function(data){
                    tip("修改成功");
                    $('#add_fee_station').modal('hide');
                     $("#save_user_class").attr("disabled",false );
                },function(error){
                    return "" ;
                })
                return ;
            }

            post_common_service( "userClass/addList",dutyList,function(data){
                tip("添加成功");
                $('#add_fee_station').modal('hide');
                $("#save_user_class").attr("disabled",false );
            },function(error){
                return "" ;
            })
        })

        $('#calendar').calendar().on("clickEvent.zui.calendar", function(event) {
            // console.log(event。event.id);
            if(event.event.id == -1){

                // 这边负责添加整个页面的数据 按车道排班 
                $('#add_fee_station').modal();
                $(".modal-title").html("收费站排班表-"+event.event.start.format("yyyy-MM-dd"));

                $("#save_user_class").data("work_date",event.event.start.format("yyyy-MM-dd "));

                 var data = {
                    "dept_id": user_dept_id ,
                    "start_time":event.event.start.format("yyyy-MM-dd 00:00:00"),
                    "end_time": event.event.start.format("yyyy-MM-dd 00:00:00"),
                    'type':team_type
                } 
                post_common_service( "teamClass/getClassListAndUsers",data,function(data){
                    $("#save_user_class").html("生成今日值班");
                    $(".tr-1,.tr-2,.tr-3").empty();

                    for(var i=0;i<data.length;i++){
                        if(data[i].class_type == 1){
                            $(".tr-1").data("cache",data[i]);
                            // $(".tr-1").append("<td>早班 6:00 - 12:00</td>");
                             $(".tr-1").append("<td>"+ classCode["1"].class_name +" "+classCode["1"].start_time+" - "+classCode["1"].end_time +"</td>");
                            var selectv = "<select class='form-control'>"
                                    // console.log(data[i]);
                            selectv += ("<option value=''>请选择人员</option>");
                            for(var j=0;j<data[i].users.length;j++){
                                    var obj = data[i].users[j];
                                    selectv += ("<option value='"+data[i].users[j].id+"'>"+ data[i].users[j].truename  +"</option>");
                            }
                            selectv += "</select>";
                            // for(var z=0;z<lans+1;z++){
                            //      $(".tr-1").append("<td>"+ selectv +"</td>")
                            // }
                            $(".tr-1").append("<td class='c-1-0' tag='0'>"+ selectv +"</td>")
                            for(var z=0;z<entrance_number;z++){
                                $(".tr-1").append("<td class='c-1-"+(z+1)+"' tag='"+(z+1)+"'>"+ selectv +"</td>")
                            }
                            for(var z=0;z<exit_number;z++){
                               $(".tr-1").append("<td class='c-1--"+(z+1)+"' tag='-"+(z+1)+"'>"+ selectv +"</td>")
                            }


                        }else if(data[i].class_type == 2){
                            //  $(".tr-2").append("<td>中班 12:00 - 20:00</td>");
                            $(".tr-2").append("<td>"+ classCode[2].class_name +" "+classCode[2].start_time+" - "+classCode[2].end_time +"</td>");
                              $(".tr-2").data("cache",data[i]);
                            var selectv2 = "<select class='form-control'>"
                            selectv2 += ("<option value=''>请选择人员</option>");
                            for(var j=0;j<data[i].users.length;j++){
                                 if(data[i].users[j]!=null)
                                selectv2 += ("<option value='"+data[i].users[j].id+"'>"+ data[i].users[j].truename  +"</option>")
                            }
                            selectv2 += "</select>";

                            // for(var z=0;z<lans+1;z++){
                            //      $(".tr-2").append("<td>"+ selectv2 +"</td>")
                            // }
                             $(".tr-2").append("<td class='c-2-0' tag='0'>"+ selectv2 +"</td>")
                            for(var z=0;z<entrance_number;z++){
                                $(".tr-2").append("<td class='c-2-"+(z+1)+"' tag='"+(z+1)+"'>"+ selectv2 +"</td>")
                            }
                            for(var z=0;z<exit_number;z++){
                               $(".tr-2").append("<td class='c-2--"+(z+1)+"' tag='-"+(z+1)+"'>"+ selectv2 +"</td>")
                            }
                        }else if(data[i].class_type == 3){
                            // $(".tr-3").append("<td>晚班 20:00 - 6:00</td>");
                             $(".tr-3").append("<td>"+ classCode[3].class_name +" "+classCode[3].start_time+" - "+classCode[3].end_time +"</td>");
                             $(".tr-3").data("cache",data[i]);
                            var selectv3 = "<select class='form-control'>"
                            selectv3 += ("<option value=''>请选择人员</option>");
                            for(var j=0;j<data[i].users.length;j++){
                                 if(data[i].users[j]!=null)
                                selectv3 += "<option value='"+data[i].users[j].id+"'>"+ data[i].users[j].truename  +"</option>"
                            }
                            selectv3 += "</select>";

                             $(".tr-3").append("<td class='c-3-0' tag='0'>"+ selectv3 +"</td>")
                            for(var z=0;z<entrance_number;z++){
                                $(".tr-3").append("<td class='c-3-"+(z+1)+"' tag='"+(z+1)+"'>"+ selectv3 +"</td>")
                            }
                            for(var z=0;z<exit_number;z++){
                               $(".tr-3").append("<td class='c-3--"+(z+1)+"' tag='-"+(z+1)+"'>"+ selectv3 +"</td>")
                            }

                            // for(var z=0;z<lans+1;z++){
                            //      $(".tr-3").append("<td>"+ selectv3 +"</td>")
                            // }
                        }
                    }
                     if(data.length ==0){
                        $(".tr-1").append("<td>"+ classCode["1"].class_name +" "+classCode["1"].start_time+" - "+classCode["1"].end_time +"</td>");
                        $(".tr-2").append("<td>"+ classCode[2].class_name +" "+classCode[2].start_time+" - "+classCode[2].end_time +"</td>");
                        $(".tr-3").append("<td>"+ classCode[3].class_name +" "+classCode[3].start_time+" - "+classCode[3].end_time +"</td>");
                        for(var i=0;i<lans+1;i++){
                             $(".tr-1,.tr-2,.tr-3").append("<td></td>");
                        }
                    }else{
                         var cache = $(".tr-1").data("cache");
                         var work_date = $("#save_user_class").data("work_date")+"00:00:00";
                         var param = {
                            'dept_id':user_dept_id,
                            'work_date':work_date
                        }

                        post_common_service( "userClass/getList",param,function(data){
                                // 这边将值班数据检索出来，初始化收费站车道排班中
                                // console.log(data);
                                if(data.length > 0){
                                    $("#save_user_class").data("modify_flag",true);
                                    $("#save_user_class").html("修改今日值班");
                                }else{
                                     $("#save_user_class").html("生成今日值班");
                                      $("#save_user_class").data("modify_flag",false);
                                }
                                // console.log(data);
                                for(var i=0;i<data.length;i++){
                                   
                                   $(".c-"+data[i].class_type+"-"+data[i].lane+" select").val(data[i].user_id);
                                    // $(".table .tr-"+data[i].class_type+" select").eq(i%(lans+1)).val(data[i].user_id);
                                }
                            },function(error){
                                return "" ;
                        })
                    }
                },function(error){
                    return "" ;
                })


            }else{
                click_function(event.event.start);
            }
        });

        /**
         * 点击日历触发函数
         */
        function click_function(date){
            setAddTermTitle(date.format("yyyy-MM-dd"));
            // 保存当前日期
            $("#save_term_class").data("date",date.format("yyyy-MM-dd"));

            var data = {
                "dept_id": user_dept_id ,
                "start_time":date.format("yyyy-MM-dd 00:00:00"),
                "end_time": date.format("yyyy-MM-dd 00:00:00"),
                 'type':team_type
            }

            getTeamClass(data,function(data){
                for(var i=0;i<$("select[id*='_term']").length;i++){
                    $("select[id*='_term']").eq(i).val("");
                }
                if(data.length > 0){
                    $("#save_term_class").data("modify_flag",1);
                    for(var i=0;i<data.length;i++){
                        $(".class_team_"+data[i].class_type).val(data[i].team_id);
                    }
                }else{
                     $("#save_term_class").data("modify_flag",0);
                }
                $('#myModal').modal();
            })
        }

        $('#calendar').calendar().on("clickCell.zui.calendar", function(event) {
            // console.log(event);
            click_function(event.date);
        });

        // 下一个日期
        $('#calendar').calendar().on("clickNextBtn.zui.calendar", function(event) {
            // console.log(event);
            date_cursor++ ;

            var data = {
                "dept_id": user_dept_id ,
                "start_time":getMonthByCondition(date_cursor,'first').format("yyyy-MM-dd 00:00:00"),
                "end_time": getMonthByCondition(date_cursor,'last').format("yyyy-MM-dd 00:00:00"),
                 'type':team_type
            }
            updateCalendar(data);
        });

        // 上一个日期
        $('#calendar').calendar().on("clickPrevBtn.zui.calendar", function(event) {
            date_cursor-- ;
            var data = {
                "dept_id": user_dept_id ,
                "start_time":getMonthByCondition(date_cursor,'first').format("yyyy-MM-dd 00:00:00"),
                "end_time": getMonthByCondition(date_cursor,'last').format("yyyy-MM-dd 00:00:00"),
                 'type':team_type
            }
            updateCalendar(data);
        });

        // 今天
        $('#calendar').calendar().on("clickTodayBtn.zui.calendar", function(event) {
            // console.log(event);
            date_cursor = 0 ;
            calendarInit();
        });

        $("#save_term_class").click(function(){
            var data = [];
            for(var i=0;i<$("select[id*='_term']").length;i++){
                if($("select[id*='_term']").eq(i).val()!=""){
                    var obj = {
                        "class_type":i+1,
                        "team_id":$("select[id*='_term']").eq(i).val(),
                        "work_date": $("#save_term_class").data("date")+" 00:00:00",
                        "start_time": $("#save_term_class").data("date")+" "+ classCode[i+1].start_time+":00" ,
                        "end_time": $("#save_term_class").data("date")+" "+classCode[i+1].end_time+":00",
                        "dept_id":user_dept_id
                    };
                    console.log(obj);
                    data.push(obj);
                }
            }
            if(data.length == 0 ){
                tip("请增加排班!");
                return ;
            }
            if( $("#save_term_class").data("modify_flag") != 1){
                post_common_service("teamClass/add/list",data,function(data){
                    updateCalendar();
                    $('#myModal').modal('hide');
                },function(error){
                    $('#myModal').modal('hide');
                })
            }else{
                post_common_service("teamClass/update/list",data,function(data){
                    updateCalendar();
                    $('#myModal').modal('hide');
                },function(error){
                    $('#myModal').modal('hide');
                })
            }
        })

        $(".close_btn").click(function(){
            $('#myModal,#add_fee_station').modal('hide');
        })

        // 获取部门为1的班组信息
        getTermClass(user_dept_id);

        // 获取班组信息
        function getTermClass(dept_id){
            var data = {
                'dept_id':dept_id ,
                'type':team_type
            }
            post_common_service( "team/getTeamByDeptId/1/50",data,function(data){
                for(var i=0;i<data.list.length;i++){
                    $("#mooring_term,#middle_term,#night_term,#all_term").append("<option value='"+data.list[i].id+"'>"+data.list[i].name +"</option>")
                }
            },function(error){})
        }
   }
   // 根据class_type 获取班次名称
   function getTeamName(class_type){
       if(class_type == 1){
           return "早班";
       }else if(class_type == 2){
            return  "中班";
       }else if(class_type == 3){
           return  "晚班";
       }else if(class_type == 4){
           return "全班";
       }
   }

   function setAddTermTitle(title){
       $(".modal-title").html("添加班组-"+title);
   }