diff --git a/src/main/java/com/no1/wms/in/InController.java b/src/main/java/com/no1/wms/in/InController.java index d858fbe..80e3f58 100644 --- a/src/main/java/com/no1/wms/in/InController.java +++ b/src/main/java/com/no1/wms/in/InController.java @@ -1,5 +1,64 @@ package com.no1.wms.in; -public class InController { +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +@Controller +@RequestMapping("/in") +public class InController { + + @Autowired + InService inService; + + @GetMapping("/list") + //@ResponseBody + public String list(@RequestParam(name = "searchn", defaultValue = "0") int searchn, + @RequestParam(name = "search", defaultValue = "") String search, + @RequestParam(name = "p", defaultValue = "1") int page, Model m) { + + int count = inService.count(searchn, search); + + int perPage = 15; + int startRow = (page - 1) * perPage; + + List dto = inService.inList(searchn, search, startRow, perPage); + + int pageNum = 5;//보여질 페이지 번호 수 + int totalPages = count / perPage + (count % perPage > 0 ? 1 : 0); // 전체 페이지 수 + + int begin = (page - 1) / pageNum * pageNum + 1; + int end = begin + pageNum - 1; + if (end > totalPages) { + end = totalPages; + } + + m.addAttribute("list", dto); + m.addAttribute("start", startRow + 1); + m.addAttribute("searchn",searchn); + m.addAttribute("search",search); + m.addAttribute("begin", begin); + m.addAttribute("end", end); + m.addAttribute("pageNum", pageNum); + m.addAttribute("totalPages", totalPages); + m.addAttribute("p" , page); + + + return "/in/list"; + + } + @PostMapping("/create") + public String create() { + return "in/create"; + } + + + } diff --git a/src/main/java/com/no1/wms/in/InDto.java b/src/main/java/com/no1/wms/in/InDto.java index 98a0d64..5a06e44 100644 --- a/src/main/java/com/no1/wms/in/InDto.java +++ b/src/main/java/com/no1/wms/in/InDto.java @@ -1,5 +1,46 @@ package com.no1.wms.in; + + +import java.util.Date; + +import org.apache.ibatis.type.Alias; +import org.springframework.format.annotation.DateTimeFormat; + +import com.no1.wms.account.AccountDto; +import com.no1.wms.planin.PlanInDto; +import com.no1.wms.product.ProductDto; +import com.no1.wms.warehouse.WarehouseDto; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +@Alias("InDto") public class InDto { + + private String id; + private String group_number; + private String product_id; + @DateTimeFormat(pattern = "yyyy-MM-dd") + private Date in_date; + private String quantity; + private String warehouse_id; + private String manager_id; + private String note; + private boolean activation;//활성화 + private int latest_price; + + private PlanInDto planInDto; + private ProductDto productDto; + private WarehouseDto warehouseDto; + private AccountDto accountDto; + + } diff --git a/src/main/java/com/no1/wms/in/InMapper.java b/src/main/java/com/no1/wms/in/InMapper.java index 4639fcc..8ba3092 100644 --- a/src/main/java/com/no1/wms/in/InMapper.java +++ b/src/main/java/com/no1/wms/in/InMapper.java @@ -1,5 +1,12 @@ package com.no1.wms.in; -public class InMapper { +import java.util.List; +import java.util.Map; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface InMapper { + List inList(Map m); + int count(Map m); } diff --git a/src/main/java/com/no1/wms/in/InService.java b/src/main/java/com/no1/wms/in/InService.java index dd43d69..476da85 100644 --- a/src/main/java/com/no1/wms/in/InService.java +++ b/src/main/java/com/no1/wms/in/InService.java @@ -1,5 +1,37 @@ package com.no1.wms.in; -public class InService { +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class InService { + + @Autowired + InMapper mapper; + + public List inList(int searchn, String search, int start, int perPage){ + Map m = new HashMap(); + m.put("searchn",searchn); + m.put("search", search); + m.put("start", start); + m.put("perPage", perPage); + + return mapper.inList(m); + } + + public int count(int searchn, String search) { + Map m = new HashMap(); + m.put("searchn",searchn); + m.put("search", search); + return mapper.count(m); + };//카운터 + + + + + } diff --git a/src/main/java/com/no1/wms/mypage/MypageController.java b/src/main/java/com/no1/wms/mypage/MypageController.java index fd21e22..9ed6789 100644 --- a/src/main/java/com/no1/wms/mypage/MypageController.java +++ b/src/main/java/com/no1/wms/mypage/MypageController.java @@ -12,10 +12,12 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.SessionAttributes; import org.springframework.web.multipart.MultipartFile; import com.no1.wms.account.AccountDto; @@ -29,13 +31,16 @@ public class MypageController { @Autowired ImgService imgService; - + + @GetMapping("/mypage") - public String mypage(Model m, HttpServletRequest request) { + public String mypage(Model m, HttpSession session) { - HttpSession session = request.getSession(); + //HttpSession session = request.getSession(); AccountDto dto = (AccountDto) session.getAttribute("userData"); - + + //System.out.println(dto.getId()); + AccountDto list = accountService.selectById(dto); m.addAttribute("list", list); @@ -88,9 +93,9 @@ public class MypageController { } @PostMapping("/mypage/uplodeImg") - public String imgFileUplode(HttpServletRequest request, MultipartFile file) { + public String imgFileUplode(HttpServletRequest request,HttpSession session , MultipartFile file) { //System.out.println(file); - HttpSession session = request.getSession(); + //HttpSession session = request.getSession(); AccountDto dto = (AccountDto) session.getAttribute("userData"); String fileName = dto.getId(); //System.out.println(fileName); diff --git a/src/main/java/com/no1/wms/planin/PlanInController.java b/src/main/java/com/no1/wms/planin/PlanInController.java index 5f348b7..c07b6c2 100644 --- a/src/main/java/com/no1/wms/planin/PlanInController.java +++ b/src/main/java/com/no1/wms/planin/PlanInController.java @@ -1,14 +1,16 @@ package com.no1.wms.planin; -import java.util.List; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.google.gson.Gson; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import com.no1.wms.product.ProductDto; @@ -92,7 +94,7 @@ public class PlanInController { // 입고예정추가 @PostMapping("/planin_add") - public ModelAndView insert(ModelAndView mav, ProductDto dto) + public ModelAndView add(ModelAndView mav, ProductDto dto) { List list = productservice.productList(0, "", 0, 10000); //list @@ -104,5 +106,47 @@ public class PlanInController { mav.setViewName("planin_add"); return mav; } - + + + @PostMapping("/planin_edit") + public ModelAndView edit(ModelAndView mav, ProductDto dto) + { + List list = productservice.productList(0, "", 0, 10000); + //list + //ProductDto (0) + //ProductDto (1) + //ProductDto (2) + mav.addObject("list", list); + + mav.setViewName("planin_edit"); + return mav; + } + + @PostMapping("/planin_update_process") + @ResponseBody + public String updateProcess(@RequestBody List> list, Gson gson, PlanInDto dto) throws JsonProcessingException, ParseException { + + dto.setGroupNumber((String) list.get(0).get("groupNumber")); + + planinservice.deleteById(dto); + + + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + + + for(int i = 0; i < list.size(); ++i){ + Map data = list.get(i); + PlanInDto newDto = new PlanInDto(); + newDto.setGroupNumber((String) data.get("groupNumber")); + newDto.setDate( format.parse((String) data.get("date"))); + newDto.setQuantity((Integer) data.get("quantity")); + newDto.setProductId((String)data.get("productId")); + + + } + + return gson.toJson("s"); + + } + } diff --git a/src/main/java/com/no1/wms/planin/PlanInDto.java b/src/main/java/com/no1/wms/planin/PlanInDto.java index d19244a..2af9db0 100644 --- a/src/main/java/com/no1/wms/planin/PlanInDto.java +++ b/src/main/java/com/no1/wms/planin/PlanInDto.java @@ -27,7 +27,6 @@ public class PlanInDto { private Integer quantity; @DateTimeFormat(pattern = "yyyy-MM-dd") private Date date; - private String vendorId; private String managerId; private String warehouseId; private String qrHash; diff --git a/src/main/java/com/no1/wms/planin/PlanInMapper.java b/src/main/java/com/no1/wms/planin/PlanInMapper.java index 524f285..9eae396 100644 --- a/src/main/java/com/no1/wms/planin/PlanInMapper.java +++ b/src/main/java/com/no1/wms/planin/PlanInMapper.java @@ -15,4 +15,8 @@ public interface PlanInMapper { int count(Map m); List selectById(PlanInDto dto); + + int deleteById(PlanInDto dto); + + void insert(PlanInDto dto); } diff --git a/src/main/java/com/no1/wms/planin/PlanInService.java b/src/main/java/com/no1/wms/planin/PlanInService.java index dd0201b..81a408a 100644 --- a/src/main/java/com/no1/wms/planin/PlanInService.java +++ b/src/main/java/com/no1/wms/planin/PlanInService.java @@ -33,4 +33,11 @@ public class PlanInService { List selectById(PlanInDto dto){ return mapper.selectById(dto); } + + int deleteById(PlanInDto dto){ + return mapper.deleteById(dto); + } + void insert(PlanInDto dto){ + mapper.insert(dto); + } } diff --git a/src/main/java/com/no1/wms/price/PriceDto.java b/src/main/java/com/no1/wms/price/PriceDto.java index b8e88cf..98f31e4 100644 --- a/src/main/java/com/no1/wms/price/PriceDto.java +++ b/src/main/java/com/no1/wms/price/PriceDto.java @@ -3,6 +3,7 @@ package com.no1.wms.price; import java.util.Date; import org.apache.ibatis.type.Alias; +import org.springframework.format.annotation.DateTimeFormat; import com.no1.wms.account.AccountDto; import com.no1.wms.product.ProductDto; @@ -21,6 +22,7 @@ public class PriceDto { private String id;//id private String price;//가격 + @DateTimeFormat(pattern = "yyyy-MM-dd") private Date registration_date;//등록날짜 private String manager_id;//담당자 private String product_id; //제품 아이디 diff --git a/src/main/java/com/no1/wms/product/ProductController.java b/src/main/java/com/no1/wms/product/ProductController.java index b5a9240..b502cd2 100644 --- a/src/main/java/com/no1/wms/product/ProductController.java +++ b/src/main/java/com/no1/wms/product/ProductController.java @@ -2,6 +2,9 @@ package com.no1.wms.product; import java.util.List; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; @@ -14,6 +17,8 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; +import com.no1.wms.account.AccountDto; +import com.no1.wms.account.AccountService; import com.no1.wms.category.CategoryDto; import com.no1.wms.category.CategoryService; import com.no1.wms.price.PriceDto; @@ -30,6 +35,9 @@ public class ProductController { CategoryService categoryService; @Autowired VendorService service; + @Autowired + AccountService accountService; + /* @GetMapping("list") @@ -81,7 +89,7 @@ public class ProductController { // 생성 - 폼 @PostMapping("/create") - public String create() { + public String create() { return "/product/create"; } diff --git a/src/main/java/com/no1/wms/product/ProductDto.java b/src/main/java/com/no1/wms/product/ProductDto.java index 5394b02..1da0916 100644 --- a/src/main/java/com/no1/wms/product/ProductDto.java +++ b/src/main/java/com/no1/wms/product/ProductDto.java @@ -3,6 +3,7 @@ package com.no1.wms.product; import java.util.Date; import org.apache.ibatis.type.Alias; +import org.springframework.format.annotation.DateTimeFormat; import com.no1.wms.account.AccountDto; import com.no1.wms.authority.AuthorityDto; @@ -27,6 +28,7 @@ public class ProductDto { private String company_name = "미지정";//회사명 private String kan_code;//분류코드 private String vendor_id;//거래처 id + @DateTimeFormat(pattern = "yyyy-MM-dd") private Date registration_date;//등록날짜 private String manager_id;//담당자 private boolean activation;//활성화 diff --git a/src/main/resources/mappers/InMapper.xml b/src/main/resources/mappers/InMapper.xml new file mode 100644 index 0000000..6453cc8 --- /dev/null +++ b/src/main/resources/mappers/InMapper.xml @@ -0,0 +1,140 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/mappers/PlainInMapper.xml b/src/main/resources/mappers/PlainInMapper.xml index 28af62b..b5c191d 100644 --- a/src/main/resources/mappers/PlainInMapper.xml +++ b/src/main/resources/mappers/PlainInMapper.xml @@ -7,7 +7,6 @@ - @@ -37,24 +36,24 @@ + + delete from plan_In WHERE group_number = #{groupNumber} + \ No newline at end of file diff --git a/src/main/resources/mappers/PriceMapper.xml b/src/main/resources/mappers/PriceMapper.xml index 29ecf0b..c0c5d82 100644 --- a/src/main/resources/mappers/PriceMapper.xml +++ b/src/main/resources/mappers/PriceMapper.xml @@ -32,7 +32,7 @@ UPDATE prices - SET price = #{price}, registration_date = CURDATE() + SET price = #{price}, manager_id = #{manager_id}, registration_date = CURDATE() WHERE id = #{id} @@ -125,7 +125,7 @@ - ORDER BY p.registration_date LIMIT #{start} , #{perPage} + ORDER BY p.registration_date desc LIMIT #{start} , #{perPage} diff --git a/src/main/webapp/WEB-INF/views/in/create.jsp b/src/main/webapp/WEB-INF/views/in/create.jsp new file mode 100644 index 0000000..31b7e19 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/in/create.jsp @@ -0,0 +1,73 @@ +<%@ page contentType="text/html; charset=UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> + + + + +새로운 입고 추가 + + + +
+

입고 추가

+
+
+
+
+
+
+
+ +
+ 제품명 + + + + +
+ +
+ 가격 + +
+ + + +
+
+
+
+
+
+ + +
+
+
+
+
+ + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/in/list.jsp b/src/main/webapp/WEB-INF/views/in/list.jsp new file mode 100644 index 0000000..e33654e --- /dev/null +++ b/src/main/webapp/WEB-INF/views/in/list.jsp @@ -0,0 +1,136 @@ +<%@ page contentType="text/html; charset=UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> + + + + +Insert title here + + +
+

입고 관리

+
+
+
+
+
+
+
+
+ +
+ + + + + + + + +
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
번호제품명가격수량입고예정그룹번호입고날짜담당자
${status.count }${dto.productDto.name }${dto.latest_price }${dto.quantity }${dto.planInDto.viewGroupNumber }${dto.accountDto.name }
+
+
+
+
+
+
+
+
+ +
+
+ +
+
+
+
+ + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/modal/planin_add.jsp b/src/main/webapp/WEB-INF/views/modal/planin_add.jsp index a00f335..2acc59f 100644 --- a/src/main/webapp/WEB-INF/views/modal/planin_add.jsp +++ b/src/main/webapp/WEB-INF/views/modal/planin_add.jsp @@ -3,21 +3,40 @@ <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> @@ -72,7 +91,7 @@ function goDown(target){
제품명
@@ -96,6 +115,7 @@ function goDown(target){ id='input_date' type="date" class="form-control" placeholder="날짜" aria-label="날짜" value=""> + diff --git a/src/main/webapp/WEB-INF/views/modal/planin_edit.jsp b/src/main/webapp/WEB-INF/views/modal/planin_edit.jsp new file mode 100644 index 0000000..4c57756 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/modal/planin_edit.jsp @@ -0,0 +1,153 @@ +<%@ page contentType="text/html; charset=UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> + + + +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + +
제품명회사명분류거래처등록날짜선택
${dto.name }${dto.company_name }${dto.categoryDto.cls_nm_4 }${dto.vendorDto.name }
+
+
+
+
+
+
+
+
+
+
+
+ 제품카테고리 + +
+ +
+ 제품명 + +
+ +
+ 수량 + +
+ +
+ 공급업체 + +
+ +
+ 날짜 + +
+ + +
+
+
+ +
+
+
+ + +
+
+
+
+
+
+
+
+
+ + +
diff --git a/src/main/webapp/WEB-INF/views/mypage/mypage.jsp b/src/main/webapp/WEB-INF/views/mypage/mypage.jsp index 458b289..10525f4 100644 --- a/src/main/webapp/WEB-INF/views/mypage/mypage.jsp +++ b/src/main/webapp/WEB-INF/views/mypage/mypage.jsp @@ -120,6 +120,7 @@ +
diff --git a/src/main/webapp/WEB-INF/views/planin/update.jsp b/src/main/webapp/WEB-INF/views/planin/update.jsp index edb21e4..3d214fd 100644 --- a/src/main/webapp/WEB-INF/views/planin/update.jsp +++ b/src/main/webapp/WEB-INF/views/planin/update.jsp @@ -3,7 +3,9 @@ <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
@@ -43,7 +150,7 @@ 제품 카테고리제품명수량공급업체날짜수정/삭제 - + ${dto.caName} @@ -51,10 +158,11 @@ ${dto.quantity} ${dto.vendorDto.name} - + + - + @@ -66,6 +174,14 @@
+
+
+ +
+ +
+
+
diff --git a/src/main/webapp/WEB-INF/views/price/create.jsp b/src/main/webapp/WEB-INF/views/price/create.jsp index 57d9477..c39690d 100644 --- a/src/main/webapp/WEB-INF/views/price/create.jsp +++ b/src/main/webapp/WEB-INF/views/price/create.jsp @@ -60,7 +60,7 @@
- +