浏览代码

修改排班为 修改式

温红权 8 年之前
父节点
当前提交
ec7d98d6ce

+ 4 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/bean/UnregularUserClass.java

@@ -35,6 +35,10 @@ public class UnregularUserClass {
     @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
     @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")  
     private Date end_time;
+
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date update_time;
     //班组id
     private Long team_id;
     //人员ids

+ 14 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/bean/UserClassRemove.java

@@ -0,0 +1,14 @@
+package com.xintong.visualinspection.bean;
+
+import lombok.Data;
+
+/**
+ * 文件名:UserClassRemove
+ * 版本信息:日期:2017/10/20 Copyright 江苏省交通规划设计院 Corporation 2017 版权所有.
+ */
+@Data
+public class UserClassRemove {
+    private Integer id;
+    private String data;
+    private Integer type;
+}

+ 17 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/dao/master/UserClassDao.java

@@ -2,6 +2,7 @@ package com.xintong.visualinspection.dao.master;
 
 import java.util.List;
 
+import com.xintong.visualinspection.bean.UserClassRemove;
 import org.apache.ibatis.annotations.Mapper;
 
 import com.xintong.visualinspection.bean.UnregularUserClass;
@@ -15,9 +16,25 @@ import com.xintong.visualinspection.bean.UserClass;
 public interface UserClassDao  {
     public List<UserClass> selectList(UserClass userClass);
     public void insert(UserClass userClass);
+    public void insertremove(UserClassRemove userClassRemove);
+
+
+    public void update(UserClass userClass);
+    public void update_detail(UnregularUserClass unregularUserClass);
+
+
     public void delete(UserClass userClass);
+
+    public void deleteById(List<String> ids);
     public String getUsersByTeamId(Integer user_class_id);
     
     public void insert_detail(List<UnregularUserClass> userClass);
+    public void insert_detail2(UnregularUserClass userClass);
+
     public void deleteDetail(UserClass userClass);
+    public void deleteDetailById(List<String> ids);
+
+    public List<UserClass> getUsersClassByDeptAndWorkDay(UserClass userClass);
+
+    public List<UnregularUserClass> getUnregularUsersClassByDeptAndWorkDay(UserClass userClass);
 }

+ 156 - 43
VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/master/UserClassMapper.xml

@@ -1,68 +1,181 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.xintong.visualinspection.dao.master.UserClassDao" >
-   
-   <resultMap type="com.xintong.visualinspection.bean.UserClass" id="userClassMap">
-   		<id property="id" column="id" />
-   		<result property="work_date" column="work_date" />
-   		<result property="dept_id" column="dept_id" />
-   		<result property="user_id" column="user_id" />
-   		<result property="class_type" column="class_type" />
-   		<result property="team_id" column="team_id" />
-   		<result property="start_time" column="start_time"/>
-   		<result property="end_time" column="end_time"/>
-   		<result property="lane" column="lane"/>
-   		<result property="class_flag" column="class_flag"/>
-   		<result property="monitor_user_id" column="monitor_user_id"/>
-   		<collection property="list" ofType="com.xintong.visualinspection.bean.UnregularUserClass">
-   			<id property="id" column="ids" />
-   			<result property="start_time" column="start_time_u"/>
-   			<result property="end_time" column="end_time_u"/>
-   			<result property="user_name" column="user_name"/>
-   			<result property="user_id" column="user_id_u"/>
-   			<result property="monitor_user_id" column="monitor_user_id_u"/>
-   		</collection>
-   </resultMap>
-   
-   <insert id="insert" parameterType="com.xintong.visualinspection.bean.UserClass" useGeneratedKeys="true" keyProperty="id">
+<mapper namespace="com.xintong.visualinspection.dao.master.UserClassDao">
+
+    <resultMap type="com.xintong.visualinspection.bean.UserClass" id="userClassMap">
+        <id property="id" column="id"/>
+        <result property="work_date" column="work_date"/>
+        <result property="dept_id" column="dept_id"/>
+        <result property="user_id" column="user_id"/>
+        <result property="class_type" column="class_type"/>
+        <result property="team_id" column="team_id"/>
+        <result property="start_time" column="start_time"/>
+        <result property="end_time" column="end_time"/>
+        <result property="lane" column="lane"/>
+        <result property="class_flag" column="class_flag"/>
+        <result property="monitor_user_id" column="monitor_user_id"/>
+        <collection property="list" ofType="com.xintong.visualinspection.bean.UnregularUserClass">
+            <id property="id" column="ids"/>
+            <result property="start_time" column="start_time_u"/>
+            <result property="end_time" column="end_time_u"/>
+            <result property="user_name" column="user_name"/>
+            <result property="user_id" column="user_id_u"/>
+            <result property="monitor_user_id" column="monitor_user_id_u"/>
+        </collection>
+    </resultMap>
+
+    <resultMap type="com.xintong.visualinspection.bean.UnregularUserClass" id="unregularUserClass">
+        <id property="id" column="id"/>
+        <result property="start_time" column="start_time"/>
+        <result property="end_time" column="end_time"/>
+        <result property="user_name" column="user_name"/>
+        <result property="user_id" column="user_id"/>
+        <result property="work_date" column="work_date"/>
+        <result property="dept_id" column="dept_id"/>
+        <result property="class_type" column="class_type"/>
+        <result property="team_id" column="team_id"/>
+        <result property="lane" column="lane"/>
+        <result property="update_time" column="update_time"/>
+        <result property="monitor_user_id" column="monitor_user_id"/>
+        <result property="class_id" column="class_id"/>
+    </resultMap>
+
+
+    <insert id="insertremove" parameterType="com.xintong.visualinspection.bean.UserClassRemove" useGeneratedKeys="true"
+            keyProperty="id">
+        INSERT INTO
+        sys_user_class_remove
+        (data,type)
+        VALUES
+        (#{data},#{type})
+    </insert>
+
+
+    <insert id="insert" parameterType="com.xintong.visualinspection.bean.UserClass" useGeneratedKeys="true"
+            keyProperty="id">
    		INSERT INTO
         sys_user_class
         (work_date,dept_id,user_id,class_type,team_id,start_time,end_time,lane,class_flag,monitor_user_id)
         VALUES
         (#{work_date},#{dept_id},#{user_id},#{class_type},#{team_id},#{start_time},#{end_time},#{lane},#{class_flag},#{monitor_user_id})
-   </insert>
-   
-   
-   <insert id="insert_detail" parameterType="java.util.List" >
-   		INSERT INTO
+    </insert>
+
+    <update  id="update" parameterType="com.xintong.visualinspection.bean.UserClass" >
+        UPDATE sys_user_class SET update_time = now()
+        <if test="work_date != null">,work_date = #{work_date}</if>
+        <if test="dept_id != null">,dept_id = #{dept_id}</if>
+        <if test="user_id != null">,user_id = #{user_id}</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>
+        <if test="lane != null">,lane = #{lane}</if>
+        <if test="class_flag != null">,class_flag = #{class_flag}</if>
+        <if test="monitor_user_id != null">,monitor_user_id = #{monitor_user_id}</if>
+         WHERE
+        id = #{id}
+    </update>
+
+
+
+
+    <insert id="insert_detail" parameterType="java.util.List">
+        INSERT INTO
+        sys_user_class_unregular
+        (work_date,dept_id,user_id,class_type,team_id,start_time,end_time,lane,class_id,user_name,monitor_user_id)
+        VALUES
+        <foreach collection="list" item="item" index="index" separator=",">
+            (#{item.work_date},#{item.dept_id},#{item.user_id},#{item.class_type},#{item.team_id},#{item.start_time},#{item.end_time},#{item.lane},#{item.class_id},#{item.user_name},#{item.monitor_user_id})
+        </foreach>
+    </insert>
+
+    <insert id="insert_detail2" parameterType="com.xintong.visualinspection.bean.UnregularUserClass">
+        INSERT INTO
         sys_user_class_unregular
         (work_date,dept_id,user_id,class_type,team_id,start_time,end_time,lane,class_id,user_name,monitor_user_id)
         VALUES
-        <foreach collection="list" item="item" index="index" separator="," > 
-			(#{item.work_date},#{item.dept_id},#{item.user_id},#{item.class_type},#{item.team_id},#{item.start_time},#{item.end_time},#{item.lane},#{item.class_id},#{item.user_name},#{item.monitor_user_id})
-		</foreach> 
-   </insert>
-   
-   <select id="selectList" parameterType="com.xintong.visualinspection.bean.UserClass" resultMap="userClassMap" >
+         (#{work_date},#{dept_id},#{user_id},#{class_type},#{team_id},#{start_time},#{end_time},#{lane},#{class_id},#{user_name},#{monitor_user_id})
+    </insert>
+
+    <update  id="update_detail" parameterType="com.xintong.visualinspection.bean.UnregularUserClass" >
+        UPDATE sys_user_class_unregular SET update_time = now()
+        <if test="work_date != null">,work_date = #{work_date}</if>
+        <if test="dept_id != null">,dept_id = #{dept_id}</if>
+        <if test="user_id != null">,user_id = #{user_id}</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>
+        <if test="lane != null">,lane = #{lane}</if>
+        <if test="class_id != null">,class_id = #{class_id}</if>
+        <if test="user_name != null">,user_name = #{user_name}</if>
+        <if test="monitor_user_id != null">,monitor_user_id = #{monitor_user_id}</if>
+        WHERE
+        id = #{id}
+    </update>
+
+    <select id="selectList" parameterType="com.xintong.visualinspection.bean.UserClass" resultMap="userClassMap">
    	   SELECT su.*,t.start_time AS start_time_u,t.end_time AS end_time_u,t.user_name , t.user_id AS user_id_u , t.id AS ids,t.monitor_user_id AS monitor_user_id_u FROM sys_user_class su LEFT JOIN sys_user_class_unregular t ON su.id = t.class_id 
    		 WHERE su.work_date = #{work_date} AND su.dept_id=#{dept_id} order by t.start_time asc,class_type asc , lane asc
    </select>
-   
-   <delete id="delete" parameterType="com.xintong.visualinspection.bean.UserClass">
+
+    <delete id="delete" parameterType="com.xintong.visualinspection.bean.UserClass">
    		DELETE FROM
         sys_user_class
         WHERE
         work_date =#{work_date} and dept_id=#{dept_id}
    </delete>
-   
-   <delete id="deleteDetail" parameterType="com.xintong.visualinspection.bean.UserClass">
+
+
+    <delete id="deleteById" parameterType="java.util.List">
+        DELETE FROM
+        sys_user_class
+        WHERE
+        id IN
+        <foreach item="item" index="index" collection="list" open="(" separator="," close=")">
+                #{item}
+        </foreach>
+    </delete>
+
+
+    <select id="getUsersClassByDeptAndWorkDay" parameterType="com.xintong.visualinspection.bean.UserClass"
+            resultMap="userClassMap">
+        SELECT * FROM
+        sys_user_class
+        WHERE
+        work_date =#{work_date} and dept_id=#{dept_id}
+    </select>
+
+    <select id="getUnregularUsersClassByDeptAndWorkDay" parameterType="com.xintong.visualinspection.bean.UserClass"
+            resultMap="unregularUserClass">
+        SELECT * FROM
+        sys_user_class_unregular
+        WHERE
+        work_date =#{work_date} and dept_id=#{dept_id}
+    </select>
+
+
+
+
+    <delete id="deleteDetail" parameterType="com.xintong.visualinspection.bean.UserClass">
    		DELETE FROM 
    		sys_user_class_unregular
    		WHERE   work_date =#{work_date} and dept_id=#{dept_id}
    </delete>
-   
-   
-   <select id="getUsersByTeamId" parameterType="java.lang.Integer" resultType="String"  >
+
+    <delete id="deleteDetailById" parameterType="java.util.List">
+        DELETE FROM
+        sys_user_class_unregular
+        WHERE
+        id IN
+        <foreach item="item" index="index" collection="list" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+    </delete>
+
+
+
+    <select id="getUsersByTeamId" parameterType="java.lang.Integer" resultType="String">
         SELECT user_ids
         FROM sys_team
         WHERE id = 

+ 309 - 133
VisualInspection_server/src/main/java/com/xintong/visualinspection/service/impl/UserClassServiceImpl.java

@@ -1,17 +1,16 @@
 package com.xintong.visualinspection.service.impl;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 
+import com.alibaba.fastjson.JSON;
+import com.xintong.visualinspection.bean.*;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.mysql.jdbc.StringUtils;
-import com.xintong.visualinspection.bean.TeamClass;
-import com.xintong.visualinspection.bean.UnregularUserClass;
-import com.xintong.visualinspection.bean.User;
-import com.xintong.visualinspection.bean.UserClass;
 import com.xintong.visualinspection.dao.master.TeamClassDao;
 import com.xintong.visualinspection.dao.master.UserClassDao;
 import com.xintong.visualinspection.service.BaseService;
@@ -32,143 +31,320 @@ public class UserClassServiceImpl extends BaseService implements UserClassServic
     
     @Autowired
     TeamClassDao teamClassDao;
+
+
+    private void updateUserClass(List<UserClass> list){
+        if(list==null || list.size()<0){ return;}
+        //先找出当天该部门所有排班
+        List<UserClass> userClassList =  userClassDao.getUsersClassByDeptAndWorkDay(list.get(0));
+        List<UnregularUserClass> unregularUserClassList = userClassDao.getUnregularUsersClassByDeptAndWorkDay(list.get(0));
+
+        //组织hash
+        HashMap<String,UserClass> userClassHashMap = new HashMap<>();
+        HashMap<String,UnregularUserClass> unregularUserClassHashMap = new HashMap<>();
+        for (UserClass c:userClassList
+             ) {
+            String key = c.getDept_id()+""+c.getClass_type()+""+c.getLane()+"";
+            userClassHashMap.put(key,c);
+        }
+        for (UnregularUserClass c:unregularUserClassList
+                ) {
+            String key = c.getClass_id()+""+c.getStart_time().getTime()+""+c.getEnd_time().getTime()+"";
+            unregularUserClassHashMap.put(key,c);
+        }
+
+        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++) {
+            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()+",");
+            }
+
+
+            String key = objTemp.getDept_id()+""+objTemp.getClass_type()+""+objTemp.getLane()+"";
+            UserClass objTempDB =  userClassHashMap.get(key);
+            if(objTempDB!=null){
+                //跟新
+                objTemp.setId(objTempDB.getId());
+
+                userClassHashMap.remove(key);
+
+                //没换人员和班长 & 没全部删除临时排班人员 则不跟新
+                if(!(objTemp.getUser_id().equals(objTempDB.getUser_id())
+                        && objTemp.getMonitor_user_id().equals(objTempDB.getMonitor_user_id())
+                        && objTemp.getClass_flag().equals(objTempDB.getClass_flag()))){
+                    //有改变
+                    userClassDao.update(objTemp);
+                }
+
+                List<UnregularUserClass> obj = list.get(i).getList() ;
+                if(obj!=null && obj.size()>0) {
+                    for (int j = 0; j < obj.size(); j++) {
+                        obj.get(j).setClass_type(objTemp.getClass_type());
+                        obj.get(j).setDept_id(objTemp.getDept_id());
+                        obj.get(j).setWork_date(objTemp.getWork_date());
+                        obj.get(j).setLane(objTemp.getLane());
+                        obj.get(j).setUser_id(obj.get(j).getId());
+                        obj.get(j).setTeam_id(objTemp.getTeam_id());
+                        obj.get(j).setClass_id(objTemp.getId());
+                        obj.get(j).setMonitor_user_id(objTemp.getMonitor_user_id());
+
+                        //判断
+                        String key1 = obj.get(j).getClass_id()+""+obj.get(j).getStart_time().getTime()+""+obj.get(j).getEnd_time().getTime()+"";
+                        UnregularUserClass unregularUserClass = unregularUserClassHashMap.get(key1);
+
+                        if(unregularUserClass!=null){
+                            obj.get(j).setId(unregularUserClass.getId());
+
+                            unregularUserClassHashMap.remove(key1);
+                            if(!(unregularUserClass.getUser_id().equals(obj.get(j).getUser_id())
+                                    && unregularUserClass.getMonitor_user_id().equals(obj.get(j).getMonitor_user_id()))) {
+                                //有改变
+                                userClassDao.update_detail(obj.get(j));
+                            }
+                        }else{
+                            //插入
+                            userClassDao.insert_detail2(obj.get(j));
+                        }
+                    }
+                }
+
+            }else{
+                //插入
+                userClassDao.insert(list.get(i));
+
+                List<UnregularUserClass> obj = list.get(i).getList() ;
+                if(obj!=null && obj.size()>0) {
+                    for (int j = 0; j < obj.size(); j++) {
+                        obj.get(j).setClass_type(list.get(i).getClass_type());
+                        obj.get(j).setDept_id(list.get(i).getDept_id());
+                        obj.get(j).setWork_date(list.get(i).getWork_date());
+                        obj.get(j).setLane(list.get(i).getLane());
+                        obj.get(j).setUser_id(obj.get(j).getId());
+                        obj.get(j).setTeam_id(list.get(i).getTeam_id());
+                        obj.get(j).setClass_id(list.get(i).getId());
+                        obj.get(j).setMonitor_user_id(list.get(i).getMonitor_user_id());
+                    }
+                    userClassDao.insert_detail(obj);
+                }
+            }
+        }
+
+
+        List<String> cids = new ArrayList<>();
+        List<String> ucids = new ArrayList<>();
+        //删除无效的排班
+        for (UserClass c:userClassHashMap.values()
+             ) {
+            cids.add(c.getId()+"");
+        }
+        for (UnregularUserClass c:unregularUserClassHashMap.values()
+                ) {
+            ucids.add(c.getId()+"");
+        }
+        if(cids.size()>0){ userClassDao.deleteById(cids);
+            UserClassRemove r = new UserClassRemove();
+            r.setData(JSON.toJSONString(userClassHashMap));
+            r.setType(1);
+            userClassDao.insertremove(r);
+
+        }
+        if(ucids.size()>0){userClassDao.deleteDetailById(ucids);
+            UserClassRemove r = new UserClassRemove();
+            r.setData(JSON.toJSONString(unregularUserClassHashMap));
+            r.setType(2);
+            userClassDao.insertremove(r);
+        }
+
+
+        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
 	public void insertList(List<UserClass> list) {
 		// TODO Auto-generated method stub
-		if(list.size() >0 ){
-			userClassDao.delete(list.get(0));
-			userClassDao.deleteDetail(list.get(0));			
-		}else{
-			return ;
-		}
-		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++){
-			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));
-			List<UnregularUserClass> obj = list.get(i).getList() ;
-			if(obj!=null && obj.size()>0){
-				for(int j=0;j<obj.size();j++){
-					obj.get(j).setClass_type(list.get(i).getClass_type());
-					obj.get(j).setDept_id(list.get(i).getDept_id());
-					obj.get(j).setWork_date(list.get(i).getWork_date());
-					obj.get(j).setLane(list.get(i).getLane());
-					obj.get(j).setUser_id(obj.get(j).getId());
-					obj.get(j).setTeam_id(list.get(i).getTeam_id());
-					obj.get(j).setClass_id(list.get(i).getId());
-				}
-				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);
-		}
+        updateUserClass(list);
+//		if(list.size() >0 ){
+//			userClassDao.delete(list.get(0));
+//			userClassDao.deleteDetail(list.get(0));
+//		}else{
+//			return ;
+//		}
+//		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++){
+//			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));
+//			List<UnregularUserClass> obj = list.get(i).getList() ;
+//			if(obj!=null && obj.size()>0){
+//				for(int j=0;j<obj.size();j++){
+//					obj.get(j).setClass_type(list.get(i).getClass_type());
+//					obj.get(j).setDept_id(list.get(i).getDept_id());
+//					obj.get(j).setWork_date(list.get(i).getWork_date());
+//					obj.get(j).setLane(list.get(i).getLane());
+//					obj.get(j).setUser_id(obj.get(j).getId());
+//					obj.get(j).setTeam_id(list.get(i).getTeam_id());
+//					obj.get(j).setClass_id(list.get(i).getId());
+//				}
+//				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
 	public void updateList(List<UserClass> list) {
-		if(list.size() >0 ){
-			userClassDao.delete(list.get(0));
-			userClassDao.deleteDetail(list.get(0));
-		}else{
-			return ;
-		}
-		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++){
-			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));
-			List<UnregularUserClass> obj = list.get(i).getList() ;
-			if(obj!=null && obj.size() > 0){
-				for(int j=0;j<obj.size();j++){
-					obj.get(j).setClass_type(list.get(i).getClass_type());
-					obj.get(j).setDept_id(list.get(i).getDept_id());
-					obj.get(j).setWork_date(list.get(i).getWork_date());
-					obj.get(j).setLane(list.get(i).getLane());
-					obj.get(j).setUser_id(obj.get(j).getId());
-					obj.get(j).setTeam_id(list.get(i).getTeam_id());
-					obj.get(j).setClass_id(list.get(i).getId());
-					obj.get(j).setMonitor_user_id(list.get(i).getMonitor_user_id());
-				}
-				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);
-		}
+        updateUserClass(list);
+//		if(list.size() >0 ){
+//			userClassDao.delete(list.get(0));
+//			userClassDao.deleteDetail(list.get(0));
+//		}else{
+//			return ;
+//		}
+//		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++){
+//			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));
+//			List<UnregularUserClass> obj = list.get(i).getList() ;
+//			if(obj!=null && obj.size() > 0){
+//				for(int j=0;j<obj.size();j++){
+//					obj.get(j).setClass_type(list.get(i).getClass_type());
+//					obj.get(j).setDept_id(list.get(i).getDept_id());
+//					obj.get(j).setWork_date(list.get(i).getWork_date());
+//					obj.get(j).setLane(list.get(i).getLane());
+//					obj.get(j).setUser_id(obj.get(j).getId());
+//					obj.get(j).setTeam_id(list.get(i).getTeam_id());
+//					obj.get(j).setClass_id(list.get(i).getId());
+//					obj.get(j).setMonitor_user_id(list.get(i).getMonitor_user_id());
+//				}
+//				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