From cd652252f47facd77265ccdd3b14f3b899322221 Mon Sep 17 00:00:00 2001 From: linfso Date: Thu, 7 Mar 2024 18:47:50 +0800 Subject: [PATCH] md --- .../emis/EmisTmsScanPicInfoController.java | 118 ++++++++++++++++++ .../web/emis/EmisTmsScanRecordController.java | 118 ++++++++++++++++++ .../web/emis/EmisTmsTransPlanController.java | 118 ++++++++++++++++++ .../emis/EmisTmsTransPlanDtlController.java | 118 ++++++++++++++++++ .../EmisWaybillProblemInfoController.java | 118 ++++++++++++++++++ gentools/gen.bat | 2 + gentools/gen.sh | 5 + gentools/gentools.ini | 12 ++ gentools/lib/gentools-1.0.0.jar | Bin 0 -> 39781 bytes 9 files changed, 609 insertions(+) create mode 100644 emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsScanPicInfoController.java create mode 100644 emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsScanRecordController.java create mode 100644 emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsTransPlanController.java create mode 100644 emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsTransPlanDtlController.java create mode 100644 emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemInfoController.java create mode 100644 gentools/gen.bat create mode 100644 gentools/gen.sh create mode 100644 gentools/gentools.ini create mode 100644 gentools/lib/gentools-1.0.0.jar diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsScanPicInfoController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsScanPicInfoController.java new file mode 100644 index 000000000..de1fe3df8 --- /dev/null +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsScanPicInfoController.java @@ -0,0 +1,118 @@ + +/** + * @Project: emis + * @Title: EmisTmsScanPicInfoController.java + * @author linfso + * @date 2024-03-07 10:42:43 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

TMS扫描图片信息 控制器

+ */ + +package com.xdadan.erp.web.emis; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import com.xdadan.erp.common.annotation.Log; +import com.xdadan.erp.common.core.controller.BaseController; +import com.xdadan.erp.common.core.domain.AjaxResult; +import com.xdadan.erp.common.core.page.TableDataInfo; +import com.xdadan.erp.common.enums.BusinessType; +import com.xdadan.erp.common.utils.StringUtils; +import com.xdadan.erp.common.utils.poi.ExcelUtil; + +import com.xdadan.erp.emis.domain.EmisTmsScanPicInfo; +import com.xdadan.erp.emis.service.IEmisTmsScanPicInfoService; + +/** + * TMS扫描图片信息Controller + * + * @author linfso + * @date 2024-03-07 10:42:43 + */ +@RestController +@RequestMapping("/emis/emisTmsScanPicInfo") +public class EmisTmsScanPicInfoController extends BaseController +{ + @Autowired + private IEmisTmsScanPicInfoService emisTmsScanPicInfoService; + + /** + * 查询TMS扫描图片信息列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanPicInfo:list')") + @GetMapping("/list") + public TableDataInfo list(EmisTmsScanPicInfo emisTmsScanPicInfo) + { + startPage(); + List list = emisTmsScanPicInfoService.selectEmisTmsScanPicInfoList(emisTmsScanPicInfo); + return getDataTable(list); + } + + /** + * 导出TMS扫描图片信息列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanPicInfo:export')") + @Log(title = "TMS扫描图片信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, EmisTmsScanPicInfo emisTmsScanPicInfo) + { + List list = emisTmsScanPicInfoService.selectEmisTmsScanPicInfoList(emisTmsScanPicInfo); + ExcelUtil util = new ExcelUtil(EmisTmsScanPicInfo.class); + util.exportExcel(response, list, "TMS扫描图片信息数据"); + } + + /** + * 获取TMS扫描图片信息详细信息 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanPicInfo:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(emisTmsScanPicInfoService.selectEmisTmsScanPicInfoById(id)); + } + + /** + * 新增TMS扫描图片信息 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanPicInfo:add')") + @Log(title = "TMS扫描图片信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody EmisTmsScanPicInfo emisTmsScanPicInfo) + { + return toAjax(emisTmsScanPicInfoService.insertEmisTmsScanPicInfo(emisTmsScanPicInfo)); + } + + /** + * 修改TMS扫描图片信息 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanPicInfo:edit')") + @Log(title = "TMS扫描图片信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody EmisTmsScanPicInfo emisTmsScanPicInfo) + { + return toAjax(emisTmsScanPicInfoService.updateEmisTmsScanPicInfo(emisTmsScanPicInfo)); + } + + /** + * 删除TMS扫描图片信息 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanPicInfo:remove')") + @Log(title = "TMS扫描图片信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(emisTmsScanPicInfoService.deleteEmisTmsScanPicInfoByIds(ids)); + } +} diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsScanRecordController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsScanRecordController.java new file mode 100644 index 000000000..df3f2fa99 --- /dev/null +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsScanRecordController.java @@ -0,0 +1,118 @@ + +/** + * @Project: emis + * @Title: EmisTmsScanRecordController.java + * @author linfso + * @date 2024-03-07 10:42:44 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

TMS扫描记录 控制器

+ */ + +package com.xdadan.erp.web.emis; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import com.xdadan.erp.common.annotation.Log; +import com.xdadan.erp.common.core.controller.BaseController; +import com.xdadan.erp.common.core.domain.AjaxResult; +import com.xdadan.erp.common.core.page.TableDataInfo; +import com.xdadan.erp.common.enums.BusinessType; +import com.xdadan.erp.common.utils.StringUtils; +import com.xdadan.erp.common.utils.poi.ExcelUtil; + +import com.xdadan.erp.emis.domain.EmisTmsScanRecord; +import com.xdadan.erp.emis.service.IEmisTmsScanRecordService; + +/** + * TMS扫描记录Controller + * + * @author linfso + * @date 2024-03-07 10:42:44 + */ +@RestController +@RequestMapping("/emis/emisTmsScanRecord") +public class EmisTmsScanRecordController extends BaseController +{ + @Autowired + private IEmisTmsScanRecordService emisTmsScanRecordService; + + /** + * 查询TMS扫描记录列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanRecord:list')") + @GetMapping("/list") + public TableDataInfo list(EmisTmsScanRecord emisTmsScanRecord) + { + startPage(); + List list = emisTmsScanRecordService.selectEmisTmsScanRecordList(emisTmsScanRecord); + return getDataTable(list); + } + + /** + * 导出TMS扫描记录列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanRecord:export')") + @Log(title = "TMS扫描记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, EmisTmsScanRecord emisTmsScanRecord) + { + List list = emisTmsScanRecordService.selectEmisTmsScanRecordList(emisTmsScanRecord); + ExcelUtil util = new ExcelUtil(EmisTmsScanRecord.class); + util.exportExcel(response, list, "TMS扫描记录数据"); + } + + /** + * 获取TMS扫描记录详细信息 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanRecord:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(emisTmsScanRecordService.selectEmisTmsScanRecordById(id)); + } + + /** + * 新增TMS扫描记录 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanRecord:add')") + @Log(title = "TMS扫描记录", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody EmisTmsScanRecord emisTmsScanRecord) + { + return toAjax(emisTmsScanRecordService.insertEmisTmsScanRecord(emisTmsScanRecord)); + } + + /** + * 修改TMS扫描记录 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanRecord:edit')") + @Log(title = "TMS扫描记录", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody EmisTmsScanRecord emisTmsScanRecord) + { + return toAjax(emisTmsScanRecordService.updateEmisTmsScanRecord(emisTmsScanRecord)); + } + + /** + * 删除TMS扫描记录 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsScanRecord:remove')") + @Log(title = "TMS扫描记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(emisTmsScanRecordService.deleteEmisTmsScanRecordByIds(ids)); + } +} diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsTransPlanController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsTransPlanController.java new file mode 100644 index 000000000..420d5af9a --- /dev/null +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsTransPlanController.java @@ -0,0 +1,118 @@ + +/** + * @Project: emis + * @Title: EmisTmsTransPlanController.java + * @author linfso + * @date 2024-03-07 10:42:44 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

TMS承运线路计划 控制器

+ */ + +package com.xdadan.erp.web.emis; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import com.xdadan.erp.common.annotation.Log; +import com.xdadan.erp.common.core.controller.BaseController; +import com.xdadan.erp.common.core.domain.AjaxResult; +import com.xdadan.erp.common.core.page.TableDataInfo; +import com.xdadan.erp.common.enums.BusinessType; +import com.xdadan.erp.common.utils.StringUtils; +import com.xdadan.erp.common.utils.poi.ExcelUtil; + +import com.xdadan.erp.emis.domain.EmisTmsTransPlan; +import com.xdadan.erp.emis.service.IEmisTmsTransPlanService; + +/** + * TMS承运线路计划Controller + * + * @author linfso + * @date 2024-03-07 10:42:44 + */ +@RestController +@RequestMapping("/emis/emisTmsTransPlan") +public class EmisTmsTransPlanController extends BaseController +{ + @Autowired + private IEmisTmsTransPlanService emisTmsTransPlanService; + + /** + * 查询TMS承运线路计划列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlan:list')") + @GetMapping("/list") + public TableDataInfo list(EmisTmsTransPlan emisTmsTransPlan) + { + startPage(); + List list = emisTmsTransPlanService.selectEmisTmsTransPlanList(emisTmsTransPlan); + return getDataTable(list); + } + + /** + * 导出TMS承运线路计划列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlan:export')") + @Log(title = "TMS承运线路计划", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, EmisTmsTransPlan emisTmsTransPlan) + { + List list = emisTmsTransPlanService.selectEmisTmsTransPlanList(emisTmsTransPlan); + ExcelUtil util = new ExcelUtil(EmisTmsTransPlan.class); + util.exportExcel(response, list, "TMS承运线路计划数据"); + } + + /** + * 获取TMS承运线路计划详细信息 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlan:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(emisTmsTransPlanService.selectEmisTmsTransPlanById(id)); + } + + /** + * 新增TMS承运线路计划 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlan:add')") + @Log(title = "TMS承运线路计划", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody EmisTmsTransPlan emisTmsTransPlan) + { + return toAjax(emisTmsTransPlanService.insertEmisTmsTransPlan(emisTmsTransPlan)); + } + + /** + * 修改TMS承运线路计划 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlan:edit')") + @Log(title = "TMS承运线路计划", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody EmisTmsTransPlan emisTmsTransPlan) + { + return toAjax(emisTmsTransPlanService.updateEmisTmsTransPlan(emisTmsTransPlan)); + } + + /** + * 删除TMS承运线路计划 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlan:remove')") + @Log(title = "TMS承运线路计划", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(emisTmsTransPlanService.deleteEmisTmsTransPlanByIds(ids)); + } +} diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsTransPlanDtlController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsTransPlanDtlController.java new file mode 100644 index 000000000..dfbbe496a --- /dev/null +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsTransPlanDtlController.java @@ -0,0 +1,118 @@ + +/** + * @Project: emis + * @Title: EmisTmsTransPlanDtlController.java + * @author linfso + * @date 2024-03-07 10:42:45 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

TMS承运线路计划明细 控制器

+ */ + +package com.xdadan.erp.web.emis; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import com.xdadan.erp.common.annotation.Log; +import com.xdadan.erp.common.core.controller.BaseController; +import com.xdadan.erp.common.core.domain.AjaxResult; +import com.xdadan.erp.common.core.page.TableDataInfo; +import com.xdadan.erp.common.enums.BusinessType; +import com.xdadan.erp.common.utils.StringUtils; +import com.xdadan.erp.common.utils.poi.ExcelUtil; + +import com.xdadan.erp.emis.domain.EmisTmsTransPlanDtl; +import com.xdadan.erp.emis.service.IEmisTmsTransPlanDtlService; + +/** + * TMS承运线路计划明细Controller + * + * @author linfso + * @date 2024-03-07 10:42:45 + */ +@RestController +@RequestMapping("/emis/emisTmsTransPlanDtl") +public class EmisTmsTransPlanDtlController extends BaseController +{ + @Autowired + private IEmisTmsTransPlanDtlService emisTmsTransPlanDtlService; + + /** + * 查询TMS承运线路计划明细列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlanDtl:list')") + @GetMapping("/list") + public TableDataInfo list(EmisTmsTransPlanDtl emisTmsTransPlanDtl) + { + startPage(); + List list = emisTmsTransPlanDtlService.selectEmisTmsTransPlanDtlList(emisTmsTransPlanDtl); + return getDataTable(list); + } + + /** + * 导出TMS承运线路计划明细列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlanDtl:export')") + @Log(title = "TMS承运线路计划明细", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, EmisTmsTransPlanDtl emisTmsTransPlanDtl) + { + List list = emisTmsTransPlanDtlService.selectEmisTmsTransPlanDtlList(emisTmsTransPlanDtl); + ExcelUtil util = new ExcelUtil(EmisTmsTransPlanDtl.class); + util.exportExcel(response, list, "TMS承运线路计划明细数据"); + } + + /** + * 获取TMS承运线路计划明细详细信息 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlanDtl:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(emisTmsTransPlanDtlService.selectEmisTmsTransPlanDtlById(id)); + } + + /** + * 新增TMS承运线路计划明细 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlanDtl:add')") + @Log(title = "TMS承运线路计划明细", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody EmisTmsTransPlanDtl emisTmsTransPlanDtl) + { + return toAjax(emisTmsTransPlanDtlService.insertEmisTmsTransPlanDtl(emisTmsTransPlanDtl)); + } + + /** + * 修改TMS承运线路计划明细 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlanDtl:edit')") + @Log(title = "TMS承运线路计划明细", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody EmisTmsTransPlanDtl emisTmsTransPlanDtl) + { + return toAjax(emisTmsTransPlanDtlService.updateEmisTmsTransPlanDtl(emisTmsTransPlanDtl)); + } + + /** + * 删除TMS承运线路计划明细 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsTransPlanDtl:remove')") + @Log(title = "TMS承运线路计划明细", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(emisTmsTransPlanDtlService.deleteEmisTmsTransPlanDtlByIds(ids)); + } +} diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemInfoController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemInfoController.java new file mode 100644 index 000000000..2a256703b --- /dev/null +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemInfoController.java @@ -0,0 +1,118 @@ + +/** + * @Project: emis + * @Title: EmisWaybillProblemInfoController.java + * @author linfso + * @date 2024-03-07 10:42:45 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

问题件 控制器

+ */ + +package com.xdadan.erp.web.emis; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import com.xdadan.erp.common.annotation.Log; +import com.xdadan.erp.common.core.controller.BaseController; +import com.xdadan.erp.common.core.domain.AjaxResult; +import com.xdadan.erp.common.core.page.TableDataInfo; +import com.xdadan.erp.common.enums.BusinessType; +import com.xdadan.erp.common.utils.StringUtils; +import com.xdadan.erp.common.utils.poi.ExcelUtil; + +import com.xdadan.erp.emis.domain.EmisWaybillProblemInfo; +import com.xdadan.erp.emis.service.IEmisWaybillProblemInfoService; + +/** + * 问题件Controller + * + * @author linfso + * @date 2024-03-07 10:42:45 + */ +@RestController +@RequestMapping("/emis/emisWaybillProblemInfo") +public class EmisWaybillProblemInfoController extends BaseController +{ + @Autowired + private IEmisWaybillProblemInfoService emisWaybillProblemInfoService; + + /** + * 查询问题件列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemInfo:list')") + @GetMapping("/list") + public TableDataInfo list(EmisWaybillProblemInfo emisWaybillProblemInfo) + { + startPage(); + List list = emisWaybillProblemInfoService.selectEmisWaybillProblemInfoList(emisWaybillProblemInfo); + return getDataTable(list); + } + + /** + * 导出问题件列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemInfo:export')") + @Log(title = "问题件", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, EmisWaybillProblemInfo emisWaybillProblemInfo) + { + List list = emisWaybillProblemInfoService.selectEmisWaybillProblemInfoList(emisWaybillProblemInfo); + ExcelUtil util = new ExcelUtil(EmisWaybillProblemInfo.class); + util.exportExcel(response, list, "问题件数据"); + } + + /** + * 获取问题件详细信息 + */ + @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemInfo:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(emisWaybillProblemInfoService.selectEmisWaybillProblemInfoById(id)); + } + + /** + * 新增问题件 + */ + @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemInfo:add')") + @Log(title = "问题件", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody EmisWaybillProblemInfo emisWaybillProblemInfo) + { + return toAjax(emisWaybillProblemInfoService.insertEmisWaybillProblemInfo(emisWaybillProblemInfo)); + } + + /** + * 修改问题件 + */ + @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemInfo:edit')") + @Log(title = "问题件", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody EmisWaybillProblemInfo emisWaybillProblemInfo) + { + return toAjax(emisWaybillProblemInfoService.updateEmisWaybillProblemInfo(emisWaybillProblemInfo)); + } + + /** + * 删除问题件 + */ + @PreAuthorize("@ss.hasPermi('emis:emisWaybillProblemInfo:remove')") + @Log(title = "问题件", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(emisWaybillProblemInfoService.deleteEmisWaybillProblemInfoByIds(ids)); + } +} diff --git a/gentools/gen.bat b/gentools/gen.bat new file mode 100644 index 000000000..120343cc0 --- /dev/null +++ b/gentools/gen.bat @@ -0,0 +1,2 @@ +java -jar lib/gentools-1.0.0.jar +pause diff --git a/gentools/gen.sh b/gentools/gen.sh new file mode 100644 index 000000000..7028eb05f --- /dev/null +++ b/gentools/gen.sh @@ -0,0 +1,5 @@ +rm -rf code +java -jar lib/gentools-1.0.0.jar + + + diff --git a/gentools/gentools.ini b/gentools/gentools.ini new file mode 100644 index 000000000..9e1cb81c0 --- /dev/null +++ b/gentools/gentools.ini @@ -0,0 +1,12 @@ +[common] + +genCodeServer=http://code.xdadan.com +owner=tndev + +[autogen] +;project=tnemis-mgnt + +project=tnemis-mgnt +tables=emis_site_account,emis_site_settle_record + +localSrcPath=./code \ No newline at end of file diff --git a/gentools/lib/gentools-1.0.0.jar b/gentools/lib/gentools-1.0.0.jar new file mode 100644 index 0000000000000000000000000000000000000000..ee7a7ed1873a57cc07e3579871a3b7925aa5e912 GIT binary patch literal 39781 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

YIEco?kIKZEly1L1zxZwT|dng5wS(+bJ*v!i)t0 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 LV0@{9CjR;#%_4Bl literal 0 HcmV?d00001