weaver_trunk_cli/pc4mobx/hrm/util/pulic-func.js

425 lines
13 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import {
Modal,
message
} from 'antd';
import {
WeaLocaleProvider,
WeaTools
} from 'ecCom';
const getLabel = WeaLocaleProvider.getLabel;
import {
i18n
} from '../public/i18n';
const confirm = Modal.confirm;
const {
sendMsg
} = WeaTools;
//发消息、发起群聊
function sendEmessage(emessageId) {
var isGroup = false;
if (!!emessageId) {
if (emessageId.indexOf(",") > -1) {
isGroup = true;
}
}
if (!emessageId) {
message.warning(getLabel('510151',"未选择聊天人员"));
return;
}
if (emessageId.match(/,$/)) {
emessageId = emessageId.substring(0, emessageId.length - 1);
}
var openType = isGroup ? "2" : "0";
if (isGroup) {
confirm({
content: getLabel('510154',"确定要发起群聊吗"),
onOk() {
sendMsgToPC(emessageId, openType, '', '');
},
onCancel() {},
});
} else {
sendMsgToPC(emessageId, openType, '', '');
}
}
/**
* 调用e-message发起会话
* @param conventioners
* @param openType
* @param groupName
* @param extra
*/
export function sendMsgToPC(conventioners, openType, groupName, extra, successCallBack, errorCallBack) {
sendMsg(conventioners, openType, '', '');
// $.ajax({
// url: '/social/im/SocialIMOperation.jsp?operation=openPCconversation',
// data: {
// conventioners,
// openType,
// groupName,
// extra,
// },
// type: 'post',
// dataType: 'json',
// contentType: 'application/x-www-form-urlencoded; charset=utf-8',
// success(data) {
// if (data != null) {
// if (data.pcStatus == 0 && data.webStatus == 0) {
// // pc和web都不在
// Modal.warning({
// title: i18n.confirm.systemhints(),
// content: getLabel('386482',"检查到您的web端和客户端的e-message不在线请打开任意一端进行会话"),
// });
// } else if (data.webStatus == 1) {
// // web在线
// if (window.top.$('#socialIMFrm').length > 0) {
// } else {
// if (!!window.ActiveXObject || 'ActiveXObject' in window) {
// Modal.warning({
// title: i18n.confirm.systemhints(),
// content: getLabel('386483',"您发起的e-message聊天已经建立<br> 请到主页进行消息发送!"),
// });
// }
// }
// } else {
// // pc在线不作判断
// }
// typeof successCallBack === 'function' && successCallBack(data);
// } else {
// Modal.warning({
// title: i18n.confirm.systemhints(),
// content: getLabel('386484',"对话创建失败!"),
// });
// typeof errorCallBack === 'function' && errorCallBack();
// }
// },
// error(XMLHttpRequest, textStatus, errorThrown) {
// Modal.warning({
// title: i18n.confirm.systemhints(),
// content: getLabel('386485',"请求发送失败,请您检查当前网络!"),
// });
// typeof errorCallBack === 'function' && errorCallBack();
// },
// });
}
//发送邮件
function sendMail(id) {
//openFullWindowForXtable("/email/new/MailInBox.jsp?opNewEmail=1&amp;isInternal=1&amp;internalto&id="+id);
window.open(`/spa/email/static/index.html#/main/email/new?fromPage=hrmCard&internaltonew=[{"id":${id},"type":"resource"}]`);
}
//发送短信
function sendSmsMessage(id) {
//openFullWindowForXtable("/sms/SmsMessageEdit.jsp?hrmid="+id);
window.open(`/spa/smallApp/static/index.html#/main/sms/SendSms?hrmid=${id}`);
}
//新建协作
function addCoWork(id) {
//openFullWindowForXtable("/cowork/AddCoWork.jsp?hrmid=" + id);
window.open(`/spa/cowork/static/index.html#/main/cowork/main?hrmid=${id}`);
}
//新建日程
function doAddWorkPlanByHrm(id) {
//openFullWindowForXtable("/workplan/data/WorkPlan.jsp?resourceid="+id+"&add=1")
window.open(`/spa/workplan/static/index.html#/main/wp/workPlanCreateSingle?type=create&selectedUser=${id}`);
}
//系统信息
function jsHrmResourceSystemView(id) {
//window.open(`/spa/hrm/index.html#/main/hrm/systeminfo${window.WeaHrm4Formal?'4Formal':''}/${id}`);
window.open(`/spa/hrm/index_mobx.html#/main/hrm/systeminfo/${id}`);
}
//我的下属--流程
function jsRequestView(id) {
// openFullWindowForXtable("/workflow/request/RequestView.jsp?resourceid=" + id);
window.open(`/spa/workflow/static/index.html#/main/workflow/listDoing?resourceid=${id}`);
}
//我的下属--文档
function docSearch(id) {
// openFullWindowForXtable('/docs/search/DocSearchTemp.jsp?docstatus=6&hrmresid=' + id);
window.open(`/spa/document/static/index.html#/main/document/search?doccreaterid=${id}&viewcondition=2`)
}
//我的下属--项目
function doProjcSearch(id) {
// openFullWindowForXtable("/proj/search/SearchOperation.jsp?member=" + id);
window.open(`/spa/prj/index.html#/main/prj/mineProject?search_resourceid=${id}`);
}
//我的下属--客户
function openCRM(id) {
// openFullWindowForXtable('/CRM/search/SearchOperation.jsp?destination=myAccount&resourceid=' + id);
window.open(`/spa/crm/static/index.html#/main/crm/customer/hrmView?searchHrmId=${id}`);
}
//我的下属--资产
function cptSearch(id) {
// openFullWindowForXtable('/cpt/search/SearchOperation.jsp?resourceid=' + id + '&isdata=2');
window.open(`/spa/cpt/index.html#/main/cpt/mycapital?hrmid=${id}`);
}
//我的下属--下属
function openHrmResourceView(id) {
//openFullWindowForXtable("/hrm/HrmTab.jsp?_fromURL=HrmResourceView&id="+id+"&srcid="+id);
window.open(`/spa/hrm/index_mobx.html#/main/hrm/underling/${id}`);
}
//我的下属--预算
function openFnaBudgetResourceDetail(id) {
openFullWindowForXtable("/fna/report/budget/FnaBudgetResourceDetail.jsp?resourceid=" + id);
}
//我的下属--收支
function openFnaExpenseResourceDetail(id) {
// openFullWindowForXtable("/fna/report/expense/FnaExpenseResourceDetail.jsp?resourceid=" + id);
window.open(`/fna/cm/rpt/PersonalPayments.jsp?hrmResourceID=${id}`)
}
//我的下属--工作报告
function openWorkReport(id) {
openFullWindowForXtable("/spa/develop/index_mobx.html?#/main/develop/growuplist?userid=" + id);
}
//培训记录--详细信息
function jsTrainRecordShowDetail(id) {
let dialog = new window.top.Dialog();
dialog.currentWindow = window;
const url = "/hrm/HrmDialogTab.jsp?_fromURL=HrmResourceTrainRecordBasic&isdialog=1&id=" + id;
dialog.Title = getLabel('386486', "培训记录详细信息");
dialog.Width = 800;
dialog.Height = 503;
dialog.Drag = true;
dialog.URL = url;
dialog.show();
}
//培训记录--培训安排--申请
function jsHrmTrainApply(trainplanid, applyworkflowid) {
openFullWindowForXtable("/workflow/request/AddRequest.jsp?workflowid=" + applyworkflowid + "&TrainPlanId=" + trainplanid);
}
//考核奖惩--奖惩情况--详细信息
function jsRewardsRecord2Detial(id) {
//openFullWindowForXtable("/hrm/HrmDialogTab.jsp?_fromURL=HrmAwardEdit&id="+id+"&cmd=showdetail");
let dialog = new window.top.Dialog();
dialog.currentWindow = window;
dialog.Title = getLabel('386487', "奖惩信息");
const url = "/hrm/HrmDialogTab.jsp?_fromURL=HrmAwardEdit&id=" + id + "&cmd=showdetail";
dialog.Width = 800;
dialog.Height = 500;
dialog.Drag = true;
dialog.URL = url;
dialog.show();
}
function openFullWindowForXtable(url) {
var redirectUrl = url;
var width = screen.availWidth - 10;
var height = screen.availHeight - 60;
//if (height == 768 ) height -= 75 ;
//if (height == 600 ) height -= 60 ;
var szFeatures = "top=0,";
szFeatures += "left=0,";
szFeatures += "width=" + width + ",";
szFeatures += "height=" + height + ",";
szFeatures += "directories=no,";
szFeatures += "status=yes,";
szFeatures += "menubar=no,";
szFeatures += "scrollbars=yes,";
szFeatures += "resizable=yes"; //channelmode
window.open(redirectUrl, "", szFeatures);
}
const openFullWindowHaveBar = (url) => {
var redirectUrl = url;
var width = screen.availWidth - 10;
var height = screen.availHeight - 50;
var szFeatures = "top=0,";
szFeatures += "left=0,";
szFeatures += "width=" + width + ",";
szFeatures += "height=" + height + ",";
szFeatures += "directories=no,";
szFeatures += "status=yes,toolbar=no,location=no,";
szFeatures += "menubar=no,";
szFeatures += "scrollbars=yes,";
szFeatures += "resizable=yes"; //channelmode
window.open(redirectUrl, "", szFeatures);
}
function getUserName() {
try {
let vbsserial = "";
let hCard = htactx.OpenDevice(1); //打开设备
if (hCard == 0) {
message.warning(getLabel('21607', "请确认您已经正确地安装了驱动程序并插入了usb令牌"));
return vbsserial;
}
try {
vbsserial = htactx.GetUserName(hCard); //获取用户名
htactx.CloseDevice(hCard)
return vbsserial;
} catch (e) {
message.warning(`${getLabel('21607',"请确认您已经正确地安装了驱动程序并插入了usb令牌")}2`);
htactx.CloseDevice(hCard);
return vbsserial;
}
} catch (e) {
message.warning(getLabel('21607', "请确认您已经正确地安装了驱动程序并插入了usb令牌"));
htactx.CloseDevice(hCard);
return vbsserial;
}
}
function chkMail(email) {
if (email == '') {
return true;
}
let pattern = /^(?:[a-z\d]+[&\_\-\+\.']?)*[a-z\d]+@(?:([a-z\d]+\-?)*[a-z\d]+\.)+([a-z]{2,})+$/i;
let chkFlag = pattern.test(email);
if (chkFlag) {
return true;
} else {
message.warning(getLabel('24570', "邮箱地址的格式不正确"));
return false;
}
}
function jumpToHrmCard(id) {
//window.open(`/spa/hrm/index.html#/main/hrm/resource${window.WeaHrm4Formal?'4Formal':''}/HrmResourceBase${window.WeaHrm4Formal?'4Formal':''}/${id}`);
window.open(`/spa/hrm/index_mobx.html#/main/hrm/card/cardInfo/${id}`, '_blank');
}
function jumpToHrmDept(id) {
//window.open('/hrm/HrmTab.jsp?_fromURL=HrmDepartmentDsp&id=' + id);
window.open(`/spa/hrm/engine.html#/hrmengine/organization?showTree=false&isView=1&type=department&id=${id}`, '_blank');
}
function jumpToHrmSubCompany(id) {
//window.open('/hrm/HrmTab.jsp?_fromURL=HrmSubCompanyDsp&id=' + id);
window.open(`/spa/hrm/engine.html#/hrmengine/organization?showTree=false&isView=1&type=subcompany&id=${id}`, '_blank');
}
function jumpToHrmPost(id) {
// window.open('/hrm/HrmDialogTab.jsp?_fromURL=HrmJobTitlesEdit&id=' + id);
window.open(`/spa/hrm/engine.html#/hrmengine/posts?id=${id}`, '_blank');
}
function jumpToHrmJob(id) {
window.open(`/spa/hrm/engine.html#/hrmengine/singleJob?id=${id}`, '_blank');
}
function jumpToHrmContract(id) {
window.open('/hrm/contract/contract/HrmContractView.jsp?id=' + id, '_blank');
}
//新建流程
function onNewRequest(params) {
const wfid = params.wfid || '';
const f_weaver_belongto_userid = params.f_weaver_belongto_userid || '';
const beagenter = params.beagenter || '';
const isagent = params.isagent || '';
//计数
jQuery.post('/workflow/request/AddWorkflowUseCount.jsp', {
wfid: wfid
});
let paramstr = `workflowid=${wfid}&isagent=${isagent}&beagenter=${beagenter}&f_weaver_belongto_userid=${f_weaver_belongto_userid}&f_weaver_belongto_usertype=0`;
openFullWindowHaveBar('/workflow/request/CreateRequestForward.jsp?' + paramstr);
}
const openFullWindowHaveBarForWFList = (url, requestid) => {
try {
document.getElementById("wflist_" + requestid + "span").innerHTML = "";
} catch (e) {}
const redirectUrl = url;
const width = screen.availWidth - 10;
const height = screen.availHeight - 50;
let szFeatures = "top=0,left=0,";
szFeatures += "width=" + width + ",";
szFeatures += "height=" + height + ",";
szFeatures += "directories=no,status=yes,toolbar=no,location=no,";
szFeatures += "menubar=no,scrollbars=yes,resizable=yes";
window.open(redirectUrl, "", szFeatures);
}
const viewDepartment = (departmentid) => {
jumpToHrmDept(departmentid);
}
const viewSubCompany = (subcompanyid) => {
jumpToHrmSubCompany(subcompanyid);
}
const IEVersion = () => {
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器
var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器
var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;
if (isIE) {
var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
reIE.test(userAgent);
var fIEVersion = parseFloat(RegExp["$1"]);
if (fIEVersion == 7) {
return 7;
} else if (fIEVersion == 8) {
return 8;
} else if (fIEVersion == 9) {
return 9;
} else if (fIEVersion == 10) {
return 10;
} else {
return 6; //IE版本<=7
}
} else if (isEdge) {
return 'edge'; //edge
} else if (isIE11) {
return 11; //IE11
} else {
return -1; //不是ie浏览器
}
}
window.viewDepartment = viewDepartment;
window.viewSubCompany = viewSubCompany;
window.openFullWindowHaveBarForWFList = openFullWindowHaveBarForWFList;
export {
sendEmessage,
sendMail,
sendSmsMessage,
addCoWork,
doAddWorkPlanByHrm,
jsHrmResourceSystemView,
openFullWindowForXtable,
jsRequestView,
docSearch,
doProjcSearch,
openCRM,
cptSearch,
openHrmResourceView,
openFnaBudgetResourceDetail,
openFnaExpenseResourceDetail,
openWorkReport,
jsTrainRecordShowDetail,
jsHrmTrainApply,
jsRewardsRecord2Detial,
getUserName,
chkMail,
jumpToHrmCard,
jumpToHrmDept,
jumpToHrmSubCompany,
jumpToHrmPost,
jumpToHrmContract,
onNewRequest,
IEVersion
}