| | |
| | | package com.zy.asrs.controller; |
| | | |
| | | import com.alibaba.excel.EasyExcel; |
| | | import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.mapper.Wrapper; |
| | |
| | | import com.zy.asrs.entity.LocRule; |
| | | import com.zy.asrs.service.LocMastService; |
| | | import com.zy.asrs.service.LocRuleService; |
| | | import com.zy.asrs.service.NodeService; |
| | | import com.zy.asrs.utils.LocRuleExcelListener; |
| | | import com.zy.common.entity.LocRuleExcel; |
| | | import com.zy.common.web.BaseController; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.io.IOException; |
| | | import java.net.URLEncoder; |
| | | import java.util.*; |
| | | |
| | | @RestController |
| | |
| | | private LocRuleService locRuleService; |
| | | @Autowired |
| | | private LocMastService locMastService; |
| | | @Autowired |
| | | private NodeService nodeService; |
| | | |
| | | @RequestMapping(value = "/locRule/{id}/auth") |
| | | @ManagerAuth |
| | |
| | | locRule.setUpdateBy(getUserId()); |
| | | locRule.setUpdateTime(now); |
| | | Integer locType2 = 1;//单品区域 |
| | | if (locRule.getMixed() == 1) { |
| | | //混载 |
| | | locRule.setMatnr("00000000"); |
| | | locType2 = 2;//混放区域 |
| | | } |
| | | // if (locRule.getMixed() == 1) { |
| | | // //混载 |
| | | // //locRule.setMatnr("00000000"); |
| | | // locType2 = 2;//混放区域 |
| | | // } |
| | | locRuleService.insert(locRule); |
| | | locMastService.updateLocType2ByRBL(locType2, locRule.getRowBeg(), locRule.getRowEnd(), locRule.getBayBeg(), locRule.getBayEnd(), locRule.getLevBeg(), locRule.getLevEnd()); |
| | | return R.ok(); |
| | |
| | | locRule.setUpdateTime(new Date()); |
| | | locRuleService.updateById(locRule); |
| | | Integer locType2 = 1;//单品区域 |
| | | if (locRule.getMixed() == 0) { |
| | | if (Cools.isEmpty(locRule.getMixed()) || locRule.getMixed() == 0) { |
| | | locRuleService.updateKeepGoByMatnr(locRule.getMatnr(), locRule.getKeepGo()); |
| | | }else {//混载 |
| | | locRuleService.updateKeepGoByMixed(locRule.getKeepGo()); |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | /*************************************** 数据相关 ***********************************************/ |
| | | |
| | | /** |
| | | * excel导入模板下载 |
| | | */ |
| | | @RequestMapping(value = "/locCodeRule/excel/import/mould") |
| | | public void matExcelImportMould(HttpServletResponse response) throws IOException { |
| | | List<LocRuleExcel> excels = new ArrayList<>(); |
| | | response.setContentType("application/vnd.ms-excel"); |
| | | response.setCharacterEncoding("utf-8"); |
| | | String fileName = URLEncoder.encode("库位编码规则Excel导入模板", "UTF-8"); |
| | | response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); |
| | | EasyExcel.write(response.getOutputStream(), LocRuleExcel.class) |
| | | .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) |
| | | .sheet("sheet1") |
| | | .doWrite(excels); |
| | | } |
| | | |
| | | // excel导入 |
| | | @PostMapping(value = "/locCodeRule/excel/import/auth") |
| | | @ManagerAuth(memo = "库位编码规则数据导入") |
| | | @Transactional |
| | | public R matExcelImport(MultipartFile file) throws IOException { |
| | | LocRuleExcelListener listener = new LocRuleExcelListener(); |
| | | EasyExcel.read(file.getInputStream(), LocRuleExcel.class, listener).sheet().doRead(); |
| | | return R.ok("成功同步"+listener.getTotal()+"条商品数据"); |
| | | } |
| | | |
| | | |
| | | |
| | | } |