From 5b6a89949adac8e091cf1e4e22c4adc4e2b58634 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Wed, 21 Sep 2022 15:23:40 +0800
Subject: [PATCH] 事件管理处置

---
 src/main/java/org/springblade/modules/eventgm/service/impl/EventgmServiceImpl.java |   87 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 87 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/springblade/modules/eventgm/service/impl/EventgmServiceImpl.java b/src/main/java/org/springblade/modules/eventgm/service/impl/EventgmServiceImpl.java
index a02f969..506f048 100644
--- a/src/main/java/org/springblade/modules/eventgm/service/impl/EventgmServiceImpl.java
+++ b/src/main/java/org/springblade/modules/eventgm/service/impl/EventgmServiceImpl.java
@@ -16,13 +16,25 @@
  */
 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;
 
 /**
  * 事件管理 服务实现类
@@ -32,11 +44,86 @@
  */
 @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;
+	}
+
 
 }

--
Gitblit v1.9.3