167 lines
6.3 KiB
Java
167 lines
6.3 KiB
Java
|
|
package com.engine.kq.biz;
|
|||
|
|
|
|||
|
|
import weaver.cache.*;
|
|||
|
|
import weaver.conn.RecordSet;
|
|||
|
|
import weaver.general.ThreadVarLanguage;
|
|||
|
|
import weaver.systeminfo.SystemEnv;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 考勤提醒,邮件提醒模板缓存类
|
|||
|
|
*/
|
|||
|
|
public class KQEmailRemindComInfo extends CacheBase {
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 数据来源
|
|||
|
|
*/
|
|||
|
|
protected static String TABLE_NAME = " kq_emailRemindTemplate ";
|
|||
|
|
/**
|
|||
|
|
* sql中的where信息,不要以where开始
|
|||
|
|
*/
|
|||
|
|
protected static String TABLE_WHERE = "";
|
|||
|
|
/**
|
|||
|
|
* sql中的order by信息,不要以order by开始
|
|||
|
|
*/
|
|||
|
|
protected static String TABLE_ORDER = "id";
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 主键
|
|||
|
|
*/
|
|||
|
|
@PKColumn(type = CacheColumnType.NUMBER)
|
|||
|
|
protected static String PK_NAME = "id";
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* ID
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "id")
|
|||
|
|
protected static int id;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 班次ID
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "serialId")
|
|||
|
|
protected static int serialId;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 签到还是签退
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "signInOrSignOut")
|
|||
|
|
protected static int signInOrSignOut;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 邮件标题
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "emailTitle")
|
|||
|
|
protected static int emailTitle;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 邮件内容
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "emailContent")
|
|||
|
|
protected static int emailContent;
|
|||
|
|
|
|||
|
|
@Override
|
|||
|
|
public CacheMap initCache() throws Exception {
|
|||
|
|
CacheMap localData = super.createCacheMap();
|
|||
|
|
RecordSet recordSet = new RecordSet();
|
|||
|
|
String sql = "select * from kq_emailRemindTemplate";
|
|||
|
|
recordSet.executeQuery(sql);
|
|||
|
|
while (recordSet.next()) {
|
|||
|
|
String _id = recordSet.getString("id");
|
|||
|
|
String _serialId = recordSet.getString("serialId");
|
|||
|
|
String _signInOrSignOut = recordSet.getString("signInOrSignOut");
|
|||
|
|
String _emailTile = recordSet.getString("emailTtle");
|
|||
|
|
String _emailContent = recordSet.getString("emailContent");
|
|||
|
|
String PK = _serialId + "-" + _signInOrSignOut;
|
|||
|
|
CacheItem cacheItem = createCacheItem();
|
|||
|
|
cacheItem.set(PK_INDEX, PK);
|
|||
|
|
cacheItem.set(id, _id);
|
|||
|
|
cacheItem.set(serialId, _serialId);
|
|||
|
|
cacheItem.set(signInOrSignOut, _signInOrSignOut);
|
|||
|
|
cacheItem.set(emailTitle, _emailTile);
|
|||
|
|
cacheItem.set(emailContent, _emailContent);
|
|||
|
|
modifyCacheItem(PK, cacheItem);
|
|||
|
|
localData.put(PK, cacheItem);
|
|||
|
|
}
|
|||
|
|
return localData;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@Override
|
|||
|
|
public CacheItem initCache(String key) {
|
|||
|
|
if (key == null || "".equals(key.trim())) {
|
|||
|
|
return null;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
String[] keyArr = key.split("-");
|
|||
|
|
if (keyArr.length != 2) {
|
|||
|
|
return null;
|
|||
|
|
}
|
|||
|
|
String sql = "select * from kq_emailRemindTemplate where serialId=? and signInOrSignOut=?";
|
|||
|
|
RecordSet recordSet = new RecordSet();
|
|||
|
|
recordSet.executeQuery(sql, keyArr[0], keyArr[1]);
|
|||
|
|
if (recordSet.next()) {
|
|||
|
|
String _id = recordSet.getString("id");
|
|||
|
|
String _serialId = recordSet.getString("serialId");
|
|||
|
|
String _signInOrSignOut = recordSet.getString("signInOrSignOut");
|
|||
|
|
String _emailTile = recordSet.getString("emailTtle");
|
|||
|
|
String _emailContent = recordSet.getString("emailContent");
|
|||
|
|
String PK = _serialId + "-" + _signInOrSignOut;
|
|||
|
|
CacheItem cacheItem = createCacheItem();
|
|||
|
|
cacheItem.set(PK_INDEX, PK);
|
|||
|
|
cacheItem.set(id, _id);
|
|||
|
|
cacheItem.set(serialId, _serialId);
|
|||
|
|
cacheItem.set(signInOrSignOut, _signInOrSignOut);
|
|||
|
|
cacheItem.set(emailTitle, _emailTile);
|
|||
|
|
cacheItem.set(emailContent, _emailContent);
|
|||
|
|
modifyCacheItem(key, cacheItem);
|
|||
|
|
return cacheItem;
|
|||
|
|
} else {
|
|||
|
|
CacheItem cacheItem = createCacheItem();
|
|||
|
|
return cacheItem;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private String getEmailTitle(String key) {
|
|||
|
|
return (String) getValue(emailTitle, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getEmailTitle(String serialId, String signInOrSignOut) {
|
|||
|
|
String PK = serialId + "-" + signInOrSignOut;
|
|||
|
|
String emailTitle = getEmailTitle(PK);
|
|||
|
|
if ("".equals(emailTitle)) {
|
|||
|
|
if ("1".equals(signInOrSignOut)) {
|
|||
|
|
emailTitle = ""+weaver.systeminfo.SystemEnv.getHtmlLabelName(10005295,weaver.general.ThreadVarLanguage.getLang())+"";
|
|||
|
|
} else {
|
|||
|
|
emailTitle = ""+weaver.systeminfo.SystemEnv.getHtmlLabelName(10005296,weaver.general.ThreadVarLanguage.getLang())+"";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
return emailTitle;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private String getEmailContent(String key) {
|
|||
|
|
return (String) getValue(emailContent, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getEmailContent(String serialId, String signInOrSignOut) {
|
|||
|
|
String PK = serialId + "-" + signInOrSignOut;
|
|||
|
|
String emailContent = getEmailContent(PK);
|
|||
|
|
if ("".equals(emailContent)) {
|
|||
|
|
if ("1".equals(signInOrSignOut)) {
|
|||
|
|
emailContent = ""+weaver.systeminfo.SystemEnv.getHtmlLabelName(10005295,weaver.general.ThreadVarLanguage.getLang())+"";
|
|||
|
|
} else {
|
|||
|
|
emailContent = ""+weaver.systeminfo.SystemEnv.getHtmlLabelName(10005296,weaver.general.ThreadVarLanguage.getLang())+"";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
if (emailContent.contains("["+ SystemEnv.getHtmlLabelName(18843, ThreadVarLanguage.getLang())+"]") && "1".equals(signInOrSignOut)) {
|
|||
|
|
KQShiftManagementComInfo shiftManagementComInfo = new KQShiftManagementComInfo();
|
|||
|
|
String minsBeforeSignIn = shiftManagementComInfo.getMinsBeforeSignIn(serialId);
|
|||
|
|
emailContent = emailContent.replace("["+ SystemEnv.getHtmlLabelName(18843, ThreadVarLanguage.getLang())+"]", minsBeforeSignIn + ""+ SystemEnv.getHtmlLabelName(15049, ThreadVarLanguage.getLang())+"");
|
|||
|
|
}
|
|||
|
|
if (emailContent.contains("["+ SystemEnv.getHtmlLabelName(10005342, ThreadVarLanguage.getLang())+"]") && "2".equals(signInOrSignOut)) {
|
|||
|
|
KQShiftManagementComInfo shiftManagementComInfo = new KQShiftManagementComInfo();
|
|||
|
|
String minsAfterSignOut = shiftManagementComInfo.getMinsAfterSignOut(serialId);
|
|||
|
|
emailContent = emailContent.replace("["+ SystemEnv.getHtmlLabelName(10005342, ThreadVarLanguage.getLang())+"]", minsAfterSignOut + ""+ SystemEnv.getHtmlLabelName(15049, ThreadVarLanguage.getLang())+"");
|
|||
|
|
}
|
|||
|
|
return emailContent;
|
|||
|
|
}
|
|||
|
|
}
|