/*目的是为了手机也可通用此脚本.*/ var init; var wcDesc; var tks; var aths; var SignType; //签名的人员.有两个列 No, SignType, var nodeid = GetQueryString("FK_Node"); var fk_flow = GetQueryString("FK_Flow"); var workid = GetQueryString("WorkID"); var fid = GetQueryString("FID"); //是否是手机端. var isMobile = GetQueryString("IsMobile"); //是否只读? var isReadonly = GetQueryString("IsReadonly"); if (isReadonly != "1") isReadonly = "0"; var enName = GetQueryString("EnName"); function getWorkCheck() { var node = new Entity("BP.WF.Node", nodeid); var data; var handler = new HttpHandler("BP.WF.HttpHandler.WF_WorkOpt"); handler.AddJson(pageData); handler.AddPara("IsReadonly", isReadonly); if (node.FWCVer == 0 || node.FWCVer == "" || node.FWCVer == undefined) data = handler.DoMethodReturnString("WorkCheck_Init"); else data = handler.DoMethodReturnString("WorkCheck_Init2019"); if (data.indexOf('err@') != -1) { alert(data); return; } init = cceval('(' + data + ')'); wcDesc = init.WF_FrmWorkCheck[0]; tks = init.Tracks; aths = init.Aths; SignType = init.SignType; //签名的人员 No,SignType 列, SignType=0 不签名, 1=图片签名, 2=电子签名。 var html = ''; if (tks.length == 0) { html += ''; html += ' '; html += ''; html += ''; html += ' '; html += ''; } $.each(tks, function () { var subaths = GetSubAths(this.NodeID); //仅显示自己的审核意见 if (wcDesc.FWCMsgShow == "1" && this.NodeID == nodeid && this.IsDoc == false) { return true; } //自由模式 html += ""; var tdWidth = "120px"; if (isMobile == "1") tdWidth = "20%;"; html += ""; var nodeName = this.NodeName; nodeName = nodeName.replace('(会签)', '
(会签)'); html += nodeName; html += ""; var fwcs = new Entities("BP.WF.Template.FrmWorkChecks"); fwcs.Retrieve("NodeID", this.NodeID); //获取自定义常用短语 var DuanYu = fwcs[0].FWCNewDuanYu; if (DuanYu != null && DuanYu != undefined) { var NewDuanYu = DuanYu.split("@"); } else { var NewDuanYu = ""; } var isEditWorkCheck = this.IsDoc == "1" && isReadonly == false ? true : false; //审核意见 if (isEditWorkCheck == true) { html += ""; html += "
"; var msg = this.Msg; if (msg == null) msg = ""; while (msg.indexOf('
') >= 0) { msg = msg.replace('
', '\t\n'); } html += ""; //加入常用短语. html += "
" html += ""; html += "
"; if (wcDesc.FWCAth == 1) { html += "
"; } html += "
"; html += ""; } else { var returnMsg = this.ActionType == 2 ? "退回原因:" : ""; var val = this.Msg.split("WorkCheck@"); if (val.length == 2) this.Msg = val[1]; html += ''; html += '' + this.Msg + ''; html += ''; } html += ''; //附件 if (subaths.length > 0) { var tdid = this.IsDoc ? ("id='aths_" + this.NodeID + "'") : ""; html += ""; html += ""; html += "附件: " + subaths; html += ""; html += ""; } //输出签名. if (SignType == null || SignType == undefined) { var rdt = this.RDT.substring(0, 16); if (rdt == "") { var dt = new Date(); rdt = dt.getFullYear() + "-" + (dt.getMonth() + 1) + "-" + dt.getDate(); // new Date().toString("yyyy-MM-dd HH:mm"); } //签名,日期. html += ""; html += "
签名:"; if (wcDesc.SigantureEnabel == "0") html += GetUserSmallIcon(this.EmpFrom, this.EmpFromT); else if (wcDesc.SigantureEnabel == "1") html += GetUserSiganture(this.EmpFrom, this.EmpFromT); else if (wcDesc.SigantureEnabel == "2") html += GetUserHandWriting(this, isEditWorkCheck, this.EmpFromT); html += "
"; html += "
"; html += "日期:" + rdt; html += "
"; html += ""; html += ""; } else { for (var idx = 0; idx < SignType.length; idx++) { var st = SignType[idx]; if (st.No != this.EmpFrom) continue; if (st.SignType == 0 || st.SignType == 2 || st.SignType == null) { var rdt = this.RDT.substring(0, 16); html += ""; html += "
签名:" + GetUserSmallIcon(this.EmpFrom, this.EmpFromT) + '
' + "
日期:" + (this.IsDoc ? "" : "") + rdt + (this.IsDoc ? "" : "") + "
"; html += ""; break; } if (st.SignType == 1) { html += ""; html += "
签名:" + GetUserSiganture(this.EmpFrom, this.EmpFromT) + '
' + "
日期:" + (this.IsDoc ? "" : "") + this.RDT + (this.IsDoc ? "" : "") + "
"; html += ""; break; } if (st.SignType == 2) { html += ""; html += "
签名:" + GetUserSiganture(this.EmpFrom, this.EmpFromT) + '
' + "
日期:" + (this.IsDoc ? "" : "") + this.RDT + (this.IsDoc ? "" : "") + "
"; html += ""; // alert('电子签名的逻辑尚未编写.'); break; } } } }); $("#tbTracks").append(html); if ($("#WorkCheck_Doc").length > 0) { if (wcDesc.FWCIsFullInfo == 1 && wcDesc.FWCDefInfo && wcDesc.FWCDefInfo.length > 0) { SaveWorkCheck(); } } $("textarea").trigger("keydown"); if ($("#uploaddiv").length > 0) { AddUploafFileHtm("uploaddiv"); } //签字版点击的操作 $("#Img_WorkCheck").on("tap", function () { $('head').append(''); Skip.addJs("./Scripts/bootstrap/js/bootstrap.min.js"); Skip.addJs("./Scripts/bootstrap/BootstrapUIDialog.js"); var url = "WorkOpt/HandWriting.htm?WorkID=" + pageData.WorkID + "&FK_Flow=" + pageData.FK_Flow + "&FK_Node=" + pageData.FK_Node + "&WritType=WorkCheck"; OpenBootStrapModal(url, "eudlgframe", "签字版", 400, 240, "icon-edit", false); }); } //保存审核信息 function SaveWorkCheck() { var doc = $("#WorkCheck_Doc").val(); if (isReadonly == true) return true; if (wcDesc.SigantureEnabel == "2" && writeImg == "") { alert("请点击签字版签名"); return false; } var handler = new HttpHandler("BP.WF.HttpHandler.CCMobile_WorkOpt"); handler.AddPara("FK_Flow", fk_flow); handler.AddPara("FK_Node", nodeid); handler.AddPara("WorkID", workid); handler.AddPara("FID", fid); handler.AddPara("Doc", doc); handler.AddPara("IsCC", GetQueryString("IsCC")); handler.AddPara("WriteImg", writeImg.replace(/[+]/g, "~")); handler.AddPara("HandlerName", GetQueryString("HttpHandlerName")); var data = handler.DoMethodReturnString("WorkCheck_Save"); if (data.indexOf('err@') != -1) { alert(data); return false; } if (data.length > 0) { $("#rdt").text(data); } return true; } //删除附件 function DelWorkCheckAth(athPK) { isChange = false; if (confirm("确定要删除所选文件吗?")) { var handler = new HttpHandler("BP.WF.HttpHandler.WF_CCForm"); handler.AddPara("MyPK", athPK); var msg = handler.DoMethodReturnString("DelWorkCheckAttach"); if (msg == "true") { isChange = true; $("#Ath_" + athPK).remove(); } if (msg == "false") { mui.toast("删除失败。"); } } } //上传附件 function UploadFileChange(ctrl) { $(ctrl).unbind("onblur"); isChange = false; } //签名 function GetUserSiganture(userNo, userName) { var func = " oncontextmenu='return false;' ondragstart='return false;' onselectstart='return false;' onselect='document.selection.empty();'"; if (webUser && webUser.CCBPMRunModel == 2) return ""; else return ""; } var writeImg = ""; function GetUserHandWriting(track, isEditWorkCheck, userName) { if (isEditWorkCheck == false) { if (track.WritImg == null || track.WritImg == "") return userName; return ""; } writeImg = track.WritImg; //将二进制流存入缓存中 window.localStorage.setItem("writeImg", writeImg); return ""; } //获取人员图像 function GetUserSmallIcon(userNo, userName) { return userName; } //解析附件 begin function FindSubAths(nd) { var subAths = []; $.each(aths, function () { if (this.NodeID == nd) { subAths.push(this); } }); return subAths; } function GetSubAths(nd) { var subAths = FindSubAths(nd); var html = ''; $.each(subAths, function () { html += GetAthHtml(this); }); return html; } function GetAthHtml(ath) { var html = "
"; if (ath.CanDelete) { html += "删除  "; } html += "" + ath.FileName; html += "  "; html += "  
"; return html; } //解析附件 end //附件内容加载 function AddUploafFileHtm(divid) { if ($("#file_upload").length == 0) { var html = "
" + "" + "
"; $("#" + divid).append(html); } } //附件上传 function UploadChange() { var fileObj = document.getElementById("file").files[0]; // js 获取文件对象 if (typeof (fileObj) == "undefined" || fileObj.size <= 0) { alert("请选择上传的文件."); return; } var fileName = fileObj.name; var formData = new FormData(); var name = $("input").val(); formData.append("file", fileObj); formData.append("name", name); var AttachPK = "ND" + GetQueryString("FK_Node") + "_FrmWorkCheck"; var Url = ""; var doMethod = "MoreAttach"; var httpHandlerName = "BP.WF.HttpHandler.WF_CCForm"; if (plant == 'CCFlow') Url = dynamicHandler + "?DoType=HttpHandler&DoMethod=" + doMethod + "&HttpHandlerName=" + httpHandlerName + "&FK_FrmAttachment=" + AttachPK + "&WorkID=" + workid + "&PKVal=" + workid + "&AttachPK=" + AttachPK + "&FK_Node=" + GetQueryString("FK_Node") + "&t=" + new Date().getTime(); else { var currentPath = GetHrefUrl(); var path = currentPath.substring(0, currentPath.indexOf('/WF') + 1); Url = path + "WF/Ath/AttachmentUploadS.do/?FK_FrmAttachment=" + AttachPK + "&PKVal=" + workid + "&AttachPK=" + AttachPK; } Url += "&FID=" + GetQueryString("FID"); Url += "&FK_Node=" + GetQueryString("FK_Node"); Url += "&PWorkID=" + GetQueryString("PWorkID"); Url += "&FK_MapData=" + GetQueryString("FK_MapData"); //获取分组 var sort = $("#Sort").val(); if (sort != null && sort != "" && sort != undefined) Url += "&Sort=" + sort; $.ajax({ url: Url, type: 'POST', data: formData, async: false, xhrFields: { withCredentials: true }, crossDomain: true, // 告诉jQuery不要去处理发送的数据 processData: false, // 告诉jQuery不要去设置Content-Type请求头 contentType: false, beforeSend: function () { console.log("正在进行,请稍候"); }, success: function (responseStr) { GetNewUploadedAths(fileObj) }, error: function (responseStr) { if (responseStr.indexOf('err@') != -1) alert(responseStr); } }); Reload(); } //附件下载 function AthDown(fk_ath, pkVal, delPKVal, fk_mapData, fk_flow, ath) { if (plant == "CCFlow") SetHref( basePath + '/CCMobile/CCForm/DownFile.aspx?DoType=Down&DelPKVal=' + delPKVal + '&FK_FrmAttachment=' + fk_ath + '&PKVal=' + pkVal + '&FK_MapData=' + fk_mapData + '&Ath=' + ath); else { var currentPath = GetHrefUrl(); var path = currentPath.substring(0, currentPath.indexOf('/WF') + 1); Url = path + 'WF/Ath/downLoad.do?DelPKVal=' + delPKVal + '&FK_FrmAttachment=' + fk_ath + '&PKVal=' + pkVal + '&FK_Node=' + fk_node + '&FK_Flow=' + fk_flow + '&FK_MapData=' + fk_mapData + '&Ath=' + ath; SetHref(url); } } //重新加载附件数据 function GetNewUploadedAths(files) { var Names = "|"; for (var field in files) { Names += files[field].name + "|"; } var handler = new HttpHandler("BP.WF.HttpHandler.WF_WorkOpt"); handler.AddPara("Names", Names); handler.AddPara("AttachPK", "ND" + nodeid + "_FrmWorkCheck"); handler.AddPara("FK_Flow", fk_flow); handler.AddPara("FK_Node", nodeid); handler.AddPara("WorkID", workid); var data = handler.DoMethodReturnString("WorkCheck_GetNewUploadedAths"); if (data.indexOf('err@') != -1) { alert(data); return; } var naths = cceval('(' + data + ')'); aths = aths.concat(naths); if ($("#aths_" + nodeid).length == 0) { if ($("#WorkCheck_Doc").length > 0) { var tdid = "id='aths_" + nodeid + "'"; var html = ""; html += "附件: "; html += ""; $("#WorkCheck_Doc").parent("tr").after(html); } } if (wcDesc.FWCShowModel != 0) { $("#tdnode_" + nodeid).attr("rowspan", "3"); } $("#aths_" + nodeid).parent().removeAttr("style"); $.each(naths, function () { $("#aths_" + nodeid).append(GetAthHtml(this)); }); } function SetDocVal() { var objS = document.getElementById("DuanYu"); var val = objS.options[objS.selectedIndex].value; if (val == "") return; document.getElementById("WorkCheck_Doc").value = val; } //执行保存 function SaveDtlData() { SaveWorkCheck(); } //为判断是否增加电子签章所用. function IsCanSendWork() { return true; }