From 2ece722bfafa27e3ef5dd5e060ee0624e6f263a6 Mon Sep 17 00:00:00 2001 From: zjh <zjh@888> Date: 星期三, 19 六月 2024 19:20:14 +0800 Subject: [PATCH] zjh 本地 2024/06/19 --3 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java | 126 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 118 insertions(+), 8 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java index 3da76a3..50895b3 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java @@ -1,18 +1,26 @@ package com.ltkj.web.controller.system; import java.io.*; +import java.math.BigDecimal; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; import cn.hutool.core.date.DateUtil; +import cn.hutool.json.JSONArray; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.google.common.base.Joiner; import com.ltkj.common.core.domain.TreeSelect; +import com.ltkj.common.core.domain.entity.SysRole; import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.common.core.redis.RedisCache; +import com.ltkj.common.core.text.Convert; import com.ltkj.common.utils.SecurityUtils; import com.ltkj.common.utils.bean.BeanUtils; import com.ltkj.framework.config.MatchUtils; @@ -21,9 +29,8 @@ import com.ltkj.hosp.service.*; import com.ltkj.system.domain.SysPost; import com.ltkj.system.domain.SysUserPost; -import com.ltkj.system.service.ISysPostService; -import com.ltkj.system.service.ISysUserPostService; -import com.ltkj.system.service.ISysUserService; +import com.ltkj.system.service.*; +import com.ltkj.web.controller.his.HisApiGetMethodService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; @@ -46,7 +53,6 @@ import com.ltkj.common.core.domain.entity.SysDept; import com.ltkj.common.enums.BusinessType; import com.ltkj.common.utils.StringUtils; -import com.ltkj.system.service.ISysDeptService; import javax.annotation.Resource; @@ -101,7 +107,14 @@ public RedisTemplate<Object,Object> redisTemplate; @Resource private TestMapper testMapper; - + @Autowired + private ISysConfigService configService; + @Autowired + private ITjFlowingWaterService tjFlowingWaterService; + @Autowired + private HisApiGetMethodService hisApiGetMethodService; + @Autowired + private LtkjJianchajianyanTreeService ltkjJianchajianyanTreeService; /** * 璇ヤ綋妫�绉戝涓嬪鎴峰垪琛ㄦ樉绀烘帴鍙� @@ -1366,7 +1379,7 @@ if (null != summaryList && summaryList.size()>0 && !summaryList.contains(null)) { one.setSummary(Joiner.on(";").join(orderRemark.getSummaryList())); } - one.setDeptId(orderRemark.getDeptId()); +// one.setDeptId(orderRemark.getDeptId()); one.setDoctorName(orderRemark.getDoctorName()); one.setType(1); remarkService.updateById(one); @@ -1387,6 +1400,7 @@ * @param tjNumber * @return */ + @Transactional @GetMapping("/getParentList") @ApiOperation(value = "鍖荤敓鐐瑰嚮浣撴淇℃伅璇︽儏(鍙樉绀虹埗椤圭洰鍒楄〃)") public AjaxResult getParentList(@ApiParam(value = "瀹㈡埛浣撴鍙�") @RequestParam String tjNumber) { @@ -1400,6 +1414,99 @@ } ksId = Math.toIntExact(sysUser.getDeptId()); } + String configByKey = configService.selectConfigByKey("sfkqdyhis"); + if (configByKey.equals("Y")){ + // 鍒ゆ柇鏄惁鏀惰垂 璇锋眰鎺ュ彛 + LambdaQueryWrapper<TjOrder> tjOrderLambdaQueryWrapper = new LambdaQueryWrapper<>(); + tjOrderLambdaQueryWrapper.eq(TjOrder::getTjNumber,tjNumber); + TjOrder tjOrder = orderService.getOne(tjOrderLambdaQueryWrapper); + LambdaQueryWrapper<TjFlowingWater> tjFlowingWaterLambdaQueryWrapper = new LambdaQueryWrapper<>(); + tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getOrderId,tjOrder.getOrderId()); + tjFlowingWaterLambdaQueryWrapper.ne(TjFlowingWater::getPayStasus,2); + tjFlowingWaterLambdaQueryWrapper.eq(TjFlowingWater::getIsAddition,"N"); + TjFlowingWater tjFlowingWater = tjFlowingWaterService.getOne(tjFlowingWaterLambdaQueryWrapper); +// if (tjFlowingWater1.getPayStasus() != 1){ + LambdaQueryWrapper<TjCustomer> tjCustomerLambdaQueryWrapper = new LambdaQueryWrapper<>(); + tjCustomerLambdaQueryWrapper.eq(TjCustomer::getCusId,tjOrder.getUserId()); + TjCustomer tjCustomer = tjCustomerService.getOne(tjCustomerLambdaQueryWrapper); + HashMap<String, Object> hisRequestParams = new HashMap<>(); + // 涓嶅湪闇�瑕佽韩浠借瘉鍙� +// hisRequestParams.put("card_no",tjCustomer.getCusIdcard()); + hisRequestParams.put("patientId",tjOrder.getCardId()); + AjaxResult queryPay = hisApiGetMethodService.getHISDataNew("QueryPay", hisRequestParams); + if (Integer.parseInt(queryPay.get("code").toString()) == 200) { + List<Map<String, String>> data = (List<Map<String, String>>) queryPay.get("data"); + ArrayList<String> sqdhs = new ArrayList<>(); + ArrayList<String> xmfls = new ArrayList<>(); + BigDecimal cateFeeAll = BigDecimal.ZERO; + for (Map<String, String> datum : data) { + String advId = datum.get("Adv_Id").split("_")[1]; + BigDecimal cateFee = new BigDecimal(datum.get("CateFee")); + String cateCode = datum.get("CateCode"); + cateFeeAll = cateFeeAll.add(cateFee); + sqdhs.add(advId); + xmfls.add(cateCode); + } + LambdaQueryWrapper<LtkjJianchajianyanTree> queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(LtkjJianchajianyanTree::getSqdh, sqdhs) + .in(LtkjJianchajianyanTree::getXmfl, xmfls) + .eq(LtkjJianchajianyanTree::getCardId,tjOrder.getCardId()) + .groupBy(LtkjJianchajianyanTree::getType) + .select(LtkjJianchajianyanTree::getFyhj); + List<LtkjJianchajianyanTree> results = ltkjJianchajianyanTreeService.list(queryWrapper); + BigDecimal total = results.stream() + .map(item -> new BigDecimal(item.getFyhj())) + .reduce(BigDecimal.ZERO, BigDecimal::add); + if (cateFeeAll.compareTo(total) != 0){ + return AjaxResult.error("瀛樺湪鏈即璐归」鐩�"); + } + + tjFlowingWater.setPayStasus(1L); + tjFlowingWater.setPayType(0L); + tjFlowingWater.setTollCollectorId("148"); + tjFlowingWaterService.updateById(tjFlowingWater); + Long tjSerialNumber = tjFlowingWater.getTjSerialNumber(); + LambdaQueryWrapper<TjOrderDetail> tjOrderDetailLambdaQueryWrapper = new LambdaQueryWrapper<>(); + tjOrderDetailLambdaQueryWrapper.eq(TjOrderDetail::getOrderId,tjOrder.getOrderId()); + List<TjOrderDetail> tjOrderDetails = detailService.list(tjOrderDetailLambdaQueryWrapper); + List<Long> detailIds = tjOrderDetails.stream().map(TjOrderDetail::getOrderDetailId).collect(Collectors.toList()); + LambdaUpdateWrapper<TjOrderDetail> tjOrderDetailLambdaUpdateWrapper = new LambdaUpdateWrapper<>(); + tjOrderDetailLambdaUpdateWrapper.set(TjOrderDetail::getFlowingWaterId,tjSerialNumber); + tjOrderDetailLambdaUpdateWrapper.in(TjOrderDetail::getOrderDetailId,detailIds); + detailService.update(tjOrderDetailLambdaUpdateWrapper); + }else { + return AjaxResult.error("鏈煡璇㈠埌缂磋垂璁板綍"); + } +// } + } + String config = configService.selectConfigByKey("qt_open_xdt"); + String byKey = configService.selectConfigByKey("qt_kjksid"); + List<Integer> split = new ArrayList<>(); // 瀛樻斁杞崲鍚庣殑integer绫诲瀷缁撴灉 + if("Y".equals(config)){ + List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles(); + if(null !=roles && roles.size()>0){ + List<SysRole> list = roles.stream().filter(item -> item.getRoleName().contains("鍓嶅彴")).collect(Collectors.toList()); + if(list.size()>0){ + if(null !=ksId && ksId==100){ + ksId=999; + } + if(null !=byKey && !"".equals(byKey)){ + String[] arr = byKey.split(","); // 鏍规嵁閫楀彿杩涜鍒囧壊 + for (String s : arr) { + int num = Integer.parseInt(s); // 灏嗘瘡涓瓙瀛楃涓茶浆鎹负integer绫诲瀷 + split.add(num); // 娣诲姞鍒板垪琛ㄤ腑 + } + } + }else { + split.add(ksId); + } + }else { + split.add(ksId); + } + }else { + split.add(ksId); + } + //鍒ゆ柇褰撳墠鐧婚檰鐨勪汉鏄笉鏄鐞嗗憳銆傜鐞嗗憳鍙互鐪嬪綋鍓嶄綋妫�鍙蜂笅鎵�鏈夐」鐩� // if (sysUser.getUserName().equals("10001")) { // QueryWrapper<TjOrderRemark> wqq = new QueryWrapper<>(); @@ -1418,7 +1525,7 @@ // } LambdaQueryWrapper<TjProject> wq2 = new LambdaQueryWrapper<>(); if ((null != sysUser && !sysUser.getUserName().equals("10001")) && 100!=ksId) { - wq2.eq(TjProject::getDeptId, ksId); + wq2.in(TjProject::getDeptId,split); } //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛� wq2.eq(TjProject::getNeedReport,"Y"); @@ -1481,7 +1588,10 @@ // } TjOrderRemark remark = remarkService.getTjOrderRemarkByTjNumAndProParentId(tjNumber, proParentId); - List<TjProject> proParentList = projectService.getTjProjectListBySoneId(proParentId); + +// List<TjProject> proParentList = projectService.getTjProjectListBySoneId(proParentId); + List<TjProject> proParentList = projectService.getTjProjectListByTbTransition(proParentId,tjNumber); + if (null == proParentList || proParentList.size()==0) { Map<String, Object> map = new HashMap<>(); map.put("xiaoJieIds", null); -- Gitblit v1.8.0