This commit is contained in:
LiJianZhao 2025-05-29 10:37:02 +08:00
parent cbfeacc4b5
commit 98f78aec2b
4 changed files with 27 additions and 9 deletions

View File

@ -83,4 +83,5 @@ public class SocialController extends BaseController {
chargeService.uploadCostDetails(changeOrderCode); chargeService.uploadCostDetails(changeOrderCode);
return success(); return success();
} }
} }

View File

@ -103,4 +103,6 @@ public class DiagnosisController extends BaseController {
} }
} }

View File

@ -57,6 +57,7 @@ import com.syjiaer.clinic.server.mapper.social.SocialUserMapper;
import com.syjiaer.clinic.server.service.BaseService; import com.syjiaer.clinic.server.service.BaseService;
import com.syjiaer.clinic.server.service.charge.vo.PaymentMethodVo; import com.syjiaer.clinic.server.service.charge.vo.PaymentMethodVo;
import com.syjiaer.clinic.server.service.charge.vo.RetailOrderDailyChargingReportVo; import com.syjiaer.clinic.server.service.charge.vo.RetailOrderDailyChargingReportVo;
import com.syjiaer.clinic.server.service.diagnosis.DiagnosisService;
import com.syjiaer.clinic.server.service.inventory.InventoryService; import com.syjiaer.clinic.server.service.inventory.InventoryService;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -119,6 +120,9 @@ public class ChargeService extends BaseService {
@Autowired @Autowired
@Lazy @Lazy
private ChargeService chargeService; private ChargeService chargeService;
@Autowired
@Lazy
private DiagnosisService diagnosisService;
@Autowired @Autowired
private ChargeSocialPayLogMapper chargeSocialPayLogMapper; private ChargeSocialPayLogMapper chargeSocialPayLogMapper;
@ -155,10 +159,18 @@ public class ChargeService extends BaseService {
String diaCode = diagnosis.getCode(); String diaCode = diagnosis.getCode();
diagnosisMedicalGoodsListMapper.delete(new QueryWrapper<DiagnosisMedicalGoodsList>().eq("diagnosis_code", diaCode)); diagnosisMedicalGoodsListMapper.delete(new QueryWrapper<DiagnosisMedicalGoodsList>().eq("diagnosis_code", diaCode));
diagnosisMedicalItemListMapper.delete(new QueryWrapper<DiagnosisMedicalItemList>().eq("diagnosis_code", diaCode)); diagnosisMedicalItemListMapper.delete(new QueryWrapper<DiagnosisMedicalItemList>().eq("diagnosis_code", diaCode));
if (registration.getType().equals(RegistrationTypeEnum.Social.getType())){
//使之前上传的诊断失效
diagnosisService.uploadDiagnosis(diaCode, "0");
}
//重新插入 //重新插入
DiagnosisMedicalRecord medicalRecord = new DiagnosisMedicalRecord(); DiagnosisMedicalRecord medicalRecord = new DiagnosisMedicalRecord();
BeanUtils.copyProperties(dto.getDiagnosisMedicalRecord(), medicalRecord); BeanUtils.copyProperties(dto.getDiagnosisMedicalRecord(), medicalRecord);
diagnosisMedicalRecordMapper.updateById(medicalRecord); diagnosisMedicalRecordMapper.updateById(medicalRecord);
if (registration.getType().equals(RegistrationTypeEnum.Social.getType())){
//重新上传诊断
diagnosisService.uploadDiagnosis(diaCode, "1");
}
List<DiagnosisMedicalItemList> mdItmeList = new ArrayList<>(); List<DiagnosisMedicalItemList> mdItmeList = new ArrayList<>();
for (ChargeItemListVo item : dto.getItemDetail()) { for (ChargeItemListVo item : dto.getItemDetail()) {

View File

@ -8,6 +8,7 @@ import com.syjiaer.clinic.server.common.api.request.SocialRequest;
import com.syjiaer.clinic.server.common.config.Config; import com.syjiaer.clinic.server.common.config.Config;
import com.syjiaer.clinic.server.common.constants.Constants; import com.syjiaer.clinic.server.common.constants.Constants;
import com.syjiaer.clinic.server.common.enums.RegistrationStatusEnum; import com.syjiaer.clinic.server.common.enums.RegistrationStatusEnum;
import com.syjiaer.clinic.server.common.enums.RegistrationTypeEnum;
import com.syjiaer.clinic.server.common.exception.MessageException; import com.syjiaer.clinic.server.common.exception.MessageException;
import com.syjiaer.clinic.server.common.util.DebugUtil; import com.syjiaer.clinic.server.common.util.DebugUtil;
import com.syjiaer.clinic.server.common.util.StringUtil; import com.syjiaer.clinic.server.common.util.StringUtil;
@ -102,19 +103,19 @@ public class DiagnosisService extends BaseService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void save(DiagnosisDto saveDto) { public void save(DiagnosisDto saveDto) {
int regisId =saveDto.getRegistrationId(); int regisId = saveDto.getRegistrationId();
QueryWrapper<Diagnosis> queryWrapperRegis = new QueryWrapper<>(); QueryWrapper<Diagnosis> queryWrapperRegis = new QueryWrapper<>();
queryWrapperRegis.eq("registration_id", regisId); queryWrapperRegis.eq("registration_id", regisId);
Diagnosis regisDbDiagnosis = diagnosisMapper.selectOne(queryWrapperRegis); Diagnosis regisDbDiagnosis = diagnosisMapper.selectOne(queryWrapperRegis);
if(regisDbDiagnosis!=null){ if (regisDbDiagnosis != null) {
throw new MessageException("该挂号已完诊,请不要重复完诊"); throw new MessageException("该挂号已完诊,请不要重复完诊");
} }
if (saveDto == null){ if (saveDto == null) {
throw new MessageException("参数不能为空"); throw new MessageException("参数不能为空");
} }
if (saveDto.getDiagnosisMedicalRecord().getDiagnosisDetail() == null){ if (saveDto.getDiagnosisMedicalRecord().getDiagnosisDetail() == null) {
throw new MessageException("请填写诊断详情"); throw new MessageException("请填写诊断详情");
} }
//改变挂号单状态 //改变挂号单状态
@ -209,10 +210,11 @@ public class DiagnosisService extends BaseService {
DebugUtil.out(saveDto.getDiagnosisMedicalRecord().getDiagnosisDetail()); DebugUtil.out(saveDto.getDiagnosisMedicalRecord().getDiagnosisDetail());
List<SocialDiagnose> diagnoseList = JSONArray.parseArray(saveDto.getDiagnosisMedicalRecord().getDiagnosisDetail(),SocialDiagnose.class); List<SocialDiagnose> diagnoseList = JSONArray.parseArray(saveDto.getDiagnosisMedicalRecord().getDiagnosisDetail(), SocialDiagnose.class);
socialDiagnoseService.updateNumAddOne(diagnoseList); socialDiagnoseService.updateNumAddOne(diagnoseList);
itemService.updateNumAddOne(itemIds); itemService.updateNumAddOne(itemIds);
goodsService.updateNumAddOne(goodsIds); goodsService.updateNumAddOne(goodsIds);
} }
/** /**
@ -286,7 +288,7 @@ public class DiagnosisService extends BaseService {
return vo; return vo;
} }
public void uploadDiagnosis(String diagnosisCode) { public void uploadDiagnosis(String diagnosisCode,String vali_flag) {
Diagnosis diagnosis = diagnosisMapper.selectByCode(diagnosisCode); Diagnosis diagnosis = diagnosisMapper.selectByCode(diagnosisCode);
if (diagnosis == null) { if (diagnosis == null) {
throw new MessageException("诊断不存在"); throw new MessageException("诊断不存在");
@ -302,8 +304,6 @@ public class DiagnosisService extends BaseService {
} }
OrganizationSection section = organizationSectionMapper.selectById(patientRegistration.getOrganizationSectionId()); OrganizationSection section = organizationSectionMapper.selectById(patientRegistration.getOrganizationSectionId());
OrganizationMember doctor = organizationMemberMapper.selectById(patientRegistration.getOrganizationDoctorId()); OrganizationMember doctor = organizationMemberMapper.selectById(patientRegistration.getOrganizationDoctorId());
List<DiagnosisMedicalGoodsList> goodsLists = diagnosisMedicalGoodsListMapper.listByDiagnosisCode(diagnosisCode);
List<DiagnosisMedicalItemList> itemLists = diagnosisMedicalItemListMapper.listByDiagnosisCode(diagnosisCode);
LocalDateTime curTime = LocalDateTime.now(); LocalDateTime curTime = LocalDateTime.now();
IM2203A im2203A = new IM2203A(); IM2203A im2203A = new IM2203A();
@ -332,7 +332,7 @@ public class DiagnosisService extends BaseService {
diag.setDise_dor_no(doctor.getSocialMemberCode()); diag.setDise_dor_no(doctor.getSocialMemberCode());
diag.setDise_dor_name(doctor.getName()); diag.setDise_dor_name(doctor.getName());
diag.setDiag_time(curTime); diag.setDiag_time(curTime);
diag.setVali_flag("1"); diag.setVali_flag(vali_flag);
diagList.add(diag); diagList.add(diag);
} }
im2203A.setDiseinfo(diagList); im2203A.setDiseinfo(diagList);
@ -343,6 +343,9 @@ public class DiagnosisService extends BaseService {
} }
public Page<ChargeQueueVo> getChargeQueue(ChargeQueueQuery query) { public Page<ChargeQueueVo> getChargeQueue(ChargeQueueQuery query) {
QueryWrapper<Diagnosis> queryWrapper = new QueryWrapper<>(); QueryWrapper<Diagnosis> queryWrapper = new QueryWrapper<>();
if (query.getStatus() != null) { if (query.getStatus() != null) {