diff --git a/nursing-unit-api/src/main/java/com/nu/modules/pad/directiveplan/api/CareDirectiveApi.java b/nursing-unit-api/src/main/java/com/nu/modules/pad/directiveplan/api/CareDirectiveApi.java index 9fc82b0d..e87a35fb 100644 --- a/nursing-unit-api/src/main/java/com/nu/modules/pad/directiveplan/api/CareDirectiveApi.java +++ b/nursing-unit-api/src/main/java/com/nu/modules/pad/directiveplan/api/CareDirectiveApi.java @@ -6,6 +6,7 @@ import com.nu.entity.*; import com.nu.modules.config.IDirectiveConfigApi; import com.nu.modules.care.api.ICareDirectivePlanApi; import com.nu.modules.order.api.IDirectiveOrderApi; +import com.nu.modules.servicepackage.IDirectivePackageApi; import lombok.extern.slf4j.Slf4j; import org.apache.commons.compress.utils.Lists; import org.apache.commons.lang.StringUtils; @@ -34,6 +35,8 @@ public class CareDirectiveApi { private ICareDirectivePlanApi careDirectivePlanApi; @Autowired private IDirectiveOrderApi directiveOrderApi; + @Autowired + private IDirectivePackageApi directivePackageApi; /** * 获取护理类服务指令树-配置数据 @@ -57,6 +60,19 @@ public class CareDirectiveApi { return Result.OK(pageList); } + /** + * 获取指令包集合数据 + * + * @param careDirectivePackageEntity + * @return + */ + @GetMapping(value = "/getNcPackagelist") + public Result> getNcPackagelist(CareDirectivePackageEntity careDirectivePackageEntity) { + careDirectivePackageEntity.setInstructionTagId("1"); + List pageList = directivePackageApi.getNcPackagelist(careDirectivePackageEntity, null); + return Result.OK(pageList); + } + /** * PAD端保存长者标签 * diff --git a/nursing-unit-common/src/main/java/com/nu/entity/CareDirectivePackageEntity.java b/nursing-unit-common/src/main/java/com/nu/entity/CareDirectivePackageEntity.java index 3e236906..3a56851d 100644 --- a/nursing-unit-common/src/main/java/com/nu/entity/CareDirectivePackageEntity.java +++ b/nursing-unit-common/src/main/java/com/nu/entity/CareDirectivePackageEntity.java @@ -53,4 +53,10 @@ public class CareDirectivePackageEntity implements Serializable { // 服务指令集合 private List directivesList; + private String instructionTagId; + + private List directives; + + private String ids; + } diff --git a/nursing-unit-common/src/main/java/com/nu/entity/DirectiveEntity.java b/nursing-unit-common/src/main/java/com/nu/entity/DirectiveEntity.java new file mode 100644 index 00000000..0ef1d5f8 --- /dev/null +++ b/nursing-unit-common/src/main/java/com/nu/entity/DirectiveEntity.java @@ -0,0 +1,222 @@ +package com.nu.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; + +/** + * @Description: 服务指令 + * @Author: 张明远 + * @Date: 2025-03-13 + * @Version: V1.0 + */ +@Data +public class DirectiveEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + private String id; + /** + * 服务类别id + */ + private String categoryId; + /** + * 服务类型id + */ + private String typeId; + /** + * 分类标签 + */ + private String instructionTagId; + /** + * 服务指令名称 + */ + private String directiveName; + /** + * 收费价格 + */ + private java.math.BigDecimal tollPrice; + /** + * 提成价格 + */ + private java.math.BigDecimal comPrice; + /** + * 是否参与医保报销 0不报销 1报销 + */ + private String izReimbursement; + /** + * 是否参与机构优惠 0不参与 1参与 + */ + private String izPreferential; + /** + * 收费频次 1按次收费 2按天收费 + */ + private String chargingFrequency; + /** + * 排序 + */ + private Integer sort; + /** + * 服务描述 + */ + private String serviceContent; + /** + * 服务时长(分钟) + */ + private String serviceDuration; + /** + * 超时时长(分钟) + */ + private String timeoutDuration; + + /** + * 指令状态 + */ + private String status; + /** + * 是否启用 Y启用 N未启用 + */ + private String izEnabled; + /** + * 是否删除 + */ + private String delFlag; + /** + * 创建人 + */ + private String createBy; + /** + * 创建日期 + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private java.util.Date createTime; + /** + * 更新人 + */ + private String updateBy; + /** + * 更新日期 + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private java.util.Date updateTime; + /** + * 所属部门 + */ + private String sysOrgCode; + /** + * 指令音频文件 + */ + private String mp3File; + //语音文件是否变更 + private boolean mp3FileChanged; + /** + * 指令视频文件 + */ + private String mp4File; + //视频文件是否变更 + private boolean mp4FileChanged; + /** + * 服务指令图片 + */ + private String previewFile; + //服务指令图片是否变更 + private boolean previewFileChanged; + /** + * 即时指令图标 + */ + private String immediateFile; + /** + * 即时指令焦点图标 + */ + private String immediateFileFocus; + /** + * 指令音频文件md5 + */ + private String mp3FileMd5; + /** + * 指令视频文件md5 + */ + private String mp4FileMd5; + /** + * 服务指令图片大图md5 + */ + private String previewFileMd5; + /** + * 服务指令图片小图 + */ + private String previewFileSmall; + /** + * 服务指令图片小图md5 + */ + private String previewFileSmallMd5; + /** + * 即时指令图标md5 + */ + private String immediateFileMd5; + /** + * 即时指令图标md5 + */ + private String immediateFileFocusMd5; + /** + * 是否下载tplink视频 Y下载 N不下载 + */ + private String izDownTplink; + + //即时指令图标是否变更 + private boolean immediateFileChanged; + + //即时指令焦点图标是否变更 + private boolean immediateFileFocusChanged; + + //合并单元格用:类别合并的行数 + private Integer categoryRowSpan; + //合并单元格用:类型合并的行数 + private Integer typeRowSpan; + //合并单元格用:分类标签合并的行数 + private Integer instructionRowSpan; + //体型标签id,id,id + private String bodyTags; + //情绪标签id,id,id + private String emotionTags; + + //分类标签中文名称 + private String instructionName; + //服务类别中文名称 + private String categoryName; + //服务类型中文名称 + private String typeName; + //媒体资源存储路径名 + private String mediaFileSavePath; + //体型标签json字符串(前台封装好的 有id、label) + private String bodyTagsObj; + //情绪标签json字符串(前台封装好的 有id、label) + private String emotionTagsObj; + //护理分类名称 + private String instructionTagName; + private String syncIds; + private String excludeIds;//需要排除的ids + private String filterIzEnabled; + private String directiveId; + private boolean izAbnormal;//查询服务时长、收费价格、提成价格 都等于 0的数据 + private String compareOrgCode;//对比的机构编码 + private boolean ownExist;//本平台是否存在该指令 + private boolean targetExist;//目标平台是否存在该指令 +// @TableField(exist = false) +// private String cycleTypeShow; +// @TableField(exist = false) +// private String cycleTypeValue; + private String syncCode; +// /** +// * 指令类型 1日常护理 2周期护理 3即时护理 +// */ +// @Excel(name = "指令类型", width = 15) +// @ApiModelProperty(value = "指令类型") +// @Dict(dicCode = "period_type") +// private java.lang.String cycleType; +} diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/controller/NuConfigSuppliersApplyController.java b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/controller/NuConfigSuppliersApplyController.java index 99ee37b1..2e173365 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/controller/NuConfigSuppliersApplyController.java +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/controller/NuConfigSuppliersApplyController.java @@ -220,9 +220,10 @@ public class NuConfigSuppliersApplyController extends JeecgController audit(@RequestBody NuConfigSuppliersApply nuConfigSuppliersApply) { - nuConfigSuppliersApplyService.audit(nuConfigSuppliersApply); + String orgCode = nuConfigSuppliersApplyService.audit(nuConfigSuppliersApply); SuppliersInfoMQDto suppliersInfoMQDto = new SuppliersInfoMQDto(); BeanUtils.copyProperties(nuConfigSuppliersApply, suppliersInfoMQDto); + suppliersInfoMQDto.setSysOrgCode(orgCode); rabbitMQUtil.sendToExchange("nu.suppliers.updateAuditResult", "nu.suppliers.updateAuditResult", suppliersInfoMQDto); return Result.OK("编辑成功!"); } diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/service/INuConfigSuppliersApplyService.java b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/service/INuConfigSuppliersApplyService.java index b42f98a8..66316472 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/service/INuConfigSuppliersApplyService.java +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/service/INuConfigSuppliersApplyService.java @@ -16,5 +16,5 @@ public interface INuConfigSuppliersApplyService extends IService> getModifyInfo(NuConfigSuppliersApply suppliersApply); - void audit(NuConfigSuppliersApply nuConfigSuppliersApply); + String audit(NuConfigSuppliersApply nuConfigSuppliersApply); } diff --git a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/service/impl/NuConfigSuppliersApplyServiceImpl.java b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/service/impl/NuConfigSuppliersApplyServiceImpl.java index b57bf2b9..69b84b3e 100644 --- a/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/service/impl/NuConfigSuppliersApplyServiceImpl.java +++ b/nursing-unit-invoicing/nu-invoicing-biz/src/main/java/com/nu/modules/configSuppliersApply/service/impl/NuConfigSuppliersApplyServiceImpl.java @@ -111,7 +111,7 @@ public class NuConfigSuppliersApplyServiceImpl extends ServiceImpl qw = new QueryWrapper<>(); - qw.eq("suppliers_id",suppliersInfoMQDto.getSuppliersId()); + qw.eq("suppliers_id", suppliersInfoMQDto.getSuppliersId()); NuConfigSuppliersApply upData = new NuConfigSuppliersApply(); upData.setIzHistory("Y"); - nuConfigSuppliersApplyService.update(upData,qw); + nuConfigSuppliersApplyService.update(upData, qw); NuConfigSuppliersApply configSuppliersApply = new NuConfigSuppliersApply(); BeanUtils.copyProperties(suppliersInfoMQDto, configSuppliersApply); @@ -78,8 +79,8 @@ public class SuppliersMQListener { NuConfigSuppliersApply applyUpdateData = new NuConfigSuppliersApply(); applyUpdateData.setIzHistory("Y"); UpdateWrapper uw = new UpdateWrapper<>(); - uw.eq("suppliers_id",suppliersInfoMQDto.getSuppliersId()); - nuConfigSuppliersApplyService.update(applyUpdateData,uw); + uw.eq("suppliers_id", suppliersInfoMQDto.getSuppliersId()); + nuConfigSuppliersApplyService.update(applyUpdateData, uw); //插入信息变更审核数据 NuConfigSuppliersApply applyData = new NuConfigSuppliersApply(); @@ -114,6 +115,50 @@ public class SuppliersMQListener { } + @AutoLog(value = "供应商-信息变更通过") + @RabbitListener( + bindings = @QueueBinding( + value = @Queue(name = "#{suppliersDQNP.getUpSuppliersInfo()}"), + exchange = @Exchange(name = "nu.suppliers.upSuppliersInfo", type = ExchangeTypes.DIRECT), + key = "#{suppliersDQNP.getUpSuppApplyInfoKey()}" + ), + errorHandler = "suppliersMQExceptionHandler" + ) + public void upSuppliersInfo(SuppliersInfoMQDto suppliersInfoMQDto) { + try { + ConfigSuppliersInfo configSuppliersInfo = new ConfigSuppliersInfo(); + configSuppliersInfo.setId(suppliersInfoMQDto.getSuppliersId()); + configSuppliersInfo.setSuppliersName(suppliersInfoMQDto.getSuppliersName());//供应商名称 + configSuppliersInfo.setSuppliersNature(suppliersInfoMQDto.getSuppliersNature());//供应商性质 + configSuppliersInfo.setSuppliersAddress(suppliersInfoMQDto.getSuppliersAddress());//供应商地址 + configSuppliersInfo.setPersonInCharge(suppliersInfoMQDto.getPersonInCharge());//负责人 + configSuppliersInfo.setContactNumber(suppliersInfoMQDto.getContactNumber());//联系电话 + configSuppliersInfo.setOpeningBank(suppliersInfoMQDto.getOpeningBank());//开户行 + configSuppliersInfo.setOpeningBankNo(suppliersInfoMQDto.getOpeningBankNo());//开户行账号 + configSuppliersInfo.setImgPath(suppliersInfoMQDto.getImgPath());//资质照片 + configSuppliersInfoService.updateById(configSuppliersInfo); + QueryWrapper applyQW = new QueryWrapper<>(); + applyQW.eq("suppliers_id", suppliersInfoMQDto.getSuppliersId()); + applyQW.eq("iz_history", "N"); + NuConfigSuppliersApply applyOne = nuConfigSuppliersApplyService.getOne(applyQW); + //供应商变更信息时,如果本机构处于入驻申请 需要把信息变为最新的 + if (applyOne != null && "1".equals(applyOne.getApplyStatus())) { + applyOne.setSuppliersName(suppliersInfoMQDto.getSuppliersName());//供应商名称 + applyOne.setSuppliersNature(suppliersInfoMQDto.getSuppliersNature());//供应商性质 + applyOne.setSuppliersAddress(suppliersInfoMQDto.getSuppliersAddress());//供应商地址 + applyOne.setPersonInCharge(suppliersInfoMQDto.getPersonInCharge());//负责人 + applyOne.setContactNumber(suppliersInfoMQDto.getContactNumber());//联系电话 + applyOne.setOpeningBank(suppliersInfoMQDto.getOpeningBank());//开户行 + applyOne.setOpeningBankNo(suppliersInfoMQDto.getOpeningBankNo());//开户行账号 + applyOne.setImgPath(suppliersInfoMQDto.getImgPath());//资质照片 + nuConfigSuppliersApplyService.updateById(applyOne); + } + System.out.println("保存成功"); + } catch (Exception e) { + e.printStackTrace(); + } + + } } diff --git a/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/servicepackage/IDirectivePackageApi.java b/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/servicepackage/IDirectivePackageApi.java new file mode 100644 index 00000000..a7dc63d7 --- /dev/null +++ b/nursing-unit-services/nu-services-api/nu-services-local-api/src/main/java/com/nu/modules/servicepackage/IDirectivePackageApi.java @@ -0,0 +1,11 @@ +package com.nu.modules.servicepackage; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.nu.entity.CareDirectivePackageEntity; + +import java.util.List; +import java.util.Map; + +public interface IDirectivePackageApi { + public List getNcPackagelist(CareDirectivePackageEntity directivePackageEntity, List pageList); +} diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/controller/AppraisalController.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/controller/AppraisalController.java index 293741f0..fa711ad8 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/controller/AppraisalController.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/controller/AppraisalController.java @@ -5,13 +5,13 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; -import java.util.HashMap; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.nu.modules.biz.appraisal.entity.Appraisal; import com.nu.modules.biz.appraisal.entity.AppraisalSub; import com.nu.modules.biz.appraisal.service.IAppraisalService; import com.nu.modules.biz.appraisal.service.IAppraisalSubService; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.jeecgframework.poi.excel.ExcelImportUtil; import org.jeecgframework.poi.excel.def.NormalExcelConstants; import org.jeecgframework.poi.excel.entity.ExportParams; @@ -21,7 +21,6 @@ import org.jeecg.common.system.vo.LoginUser; import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; -import org.jeecg.common.system.query.QueryRuleEnum; import org.jeecg.common.util.oConvertUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -31,13 +30,10 @@ import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.extern.slf4j.Slf4j; - import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.jeecg.common.aspect.annotation.AutoLog; -import org.apache.shiro.authz.annotation.RequiresPermissions; /** @@ -59,7 +55,7 @@ public class AppraisalController { /** * 分页列表查询 * - * @param Appraisal + * @param appraisal * @param pageNo * @param pageSize * @param req @@ -68,37 +64,59 @@ public class AppraisalController { //@AutoLog(value = "服务指令工单-分页列表查询") @ApiOperation(value="服务指令工单-分页列表查询", notes="服务指令工单-分页列表查询") @GetMapping(value = "/list") - public Result> queryPageList(Appraisal Appraisal, + public Result> queryPageList(Appraisal appraisal, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { - // 自定义查询规则 - Map customeRuleMap = new HashMap<>(); - // 自定义多选的查询规则为:LIKE_WITH_OR - customeRuleMap.put("startTime", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("endTime", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("appraisalStatus", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("orderNo", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("orderType", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("optType", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("nuId", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("employeeId", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("elderId", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("izPackage", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("izFinish", QueryRuleEnum.LIKE_WITH_OR); - customeRuleMap.put("izTimeout", QueryRuleEnum.LIKE_WITH_OR); - QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(Appraisal, req.getParameterMap(),customeRuleMap); +// // 自定义查询规则 +// Map customeRuleMap = new HashMap<>(); +// // 自定义多选的查询规则为:LIKE_WITH_OR +// customeRuleMap.put("startTime", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("endTime", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("appraisalStatus", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("orderNo", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("orderType", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("optType", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("nuId", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("employeeId", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("elderId", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("izPackage", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("izFinish", QueryRuleEnum.LIKE_WITH_OR); +// customeRuleMap.put("izTimeout", QueryRuleEnum.LIKE_WITH_OR); +// QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(appraisal, req.getParameterMap(),customeRuleMap); +// Page page = new Page(pageNo, pageSize); +// if(appraisal.getStartTime()!=null){ +// queryWrapper.ge("create_time",appraisal.getStartTime()); +// } +// if(appraisal.getEndTime()!=null){ +// queryWrapper.le("create_time",appraisal.getEndTime()); +// } +// IPage pageList = service.page(page, queryWrapper); + Page page = new Page(pageNo, pageSize); - if(Appraisal.getStartTime()!=null){ - queryWrapper.ge("create_time",Appraisal.getStartTime()); - } - if(Appraisal.getEndTime()!=null){ - queryWrapper.le("create_time",Appraisal.getEndTime()); - } - IPage pageList = service.page(page, queryWrapper); + IPage pageList = service.findPage(page, appraisal); return Result.OK(pageList); } + /** + * 审核 + * + * @param appraisal + * @return + */ + @AutoLog(value = "服务指令工单-审核") + @ApiOperation(value="服务指令工单-审核", notes="服务指令工单-审核") +// @RequiresPermissions("Appraisal:nu_biz_nu_directive_order:edit") + @RequestMapping(value = "/approval", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result approval(@RequestBody Appraisal appraisal) { + Appraisal AppraisalEntity = service.getById(appraisal.getId()); + if(AppraisalEntity==null) { + return Result.error("未找到对应数据"); + } + service.updateById(appraisal); + return Result.OK("审核成功!"); + } + /** * 添加 * @@ -199,13 +217,13 @@ public class AppraisalController { * 导出excel * * @param request - * @param Appraisal + * @param appraisal */ // @RequiresPermissions("Appraisal:nu_biz_nu_directive_order:exportXls") @RequestMapping(value = "/exportXls") - public ModelAndView exportXls(HttpServletRequest request, Appraisal Appraisal) { + public ModelAndView exportXls(HttpServletRequest request, Appraisal appraisal) { // Step.1 组装查询条件查询数据 - QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(Appraisal, request.getParameterMap()); + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(appraisal, request.getParameterMap()); LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); //配置选中数据查询条件 @@ -222,16 +240,16 @@ public class AppraisalController { for (Appraisal main : AppraisalList) { Appraisal vo = new Appraisal(); BeanUtils.copyProperties(main, vo); - List nuBizNuAppraisalSubList = subService.selectByMainId(main.getId()); - vo.setAppraisalSubList(nuBizNuAppraisalSubList); + List appraisalSubList = subService.selectByMainId(main.getId()); + vo.setAppraisalSubList(appraisalSubList); pageList.add(vo); } // Step.4 AutoPoi 导出Excel ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); - mv.addObject(NormalExcelConstants.FILE_NAME, "服务指令工单列表"); + mv.addObject(NormalExcelConstants.FILE_NAME, "服务考核列表"); mv.addObject(NormalExcelConstants.CLASS, Appraisal.class); - mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("服务指令工单数据", "导出人:"+sysUser.getRealname(), "服务指令工单")); + mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("服务考核数据", "导出人:"+sysUser.getRealname(), "服务考核")); mv.addObject(NormalExcelConstants.DATA_LIST, pageList); return mv; } diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/entity/Appraisal.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/entity/Appraisal.java index fa95fd86..736a6af1 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/entity/Appraisal.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/entity/Appraisal.java @@ -186,6 +186,9 @@ public class Appraisal implements Serializable { /**考核人*/ @Excel(name = "考核人", width = 15) private String appraisalName; + /**考核意见*/ + @Excel(name = "考核意见", width = 15) + private String appraisalComments; @TableField(exist = false) private List appraisalSubList; diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/AppraisalMapper.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/AppraisalMapper.java index 131a1a15..e0a2fa07 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/AppraisalMapper.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/AppraisalMapper.java @@ -1,7 +1,9 @@ package com.nu.modules.biz.appraisal.mapper; -import java.util.List; import com.nu.modules.biz.appraisal.entity.Appraisal; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -13,4 +15,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface AppraisalMapper extends BaseMapper { + IPage findPage(Page page,@Param("params") Appraisal appraisal); + } diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/AppraisalSubMapper.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/AppraisalSubMapper.java index d3a80b1b..c8100aca 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/AppraisalSubMapper.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/AppraisalSubMapper.java @@ -19,7 +19,7 @@ public interface AppraisalSubMapper extends BaseMapper { * @param mainId 主表id * @return boolean */ - public boolean deleteByMainId(@Param("mainId") String mainId); + boolean deleteByMainId(@Param("mainId") String mainId); /** * 通过主表id查询子表数据 @@ -27,5 +27,5 @@ public interface AppraisalSubMapper extends BaseMapper { * @param mainId 主表id * @return List */ - public List selectByMainId(@Param("mainId") String mainId); + List selectByMainId(@Param("mainId") String mainId); } diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/xml/AppraisalMapper.xml b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/xml/AppraisalMapper.xml index 2c205b3b..c16f06df 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/xml/AppraisalMapper.xml +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/mapper/xml/AppraisalMapper.xml @@ -2,4 +2,274 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SELECT o.id, + o.order_no, + o.order_type, + o.opt_type, + o.pool_id, + o.biz_id, + o.biz_type, + o.nu_id, + o.nu_name, + o.elder_id, + o.elder_name, + o.employee_id, + o.employee_name, + o.directive_id, + o.directive_name, + o.cycle_type_id, + o.cycle_type, + o.cycle_value, + o.preview_file, + o.preview_file_small, + o.mp3_file, + o.mp4_file, + o.service_duration, + o.service_content, + o.iz_package, + o.toll_price, + o.com_price, + o.real_com_price, + o.start_time, + o.end_time, + o.begin_emp, + o.begin_time, + o.finish_emp, + o.finish_time, + o.iz_start, + o.iz_finish, + o.initiator_id, + o.initiator_name, + o.create_by, + o.create_emp, + o.create_time, + o.update_by, + o.update_emp, + o.update_time, + o.del_flag, + o.remarks, + o.timeout_duration, + o.iz_timeout, + o.opt_ids, + o.opt_names, + o.manually_pic_path, + o.manually_mp4_path, + ifnull(o.appraisal_status,'0') as appraisal_status, + o.appraisal_time, + o.appraisal_id, + o.appraisal_name, + o.appraisal_comments, + s.id as sub_id, + s.order_no as sub_order_no, + s.order_type as sub_order_type, + s.opt_type as sub_opt_type, + s.main_id as sub_main_id, + s.nu_id as sub_nu_id, + s.nu_name as sub_nu_name, + s.elder_id as sub_elder_id, + s.elder_name as sub_elder_name, + s.employee_id as sub_employee_id, + s.employee_name as sub_employee_name, + s.instruction_tag_id as sub_instruction_tag_id, + s.instruction_tag_name as sub_instruction_tag_name, + s.category_id as sub_category_id, + s.category_name as sub_category_name, + s.type_id as sub_type_id, + s.type_name as sub_type_name, + s.directive_id as sub_directive_id, + s.directive_name as sub_directive_name, + s.cycle_type_id as sub_cycle_type_id, + s.cycle_type as sub_cycle_type, + s.cycle_value as sub_cycle_value, + s.preview_file as sub_preview_file, + s.preview_file_small as sub_preview_file_small, + s.mp3_file as sub_mp3_file, + s.mp4_file as sub_mp4_file, + s.service_duration as sub_service_duration, + s.service_content as sub_service_content, + s.toll_price as sub_toll_price, + s.com_price as sub_com_price, + s.real_com_price as sub_real_com_price, + s.package_id as sub_package_id, + s.package_name as sub_package_name, + s.iz_package as sub_iz_package, + s.start_time as sub_start_time, + s.end_time as sub_end_time, + s.begin_time as sub_begin_time, + s.finish_time as sub_finish_time, + s.iz_start as sub_iz_start, + s.iz_finish as sub_iz_finish, + s.timeout_duration as sub_timeout_duration, + s.create_by as sub_create_by, + s.create_time as sub_create_time, + s.update_by as sub_update_by, + s.update_time as sub_update_time, + s.del_flag as sub_del_flag, + s.tplink_path as sub_tplink_path, + s.manually_pic_path as sub_manually_pic_path, + s.manually_mp4_path as sub_manually_mp4_path + FROM nu_biz_nu_directive_order o + LEFT JOIN nu_biz_nu_directive_order_sub s ON o.id = s.main_id + + + + \ No newline at end of file diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/IAppraisalService.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/IAppraisalService.java index e02560a9..3aeeaeea 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/IAppraisalService.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/IAppraisalService.java @@ -1,9 +1,10 @@ package com.nu.modules.biz.appraisal.service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.nu.modules.biz.appraisal.entity.Appraisal; import com.nu.modules.biz.appraisal.entity.AppraisalSub; - import java.io.Serializable; import java.util.Collection; import java.util.List; @@ -16,34 +17,36 @@ import java.util.List; */ public interface IAppraisalService extends IService { + IPage findPage(Page page, Appraisal appraisal); + /** * 添加一对多 * - * @param Appraisal + * @param appraisal * @param appraisalSubList */ - public void saveMain(Appraisal Appraisal,List appraisalSubList) ; + void saveMain(Appraisal appraisal,List appraisalSubList) ; /** * 修改一对多 * - * @param Appraisal + * @param appraisal * @param appraisalSubList */ - public void updateMain(Appraisal Appraisal,List appraisalSubList); + void updateMain(Appraisal appraisal,List appraisalSubList); /** * 删除一对多 * * @param id */ - public void delMain (String id); + void delMain (String id); /** * 批量删除一对多 * * @param idList */ - public void delBatchMain (Collection idList); + void delBatchMain (Collection idList); } diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/IAppraisalSubService.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/IAppraisalSubService.java index b0af90b5..3bac94a2 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/IAppraisalSubService.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/IAppraisalSubService.java @@ -18,5 +18,5 @@ public interface IAppraisalSubService extends IService { * @param mainId 主表id * @return List */ - public List selectByMainId(String mainId); + List selectByMainId(String mainId); } diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/impl/AppraisalServiceImpl.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/impl/AppraisalServiceImpl.java index 14b228d4..ad590b34 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/impl/AppraisalServiceImpl.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/appraisal/service/impl/AppraisalServiceImpl.java @@ -1,10 +1,13 @@ package com.nu.modules.biz.appraisal.service.impl; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.nu.modules.biz.appraisal.entity.Appraisal; import com.nu.modules.biz.appraisal.entity.AppraisalSub; import com.nu.modules.biz.appraisal.mapper.AppraisalMapper; import com.nu.modules.biz.appraisal.mapper.AppraisalSubMapper; import com.nu.modules.biz.appraisal.service.IAppraisalService; +import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; @@ -24,15 +27,20 @@ public class AppraisalServiceImpl extends ServiceImpl findPage(Page page, Appraisal appraisal){ + return baseMapper.findPage(page,appraisal); + } + @Override @Transactional(rollbackFor = Exception.class) - public void saveMain(Appraisal Appraisal, List AppraisalSubList) { - baseMapper.insert(Appraisal); - if(AppraisalSubList!=null && AppraisalSubList.size()>0) { - for(AppraisalSub entity:AppraisalSubList) { + public void saveMain(Appraisal appraisal, List appraisalSubList) { + baseMapper.insert(appraisal); + if(appraisalSubList!=null && appraisalSubList.size()>0) { + for(AppraisalSub entity:appraisalSubList) { //外键设置 - entity.setMainId(Appraisal.getId()); + entity.setMainId(appraisal.getId()); subMapper.insert(entity); } } @@ -40,17 +48,17 @@ public class AppraisalServiceImpl extends ServiceImpl AppraisalSubList) { - baseMapper.updateById(Appraisal); + public void updateMain(Appraisal appraisal,List appraisalSubList) { + baseMapper.updateById(appraisal); //1.先删除子表数据 - subMapper.deleteByMainId(Appraisal.getId()); + subMapper.deleteByMainId(appraisal.getId()); //2.子表数据重新插入 - if(AppraisalSubList!=null && AppraisalSubList.size()>0) { - for(AppraisalSub entity:AppraisalSubList) { + if(appraisalSubList!=null && appraisalSubList.size()>0) { + for(AppraisalSub entity:appraisalSubList) { //外键设置 - entity.setMainId(Appraisal.getId()); + entity.setMainId(appraisal.getId()); subMapper.insert(entity); } } diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/care/service/impl/CareDirectivePlanServiceImpl.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/care/service/impl/CareDirectivePlanServiceImpl.java index 526286d6..d88d0f2a 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/care/service/impl/CareDirectivePlanServiceImpl.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/biz/plan/care/service/impl/CareDirectivePlanServiceImpl.java @@ -3,6 +3,9 @@ package com.nu.modules.biz.plan.care.service.impl; import cn.hutool.core.bean.BeanUtil; import com.nu.entity.*; import com.nu.modules.biz.datapool.service.ICareDataPoolService; +import com.nu.modules.config.directivepackage.service.IDirectivePackageService; +import com.nu.modules.config.directivepackage.service.impl.DirectivePackageServiceImpl; +import org.apache.commons.compress.utils.Lists; import org.springframework.beans.BeanUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.nu.modules.biz.plan.care.entity.ElderTagPlan; @@ -14,7 +17,10 @@ import com.nu.modules.care.api.ICareDirectivePlanApi; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.util.CollectionUtils; + import java.util.*; +import java.util.stream.Collectors; /** * @Description: 护理单元客户配置服务指令 @@ -29,6 +35,8 @@ public class CareDirectivePlanServiceImpl extends ServiceImpl getPlanList(CareDirectiveEntity careDirectiveEntity) { @@ -36,6 +44,34 @@ public class CareDirectivePlanServiceImpl extends ServiceImpl groupList = baseMapper.list(careDirectiveEntity); + if (!CollectionUtils.isEmpty(groupList)) { + //将包的指令塞进去(写一个sql效率低) + CareDirectivePackageEntity queryParams = new CareDirectivePackageEntity(); + List ids = Lists.newArrayList(); + groupList.stream().forEach(item -> { + CareDirectivePackageEntity d_ = new CareDirectivePackageEntity(); + if ("Y".equals(item.getIzPackage())) { + d_.setId(item.getDirectiveId()); + ids.add(d_); + } + }); + List packagelist = directivePackageService.getNcPackagelist(queryParams, ids); + if (!CollectionUtils.isEmpty(groupList)) { + Map packageMap = packagelist.stream() + .collect(Collectors.toMap( + CareDirectivePackageEntity::getId, + entity -> entity, + (existing, replacement) -> existing + )); + groupList.stream().forEach(item -> { + if ("Y".equals(item.getIzPackage())) { + List directives = packageMap.get(item.getDirectiveId()).getDirectives(); + item.setDirectivesList(BeanUtil.copyToList(directives, CareDirectivePlan.class)); + } + }); + } + } + resMap.put("serviceList", groupList);//服务指令计划 //即时指令 careDirectiveEntity.setQueryType("instant"); @@ -57,6 +93,7 @@ public class CareDirectivePlanServiceImpl extends ServiceImpl del_flag = '0' - and id in - - #{item.id} - + + and id in + + #{item.id} + + and instruction_tag_id = #{directivePackage.instructionTagId} diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/directivepackage/service/impl/DirectivePackageServiceImpl.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/directivepackage/service/impl/DirectivePackageServiceImpl.java index 5220d481..d475ae37 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/directivepackage/service/impl/DirectivePackageServiceImpl.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/directivepackage/service/impl/DirectivePackageServiceImpl.java @@ -1,12 +1,17 @@ package com.nu.modules.config.directivepackage.service.impl; +import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.Lists; +import com.nu.entity.CareDirectivePackageEntity; import com.nu.modules.config.directivepackage.entity.DirectivePackage; import com.nu.modules.config.directivepackage.mapper.DirectivePackageMapper; import com.nu.modules.config.directivepackage.service.IDirectivePackageService; +import com.nu.modules.servicepackage.IDirectivePackageApi; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; import java.util.List; @@ -17,7 +22,7 @@ import java.util.List; * @Version: V1.0 */ @Service -public class DirectivePackageServiceImpl extends ServiceImpl implements IDirectivePackageService { +public class DirectivePackageServiceImpl extends ServiceImpl implements IDirectivePackageService, IDirectivePackageApi { @Override public void saveDirectives(DirectivePackage directivePackage) { @@ -35,7 +40,7 @@ public class DirectivePackageServiceImpl extends ServiceImpl pageList) { - List record = baseMapper.queryList(directivePackage,pageList.getRecords()); + List record = baseMapper.queryList(directivePackage, pageList.getRecords()); pageList.setRecords(record); } @@ -49,4 +54,17 @@ public class DirectivePackageServiceImpl extends ServiceImpl getNcPackagelist(CareDirectivePackageEntity directivePackageEntity, List pageList) { + DirectivePackage directivePackage = new DirectivePackage(); + BeanUtils.copyProperties(directivePackageEntity, directivePackage); + List ids = Lists.newArrayList(); + if (!CollectionUtils.isEmpty(pageList)) { + ids = BeanUtil.copyToList(pageList, DirectivePackage.class); + } else { + ids = null; + } + List record = baseMapper.queryList(directivePackage, ids); + return BeanUtil.copyToList(record, CareDirectivePackageEntity.class); + } }