From 4f53785c3f435d49829782bbbc5cc5ffd96ed9b9 Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期三, 13 九月 2023 16:48:19 +0800 Subject: [PATCH] zjh 2023/09/13---5 --- ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjOrderDetailServiceImpl.java | 7 +++ ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | 14 ++++--- ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjAsyncServiceImpl.java | 73 ++++++++++++++++++++++++++++++++++++ ltkj-hosp/src/main/java/com/ltkj/hosp/service/TjAsyncService.java | 3 + ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderDetailMapper.java | 20 ++++++++++ ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjOrderDetailService.java | 3 + 6 files changed, 114 insertions(+), 6 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java index e28c260..4c7dad4 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java @@ -132,7 +132,7 @@ /** * 鏌ヨ浣撴璁板綍鍒楄〃 */ - @PreAuthorize("@ss.hasPermi('hosp:order:list')") +// @PreAuthorize("@ss.hasPermi('hosp:order:list')") @GetMapping("/list") @ApiOperation(value = "鏌ヨ浣撴璁板綍鍒楄〃(榛樿)") public TableDataInfo list(TjOrder tjOrder) { @@ -703,7 +703,7 @@ /** * 瀵煎嚭浣撴璁板綍鍒楄〃 */ - @PreAuthorize("@ss.hasPermi('hosp:order:export')") +// @PreAuthorize("@ss.hasPermi('hosp:order:export')") @Log(title = "浣撴璁板綍", businessType = BusinessType.EXPORT) @PostMapping("/export") @ApiOperation(value = "瀵煎嚭浣撴璁板綍鍒楄〃") @@ -717,7 +717,7 @@ /** * 鑾峰彇浣撴璁板綍璇︾粏淇℃伅 */ - @PreAuthorize("@ss.hasPermi('hosp:order:query')") +// @PreAuthorize("@ss.hasPermi('hosp:order:query')") @GetMapping(value = "/{orderId}") @ApiOperation(value = "鑾峰彇浣撴璁板綍璇︾粏淇℃伅") public AjaxResult getInfo(@PathVariable("orderId") Long orderId) { @@ -858,7 +858,9 @@ //涓汉 if ("2".equals(tjOrder.getTjType())) { - asyncService.extracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); +// asyncService.extracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); + + asyncService.newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); } return AjaxResult.success(tjNumber); } @@ -869,7 +871,7 @@ /** * 淇敼浣撴璁板綍 */ - @PreAuthorize("@ss.hasPermi('hosp:order:edit')") +// @PreAuthorize("@ss.hasPermi('hosp:order:edit')") @Log(title = "浣撴璁板綍", businessType = BusinessType.UPDATE) @PutMapping @ApiOperation(value = "淇敼浣撴璁板綍") @@ -880,7 +882,7 @@ /** * 鍒犻櫎浣撴璁板綍 */ - @PreAuthorize("@ss.hasPermi('hosp:order:remove')") +// @PreAuthorize("@ss.hasPermi('hosp:order:remove')") @Log(title = "浣撴璁板綍", businessType = BusinessType.DELETE) @DeleteMapping("/{orderIds}") @ApiOperation(value = "鍒犻櫎浣撴璁板綍") diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderDetailMapper.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderDetailMapper.java index f667ea3..2b4af99 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderDetailMapper.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjOrderDetailMapper.java @@ -106,4 +106,24 @@ @Select("SELECT * FROM tj_order_detail WHERE exception_desc='1'AND deleted='0' AND create_time BETWEEN IFNULL('${startDate}','1970-01-01 00:00:00') AND IFNULL('${endDate}',SYSDATE())") List<TjOrderDetail> getTjOrderDetailList(@Param("startDate") String startDate,@Param("endDate") String endDate); + + + @Select("\tINSERT INTO tj_order_detail(\n" + + "\torder_detail_id,\n" + + " order_id,\n" + + " pro_id,\n" + + " pro_result,\n" + + " tj_status,\n" + + " create_time,\n" + + " create_by,\n" + + " is_sampling,\n" + + " create_id,\n" + + " pro_type) \n" + + " \n" + + " SELECT a.id,#{orderId},a.pro_id,IFNULL(b.pro_default,''),'0',SYSDATE(),#{userName},b.is_sampling,#{userId},IFNULL(a.pac_id,0) FROM tb_transition a LEFT JOIN tj_project b ON a.pro_id=b.pro_id WHERE a.cus_id=#{cusId} \n" + + "\t\t\n" + + "\tUNION\n" + + " \n" + + "\tSELECT DISTINCT a.parent_pro_id,#{orderId},a.parent_pro_id,IFNULL(b.pro_default,''),'0',SYSDATE(),#{userName},b.is_sampling,#{userId},IFNULL(a.pac_id,0) FROM tb_transition a LEFT JOIN tj_project b ON a.parent_pro_id=b.pro_id WHERE a.cus_id=#{cusId}") + List<TjOrderDetail> saveTjOrderDetailsByCusId(@Param("cusId")String cusId,@Param("orderId")String orderId,@Param("userName")String userName,@Param("userId") String userId); } diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjOrderDetailService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjOrderDetailService.java index e0aa55a..2c6aeb4 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjOrderDetailService.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjOrderDetailService.java @@ -3,6 +3,7 @@ import java.util.List; import com.baomidou.mybatisplus.extension.service.IService; +import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.hosp.domain.TjOrderDetail; import com.ltkj.hosp.domain.TjProject; import org.apache.ibatis.annotations.Select; @@ -89,4 +90,6 @@ List<TjOrderDetail> getTjOrderDetailList(String startDate,String endDate); + + List<TjOrderDetail> saveTjOrderDetailsByCusId(String cusId,String orderId,String userName, String userId); } diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/TjAsyncService.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/TjAsyncService.java index fde8b72..cf33c20 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/TjAsyncService.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/TjAsyncService.java @@ -18,6 +18,9 @@ //涓汉鐧昏鏃跺紓姝ュ鐞� void extracted(TjOrder tjOrder, TjCustomer tjCustomer, BigDecimal discount, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater); + //涓汉鐧昏鏃跺紓姝ュ鐞� + void newSaveextracted(TjOrder tjOrder, TjCustomer tjCustomer, BigDecimal discount, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater); + //鍥綋鐧昏鏃跺紓姝ュ鐞� void ttextracted(TjOrder tjOrder, TjCustomer tjCustomer, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater); diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjAsyncServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjAsyncServiceImpl.java index 4a2a106..71727b9 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjAsyncServiceImpl.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjAsyncServiceImpl.java @@ -193,6 +193,79 @@ } @Override + public void newSaveextracted(TjOrder tjOrder, TjCustomer tjCustomer, BigDecimal discount, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) { + long l = System.currentTimeMillis(); + + LambdaQueryWrapper<TjAskMedicalHistory> wq=new LambdaQueryWrapper<>(); + wq.eq(TjAskMedicalHistory::getCusId,tjCustomer.getCusId()); + wq.isNull(TjAskMedicalHistory::getTjNum); + TjAskMedicalHistory history = tjAskMedicalHistoryService.getOne(wq); + if(null !=history){ + history.setTjNum(tjOrder.getTjNumber()); + tjAskMedicalHistoryService.updateById(history); + } + + List<TbTransition> tbTransitionList =null; + if (redisCache.hasKey(tjCustomer.getCusIdcard())) { + tbTransitionList = redisCache.getCacheList(tjCustomer.getCusIdcard()); + redisCache.deleteObject(tjCustomer.getCusIdcard()); + }else { + LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>(); + wqq.eq(TbTransition::getCusId, tjCustomer.getCusIdcard()); + tbTransitionList = transitionService.list(wqq); + } + if (redisCache.hasKey(tjCustomer.getCusIdcard() + "cusId")) + redisCache.deleteObject(tjCustomer.getCusIdcard() + "cusId"); + if (null != tbTransitionList && tbTransitionList.size() > 0) { + + tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(),String.valueOf(tjOrder.getOrderId()),sysUser.getNickName(),String.valueOf(sysUser.getUserId())); + + //淇敼姣忛」鐨勫師浠风幇浠� + for (TbTransition transition : tbTransitionList) { + transition.setOrdPrice(transition.getNowPrice()); + transition.setNowPrice(transition.getNowPrice().multiply(discount)); + transitionService.updateById(transition); + } + } + LambdaQueryWrapper<TjOrderDetail> wrapper1 = new LambdaQueryWrapper<>(); + wrapper1.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId()); + List<TjOrderDetail> list = tjOrderDetailService.list(wrapper1); + if (list != null && list.size()>0) { + for (TjOrderDetail tjOrderDetail : list) { + TjProject tjProject = projectService.getById(tjOrderDetail.getProId()); + if(tjProject==null){ + continue; + } + tjOrderDetail.setProject(tjProject); + if (tjProject.getProParentId() == 0) { + TjOrderRemark tjOrderRemark = new TjOrderRemark(); + tjOrderRemark.setProId(tjProject.getProId()); + tjOrderRemark.setProName(tjProject.getProName()); + tjOrderRemark.setDeptId(tjProject.getDeptId()); + tjOrderRemark.setTjNumber(tjOrder.getTjNumber()); + tjOrderRemark.setCreateBy(sysUser.getNickName()); + tjOrderRemark.setCreateTime(new Date()); + tjOrderRemark.setUpdateBy(sysUser.getNickName()); + tjOrderRemark.setUpdateTime(new Date()); + tjOrderRemark.setCreateId(String.valueOf(sysUser.getUserId())); + tjOrderRemark.setUpdateId(String.valueOf(sysUser.getUserId())); + orderRemarkService.save(tjOrderRemark); + } + if ("1".equals(tjOrder.getTjType())) { + if (null != tjReservation && tjReservation.getPayType() == 1) { + tjOrderDetail.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber())); + } + } + if(tjFlowingWater.getPayStasus()==1){ + tjOrderDetail.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber())); + } + tjOrderDetailService.updateById(tjOrderDetail); + } + } + System.out.println("杩欐浠g爜鏃堕棿"+(l-System.currentTimeMillis())); + } + + @Override @Async("async") public void ttextracted(TjOrder tjOrder, TjCustomer tjCustomer,SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) { LambdaQueryWrapper<TjAskMedicalHistory> wq=new LambdaQueryWrapper<>(); diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjOrderDetailServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjOrderDetailServiceImpl.java index 8ec518b..f8c9f5e 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjOrderDetailServiceImpl.java +++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjOrderDetailServiceImpl.java @@ -3,6 +3,7 @@ import java.util.List; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.common.utils.DateUtils; import com.ltkj.hosp.domain.TjProject; import org.springframework.beans.factory.annotation.Autowired; @@ -131,4 +132,10 @@ public List<TjOrderDetail> getTjOrderDetailList(String startDate,String endDate) { return tjOrderDetailMapper.getTjOrderDetailList(startDate,endDate); } + + @Override + public List<TjOrderDetail> saveTjOrderDetailsByCusId(String cusId,String orderId, String userName, String userId) { + return tjOrderDetailMapper.saveTjOrderDetailsByCusId(cusId,orderId,userName,userId); + } + } -- Gitblit v1.8.0