|
@@ -0,0 +1,328 @@
|
|
|
+package org.jeecg.modules.documents.syShippingOrder.controller;
|
|
|
+
|
|
|
+import java.util.*;
|
|
|
+import java.io.IOException;
|
|
|
+import java.io.UnsupportedEncodingException;
|
|
|
+import java.net.URLDecoder;
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+import org.jeecg.common.api.vo.Result;
|
|
|
+import org.jeecg.common.system.query.QueryGenerator;
|
|
|
+import org.jeecg.common.aspect.annotation.AutoLog;
|
|
|
+import org.jeecg.common.util.oConvertUtils;
|
|
|
+import org.jeecg.modules.documents.letterDeposit.entity.SyRmb;
|
|
|
+import org.jeecg.modules.documents.letterDeposit.entity.SyUsd;
|
|
|
+import org.jeecg.modules.documents.shippingDetails.entity.SyShippingDetails;
|
|
|
+import org.jeecg.modules.documents.syShippingOrder.entity.SyShippingOrder;
|
|
|
+import org.jeecg.modules.documents.syShippingOrder.entity.SyShippingOrderItem;
|
|
|
+import org.jeecg.modules.documents.syShippingOrder.entity.VO.SyPackingList;
|
|
|
+import org.jeecg.modules.documents.syShippingOrder.service.ISyShippingOrderService;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.jeecg.common.system.base.controller.JeecgController;
|
|
|
+import org.jeecg.modules.spapl.entity.SizeTable;
|
|
|
+import org.jeecg.modules.splt.mapper.SyPackingListTailoringItemMapper;
|
|
|
+import org.jeecgframework.poi.excel.ExcelImportUtil;
|
|
|
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
|
|
+import org.jeecgframework.poi.excel.entity.ExportParams;
|
|
|
+import org.jeecgframework.poi.excel.entity.ImportParams;
|
|
|
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
|
|
+
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
+import org.springframework.web.multipart.MultipartHttpServletRequest;
|
|
|
+import org.springframework.web.servlet.ModelAndView;
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
+import io.swagger.annotations.Api;
|
|
|
+import io.swagger.annotations.ApiOperation;
|
|
|
+
|
|
|
+
|
|
|
+ * @Description: 托书主表实体类
|
|
|
+ * @Author: jeecg-boot
|
|
|
+ * @Date: 2022-07-21
|
|
|
+ * @Version: V1.0
|
|
|
+ */
|
|
|
+@Slf4j
|
|
|
+@Api(tags="托书主表实体类")
|
|
|
+@RestController
|
|
|
+@RequestMapping("/syShippingOrder/syShippingOrder")
|
|
|
+public class SyShippingOrderController extends JeecgController<SyShippingOrder, ISyShippingOrderService> {
|
|
|
+ @Autowired
|
|
|
+ private ISyShippingOrderService syShippingOrderService;
|
|
|
+ @Autowired
|
|
|
+ private SyPackingListTailoringItemMapper syPackingListTailoringItemMapper;
|
|
|
+
|
|
|
+
|
|
|
+ * 分页列表查询
|
|
|
+ *
|
|
|
+ * @param syShippingOrder
|
|
|
+ * @param pageNo
|
|
|
+ * @param pageSize
|
|
|
+ * @param req
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @AutoLog(value = "托书主表实体类-分页列表查询")
|
|
|
+ @ApiOperation(value="托书主表实体类-分页列表查询", notes="托书主表实体类-分页列表查询")
|
|
|
+ @GetMapping(value = "/list")
|
|
|
+ public Result<IPage<SyShippingOrder>> queryPageList(SyShippingOrder syShippingOrder,
|
|
|
+ @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
|
|
+ @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
|
|
+ HttpServletRequest req) {
|
|
|
+
|
|
|
+ Result<IPage<SyShippingOrder>> result = new Result<IPage<SyShippingOrder>>();
|
|
|
+
|
|
|
+ QueryWrapper<SyShippingOrder> queryWrapper = QueryGenerator.initQueryWrapper(syShippingOrder, req.getParameterMap());
|
|
|
+ Page<SyShippingOrder> page = new Page<SyShippingOrder>(pageNo, pageSize);
|
|
|
+ IPage<SyShippingOrder> pageList = syShippingOrderService.syShippingOrderPageList(page, queryWrapper);
|
|
|
+
|
|
|
+ result.setSuccess(true);
|
|
|
+ result.setMessage("查询成功!");
|
|
|
+ result.setResult(pageList);
|
|
|
+
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 添加
|
|
|
+ *
|
|
|
+ * @param syShippingOrder
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @AutoLog(value = "托书主表实体类-添加")
|
|
|
+ @ApiOperation(value="托书主表实体类-添加", notes="托书主表实体类-添加")
|
|
|
+ @PostMapping(value = "/add")
|
|
|
+ public Result<SyShippingOrder> add(@RequestBody SyShippingOrder syShippingOrder) {
|
|
|
+
|
|
|
+ Result<SyShippingOrder> result = new Result<>();
|
|
|
+
|
|
|
+ if(oConvertUtils.isEmpty(syShippingOrder)){
|
|
|
+ result.setSuccess(false);
|
|
|
+ result.setMessage("未找到对象");
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ List<SyShippingOrderItem> itemList = syShippingOrder.getSyShippingOrderItemList();
|
|
|
+ if(itemList.size()==0){
|
|
|
+ result.setSuccess(false);
|
|
|
+ result.setMessage("表体数据不能为空!");
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ String documentNo = syShippingOrder.getShippingOrderNumber();
|
|
|
+ QueryWrapper<SyShippingOrder> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.eq("shipping_order_number",documentNo).eq("del_flag",0);
|
|
|
+ List<SyShippingOrder> list = syShippingOrderService.list(queryWrapper);
|
|
|
+ if(list.size()>0){
|
|
|
+ result.setSuccess(false);
|
|
|
+ result.setMessage("托书号已存在,请重新维护!");
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ syShippingOrderService.syShippingOrderAdd(syShippingOrder);
|
|
|
+
|
|
|
+ return Result.OK("添加成功!");
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 编辑
|
|
|
+ *
|
|
|
+ * @param syShippingOrder
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @AutoLog(value = "托书主表实体类-编辑")
|
|
|
+ @ApiOperation(value="托书主表实体类-编辑", notes="托书主表实体类-编辑")
|
|
|
+ @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
|
|
|
+ public Result<SyShippingOrder> edit(@RequestBody SyShippingOrder syShippingOrder) {
|
|
|
+
|
|
|
+ Result<SyShippingOrder> result = new Result<SyShippingOrder>();
|
|
|
+ if(oConvertUtils.isEmpty(syShippingOrder)){
|
|
|
+ result.setSuccess(false);
|
|
|
+ result.setMessage("未找到对象");
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ List<SyShippingOrderItem> itemList = syShippingOrder.getSyShippingOrderItemList();
|
|
|
+ if(itemList.size()==0){
|
|
|
+ result.setSuccess(false);
|
|
|
+ result.setMessage("表体数据不能为空!");
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ SyShippingOrder pojo = syShippingOrderService.getById(syShippingOrder.getId());
|
|
|
+ if(pojo.getTheDocumentsState().equals("1")){
|
|
|
+ result.setSuccess(false);
|
|
|
+ result.setMessage("单据已提交,不允许修改!");
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ syShippingOrderService.syShippingOrderEdit(syShippingOrder);
|
|
|
+
|
|
|
+ return Result.OK("编辑成功!");
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 通过id删除
|
|
|
+ *
|
|
|
+ * @param id
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @AutoLog(value = "托书主表实体类-通过id删除")
|
|
|
+ @ApiOperation(value="托书主表实体类-通过id删除", notes="托书主表实体类-通过id删除")
|
|
|
+ @DeleteMapping(value = "/delete")
|
|
|
+ public Result<Integer> delete(@RequestParam(name="id",required=true) String id) {
|
|
|
+ syShippingOrderService.syShippingOrderItemDelete(id);
|
|
|
+ return Result.OK("删除成功!");
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 批量删除
|
|
|
+ *
|
|
|
+ * @param ids
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @AutoLog(value = "托书主表实体类-批量删除")
|
|
|
+ @ApiOperation(value="托书主表实体类-批量删除", notes="托书主表实体类-批量删除")
|
|
|
+ @DeleteMapping(value = "/deleteBatch")
|
|
|
+ public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
|
|
|
+ this.syShippingOrderService.removeByIds(Arrays.asList(ids.split(",")));
|
|
|
+ return Result.OK("批量删除成功!");
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 通过id查询
|
|
|
+ *
|
|
|
+ * @param id
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @AutoLog(value = "托书主表实体类-通过id查询")
|
|
|
+ @ApiOperation(value="托书主表实体类-通过id查询", notes="托书主表实体类-通过id查询")
|
|
|
+ @GetMapping(value = "/queryById")
|
|
|
+ public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
|
|
+ SyShippingOrder syShippingOrder = syShippingOrderService.getById(id);
|
|
|
+ return Result.OK(syShippingOrder);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 导出excel
|
|
|
+ *
|
|
|
+ * @param request
|
|
|
+ * @param syShippingOrder
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "/exportXls")
|
|
|
+ public ModelAndView exportXls(HttpServletRequest request, SyShippingOrder syShippingOrder) {
|
|
|
+ return super.exportXls(request, syShippingOrder, SyShippingOrder.class, "托书主表实体类");
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 通过excel导入数据
|
|
|
+ *
|
|
|
+ * @param request
|
|
|
+ * @param response
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
|
|
+ public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
|
|
+ return super.importExcel(request, response, SyShippingOrder.class);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ * 查询装箱单-成衣-面料
|
|
|
+ * @param syPackingList
|
|
|
+ * @param pageNo
|
|
|
+ * @param pageSize
|
|
|
+ * @param request
|
|
|
+ * @param response
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @AutoLog(value = "查询装箱单-成衣")
|
|
|
+ @ApiOperation(value="查询装箱单-成衣", notes="查询装箱单-成衣")
|
|
|
+ @GetMapping(value = "/queryTailoring")
|
|
|
+ public Result<IPage<SyPackingList>> queryTailoring(SyPackingList syPackingList,String tailoringOrFabric,
|
|
|
+ @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
|
|
+ @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
|
|
+ HttpServletRequest request, HttpServletResponse response){
|
|
|
+
|
|
|
+ Result<IPage<SyPackingList>> result = new Result<IPage<SyPackingList>>();
|
|
|
+
|
|
|
+ IPage<SyPackingList> pageList = new Page<>();
|
|
|
+ Page<SyPackingList> page = new Page<SyPackingList>();
|
|
|
+
|
|
|
+ QueryWrapper<SyPackingList> queryWrapper = QueryGenerator.initQueryWrapper(syPackingList, request.getParameterMap());
|
|
|
+ if(tailoringOrFabric.equals("0")){
|
|
|
+ queryWrapper.eq("a.del_flag",0).eq("b.del_flag",0).eq("a.the_documents_state",1);
|
|
|
+ queryWrapper.groupBy("a.document_No");
|
|
|
+ pageList = syShippingOrderService.queryTailoring(page,queryWrapper);
|
|
|
+
|
|
|
+ }else{
|
|
|
+ queryWrapper.eq("a.del_flag",0).eq("b.del_flag",0).eq("a.status",1);
|
|
|
+ queryWrapper.groupBy("a.document_No");
|
|
|
+ pageList = syShippingOrderService.queryFabric(page,queryWrapper);
|
|
|
+
|
|
|
+ }
|
|
|
+ result.setSuccess(true);
|
|
|
+ result.setMessage("查询成功!");
|
|
|
+ result.setResult(pageList);
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 提交
|
|
|
+ * @param syShippingOrder
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @AutoLog(value = "发运明细提交,(提交:type=1,取消提交:type = 0)")
|
|
|
+ @ApiOperation(value = "发运明细提交,(提交:type=1,取消提交:type = 0)", notes="发运明细提交,(提交:type=1,取消提交:type = 0)")
|
|
|
+ @PostMapping(value = "/syShippingDetailsSubmit")
|
|
|
+ public Result<SyShippingOrder> syShippingDetailsSubmit(@RequestBody SyShippingOrder syShippingOrder) {
|
|
|
+
|
|
|
+ Result<SyShippingOrder> result = new Result<>();
|
|
|
+
|
|
|
+ try {
|
|
|
+
|
|
|
+ if(org.jeecg.modules.system.util.oConvertUtils.isEmpty(syShippingOrder.getId())){
|
|
|
+ result.setMessage("未拿到ID");
|
|
|
+ result.setSuccess(false);
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ SyShippingOrder entity = syShippingOrderService.getById(syShippingOrder.getId());
|
|
|
+ if(org.jeecg.modules.system.util.oConvertUtils.isEmpty(entity)){
|
|
|
+ result.setMessage("未找到该数据!");
|
|
|
+ result.setSuccess(false);
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ int i = syShippingOrderService.syShippingOrderSubmit(syShippingOrder.getId(),syShippingOrder.getType());
|
|
|
+ if(i>0){
|
|
|
+ if(syShippingOrder.getType().equals("1")){
|
|
|
+ result.setSuccess(true);
|
|
|
+ result.setMessage("提交成功");
|
|
|
+ result.setResult(syShippingOrder);
|
|
|
+ }else{
|
|
|
+ result.setSuccess(true);
|
|
|
+ result.setMessage("取消提交成功");
|
|
|
+ result.setResult(syShippingOrder);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }catch (Exception ex){
|
|
|
+ ex.printStackTrace();
|
|
|
+ log.error("提交失败:" + ex.getMessage());
|
|
|
+ result.error500("提交失败:" + ex.getMessage());
|
|
|
+ }
|
|
|
+
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+}
|