| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340 |
- $(function(){
- leftAutoHeight();
- $("#layout").ligerLayout({ leftWidth: 300,
- onHeightChanged:function(){
- leftAutoHeight();
- },
- onLeftCollapse : function(isHidden){
- $(window).resize();
- }
- });
- showProjeNodeListTab();
- $("#pageloading").hide();
- });
- var isGettingData = false; // 获取数据时,需要控制重复发请求时使用
- function showProjeNodeListTab(){
- var curProjNodeId; // 项目当前阶段id
- var projNodeListTabManager = $("#projNodeListTab").ligerTab({height:""});
- $("#projNodeList").find("option").each(function(index, opt){
- var jqueryOpt = $(opt);
- var projNodeId = jqueryOpt.val();
- var projNodeName = jqueryOpt.text();
- projNodeListTabManager.addTabItem({
- tabid : "projNode_" + projNodeId,
- text: projNodeName,
- showClose:false
- });
- if(jqueryOpt.attr("selected")){
- curProjNodeId = projNodeId;
- }
- });
- // 绑定选择事件必须在创建好tab以后,否则将出现重复调用列表查询
- projNodeListTabManager.set("onAfterSelectTabItem",showTaskDecompositionNodeList2Table);
- // 自动显示项目当前阶段的任务分解情况
- projNodeListTabManager.selectTabItem("projNode" + "_" + curProjNodeId);
- }
- function showTaskDecompositionNodeList2Table(){
- var projNodeListTabManager = $("#projNodeListTab").ligerGetTabManager();
- var projNodeId = projNodeListTabManager.getSelectedTabItemID().split("_")[1];
- var taskDecompositionNodeListTableId = "decompositionNodeList_" + projNodeId;
- buildTaskDecompositionNodeListTable(taskDecompositionNodeListTableId);
- }
- // 当修改、新增任务分解节点时调用
- function refreshTaskDecompositionNodeTable(projNodeId){
- $("#projNodeListTab").ligerGetTabManager().selectTabItem("projNode" + "_" + projNodeId);
- }
- function buildTaskDecompositionNodeListTable(taskDecompositionNodeListTableId){
- var projNodeListTabManager = $("#projNodeListTab").ligerGetTabManager();
- var projNodeId = taskDecompositionNodeListTableId.split("_")[1];
- var viewUnprovTask = $("#viewUnprovTask").attr("checked");
- var taskDecompositionNodeListTable = $("#" + taskDecompositionNodeListTableId);
- var param = {"taskDecompositionId" : taskDecompositionId, "projNodeId" : projNodeId, "viewUnprovTask" : viewUnprovTask};
- if(taskDecompositionNodeListTable.size() == 0){
- // 等于0时,表示该列表尚未创建
- $("div[tabid='" + projNodeListTabManager.getSelectedTabItemID() + "']").append("<div id='"+taskDecompositionNodeListTableId+"'></div>");
- // 创建表格
- $("#" + taskDecompositionNodeListTableId).ligerGrid({
- columns: [
- { display: '任务名称', name: 'task_name', align: 'left', minWidth:160, width: 160
- ,render: function (row){
- var html = '<span title="'+row.task_name+'">' + row.task_name + '</span>';
- return html;
- }
- },
- { display: '负责人', name: 'develop_user', minWidth:80, width:80, align: 'center'
- ,render: function (row){
- var html = '<a href="#" onclick="seeUser(' + row.develop_user_id + ')">' + row.develop_user + '</a>';
- return html;
- }
- },
- { display: '工期', name: 'plan_proj_time', minWidth:50, width:50,align: 'center' },
- { display: '计划开始时间', name: 'plan_start_date', minWidth:100, width:100,align: 'center' , format:'yyyy-MM-dd hh:mm:ss'},
- { display: '计划完成时间', name: 'plan_fin_date', minWidth:100, width:100,align: 'center' , format:'yyyy-MM-dd hh:mm:ss' },
- { display: '任务派发', name: 'prov_task_state_text', minWidth:80, width:80,align: 'center'
- ,render: function (row)
- {
- var html = "";
- if(row.prov_task_state){
- if(row.prov_task_lose_flag == 0){
- html = "已派发(" + displayTaskState4User(row, false) + ")";
- }else{
- html = "已派发(已撤销)";
- }
- }else{
- html = "未派发";
- }
- return html;
- }
- },
- { display: '操作', name: '', minWidth:80, width:80,align: 'center'
- ,render: function (row, index)
- {
- var html = '<a href="javascript:;" onclick="seeTaskDecompositionNode('+row.universalid+')">查看</a>';
- return html;
- }
- }
- ],
- pageSize:20,
- parms : param,
- url: "TaskDecompositionAction.do?task=getTaskDecompositionNodeList" ,
- pageParmName: 'curPage',
- pagesizeParmName: 'pageSize',
- width: '99.5%',
- height: '99%',
- checkbox: false,
- rownumbers:true,
- enabledSort:true,
- method:"post",
- frozenRownumbers:true,
- onAfterShowData:function(){
- },
- onError:function(err){
- alert("获取数据失败,请刷新页面后重试!");
- }
- });
- }else{
- // 已经创建的情况下只刷新列表
- $("#" + taskDecompositionNodeListTableId).ligerGetGridManager().set("parms", param);
- $("#" + taskDecompositionNodeListTableId).ligerGetGridManager().loadData();
- }
- }
- function seeTaskDecompositionNode(taskDecompositionNodeId){
- if(isGettingData == true){
- return;
- }
- $.ajax({
- type:"POST",
- url:"TaskDecompositionAction.do?task=editTaskDecompositionNode&time=" + new Date().getTime(),
- timeout:30000,
- cache:false,
- dataType:"json",
- data:{"taskDecompositionNodeId":taskDecompositionNodeId},
- beforeSend:function(){
- $(":button").attr("disabled", true);
- $("#layout").ligerGetLayoutManager().setLeftCollapse(false);
- $("#noticeMsg").html("正在获取数据,请稍后……").show();
- isGettingData = true;
- },
- success:function(data){
- var error = data.error;
- if(error){
- showAjaxError(null, error);
- $("#noticeMsg").html("").hide();
- }else{
- $("#noticeMsg").fadeOut("slow");
- fillTaskForm(data.success);
- }
- },
- error:function(err){
- $("#noticeMsg").html("").hide();
- showAjaxError(err);
- },
- complete:function(){
- $(":button").attr("disabled", false);
- isGettingData = false;
- }
- });
- }
- function fillTaskForm(taskDecompositionNode){
- if(taskDecompositionNode){
- var projNodeName = $("#projNodeList").find("option[value='"+taskDecompositionNode.proj_node_id+"']").text();
- var taskContent = "";
- if(taskDecompositionNode.task_content.length > 100){
- taskContent = taskDecompositionNode.task_content.substring(0, 100)
- + '……<br/><a href="javascript:;" onclick=" $.ligerDialog.open({content:\''+taskDecompositionNode.task_content+'\', width:480, height:300, modal:false}); ">查看全部内容</a>';
- }else{
- taskContent = taskDecompositionNode.task_content;
- }
- var taskDoc = "";
- var taskDocList = taskDecompositionNode.taskDocList;
- // for(var i = 0; i < taskDocList.length; i++){
- // taskDoc += '<div>'+(i+1)+'. <a href="downloadFile.do?documentId='+taskDocList[i].file_id+'" target="_blank">'+taskDocList[i].srcFile+'</a></div>';
- // }
- for(var i = 0; i < taskDocList.length; i++){
- taskDoc += ','+taskDocList[i].file_id;
- }
- if(taskDoc.length > 0){
- taskDoc = taskDoc.substring(1, taskDoc.length);
- }
- $("#taskDecompositionNodeId").html(taskDecompositionNode.universalid);
- $("#taskName").html(taskDecompositionNode.task_name);
- $("#projNodeName").html(projNodeName);
- $("#taskType").html(taskDecompositionNode.task_type_text);
- $("#taskContent").html(taskContent);
- $("#taskPriority").html(taskDecompositionNode.task_priority_text);
- $("#taskLevel").html(taskDecompositionNode.task_level_text);
- $("#planManHour").html(taskDecompositionNode.plan_man_hour);
- $("#developUserName").html(taskDecompositionNode.develop_user);
- $("#planStartDate").html(taskDecompositionNode.plan_start_date);
- $("#planFinDate").html(taskDecompositionNode.plan_fin_date);
- viewFileHtml(taskDoc, "taskDoc");
- // $("#taskDoc").html(taskDoc);
- }
- }
- /**
- * 获取当前任务分解节点列表表格对象(ligerUi)
- */
- function getCurTaskDecompositionNodeListTable(){
- var projNodeListTabManager = $("#projNodeListTab").ligerGetTabManager();
- var projNodeId = projNodeListTabManager.getSelectedTabItemID().split("_")[1];
- var taskDecompositionNodeListTableId = "decompositionNodeList_" + projNodeId;
- return $("#" + taskDecompositionNodeListTableId).ligerGetGridManager();
- }
- var verifyDialogContent = '<div id="verifyDialog" class="forum-container2">'
- + '<table class="dialogTable">'
- + '<tr><td class="left-text">审核意见<font color="red">*</font>:</td>'
- + '<td><textarea rows="6" cols="45" id="verifyRemark"></textarea>'
- + '<div id="verifyRemarkMsg" ></div></td></tr>'
- + '<tr><td class="l-table-edit-text" style="font-weight: bold">提醒方式:</td>'
- + '<td class="l-table-edit-td" nowrap="nowrap" id="verifyDialogMsg"></tr>'
- + '<tr><td colspan="2" style="text-align: center"><br/>'
- + '<input type="button" id="verifySubmitBtn" value="提交" class="l-button" /> '
- + '<input type="button" id="verifyCancelBtn" value="取消" class="l-button" />'
- + '</td></tr>'
- + '</table></div>';
- var verifyDialog;
- function openVerifyDialog(action){
- var title = (action == "agree")?"同意,请填写审核意见" : "驳回,请填写审核意见";
- if(verifyDialog == undefined){
- verifyDialog = $.ligerDialog.open({
- content: verifyDialogContent,
- width: 450,
- modal: true,
- title: title,
- allowClose: true,
- isHidden: false,
- onClose: function(dialog, options){
- verifyDialog = undefined;
- return true;
- }
- });
- // 创建提醒方式
- tmsMsgRemindUtil.createPanel({id:"verifyDialogMsg", panelId:"verifyDialogMsgPanel"});
- $("#verifySubmitBtn").bind("click", function(){submitVerify(action);});
- $("#verifyCancelBtn").bind("click", function(){verifyDialog.close();});
- }else{
- verifyDialog.show();
- }
- }
- function submitVerify(action){
- var rs = $.validate({
- name : "verifyRemark",
- model : [ {
- type : "require",
- msg : "请填写审核意见!",
- msgBox: "verifyRemarkMsg"
- } , {
- type : "len",
- min : 1,
- max : 100,
- msg : "审核意见须少于100个字符,一个汉字占2个字符!",
- msgBox: "verifyRemarkMsg"
- }]
- });
- if(rs){
- var verifyRemark = encodeURI($("#verifyRemark").html());
- var msgType = tmsMsgRemindUtil.getSelectResult("verifyDialogMsgPanel");
- var task = (action == "agree") ? "agree" : "reject";
- $.ajax({
- type:"POST",
- url:"TaskDecompositionVerifyAction.do?task="+task+"&time=" + new Date().getTime(),
- timeout:30000,
- cache:false,
- dataType:"json",
- data:{"taskDecompositionId":taskDecompositionId, verifyRemark:verifyRemark, msgType:msgType},
- beforeSend:function(){
- $(":button").attr("disabled", true);
- verifyDialog.hidden();
- $.ligerDialog.waitting("正在提交中,请稍候...");
- },
- success:function(data){
- var error = data.error;
- if(error){
- verifyDialog.show();
- showAjaxError(null, error);
- }else{
- $.ligerDialog.open({content:"提交成功!", "title":"提交成功", "type":"success",allowClose:false,
- buttons: [{text: '确定',
- onclick: function(item, dialog){
- var targetTabId = "TaskDecompositionVerifyAction.do?task=toList";
- refreshWindow();
- }
- }]
- });
- }
- },
- error:function(err){
- verifyDialog.show();
- showAjaxError(err);
- },
- complete:function(){
- $.ligerDialog.closeWaitting();
- $(":button").attr("disabled", false);
- }
- });
- }
- }
- function showVerifyResult(){
- var html = "<br/><span style='font-weight: bold; font-size: 14px;color:blue'>审核结果:" + verifyResultText + "</span>"
- + "<br/>=====================================<br/><font color='blue'>友情提示:</font><br/>"
- + "1. 如果还未审核,需要等待审核后才可以继续编辑;<br/>"
- + "2. 如果您是审核者,可以在该项目任务分解未审核时进行“同意”或“驳回”操作;";
- $.ligerDialog.alert(html);
- }
- function taskDecomposition(){
- var uri = "TaskDecompositionAction.do?task=editTaskDecomposition&taskDecompositionId="+taskDecompositionId;
- addTab(uri, "继续任务分解", uri, true);
- // closeWindow();
- }
- ///////////////////////////////////
- //////////// 页面控制//////////////
- ///////////////////////////////////
- function leftAutoHeight(){
- $("#taskForm").css("height", $(window).height()-40 + "px");
- }
- function displayTaskState4User(row, isDevelopUser){
- var taskState = row.prov_task_state;
- var colorRGB = getTaskStateColor(taskState);
- return "<span style='color:" + colorRGB +"'>" + getTaskStateText(taskState, isDevelopUser) + "</span>";
- }
|