/*
|
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
|
*
|
* Redistribution and use in source and binary forms, with or without
|
* modification, are permitted provided that the following conditions are met:
|
*
|
* Redistributions of source code must retain the above copyright notice,
|
* this list of conditions and the following disclaimer.
|
* Redistributions in binary form must reproduce the above copyright
|
* notice, this list of conditions and the following disclaimer in the
|
* documentation and/or other materials provided with the distribution.
|
* Neither the name of the dreamlu.net developer nor the names of its
|
* contributors may be used to endorse or promote products derived from
|
* this software without specific prior written permission.
|
* Author: Chill 庄骞 (smallchill@163.com)
|
*/
|
package org.springblade.modules.eventgm.service.impl;
|
|
import org.springblade.common.tool.EnhancementServicesTool;
|
import org.springblade.core.secure.BladeUser;
|
import org.springblade.core.secure.utils.AuthUtil;
|
import org.springblade.modules.eventgm.entity.EventgmEntity;
|
import org.springblade.modules.eventgm.entity.EventgmRecordEntity;
|
import org.springblade.modules.eventgm.service.IEventgmRecordService;
|
import org.springblade.modules.eventgm.vo.EventgmVO;
|
import org.springblade.modules.eventgm.mapper.EventgmMapper;
|
import org.springblade.modules.eventgm.service.IEventgmService;
|
import org.springblade.core.mp.base.BaseServiceImpl;
|
import org.springblade.modules.repairsorder.entity.RepairsorderEntity;
|
import org.springblade.modules.repairsorder.service.IRepairsorderService;
|
import org.springblade.modules.system.entity.User;
|
import org.springblade.modules.system.service.IUserService;
|
import org.springblade.modules.taskinfo.entity.TaskInfoEntity;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import org.springframework.transaction.annotation.Transactional;
|
|
/**
|
* 事件管理 服务实现类
|
*
|
* @author aix
|
* @since 2022-09-13
|
*/
|
@Service
|
public class EventgmServiceImpl extends BaseServiceImpl<EventgmMapper, EventgmEntity> implements IEventgmService {
|
@Autowired
|
IEventgmRecordService eventgmRecordService;
|
@Autowired
|
IRepairsorderService repairsorderService;
|
|
@Override
|
public IPage<EventgmVO> selectEventgmPage(IPage<EventgmVO> page, EventgmVO eventgm) {
|
return page.setRecords(baseMapper.selectEventgmPage(page, eventgm));
|
}
|
|
@Override
|
@Transactional
|
public boolean save(EventgmEntity entity) {
|
boolean saveEvent = super.save(entity);
|
EventgmRecordEntity eventgmRecord = new EventgmRecordEntity();
|
EnhancementServicesTool toolEventgmRecord = new EnhancementServicesTool<EventgmRecordEntity>();
|
toolEventgmRecord.resolveEntity(eventgmRecord);
|
BladeUser user = AuthUtil.getUser();
|
eventgmRecord.setEventId(entity.getId());
|
eventgmRecord.setPerson(user.getNickName());
|
eventgmRecord.setState("0");
|
eventgmRecord.setRemark("事件提交");
|
return saveEvent&&eventgmRecordService.save(eventgmRecord);
|
}
|
|
@Override
|
@Transactional
|
public Boolean disposalAccept(EventgmEntity eventgm) {
|
//新增事件管理记录表
|
EventgmRecordEntity eventgmRecord = new EventgmRecordEntity();
|
EnhancementServicesTool toolEventgmRecord = new EnhancementServicesTool<EventgmRecordEntity>();
|
toolEventgmRecord.resolveEntity(eventgmRecord);
|
BladeUser user = AuthUtil.getUser();
|
eventgmRecord.setEventId(eventgm.getId());
|
eventgmRecord.setPerson(user.getNickName());
|
eventgmRecord.setState("1");
|
eventgmRecord.setRemark("生成维修工单");
|
boolean saveEventRecord = eventgmRecordService.save(eventgmRecord);
|
//新增维修工单
|
RepairsorderEntity repairsOrder = new RepairsorderEntity();
|
EnhancementServicesTool toolRepairsOrder = new EnhancementServicesTool<EventgmRecordEntity>();
|
toolRepairsOrder.resolveEntity(repairsOrder);
|
repairsOrder.setLocation(eventgm.getAddress());
|
repairsOrder.setLongitude(eventgm.getLongitude());
|
repairsOrder.setLatitude(eventgm.getLatitude());
|
repairsOrder.setContent(eventgm.getRemark());
|
repairsOrder.setState("0");
|
boolean saveRepairsOrder = repairsorderService.save(repairsOrder);
|
//修改事件管理状态
|
eventgm.setState("1");
|
eventgm.setNo(repairsOrder.getNo());
|
//不改变原备注
|
EventgmEntity selectEvent = baseMapper.selectById(eventgm.getId());
|
eventgm.setRemark(selectEvent.getRemark());
|
|
boolean updateEvent = baseMapper.updateById(eventgm) > 0;
|
return saveEventRecord&&saveRepairsOrder&&(updateEvent);
|
}
|
|
@Override
|
public Boolean disposalRefuse(EventgmEntity eventgm) {
|
//添加事件记录表
|
EventgmRecordEntity eventgmRecord = new EventgmRecordEntity();
|
EnhancementServicesTool toolEventgmRecord = new EnhancementServicesTool<EventgmRecordEntity>();
|
toolEventgmRecord.resolveEntity(eventgmRecord);
|
BladeUser user = AuthUtil.getUser();
|
eventgmRecord.setEventId(eventgm.getId());
|
eventgmRecord.setPerson(user.getNickName());
|
eventgmRecord.setState("10");
|
eventgmRecord.setRemark("事件拒绝");
|
boolean saveEventRecord = eventgmRecordService.save(eventgmRecord);
|
|
//修改事件管理状态
|
eventgm.setState("10");
|
//不改变原备注
|
EventgmEntity selectEvent = baseMapper.selectById(eventgm.getId());
|
eventgm.setRemark(selectEvent.getRemark());
|
boolean updateEvent = baseMapper.updateById(eventgm) > 0;
|
return saveEventRecord&&updateEvent;
|
}
|
|
|
}
|