109 lines
3.0 KiB
Java
109 lines
3.0 KiB
Java
package com.amarsoft.acct.accounting.web;
|
|
|
|
import java.util.List;
|
|
|
|
import com.amarsoft.app.base.businessobject.BusinessObject;
|
|
import com.amarsoft.app.base.businessobject.BusinessObjectManager;
|
|
import com.amarsoft.app.base.trans.TransactionHelper;
|
|
import com.amarsoft.are.jbo.JBOTransaction;
|
|
import com.amarsoft.are.lang.StringX;
|
|
//import jbo.app.ASSET_INFO;
|
|
import jbo.sys.FLOW_OBJECT;
|
|
import jbo.sys.FLOW_OPINION;
|
|
import jbo.sys.FLOW_TASK;
|
|
|
|
public class DeleteTransaction {
|
|
private String serialno;
|
|
private String objectNo;
|
|
private String applyType;
|
|
private String assetStatus;
|
|
private String objectType;
|
|
|
|
|
|
public String getSerialno() {
|
|
return this.serialno;
|
|
}
|
|
|
|
public void setSerialno(String serialno) {
|
|
this.serialno = serialno;
|
|
}
|
|
|
|
public String getApplyType()
|
|
{
|
|
return applyType;
|
|
}
|
|
|
|
public void setApplyType(String applyType)
|
|
{
|
|
this.applyType = applyType;
|
|
}
|
|
|
|
public String getAssetStatus()
|
|
{
|
|
return assetStatus;
|
|
}
|
|
|
|
public void setAssetStatus(String assetStatus)
|
|
{
|
|
this.assetStatus = assetStatus;
|
|
}
|
|
|
|
public String getObjectType()
|
|
{
|
|
return objectType;
|
|
}
|
|
|
|
public void setObjectType(String objectType)
|
|
{
|
|
this.objectType = objectType;
|
|
}
|
|
|
|
public String getObjectNo()
|
|
{
|
|
return objectNo;
|
|
}
|
|
|
|
public void setObjectNo(String objectNo)
|
|
{
|
|
this.objectNo = objectNo;
|
|
}
|
|
|
|
public String deleteTransaction(JBOTransaction tx) throws Exception{
|
|
if(StringX.isEmpty(this.serialno)) return "false@删除失败";
|
|
BusinessObjectManager bomanager = BusinessObjectManager.createBusinessObjectManager(tx);
|
|
//删除当前的交易
|
|
TransactionHelper.deleteTransaction(this.serialno, bomanager);
|
|
|
|
// 删除flow_object,flow_task,flow_opinion三张表的数据
|
|
List<BusinessObject> foList = bomanager.loadBusinessObjects(FLOW_OBJECT.CLASS_NAME, "ObjectNo =:ObjectNo and ObjectType =:ObjectType","ObjectNo", serialno,"ObjectType",objectType);
|
|
bomanager.deleteBusinessObjects(foList);
|
|
List<BusinessObject> ftList = bomanager.loadBusinessObjects(FLOW_TASK.CLASS_NAME, "ObjectNo =:ObjectNo and ObjectType =:ObjectType","ObjectNo", serialno,"ObjectType",objectType);
|
|
bomanager.deleteBusinessObjects(ftList);
|
|
List<BusinessObject> fnList = bomanager.loadBusinessObjects(FLOW_OPINION.CLASS_NAME, "ObjectNo =:ObjectNo and ObjectType =:ObjectType","ObjectNo", serialno,"ObjectType",objectType);
|
|
bomanager.deleteBusinessObjects(fnList);
|
|
|
|
if(assetStatus!=null&&assetStatus.equals("0030"))//出库申请撤销还原为已入库
|
|
{
|
|
BusinessObject ai = bomanager.keyLoadBusinessObject("jbo.app.ASSET_INFO", objectNo);
|
|
if (ai!=null)
|
|
{
|
|
ai.setAttributeValue("assetStatus", "0120");
|
|
bomanager.updateBusinessObject(ai);
|
|
}
|
|
}
|
|
if(assetStatus!=null&&assetStatus.equals("0020"))//入库申请撤销还原为未抵押未质押
|
|
{
|
|
BusinessObject ai = bomanager.keyLoadBusinessObject("jbo.app.ASSET_INFO", objectNo);
|
|
if (ai!=null)
|
|
{
|
|
ai.setAttributeValue("assetStatus", "0000");
|
|
bomanager.updateBusinessObject(ai);
|
|
}
|
|
}
|
|
|
|
bomanager.updateDB();
|
|
bomanager.commit();
|
|
return "true@删除成功";
|
|
}
|
|
}
|