kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/vo/UserProductData.java
New file @@ -0,0 +1,25 @@ package com.kidgrow.oprationcenter.vo; import com.baomidou.mybatisplus.extension.activerecord.Model; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.util.Date; @Data @AllArgsConstructor @NoArgsConstructor public class UserProductData extends Model<UserProductData> { private static final long serialVersionUID = 1L; /** * 套餐是否到期 */ private boolean isEnd; /** * 最晚到期时间 */ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") private Date maxEndTime; } kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderDetailService.java
@@ -71,5 +71,6 @@ UserProductDetail getUserProductDetail(Long hospitalId, Long departmentId); ResultBody biUserNowProduct(Long hospitalId,Long departmentId); ResultBody UserProductDetailData(Long hospitalId,Long departmentId); } kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ConsumptionRecordServiceImpl.java
@@ -107,8 +107,6 @@ if (VateParams(consumptionRequest)) { //先获取这个业务关联的扣费记录 List<ConsumptionRecord> consumptionRecordList = GetBusinessConsumptionList(consumptionRequest.getBusinessId()); Long hospitalId = Long.valueOf(httpServletRequest.getHeader(SecurityConstants.USER_HOSPITAL_ID_HEADER)); Long departmentId = Long.valueOf(httpServletRequest.getHeader(SecurityConstants.USER_DEP_ID_HEADER)); //1.先检查是否已经扣费 if (!isBeforeDeduction(consumptionRecordList, ConsumptionConstant.DEDUCTION)) { //2.没有扣费,检查是否已经预扣费 @@ -171,7 +169,7 @@ //先获取这个业务关联的扣费记录 List<ConsumptionRecord> consumptionRecordList = GetBusinessConsumptionList(consumptionRequest.getBusinessId()); Long hospitalId = Long.valueOf(httpServletRequest.getHeader(SecurityConstants.USER_HOSPITAL_ID_HEADER)); Long departmentId = Long.valueOf(httpServletRequest.getHeader(SecurityConstants.USER_DEP_ID_HEADER)); //1.先检查是否已经扣费 if (!isBeforeDeduction(consumptionRecordList, ConsumptionConstant.DEDUCTION)) { //2.没有扣费,检查是否已经预扣费 @@ -515,7 +513,7 @@ */ private Boolean beforeConsumption(ConsumptionRequest consumptionRequest) { Long hospitalId = Long.valueOf(httpServletRequest.getHeader(SecurityConstants.USER_HOSPITAL_ID_HEADER)); Long departmentId = Long.valueOf(httpServletRequest.getHeader(SecurityConstants.USER_DEP_ID_HEADER)); ProductOrderDetail productOrderDetail = deductionDepartmentProduct(consumptionRequest.getConsumptionCount()); if (productOrderDetail != null) { ConsumptionRecord consumptionRecord = new ConsumptionRecord(); kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java
@@ -7,16 +7,12 @@ import com.kidgrow.common.service.impl.SuperServiceImpl; import com.kidgrow.common.utils.DateUtils; import com.kidgrow.oprationcenter.feign.DiagnosticService; import com.kidgrow.oprationcenter.feign.RoleOrganizationService; import com.kidgrow.oprationcenter.mapper.ConsumptionRecordMapper; import com.kidgrow.oprationcenter.mapper.ProductOrderDetailMapper; import com.kidgrow.oprationcenter.model.ConsumptionRecord; import com.kidgrow.oprationcenter.model.ProductOrderDetail; import com.kidgrow.oprationcenter.service.IProductOrderDetailService; import com.kidgrow.oprationcenter.vo.DiagnosisRecord; import com.kidgrow.oprationcenter.vo.GroupProductDetail; import com.kidgrow.oprationcenter.vo.ProductOrderJoinDetail; import com.kidgrow.oprationcenter.vo.UserProductDetail; import com.kidgrow.oprationcenter.vo.*; import com.kidgrow.usercenter.feign.SysDoctorService; import com.kidgrow.usercenter.feign.SysHospitalService; import com.kidgrow.usercenter.model.SysHospital; @@ -25,10 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.*; import java.util.stream.Collectors; /** @@ -44,8 +37,6 @@ public class ProductOrderDetailServiceImpl extends SuperServiceImpl<ProductOrderDetailMapper, ProductOrderDetail> implements IProductOrderDetailService { @Autowired DiagnosticService diagnosticService; @Autowired private RoleOrganizationService roleOrganizationService; @Autowired private SysDoctorService sysDoctorService; @Autowired @@ -74,6 +65,30 @@ } /** * 判定医院科室的套餐是否到期 以及到期时间 * @param hospitalId * @param departmentId * @return */ public ResultBody UserProductDetailData(Long hospitalId,Long departmentId) { UserProductData userProductData=new UserProductData(); userProductData.setEnd(true); UserProductDetail userProductDetail = this.getUserProductDetail(hospitalId, departmentId); if (userProductDetail != null) { //合并集合 userProductDetail.getProductOrderJoinDetailListShare().addAll(userProductDetail.getProductOrderJoinDetailsListDep()); List<ProductOrderJoinDetail> productOrderJoinDetailList = userProductDetail.getProductOrderJoinDetailListShare(); if (productOrderJoinDetailList.size() > 0) { userProductData.setEnd(false); //合并后按id排序并筛除已用完的套餐 List<ProductOrderJoinDetail> productOrderJoinDetailsNewList = productOrderJoinDetailList.stream().filter(f -> f.getAilightCount() >= 0).sorted(Comparator.comparing(ProductOrderJoinDetail::getProEndtime).reversed()).collect(Collectors.toList()); userProductData.setMaxEndTime(productOrderJoinDetailsNewList.get(0).getProEndtime()); } } return ResultBody.ok().data(userProductData); } /** * 获取诊断列表 * @param params * @return kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java
@@ -107,6 +107,21 @@ } /** * 获取医院套餐是否到期和到期时间 * data内 isend为true说明套餐到期 * endtime上套餐的到期时间 * @param hospitalId * @param departmentId * @return */ @ApiOperation(value = "获取医院套餐是否到期和到期时间") @GetMapping("/UserProductDetailData") public ResultBody UserProductDetailData(@RequestParam Long hospitalId,Long departmentId) { return productOrderDetailService.UserProductDetailData(hospitalId,departmentId); } /** * 查询 */ @ApiOperation(value = "查询") kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/vo/HospitalDoctorListVo.java
@@ -37,4 +37,6 @@ private String userName; private boolean isDefaultAuth; private boolean enabled; @JsonSerialize(using = ToStringSerializer.class) private Long roleId; } kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysUserMapper.java
@@ -47,7 +47,9 @@ * 获取医院科室下的所有有效的医生 * @param hospitalId * @param departmentId * @param roleId1 管理员医生角色id * @param roleId2 普通医生角色id * @return */ List<HospitalDoctorListVo> hospitalDoctorList(@Param("hospitalId") Long hospitalId, @Param("departmentId") Long departmentId); List<HospitalDoctorListVo> hospitalDoctorList(@Param("hospitalId") Long hospitalId, @Param("departmentId") Long departmentId,@Param("roleId1") Long roleId1,@Param("roleId2") Long roleId2); } kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
@@ -86,7 +86,6 @@ private SysRoleMapper sysRoleMapper; @Autowired private SysUserRoleMapper sysUserRoleMapper; @Override public LoginAppUser findByUsername(String username) { SysUser sysUser = this.selectByUsername(username); @@ -648,7 +647,7 @@ } //创建人id Long createUserId = CommonConstant.CREATE_USER_ID; //创建人id //创建人名称 String createUserName = CommonConstant.CREATE_USER_NAME; //是否注册用户 Boolean isReg = false; @@ -912,7 +911,7 @@ } /** * 获取医院科室下的所有有效的医生 * 获取医院科室下的所有H端有效的医生 * * @param hospitalId * @param departmentId @@ -921,7 +920,7 @@ @Override public ResultBody hospitalDoctorList(Long hospitalId, Long departmentId) { if (hospitalId > 0 && departmentId > 0) { List<HospitalDoctorListVo> listVoList = baseMapper.hospitalDoctorList(hospitalId, departmentId); List<HospitalDoctorListVo> listVoList = baseMapper.hospitalDoctorList(hospitalId, departmentId,CommonConstant.HOSPITAL_DOCTOR_ID,CommonConstant.HOSPITAL_ADMIN_ID); return ResultBody.ok().data(listVoList); } else { return ResultBody.failed("医院数据有误"); kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysUserMapper.xml
@@ -163,10 +163,14 @@ us.mobile, us.username, us.is_default_auth, us.enabled us.enabled, roleuser.role_id FROM sys_doctor dc LEFT JOIN sys_user us ON dc.user_id = us.id where dc.is_del=0 and dc.hospital_id=#{hospitalId} and dc.department_id=#{departmentId} LEFT JOIN sys_role_user roleuser ON roleuser.user_id=us.id where dc.is_del=0 and dc.enabled=1 and dc.hospital_id=1 and dc.department_id=1 and us.enabled=1 and dc.hospital_id=#{hospitalId} and dc.department_id=#{departmentId} and (role_id=#{roleId1} or role_id=#{roleId2}) </select> </mapper>