|
@ -1,10 +1,76 @@
|
|
|
package com.yihu.wlyy.service.synergy;
|
|
|
|
|
|
import com.yihu.wlyy.entity.synergy.ManageSynergyWorkorderDO;
|
|
|
import com.yihu.wlyy.repository.synergy.ManageSynergyWorkOrderDao;
|
|
|
import com.yihu.wlyy.repository.synergy.ManageSynergyWorkorderExecutorDao;
|
|
|
import com.yihu.wlyy.repository.synergy.ManageSynergyWorkorderServicerDao;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
* Created by 刘文彬 on 2018/9/27.
|
|
|
*/
|
|
|
@Service
|
|
|
public class SynergyManageService {
|
|
|
@Autowired
|
|
|
private ManageSynergyWorkOrderDao workOrderDao;
|
|
|
@Autowired
|
|
|
private ManageSynergyWorkorderServicerDao workorderServicerDao;
|
|
|
@Autowired
|
|
|
private ManageSynergyWorkorderExecutorDao workorderExecutorDao;
|
|
|
|
|
|
public ManageSynergyWorkorderDO findWorkOrderByCode(String workorderCode) {
|
|
|
return workOrderDao.findByCode(workorderCode);
|
|
|
}
|
|
|
|
|
|
//获取系统服务详情
|
|
|
public Map<String, Object> getWorkOrderInfo(String workorderCode, Integer role) {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
ManageSynergyWorkorderDO workorderDO = workOrderDao.findByCode(workorderCode);
|
|
|
//存入协同服务工单信息
|
|
|
map.put("code", workorderCode);
|
|
|
map.put("type", workorderDO.getType());
|
|
|
map.put("priority", workorderDO.getPriority());
|
|
|
map.put("serviceTime", workorderDO.getServiceTime());
|
|
|
map.put("status", workorderDO.getStatus());
|
|
|
map.put("title", workorderDO.getRelationCodeName());
|
|
|
map.put("remark", workorderDO.getRemark());
|
|
|
map.put("servicerKey", workorderDO.getServicerKey());
|
|
|
map.put("servicerCount", workorderDO.getServicerCount());
|
|
|
map.put("createTime", workorderDO.getCreateTime());
|
|
|
map.put("createUserName", workorderDO.getCreateUserName());
|
|
|
//判断是否超时
|
|
|
Date now = new Date();
|
|
|
long hour = (now.getTime() - workorderDO.getServiceTime().getTime())/60*60*1000;
|
|
|
if(hour <= 4){
|
|
|
map.put("delay", "red");
|
|
|
}else if(hour <= 24){
|
|
|
map.put("delay", "yellow");
|
|
|
}
|
|
|
//根据角色显示对应工单状态
|
|
|
if(workorderDO.getCreateUserType() == 1 && role == 2){
|
|
|
map.put("status", "待接收");
|
|
|
}else if(workorderDO.getCreateUserType() == 2 && role == 1){
|
|
|
map.put("status", "未接收");
|
|
|
}
|
|
|
|
|
|
//获取负责人信息
|
|
|
if(role == 3){
|
|
|
String manager = workorderExecutorDao.findManagerByWorkorderCode(workorderCode);
|
|
|
String collaborator = workorderExecutorDao.findCollaboratorByWorkorderCode(workorderCode);
|
|
|
map.put("负责人", manager);
|
|
|
map.put("参与人", collaborator);
|
|
|
}
|
|
|
|
|
|
//获取处理结果
|
|
|
if(workorderDO.getStatus() == 3){
|
|
|
map.put("说明", workorderDO.getDealResultRemark());
|
|
|
map.put("附件",workorderDO.getDealResultAccessory());
|
|
|
}
|
|
|
return map;
|
|
|
}
|
|
|
}
|