VoToucher
VoToucher
package com.isoftstone.pcis.policy.common.utils;
import com.isoftstone.pcis.policy.common.context.Operator;
import java.util.Date;
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
public class VoToucher
{
private static final Logger logger = Logger.getLogger(VoToucher.class);
public static void touchOnCreate(Object vo, String modifyUser, Date modifyTime)
{
try
{
PropertyUtils.setProperty(vo, "CCrtCde", modifyUser);
PropertyUtils.setProperty(vo, "CUpdCde", modifyUser);
PropertyUtils.setProperty(vo, "TCrtTm", modifyTime);
PropertyUtils.setProperty(vo, "TUpdTm", modifyTime);
} catch (Exception e) {
logger.error("设置vo操作人/时间出错:" + vo.getClass().getName() + e.getMessage());
}
}
public static void touchOnCreate(Object vo, String modifyUser) {
touchOnCreate(vo, modifyUser, new Date());
}
public static void touchOnCreate(Object vo, Date modifyTime) {
touchOnCreate(vo, Operator.getCurrentOperatorCde(), modifyTime);
}
public static void touchOnCreate(Object vo) {
touchOnCreate(vo, Operator.getCurrentOperatorCde(), new Date());
}
public static void touch(Object vo, String modifyUser, Date modifyTime)
{
try
{
String crtCde = (String)PropertyUtils.getProperty(vo, "CCrtCde");
Date crtTm = (Date)PropertyUtils.getProperty(vo, "TCrtTm");
if (StringUtils.isEmpty(crtCde)) {
PropertyUtils.setProperty(vo, "CCrtCde", modifyUser);
}
if (crtTm == null) {
PropertyUtils.setProperty(vo, "TCrtTm", modifyTime);
}
PropertyUtils.setProperty(vo, "CUpdCde", modifyUser);
PropertyUtils.setProperty(vo, "TUpdTm", modifyTime);
} catch (Exception e) {
logger.error("更新vo操作人/时间出错:" + vo.getClass().getName() + e.getMessage());
}
}
public static void touch(Object vo, String modifyUser) {
touch(vo, modifyUser, new Date());
}
public static void touch(Object vo, Date modifyTime) {
touch(vo, Operator.getCurrentOperatorCde(), modifyTime);
}
public static void touch(Object vo) {
touch(vo, Operator.getCurrentOperatorCde(), new Date());
}
public static void clearTouch(Object vo)
{
try
{
PropertyUtils.setProperty(vo, "CCrtCde", null);
PropertyUtils.setProperty(vo, "TCrtTm", null);
PropertyUtils.setProperty(vo, "CUpdCde", null);
PropertyUtils.setProperty(vo, "TUpdTm", null);
} catch (Exception e) {
logger.error("清空vo操作人/时间出错:" + vo.getClass().getName() + e.getMessage());
}
}
}
VoToucher的更多相关文章
随机推荐
- sqlserver重命名字段名称
EXEC sp_rename 'S2BASE_PRODUCT.[PRODUCT_ID]','TABTYPE_ID','COLUMN';
- HDU (线段树 单点更新) I Hate It
和上一道题没什么变化,只不过把单点增减变成了单点替换,把区间求和变成了区间求最大值. #include <cstdio> #include <algorithm> using ...
- USACO全部测试数据
链接:http://share.weiyun.com/8c37d26066ee9e63147d2af983f24290 密码:YyGL 请使用2345好压解压.
- wordpress plugins collection
1/ simple page ordering 4.8星 wordpress的plugins唯一的好处就是命名简单易懂,这款插件从名称就可以看出来,用来对page页面排序的.只需要在后台page中拖拽 ...
- 插件svn简单使用
首先安装服务器Server 傻瓜式样操作.下一步下一步就这样完成了,选择的是个人版. 然后打开Server的图形化界面:VisualSVN Server Manager Repositories:资源 ...
- SQLServer—系统中的内存配置
前言: 本文讲述32位和64位系统中的内存配置,在SQLServer 2005/2008中,DBA们往往尝试开启AWE来限制内存.但是,在SQLServer2012以后,这个选项将被弃用,所以不能使用 ...
- Android init.rc文件格式解析
/***************************************************************************** * Android init.rc文件格式 ...
- UVA 10061 How many zero's and how many digits ? (m进制,阶乘位数,阶乘后缀0)
题意: 给出两个数字a和b,求a的阶乘转换成b进制后,输出 (1)后缀中有多少个连续的0? (2)数a的b进制表示法中有多少位? 思路:逐个问题解决. 设a!=k. k暂时不用直接转成b进制. (1 ...
- wxWidgets简单的多线程
#include <wx/wx.h> #include <wx/thread.h> #include <wx/event.h> #include <wx/pr ...
- 安装sass时,gem在国内不能安装的解决
最近在安装SASS的时候,用到gem命令,但是运行出行如下错误!(先声明,安装sass前,要保证自己电脑安装了ruby:ruby -v可以测试下有没有装) 原因是ruby 的gem被和谐了,现在淘宝的 ...