服务管理-部分

This commit is contained in:
Wang.Huan
2025-02-26 17:57:39 +08:00
parent 72ff3596c2
commit 9097f69c7d
6 changed files with 98 additions and 4 deletions

View File

@@ -6,22 +6,25 @@ package com.openhis.web.basicservice.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.core.common.core.domain.R;
import com.openhis.administration.domain.ChargeItemDefinition;
import com.openhis.administration.domain.HealthcareService;
import com.openhis.administration.domain.Location;
import com.openhis.administration.mapper.LocationMapper;
import com.openhis.administration.service.IChargeItemDefinitionService;
import com.openhis.administration.service.IHealthcareServiceService;
import com.openhis.common.enums.AccountStatus;
import com.openhis.common.enums.WhetherContainUnknown;
import com.openhis.common.utils.HisPageUtils;
import com.openhis.common.utils.HisQueryUtils;
import com.openhis.medication.domain.Medication;
import com.openhis.medication.domain.MedicationQueryDto;
import com.openhis.web.basicservice.dto.HealthcareServiceAddOrUpdateParam;
import com.openhis.web.basicservice.dto.HealthcareServiceInitDto;
import com.openhis.web.basicservice.mapper.HealthcareServiceBizMapper;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.HashSet;
@@ -39,6 +42,9 @@ import java.util.stream.Stream;
public class HealthcareServiceController {
private final IHealthcareServiceService iHealthcareServiceService;
private final IChargeItemDefinitionService iChargeItemDefinitionService;
private final HealthcareServiceBizMapper healthcareServiceBizMapper;
private final LocationMapper locationMapper;
@@ -66,8 +72,28 @@ public class HealthcareServiceController {
.map(location -> new HealthcareServiceInitDto.locationIdOption(location.getId(), location.getName()))
.collect(Collectors.toList());
healthcareServiceInitDto.setLocationIdOptions(locationIdOptions);
// 是否需要预约
List<HealthcareServiceInitDto.appointmentRequiredFlagOption> appointmentRequiredFlagOptions = Stream.of(WhetherContainUnknown.values())
.map(wh -> new HealthcareServiceInitDto.appointmentRequiredFlagOption(wh.getValue(), wh.getInfo()))
.collect(Collectors.toList());
healthcareServiceInitDto.setAppointmentRequiredFlagOptions(appointmentRequiredFlagOptions);
return R.ok(healthcareServiceInitDto);
}
/**
* 服务管理 新增
*/
@PostMapping(value = "/healthcare-service")
public R<?> add(@Validated @RequestBody HealthcareServiceAddOrUpdateParam healthcareServiceAddOrUpdateParam){
// 服务管理-表单数据
HealthcareService healthcareServiceFormData = healthcareServiceAddOrUpdateParam.getHealthcareServiceFormData();
// 费用定价-表单数据
ChargeItemDefinition chargeItemDefinitionFormData = healthcareServiceAddOrUpdateParam.getChargeItemDefinitionFormData();
// 服务管理-新增
HealthcareService healthcareService = iHealthcareServiceService.addHealthcareService(healthcareServiceFormData);
return null;
}
}

View File

@@ -0,0 +1,25 @@
package com.openhis.web.basicservice.dto;
import com.openhis.administration.domain.ChargeItemDefinition;
import com.openhis.administration.domain.HealthcareService;
import lombok.Data;
/**
* 服务项目管理 新增修改参数类
*
* @author system
* @date 2025-02-20
*/
@Data
public class HealthcareServiceAddOrUpdateParam{
/**
* 服务管理
*/
private HealthcareService healthcareServiceFormData;
/**
* 费用定价
*/
private ChargeItemDefinition chargeItemDefinitionFormData;
}

View File

@@ -15,6 +15,7 @@ public class HealthcareServiceInitDto {
private List<activeFlagOption> activeFlagOptions;
private List<locationIdOption> locationIdOptions;
private List<appointmentRequiredFlagOption> appointmentRequiredFlagOptions;
/**
@@ -45,4 +46,18 @@ public class HealthcareServiceInitDto {
}
}
/**
* 是否需要预约
*/
@Data
public static class appointmentRequiredFlagOption {
private Integer value;
private String label;
public appointmentRequiredFlagOption(Integer value, String label) {
this.value = value;
this.label = label;
}
}
}

View File

@@ -0,0 +1,20 @@
package com.openhis.common.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 是否
*/
@Getter
@AllArgsConstructor
public enum WhetherContainUnknown {
NO(0, "no", ""),
YES(1, "yes", ""),
UNKNOWN(2, "unknown", "未知");
@EnumValue
private final Integer value;
private final String code;
private final String info;
}

View File

@@ -11,4 +11,6 @@ import com.openhis.administration.domain.HealthcareService;
*/
public interface IHealthcareServiceService extends IService<HealthcareService> {
HealthcareService addHealthcareService(HealthcareService healthcareService);
}

View File

@@ -16,4 +16,10 @@ import com.openhis.administration.service.IHealthcareServiceService;
@Service
public class HealthcareServiceServiceImpl extends ServiceImpl<HealthcareServiceMapper, HealthcareService> implements IHealthcareServiceService {
@Override
public HealthcareService addHealthcareService(HealthcareService healthcareService){
baseMapper.insert(healthcareService);
return healthcareService;
}
}