zjh
2024-10-18 57b41b18aa3472be34b8b13d725db8578a14b836
zjh20241018
5个文件已修改
92 ■■■■■ 已修改文件
ltkj-admin/src/main/java/com/ltkj/web/controller/barcode/PrintBarCodeController.java 59 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjSamplingController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjSamplingMapper.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjSamplingService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjSamplingServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/barcode/PrintBarCodeController.java
@@ -20,9 +20,11 @@
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Base64;
import java.util.List;
import java.util.stream.Collectors;
@@ -63,46 +65,39 @@
            TjCustomer one = tjCustomerService.getOne(wq1);
            //查到项目详情  判断每个项目的耗材  去重 is_calculation为Y的打印 且拿到耗材名称
            LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>();
            wq2.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId());
            List<TjOrderDetail> list = tjOrderDetailService.list(wq2);
//            LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>();
//            wq2.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId());
//            List<TjOrderDetail> list = tjOrderDetailService.list(wq2);
            List<TjProConsumables> list1=new ArrayList<>();
            for (TjOrderDetail tjOrderDetail : list) {
                LambdaQueryWrapper<TjProConsumables> wq3 = new LambdaQueryWrapper<>();
                wq3.eq(TjProConsumables::getProId, tjOrderDetail.getProId());
                List<TjProConsumables> list2 = proConsumablesService.list(wq3);
                for (TjProConsumables tjProConsumables : list2) {
                    list1.add(tjProConsumables);
                }
            }
            List<TjProConsumables> collect = list1.stream().distinct().collect(Collectors.toList());
            if (collect.size()==0){
            List<TjOrderDetail> list = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId());
//            List<TjProConsumables> list1=new ArrayList<>();
//            for (TjOrderDetail tjOrderDetail : list) {
//                LambdaQueryWrapper<TjProConsumables> wq3 = new LambdaQueryWrapper<>();
//                wq3.eq(TjProConsumables::getProId, tjOrderDetail.getProId());
//                List<TjProConsumables> list2 = proConsumablesService.list(wq3);
//                for (TjProConsumables tjProConsumables : list2) {
//                    list1.add(tjProConsumables);
//                }
//            }
//            List<TjProConsumables> collect = list1.stream().distinct().collect(Collectors.toList());
            if (list.isEmpty()){
                return AjaxResult.success("该体检号无抽血项目!");
            }
            //纵向拼接用
            //List<String> pac=new ArrayList<>();
            for (TjProConsumables tjProConsumables : collect) {
                TjConsumables tjConsumables = consumablesService.selectTjConsumablesById(tjProConsumables.getConsumablesId());
                if ("Y".equals(tjConsumables.getIsCalculation())){
                    try {
                        BufferedImage image = BarCodeUtils.getBarCodeWithWords(tjNumber+tjConsumables.getId(), tjNumber, one.getCusName(), tjConsumables.getMakings());
                        ImageIO.write(image, "jpg", new File(value+"\\"+tjNumber+tjConsumables.getMakings()+".jpg"));
                        //pac.add(value+tjNumber+tjConsumables.getMakings()+".jpg"); //纵向拼接用
                        //BarCodeUtils.barCodePrint(image,250,150,250,150); //纵向拼接用
                BufferedImage image = BarCodeUtils.getBarCodeWithWords(tjNumber, tjNumber, one.getCusName(),null);
//                ImageIO.write(image, "jpg", new File(value+"\\"+one.getCusName()+tjNumber+".jpg"));
                ByteArrayOutputStream out=new ByteArrayOutputStream();
                ImageIO.write(image,"jpg",out);
                byte[] bytes = out.toByteArray();
                String encodedToString = Base64.getEncoder().encodeToString(bytes);
                return AjaxResult.success("条码已生成!在文件夹下:"+value,encodedToString);
                    } catch (IOException e) {
                        e.printStackTrace();
                        return AjaxResult.error();
                    }
                }
            }
            //纵向拼接
            //String[] title = pac.toArray(new String[pac.size()]);
            //joinImageListVertical(title,"jpg","E:\\mycode\\2023-2\\2.16\\"+tjNumber+".jpg");
            //识别条码内容
            //String s = QRCodeUtils.deEncodeByPath("E:\\mycode\\2023-2\\2.16\\10001230128175552红盖子抽血管.jpg");
            //System.out.println(s);
            return AjaxResult.success("条码已生成!在文件夹下:"+value);
        }
        return AjaxResult.error("该体检号无效!");
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjSamplingController.java
@@ -287,6 +287,10 @@
            int pdsfczhbxm = tjSamplingService.pdsfczhbxm(ids);
            if (pdsfczhbxm == ids.size()) return AjaxResult.error("多个合并项目不可再继续合并!");
            if (pdsfczhbxm > 1) return AjaxResult.error("最多允许选择一个合并过的项目!");
            String string = tjSamplingService.getBuKeHebingProName(ids);
            if(null !=string){
                return AjaxResult.error(string+"这几个项目不可合并!");
            }
            if (pdsfczhbxm == 0) {
                TjSampling tjSampling = tjSamplingService.getById(ids.get(0));
                Map<String, Object> map = tjSamplingService.hebingCaiYangInFo(ids);
@@ -433,6 +437,7 @@
//                    }
//                }
            TjOrder tjOrder = orderService.getOrderByTjNum(sampling.getTjNum());
            if(null==tjOrder)return AjaxResult.error("体检记录不存在");
            TjCustomer tjCustomer = customerService.getById(tjOrder.getUserId());
            boolean updChild;
            String config = configService.selectConfigByKey("sfkqdyhis");
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjSamplingMapper.java
@@ -141,4 +141,25 @@
            "</script>"
    })
    int deleteByTjNumAndCusIdAndJxbz(@Param("tjNum") String tjNum,@Param("userId") Long userId,@Param("ids")List<String> ids);
    @Select({"<script>","SELECT\n" +
            "  IFNULL(GROUP_CONCAT( aa.pro_name SEPARATOR ' ; ' ),NULL)\n" +
            "FROM\n" +
            "  (\n" +
            "  SELECT\n" +
            "    a.jyxmdm,\n" +
            "    a.pro_name,\n" +
            "    b.jyxmmc,\n" +
            "    b.jybbdm,\n" +
            "    b.jyfldm \n" +
            "  FROM\n" +
            "    `tj_sampling` a\n" +
            "    LEFT JOIN ltkj_jyxmzd b ON a.jyxmdm = b.jyxmdm   WHERE a.id " +
            "IN ","<foreach collection='ids' item='id' open='(' separator=',' close=')'>",
            "#{id}",
            "</foreach>"
            +") aa " + "WHERE\n" + "  aa.jyfldm NOT IN ( SELECT c.flbm FROM lis_jyflhb c);",
            "</script>"})
    String getBuKeHebingProName(@Param("ids")List<String> ids);
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjSamplingService.java
@@ -85,4 +85,6 @@
    //修改原来合并过得项目
    boolean updateHeBingXm(@Param("ids") List<String> ids);
    String getBuKeHebingProName(List<String> ids);
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjSamplingServiceImpl.java
@@ -130,4 +130,9 @@
    public boolean updateHeBingXm(List<String> ids) {
        return tjSamplingMapper.updateHeBingXms(ids);
    }
    @Override
    public String getBuKeHebingProName(List<String> ids) {
        return tjSamplingMapper.getBuKeHebingProName(ids);
    }
}