作者 张晓杰

生产订单、产品设计

正在显示 22 个修改的文件 包含 915 行增加6 行删除
... ... @@ -20,6 +20,7 @@ import org.jeecg.modules.erp.order_form.entity.TblWorkOrder;
import org.jeecg.modules.erp.order_form.mapper.TblWorkOrderMapper;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.ClassPathResource;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
... ...
... ... @@ -35,6 +35,11 @@ public class TblBiddingShenq implements Serializable {
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private Integer id;
@Excel(name = "订单号", width = 15)
@ApiModelProperty(value = "订单号")
private String orderId;
/**品名*/
@Excel(name = "品名", width = 15)
@ApiModelProperty(value = "品名")
... ... @@ -51,6 +56,12 @@ public class TblBiddingShenq implements Serializable {
@Excel(name = "单位", width = 15)
@ApiModelProperty(value = "单位")
private String danwei;
@Excel(name = "外形尺寸", width = 15)
@ApiModelProperty(value = "外形尺寸")
private String appearanceSize;
/**物料类别*/
@Excel(name = "物料类别", width = 15)
@ApiModelProperty(value = "物料类别")
... ...
... ... @@ -13,5 +13,5 @@ import org.jeecg.modules.erp.bidding_info.entity.TblBiddingShenq;
* @Version: V1.0
*/
public interface TblBiddingShenqMapper extends BaseMapper<TblBiddingShenq> {
Integer deleteByOrdeId(String orderId);
}
... ...
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.erp.bidding_info.mapper.TblBiddingShenqMapper">
<delete id="deleteByOrdeId" parameterType="String">
delete from tbl_bidding_shenq where order_id = #{orderId}
</delete>
</mapper>
\ No newline at end of file
... ...
... ... @@ -11,4 +11,6 @@ import org.jeecg.modules.erp.bidding_info.entity.TblBiddingShenq;
*/
public interface ITblBiddingShenqService extends IService<TblBiddingShenq> {
Integer deleteByOrdeId(String orderId);
}
... ...
... ... @@ -3,6 +3,7 @@ package org.jeecg.modules.erp.bidding_info.service.impl;
import org.jeecg.modules.erp.bidding_info.entity.TblBiddingShenq;
import org.jeecg.modules.erp.bidding_info.mapper.TblBiddingShenqMapper;
import org.jeecg.modules.erp.bidding_info.service.ITblBiddingShenqService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
... ... @@ -16,4 +17,11 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@Service
public class TblBiddingShenqServiceImpl extends ServiceImpl<TblBiddingShenqMapper, TblBiddingShenq> implements ITblBiddingShenqService {
@Autowired
private TblBiddingShenqMapper tblBiddingShenqMapper;
@Override
public Integer deleteByOrdeId(String orderId) {
return tblBiddingShenqMapper.deleteByOrdeId(orderId);
}
}
... ...
package org.jeecg.modules.erp.order_form.controller;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
... ... @@ -14,8 +17,10 @@ import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.erp.order_form.entity.TblOrderForm;
import org.jeecg.modules.erp.order_form.entity.TblProductType;
import org.jeecg.modules.erp.order_form.entity.TblWorkOrder;
import org.jeecg.modules.erp.order_form.entity.TblWorkPrice;
import org.jeecg.modules.erp.order_form.form.OrderForm;
import org.jeecg.modules.erp.order_form.service.ITblOrderFormService;
import org.jeecg.modules.erp.order_form.service.ITblWorkOrderService;
import org.jeecg.modules.erp.order_form.service.ITblWorkPriceService;
... ... @@ -93,6 +98,22 @@ public class TblOrderFormController extends JeecgController<TblOrderForm, ITblOr
@ApiOperation(value="订单表-添加", notes="订单表-添加")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody TblOrderForm tblOrderForm) {
// 产品类型
String type = tblOrderForm.getProductType() + DateUtil.format(new Date(), "YYYYMM");
Integer count = tblOrderFormService.getCountByType(type);
log.info("订单编号:"+ count);
String orderId= type + StrUtil.padPre(String.valueOf(count+1),4, '0');
tblOrderForm.setOrderId(orderId);
//任务下达日期
tblOrderForm.setOrderDate(new Date());
//是否分派设计 0 未分派 1已分派
tblOrderForm.setAssignDesignStatus("0");
//分派状态 0 未分派 1已分派
tblOrderForm.setDispatchStatus("0");
//产品设计状态:0未设计 1已设计
tblOrderForm.setProductDesignStatus("0");
//检验状态:0未检验 1已检验
tblOrderForm.setVerifyStatus("0");
tblOrderFormService.save(tblOrderForm);
return Result.OK("添加成功!");
}
... ... @@ -110,6 +131,38 @@ public class TblOrderFormController extends JeecgController<TblOrderForm, ITblOr
return Result.OK("编辑成功!");
}
// 分派设计人员
@RequestMapping(value = "/updateDesigner", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> updateDesigner(@RequestBody TblOrderForm tblOrderForm) {
// tblOrderForm.setAssignDesignDate(new Date());
tblOrderForm.setAssignDesignStatus("1");
tblOrderFormService.updateDesignerByOrderId(tblOrderForm);
return Result.OK("分派成功!");
}
//产品设计订单列表
@GetMapping(value = "/productDesignList")
public Result<IPage<TblOrderForm>> getProductDesignList(TblOrderForm tblOrderForm,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<TblOrderForm> queryWrapper = QueryGenerator.initQueryWrapper(tblOrderForm, req.getParameterMap());
queryWrapper.isNotNull("designer");
Page<TblOrderForm> page = new Page<TblOrderForm>(pageNo, pageSize);
IPage<TblOrderForm> pageList = tblOrderFormService.page(page, queryWrapper);
return Result.OK(pageList);
}
//通过id查询一条订单
@GetMapping(value = "/queryById/{id}")
public Result<TblOrderForm> queryById(@PathVariable(name="id",required=true) String id) {
TblOrderForm tblOrderForm = tblOrderFormService.selectOneById(id);
if(tblOrderForm==null) {
return Result.error("未找到对应数据");
}
return Result.OK(tblOrderForm);
}
/**
* 出货
* @param tblOrderForm
... ...
package org.jeecg.modules.erp.order_form.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
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.util.oConvertUtils;
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.modules.erp.order_form.entity.TblProductType;
import org.jeecg.modules.erp.order_form.service.ITblProductTypeService;
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.jeecg.common.system.base.controller.JeecgController;
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;
import org.jeecg.common.aspect.annotation.AutoLog;
/**
* @Description: 产品类型
* @Author: jeecg-boot
* @Date: 2024-05-15
* @Version: V1.0
*/
@Api(tags="产品类型")
@RestController
@RequestMapping("/order_form/tblProductType")
@Slf4j
public class TblProductTypeController extends JeecgController<TblProductType, ITblProductTypeService> {
@Autowired
private ITblProductTypeService tblProductTypeService;
/**
* 分页列表查询
*
* @param tblProductType
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "产品类型-分页列表查询")
@ApiOperation(value="产品类型-分页列表查询", notes="产品类型-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<TblProductType>> queryPageList(TblProductType tblProductType,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<TblProductType> queryWrapper = QueryGenerator.initQueryWrapper(tblProductType, req.getParameterMap());
Page<TblProductType> page = new Page<TblProductType>(pageNo, pageSize);
IPage<TblProductType> pageList = tblProductTypeService.page(page, queryWrapper);
return Result.OK(pageList);
}
@GetMapping(value = "/listProductType")
public Result<List<TblProductType>> queryList(TblProductType tblProductType,
HttpServletRequest req) {
QueryWrapper<TblProductType> queryWrapper = QueryGenerator.initQueryWrapper(tblProductType, req.getParameterMap());
Page<TblProductType> page = new Page<TblProductType>();
List<TblProductType> pageList = tblProductTypeService.list();
return Result.OK(pageList);
}
/**
* 添加
*
* @param tblProductType
* @return
*/
@AutoLog(value = "产品类型-添加")
@ApiOperation(value="产品类型-添加", notes="产品类型-添加")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody TblProductType tblProductType) {
tblProductTypeService.save(tblProductType);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param tblProductType
* @return
*/
@AutoLog(value = "产品类型-编辑")
@ApiOperation(value="产品类型-编辑", notes="产品类型-编辑")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody TblProductType tblProductType) {
tblProductTypeService.updateById(tblProductType);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "产品类型-通过id删除")
@ApiOperation(value="产品类型-通过id删除", notes="产品类型-通过id删除")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
tblProductTypeService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "产品类型-批量删除")
@ApiOperation(value="产品类型-批量删除", notes="产品类型-批量删除")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.tblProductTypeService.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<TblProductType> queryById(@RequestParam(name="id",required=true) String id) {
TblProductType tblProductType = tblProductTypeService.getById(id);
if(tblProductType==null) {
return Result.error("未找到对应数据");
}
return Result.OK(tblProductType);
}
/**
* 导出excel
*
* @param request
* @param tblProductType
*/
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, TblProductType tblProductType) {
return super.exportXls(request, tblProductType, TblProductType.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, TblProductType.class);
}
}
... ...
... ... @@ -3,9 +3,12 @@ package org.jeecg.modules.erp.order_form.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.util.List;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import org.jeecg.modules.erp.bidding_info.entity.TblBiddingShenq;
import org.jeecgframework.poi.excel.annotation.Excel;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
... ... @@ -57,28 +60,90 @@ public class TblOrderForm implements Serializable {
@Excel(name = "订货单位", width = 15)
@ApiModelProperty(value = "订货单位")
private java.lang.String orderCompany;
@Excel(name = "工作令", width = 15)
@ApiModelProperty(value = "工作令")
private java.lang.String workOrder;
@Excel(name = "产品名称", width = 15)
@ApiModelProperty(value = "产品名称")
private java.lang.String productName;
@Excel(name = "产品类型", width = 15)
@ApiModelProperty(value = "产品类型")
private java.lang.String productType;
@Excel(name = "设计人员", width = 15)
@ApiModelProperty(value = "设计人员")
private java.lang.String designer;
// @Excel(name = "分派设计任务日期", width = 15, format = "yyyy-MM-dd")
// @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
// @DateTimeFormat(pattern="yyyy-MM-dd")
// @ApiModelProperty(value = "分派设计任务日期")
// private java.util.Date assignDesignDate;
/**订单日期*/
@Excel(name = "订单日期", width = 15, format = "yyyy-MM-dd")
@Excel(name = "任务下达日期", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "订单日期")
private java.util.Date orderDate;
@Excel(name = "派工日期", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "派工日期")
private java.util.Date dispatchDate;
/**交货日期*/
@Excel(name = "交货日期", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "交货日期")
private java.util.Date deliveryDate;
@Excel(name = "数量", width = 15)
@ApiModelProperty(value = "数量")
private java.lang.String quantity;
/**状态*/
@Excel(name = "状态", width = 15)
@ApiModelProperty(value = "状态")
private java.lang.String status;
@Excel(name = "总工时", width = 15)
@ApiModelProperty(value = "总工时")
private java.lang.String totalWorkingHours;
@Excel(name = "已派发工时", width = 15)
@ApiModelProperty(value = "已派发工时")
private java.lang.String dispatchedWorkingHours;
/**实际完成时间*/
@Excel(name = "实际完成时间", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "实际完成时间")
private java.util.Date finishDate;
@Excel(name = "是否分派设计 0 未分派 1已分派", width = 15)
@ApiModelProperty(value = "是否分派设计 0 未分派 1已分派")
private java.lang.String assignDesignStatus;
@Excel(name = "分派状态 0 未分派 1已分派", width = 15)
@ApiModelProperty(value = "分派状态 0 未分派 1已分派")
private java.lang.String dispatchStatus;
@Excel(name = "产品设计状态:0未设计 1已设计", width = 15)
@ApiModelProperty(value = "产品设计状态:0未设计 1已设计")
private java.lang.String productDesignStatus;
@Excel(name = "检验状态:0未检验 1已检验", width = 15)
@ApiModelProperty(value = "检验状态:0未检验 1已检验")
private java.lang.String verifyStatus;
/**出货检验*/
@Excel(name = "出货检验", width = 15)
@ApiModelProperty(value = "出货检验")
... ... @@ -93,8 +158,13 @@ public class TblOrderForm implements Serializable {
@Excel(name = "主料图片", width = 15)
@ApiModelProperty(value = "主料图片")
private java.lang.String pics;
@Excel(name = "主料文件", width = 15)
@ApiModelProperty(value = "主料文件")
private java.lang.String files;
/**收货图片*/
@Excel(name = "收货图片", width = 15)
@ApiModelProperty(value = "收货图片")
private java.lang.String pics2;
// @Excel(name = "收货图片", width = 15)
// @ApiModelProperty(value = "收货图片")
// private java.lang.String pics2;
}
... ...
package org.jeecg.modules.erp.order_form.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: 产品类型
* @Author: jeecg-boot
* @Date: 2024-05-15
* @Version: V1.0
*/
@Data
@TableName("tbl_product_type")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="tbl_product_type对象", description="产品类型")
public class TblProductType implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
/**产品类型id*/
@Excel(name = "产品类型id", width = 15)
@ApiModelProperty(value = "产品类型id")
private java.lang.String productTypeId;
/**产品类型名称*/
@Excel(name = "产品类型名称", width = 15)
@ApiModelProperty(value = "产品类型名称")
private java.lang.String productTypeName;
}
... ...
package org.jeecg.modules.erp.order_form.form;
import java.io.Serializable;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.jeecg.modules.erp.bidding_info.entity.TblBiddingShenq;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
/**
* @Description: 订单表
* @Author: jeecg-boot
* @Date: 2022-07-12
* @Version: V1.0
*/
@Data
public class OrderForm implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
private java.lang.String id;
/**创建人*/
private java.lang.String createBy;
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private java.util.Date createTime;
/**更新人*/
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private java.util.Date updateTime;
/**所属部门*/
private java.lang.String sysOrgCode;
/**主料号*/
private java.lang.String orderId;
/**订货单位*/
private java.lang.String orderCompany;
private java.lang.String workOrder;
private java.lang.String productName;
private java.lang.String productType;
private java.lang.String designer;
// @Excel(name = "分派设计任务日期", width = 15, format = "yyyy-MM-dd")
// @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
// @DateTimeFormat(pattern="yyyy-MM-dd")
// @ApiModelProperty(value = "分派设计任务日期")
// private java.util.Date assignDesignDate;
/**订单日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date orderDate;
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date dispatchDate;
/**交货日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date deliveryDate;
private java.lang.String quantity;
/**状态*/
private java.lang.String status;
private java.lang.String totalWorkingHours;
private java.lang.String dispatchedWorkingHours;
/**实际完成时间*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date finishDate;
private java.lang.String assignDesignStatus;
private java.lang.String dispatchStatus;
private java.lang.String productDesignStatus;
private java.lang.String verifyStatus;
/**出货检验*/
private java.lang.String verifyResult;
/**出货日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private java.util.Date deliveryDate1;
/**主料图片*/
private java.lang.String pics;
private java.lang.String files;
private List<TblBiddingShenq> biddingSqList;
/**收货图片*/
// @Excel(name = "收货图片", width = 15)
// @ApiModelProperty(value = "收货图片")
// private java.lang.String pics2;
}
... ...
... ... @@ -15,4 +15,11 @@ public interface TblOrderFormMapper extends BaseMapper<TblOrderForm> {
List<TblOrderForm> pageTblOrderFormDate(Integer integer);
Integer getCountByType(String productType);
TblOrderForm selectOneById(String id);
Integer updateDesignerByOrderId(TblOrderForm tblOrderForm);
Integer updateProductDesignStatusByOrderId(TblOrderForm tblOrderForm);
}
... ...
package org.jeecg.modules.erp.order_form.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.erp.order_form.entity.TblProductType;
/**
* @Description: 产品类型
* @Author: jeecg-boot
* @Date: 2024-05-15
* @Version: V1.0
*/
public interface TblProductTypeMapper extends BaseMapper<TblProductType> {
}
... ...
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.erp.order_form.mapper.TblProductTypeMapper">
</mapper>
\ No newline at end of file
... ...
package org.jeecg.modules.erp.order_form.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.erp.order_form.entity.TblProductType;
/**
* @Description: 产品类型
* @Author: jeecg-boot
* @Date: 2024-05-15
* @Version: V1.0
*/
public interface ITblProductTypeService extends IService<TblProductType> {
}
... ...
package org.jeecg.modules.erp.order_form.service.impl;
import org.jeecg.modules.erp.order_form.entity.TblProductType;
import org.jeecg.modules.erp.order_form.mapper.TblProductTypeMapper;
import org.jeecg.modules.erp.order_form.service.ITblProductTypeService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 产品类型
* @Author: jeecg-boot
* @Date: 2024-05-15
* @Version: V1.0
*/
@Service
public class TblProductTypeServiceImpl extends ServiceImpl<TblProductTypeMapper, TblProductType> implements ITblProductTypeService {
}
... ...
package org.jeecg.modules.erp.product_design.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
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.util.oConvertUtils;
import org.jeecg.modules.erp.bidding_info.service.ITblBiddingShenqService;
import org.jeecg.modules.erp.order_form.entity.TblOrderForm;
import org.jeecg.modules.erp.order_form.form.OrderForm;
import org.jeecg.modules.erp.order_form.service.ITblOrderFormService;
import org.jeecg.modules.erp.product_design.entity.TblProductDesign;
import org.jeecg.modules.erp.product_design.service.ITblProductDesignService;
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.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.jeecg.common.system.base.controller.JeecgController;
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 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;
import org.jeecg.common.aspect.annotation.AutoLog;
/**
* @Description: 产品设计图
* @Author: jeecg-boot
* @Date: 2024-05-17
* @Version: V1.0
*/
@Api(tags="产品设计图")
@RestController
@RequestMapping("/product_design/tblProductDesign")
@Slf4j
public class TblProductDesignController extends JeecgController<TblProductDesign, ITblProductDesignService> {
@Autowired
private ITblProductDesignService tblProductDesignService;
@Autowired
private ITblBiddingShenqService tblBiddingShenqService;
@Autowired
private ITblOrderFormService tblOrderFormService;
/**
* 分页列表查询
*
* @param tblProductDesign
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "产品设计图-分页列表查询")
@ApiOperation(value="产品设计图-分页列表查询", notes="产品设计图-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<TblProductDesign>> queryPageList(TblProductDesign tblProductDesign,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<TblProductDesign> queryWrapper = QueryGenerator.initQueryWrapper(tblProductDesign, req.getParameterMap());
Page<TblProductDesign> page = new Page<TblProductDesign>(pageNo, pageSize);
IPage<TblProductDesign> pageList = tblProductDesignService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param tblOrderForm
* @return
*/
@Transactional(rollbackFor = Exception.class)
@AutoLog(value = "产品设计图-添加")
@ApiOperation(value="产品设计图-添加", notes="产品设计图-添加")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody OrderForm tblOrderForm) {
//保存产品设计
TblProductDesign tblProductDesign = new TblProductDesign();
tblProductDesign.setOrderId(tblOrderForm.getOrderId());
tblProductDesign.setDesignPic(tblOrderForm.getPics());
tblProductDesign.setDesignFile(tblOrderForm.getFiles());
tblProductDesignService.save(tblProductDesign);
//批量保存材料及外购件
tblBiddingShenqService.saveBatch(tblOrderForm.getBiddingSqList());
//更新生产订单表中产品设计状态
TblOrderForm tblOrderForm1 = new TblOrderForm();
tblOrderForm1.setProductDesignStatus("1");
tblOrderForm1.setOrderId(tblOrderForm.getOrderId());
tblOrderFormService.updateProductDesignStatusByOrderId(tblOrderForm1);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param tblOrderForm
* @return
*/
@Transactional(rollbackFor = Exception.class)
@AutoLog(value = "产品设计图-编辑")
@ApiOperation(value="产品设计图-编辑", notes="产品设计图-编辑")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody OrderForm tblOrderForm) {
//删除材料及外购件
tblBiddingShenqService.deleteByOrdeId(tblOrderForm.getOrderId());
//批量保存材料及外购件
tblBiddingShenqService.saveBatch(tblOrderForm.getBiddingSqList());
//保存产品设计
TblProductDesign tblProductDesign = new TblProductDesign();
//前端处理把产品设计的id传给生产订单id
tblProductDesign.setId(tblOrderForm.getId());
tblProductDesign.setOrderId(tblOrderForm.getOrderId());
tblProductDesign.setDesignPic(tblOrderForm.getPics());
tblProductDesign.setDesignFile(tblOrderForm.getFiles());
tblProductDesignService.updateById(tblProductDesign);
// tblProductDesignService.updateByOrderId(tblProductDesign);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "产品设计图-通过id删除")
@ApiOperation(value="产品设计图-通过id删除", notes="产品设计图-通过id删除")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
tblProductDesignService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "产品设计图-批量删除")
@ApiOperation(value="产品设计图-批量删除", notes="产品设计图-批量删除")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.tblProductDesignService.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<TblProductDesign> queryById(@RequestParam(name="id",required=true) String id) {
TblProductDesign tblProductDesign = tblProductDesignService.getById(id);
if(tblProductDesign==null) {
return Result.error("未找到对应数据");
}
return Result.OK(tblProductDesign);
}
@GetMapping(value = "/queryByOrderId/{orderId}")
public Result<TblProductDesign> queryByOrderId(@PathVariable(name="orderId",required=true) String orderId) {
TblProductDesign tblProductDesign = tblProductDesignService.getByOrderId(orderId);
if(tblProductDesign==null) {
return Result.error("未找到对应数据");
}
return Result.OK(tblProductDesign);
}
/**
* 导出excel
*
* @param request
* @param tblProductDesign
*/
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, TblProductDesign tblProductDesign) {
return super.exportXls(request, tblProductDesign, TblProductDesign.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, TblProductDesign.class);
}
}
... ...
package org.jeecg.modules.erp.product_design.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: 产品设计图
* @Author: jeecg-boot
* @Date: 2024-05-17
* @Version: V1.0
*/
@Data
@TableName("tbl_product_design")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="tbl_product_design对象", description="产品设计图")
public class TblProductDesign implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private String id;
/**订单编号*/
@Excel(name = "订单编号", width = 15)
@ApiModelProperty(value = "订单编号")
private String orderId;
/**设计图片*/
@Excel(name = "设计图片", width = 15)
@ApiModelProperty(value = "设计图片")
private String designPic;
/**设计文件*/
@Excel(name = "设计文件", width = 15)
@ApiModelProperty(value = "设计文件")
private String designFile;
/**创建人*/
@ApiModelProperty(value = "创建人")
private String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private Date updateTime;
/**所属部门*/
@ApiModelProperty(value = "所属部门")
private String sysOrgCode;
}
... ...
package org.jeecg.modules.erp.product_design.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.erp.bidding_info.entity.TblBiddingShenq;
import org.jeecg.modules.erp.product_design.entity.TblProductDesign;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 产品设计图
* @Author: jeecg-boot
* @Date: 2024-05-17
* @Version: V1.0
*/
public interface TblProductDesignMapper extends BaseMapper<TblProductDesign> {
TblProductDesign getByOrderId(String orderId);
Integer updateByOrderId(TblProductDesign tblProductDesign);
}
... ...
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.erp.product_design.mapper.TblProductDesignMapper">
<select id="getByOrderId" resultType="org.jeecg.modules.erp.product_design.entity.TblProductDesign">
select * from tbl_product_design where order_id = #{orderId}
</select>
<update id="updateByOrderId" parameterType="org.jeecg.modules.erp.product_design.entity.TblProductDesign">
update tbl_product_design set design_pic = #{designPic}, design_file = #{designFile} where order_id = #{orderId}
</update>
</mapper>
\ No newline at end of file
... ...
package org.jeecg.modules.erp.product_design.service;
import org.jeecg.modules.erp.product_design.entity.TblProductDesign;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: 产品设计图
* @Author: jeecg-boot
* @Date: 2024-05-17
* @Version: V1.0
*/
public interface ITblProductDesignService extends IService<TblProductDesign> {
TblProductDesign getByOrderId(String orderId);
Integer updateByOrderId(TblProductDesign tblProductDesign);
}
... ...
package org.jeecg.modules.erp.product_design.service.impl;
import org.jeecg.modules.erp.product_design.entity.TblProductDesign;
import org.jeecg.modules.erp.product_design.mapper.TblProductDesignMapper;
import org.jeecg.modules.erp.product_design.service.ITblProductDesignService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 产品设计图
* @Author: jeecg-boot
* @Date: 2024-05-17
* @Version: V1.0
*/
@Service
public class TblProductDesignServiceImpl extends ServiceImpl<TblProductDesignMapper, TblProductDesign> implements ITblProductDesignService {
@Autowired
private TblProductDesignMapper tblProductDesignMapper;
@Override
public TblProductDesign getByOrderId(String orderId) {
return tblProductDesignMapper.getByOrderId(orderId);
}
@Override
public Integer updateByOrderId(TblProductDesign tblProductDesign) {
return tblProductDesignMapper.updateByOrderId(tblProductDesign);
}
}
... ...