| | |
| | | package com.zy.asrs.controller; |
| | | |
| | | import com.alibaba.excel.EasyExcel; |
| | | import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.mapper.Wrapper; |
| | | import com.baomidou.mybatisplus.plugins.Page; |
| | | import com.zy.asrs.entity.LocDetl; |
| | | import com.zy.asrs.service.LocDetlService; |
| | | import com.zy.common.web.BaseController; |
| | | import com.core.annotations.ManagerAuth; |
| | | import com.core.common.BaseRes; |
| | | import com.core.common.Cools; |
| | | import com.core.common.DateUtils; |
| | | import com.core.common.R; |
| | | import com.zy.asrs.entity.*; |
| | | import com.zy.asrs.entity.param.WrkDetlLogAllViewParam; |
| | | import com.zy.asrs.entity.result.LocDetlAll; |
| | | import com.zy.asrs.entity.result.LocDetlDTO; |
| | | import com.zy.asrs.mapper.LocDetlMapper; |
| | | import com.zy.asrs.service.LocDetlService; |
| | | import com.zy.asrs.service.LocOwnerService; |
| | | import com.zy.asrs.service.ManLocDetlService; |
| | | import com.zy.asrs.service.MatService; |
| | | import com.zy.common.web.BaseController; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.io.IOException; |
| | | import java.math.BigDecimal; |
| | | import java.net.URLEncoder; |
| | | import java.time.LocalDate; |
| | | import java.util.*; |
| | | |
| | | @RestController |
| | |
| | | |
| | | @Autowired |
| | | private LocDetlService locDetlService; |
| | | @Autowired |
| | | private LocOwnerService locOwnerService; |
| | | @Autowired |
| | | private LocDetlMapper locDetlMapper; |
| | | @Autowired |
| | | private MatService matService; |
| | | @Autowired |
| | | private ManLocDetlService manLocDetlService; |
| | | @RequestMapping(value = "/locDetl/list/barcode") |
| | | public R getBarcodeList(@RequestParam String barcode) { |
| | | List<ManLocDetl> manLocDetls = manLocDetlService.selectList(new EntityWrapper<ManLocDetl>().eq("zpallet", barcode)); |
| | | if (Cools.isEmpty(manLocDetls)){ |
| | | return R.error("托盘码数据为空"); |
| | | } |
| | | return R.ok(manLocDetls); |
| | | } |
| | | |
| | | @RequestMapping(value = "/locDetl/update") |
| | | public R update1() { |
| | | if (!locDetlService.updateLocNo("0402805", "0402804")) { |
| | | return R.error(); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/locDetl/{id}/auth") |
| | | @ManagerAuth |
| | |
| | | return R.ok(locDetlService.selectById(String.valueOf(id))); |
| | | } |
| | | |
| | | @RequestMapping(value = "/locDetl/list/auth") |
| | | @RequestMapping(value = "/locDetl/auth") |
| | | @ManagerAuth |
| | | public R stockOutList(@RequestParam(value = "locNos[]") List<String> locNos){ |
| | | if (!locNos.isEmpty()) { |
| | | List<LocDetl> res = new ArrayList<>(); |
| | | for (String locNo : new HashSet<>(locNos)) { |
| | | List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", locNo)); |
| | | if (!locDetls.isEmpty()) { |
| | | res.addAll(locDetls); |
| | | } |
| | | } |
| | | return R.ok().add(res); |
| | | } |
| | | return R.parse(BaseRes.EMPTY); |
| | | } |
| | | |
| | | @RequestMapping(value = "/stock/out/list/auth") |
| | | @ManagerAuth |
| | | public R stockOutList(@RequestParam(defaultValue = "1")Integer curr, |
| | | @RequestParam(defaultValue = "10")Integer limit, |
| | | @RequestParam Map<String, Object> param){ |
| | | if (!Cools.isEmpty(param.get("modi_time"))){ |
| | | String val = String.valueOf(param.get("modi_time")); |
| | | if (val.contains(RANGE_TIME_LINK)) { |
| | | String[] dates = val.split(RANGE_TIME_LINK); |
| | | param.put("startTime", DateUtils.convert(dates[0])); |
| | | param.put("endTime", DateUtils.convert(dates[1])); |
| | | param.remove("modi_time"); |
| | | } |
| | | } |
| | | return R.ok(locDetlService.getStockOut(toPage(curr, limit, param, LocDetl.class),"2")); |
| | | } |
| | | |
| | | @RequestMapping(value = "/locDetl/list/auth")// /locDetl/list/auth 接口问题 |
| | | @ManagerAuth |
| | | public R list(@RequestParam(defaultValue = "1")Integer curr, |
| | | @RequestParam(defaultValue = "10")Integer limit, |
| | | @RequestParam(required = false)String orderByField, |
| | | @RequestParam(required = false)String orderByType, |
| | | @RequestParam(required = false)String condition, |
| | | @RequestParam Map<String, Object> param){ |
| | | excludeTrash(param); |
| | | // String row = ""; |
| | | EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); |
| | | convert(param, wrapper); |
| | | // if (param.get("row") != null) { |
| | | // String chooseRow = (String) param.get("row"); |
| | | // if (chooseRow.length() == 1) { |
| | | // row = "0" + chooseRow; |
| | | // param.remove("row"); |
| | | // }else { |
| | | // row = chooseRow; |
| | | // param.remove("row"); |
| | | // } |
| | | // } |
| | | excludeTrash(param); |
| | | String locNo = convert(param, wrapper); |
| | | String zpallet = String.valueOf( param.get("zpallet")); |
| | | String matnr = String.valueOf( param.get("matnr")); |
| | | if (!Cools.isEmpty(zpallet) && zpallet.equals("null")) { |
| | | zpallet = null; |
| | | } |
| | | if (!Cools.isEmpty(matnr) && matnr.equals("null")) { |
| | | matnr = null; |
| | | } |
| | | allLike(LocDetl.class, param.keySet(), wrapper, condition); |
| | | if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} |
| | | return R.ok(locDetlService.selectPage(new Page<>(curr, limit), wrapper)); |
| | | Page<LocDetl> locDetlPage = locDetlService.selectPage(new Page<>(curr, limit), wrapper); |
| | | if (Cools.isEmpty(locDetlPage) || locDetlPage.getTotal()==0){ |
| | | List<LocDetl> locDetls = locDetlService.queryStockViewMerge(locNo,zpallet,matnr); |
| | | return R.ok(locDetlPage.setRecords(locDetls)); |
| | | }else { |
| | | return R.ok(locDetlPage); |
| | | } |
| | | // if (!row.equals("")){ |
| | | // wrapper.and() |
| | | // .where("loc_no like '" +row +"%'"); |
| | | // } |
| | | // return R.ok(); |
| | | } |
| | | |
| | | private void convert(Map<String, Object> map, EntityWrapper wrapper){ |
| | | |
| | | private <T> String convert(Map<String, Object> map, EntityWrapper<T> wrapper){ |
| | | String locNo=null; |
| | | for (Map.Entry<String, Object> entry : map.entrySet()){ |
| | | if (entry.getKey().endsWith(">")) { |
| | | wrapper.ge(Cools.deleteChar(entry.getKey()), DateUtils.convert(String.valueOf(entry.getValue()))); |
| | | } else if (entry.getKey().endsWith("<")) { |
| | | wrapper.le(Cools.deleteChar(entry.getKey()), DateUtils.convert(String.valueOf(entry.getValue()))); |
| | | String val = String.valueOf(entry.getValue()); |
| | | if (val.contains(RANGE_TIME_LINK)){ |
| | | String[] dates = val.split(RANGE_TIME_LINK); |
| | | wrapper.ge(entry.getKey(), DateUtils.convert(dates[0])); |
| | | wrapper.le(entry.getKey(), DateUtils.convert(dates[1])); |
| | | } else { |
| | | wrapper.eq(entry.getKey(), String.valueOf(entry.getValue())); |
| | | if (entry.getKey().equals("loc_no") || entry.getKey().equals("locNo")) { |
| | | wrapper.eq("loc_no", String.valueOf(entry.getValue())); |
| | | locNo=String.valueOf(entry.getValue()); |
| | | } else { |
| | | wrapper.like(entry.getKey(), String.valueOf(entry.getValue())); |
| | | } |
| | | } |
| | | } |
| | | return locNo; |
| | | } |
| | | |
| | | @RequestMapping(value = "/locDetl/add/auth") |
| | |
| | | List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class); |
| | | EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); |
| | | Map<String, Object> map = excludeTrash(param.getJSONObject("locDetl")); |
| | | String row = ""; |
| | | if (map.get("row") != null) { |
| | | String chooseRow = (String) map.get("row"); |
| | | if (chooseRow.length() == 1) { |
| | | row = "0" + chooseRow; |
| | | map.remove("row"); |
| | | }else { |
| | | row = chooseRow; |
| | | map.remove("row"); |
| | | } |
| | | } |
| | | convert(map, wrapper); |
| | | if (!row.equals("")){ |
| | | wrapper.and() |
| | | .where("loc_no like '" +row +"%'"); |
| | | } |
| | | List<LocDetl> list = locDetlService.selectList(wrapper); |
| | | return R.ok(exportSupport(list, fields)); |
| | | } |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | @RequestMapping(value = "/locDetl/statis/auth") |
| | | @ManagerAuth |
| | | public R statis(@RequestParam(defaultValue = "1")Integer curr, |
| | | @RequestParam(defaultValue = "10")Integer limit, |
| | | @RequestParam Map<String, Object> param) { |
| | | // Page<LocDetl> stockStatis = locDetlService.getStockStatis(toPage(curr, limit, param, LocDetl.class)); |
| | | // for (LocDetl locDetl : stockStatis.getRecords()) { |
| | | // Mat mat = matService.selectByMatnr(locDetl.getMatnr()); |
| | | // if (mat != null) { |
| | | // locDetl.sync(mat); |
| | | // } |
| | | // } |
| | | // return R.ok().add(stockStatis); |
| | | |
| | | Page<LocDetlAll> stockStatis = locDetlService.getStockStatisAll(toPage(curr, limit, param, LocDetlAll.class)); |
| | | for (LocDetlAll locDetlAll : stockStatis.getRecords()) { |
| | | Double weight = locDetlAll.getWeight(); |
| | | |
| | | Mat mat = matService.selectByMatnr(locDetlAll.getMatnr()); |
| | | if (mat != null) { |
| | | locDetlAll.sync(mat); |
| | | } |
| | | locDetlAll.setWeight(weight); |
| | | } |
| | | return R.ok().add(stockStatis); |
| | | } |
| | | @RequestMapping(value = "/locDetl/ownerStatis/auth") |
| | | @ManagerAuth |
| | | public R statis2(@RequestParam(defaultValue = "1")Integer curr, |
| | | @RequestParam(defaultValue = "10")Integer limit, |
| | | @RequestParam Map<String, Object> param) { |
| | | |
| | | Object owner = param.get("owner"); |
| | | if (!Cools.isEmpty(owner)){ |
| | | LocOwner owner1 = locOwnerService.selectOne(new EntityWrapper<LocOwner>().like("owner", owner.toString())); |
| | | |
| | | param.put("owner",owner1.getId()); |
| | | }else { |
| | | param.remove("owner"); |
| | | } |
| | | |
| | | Page<LocDetlAll> stockStatis = locDetlService.getOwnerStatisAll(toPage(curr, limit, param, LocDetlAll.class)); |
| | | for (LocDetlAll locDetlAll : stockStatis.getRecords()) { |
| | | Mat mat = matService.selectByMatnr(locDetlAll.getMatnr()); |
| | | if (mat != null) { |
| | | locDetlAll.sync(mat); |
| | | } |
| | | } |
| | | return R.ok().add(stockStatis); |
| | | } |
| | | |
| | | @Autowired |
| | | private LocDetlMapper LocDetlMapper; |
| | | |
| | | @RequestMapping(value = "/locDetl/statis/export") |
| | | // @ManagerAuth |
| | | public void statisExport(HttpServletResponse response) throws IOException { |
| | | List<LocDetl> excel = LocDetlMapper.getStockStatisExcel(); |
| | | for (LocDetl locDetl : excel) { |
| | | Mat mat = matService.selectByMatnr(locDetl.getMatnr()); |
| | | if (mat != null) { |
| | | locDetl.sync(mat); |
| | | } |
| | | } |
| | | response.setContentType("application/vnd.ms-excel"); |
| | | response.setCharacterEncoding("utf-8"); |
| | | String fileName = URLEncoder.encode("库存明细统计报表", "UTF-8"); |
| | | response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); |
| | | EasyExcel.write(response.getOutputStream(), LocDetl.class) |
| | | .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) |
| | | .sheet("表1") |
| | | .doWrite(excel); |
| | | } |
| | | |
| | | /** |
| | | * 获取库存总数 |
| | | * @return |
| | | */ |
| | | @RequestMapping("/locDetl/count") |
| | | public R getAllCount(){ |
| | | Double sum = locDetlService.sumAll(); |
| | | return R.ok(sum); |
| | | } |
| | | |
| | | |
| | | @RequestMapping(value = "/turn/over/list/auth") |
| | | @ManagerAuth |
| | | public R turnOverList(@RequestParam(defaultValue = "1")Integer curr, |
| | | @RequestParam(defaultValue = "10")Integer limit, |
| | | @RequestParam Map<String, Object> param){ |
| | | if (!Cools.isEmpty(param.get("modi_time"))){ |
| | | String val = String.valueOf(param.get("modi_time")); |
| | | if (val.contains(RANGE_TIME_LINK)) { |
| | | String[] dates = val.split(RANGE_TIME_LINK); |
| | | param.put("startTime", DateUtils.convert(dates[0])); |
| | | param.put("endTime", DateUtils.convert(dates[1])); |
| | | param.remove("modi_time"); |
| | | } |
| | | } |
| | | if (!Cools.isEmpty(param.get("owner"))){ |
| | | List<LocOwner> locOwners = locOwnerService.selectList(new EntityWrapper<LocOwner>().eq("owner", param.get("owner"))); |
| | | if (Cools.isEmpty(locOwners) || locOwners.size()>1){ |
| | | return R.error(); |
| | | }else { |
| | | param.remove("owner"); |
| | | param.put("owner", locOwners.get(0).getId()); |
| | | } |
| | | } |
| | | |
| | | return R.ok(locDetlService.getStockOut(toPage(curr, limit, param, LocDetl.class),"1")); |
| | | } |
| | | |
| | | |
| | | @RequestMapping(value = "/locDetl/selectPayment/list/auth") |
| | | @ManagerAuth |
| | | public R list(@RequestParam(defaultValue = "1")Integer curr, |
| | | @RequestParam(defaultValue = "10")Integer limit, |
| | | @RequestParam(required = false)String orderByField, |
| | | @RequestParam(required = false)String orderByType, |
| | | @RequestParam Map<String, Object> param){ |
| | | Integer owner = null; |
| | | Integer payment = null; |
| | | if (param.get("owner$") != null && param.get("owner$") != ""){ |
| | | LocOwner locOwner = locOwnerService.selectOne(new EntityWrapper<LocOwner>().like("owner", (String) param.get("owner$"))); |
| | | if(locOwner == null){ |
| | | return R.error("参数有误!"); |
| | | } |
| | | param.remove("owner$"); |
| | | owner = locOwner.getId(); |
| | | } |
| | | if (param.get("payment$") != null && param.get("payment$") != ""){ |
| | | if ( param.get("payment$").equals("仓储") ){ |
| | | payment = 1; |
| | | } else if (param.get("payment$").equals("代采")) { |
| | | payment = 0; |
| | | } |
| | | param.remove("payment$"); |
| | | } |
| | | |
| | | LocDetlDTO locDetlDTO = new LocDetlDTO(); |
| | | locDetlDTO.setPageSize(limit); |
| | | locDetlDTO.setPageNumber(curr); |
| | | String locNo = String.valueOf(param.get("locNo")); |
| | | String matnr = String.valueOf(param.get("matnr")); |
| | | if (!Cools.isEmpty(locNo) && !locNo.equals("null")) { |
| | | locDetlDTO.setLocNo(locNo); |
| | | } |
| | | if (!Cools.isEmpty(matnr) && !matnr.equals("null")) { |
| | | locDetlDTO.setMatnr(matnr); |
| | | } |
| | | if (!Cools.isEmpty(owner) && !owner.equals("null")) { |
| | | locDetlDTO.setOwner(owner); |
| | | } |
| | | if (!Cools.isEmpty(payment) && !payment.equals("null")) { |
| | | locDetlDTO.setPayment(payment); |
| | | } |
| | | List<LocDetlAll> list = locDetlService.selectAllPyment(locDetlDTO); |
| | | int count = locDetlService.selectAllPymentcount(locDetlDTO); |
| | | Page<LocDetlAll> page = new Page<>(); |
| | | page.setRecords(list); |
| | | page.setTotal(count); |
| | | return R.ok(page); |
| | | } |
| | | |
| | | @RequestMapping(value = "/locDetl/selectOwner/list/auth") |
| | | @ManagerAuth |
| | | public R selectOwnerlist(@RequestParam(defaultValue = "1")Integer curr, |
| | | @RequestParam(defaultValue = "10")Integer limit, |
| | | @RequestParam(required = false)String orderByField, |
| | | @RequestParam(required = false)String orderByType, |
| | | @RequestParam Map<String, Object> param){ |
| | | Integer owner = null; |
| | | if (param.get("owner$") != null && param.get("owner$") != ""){ |
| | | LocOwner locOwner = locOwnerService.selectOne(new EntityWrapper<LocOwner>().like("owner", (String) param.get("owner$"))); |
| | | if(locOwner == null){ |
| | | return R.error("参数有误!"); |
| | | } |
| | | param.remove("owner$"); |
| | | owner = locOwner.getId(); |
| | | } |
| | | |
| | | LocDetlDTO locDetlDTO = new LocDetlDTO(); |
| | | locDetlDTO.setPageSize(limit); |
| | | locDetlDTO.setPageNumber(curr); |
| | | String locNo = String.valueOf(param.get("locNo")); |
| | | String matnr = String.valueOf(param.get("matnr")); |
| | | if (!Cools.isEmpty(locNo) && !locNo.equals("null")) { |
| | | locDetlDTO.setLocNo(locNo); |
| | | } |
| | | if (!Cools.isEmpty(matnr) && !matnr.equals("null")) { |
| | | locDetlDTO.setMatnr(matnr); |
| | | } |
| | | if (!Cools.isEmpty(owner) && !owner.equals("null")) { |
| | | locDetlDTO.setOwner(owner); |
| | | } |
| | | List<LocDetlAll> list = locDetlService.selectAllOwner(locDetlDTO); |
| | | int count = locDetlService.selectAllCount(locDetlDTO); |
| | | Page<LocDetlAll> page = new Page<>(); |
| | | page.setRecords(list); |
| | | page.setTotal(count); |
| | | if (list.size()==0){ |
| | | locDetlDTO.setPageNumber(1); |
| | | list = locDetlService.selectAllOwner(locDetlDTO); |
| | | count = locDetlService.selectAllCount(locDetlDTO); |
| | | page = new Page<>(); |
| | | page.setRecords(list); |
| | | page.setTotal(count); |
| | | } |
| | | return R.ok(page); |
| | | } |
| | | |
| | | @RequestMapping(value = "/locDetl/selectLocF") |
| | | @ManagerAuth |
| | | public R selectLocF(@RequestParam String locNo){ |
| | | String s = locDetlService.selectLocNoF(locNo); |
| | | if (s.equals("F")){ |
| | | return R.error("当前库位不是空库位"); |
| | | } |
| | | return R.ok("当前库位是空库位"); |
| | | } |
| | | |
| | | @RequestMapping(value = "/asr/wrk/out/in/all/view/auth") |
| | | @ManagerAuth |
| | | public R outInAllView(@RequestParam(defaultValue = "1")Integer curr, |
| | | @RequestParam(defaultValue = "10")Integer limit, |
| | | @RequestParam Map<String, Object> param) { |
| | | excludeTrash(param); |
| | | if (!Cools.isEmpty(param.get("matnr"))){ |
| | | Page<WrkDetlLogAllViewParam> wrkDetlLogAllViewParamPageM = locDetlService.selectAllWrkDetlLogAllViewParamByMatnr(toPage(curr, limit, param, WrkDetlLogAllViewParam.class)); |
| | | return R.ok().add(wrkDetlLogAllViewParamPageM); |
| | | }else { |
| | | Page<WrkDetlLogAllViewParam> wrkDetlLogAllViewParamPage = locDetlService.selectAllWrkDetlLogAllViewParam(toPage(curr, limit, param, WrkDetlLogAllViewParam.class)); |
| | | return R.ok().add(wrkDetlLogAllViewParamPage); |
| | | } |
| | | } |
| | | |
| | | @RequestMapping(value = "/asr/wrk/out/in/all/count/view/auth") |
| | | @ManagerAuth |
| | | public R outInAllCountView(@RequestParam(defaultValue = "1")Integer curr, |
| | | @RequestParam(defaultValue = "10")Integer limit, |
| | | @RequestParam Map<String, Object> param) { |
| | | excludeTrash(param); |
| | | LocalDate localDate = LocalDate.now(); |
| | | int year = localDate.getYear(); |
| | | int month = localDate.getMonthValue(); |
| | | int day = localDate.getDayOfMonth(); |
| | | param.put("year",year); |
| | | param.put("month",month); |
| | | param.put("day",day); |
| | | param.put("kun","All"); |
| | | param.put("upDown","出库"); |
| | | List<WrkDetlLogAllViewParam> excel = locDetlService.selectAllWrkDetlLogAllViewParamE(param); |
| | | Double a=0.0; |
| | | for (WrkDetlLogAllViewParam wrkDetlLogAllViewParam:excel |
| | | ) { |
| | | a=wrkDetlLogAllViewParam.getAnfme()+a; |
| | | } |
| | | |
| | | param.put("upDown","入库"); |
| | | List<WrkDetlLogAllViewParam> excel2 = locDetlService.selectAllWrkDetlLogAllViewParamE(param); |
| | | Double b=0.0; |
| | | for (WrkDetlLogAllViewParam wrkDetlLogAllViewParam:excel2 |
| | | ) { |
| | | b=wrkDetlLogAllViewParam.getAnfme()+b; |
| | | } |
| | | |
| | | Map<String, Object> map2 = new HashMap<>(); |
| | | map2.put("a", a); |
| | | map2.put("b", b); |
| | | |
| | | return R.ok(map2); |
| | | } |
| | | |
| | | @RequestMapping(value = "/asr/wrk/out/in/all/view/export") |
| | | // @ManagerAuth |
| | | public void outInAllExport(HttpServletResponse response, |
| | | @RequestParam Map<String, Object> param) throws IOException { |
| | | List<WrkDetlLogAllViewParam> excel = new ArrayList<>(); |
| | | excludeTrash(param); |
| | | param.put("kun","All"); |
| | | if (!Cools.isEmpty(param.get("matnr"))){ |
| | | excel = locDetlService.selectAllWrkDetlLogAllViewParamByMatnrE(param); |
| | | |
| | | }else { |
| | | excel = locDetlService.selectAllWrkDetlLogAllViewParamE(param); |
| | | |
| | | } |
| | | response.setContentType("application/vnd.ms-excel"); |
| | | response.setCharacterEncoding("utf-8"); |
| | | String fileName = URLEncoder.encode("出入库明细统计", "UTF-8"); |
| | | response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); |
| | | EasyExcel.write(response.getOutputStream(), WrkDetlLogAllViewParam.class) |
| | | .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) |
| | | .sheet("表1") |
| | | .doWrite(excel); |
| | | } |
| | | |
| | | } |