4. 劳动合同服务层
/**
* 劳动合同服务层
* @date 2016-1-1
*/
public interfaceLaborContractService {
/**
* 添加劳动合同
* @param LaborContract 劳动合同实体类
* @return void
*/
public void addLaborContract(LaborContractVo laborContractVo);
/**
* 更新劳动合同
* @param LaborContract 劳动合同实体类
* @return void
*/
public void updateLaborContract(LaborContract laborContract);
/**
* 删除劳动合同
* @param laborContractId 劳动合同代码
* @return void
*/
public void delLaborContract(long laborContractId);
/**
* 劳动合同的批量删除
* @param long[]laborContractIds 劳动合同代码
* @return void 无返回值
*/
public void delLaborContract(long[] laborContractIds);
/**
* 通过劳动合同代码查找劳动合同信息
* @param laborContractId 劳动合同代码
* @return LaborContract 返回劳动合同实体类
* @return LaborContract 劳动合同实体类
*/
public LaborContract findLaborContract(long laborContractId);
/**
* 分页查询出符合条件的劳动合同列表
* @param conditionEntry 查询条件类型
* @param conditionValue 查询条件
* @param page 页码
* @param pageSize 每页显示的数量
* @returnList<CredentialListing> 返回查询到的劳动合同列表
*/
public List<LaborContract>conditionQueryLaborContract(String conditionEntry,String conditionValue, intpageNo, int pageSize);
/**
* 查询统计劳动合同数量
* @param conditionEntry 查询条件类型
* @param conditionValue 查询条件
* @return long 返回统计数量
*/
public long countLaborContract(String conditionEntry, StringconditionValue);
/**
* 上传文件
* @param accessory 资源附件实体
* @return long 放回劳动合同代码
*/
public long uploadFile(Accessory accessory);
}
5. 劳动合同服务层实现
/**
* 劳动合同服务层实现
* @date 2016-1-1
*/
@Service
public classLaborContractServiceImpl implements LaborContractService {
@Autowired
private LaborContractDao laborContractDao;
@Autowired
private AccessoryDao accessoryDao;
@Autowired
private LaborContractToAccessoryDao labctoAccessoryDao;
/**
* 添加劳动合同
* @param LaborContract 劳动合同实体类
* @return void
*/
public void addLaborContract(LaborContractVo laborContractVo) {
LaborContract laborContract = null;
try{
laborContract = new LaborContract();
laborContract.setLaborContractId(laborContractVo.getLaborContractId());
laborContract.setLaborContractNo(laborContractVo.getLaborContractNo());
laborContract.setLaborContractName(laborContractVo.getLaborContractName());
laborContract.setBeginDate(laborContractVo.getBeginDate());
laborContract.setEndDate(laborContractVo.getEndDate());
laborContract.setCreateDate(new Date());
laborContract.setRemark(laborContractVo.getRemark());
//将关联附件代码进行遍历,存入劳动合同代码
laborContractDao.addLaborContract(laborContract);
for(long toAccessoryNo:laborContractVo.getToAccessoryNos()) {
LaborContractToAccessory laborContractToAccessory =labctoAccessoryDao.findLaborContractToAccessoryByNo(toAccessoryNo);
//将存储后的劳动合同代码存入关联附件中
laborContractToAccessory.setLaborContractId(laborContract.getLaborContractId());
labctoAccessoryDao.updateLaborContractToAccessory(laborContractToAccessory);
}
}catch(Exception e){
e.printStackTrace();
throw new SpasException("添加劳动合同操作失败!");
}
}
/**
* 删除劳动合同
* @param laborContractId 劳动合同代码
* @return void
*/
public void delLaborContract(long laborContractId) {
try{
laborContractDao.delLaborContract(laborContractId);
}catch(Exception e){
e.printStackTrace();
throw new SpasException("删除劳动合失败");
}
}
/**
* 劳动合同的批量删除
* @param long[]laborContractIds 劳动合同代码
* @return void 无返回值
*/
public void delLaborContract(long[] laborContractIds) {
try{
for (int i=0;i<laborContractIds.length;i++) {
laborContractDao.delLaborContract(laborContractIds[i]);
}
}catch(Exception e) {
e.printStackTrace();
throw new SpasException("批量删除劳动合同失败!");
}
}
/**
* 更新劳动合同
* @param LaborContract 劳动合同实体类
* @return void
*/
public void updateLaborContract(LaborContract laborContract) {
try{
laborContractDao.updateLaborContract(laborContract);
}catch(Exception e){
e.printStackTrace();
throw new SpasException("编辑劳动合操作失败!");
}
}
/**
* 通过劳动合同代码查找劳动合同信息
* @param laborContractId 劳动合同代码
* @return LaborContract 返回劳动合同实体类
* @return LaborContract 劳动合同实体类
*/
public LaborContract findLaborContract(long laborContractId) {
LaborContract laborContract = null;
try{
laborContract = laborContractDao.findLaborContract(laborContractId);
}catch(Exception e) {
e.printStackTrace();
throw new SpasException("查找劳动合同失败!");
}
return laborContract;
}
/**
* 分页查询出符合条件的劳动合同列表
* @param conditionEntry 查询条件类型
* @param conditionValue 查询条件
* @param page 页码
* @param pageSize 每页显示的数量
* @returnList<LaborContract> 返回查询到的劳动合同列表
*/
public List<LaborContract>conditionQueryLaborContract(String conditionEntry, String conditionValue, intpage,int pageSize) {
List<LaborContract> laborContractList = null;
try{
laborContractList = new ArrayList<LaborContract>();
laborContractList =laborContractDao.conditionQueryLaborContract(conditionEntry, conditionValue,page, pageSize);
}catch(Exception e) {
e.printStackTrace();
throw new SpasException("分页查询失败!");
}
return laborContractList;
}
/**
* 查询统计劳动合同数量
* @param conditionEntry 查询条件类型
* @param conditionValue 查询条件
* @return long 返回统计数量
*/
public long countLaborContract(String conditionEntry, StringconditionValue) {
long totoal = 0;
try{
totoal = laborContractDao.countLaborContract(conditionEntry,conditionValue);
}catch(Exception e) {
e.printStackTrace();
throw new SpasException("按条件统计失败!");
}
return totoal;
}
/**
* 上传文件
* @param accessory 资源附件实体
* @return long 放回证书关联代码
*/
public long uploadFile(Accessory accessory) {
//关联表代码
long toAccessoryNo = 0;
try {
//存储资源附件
accessoryDao.addAccessory(accessory);
//新建关联资源附件
LaborContractToAccessory lctoAccessory = newLaborContractToAccessory();
//将查找出的资源附件代码放进关联实体
lctoAccessory.setAccessoryNo(accessory.getAccessoryNo());
//存储关联资源附件
labctoAccessoryDao.addLaborContractToAccessory(lctoAccessory);
toAccessoryNo = lctoAccessory.getToAccessoryNo();
} catch (Exception e) {
e.printStackTrace();
new PersonnelException("上传文件失败");
}
return toAccessoryNo;
}
}