Просмотр исходного кода

稽查排班可以选人 ; 收费站顶班人员时间不能重叠 ; 收费站人员id字段缺少补足;

chenrj-PC\chenrj 8 лет назад
Родитель
Сommit
3ba026a5a3

+ 14 - 1
VisualInspection/js/teamClass/charge_team_schedule.js

@@ -6,7 +6,7 @@
 //    })
 //    })
 
 
    function initChargeTeamSchedule(){
    function initChargeTeamSchedule(){
-        //  $("#main_content_title").html("收费人员排班")
+         $("#main_content_title").html("收费人员排班")
 
 
         var user = $.zui.store.get("user") ;  // 缓存用户信息,取出dept_id
         var user = $.zui.store.get("user") ;  // 缓存用户信息,取出dept_id
 
 
@@ -345,6 +345,19 @@
             var end_time = $("#end_time").val() ;
             var end_time = $("#end_time").val() ;
             var name = $("#team_info_ti").find("option:selected").text(); 
             var name = $("#team_info_ti").find("option:selected").text(); 
             
             
+            if(start_time >= end_time){
+                tip("时间设置不合理,开始时间不能大于结束时间");
+                return ;
+            }
+
+            // 这边需要判断一下,时间不能重叠
+            for(var i=0;i<bind_data.length;i++){
+                if(!(start_time >= bind_data[i].end_time || end_time <= bind_data[i].start_time)){
+                    tip("设置的时间不能重叠");
+                    return ;
+                }
+            }
+
             if( id !="" && start_time !='' && end_time !=''){
             if( id !="" && start_time !='' && end_time !=''){
                 bind_data.push({"user_name":name , "start_time":start_time , "end_time": end_time,"id":id});
                 bind_data.push({"user_name":name , "start_time":start_time , "end_time": end_time,"id":id});
               
               

+ 95 - 27
VisualInspection/js/teamClass/check_team_schedule.js

@@ -1,7 +1,6 @@
-    
-   $(document).ready(function() {
+    $(document).ready(function() {
 
 
-        //  $("#main_content_title").html("稽查人员排班")
+         $("#main_content_title").html("稽查人员排班")
 
 
         var user = $.zui.store.get("user") ;  // 缓存用户信息,取出dept_id
         var user = $.zui.store.get("user") ;  // 缓存用户信息,取出dept_id
         // console.log(user );
         // console.log(user );
@@ -14,7 +13,25 @@
         // 日期游标
         // 日期游标
         var date_cursor = 0 ;
         var date_cursor = 0 ;
 
 
+        // 选择下拉框
+        var role_selectinput ;
 
 
+        var team_stuffs = [] ;
+
+        selectInitInput(team_stuffs);
+
+        function selectInitInput(objs){
+            $("#relash").empty();
+            $("#relash").append('<input type="text" class="form-control class_team_41" id="team_detail" >');
+            role_selectinput = $('#relash #team_detail').comboTree({
+                source: objs,
+                isMultiple: true
+            });
+        }
+
+        function getSelectInputValue(){
+            return  role_selectinput.getSelectedItemsId();
+        }
 
 
         $('#calendar').calendar();
         $('#calendar').calendar();
         var calendar = $('#calendar').data('zui.calendar');
         var calendar = $('#calendar').data('zui.calendar');
@@ -115,7 +132,7 @@
             setAddTermTitle(date.format("yyyy-MM-dd"));
             setAddTermTitle(date.format("yyyy-MM-dd"));
             // 保存当前日期
             // 保存当前日期
             $("#save_term_class").data("date",date.format("yyyy-MM-dd"));
             $("#save_term_class").data("date",date.format("yyyy-MM-dd"));
-             $("#team_detail").html("");
+             $("#team_detail").val("");
             var data = {
             var data = {
                 "dept_id": user_dept_id ,
                 "dept_id": user_dept_id ,
                 "start_time":date.format("yyyy-MM-dd 00:00:00"),
                 "start_time":date.format("yyyy-MM-dd 00:00:00"),
@@ -127,12 +144,34 @@
                 for(var i=0;i<$("select[id*='_term']").length;i++){
                 for(var i=0;i<$("select[id*='_term']").length;i++){
                     $("select[id*='_term']").eq(i).val("");
                     $("select[id*='_term']").eq(i).val("");
                 }
                 }
+               
                 if(data.length > 0){
                 if(data.length > 0){
+                  
                     $("#save_term_class").data("modify_flag",1);
                     $("#save_term_class").data("modify_flag",1);
                     for(var i=0;i<data.length;i++){
                     for(var i=0;i<data.length;i++){
                         $(".class_team_"+data[i].class_type).val(data[i].team_id);
                         $(".class_team_"+data[i].class_type).val(data[i].team_id);
                     }
                     }
-                    $("#team_detail").html(data[0].user_ids_name);
+
+                    var user_ids_name = data[0].user_ids_name ;
+                    var user_ids = data[0].user_ids;
+                    // 请求班组下人员信息
+                    var dataObj ={ "id": data[0].team_id };
+                    post_common_service( "team/getDetailById",dataObj,function(data){
+                        get_input_data(data) ;    
+                        // $("#team_detail").val(user_ids_name.substring(0,user_ids_name.length-1));
+                        var user_id = user_ids.split(",");
+                        var user_name = user_ids_name.substring(0,data.user_ids_name.length-1).split(',');
+                        var team_temp_stuffs = [];
+                        for(var i=0; i< user_id.length ;i++ ){
+                            $('span[data-id="'+ user_id[i] +'"] input').attr("checked",true);
+                            var zdataItem = {};
+                            zdataItem["id"] =user_id[i] ;
+                            zdataItem["title"] = user_name[i];
+                            team_temp_stuffs.push(zdataItem);
+                        }
+                        role_selectinput._selectedItems = team_temp_stuffs ;
+                        role_selectinput.refreshInputVal();
+                    },function(error){})
                 }else{
                 }else{
                      $("#save_term_class").data("modify_flag",0);
                      $("#save_term_class").data("modify_flag",0);
                 }
                 }
@@ -180,6 +219,17 @@
 
 
         $("#save_term_class").click(function(){
         $("#save_term_class").click(function(){
             var data = [];
             var data = [];
+            var user_ids = getSelectInputValue();
+            var str_user_ids = '';
+            if(user_ids!=false){
+                for(var i=0;i<user_ids.length;i++){
+                    str_user_ids = str_user_ids + ((i!=0)?(','+user_ids[i]):user_ids[i]);
+                }
+            }
+           if(str_user_ids == ''){
+               tip("请选择值班人员");
+               return ;
+           }
             for(var i=0;i<$("select[id*='_term']").length;i++){
             for(var i=0;i<$("select[id*='_term']").length;i++){
                 if($("select[id*='_term']").eq(i).val()!=""){
                 if($("select[id*='_term']").eq(i).val()!=""){
                     var obj = {
                     var obj = {
@@ -189,13 +239,14 @@
                         "start_time": $("#save_term_class").data("date")+" 00:00:00",
                         "start_time": $("#save_term_class").data("date")+" 00:00:00",
                         "end_time": $("#save_term_class").data("date")+" 00:00:00",
                         "end_time": $("#save_term_class").data("date")+" 00:00:00",
                         "dept_id": user_dept_id,
                         "dept_id": user_dept_id,
-                        "user_ids":  $("#team_detail").data("user_ids")      
+                        "user_ids":  str_user_ids    
                     };
                     };
                     data.push(obj);
                     data.push(obj);
                 }
                 }
             }
             }
+
             if(data.length == 0 ){
             if(data.length == 0 ){
-                tip("请增加排班!");
+                tip("请填写排班信息!");
                 return ;
                 return ;
             }
             }
             if( $("#save_term_class").data("modify_flag") != 1){
             if( $("#save_term_class").data("modify_flag") != 1){
@@ -235,34 +286,51 @@
             },function(error){})
             },function(error){})
         }
         }
 
 
-   })
 
 
-   $("#all_term").change(function(){
+    $("#all_term").change(function(){
        if($(this).val() !="" ){
        if($(this).val() !="" ){
            // 请求班组下人员信息
            // 请求班组下人员信息
            var data ={ "id": $(this).val() };
            var data ={ "id": $(this).val() };
            post_common_service( "team/getDetailById",data,function(data){
            post_common_service( "team/getDetailById",data,function(data){
-                $("#team_detail").html(data.user_ids_name); 
-                $("#team_detail").data("user_ids",data.user_ids);            
+               
+                get_input_data(data)         
            },function(error){})
            },function(error){})
        }else{
        }else{
-            $("#team_detail").html("");   
+            $("#team_detail").val();   
        }
        }
    })
    })
 
 
-   // 根据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 get_input_data(data){
+        if(data.user_ids.length > 0){
+            var user_name = data.user_ids_name.substring(0,data.user_ids_name.length-1).split(',');
+            var user_id = data.user_ids.split(",");
+            team_stuffs = [] ;
+            for(var i =0;i< user_name.length;i++){
+                var zdataItem = {};
+                zdataItem["id"] =user_id[i] ;
+                zdataItem["title"] = user_name[i];
+                team_stuffs.push(zdataItem);
+            }
+            selectInitInput(team_stuffs);
+        }
+    }
+
+
+    // 根据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);
+    }
 
 
-   function setAddTermTitle(title){
-       $(".modal-title").html("添加班组-"+title);
-   }
+   })

+ 1 - 1
VisualInspection/view/term_management/charge_stuff_schedule.html

@@ -104,7 +104,7 @@
     </div>
     </div>
 </div>
 </div>
 
 
-<div id="add_detail_info" style="width:700px;">
+<div id="add_detail_info" style="width:700px;display:none;">
     <div id="lists">
     <div id="lists">
          <div class="datatable" style="padding-left:20px;padding-top:10px;"></div>
          <div class="datatable" style="padding-left:20px;padding-top:10px;"></div>
          <div class="form-group">
          <div class="form-group">

+ 7 - 3
VisualInspection/view/term_management/check_stuff_schedule.html

@@ -33,8 +33,8 @@
                     </div>
                     </div>
                     <div class="form-group">
                     <div class="form-group">
                         <label for="exampleInputAccount4" class="col-sm-offset-1 col-sm-2">人员详情</label>
                         <label for="exampleInputAccount4" class="col-sm-offset-1 col-sm-2">人员详情</label>
-                        <div class="col-md-6 col-sm-8">
-                            <div class="form-control class_team_4" id="team_detail" style="height:auto;min-height:32px;"></div>
+                        <div class="col-md-6 col-sm-8 cc" id="relash">
+                            <input type="text" class="form-control" id="team_detail" >
                         </div>
                         </div>
                     </div>
                     </div>
                     <hr>
                     <hr>
@@ -52,10 +52,14 @@
 </div>
 </div>
 </div>
 </div>
 <!--对话框 结束-->
 <!--对话框 结束-->
+
+<link rel="stylesheet" type="text/css" href="/css/user/userManager.css?__inline">
+
+<script type="text/javascript" src="/js/lib/combotree/icontains.js?__inline"></script>
+<script type="text/javascript" src="/js/lib/combotree/comboTreePlugin.js?__inline"></script>
 <link rel="stylesheet" type="text/css" href="/node_modules/zui/dist/lib/calendar/zui.calendar.css">   
 <link rel="stylesheet" type="text/css" href="/node_modules/zui/dist/lib/calendar/zui.calendar.css">   
 <script src="/node_modules/zui/dist/lib/calendar/zui.calendar.js"></script>
 <script src="/node_modules/zui/dist/lib/calendar/zui.calendar.js"></script>
 <script src="/js/teamClass/check_team_schedule.js"></script>
 <script src="/js/teamClass/check_team_schedule.js"></script>
-
 <style type="text/css" >
 <style type="text/css" >
     span.time{
     span.time{
         display: none !important ;
         display: none !important ;

+ 1 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/dao/master/TeamClassDao.java

@@ -17,6 +17,7 @@ public interface TeamClassDao  {
     public List<TeamClass> getClassList(TeamClass teamClass);
     public List<TeamClass> getClassList(TeamClass teamClass);
     public void insert(TeamClass teamClass);
     public void insert(TeamClass teamClass);
     public void update(TeamClass teamClass);
     public void update(TeamClass teamClass);
+    public void updateUserIds(TeamClass teamClass);
     public void delete(Long id);
     public void delete(Long id);
     public void deleteByDeptWorkdate(TeamClass teamClass);
     public void deleteByDeptWorkdate(TeamClass teamClass);
     
     

+ 21 - 8
VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/master/TeamClassMapper.xml

@@ -55,17 +55,30 @@
     <update id="update" parameterType="com.xintong.visualinspection.bean.TeamClass" >
     <update id="update" parameterType="com.xintong.visualinspection.bean.TeamClass" >
         UPDATE
         UPDATE
         sys_team_class
         sys_team_class
-        SET
-        <if test="work_date != null">work_date = #{work_date},</if>
-        <if test="dept_id != null">dept_id = #{dept_id},</if>
-        <if test="user_ids != null">user_ids = #{user_ids},</if>
-        <if test="class_type != null">class_type = #{class_type},</if>
-        <if test="team_id != null">team_id = #{team_id},</if>
-        <if test="start_time != null">start_time = #{start_time},</if>
-        <if test="end_time != null">end_time = #{end_time}</if>
+        SET id=id 
+        <if test="work_date != null">,work_date = #{work_date}</if>
+        <if test="dept_id != null">,dept_id = #{dept_id}</if>
+        <if test="user_ids != null">,user_ids = #{user_ids}</if>
+        <if test="class_type != null">,class_type = #{class_type}</if>
+        <if test="team_id != null">,team_id = #{team_id},</if>
+        <if test="start_time != null">,start_time = #{start_time}</if>
+        <if test="end_time != null">,end_time = #{end_time}</if>
         WHERE
         WHERE
         id = #{id}
         id = #{id}
     </update>
     </update>
+    
+     <update id="updateUserIds" parameterType="com.xintong.visualinspection.bean.TeamClass" >
+        UPDATE
+        sys_team_class
+        SET id=id 
+        <if test="dept_id != null">,dept_id = #{dept_id}</if>
+        <if test="user_ids != null">,user_ids = #{user_ids}</if>
+        <if test="class_type != null">,class_type = #{class_type}</if>
+        <if test="start_time != null">,start_time = #{start_time}</if>
+        <if test="end_time != null">,end_time = #{end_time}</if>
+        WHERE
+        team_id = #{team_id} and work_date = #{work_date}
+    </update>
 
 
     <delete id="delete" parameterType="java.lang.Long" >
     <delete id="delete" parameterType="java.lang.Long" >
         DELETE FROM
         DELETE FROM

+ 91 - 7
VisualInspection_server/src/main/java/com/xintong/visualinspection/service/impl/UserClassServiceImpl.java

@@ -8,9 +8,11 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import com.mysql.jdbc.StringUtils;
 import com.mysql.jdbc.StringUtils;
+import com.xintong.visualinspection.bean.TeamClass;
 import com.xintong.visualinspection.bean.UnregularUserClass;
 import com.xintong.visualinspection.bean.UnregularUserClass;
 import com.xintong.visualinspection.bean.User;
 import com.xintong.visualinspection.bean.User;
 import com.xintong.visualinspection.bean.UserClass;
 import com.xintong.visualinspection.bean.UserClass;
+import com.xintong.visualinspection.dao.master.TeamClassDao;
 import com.xintong.visualinspection.dao.master.UserClassDao;
 import com.xintong.visualinspection.dao.master.UserClassDao;
 import com.xintong.visualinspection.service.BaseService;
 import com.xintong.visualinspection.service.BaseService;
 import com.xintong.visualinspection.service.UserClassService;
 import com.xintong.visualinspection.service.UserClassService;
@@ -28,12 +30,31 @@ public class UserClassServiceImpl extends BaseService implements UserClassServic
     @Autowired
     @Autowired
     UserClassDao userClassDao ;
     UserClassDao userClassDao ;
     
     
+    @Autowired
+    TeamClassDao teamClassDao;
+    
 	@Override
 	@Override
 	public void insertList(List<UserClass> list) {
 	public void insertList(List<UserClass> list) {
 		// TODO Auto-generated method stub
 		// TODO Auto-generated method stub
+		StringBuffer nightClassStuff = new StringBuffer();
+		StringBuffer middleClassStuff = new StringBuffer();
+		StringBuffer mooringClassStuff = new StringBuffer();
+		Long mooringTeamId = 0L , middleTeamId =0L , nightTeamId =0L;
 		for(int i=0;i<list.size();i++){
 		for(int i=0;i<list.size();i++){
-			if(list.get(i).getList()!=null && list.get(i).getList().size()>0 )
-				list.get(i).setClass_flag(1);
+			if(list.get(i).getList()!=null && list.get(i).getList().size()>0 ){
+				list.get(i).setClass_flag(1);				
+			}
+			UserClass objTemp = list.get(i);
+			if(objTemp.getClass_type() ==1){
+				mooringTeamId = objTemp.getTeam_id();
+				mooringClassStuff.append(objTemp.getUser_id()+",");
+			}else if(objTemp.getClass_type() ==2){
+				middleTeamId = objTemp.getTeam_id();
+				middleClassStuff.append(objTemp.getUser_id()+",");
+			}else if(objTemp.getClass_type() ==3){
+				nightTeamId = objTemp.getTeam_id();
+				nightClassStuff.append(objTemp.getUser_id()+",");
+			}
 			userClassDao.insert(list.get(i));
 			userClassDao.insert(list.get(i));
 			List<UnregularUserClass> obj = list.get(i).getList() ;
 			List<UnregularUserClass> obj = list.get(i).getList() ;
 			if(obj!=null && obj.size()>0){
 			if(obj!=null && obj.size()>0){
@@ -49,17 +70,58 @@ public class UserClassServiceImpl extends BaseService implements UserClassServic
 				userClassDao.insert_detail(obj);
 				userClassDao.insert_detail(obj);
 			}
 			}
 		}
 		}
+		if(nightClassStuff.toString()!=""){
+			// 更新晚班人员
+			TeamClass teamClass = new TeamClass();
+			teamClass.setTeam_id(nightTeamId);
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setUser_ids(nightClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
+		if(middleClassStuff.toString()!=""){
+			TeamClass teamClass = new TeamClass();
+			teamClass.setTeam_id(middleTeamId);
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setUser_ids(middleClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
+		if(mooringClassStuff.toString()!=""){
+			TeamClass teamClass = new TeamClass();
+			teamClass.setTeam_id(mooringTeamId);
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setUser_ids(mooringClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
 	}
 	}
-
+	
 	@Override
 	@Override
 	public void updateList(List<UserClass> list) {
 	public void updateList(List<UserClass> list) {
 		userClassDao.delete(list.get(0));
 		userClassDao.delete(list.get(0));
 		userClassDao.deleteDetail(list.get(0));
 		userClassDao.deleteDetail(list.get(0));
+		
+		StringBuffer nightClassStuff = new StringBuffer();
+		StringBuffer middleClassStuff = new StringBuffer();
+		StringBuffer mooringClassStuff = new StringBuffer();
+		Long mooringTeamId = 0L , middleTeamId =0L , nightTeamId =0L;
+		
 		for(int i=0;i<list.size();i++){
 		for(int i=0;i<list.size();i++){
-			if(list.get(i).getList()!=null && list.get(i).getList().size() >0 )
-				list.get(i).setClass_flag(1);
-			else
-				list.get(i).setClass_flag(0);
+			if(list.get(i).getList()!=null && list.get(i).getList().size() >0 ){
+				list.get(i).setClass_flag(1);				
+			}
+			else{
+				list.get(i).setClass_flag(0);				
+			}
+			UserClass objTemp = list.get(i);
+			if(objTemp.getClass_type() ==1){
+				mooringTeamId = objTemp.getTeam_id();
+				mooringClassStuff.append(objTemp.getUser_id()+",");
+			}else if(objTemp.getClass_type() ==2){
+				middleTeamId = objTemp.getTeam_id();
+				middleClassStuff.append(objTemp.getUser_id()+",");
+			}else if(objTemp.getClass_type() ==3){
+				nightTeamId = objTemp.getTeam_id();
+				nightClassStuff.append(objTemp.getUser_id()+",");
+			}
 			userClassDao.insert(list.get(i));
 			userClassDao.insert(list.get(i));
 			List<UnregularUserClass> obj = list.get(i).getList() ;
 			List<UnregularUserClass> obj = list.get(i).getList() ;
 			if(obj!=null && obj.size() > 0){
 			if(obj!=null && obj.size() > 0){
@@ -75,6 +137,28 @@ public class UserClassServiceImpl extends BaseService implements UserClassServic
 				userClassDao.insert_detail(obj);
 				userClassDao.insert_detail(obj);
 			}
 			}
 		}
 		}
+		if(nightClassStuff.toString()!=""){
+			// 更新晚班人员
+			TeamClass teamClass = new TeamClass();
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setTeam_id(nightTeamId);
+			teamClass.setUser_ids(nightClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
+		if(middleClassStuff.toString()!=""){
+			TeamClass teamClass = new TeamClass();
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setTeam_id(middleTeamId);
+			teamClass.setUser_ids(middleClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
+		if(mooringClassStuff.toString()!=""){
+			TeamClass teamClass = new TeamClass();
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setTeam_id(mooringTeamId);
+			teamClass.setUser_ids(mooringClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
 	}
 	}
 
 
 	@Override
 	@Override