$(document).ready(function(){
//找到四个下拉框
var Type1Select = $(".Type1").children("select");
var Type2Select = $(".Type2").children("select");
var Type3Select = $(".Type3").children("select");
var Type4Select = $(".Type4").children("select");
// 获取流程的描述,如果有则显示,如果没有则隐藏
function getJobType (type_id) {
$.post("/myworkflowjob/getjobtype/", {type_id: type_id, 'csrfmiddlewaretoken':getCookie('csrftoken')},
function(data){
if (Object.keys(data).length && data.desc) {
$("#type_desc_div").show();
$("#job_type_desc").html(data.desc);
} else {
$("#type_desc_div").hide();
}
}, "json");
};
// 获取流程的描述,如果有则显示,如果没有则隐藏
function getSearchJobType (type_id) {
$.post("/myworkflowjob/getjobtype/", {type_id: type_id, 'csrfmiddlewaretoken':getCookie('csrftoken')},
function(data){
if (Object.keys(data).length && data.desc) {
$(".type_desc_div").show();
$(".job_type_desc").html(data.desc);
} else {
$(".type_desc_div").hide();
}
}, "json");
};
$('.searchJobType').select2({
placeholder: "选择工单类型, 可输入名字查询",
});
$('.searchJobType').change(function () {
var type_id = $('.searchJobType').val()
if (type_id) {
getSearchJobType(type_id)
};
})
Type1Select.change(function(){
//1.需要获得当前下拉框的值
var Type1Value = $(this).val();
//第一个有变化隐藏第三个
Type2Select.parent().hide();
Type3Select.parent().hide();
Type4Select.parent().hide();
Type4Select.html("");
Type3Select.html("");
Type2Select.html("");
if (Type1Value != "") {
if (!Type1Select.data(Type1Value)) {
$.post("/myworkflowjob/jobtypeselect/",{parent_type_id: Type1Value, type: "type1", 'csrfmiddlewaretoken':getCookie('csrftoken')},function(data){
var type_id_name_list = data.type_id_name_list;
if (Object.keys(type_id_name_list).length) {
Type2Select.html("");
$("").appendTo(Type2Select);
//解析json数组
$.each(type_id_name_list, function(key,value){
$("").appendTo(Type2Select);
})
Type2Select.parent().show();
Type1Select.next().show();
$("#type_desc_div").hide();
} else {
Type2Select.parent().hide();
Type1Select.next().hide();
getJobType(Type1Value);
}
Type1Select.data(Type1Value, type_id_name_list);
}, "json");
} else {
var type_id_name_list = Type1Select.data(Type1Value);
if (Object.keys(type_id_name_list).length) {
Type2Select.html("");
$("").appendTo(Type2Select);
$.each(type_id_name_list,function(key,value){
$("").appendTo(Type2Select);
})
Type2Select.parent().show();
Type1Select.next().show();
$("#type_desc_div").hide();
} else {
Type2Select.parent().hide();
Type1Select.next().hide();
getJobType(Type1Value);
}
}
} else {
Type2Select.parent().hide();
Type1Select.next().hide();
$("#type_desc_div").hide();
}
});
Type2Select.change(function(){
//1.需要获得当前下拉框的值
var Type2Value = $(this).val();
Type3Select.parent().hide();
Type4Select.parent().hide();
Type4Select.html("");
Type3Select.html("");
if (Type2Value != "") {
if (!Type2Select.data(Type2Value)) {
$.post("/myworkflowjob/jobtypeselect/",{parent_type_id: Type2Value, type: "type2", 'csrfmiddlewaretoken':getCookie('csrftoken')},function(data){
var type_id_name_list = data.type_id_name_list;
if (Object.keys(type_id_name_list).length) {
Type3Select.html("");
$("").appendTo(Type3Select);
$.each(type_id_name_list,function(key,value){
$("").appendTo(Type3Select);
})
Type3Select.parent().show();
Type2Select.next().show();
$("#type_desc_div").hide();
} else {
Type3Select.parent().hide();
Type2Select.next().hide();
getJobType(Type2Value);
}
Type2Select.data(Type2Value, type_id_name_list);
}, "json");
} else {
var type_id_name_list = Type2Select.data(Type2Value);
if (Object.keys(type_id_name_list).length) {
Type3Select.html("");
$("").appendTo(Type3Select);
$.each(type_id_name_list,function(key,value){
$("").appendTo(Type3Select);
})
Type3Select.parent().show();
Type2Select.next().show();
$("#type_desc_div").hide();
} else {
Type3Select.parent().hide();
Type2Select.next().hide();
getJobType(Type2Value);
}
}
} else {
Type3Select.parent().hide();
Type2Select.next().hide();
$("#type_desc_div").hide();
}
});
Type3Select.change(function(){
var Type3Value = $(this).val();
if (Type3Value != "") {
if (!Type3Select.data(Type3Value)) {
$.post("/myworkflowjob/jobtypeselect/",{parent_type_id: Type3Value, type: "type3",'csrfmiddlewaretoken':getCookie('csrftoken')},function(data){
var type_id_name_list = data.type_id_name_list;
if (Object.keys(type_id_name_list).length) {
Type4Select.html("");
$("").appendTo(Type4Select);
$.each(type_id_name_list,function(key,value){
$("").appendTo(Type4Select);
})
Type4Select.parent().show();
Type3Select.next().show();
$("#type_desc_div").hide();
} else {
Type4Select.parent().hide();
Type3Select.next().hide();
getJobType(Type3Value);
}
Type3Select.data(Type3Value, type_id_name_list);
}, "json");
} else {
var type_id_name_list = Type3Select.data(Type3Value);
if (Object.keys(type_id_name_list).length) {
Type4Select.html("");
$("").appendTo(Type4Select);
$.each(type_id_name_list,function(key,value){
$("").appendTo(Type4Select);
})
Type4Select.parent().show();
Type3Select.next().show();
$("#type_desc_div").hide();
} else {
Type4Select.parent().hide();
Type3Select.next().hide();
getJobType(Type3Value);
}
}
} else {
Type4Select.parent().hide();
Type3Select.next().hide();
$("#type_desc_div").hide();
}
});
Type4Select.change(function () {
getJobType($(this).val());
})
$("#CHECK").click( function (){
var Type1Valuenew = Type1Select.val();
var Type2Valuenew = Type2Select.val();
var Type3Valuenew = Type3Select.val();
var Type4Valuenew = Type4Select.val();
if (Type1Valuenew==""){
alert("请选择顶级工单类型,如果没有合适的类型,请联系管理员");
$(Type1Select).focus();
return false;}
if (Type2Valuenew==""){
alert("请选择二级类型,如果没有合适的类型,请联系管理员");
document.init_new_job.type2.focus();
return false;}
if (Type3Valuenew==""){
alert("请选择三级类型,如果没有合适的类型,请联系管理员");
document.init_new_job.type3.focus();
return false;}
if (Type4Valuenew==""){
alert("请选择四级类型,如果没有合适的类型,请联系管理员");
document.init_new_job.type4.focus();
return false;}
});
$(".searchSubmit").click( function (){
var type_id = $('.searchJobType').val()
if (!type_id){
alert("请选择工单类型,如果没有合适的类型,请联系管理员");
return false;
}
});
var myDate = new Date();
$('#query_start_time, #query_end_time').datetimepicker({}).on('changeDate', function(e){
$(this).datetimepicker('hide');
});
$.fn.datepicker.defaults.format = "yyyy-mm-dd";
$(".query_start_time, .query_end_time")
.datepicker({}).on('changeDate', function(e){
$(this).datepicker('hide');
});
$.fn.datepicker.defaults.startDate = myDate;
$("#id_expected_date, #id_start_date, #id_start_test_date, #id_merge_trunk_date, #id_pre_date, #id_online_date, .query_start_time, .query_end_time")
.datepicker({}).on('changeDate', function(e){
$(this).datepicker('hide');
});
$('#query_job_type').select2({
placeholder: "选择类型, 可输入名字查询",
});
function getUserList(){
$.ajax({
type: "POST",
dataType:"json",
url: "/myworkflowjob/getuserlist/",
data: {'csrfmiddlewaretoken':getCookie('csrftoken')},
success: function(data){
if(data){
$.map(data, function (key, value) {
var option = "";
$('#id_mail_to_str').append(option);
})
}
else{
alert("获取用户失败");
}
}
});
}
if ($("#id_mail_to_str").length>0) {
$('.id_mail_to_str').select2({
placeholder: "选择收件人, 可输入名字查询",
});
// 用户较多,所以渲染后加载用户
getUserList();
};
function getUserIdList(){
$.ajax({
type: "POST",
dataType:"json",
url: "/myworkflowjob/getuseridlist/",
data: {'csrfmiddlewaretoken':getCookie('csrftoken')},
success: function(data){
if(data){
$.map(data, function (key, value) {
var option = "";
$('#query_creater').append(option);
})
}
else{
alert("获取用户失败");
}
}
});
}
if ($('#query_creater').length>0) {
$('#query_creater').select2({
placeholder: "选择创建人名字, 输入查询",
});
// 用户较多,所以渲染后加载用户
getUserIdList()
};
})