물류팀 기능구현(2)

2023. 10. 12. 20:35·ERP Project

앞선 포스팅에서 로트가 여러 개인 행의 Name값은 뒤에 숫자를 붙여 컨트롤러로 보냈었다.

 

https://comebackworld.tistory.com/63

 

물류팀 기능구현(1)

물류팀의 카테고리는 총 두가지로 1. 재고관리 2. 입출고관리 가 있다. 물류팀인만큼 물류팀의 주요 기능은 상품 / 제품의 관리를 하는 것이 주요한 기능이다. 우리는 우선 상품테이블인 erp_goods

comebackworld.tistory.com

Controller에서 그 값들을 처리하는 방식에 대해 포스팅을 하겠다.

 

뒤에 숫자가 붙어 넘어온 파라미터 값들을 배열로 처리하는 방식을 택했다. 

 

배열을 사용하여 데이터를 처리하는 것에는 장단점이 있다. 

장점
1. 데이터 그룹화: 배열은 여러 개의 항목을 하나의 변수에 저장할 수 있는 효과적인 방법이다. 특히 연관된 데이터를 그룹화하고 유지하기에 좋다. 이 경우, 로트 정보와 같이 여러 개의 관련된 데이터를 하나의 배열로 처리할 수 있다.

2. 반복 처리: 배열을 사용하면 반복문을 사용하여 배열의 각 요소를 순회하면서 작업을 수행할 수 있다. 예를 들어, 여러 개의 로트 정보를 한꺼번에 처리하거나 출력하는 데 유용하다.

3. 인덱스로 접근: 배열은 인덱스를 사용하여 특정 위치의 데이터에 빠르게 접근할 수 있다. 이는 배열 내의 특정 요소를 찾고 수정하는 데 유용하다.

단점
1. 고정 크기: 배열은 일반적으로 고정된 크기를 가지며, 크기를 동적으로 변경하기 어렵다. 따라서 미리 배열의 크기를 지정해야 할 때 제한이 있을 수 있다.

2. 인덱스 오류: 잘못된 인덱스로 배열에 접근하면 런타임 오류가 발생할 수 있다. 이를 방지하기 위해서는 인덱스를 신중하게 처리해야 한다.

3. 메모리 사용: 배열은 일정한 메모리 공간을 필요로 하며, 큰 배열을 사용하면 메모리 부족 문제가 발생할 수 있다.

4. 데이터 타입 제한: 배열은 동일한 데이터 타입의 요소만 포함할 수 있으므로 다양한 데이터 타입을 함께 저장하기 어렵다.

따라서 배열을 사용할 때에는 데이터 구조와 작업의 성격에 따라 장단점을 고려하여 적절하게 활용해야 한다.


처음 고정된 첫 번째 로트의 정보는 배열 0번 index에 저장이 될 것이다. 세 번째까지만 등록이 가능하게 설정했기에 두 번째 로트는 1번 index, 세 번째 로트는 2번 index일 것이다.

	public String stockInsert(@RequestParam("goodslot_lot") String[] goodslot_lot,
			@RequestParam("goodslot_qty") Integer[] goodslot_qty,
			@RequestParam("goodslot_production") String[] goodslot_production,
			@RequestParam("goodslot_expiry") String[] goodslot_expiry,
			@RequestParam("goodslot_price") Integer[] goodslot_price,
			@RequestParam("goodslot_tax") Integer[] goodslot_tax,
			String goods_code, String goods_barcode, String goods_name,
			int goodskind_no, int goods_customerprice,
			String goods_description, int client_no1,
			int client_no2, int goods_stockqty, int goodslev_no,
			String comcode_code, String goodsst_unit, String goodsst_spec,
			String goodsst_size, String goodsst_package,
			int goodsst_ea) {
		
		int comcode_no = ls.comNo(comcode_code);
		
		Map<String, Object> map11 = new HashMap<>();
		map11.put("goodsst_unit", goodsst_unit);
		map11.put("goodsst_spec", goodsst_spec);
		map11.put("goodsst_size", goodsst_size);
		map11.put("goodsst_package", goodsst_package);
		map11.put("goodsst_ea", goodsst_ea);
		
		d6.insertGoodsst(map11);
		
		Map<String, Object> map12 = new HashMap<>();
		map12.put("goodsst_unit", goodsst_unit);
		map12.put("goodsst_spec", goodsst_spec);
		map12.put("goodsst_size", goodsst_size);
		map12.put("goodsst_package", goodsst_package);
		map12.put("goodsst_ea", goodsst_ea);
		
		int goodsst_no = d6.selectGoodsstno(map12);
		
		
	    for (String lot : goodslot_lot) {
	        System.out.println(lot);
	    }
	    
	    if (goodslot_lot.length > 0) {
	        String firstLot = goodslot_lot[0]; // 첫 번째 배열 요소 가져오기
	        System.out.println("첫 번째 로트번호: " + firstLot);

따라서 출력을 해보면 

테스트 결과

잘 출력이 되는 것을 확인할 수 있다. 

저작자표시 (새창열림)

'ERP Project' 카테고리의 다른 글

물류팀 기능구현(1)  (2) 2023.10.10
재무팀 기능구현(2)  (0) 2023.10.10
재무팀 기능구현(1)  (0) 2023.09.20
인사팀 기능구현(2)  (0) 2023.09.20
인사팀 기능구현(1)  (0) 2023.09.20
'ERP Project' 카테고리의 다른 글
  • 물류팀 기능구현(1)
  • 재무팀 기능구현(2)
  • 재무팀 기능구현(1)
  • 인사팀 기능구현(2)
kwh_coding
kwh_coding
성장하는 괴물 성괴 김우형
  • kwh_coding
    코딩 일기
    kwh_coding
  • 전체
    오늘
    어제
    • 분류 전체보기
      • JAVA
      • JavaScript
        • Node
        • React
      • PYTHON
      • GitHub
      • DJANGO
      • ERP Project
      • NAVER CLOUD Web DevOps
      • 자격증
        • SQLD
        • 정보처리기사
        • ADsP
      • 코딩테스트
        • 프로그래머스 Lv0
        • 프로그래머스 Lv1
      • Spring
      • Tools
        • Postman
        • eGov
      • WEB
      • CS
  • 블로그 메뉴

    • 홈
    • GitHub
    • Notion
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    node
    javascript
    private network
    eGov
    해시 암호화
    Java
    코딩
    프로그래머스
    annotation
    web
    github
    Python
    RDBMS
    정보처리기사
    brycpt
    코딩테스트
    AdSP
    코테
    Tomcat
    django
    CORS
    git
    SQLD
    spring
    gitbash
    jsp
    Postman
    js
    React
    html
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
kwh_coding
물류팀 기능구현(2)
상단으로

티스토리툴바