此方法用于建立和保存父记录和子记录,但仅保存一个孩子。
ffmpeg-python
调用此方法以保存父项:
public PurchaseResponse saveHeaderItem(PurchaseOrderHeaderDto head)
{
try
{
session=sessionfactory.getCurrentSession();
transaction=session.beginTransaction();
PurchaseOrderHeader Head=importDto1(head);
createParent(Head);
for (int i = 0; i < Head.getPurchaseOrderItemlist().size(); i++)
{
Head.getPurchaseOrderItemlist().get(i).setHeaderDetails(Head);
createChild(Head.getPurchaseOrderItemlist().get(i));
//session.save(Head.getPurchaseOrderItemlist().get(i));
}
if(transaction.isActive())
transaction.commit();
session.close();
purchaseresponse.setMessage("both Successfull");
purchaseresponse.setStatus("200");
return purchaseresponse;
}
catch(Exception e)
{
System.err.println("both"+e.getMessage());
purchaseresponse.setMessage("both UnSuccessfull");
purchaseresponse.setStatus("500");
return purchaseresponse;
}
}
调用此方法存储子项:
public PurchaseResponse createParent(PurchaseOrderHeader head)
{
try
{
session=sessionfactory.getCurrentSession();
transaction=session.beginTransaction();
if(head.getPayment_terms() instanceof String)
{
// payment=(String) header.getPayment_terms();
System.err.println(head);
head.setPayment_terms(head.getPayment_terms());
}
if(head.getStatus() instanceof String)
{
// status=(String) header.getStatus();
System.err.println(head);
head.setStatus(head.getStatus());
}
if(head.getVendor() instanceof String)
{
// vendor=(String) header.getVendor();
System.err.println(head);
head.setVendor(head.getVendor());
}
session.save(head);
if(transaction.isActive())
transaction.commit();
purchaseresponse.setMessage("parent Successfull");
purchaseresponse.setStatus("200");
session.close();
return purchaseresponse;
}
catch(Exception e)
{
System.err.println("parent"+e.getMessage());
purchaseresponse.setMessage("parent UnSuccessfull");
purchaseresponse.setStatus("500");
session.close();
return purchaseresponse;
}
}