|
@ -4,10 +4,13 @@ import com.yihu.hos.common.constants.Constants;
|
|
|
import com.yihu.hos.core.file.FileUtil;
|
|
|
import com.yihu.hos.services.ServiceFlowEventService;
|
|
|
import com.yihu.hos.system.dao.FlowClassDao;
|
|
|
import com.yihu.hos.system.dao.FlowTempDao;
|
|
|
import com.yihu.hos.system.dao.intf.IFlowClassDao;
|
|
|
import com.yihu.hos.system.dao.intf.IFlowDao;
|
|
|
import com.yihu.hos.system.dao.intf.IFlowTempDao;
|
|
|
import com.yihu.hos.system.model.SystemServiceFlow;
|
|
|
import com.yihu.hos.system.model.SystemServiceFlowClass;
|
|
|
import com.yihu.hos.system.model.SystemServiceFlowTemp;
|
|
|
import com.yihu.hos.system.service.intf.IFlowManage;
|
|
|
import com.yihu.hos.web.framework.model.DictItem;
|
|
|
import com.yihu.hos.web.framework.model.DictionaryResult;
|
|
@ -42,6 +45,8 @@ public class FlowManager implements IFlowManage {
|
|
|
@Resource(name = FlowClassDao.BEAN_ID)
|
|
|
private IFlowClassDao flowClassDao;
|
|
|
|
|
|
@Resource(name = FlowTempDao.BEAN_ID)
|
|
|
private IFlowTempDao flowTempDao;
|
|
|
@Autowired
|
|
|
ServiceFlowEventService serviceFlowEventService;
|
|
|
|
|
@ -59,12 +64,21 @@ public class FlowManager implements IFlowManage {
|
|
|
public Result addFlow(SystemServiceFlow obj) throws Exception {
|
|
|
obj.setCreateDate(new Date());
|
|
|
flowDao.saveEntity(obj);
|
|
|
List<SystemServiceFlowClass> flowClassList = obj.getFlowClassArray();
|
|
|
for (SystemServiceFlowClass flowClass:flowClassList){
|
|
|
flowClass.setFlowId(obj.getId());
|
|
|
flowDao.saveEntity(flowClass);
|
|
|
//发送消息到MQ对列
|
|
|
sendUpdateMessage(obj.getCode(), flowClass, Constants.FLOW_OP_ADD);
|
|
|
|
|
|
if (Constants.CLASS.equals(obj.getFileType())){
|
|
|
List<SystemServiceFlowClass> flowClassList = obj.getFlowClassArray();
|
|
|
for (SystemServiceFlowClass flowClass:flowClassList){
|
|
|
flowClass.setFlowId(obj.getId());
|
|
|
flowDao.saveEntity(flowClass);
|
|
|
//发送消息到MQ对列
|
|
|
sendUpdateMessage(obj.getCode(), flowClass, Constants.FLOW_OP_ADD);
|
|
|
}
|
|
|
}else if (Constants.JAVA.equals(obj.getFileType())){
|
|
|
List<SystemServiceFlowTemp> flowTempList = obj.getFlowTempArray();
|
|
|
for (SystemServiceFlowTemp flowTemp:flowTempList){
|
|
|
flowTemp.setFlowId(obj.getId());
|
|
|
flowDao.saveEntity(flowTemp);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
return Result.success("保存成功");
|
|
@ -80,30 +94,45 @@ public class FlowManager implements IFlowManage {
|
|
|
flow.setValid(obj.getValid());
|
|
|
flow.setFileType(obj.getFileType());
|
|
|
|
|
|
List<Integer> classIds = flowClassDao.getFlowClassIds(obj.getId());//原flowclass集合
|
|
|
List<SystemServiceFlowClass> flowClassList = obj.getFlowClassArray();
|
|
|
for (SystemServiceFlowClass flowClass:flowClassList){
|
|
|
if (flowClass.getId()!=null) {
|
|
|
classIds.remove(flowClass.getId());
|
|
|
flowClassDao.updateEntity(flowClass);
|
|
|
sendUpdateMessage(flow.getCode(), flowClass, Constants.FLOW_OP_UPDATE);
|
|
|
}else {
|
|
|
flowClassDao.saveEntity(flowClass);
|
|
|
sendUpdateMessage(flow.getCode(), flowClass, Constants.FLOW_OP_ADD);
|
|
|
|
|
|
if (Constants.JAVA.equals(flow.getFileType())){
|
|
|
List<SystemServiceFlowTemp> flowTempList = obj.getFlowTempArray();
|
|
|
boolean succ = flowTempDao.deleteFlowTempByFlowId(obj.getId());
|
|
|
if (succ){
|
|
|
for (SystemServiceFlowTemp flowTemp:flowTempList){
|
|
|
flowTempDao.saveEntity(flowTemp);
|
|
|
}
|
|
|
}
|
|
|
}else if (Constants.CLASS.equals(flow.getFileType())){
|
|
|
List<Integer> classIds = flowClassDao.getFlowClassIds(obj.getId());//原flowclass集合
|
|
|
List<SystemServiceFlowClass> flowClassList = obj.getFlowClassArray();
|
|
|
for (SystemServiceFlowClass flowClass:flowClassList){
|
|
|
if (flowClass.getId()!=null) {
|
|
|
classIds.remove(flowClass.getId());
|
|
|
flowClassDao.updateEntity(flowClass);
|
|
|
sendUpdateMessage(flow.getCode(), flowClass, Constants.FLOW_OP_UPDATE);
|
|
|
}else {
|
|
|
flowClassDao.saveEntity(flowClass);
|
|
|
sendUpdateMessage(flow.getCode(), flowClass, Constants.FLOW_OP_ADD);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//删除判断
|
|
|
if (classIds !=null && classIds.size()>0){
|
|
|
for (Integer id:classIds){
|
|
|
SystemServiceFlowClass flowClass = getFlowClassById(id);
|
|
|
flowClassDao.deleteEntity(flowClass);
|
|
|
sendDeleteMessage(flow.getCode(), flowClass);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
flowDao.updateEntity(flow);
|
|
|
|
|
|
//删除判断
|
|
|
if (classIds !=null && classIds.size()>0){
|
|
|
for (Integer id:classIds){
|
|
|
SystemServiceFlowClass flowClass = getFlowClassById(id);
|
|
|
flowClassDao.deleteEntity(flowClass);
|
|
|
sendDeleteMessage(flow.getCode(), flowClass);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
return Result.success("更新成功");
|
|
|
}
|
|
@ -117,6 +146,7 @@ public class FlowManager implements IFlowManage {
|
|
|
//发送消息到MQ对列
|
|
|
sendDeleteMessage(flow.getCode(), flowClass);
|
|
|
}
|
|
|
boolean succ = flowTempDao.deleteFlowTempByFlowId(id);
|
|
|
flowDao.deleteEntity(flow);
|
|
|
return Result.success("删除成功");
|
|
|
|
|
@ -156,6 +186,10 @@ public class FlowManager implements IFlowManage {
|
|
|
return succ;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public List<SystemServiceFlowTemp> getFlowTempByFlowId(Integer id) throws Exception {
|
|
|
return flowTempDao.getFlowTempByFlowId(id);
|
|
|
}
|
|
|
|
|
|
|
|
|
@Override
|