guns spring 单元测试[通俗易懂]

guns spring 单元测试[通俗易懂]guns spring 单元测试

大家好,又见面了,我是你们的朋友全栈君。

package com.stylefeng.guns;

import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.stylefeng.guns.core.common.exception.BizExceptionEnum;
import com.stylefeng.guns.core.exception.GunsException;
import com.stylefeng.guns.core.shiro.ShiroKit;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.server.model.DeliveryOrder;
import com.stylefeng.guns.modular.server.model.DeliveryOrderLine;
import com.stylefeng.guns.modular.server.service.*;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.jdbc.BadSqlGrammarException;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import java.util.List;

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = GunsApplication.class)
public class TestTest {
    @Autowired IEntryOrderService entryOrderService;
    @Autowired
    IDeliveryOrderService deliveryOrderService;
    @Autowired
    IDeliveryOrderLineService deliveryOrderLineService;
    @Test
    public void test(){
        try{
            String no = entryOrderService.getNextEntryOrderNo(1003);
            System.out.println("获取入库单号 : " + no);
        }
        catch(BadSqlGrammarException e){
            System.out.println("exception : " + e);
            if(e.getCause().toString().contains("raise_application_error")){
                String msg = entryOrderService.getError();
                BizExceptionEnum.SESSION_LAST_ERROR.setMessage(msg);
                throw new GunsException(BizExceptionEnum.SESSION_LAST_ERROR);
            }
            BizExceptionEnum.SESSION_LAST_ERROR.setMessage(e.getMessage());
            throw new GunsException(BizExceptionEnum.SESSION_LAST_ERROR);
        }catch (Exception e){
            BizExceptionEnum.SESSION_LAST_ERROR.setMessage(e.getMessage());
            throw new GunsException(BizExceptionEnum.SESSION_LAST_ERROR);
        }
    }
    @Test
    public void test1(){
//        List<DeliveryOrder> deliveryOrderList = deliveryOrderService.selectList(
//                new EntityWrapper<DeliveryOrder>()
//                .eq("part_count",0)
//                .eq("rowstate",1)
//        );
//        for (DeliveryOrder deliveryOrder: deliveryOrderList){
//            if (ToolUtil.isEmpty(deliveryOrder.getPartList())){
//                List<DeliveryOrderLine> deliveryOrderLineList = deliveryOrderLineService.selectList(
//                        new EntityWrapper<DeliveryOrderLine>()
//                        .eq("order_no",deliveryOrder.getOrderNo())
//                        .eq("logistics_company_id",deliveryOrder.getLogisticsCompanyId())
//                        .orderBy("ean_no",true)
//                );
//                String partList = "";
//                Integer totalQt = 0;
//                if (deliveryOrderLineList.size() > 0) {
//                    for (DeliveryOrderLine item : deliveryOrderLineList) {
//                        partList = partList
//                                + item.getEanNo().trim()+ "^"
//                                +item.getQuantity().toString()
//                                + "^" + "10003"
//                                + "^" + deliveryOrder.getWarehouse()
//                                + "^" + deliveryOrder.getOwnerId()
//                                + "^" + deliveryOrder.getExprCompany()
//                                + ",";
//                        totalQt = totalQt + item.getQuantity();
//                    }
//                    partList = partList.substring(0, partList.length() - 1);
//                }
//                deliveryOrder.setGoodsCount(totalQt);
//                deliveryOrder.setPartCount(deliveryOrderLineList.size());
//                deliveryOrder.setPartList(ToolUtil.toStr(ToolUtil.toHash(partList)));
//                deliveryOrderService.updateById(deliveryOrder);
//            }
//        }
//        HttpServletResponse response = HttpKit.getResponse();
//        try {
//            // 网络pdf文件全路径
//            String pdfUrl ="http://182.254.230.150:8089/helloworld.pdf";
//            URL url = new URL(pdfUrl);
//            HttpURLConnection conn = (HttpURLConnection)url.openConnection();
//            conn.setConnectTimeout(5*1000);
//            InputStream inputStream = conn.getInputStream();
//            response.setHeader("Content-Disposition", "attachment;fileName=helloword.pdf");
//            response.setContentType("multipart/form-data");
//            OutputStream outputStream = response.getOutputStream();
//            IOUtils.write(IOUtils.toByteArray(inputStream), outputStream);
//            System.out.println(outputStream);
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
    }
}

 

转载于:https://my.oschina.net/u/3556610/blog/3022405

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106931.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • CorelDraw技術討論區

    CorelDraw技術討論區CorelDraw製作討論專區子區:技術討論區

    2022年6月24日
    26
  • String/InputStream/File之间的相互转换

    String/InputStream/File之间的相互转换InputStrem与String之间转换String转InputStream/***将str转换为inputStream*@paramstr*@return*/publicstaticInputStreamstr2InputStream(Stringstr){ ByteArrayInputStreamis=newByteArrayInputStr…

    2022年9月21日
    2
  • python点云处理算法汇总(长期更新版)

    python点云处理算法汇总(长期更新版)python点云处理算法整理

    2022年5月28日
    38
  • varchar与char的转换_character with byte sequence

    varchar与char的转换_character with byte sequence储存不区分大小写的字符数据TINYTEXT最大长度是255(2^8–1)个字符。TEXT最大长度是65535(2^16–1)个字符。MEDIUMTEXT最大长度是16777215(2^24–1)个字符。LONGTEXT最大长度是4294967295(2^32–1)个字符Varchar对每个英文(ASCII)字符都占用2个字节,对一个汉字也只占用两个…

    2022年8月13日
    13
  • spring aop实例讲解_摘要实例

    spring aop实例讲解_摘要实例AOP:【面向切面编程】指在程序运行期间动态的将某段代码切入到指定方法指定位置进行运行的编程方式。1、导入aop模块:SpringAOP:(spring-aspects)2、定义一个业务逻辑类(MathCalculator);在业务逻辑运行的时候讲日志进行打印(方法之前、方法运行结束、方法出现异常等)3、定义一个日志切面类(LOgAspects);切面类里面…

    2022年8月11日
    11
  • Qt多线程实例与connect第五个参数[通俗易懂]

    Qt是一个GUI框架,在GUI程序中,主线程也叫GUI线程,因为它是唯一被允许执行GUI相关操作的线程。对于一些耗时的操作,如果放在主线程中,就是出现界面无法响应的问题。解决方法一:在处理耗时操作中频繁调用QApplication::processEvents()。这个函数告诉Qt去处理那些还没有被处理的各类事件,然后再把控制权返还给调用者。QElapsedTimeret;…

    2022年4月8日
    84

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号