| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 |
- package com.coffee.bus.service;
- import cn.hutool.json.JSONUtil;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.coffee.bus.entity.BusHospitalConfigEntity;
- import com.coffee.bus.enums.ConfigEnum;
- import com.coffee.bus.hospital.HospitalManagerRegister;
- import com.coffee.bus.hospital.config.bean.*;
- import com.coffee.bus.mapper.BusHospitalConfigMapper;
- import com.coffee.common.crud.BaseService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.context.annotation.Lazy;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import java.util.Map;
- /**
- * @author lifang
- * @version 1.0.0
- * @ClassName LocalBusHospitalService.java
- * @Description TODO
- * @createTime 2022年03月19日 09:27:00
- */
- @Service
- public class LocalBusHospitalConfigService extends BaseService<BusHospitalConfigMapper, BusHospitalConfigEntity,String> {
- @Autowired
- @Lazy
- private HospitalManagerRegister managerRegister;
- @Override
- public void validateBeforeSave(BusHospitalConfigEntity entity) {
- }
- @Override
- public void validateBeforeUpdate(BusHospitalConfigEntity entity) {
- }
- @Override
- public void validateBeforeDelete(String id) {
- }
- @Override
- public void postSave(BusHospitalConfigEntity entity) {
- BusHospitalConfigEntity configEntity = this.getById(entity.getId());
- managerRegister.refresh(configEntity.getTenantId(),false,true);
- }
- @Override
- public void postUpdate(BusHospitalConfigEntity entity) {
- BusHospitalConfigEntity configEntity = this.getById(entity.getId());
- managerRegister.refresh(configEntity.getTenantId(),false,true);
- }
- /**
- * 描述: 默认配置
- * @author lifang
- * @date 2022/5/20 11:23
- * @param hospitalId
- * @return void
- */
- @Transactional(rollbackFor = Exception.class)
- public void setDefaultConfig(String hospitalId, ConfigEnum type){
- //找到默认医院的配置
- BusHospitalConfigEntity defaultConfig = getDefaultConfig(type);
- BusHospitalConfigEntity hospitalConfig = this.getOne(new QueryWrapper<BusHospitalConfigEntity>()
- .lambda()
- .eq(BusHospitalConfigEntity::getType, type)
- .eq(BusHospitalConfigEntity::getTenantId, hospitalId));
- BusHospitalConfigEntity saveOrUpdate = new BusHospitalConfigEntity();
- if(hospitalConfig!=null){
- saveOrUpdate.setId(hospitalConfig.getId());
- };
- saveOrUpdate.setConfig(defaultConfig.getConfig());
- saveOrUpdate.setType(type);
- saveOrUpdate.setTenantId(hospitalId);
- this.saveOrUpdate(saveOrUpdate);
- }
- public void saveDefaultConfig(){
- BusHospitalConfigEntity otherConfig = new BusHospitalConfigEntity();
- otherConfig.setTenantId("1");
- otherConfig.setType(ConfigEnum.other);
- otherConfig.setConfig(getOtherDefault());
- try {
- this.save(otherConfig);
- } catch (Exception e){
- }
- BusHospitalConfigEntity undoConfig = new BusHospitalConfigEntity();
- undoConfig.setTenantId("1");
- undoConfig.setType(ConfigEnum.undo);
- undoConfig.setConfig(getUndoDefault());
- try {
- this.save(undoConfig);
- } catch (Exception e){
- }
- }
- public BusHospitalConfigEntity getDefaultConfig( ConfigEnum type){
- return this.getOne(new QueryWrapper<BusHospitalConfigEntity>()
- .lambda()
- .eq(BusHospitalConfigEntity::getType,type)
- .eq(BusHospitalConfigEntity::getTenantId, "1"));
- }
- private Map<String,Object> getOtherDefault(){
- FunctionExtraConfig extraConfig=new FunctionExtraConfig();
- //不在服务区默认10分钟
- extraConfig.setLowInfusion(10);
- //低输注时间默认30分钟
- extraConfig.setNoSignal(30);
- FunctionAnalConfig anal=new FunctionAnalConfig();
- //镇痛消失时间默认120分钟
- anal.setDisappearTime(120);
- //镇痛不足判定次数3次
- anal.setInsufficientCount(3);
- //镇痛不足判定时间60分钟
- anal.setInsufficientTime(60);
- //镇痛不足判定类型 有效
- anal.setValid(true);
- FunctionOtherConfig result = new FunctionOtherConfig();
- result.setExtra(extraConfig);
- result.setAnal(anal);
- return JSONUtil.parseObj(result);
- }
- private Map<String,Object> getUndoDefault(){
- FunctionFinishMonitorConfig finishMonitorConfig = new FunctionFinishMonitorConfig();
- finishMonitorConfig.setEnable(true);
- //不在服务区到结束时间默认14天
- finishMonitorConfig.setNoSignalInterval(14);
- //关机到结束时间默认14天
- finishMonitorConfig.setShutDownInterval(14);
- FunctionAutoUndoConfig autoUndoConfig = new FunctionAutoUndoConfig();
- autoUndoConfig.setEnable(true);
- autoUndoConfig.setUndoByType(true);
- //不在服务区到撤泵时间 默认60分钟
- autoUndoConfig.setNoSignalInterval(60);
- //关机到撤泵时间 默认60分钟
- autoUndoConfig.setShutDownInterval(60);
- FunctionManualUndoConfig manualUndoConfig = new FunctionManualUndoConfig();
- manualUndoConfig.setEnable(false);
- FunctionUndoConfig result = new FunctionUndoConfig();
- result.setAuto(autoUndoConfig);
- result.setFinishMonitor(finishMonitorConfig);
- result.setManual(manualUndoConfig);
- return JSONUtil.parseObj(result);
- }
- }
|