ltkj-admin/src/main/java/com/ltkj/web/controller/app/WxloginController.java
@@ -156,7 +156,7 @@ byte[] raw = decoder.decodeBuffer(sessionKey); SecretKeySpec skeySpec = new SecretKeySpec(raw, "AES"); IvParameterSpec iv1 = new IvParameterSpec(decoder.decodeBuffer(iv)); Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding"); Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding","BC"); cipher.init(Cipher.DECRYPT_MODE, skeySpec, iv1); OkHttpClient client = new OkHttpClient(); Request okrequest = new Request.Builder() ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysProfileController.java
@@ -1,5 +1,6 @@ package com.ltkj.web.controller.system; import com.ltkj.common.utils.sign.RsaUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -93,6 +94,12 @@ LoginUser loginUser = getLoginUser(); String userName = loginUser.getUsername(); String password = loginUser.getPassword(); try { oldPassword = RsaUtils.decryptByPrivateKey(oldPassword); newPassword = RsaUtils.decryptByPrivateKey(newPassword); } catch (Exception e) { e.printStackTrace(); } if(userName.equals("10001")){ oldPassword=userName+oldPassword; } ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjNewFlowingWaterController.java
@@ -1,19 +1,14 @@ package com.ltkj.web.controller.system; import cn.hutool.core.codec.Base64; import cn.hutool.core.date.DateUtil; import cn.hutool.extra.pinyin.PinyinUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ltkj.common.core.domain.AjaxResult; import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.common.utils.SecurityUtils; import com.ltkj.framework.config.MatchUtils; import com.ltkj.framework.config.UserHoder; import com.ltkj.hosp.domain.*; import com.ltkj.hosp.service.*; import com.ltkj.hosp.vodomain.NewFlowingWaterVo; import com.ltkj.hosp.vodomain.TjCollectFeesVo; import com.ltkj.mall.domain.MallCheckLog; import com.ltkj.mall.domain.MallOrder; import com.ltkj.mall.mallOrderUtils.TjConstants; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -22,10 +17,6 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.*; @@ -61,12 +52,22 @@ @GetMapping("/getNewDate") @ApiOperation(value = "获取服务器当前时间") public AjaxResult getNewDate() { Date date = DateUtil.parse(DateUtil.format(DateUtil.date(),"yyyy-MM-dd HH:mm:ss"),"yyyy-MM-dd HH:mm:ss"); return AjaxResult.success(date); } @GetMapping("/getFlowingWaterList") @ApiOperation(value = "获取体检收费记录接口") public AjaxResult getFlowingWaterList(@RequestParam(required = false) @ApiParam(value = "体检号") String phone, @RequestParam(required = false) @ApiParam(value = "体检人姓名") String name, @RequestParam(defaultValue = "1") @ApiParam(value = "收费1 退费2") Long type) { @RequestParam(defaultValue = "1") @ApiParam(value = "收费1 退费2 4退费员页面") Long type) { List<TjFlowingWater> waterList =null; List<Long> collect =null; TjCustomer one =null; @@ -91,7 +92,15 @@ wq1.in(TjFlowingWater::getOrderId, collect); } wq1.between(TjFlowingWater::getCreateTime,DateUtil.beginOfDay(date),DateUtil.endOfDay(date)); if(type==1){ wq1.eq(TjFlowingWater::getPayStasus,type); wq1.eq(TjFlowingWater::getTollCollectorId, UserHoder.getLoginUser().getUserId()); }else if(type==4){ wq1.eq(TjFlowingWater::getPayStasus,1); }else { wq1.eq(TjFlowingWater::getPayStasus,type); } waterList = flowingWaterService.list(wq1); if(null !=waterList && waterList.size()>0){ @@ -100,6 +109,8 @@ if (null != order) { if (null != customerService.getById(order.getUserId())) { flowingWater.setCustomer(customerService.getById(order.getUserId())); flowingWater.setTjNumber(order.getTjNumber()); flowingWater.setTjProName(flowingWaterService.getproNameByOrderId(order.getTjNumber())); } } } @@ -130,25 +141,15 @@ @Transactional public AjaxResult addOrderAndDetail(@RequestBody NewFlowingWaterVo vo) { if (!MatchUtils.isMobileNO(vo.getPhone())) { return AjaxResult.error("手机号格式有误!"); } // Long cusId = null; // LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>(); // wq.eq(TjCustomer::getCusName, vo.getName()); // wq.eq(TjCustomer::getCusPhone, vo.getPhone()); // TjCustomer one = customerService.getOne(wq); // if (null == one) { // if (!MatchUtils.isMobileNO(vo.getPhone())) { // return AjaxResult.error("手机号格式有误!"); // } TjCustomer customer = new TjCustomer(); if(null !=vo.getPhone())customer.setCusPhone(vo.getPhone()); customer.setCusName(vo.getName()); customer.setCusBrithday(new Date()); customer.setCusSex(0L); customerService.save(customer); // cusId = customer.getCusId(); // } else { // cusId = one.getCusId(); // } Date date=new Date(); TjOrder tjOrder = new TjOrder(); tjOrder.setUserId(customer.getCusId()); @@ -171,7 +172,12 @@ TjOrderDetail detail = new TjOrderDetail(); detail.setOrderId(tjOrder.getOrderId()); if(null==vo.getTjPro()){ detail.setProId(1712272744924446722L); }else { detail.setProId(vo.getTjPro()); } detail.setProId(vo.getTjPro()); detail.setProType("0"); detailService.save(detail); @@ -193,9 +199,18 @@ detailService.updateById(detail); TjChargingStandard tjChargingStandard = new TjChargingStandard(); tjChargingStandard.setTjNum(tjOrder.getTjNumber()); if(null==vo.getTjPro()){ tjChargingStandard.setProId(1712272744924446722L); tjChargingStandard.setPrice(vo.getYs().divide(BigDecimal.valueOf(Long.parseLong(vo.getNumber())))); }else { tjChargingStandard.setProId(vo.getTjPro()); } tjChargingStandard.setProId(vo.getTjPro()); tjChargingStandard.setPrice(vo.getSs()); if(null==vo.getTjProName()){ tjChargingStandard.setProName("体检项目"); }else { tjChargingStandard.setProName(vo.getTjProName()); } tjChargingStandard.setCount(Long.valueOf(vo.getNumber())); chargingStandardService.save(tjChargingStandard); } ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjSummaryController.java
@@ -1,5 +1,6 @@ package com.ltkj.web.controller.system; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.google.common.base.Joiner; import com.ltkj.common.core.domain.AjaxResult; @@ -80,7 +81,7 @@ wqq.between(TjTollCollector::getCreateTime, accountBeginTime, accountEndTime); } wqq.orderByDesc(TjTollCollector::getCreateTime); wqq.eq(TjTollCollector::getIsHz,"N"); wqq.isNull(TjTollCollector::getIsHz); List<TjTollCollector> list= collectorService.list(wqq); return AjaxResult.success(list); } @@ -102,7 +103,7 @@ zshoukuan=zshoukuan.add(collector.getAmountReceived()); ztuikuan=ztuikuan.add(collector.getRefundAmount()); zyingjiao=zyingjiao.add(collector.getPayable()); collector.setIsHz("Y"); collector.setIsHz(accountId); collectorService.updateById(collector); } } @@ -138,7 +139,7 @@ String[] split = accountId.split(";"); for (String s : split) { TjTollCollector tollCollector = collectorService.getTjTollCollectorById(s); tollCollector.setIsHz("N"); tollCollector.setIsHz(null); collectorService.updateById(tollCollector); } return AjaxResult.success("该账单已成功撤销"); @@ -156,4 +157,17 @@ return AjaxResult.success(printSetUp); } @GetMapping("/getLastTime") @ApiOperation(value = "获取汇总时间起始时间") public AjaxResult getLastTime() { LambdaQueryWrapper<TjSummary> wq = new LambdaQueryWrapper<>(); wq.orderByDesc(TjSummary::getCreateTime); List<TjSummary> list = summaryService.list(wq); if (null != list && list.size() > 0) return AjaxResult.success(list.get(0).getCreateTime()); String dateStr = "2023-10-01 00:00:00"; Date date = DateUtil.parse(dateStr, "yyyy-MM-dd HH:mm:ss"); return AjaxResult.success(date); } } ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjTollCollectorController.java
@@ -211,7 +211,7 @@ wq.orderByDesc(TjTollCollector::getAccountEndTime); List<TjTollCollector> list = tjTollCollectorService.list(wq); if (null != list && list.size() > 0) return success(list.get(0).getAccountEndTime()); String dateStr = "1970-01-01 00:00:00"; String dateStr = "2023-10-01 00:00:00"; Date date = DateUtil.parse(dateStr, "yyyy-MM-dd HH:mm:ss"); return AjaxResult.success(date); } ltkj-admin/src/main/resources/application.yml
@@ -210,6 +210,7 @@ jimu: path: https://ltpeis.xaltjdkj.cn:5011/ltkj-admin # path: http://192.168.0.99:8080/ltkj-admin # path: http://192.168.0.99:8081/ltkj-admin # path: http://192.168.0.101:5011 jeecg : ltkj-framework/src/main/java/com/ltkj/framework/web/service/SysLoginService.java
@@ -19,9 +19,7 @@ import com.ltkj.hosp.domain.TjCustomer; import com.ltkj.hosp.service.IDictHospService; import com.ltkj.hosp.service.ITjCustomerService; import com.ltkj.system.service.ISysDeptService; import com.ltkj.system.service.ISysMenuService; import com.ltkj.system.service.SysParametersDisposeService; import com.ltkj.system.service.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.security.authentication.AuthenticationManager; @@ -39,7 +37,6 @@ import com.ltkj.framework.manager.AsyncManager; import com.ltkj.framework.manager.factory.AsyncFactory; import com.ltkj.framework.security.context.AuthenticationContextHolder; import com.ltkj.system.service.ISysUserService; import java.util.Date; import java.util.HashMap; @@ -75,6 +72,8 @@ private ISysDeptService deptService; @Autowired private SysParametersDisposeService parametersDisposeService; @Autowired private ISysConfigService configService; // 是否允许账户多终端同时登录(true允许 false不允许) @Value("${token.soloLogin}") @@ -96,6 +95,8 @@ */ public String login(String username, String password, Boolean type,String code,String uuid) { String aSwitch = configService.selectConfigByKey("captcha_switch"); if(null !=aSwitch && aSwitch.equals("Y")){ String verifyKey = CacheConstants.CAPTCHA_CODE_KEY + uuid; String captcha = redisCache.getCacheObject(verifyKey); redisCache.deleteObject(verifyKey); @@ -109,6 +110,7 @@ AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error"))); throw new CaptchaException(); } } // 用户验证 Authentication authentication = null; ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjFlowingWater.java
@@ -118,6 +118,14 @@ @TableField(exist = false) private String tollCollectorName; @ApiModelProperty(value = "体检号") @TableField(exist = false) private String tjNumber; @ApiModelProperty(value = "体检项目名") @TableField(exist = false) private String tjProName; @ApiModelProperty(value = "单项ids") @TableField(exist = false) private String[] tjProIds; ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjTollCollector.java
@@ -4,6 +4,8 @@ import java.util.List; import java.util.Date; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldStrategy; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.JsonFormat; @@ -93,6 +95,7 @@ private BigDecimal payable; @ApiModelProperty(value = "是否汇总") @TableField(updateStrategy = FieldStrategy.IGNORED) private String isHz; /** ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjFlowingWaterMapper.java
@@ -72,4 +72,13 @@ @Select("\tSELECT a.discount/10 FROM tj_flowing_water a WHERE 1=1 AND a.deleted =0 AND a.order_id=#{orderId} AND a.discount !='/'") String getDiscount(String orderId); // @Select("\tSELECT GROUP_CONCAT(b.pro_name ) proname FROM tj_order_detail a \n" + // " LEFT JOIN tj_project b ON a.pro_id=b.pro_id \n" + // "\t WHERE a.order_id=#{orderId}") // String getproNameByOrderId(String orderId); @Select("SELECT GROUP_CONCAT(a.pro_name ) proname FROM tj_charging_standard a WHERE a.tj_num=#{orderId}") String getproNameByOrderId(String orderId); } ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjFlowingWaterService.java
@@ -64,4 +64,6 @@ List<String> getFlowingWaterIds(String tjNum); String getDiscount(String orderId); String getproNameByOrderId(String orderId); } ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjFlowingWaterServiceImpl.java
@@ -102,4 +102,9 @@ public String getDiscount(String orderId) { return tjFlowingWaterMapper.getDiscount(orderId); } @Override public String getproNameByOrderId(String orderId) { return tjFlowingWaterMapper.getproNameByOrderId(orderId); } } ltkj-hosp/src/main/java/com/ltkj/hosp/vodomain/NewFlowingWaterVo.java
@@ -21,8 +21,11 @@ //手机号 private String phone; //体检项目 private String tjPro; //体检项目id private Long tjPro; //体检项目名称 private String tjProName; //数量 private String number;