Commit da4a529e authored by 马超's avatar 马超

值班管理

parent cf3d69c2
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.util.*" %>
<%@ page import="com.censoft.common.db.ConnectionFactory" %>
<%@ page import="com.censoft.common.base.Pub" %>
<%@ page import="com.censoft.db.Logger" %>
<%!
public static String getUserNames(ConnectionFactory cf,Connection conn,int startIndex,int n){
Vector userListSize = cf.doQuery(conn,"select id from zb_user",null,new Object[]{});
StringBuffer sql=new StringBuffer("select user_name from zb_user where 1=1 and order_num in(");
List list= new ArrayList();
String user_names="";
int startIndex_2=startIndex;
for(int i=0;i<n;i++){
startIndex=startIndex+1;
if(startIndex==userListSize.size()+1){
startIndex=1;
}
if(i==n-1){
sql.append(startIndex );
}else{
sql.append(startIndex + ",");
}
}
sql.append(") order by field (order_num,");
for(int i=0;i<n;i++){
startIndex_2=startIndex_2+1;
if(startIndex_2==userListSize.size()+1){
startIndex_2=1;
}
if(i==n-1){
sql.append(startIndex_2 );
}else{
sql.append(startIndex_2 + ",");
}
}
sql.append(") ");
Vector userList = cf.doQuery(conn,sql.toString(),null,list.toArray());
if(userList!=null && userList.size()>0){
for(int i=0;i<userList.size();i++) {
Hashtable ht1 = (Hashtable) userList.get(i);
String user_name = (String) ht1.get("user_name");
user_names=user_names+user_name+",";
}
}else{
System.out.println("方法查询出错"+cf.getMsg());
}
return startIndex+"_"+user_names;
}
%>
<%
ConnectionFactory cf = new ConnectionFactory();
Pub pub = new Pub();
Connection conn = null;
Enumeration enu = request.getParameterNames();
String action = pub.trimNull(request.getParameter("action"));
String action_msg="";
String mx_id = pub.trimNull(request.getParameter("mx_id"));
if("".equals(mx_id)){
mx_id=UUID.randomUUID().toString().trim().replaceAll("-", "");
}
String day_id = pub.trimNull(request.getParameter("day_id"));
String[] userids = request.getParameterValues("userids");
String user_names="";
if(userids!=null && userids.length>0) {
for (int i = 0; i < userids.length; i++) {
user_names+=userids[i]+",";
}
}
if(!"".equals(user_names)){
user_names=user_names.substring(0,user_names.length()-1);
}
String input_count = pub.trimNull(request.getParameter("input_count"));
if("".equals(input_count)){
input_count="1";
}
int inputSize=Integer.parseInt(input_count);
String mx_name = pub.trimNull(request.getParameter("mx_name"));
String mx_day = pub.trimNull(request.getParameter("mx_day"));
int mxDay=1;
if(!"".equals(mx_day)){
mxDay=Integer.parseInt(mx_day);
}
String add_user = pub.trimNull((String) session.getAttribute("session_login_id"));
if ("".equals(add_user)) {
System.out.println("当前没有用户信息");
}
String userNames="";
String add_time = pub.getCurrentServerTime();
StringBuffer sql_add=new StringBuffer("insert into zb_mx (id,name,day,add_time,add_user) values (?,?,?,?,?)");
StringBuffer sql_update=new StringBuffer("update t_user_phone set update_user=?,update_time=?,");
try {
conn = com.censoft.db.DBUtil.getConnection();
List list_add= new ArrayList();
list_add.add(mx_id);
list_add.add(mx_name);
list_add.add(mx_day);
list_add.add(add_time);
list_add.add(add_user);
List list_update = new ArrayList();
conn.setAutoCommit(false);
boolean is_oper = false;
if("add".equals(action)){
action_msg="新增";
is_oper = cf.executeUpdate(conn, sql_add.toString(),list_add.toArray());
if (!is_oper) {
conn.rollback();
System.out.println("新增zb_mx表出错了" + cf.getMsg());
return;
}
int startIndex=0;
for (int i = 0; i < inputSize; i++) {
String b_time = pub.trimNull(request.getParameter("b_time_"+(i+1)));
String e_time = pub.trimNull(request.getParameter("e_time_"+(i+1)));
String zb_type = pub.trimNull(request.getParameter("zb_type_"+(i+1)));
String ren_num = pub.trimNull(request.getParameter("ren_num_"+(i+1)));
String zb_type_id=UUID.randomUUID().toString().trim().replaceAll("-", "");
is_oper = cf.executeUpdate(conn, "insert into zb_type(id,mx_id,zb_type,b_time,e_time,ren_num,add_user,add_time) values (?,?,?,?,?,?,?,?)"
, new Object[]{zb_type_id,mx_id,zb_type,b_time,e_time,ren_num,add_user,add_time});
if (!is_oper) {
System.out.println("新增zb_type表出错了" + cf.getMsg());
conn.rollback();
return;
}
for(int n=0;n<mxDay;n++){
userNames=getUserNames(cf,conn,startIndex,Integer.parseInt(ren_num));
if(!"".equals(userNames)){
startIndex = Integer.parseInt(userNames.substring(0,userNames.indexOf("_")));
userNames = userNames.substring(userNames.indexOf("_")+1,userNames.length()-1);
}
is_oper = cf.executeUpdate(conn, "insert into zb_mx_day(mx_id,zb_type,user_name,day,add_user,add_time) values (?,?,?,?,?,?)"
, new Object[]{mx_id,zb_type_id,userNames,n+1,add_user,add_time});
if (!is_oper) {
System.out.println("新增zb_mx_day表出错了" + cf.getMsg());
conn.rollback();
return;
}
}
}
}else if("delete".equals(action)){
action_msg="删除";
is_oper = cf.executeUpdate(conn, "delete from zb_mx_day where mx_id=?",new Object[]{mx_id});
if (!is_oper) {
conn.rollback();
System.out.println("删除zb_mx_day表出错了" + cf.getMsg());
return;
}
is_oper = cf.executeUpdate(conn, "delete from zb_type where mx_id=?",new Object[]{mx_id});
if (!is_oper) {
conn.rollback();
System.out.println("删除zb_type表出错了" + cf.getMsg());
return;
}
is_oper = cf.executeUpdate(conn, "delete from zb_mx where id=?",new Object[]{mx_id});
if (!is_oper) {
conn.rollback();
System.out.println("删除zb_mx表出错了" + cf.getMsg());
return;
}
}else if("addUser".equals(action)){
action_msg="选择人员";
is_oper = cf.executeUpdate(conn, "update zb_mx_day set user_name=? where id=?",new Object[]{user_names,day_id});
if (!is_oper) {
conn.rollback();
System.out.println("插入人员zb_mx_day表出错了" + cf.getMsg());
return;
}
}else{
action_msg="修改";
String zb_type_ids="";
int startIndex=0;
for (int i = 0; i < inputSize; i++) {
String b_time = pub.trimNull(request.getParameter("b_time_"+(i+1)));
String e_time = pub.trimNull(request.getParameter("e_time_"+(i+1)));
String zb_type = pub.trimNull(request.getParameter("zb_type_"+(i+1)));
String zb_type_id=pub.trimNull(request.getParameter("zb_type_id_"+(i+1)));
String ren_num = pub.trimNull(request.getParameter("ren_num_"+(i+1)));
if(!"".equals(zb_type_id)){
zb_type_ids=zb_type_id+","+zb_type_ids;
is_oper = cf.executeUpdate(conn, "update zb_type set zb_type=?,b_time=?,e_time=?,ren_num=?,update_time=?,update_user=? where id=?"
, new Object[]{zb_type,b_time,e_time,ren_num,add_time,add_user,zb_type_id});
if (!is_oper) {
System.out.println("修改zb_type表出错了" + cf.getMsg());
conn.rollback();
return;
}
for(int n=0;n<mxDay;n++){
userNames=getUserNames(cf,conn,startIndex,Integer.parseInt(ren_num));
if(!"".equals(userNames)){
startIndex = Integer.parseInt(userNames.substring(0,userNames.indexOf("_")));
userNames = userNames.substring(userNames.indexOf("_")+1,userNames.length()-1);
}
is_oper = cf.executeUpdate(conn, "update zb_mx_day set user_name=?,update_user=?,update_time=? where mx_id=? and zb_type=? and day=?"
, new Object[]{userNames,add_user,add_time,mx_id,zb_type_id,n+1});
if (!is_oper) {
System.out.println("修改b_mx_day表出错了" + cf.getMsg());
conn.rollback();
return;
}
}
}else{
String new_id=UUID.randomUUID().toString().trim().replaceAll("-", "");
is_oper = cf.executeUpdate(conn, "insert into zb_type(id,mx_id,zb_type,b_time,e_time,ren_num,add_user,add_time) values (?,?,?,?,?,?,?,?)"
, new Object[]{new_id,mx_id,zb_type,b_time,e_time,ren_num,add_user,add_time});
if (!is_oper) {
System.out.println("修改zb_type表出错了" + cf.getMsg());
conn.rollback();
return;
}
for(int n=0;n<mxDay;n++){
userNames=getUserNames(cf,conn,startIndex,Integer.parseInt(ren_num));
if(!"".equals(userNames)){
startIndex = Integer.parseInt(userNames.substring(0,userNames.indexOf("_")));
userNames = userNames.substring(userNames.indexOf("_")+1,userNames.length()-1);
}
is_oper = cf.executeUpdate(conn, "insert into zb_mx_day(mx_id,zb_type,user_name,day,add_user,add_time) values (?,?,?,?,?,?)"
, new Object[]{mx_id,new_id,userNames,n+1,add_user,add_time});
if (!is_oper) {
System.out.println("新增zb_mx_day表出错了" + cf.getMsg());
conn.rollback();
return;
}
}
}
if (!is_oper) {
System.out.println("修改zb_type表出错了" + cf.getMsg());
conn.rollback();
return;
}
}
//修改页面,删除已有行
/*if(!"".equals(zb_type_ids)){
zb_type_ids=zb_type_ids.substring(0,zb_type_ids.length()-1);
String[] field=zb_type_ids.split(",");
StringBuffer sb = new StringBuffer();
sb.append("delete from zb_type where 1=1 ");
sb.append(" and id not in (");
if(field!=null&&field.length>0){
for(int i=0;i<field.length;i++){
if(i==field.length-1){
sb.append("'" + field[i] + "'");
}else{
sb.append("'" + field[i] + "',");
}
}
}
sb.append(" )");
//System.out.println(sb.toString());
is_oper = cf.executeUpdate(conn, sb.toString(), new Object[]{});
if (!is_oper) {
conn.rollback();
System.out.println("删除多余的时间段出错了" + cf.getMsg());
return;
}
}*/
is_oper = cf.executeUpdate(conn, "update zb_mx set name=? where id=?", new Object[]{mx_name,mx_id});
if (!is_oper) {
conn.rollback();
System.out.println("修改zb_mx表出错了" + cf.getMsg());
return;
}
}
if (!is_oper) {
conn.rollback();
System.out.println("操作出错了" + cf.getMsg());
return;
}
Logger.log(conn, "值班模型",action_msg, add_user, "", request);
conn.commit();
if (!is_oper) {
conn.rollback();
out.println(cf.getMsg());
} else {
out.println("success,"+mx_id);
}
} catch (Exception e) {
conn.rollback();
System.out.println("有异常" + e);
return;
} finally {
if (conn != null) {
conn.setAutoCommit(true);
try {
conn.close();
} catch (Exception e) {
}
}
}
%>
<%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2020/9/11
Time: 12:54
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.util.*" %>
<%@ page import="com.censoft.common.db.ConnectionFactory" %>
<%@ page import="com.censoft.common.base.Pub" %>
<%
ConnectionFactory cf = new ConnectionFactory();
Pub pub = new Pub();
Connection conn = null;
Vector v_list = null;
Vector v_list_day = null;
String login_id = (String) session.getAttribute("session_login_id");
if ("".equals(login_id)) {
System.out.println("当前没有用户信息");
}
String mx_id = pub.trimNull(request.getParameter("mx_id"));
String Mxday = pub.trimNull(request.getParameter("day"));
int divCount=8;
if(!"".equals(Mxday)){
divCount=Integer.parseInt(Mxday);
}
String divWidth=(divCount+2)*140-80+"px";
StringBuffer sql = new StringBuffer();
StringBuffer sql_day = new StringBuffer();
sql.append("select * from zb_type where mx_id=? order by order_num asc ");
sql_day.append("select * from zb_mx_day where mx_id=? and zb_type=? order by day asc ");
try {
conn = com.censoft.db.DBUtil.getConnection();
v_list = cf.doQuery(conn, sql.toString(), null, new Object[]{mx_id});
if (v_list != null && v_list.size()>0) {
}
%>
<div style="border: solid 1px #eee;margin-top: 20px;height:550px;width:1100px;overflow: auto;">
<%
for(int i=0;i<v_list.size();i++){
Hashtable ht = (Hashtable) v_list.get(i);
String id=pub.trimNull((String)ht.get("id"));
String zb_type=pub.trimNull((String)ht.get("zb_type"));
String b_time=pub.trimNull((String)ht.get("b_time"));
String e_time=pub.trimNull((String)ht.get("e_time"));
v_list_day = cf.doQuery(conn, sql_day.toString(), null, new Object[]{mx_id,id});
%>
<%
if(i==0){%>
<div style="width:<%=divWidth%>;height:40px;float:left;white-space: nowrap;">
<div style="width:140px;height:40px;float:left;border:0.5px solid #000;">
</div>
<%
if(v_list_day!=null && v_list_day.size()>0){
for(int n=0;n<v_list_day.size();n++){
Hashtable ht1 = (Hashtable) v_list_day.get(n);
String day=pub.trimNull((String)ht1.get("day"));
%>
<div style="width:140px;height:40px;line-height:40px;text-align:center;color:#fff;float:left;border:0.5px solid #000;background-color: #00b7ee">
<%=day%>
</div>
<% }}%>
</div>
<%}%>
<div style="width:<%=divWidth%>;height:160px;float:left;">
<div style="width:140px;height:160px;float:left;border:0.5px solid #000;text-align: center;line-height: 120px;">
<p style="height:30px;"> <%=zb_type%></p>
<p style="height:30px;">(<%=b_time%>-<%=e_time%>)</p>
</div>
<%
if(v_list_day!=null && v_list_day.size()>0){
for(int n=0;n<v_list_day.size();n++){
Hashtable ht1 = (Hashtable) v_list_day.get(n);
String day_id=pub.trimNull((String)ht1.get("id"));
String user_name=pub.trimNull((String)ht1.get("user_name"));
user_name=user_name.replace(",","</br>");
%>
<div style="text-align:center;width:140px;height:160px;float:left;border:0.5px solid #000;position: relative">
<p style="height:10px;display:none;">
<%=user_name%>
</p>
<button class="btn btn-success" onclick="editUser('<%=day_id%>','<%=mx_id%>');" style="display:none;text-align:center;position:absolute; right:0; bottom:0;">
修改</button>
</div>
<%}}%>
</div>
<%}%>
</div>
<script type="text/javascript">
function deleteUser(user_id){
layer.confirm('确认要删除吗?', function (index) {
$.ajax({
type: "POST",
url: "./action.jsp?user_id="+user_id+"&action=delete",
success: function (msg) {
if (msg.indexOf("success") >= 0) {
layer.msg('操作成功!', {icon: 1, time: 1000},
function () {
searchModel();
});
} else {
layer.msg('操作失败', {
icon: 5,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
}, function () {
// console.log("********************8")
});
}
}
});
})
}
function optOrder(opt,user_id){
$.ajax({
type: "post",
url: "opt_order.jsp",
data:{"user_id":user_id,"opt":opt},
success: function (data) {
if (data.indexOf("success") >= 0) {
layer.msg('操作成功!', {icon: 1, time: 1000},
function () {
searchModel();
});
} else {
layer.msg('操作失败,'+data, {
icon: 5,
time: 2000 //2秒关闭(如果不配置,默认是3秒)
}, function () {
// console.log("********************8")
});
}
}
});
}
</script>
<%
} catch (Exception e) {
out.println("查询用户信息异常" + e);
return;
} finally {
if (conn != null) {
try {
conn.close();
} catch (Exception e) {
}
}
}
%>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment