package com.vci.server.workflow.server.delegate;
|
|
import java.util.Date;
|
import java.util.Iterator;
|
import java.util.LinkedHashMap;
|
import java.util.List;
|
|
import org.omg.CORBA.LongHolder;
|
|
import com.vci.common.objects.QueryParam;
|
import com.vci.common.objects.QueryResult;
|
import com.vci.common.utility.ObjectUtility;
|
import com.vci.corba.common.VCIError;
|
import com.vci.corba.workflow.data.QueryParamInfo;
|
import com.vci.corba.common.data.UserEntityInfo;
|
import com.vci.corba.workflow.data.FlowApproveContentInfo;
|
import com.vci.server.base.delegate.BaseDelegate;
|
import com.vci.server.workflow.objects.FlowApproveContent;
|
import com.vci.server.workflow.server.task.approve.FlowApproveContentService;
|
|
/**
|
* FlowApproveContent Delegate Server
|
*
|
*/
|
public class FlowApproveContentDelegate extends BaseDelegate {
|
FlowApproveContentService service = null;
|
|
public FlowApproveContentDelegate(UserEntityInfo userEntityInfo) {
|
super(userEntityInfo);
|
service = new FlowApproveContentService(this.getUserEntity());
|
}
|
|
/**
|
* 添加、保存 FlowApproveContent 对象
|
*
|
* @param info FlowApproveContentInfo 对象
|
*/
|
public boolean saveFlowApproveContent(FlowApproveContentInfo info) throws VCIError {
|
boolean res = false;
|
String id = ObjectUtility.getNewObjectID36();
|
info.id = id;
|
try {
|
FlowApproveContent obj = this.convertFlowApproveContentInfoToFlowApproveContent(info);
|
res = service.saveFlowApproveContent(obj);
|
// LogRecordUtil.writeLog(userEntity, "添加", obj.getLogInfo(), LogType.GeneralOperation, obj.getId());
|
} catch (Exception ex) {
|
throw new VCIError("410801", new String[] { ex.getMessage() });
|
}
|
return res;
|
}
|
|
/**
|
* 修改、更新 FlowApproveContent 对象
|
*
|
* @param info FlowApproveContentInfo 对象
|
*/
|
public boolean updateFlowApproveContent(FlowApproveContentInfo info) throws VCIError {
|
boolean res = false;
|
try {
|
FlowApproveContent obj = this.convertFlowApproveContentInfoToFlowApproveContent(info);
|
FlowApproveContent objBefore = service.getFlowApproveContentById(info.id);
|
StringBuffer sbLog = new StringBuffer();
|
sbLog.append("更新前:" + objBefore.getLogInfo());
|
sbLog.append("更新后:" + obj.getLogInfo());
|
res = service.updateFlowApproveContent(obj);
|
// LogRecordUtil.writeLog(userEntity, "更新", sbLog.toString(), LogType.GeneralOperation, obj.getId());
|
} catch (Exception ex) {
|
throw new VCIError("410802", new String[] { ex.getMessage() });
|
}
|
return res;
|
}
|
|
/**
|
* 根据 ID 删除 FlowApproveContent 对象(批量)
|
*
|
* @param ids FlowApproveContent 对象的 ID 列表
|
*/
|
public boolean deleteFlowApproveContent(String[] ids) throws VCIError {
|
boolean res = false;
|
LinkedHashMap<String, String> delLogMap = new LinkedHashMap<String, String>();
|
try {
|
for (String id : ids) {
|
delLogMap.put(id, service.getFlowApproveContentById(id).getLogInfo());
|
}
|
res = service.deleteFlowApproveContent(ids);
|
Iterator<String> keys = delLogMap.keySet().iterator();
|
while (keys.hasNext()) {
|
String id = keys.next();
|
String logInfo = delLogMap.get(id);
|
// LogRecordUtil.writeLog(userEntity, "删除", logInfo, LogType.GeneralOperation, id);
|
}
|
} catch (Exception ex) {
|
throw new VCIError("410803", new String[] { ex.getMessage() });
|
}
|
return res;
|
}
|
|
/**
|
* 返回全部的 FlowApproveContent 对象
|
*/
|
public FlowApproveContentInfo[] getFlowApproveContents() throws VCIError {
|
FlowApproveContentInfo[] infos = new FlowApproveContentInfo[0];
|
try {
|
List<FlowApproveContent> list = service.getFlowApproveContents();
|
FlowApproveContent[] objects = list.toArray(new FlowApproveContent[] {});
|
infos = this.convertFlowApproveContentsToFlowApproveContentInfos(objects);
|
} catch (Exception ex) {
|
throw new VCIError("410804", new String[] { ex.getMessage() });
|
}
|
return infos;
|
}
|
|
/**
|
* 根据分页参数 返回 FlowApproveContent 对象
|
* <p>
|
* Description:
|
* </p>
|
*
|
* @param total 输出参数,数据总数
|
* @param queryParamInfo 查询参数
|
* @return 对象集合
|
* @throws VCIError
|
*/
|
public FlowApproveContentInfo[] getFlowApproveContentByPageing(LongHolder total, QueryParamInfo queryParamInfo)
|
throws VCIError {
|
FlowApproveContentInfo[] infos = new FlowApproveContentInfo[0];
|
try {
|
QueryParam queryParam = convertQueryParamInfo(queryParamInfo);
|
QueryResult<FlowApproveContent> res = service.getFlowApproveContentByPageing(queryParam);
|
total.value = res.getTotal();
|
FlowApproveContent[] objects = res.getDatas();
|
infos = this.convertFlowApproveContentsToFlowApproveContentInfos(objects);
|
} catch (Exception ex) {
|
throw new VCIError("410804", new String[] { ex.getMessage() });
|
}
|
return infos;
|
}
|
|
/**
|
* 根据 ID 返回 FlowApproveContent 对象
|
*
|
* @param id FlowApproveContent
|
*/
|
public FlowApproveContentInfo getFlowApproveContentById(String id) throws VCIError {
|
FlowApproveContentInfo info = new FlowApproveContentInfo();
|
try {
|
FlowApproveContent object = service.getFlowApproveContentById(id);
|
info = this.convertFlowApproveContentToFlowApproveContentInfo(object);
|
} catch (Exception ex) {
|
throw new VCIError("410804", new String[] { ex.getMessage() });
|
}
|
return info;
|
}
|
|
/************************* CORBA & HIBERNATE CONVERT **************************/
|
/**
|
* 对象转换(批量),从 Hibernate 对象转换到 Corba 对象
|
*
|
* @param objects
|
*/
|
public FlowApproveContentInfo[] convertFlowApproveContentsToFlowApproveContentInfos(FlowApproveContent[] objects) {
|
FlowApproveContentInfo[] infos = new FlowApproveContentInfo[objects.length];
|
int i = 0;
|
for (FlowApproveContent obj : objects) {
|
infos[i++] = this.convertFlowApproveContentToFlowApproveContentInfo(obj);
|
}
|
return infos;
|
}
|
|
/**
|
* 对象转换,从 Hibernate 对象转换到 Corba 对象
|
*
|
* @param object
|
* @return
|
*/
|
public FlowApproveContentInfo convertFlowApproveContentToFlowApproveContentInfo(FlowApproveContent object) {
|
FlowApproveContentInfo info = new FlowApproveContentInfo();
|
info.id = object.getId() == null ? "" : object.getId();
|
info.userId = object.getUserId() == null ? "" : object.getUserId();
|
info.approveContent = object.getApproveContent() == null ? "" : object.getApproveContent();
|
info.seq = object.getSeq();
|
info.createTime = object.getCreateTime().getTime();
|
info.createUser = object.getCreateUser() == null ? "" : object.getCreateUser();
|
info.createRole = object.getCreateRole() == null ? "" : object.getCreateRole();
|
info.createOrg = object.getCreateOrg() == null ? "" : object.getCreateOrg();
|
info.modifyTime = object.getModifyTime().getTime();
|
info.modifyUser = object.getModifyUser() == null ? "" : object.getModifyUser();
|
info.modifyRole = object.getModifyRole() == null ? "" : object.getModifyRole();
|
info.modifyOrg = object.getModifyOrg() == null ? "" : object.getModifyOrg();
|
info.licensors = object.getLicensors() == null ? "" : object.getLicensors();
|
return info;
|
}
|
|
/**
|
* 对象转换(批量),从 Corba 对象转换到 Hibernate 对象
|
*
|
* @param infos
|
* @return
|
*/
|
public FlowApproveContent[] convertFlowApproveContentInfosToFlowApproveContents(FlowApproveContentInfo[] infos) {
|
FlowApproveContent[] objects = new FlowApproveContent[infos.length];
|
int i = 0;
|
for (FlowApproveContentInfo info : infos) {
|
objects[i++] = this.convertFlowApproveContentInfoToFlowApproveContent(info);
|
}
|
return objects;
|
}
|
|
/**
|
* 对象转换,从 Corba 对象转换到 Hibernate 对象
|
*
|
* @param info
|
* @return
|
*/
|
public FlowApproveContent convertFlowApproveContentInfoToFlowApproveContent(FlowApproveContentInfo info) {
|
FlowApproveContent object = new FlowApproveContent();
|
object.setId(info.id);
|
object.setUserId(info.userId);
|
object.setApproveContent(info.approveContent);
|
object.setSeq(info.seq);
|
object.setCreateTime(new Date(info.createTime));
|
object.setCreateUser(info.createUser);
|
object.setCreateRole(info.createRole);
|
object.setCreateOrg(info.createOrg);
|
object.setModifyTime(new Date(info.modifyTime));
|
object.setModifyUser(info.modifyUser);
|
object.setModifyRole(info.modifyRole);
|
object.setModifyOrg(info.modifyOrg);
|
object.setLicensors(info.licensors);
|
return object;
|
}
|
|
protected QueryParam convertQueryParamInfo(QueryParamInfo info) {
|
QueryParam obj = new QueryParam();
|
obj.setCustomQueryString(info.customQueryString);
|
obj.setPageIndex(info.pageIndex);
|
obj.setPageSize(info.pageSize);
|
return obj;
|
}
|
}
|