From cb7ba105e4d14d1c2d6fb9db287bc4cc58417c1b Mon Sep 17 00:00:00 2001 From: lige <bestlige@outlook.com> Date: 星期五, 22 十二月 2023 14:33:57 +0800 Subject: [PATCH] 1 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java | 215 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 204 insertions(+), 11 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 6265564..0b18e13 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 @@ -4,6 +4,7 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.text.SimpleDateFormat; +import java.time.OffsetTime; import java.util.*; import java.util.List; import java.util.stream.Collectors; @@ -23,11 +24,18 @@ import com.ltkj.common.core.domain.entity.SysDept; import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.common.core.redis.RedisCache; +import com.ltkj.common.enums.DataSourceType; import com.ltkj.common.utils.SecurityUtils; import com.ltkj.framework.config.MatchUtils; +import com.ltkj.framework.config.UserHoder; +import com.ltkj.framework.datasource.DynamicDataSourceContextHolder; import com.ltkj.hosp.domain.*; +import com.ltkj.hosp.mapper.TestMapper; import com.ltkj.hosp.service.*; +import com.ltkj.hosp.sqlDomain.LtkjMiddleDetail; +import com.ltkj.hosp.sqlDomain.LtkjMiddleHead; import com.ltkj.hosp.vodomain.BingZhongVO; +import com.ltkj.hosp.vodomain.HistoryTjOrder; import com.ltkj.hosp.vodomain.QjDomainVo; import com.ltkj.mall.domain.MallCheckLog; import com.ltkj.mall.domain.MallOrder; @@ -63,7 +71,7 @@ */ @RestController @RequestMapping("/hosp/order") -@Api(tags = "浣撴璁板綍鎺ュ彛") +@Api(tags = "PC绔� ----浣撴璁板綍鎺ュ彛") @Slf4j public class TjOrderController extends BaseController { @Resource @@ -92,8 +100,6 @@ private String value; @Resource private ITjOrderRemarkService remarkService; - @Resource - private ITjTeamSelectRecordService selectRecordService; @Resource private TjAsyncService asyncService; @Resource @@ -131,6 +137,18 @@ @Autowired private ITjAskMedicalHistoryService tjAskMedicalHistoryService; + + @Autowired + private ITjReportGetAddressService tjReportGetAddressService; + + @Resource + private TestMapper testMapper; + + @Resource + private LtkjMiddleDetailService middleDetailService; + + @Resource + private LtkjMiddleHeadService headService; /** @@ -330,9 +348,12 @@ for (TjOrder order : list) { TjCustomer tjCustomer = tjCustomerService.getById(order.getUserId()); if (null != tjCustomer) { - order.setTjCustomerName(MatchUtils.hideCusName(tjCustomer.getCusName())); - order.setTjCustomerPhone(MatchUtils.hidePhoneNum(tjCustomer.getCusPhone())); - order.setTjCusIdCard(MatchUtils.hideIdCardNum(tjCustomer.getCusIdcard())); +// order.setTjCustomerName(MatchUtils.hideCusName(tjCustomer.getCusName())); + order.setTjCustomerName(tjCustomer.getCusName()); +// order.setTjCustomerPhone(MatchUtils.hidePhoneNum(tjCustomer.getCusPhone())); + order.setTjCustomerPhone(tjCustomer.getCusPhone()); +// order.setTjCusIdCard(MatchUtils.hideIdCardNum(tjCustomer.getCusIdcard())); + order.setTjCusIdCard(tjCustomer.getCusIdcard()); order.setTjCustomerSex(tjCustomer.getCusSex()); order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday())); order.setCareer(tjCustomer.getCareer()); @@ -386,8 +407,10 @@ order.setTjCustomerSex(tjCustomer.getCusSex()); order.setTjCustomerAge(DateUtil.ageOfNow(tjCustomer.getCusBrithday())); order.setTjCustomerName(MatchUtils.hideCusName(tjCustomer.getCusName())); + order.setTjCustomerName(MatchUtils.hideCusName(tjCustomer.getCusName())); order.setTjCustomerPhone(MatchUtils.hidePhoneNum(tjCustomer.getCusPhone())); - order.setTjCusIdCard(MatchUtils.hideIdCardNum(tjCustomer.getCusIdcard())); +// order.setTjCusIdCard(MatchUtils.hideIdCardNum(tjCustomer.getCusIdcard())); + order.setTjCusIdCard(tjCustomer.getCusIdcard()); order.setCareer(tjCustomer.getCareer()); order.setIdType(tjCustomer.getIdType()); order.setAgeUnit(tjCustomer.getAgeUnit()); @@ -432,6 +455,7 @@ LambdaQueryWrapper<TjOrder> wq = new LambdaQueryWrapper<>(); wq.isNotNull(TjOrder::getReportTime); wq.eq(TjOrder::getUserId, customer.getCusId()); + wq.eq(TjOrder::getHeshouStatus, 1); //鏍告敹鐘舵�佷负1鎵嶈兘鎵撳嵃 list.addAll(tjOrderService.list(wq)); } List<TjOrder> collect = null; @@ -483,6 +507,7 @@ Page<TjOrder> page1 = new Page<>(pageNum, pageSize); LambdaQueryWrapper<TjOrder> wq = new LambdaQueryWrapper<>(); wq.isNotNull(TjOrder::getReportTime); + wq.eq(TjOrder::getHeshouStatus, 1); //鏍告敹鐘舵�佷负1鎵嶈兘鎵撳嵃 if (null != bgbeginTime && null != bgendTime) { wq.between(TjOrder::getCreateTime, DateUtil.beginOfDay(bgbeginTime), DateUtil.endOfDay(bgendTime)); } @@ -771,7 +796,7 @@ */ @PostMapping @ApiOperation(value = "浣撴绛惧埌鐧昏鎺ュ彛") - @Transactional + //@Transactional (鍒囨崲鏁版嵁搴撳嚭閿欙紝鎵�浠ユ敞閲�) public AjaxResult addOrderAndDetail(@RequestBody TjOrder tjOrder) throws Exception { Long userId = Long.valueOf(SecurityUtils.getLoginUser().getUserId()); SysUser sysUser = userService.getById(userId); @@ -841,11 +866,18 @@ if (null == tjOrder.getPacId() && null != transitionService.getTbTransitionPacIdByCusIdAndPac(String.valueOf(tjOrder.getUserId()))) { tjOrder.setPacId(transitionService.getTbTransitionPacIdByCusIdAndPac(String.valueOf(tjOrder.getUserId()))); } - //鍒ゆ柇灏忕▼搴忎笂棰勭害鏄惁浠橀挶 if (null != mallOrder) tjOrder.setMallOrderId(String.valueOf(mallOrder.getId())); tjOrder.setStatus(TjConstants.TJ_BEGIN); if (tjOrderService.save(tjOrder)) { + //淇濆瓨鏀惰揣鍦板潃 + if ("2".equals(tjOrder.getGetType())){ + final TjReportGetAddress address = tjOrder.getAddAddress(); + if (address!=null){ + address.setTjNumber(tjNumber); + tjReportGetAddressService.save(address); + } + } Long cusNumber = tjCustomer.getCusNumber(); cusNumber += 1; tjCustomer.setCusNumber(cusNumber); @@ -857,10 +889,46 @@ tjFlowingWater.setPayStasus(3L); } } + + //璋冪敤SQL server鎷垮彇鏀惰垂鎯呭喌 + //鏍规嵁閰嶇疆璋冨彇瀛樺偍杩囩▼ 灏嗕复鏃惰〃鏁版嵁瀛樺叆棰勭害琛�2023.12.12 + final String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData"); + if ("Y".equals(getInfoFromSqlData)){ + + //鏌ヨ鏄惁his宸叉敹璐� 鑻ユ敹璐瑰垯灏嗘祦姘磋〃鏀惰垂鐘舵�佹敼鎴愬凡鏀惰垂 +// LambdaQueryWrapper<LtkjMiddleHead> middleHeadLambdaQueryWrapper =new LambdaQueryWrapper<>(); +// middleHeadLambdaQueryWrapper.eq(LtkjMiddleHead::getPatId,tjCustomer.getCusIdcard()); +// middleHeadLambdaQueryWrapper.eq(LtkjMiddleHead::getIsCanceled,"N"); +// middleHeadLambdaQueryWrapper.eq(LtkjMiddleHead::getIsChg,"Y"); +// LtkjMiddleHead middleHead = headService.getOne(middleHeadLambdaQueryWrapper); + LtkjMiddleHead middleHead = testMapper.getMiddleHeadByPartId(tjCustomer.getCardId()); + if(null !=middleHead){ + tjFlowingWater.setPayStasus(1L); + } +// List<LtkjMiddleHead> one = testMapper.saveMiddleHeadByPatId(tjCustomer.getCusIdcard()); +// if (one!=null){ +// for (LtkjMiddleHead ltkjMiddleHead : one) { +// DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); +// headService.save(ltkjMiddleHead); +// DynamicDataSourceContextHolder.clearDataSourceType(); +// List<LtkjMiddleDetail> detailList = testMapper.getMiddleDetailByHeadId(ltkjMiddleHead.getFeadId()); +// if (detailList!=null){ +// for (LtkjMiddleDetail ltkjMiddleDetail : detailList) { +// DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); +// middleDetailService.save(ltkjMiddleDetail); +// DynamicDataSourceContextHolder.clearDataSourceType(); +// } +// } +// } +// +// } + } + + tjFlowingWater.setOrderId(tjOrder.getOrderId()); Date date1 = new Date(System.currentTimeMillis()); String s1 = SecurityUtils.getUsername() + new SimpleDateFormat("yyMMddHHmmssSSS").format(date1); - tjFlowingWater.setWaterId(PinyinUtil.getFirstLetter(tjCustomer.getCusName(), "") + s1); + tjFlowingWater.setWaterId(PinyinUtil.getFirstLetter(tjCustomer.getCusName(), "").toUpperCase() + s1); if (null != mallOrder) { if (mallOrder.getOrderStatus().equals(201L)) { tjFlowingWater.setCopeWith(mallOrder.getActualPrice()); @@ -904,6 +972,30 @@ // asyncService.newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); newSaveextracted(tjOrder, tjCustomer, discount, sysUser, tjReservation, tjFlowingWater); } + + //璋冪敤SQL server鎷垮彇鏀惰垂鎯呭喌 + //鏍规嵁閰嶇疆璋冨彇瀛樺偍杩囩▼ 灏嗕复鏃惰〃鏁版嵁瀛樺叆棰勭害琛�2023.12.12 +// final String getInfoFromSqlData = configService.selectConfigByKey("getInfoFromSqlData"); +// if ("Y".equals(getInfoFromSqlData)){ +// List<LtkjMiddleHead> one = testMapper.saveMiddleHeadByPatId(tjCustomer.getCusIdcard()); +// if (one!=null){ +// for (LtkjMiddleHead ltkjMiddleHead : one) { +// DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); +// headService.save(ltkjMiddleHead); +// DynamicDataSourceContextHolder.clearDataSourceType(); +// List<LtkjMiddleDetail> detailList = testMapper.getMiddleDetailByHeadId(ltkjMiddleHead.getFeadId()); +// if (detailList!=null){ +// for (LtkjMiddleDetail ltkjMiddleDetail : detailList) { +// DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.MASTER.name()); +// middleDetailService.save(ltkjMiddleDetail); +// DynamicDataSourceContextHolder.clearDataSourceType(); +// } +// } +// } +// +// } +// } + return AjaxResult.success(tjNumber); } return AjaxResult.error(); @@ -1230,6 +1322,9 @@ for (TjOrderRemark remark : remarkList) { TjProject project = projectService.getTjProjectById(String.valueOf(remark.getProId())); if (null != project) { + if ("N".equals(project.getNeedReport())){ + continue; + } remark.setProCheckType(project.getProCheckType()); remark.setProName(project.getProName()); } @@ -1612,7 +1707,105 @@ tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber())); } - System.out.println("杩欐浠g爜鏃堕棿" + (System.currentTimeMillis() - l)); +// System.out.println("杩欐浠g爜鏃堕棿" + (System.currentTimeMillis() - l)); + } + + + @PostMapping("/heXiaoByIds/{orderIds}") + @ApiOperation(value = "鏍告敹鎶ュ憡鈥斺�斺�斺�斺�斺�旀�绘瀹℃牳閫氳繃鍚庡彲浠ユ牳閿�锛屾牳鏀跺悗鎵嶈兘鎵撳嵃") + @Transactional + public AjaxResult heXiaoByIds(@PathVariable String[] orderIds) { + for (String orderId : orderIds) { + final TjOrder byId = tjOrderService.getById(orderId); + byId.setHeshouStatus(1); + byId.setHeshouDoctor(UserHoder.getLoginUser().getUserId()); + byId.setHeshouTime(new DateTime()); + final boolean b = tjOrderService.updateById(byId); + if (!b){ + return AjaxResult.error("鏍告敹澶辫触"); + } + } + return AjaxResult.success("鏍告敹鎴愬姛"); + } + + @GetMapping("/getHistryTjOrderByCusIdCard") + @ApiOperation(value = "鏍规嵁韬唤璇佸彿鏌ョ湅鍘嗗彶浣撴璁板綍") + @Transactional + public AjaxResult getHistryTjOrderByCusIdCard(@RequestParam String cusIdCard) { + TjCustomer tjCustomer = tjCustomerService.getTjCustomerByCusIdCard(cusIdCard); + List<HistoryTjOrder> list=new ArrayList<>(); + if(null !=tjCustomer){ + List<TjOrder> orderList = tjOrderService.getTjOrderListByCusId(tjCustomer.getCusId()); + for (TjOrder order : orderList) { + HistoryTjOrder historyTjOrder=new HistoryTjOrder(); + historyTjOrder.setUserName(tjCustomer.getCusName()); + historyTjOrder.setTjNum(order.getTjNumber()); + historyTjOrder.setTjTime(order.getCreateTime()); + historyTjOrder.setTjProName(tjOrderService.getHistoryTjOrderProByTjNum(order.getTjNumber())); + list.add(historyTjOrder); + } + } + return AjaxResult.success(list); + } + + + @GetMapping("/getHistryTjOrderProByCusIdCard") + @ApiOperation(value = "鏍规嵁韬唤璇佸彿鏌ョ湅鍘嗗彶浣撴椤圭洰璁板綍") + @Transactional + public AjaxResult getHistryTjOrderProByCusIdCard(@RequestParam String cusIdCard) { + TjCustomer tjCustomer = tjCustomerService.getTjCustomerByCusIdCard(cusIdCard); + if(null !=tjCustomer){ + TjOrder order= tjOrderService.getLastTjOrderListByCusId(tjCustomer.getCusId()); + if(null !=order){ + List<Map<String, Object>> list = new ArrayList<>(); + if(order.getPacId().equals("o")){ + List<Long> longList = remarkService.getTjProIdsByTjNum(order.getTjNumber()); + for (Long aLong : longList) { + Map<String, Object> map = new HashMap<>(); + map.put("pacName", "鍗曢」"); + map.put("proId",aLong); + map.put("pacId",null); + map.put("parentName", projectService.getById(aLong).getProName()); + map.put("list",projectService.getTjProjectListBySoneId(String.valueOf(aLong))); + BigDecimal proPrice = projectService.getById(aLong).getProPrice(); + map.put("ordPrice", proPrice); + map.put("nowPrice", proPrice); + list.add(map); + } + } + if(!order.getPacId().equals("o")){ + List<Long> longList = remarkService.getTjProIdsByTjNumAndPacIc(order.getTjNumber(),order.getPacId()); + TjPackage aPackage = tjPackageService.getById(order.getPacId()); + for (Long aLong : longList) { + Map<String, Object> map = new HashMap<>(); + map.put("pacName",aPackage.getPacName()); + map.put("pacId",String.valueOf(aPackage.getPacId())); + map.put("parentName", projectService.getById(aLong).getProName()); + map.put("list",projectService.getTjProjectListBySoneId(String.valueOf(aLong))); + BigDecimal proPrice = projectService.getById(aLong).getProPrice(); + map.put("ordPrice", proPrice); + map.put("nowPrice",tjPackageProjectService.getPacProPriceByPacIdAndPro(aLong,order.getPacId())); + list.add(map); + } + + List<Long> longList1 = remarkService.getTjProIdsByTjNumAndPacIc(order.getTjNumber(),order.getPacId()); + for (Long aLong : longList1) { + Map<String, Object> map = new HashMap<>(); + map.put("pacName", "鍗曢」"); + map.put("proId",aLong); + map.put("pacId",null); + map.put("parentName", projectService.getById(aLong).getProName()); + map.put("list",projectService.getTjProjectListBySoneId(String.valueOf(aLong))); + BigDecimal proPrice = projectService.getById(aLong).getProPrice(); + map.put("ordPrice", proPrice); + map.put("nowPrice", proPrice); + list.add(map); + } + } + return AjaxResult.success(list); + } + } + return AjaxResult.success("鏆傛棤鍘嗗彶璁板綍"); } } -- Gitblit v1.8.0