CheckListManagerImpl.java
package com.mycim.server.pms.manager.impl;
import com.mycim.server.base.manager.NamedObjectManager;
import com.mycim.server.base.manager.TransactionLogManager;
import com.mycim.server.pms.dao.CheckListDao;
import com.mycim.server.pms.manager.CheckListManager;
import com.mycim.valueobject.bas.NamedObject;
import com.mycim.valueobject.bas.TransactionLog;
import com.mycim.valueobject.consts.TransactionNames;
import com.mycim.valueobject.ems.Checklist;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
* CheckList ManagerImpl
*
* @author pinyan.song
* @version 6.0.0
* @date 2019-11-5
**/
@Service
@Transactional
public class CheckListManagerImpl implements CheckListManager {
@Autowired
CheckListDao checkListDao;
@Autowired
NamedObjectManager namedObjectManager;
@Autowired
TransactionLogManager transactionLogManager;
@Override
public Checklist getCheckList(Checklist checkList) {
NamedObject namedObject = namedObjectManager.getNamedObject(checkList);
if (namedObject == null) {
return null;
}
checkList.copyNamedObject(namedObject);
checkList = checkListDao.getChecklist(checkList);
checkList.setStartEventId(namedObjectManager.getInstanceId(checkList.getStartEventRrn()));
checkList.setEndEventId(namedObjectManager.getInstanceId(checkList.getEndEventRrn()));
return checkList;
}
@Override
public long insertChecklist(Checklist checkList) {
long instanceRrn = 0;
TransactionLog transactionLog = transactionLogManager
.startTransactionLog(checkList.getTransPerformedby(), TransactionNames.CREATE_KEY);
instanceRrn = namedObjectManager.insertNamedObject(checkList, transactionLog.getTransRrn());
checkList.setInstanceRrn(instanceRrn);
checkListDao.insertCheckList(checkList);
checkListDao.insertCheckListHis(instanceRrn, transactionLog);
transactionLogManager.markTransactionLog(transactionLog);
return instanceRrn;
}
@Override
public void deleteChecklist(Checklist checkList) {
TransactionLog transactionLog = transactionLogManager
.startTransactionLog(checkList.getTransPerformedby(), TransactionNames.DELETE_KEY);
namedObjectManager.deleteNamedObject(checkList, transactionLog.getTransRrn());
checkListDao.insertCheckListHis(checkList.getInstanceRrn(), transactionLog);
checkListDao.deleteCheckList(checkList);
transactionLogManager.markTransactionLog(transactionLog);
}
@Override
public void updateChecklist(Checklist checkList) {
TransactionLog transactionLog = transactionLogManager
.startTransactionLog(checkList.getTransPerformedby(), TransactionNames.MODIFY_KEY);
namedObjectManager.updateNamedObject(checkList, transactionLog.getTransRrn());
checkListDao.updateCheckList(checkList);
checkListDao.insertCheckListHis(checkList.getInstanceRrn(), transactionLog);
transactionLogManager.markTransactionLog(transactionLog);
}
}