rev:根据实际排产场景,修改销售订单内容
This commit is contained in:
@@ -3,25 +3,16 @@ package org.nl.common.utils;
|
|||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.poi.ss.formula.functions.T;
|
|
||||||
import org.nl.common.publish.event.PublishEvent;
|
|
||||||
import org.nl.config.thread.ThreadPoolExecutorUtil;
|
|
||||||
import org.nl.modules.wql.util.SpringContextHolder;
|
import org.nl.modules.wql.util.SpringContextHolder;
|
||||||
import org.nl.wms.system_manage.service.ql.IPdmQlOptionService;
|
import org.nl.wms.system_manage.service.ql.IPdmQlOptionService;
|
||||||
import org.nl.wms.system_manage.service.ql.dao.PdmQlOption;
|
import org.nl.wms.system_manage.service.ql.dao.PdmQlOption;
|
||||||
import org.nl.wms.system_manage.service.ql.dto.OptionRecordQuery;
|
import org.nl.wms.system_manage.service.ql.dto.OptionRecordQuery;
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
|
||||||
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.concurrent.ThreadPoolExecutor;
|
import java.util.concurrent.ThreadPoolExecutor;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@@ -0,0 +1,45 @@
|
|||||||
|
package org.nl.config;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
|
||||||
|
import org.apache.ibatis.reflection.MetaObject;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 自动填充公共字段
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
public class MetaDataHandler implements MetaObjectHandler
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 插入操作自动填充
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void insertFill(MetaObject metaObject)
|
||||||
|
{
|
||||||
|
//不一定有修改或删除字段,比如交易记录不能删除也不能修改
|
||||||
|
if(metaObject.hasSetter("is_delete"))
|
||||||
|
{
|
||||||
|
metaObject.setValue("is_delete", 0);
|
||||||
|
}
|
||||||
|
if(metaObject.hasSetter("update_time"))
|
||||||
|
{
|
||||||
|
metaObject.setValue("update_time", new Date());
|
||||||
|
}
|
||||||
|
metaObject.setValue("create_time", new Date());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新操作自动填充
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void updateFill(MetaObject metaObject)
|
||||||
|
{
|
||||||
|
if(metaObject.hasSetter("update_time"))
|
||||||
|
{
|
||||||
|
metaObject.setValue("update_time", new Date());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -137,7 +137,7 @@ public class WmsToSapServiceImpl implements WmsToSapService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
sale_jo.setSale_code(row.getString("Vbeln"));
|
sale_jo.setSale_code(row.getString("Vbeln"));
|
||||||
sale_jo.setSeq_no(row.getString("Posnr"));
|
sale_jo.setSeq_no(row.getInteger("Posnr"));
|
||||||
sale_jo.setSale_type(row.getString("Auart"));
|
sale_jo.setSale_type(row.getString("Auart"));
|
||||||
String material_code = row.getString("Matnr").replaceAll("^(0+)", "");
|
String material_code = row.getString("Matnr").replaceAll("^(0+)", "");
|
||||||
//获取物料对应的物料标识
|
//获取物料对应的物料标识
|
||||||
@@ -173,11 +173,10 @@ public class WmsToSapServiceImpl implements WmsToSapService {
|
|||||||
} else {
|
} else {
|
||||||
sale_jo.setQty_unit_id(unit_jo.getMeasure_unit_id());
|
sale_jo.setQty_unit_id(unit_jo.getMeasure_unit_id());
|
||||||
}
|
}
|
||||||
sale_jo.setPlandeliver_date(row.getString("Edatu"));
|
//sale_jo.setPlandeliver_date(row.getString("Edatu"));
|
||||||
sale_jo.setCreate_id(SecurityUtils.getCurrentUserId());
|
sale_jo.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||||
sale_jo.setCreate_time(DateUtil.now());
|
sale_jo.setCreate_time(new Date());
|
||||||
sale_jo.setCreate_name(SecurityUtils.getCurrentNickName());
|
sale_jo.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||||
sale_jo.setIs_delete("0");
|
|
||||||
if (need_update) {
|
if (need_update) {
|
||||||
saleOrderService.updateById(sale_jo);
|
saleOrderService.updateById(sale_jo);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -57,7 +57,6 @@ public class MaterialbaseServiceImpl implements MaterialbaseService{
|
|||||||
@Qualifier("meshandlerPool")
|
@Qualifier("meshandlerPool")
|
||||||
private ThreadPoolExecutor pool;
|
private ThreadPoolExecutor pool;
|
||||||
|
|
||||||
private final RedisUtils redisUtils;
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private IMdMeMaterialbaseService materialbaseService;
|
private IMdMeMaterialbaseService materialbaseService;
|
||||||
@Autowired
|
@Autowired
|
||||||
@@ -163,11 +162,6 @@ public class MaterialbaseServiceImpl implements MaterialbaseService{
|
|||||||
WQLObject wo = WQLObject.getWQLObject("md_me_materialbase");
|
WQLObject wo = WQLObject.getWQLObject("md_me_materialbase");
|
||||||
JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto));
|
JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto));
|
||||||
wo.insert(json);
|
wo.insert(json);
|
||||||
//子线程异步更新redis数据
|
|
||||||
CompletableFuture<Void> updateMaterToRedis = CompletableFuture.runAsync(this::updateRedis, pool);
|
|
||||||
updateMaterToRedis.exceptionally((e) -> {
|
|
||||||
throw new BadRequestException("物料信息缓存redis失败");
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -179,11 +173,6 @@ public class MaterialbaseServiceImpl implements MaterialbaseService{
|
|||||||
materialbase.setUpdate_id(SecurityUtils.getCurrentUserId());
|
materialbase.setUpdate_id(SecurityUtils.getCurrentUserId());
|
||||||
materialbase.setUpdate_name(SecurityUtils.getCurrentNickName());
|
materialbase.setUpdate_name(SecurityUtils.getCurrentNickName());
|
||||||
materialbaseService.updateById(materialbase);
|
materialbaseService.updateById(materialbase);
|
||||||
//子线程异步更新redis数据
|
|
||||||
CompletableFuture<Void> updateMaterToRedis = CompletableFuture.runAsync(this::updateRedis, pool);
|
|
||||||
updateMaterToRedis.exceptionally((e) -> {
|
|
||||||
throw new BadRequestException("物料信息缓存redis失败");
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -201,11 +190,6 @@ public class MaterialbaseServiceImpl implements MaterialbaseService{
|
|||||||
param.put("update_time", DateUtil.now());
|
param.put("update_time", DateUtil.now());
|
||||||
wo.update(param);
|
wo.update(param);
|
||||||
}
|
}
|
||||||
//子线程异步更新redis数据
|
|
||||||
CompletableFuture<Void> updateMaterToRedis = CompletableFuture.runAsync(this::updateRedis, pool);
|
|
||||||
updateMaterToRedis.exceptionally((e) -> {
|
|
||||||
throw new BadRequestException("物料信息缓存redis失败");
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -328,11 +312,6 @@ public class MaterialbaseServiceImpl implements MaterialbaseService{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
result.put("message", "导入成功!一共导入:" + rows.size() + "条数据!");
|
result.put("message", "导入成功!一共导入:" + rows.size() + "条数据!");
|
||||||
//子线程异步更新redis数据
|
|
||||||
CompletableFuture<Void> updateMaterToRedis = CompletableFuture.runAsync(this::updateRedis, pool);
|
|
||||||
updateMaterToRedis.exceptionally((e) -> {
|
|
||||||
throw new BadRequestException("物料信息缓存redis失败");
|
|
||||||
});
|
|
||||||
return new JSONObject();
|
return new JSONObject();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -353,9 +332,5 @@ public class MaterialbaseServiceImpl implements MaterialbaseService{
|
|||||||
return newParentArray;
|
return newParentArray;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void updateRedis() {
|
|
||||||
JSONArray materialJsonArray = WQL.getWO("PDA_QUERY").addParam("flag", "5").process().getResultJSONArray(0);
|
|
||||||
List<MaterialDto> finalMaterialList = materialJsonArray.toJavaList(MaterialDto.class);
|
|
||||||
redisUtils.set("hl:cacheLineHand:materialBase:mid", finalMaterialList);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -58,6 +58,10 @@ public class MpsSaleOrderController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*导入订单
|
||||||
|
*/
|
||||||
|
@Log("导入订单")
|
||||||
@PostMapping("/excelImport")
|
@PostMapping("/excelImport")
|
||||||
public ResponseEntity<Object> excelImport(@RequestParam("file") MultipartFile file, HttpServletRequest request) {
|
public ResponseEntity<Object> excelImport(@RequestParam("file") MultipartFile file, HttpServletRequest request) {
|
||||||
iMpsSaleOrderService.excelImport(file,request);
|
iMpsSaleOrderService.excelImport(file,request);
|
||||||
|
|||||||
@@ -2,13 +2,12 @@ package org.nl.wms.mps_manage.saleorder.service.dao;
|
|||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.*;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
@@ -25,145 +24,198 @@ import lombok.EqualsAndHashCode;
|
|||||||
@TableName("mps_sale_order")
|
@TableName("mps_sale_order")
|
||||||
public class MpsSaleOrder implements Serializable{
|
public class MpsSaleOrder implements Serializable{
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 销售单标识
|
* 销售单标识
|
||||||
*/
|
*/
|
||||||
@TableId
|
@TableId(type = IdType.ASSIGN_ID)
|
||||||
|
@ApiModelProperty(value = "/**销售单标识*/")
|
||||||
private String sale_id;
|
private String sale_id;
|
||||||
/**
|
/**
|
||||||
* 销售单号
|
* 销售单号
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**销售单号*/")
|
||||||
private String sale_code;
|
private String sale_code;
|
||||||
/**
|
/**
|
||||||
* 明细序号
|
* 明细序号
|
||||||
*/
|
*/
|
||||||
private String seq_no;
|
@ApiModelProperty(value = "/**明细序号*/")
|
||||||
/**
|
private Integer seq_no;
|
||||||
* aps映射订单编码
|
|
||||||
*/
|
|
||||||
private String aps_sale_code;
|
|
||||||
/**
|
|
||||||
* aps映射订单类型
|
|
||||||
*/
|
|
||||||
private String aps_sale_type;
|
|
||||||
/**
|
|
||||||
* aps映射订单状态
|
|
||||||
*/
|
|
||||||
private String aps_status;
|
|
||||||
/**
|
|
||||||
* 物料编码
|
|
||||||
*/
|
|
||||||
private String material_code;
|
|
||||||
/**
|
/**
|
||||||
* 销售单类型
|
* 销售单类型
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**销售单类型*/")
|
||||||
private String sale_type;
|
private String sale_type;
|
||||||
/**
|
/**
|
||||||
* 物料标识
|
* 物料标识
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**物料标识*/")
|
||||||
private String material_id;
|
private String material_id;
|
||||||
/**
|
/**
|
||||||
* 状态
|
* 状态
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**状态*/")
|
||||||
private String status;
|
private String status;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 销售数量
|
* 销售数量
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**销售数量*/")
|
||||||
private BigDecimal sale_qty;
|
private BigDecimal sale_qty;
|
||||||
/**
|
/**
|
||||||
* 生产顺序
|
* 生产顺序
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**生产顺序*/")
|
||||||
private Integer produce_seq;
|
private Integer produce_seq;
|
||||||
/**
|
/**
|
||||||
* 客户标识
|
* 客户标识
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**客户标识*/")
|
||||||
private String cust_id;
|
private String cust_id;
|
||||||
/**
|
/**
|
||||||
* 客户编码
|
* 客户编码
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**客户编码*/")
|
||||||
private String cust_code;
|
private String cust_code;
|
||||||
/**
|
/**
|
||||||
* 客户名称
|
* 客户名称
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**客户名称*/")
|
||||||
private String cust_name;
|
private String cust_name;
|
||||||
/**
|
/**
|
||||||
* 计量单位标识
|
* 计量单位标识
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**计量单位标识*/")
|
||||||
private String qty_unit_id;
|
private String qty_unit_id;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计量单位
|
* 数量计量单位名称
|
||||||
*/
|
*/
|
||||||
@TableField(exist = false)
|
@ApiModelProperty(value = "/**数量计量单位名称*/")
|
||||||
private String qty_unit_name;
|
private String qty_unit_name;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计划交期
|
* 计划交期
|
||||||
*/
|
*/
|
||||||
private String plandeliver_date;
|
@ApiModelProperty(value = "/**计划交期*/")
|
||||||
|
private Date plandeliver_date;
|
||||||
/**
|
/**
|
||||||
* 创建人
|
* 创建人
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**创建人*/")
|
||||||
private String create_id;
|
private String create_id;
|
||||||
/**
|
/**
|
||||||
* 创建人姓名
|
* 创建人姓名
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**创建人姓名*/")
|
||||||
private String create_name;
|
private String create_name;
|
||||||
/**
|
/**
|
||||||
* 创建时间
|
* 创建时间
|
||||||
*/
|
*/
|
||||||
private String create_time;
|
@ApiModelProperty(value = "/**创建时间*/")
|
||||||
|
@TableField(fill = FieldFill.INSERT)
|
||||||
|
private Date create_time;
|
||||||
/**
|
/**
|
||||||
* 提交人
|
* 提交人
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**提交人*/")
|
||||||
private String audit_id;
|
private String audit_id;
|
||||||
/**
|
/**
|
||||||
* 提交时间
|
* 提交时间
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**提交时间*/")
|
||||||
private String audit_time;
|
private String audit_time;
|
||||||
/**
|
/**
|
||||||
* 提交人姓名
|
* 提交人姓名
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**提交人姓名*/")
|
||||||
private String audit_name;
|
private String audit_name;
|
||||||
/**
|
/**
|
||||||
* 确认人
|
* 确认人
|
||||||
*/
|
*/
|
||||||
private Long confirm_id;
|
@ApiModelProperty(value = "/**确认人*/")
|
||||||
|
private String confirm_id;
|
||||||
/**
|
/**
|
||||||
* 确认人姓名
|
* 确认人姓名
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**确认人姓名*/")
|
||||||
private String confirm_name;
|
private String confirm_name;
|
||||||
/**
|
/**
|
||||||
* 确认时间
|
* 确认时间
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**确认时间*/")
|
||||||
private String confirm_time;
|
private String confirm_time;
|
||||||
|
/**
|
||||||
|
* 生成方式
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "/**生成方式*/")
|
||||||
|
private String create_mode;
|
||||||
/**
|
/**
|
||||||
* 是否删除
|
* 是否删除
|
||||||
*/
|
*/
|
||||||
private String is_delete;
|
@ApiModelProperty(value = "/**是否删除*/")
|
||||||
|
@TableField(fill = FieldFill.INSERT)
|
||||||
|
private Integer is_delete;
|
||||||
/**
|
/**
|
||||||
* 备注
|
* 备注
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**备注*/")
|
||||||
private String remark;
|
private String remark;
|
||||||
/**
|
/**
|
||||||
* 车间标识
|
* 车间标识
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**车间标识*/")
|
||||||
private String product_area;
|
private String product_area;
|
||||||
/**
|
/**
|
||||||
* 生产数量
|
* 生产数量
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**生产数量*/")
|
||||||
private BigDecimal product_qty;
|
private BigDecimal product_qty;
|
||||||
/**
|
/**
|
||||||
* 预入库数量
|
* 预入库数量
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**预入库数量*/")
|
||||||
private BigDecimal instor_qty;
|
private BigDecimal instor_qty;
|
||||||
/**
|
/**
|
||||||
* 发货数量
|
* 发货数量
|
||||||
*/
|
*/
|
||||||
|
@ApiModelProperty(value = "/**发货数量*/")
|
||||||
private BigDecimal sendout_qty;
|
private BigDecimal sendout_qty;
|
||||||
|
/**
|
||||||
|
* 物料编码
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "/**物料编码*/")
|
||||||
|
private String material_code;
|
||||||
|
/**
|
||||||
|
* 物料规格
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "/**物料规格*/")
|
||||||
|
private String material_spec;
|
||||||
|
/**
|
||||||
|
* 订单合同号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "/**订单合同号*/")
|
||||||
|
private String contract_code;
|
||||||
|
/**
|
||||||
|
* aps最早开始时间(下料时间)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "/**aps最早开始时间(下料时间)*/")
|
||||||
|
private String early_start_time;
|
||||||
|
/**
|
||||||
|
* aps订单状态
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "/**aps订单状态 */")
|
||||||
|
private String aps_status;
|
||||||
|
/**
|
||||||
|
* aps变更标识
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "/**aps变更标识*/")
|
||||||
|
private String aps_update_flag;
|
||||||
|
/**
|
||||||
|
* aps变更时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "/**aps变更时间*/")
|
||||||
|
private Date aps_update_time;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,16 +5,13 @@
|
|||||||
<select id="pageQuery" resultType="java.util.Map">
|
<select id="pageQuery" resultType="java.util.Map">
|
||||||
SELECT
|
SELECT
|
||||||
der.*,
|
der.*,
|
||||||
SUBSTRING_INDEX(der.aps_sale_code, '-', 1) AS aps_sale_code,
|
DATE_FORMAT(der.plandeliver_date, '%Y-%m-%d' ) AS plandeliverDate,
|
||||||
SUBSTRING_INDEX(der.aps_sale_code, '-', -1) AS aps_seq_no,
|
DATE_FORMAT(der.create_time, '%Y-%m-%d %H:%i:%s' ) AS createTime,
|
||||||
mater.material_name,
|
DATE_FORMAT(der.aps_update_time, '%Y-%m-%d %H:%i:%s' ) AS apsUpdateTime,
|
||||||
mater.material_spec,
|
mater.material_name
|
||||||
unit.unit_name AS qty_unit_name
|
|
||||||
FROM
|
FROM
|
||||||
mps_sale_order der
|
mps_sale_order der
|
||||||
LEFT JOIN md_me_materialbase mater ON der.material_code = mater.material_code
|
LEFT JOIN md_me_materialbase mater ON der.material_code = mater.material_code
|
||||||
LEFT JOIN md_pb_measureunit unit ON der.qty_unit_id = unit.measure_unit_id
|
|
||||||
|
|
||||||
<where>
|
<where>
|
||||||
der.is_delete = '0'
|
der.is_delete = '0'
|
||||||
<if test="query.sale_code != null">
|
<if test="query.sale_code != null">
|
||||||
@@ -37,22 +34,14 @@
|
|||||||
|
|
||||||
<select id="queryAll" resultType="java.util.Map">
|
<select id="queryAll" resultType="java.util.Map">
|
||||||
SELECT
|
SELECT
|
||||||
der.aps_sale_code ,
|
der.*,
|
||||||
SUBSTRING_INDEX(der.aps_sale_code, '-', 1) AS sale_code,
|
DATE_FORMAT(der.plandeliver_date, '%Y-%m-%d' ) AS plandeliverDate,
|
||||||
SUBSTRING_INDEX(der.aps_sale_code, '-', -1) AS seq_no,
|
DATE_FORMAT(der.create_time, '%Y-%m-%d %H:%i:%s' ) AS createTime,
|
||||||
der.aps_sale_type,der.aps_status,der.sale_type, der.material_id, der.material_code, der.product_area,
|
DATE_FORMAT(der.aps_update_time, '%Y-%m-%d %H:%i:%s' ) AS apsUpdateTime,
|
||||||
der.product_qty, der.sendout_qty, der.instor_qty,der.status, der.sale_qty, der.produce_seq,
|
mater.material_name
|
||||||
der.cust_id, der.cust_code, der.cust_name, der.qty_unit_id, der.plandeliver_date, der.create_id,
|
|
||||||
der.create_name, der.create_time, der.audit_id, der.audit_time, der.audit_name, der.confirm_id,
|
|
||||||
der.confirm_name, der.confirm_time, der.is_delete, der.remark,
|
|
||||||
mater.material_name,
|
|
||||||
mater.material_spec,
|
|
||||||
unit.unit_name AS qty_unit_name
|
|
||||||
FROM
|
FROM
|
||||||
mps_sale_order der
|
mps_sale_order der
|
||||||
LEFT JOIN md_me_materialbase mater ON der.material_code = mater.material_code
|
LEFT JOIN md_me_materialbase mater ON der.material_code = mater.material_code
|
||||||
LEFT JOIN md_pb_measureunit unit ON der.qty_unit_id = unit.measure_unit_id
|
|
||||||
|
|
||||||
<where>
|
<where>
|
||||||
der.is_delete = '0'
|
der.is_delete = '0'
|
||||||
<if test="query.sale_code != null">
|
<if test="query.sale_code != null">
|
||||||
|
|||||||
@@ -112,8 +112,7 @@ public class MpsSaleOrderServiceImpl extends ServiceImpl<MpsSaleOrderMapper,MpsS
|
|||||||
mpsSaleOrder.setStatus("10");
|
mpsSaleOrder.setStatus("10");
|
||||||
mpsSaleOrder.setCreate_id(SecurityUtils.getCurrentUserId());
|
mpsSaleOrder.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||||
mpsSaleOrder.setCreate_name(SecurityUtils.getCurrentNickName());
|
mpsSaleOrder.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||||
mpsSaleOrder.setCreate_time(DateUtil.now());
|
mpsSaleOrder.setCreate_time(new Date());
|
||||||
mpsSaleOrder.setIs_delete("0 ");
|
|
||||||
MdCsCustomerbase cust = icustomerbaseService.getOne(new QueryWrapper<MdCsCustomerbase>().eq("cust_code", mpsSaleOrder.getCust_code()));
|
MdCsCustomerbase cust = icustomerbaseService.getOne(new QueryWrapper<MdCsCustomerbase>().eq("cust_code", mpsSaleOrder.getCust_code()));
|
||||||
mpsSaleOrder.setCust_id(cust.getCust_id());
|
mpsSaleOrder.setCust_id(cust.getCust_id());
|
||||||
mpsSaleOrder.setCust_name(cust.getCust_name());
|
mpsSaleOrder.setCust_name(cust.getCust_name());
|
||||||
@@ -147,24 +146,20 @@ public class MpsSaleOrderServiceImpl extends ServiceImpl<MpsSaleOrderMapper,MpsS
|
|||||||
}
|
}
|
||||||
String error_message = "";
|
String error_message = "";
|
||||||
MpsSaleOrder mpsSaleOrder = new MpsSaleOrder();
|
MpsSaleOrder mpsSaleOrder = new MpsSaleOrder();
|
||||||
mpsSaleOrder.setSale_id(IdUtil.getStringId());
|
|
||||||
mpsSaleOrder.setSale_type("01");
|
mpsSaleOrder.setSale_type("01");
|
||||||
mpsSaleOrder.setProduct_area("A1");
|
|
||||||
mpsSaleOrder.setStatus("10");
|
mpsSaleOrder.setStatus("10");
|
||||||
|
mpsSaleOrder.setCreate_time(new Date());
|
||||||
mpsSaleOrder.setCreate_time(DateUtil.now());
|
|
||||||
mpsSaleOrder.setConfirm_time(DateUtil.now());
|
mpsSaleOrder.setConfirm_time(DateUtil.now());
|
||||||
mpsSaleOrder.setCreate_id(SecurityUtils.getCurrentUserId());
|
mpsSaleOrder.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||||
mpsSaleOrder.setCreate_name(SecurityUtils.getCurrentUsername());
|
mpsSaleOrder.setCreate_name(SecurityUtils.getCurrentUsername());
|
||||||
mpsSaleOrder.setAps_sale_type("M");
|
|
||||||
mpsSaleOrder.setAps_status("X");
|
mpsSaleOrder.setAps_status("X");
|
||||||
|
mpsSaleOrder.setCreate_mode("03");
|
||||||
for(int j = 0; j < list.size(); j++) {
|
for(int j = 0; j < list.size(); j++) {
|
||||||
String col = null == list.get(j) ? "" : String.valueOf(list.get(j));
|
String col = null == list.get(j) ? "" : String.valueOf(list.get(j));
|
||||||
//存在订单编号,忽略不导入
|
//存在订单编号,忽略不导入
|
||||||
OrderQuery orderQuery = new OrderQuery();
|
OrderQuery orderQuery = new OrderQuery();
|
||||||
List<Map> saleCode = baseMapper.queryAll(orderQuery);
|
List<Map> saleCode = baseMapper.queryAll(orderQuery);
|
||||||
if(saleCode.stream()
|
if(saleCode.stream().anyMatch(m -> col.equals(m.get("sale_code")))) {
|
||||||
.anyMatch(m -> col.equals(m.get("sale_code")))) {
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
解析cell:
|
解析cell:
|
||||||
@@ -177,67 +172,67 @@ public class MpsSaleOrderServiceImpl extends ServiceImpl<MpsSaleOrderMapper,MpsS
|
|||||||
}
|
}
|
||||||
if(j == 1) {
|
if(j == 1) {
|
||||||
if(StringUtils.isBlank(col)) {
|
if(StringUtils.isBlank(col)) {
|
||||||
throw new BadRequestException("明细序号不能为空");
|
throw new BadRequestException("合同号不能为空");
|
||||||
}
|
}
|
||||||
mpsSaleOrder.setSeq_no(col);
|
mpsSaleOrder.setContract_code(col);
|
||||||
mpsSaleOrder.setAps_sale_code(mpsSaleOrder.getSale_code() + "-" + col);
|
//mpsSaleOrder.setAps_sale_code(mpsSaleOrder.getSale_code() + "-" + col);
|
||||||
}
|
}
|
||||||
if(j == 2) {
|
if(j == 2) {
|
||||||
if(StringUtils.isBlank(col)) {
|
if(StringUtils.isBlank(col)) {
|
||||||
throw new BadRequestException("销售数量不能为空");
|
throw new BadRequestException("规格名称不能为空");
|
||||||
}
|
}
|
||||||
mpsSaleOrder.setSale_qty(BigDecimal.valueOf(Double.parseDouble(col)));
|
mpsSaleOrder.setMaterial_spec(col);
|
||||||
}
|
List<MdMeMaterialbase> meMaterialBases = materialbaseService.list(new QueryWrapper<MdMeMaterialbase>().like("material_spec", col));
|
||||||
if(j == 3) {
|
|
||||||
if(StringUtils.isBlank(col)) {
|
|
||||||
throw new BadRequestException("物料编码不能为空");
|
|
||||||
}
|
|
||||||
mpsSaleOrder.setMaterial_code(col);
|
|
||||||
List<MdMeMaterialbase> meMaterialBases = materialbaseService.list(new QueryWrapper<MdMeMaterialbase>().eq("material_code", col));
|
|
||||||
if(CollectionUtils.isEmpty(meMaterialBases)) {
|
if(CollectionUtils.isEmpty(meMaterialBases)) {
|
||||||
errorMap.put("第" + i + "行" + col, "物料编码对应物料信息不存在");
|
errorMap.put("第" + i + "行" + col, "物料规格对应物料信息不存在");
|
||||||
error_message = error_message + col + "物料编码对应物料信息不存在,";
|
error_message = error_message + col + "物料规格对应物料信息不存在,";
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
Optional<MdMeMaterialbase> first = meMaterialBases
|
Optional<MdMeMaterialbase> first = meMaterialBases.stream().findFirst();
|
||||||
.stream()
|
first.ifPresent(mdMeMaterialbase ->
|
||||||
.findFirst();
|
{
|
||||||
first.ifPresent(mdMeMaterialbase -> {
|
|
||||||
//物料id
|
//物料id
|
||||||
mpsSaleOrder.setMaterial_id(mdMeMaterialbase.getMaterial_id());
|
mpsSaleOrder.setMaterial_id(mdMeMaterialbase.getMaterial_id());
|
||||||
|
//物料编码
|
||||||
|
mpsSaleOrder.setMaterial_code(mdMeMaterialbase.getMaterial_code());
|
||||||
//计量单位
|
//计量单位
|
||||||
mpsSaleOrder.setQty_unit_id(mdMeMaterialbase.getBase_unit_id());
|
mpsSaleOrder.setQty_unit_id(mdMeMaterialbase.getBase_unit_id());
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(j == 4) {
|
if(j == 3) {
|
||||||
if(StringUtils.isNotBlank(col)) {
|
if(StringUtils.isBlank(col)) {
|
||||||
mpsSaleOrder.setCust_id(col);
|
throw new BadRequestException("工段信息不能为空");
|
||||||
}
|
}
|
||||||
|
//智能一线,智能三线
|
||||||
|
mpsSaleOrder.setProduct_area(col.contains("三") || col.contains("3") ? "A3" : "A1");
|
||||||
|
}
|
||||||
|
if(j == 4) {
|
||||||
|
if(StringUtils.isBlank(col)) {
|
||||||
|
throw new BadRequestException("销售数量不能为空");
|
||||||
|
}
|
||||||
|
mpsSaleOrder.setSale_qty(BigDecimal.valueOf(Double.parseDouble(col)));
|
||||||
}
|
}
|
||||||
if(j == 5) {
|
if(j == 5) {
|
||||||
|
//计量单位
|
||||||
if(StringUtils.isNotBlank(col)) {
|
if(StringUtils.isNotBlank(col)) {
|
||||||
mpsSaleOrder.setCust_code(col);
|
mpsSaleOrder.setQty_unit_name(col);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(j == 6) {
|
if(j == 6) {
|
||||||
|
//最早开始时间(下料时间)
|
||||||
if(StringUtils.isNotBlank(col)) {
|
if(StringUtils.isNotBlank(col)) {
|
||||||
mpsSaleOrder.setCust_name(col);
|
mpsSaleOrder.setEarly_start_time(DateUtil.format(DateUtil.parse(col), "yyyy-MM-dd"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(j == 7) {
|
if(j == 7) {
|
||||||
if(StringUtils.isBlank(col)) {
|
|
||||||
throw new BadRequestException("计量单位不能为空");
|
|
||||||
}
|
|
||||||
mpsSaleOrder.setQty_unit_id(col);
|
|
||||||
}
|
|
||||||
if(j == 8) {
|
|
||||||
if(StringUtils.isBlank(col)) {
|
if(StringUtils.isBlank(col)) {
|
||||||
throw new BadRequestException("订单交期不能为空");
|
throw new BadRequestException("订单交期不能为空");
|
||||||
}
|
}
|
||||||
mpsSaleOrder.setPlandeliver_date(DateUtil.format(DateUtil.parse(col), "yyyy/MM/dd"));
|
mpsSaleOrder.setPlandeliver_date(DateUtil.parse(col));
|
||||||
}
|
}
|
||||||
if(j == 9) {
|
if(j == 8) {
|
||||||
|
//备注
|
||||||
if(StringUtils.isNotBlank(col)) {
|
if(StringUtils.isNotBlank(col)) {
|
||||||
mpsSaleOrder.setRemark(col);
|
mpsSaleOrder.setRemark(col);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,6 +40,13 @@ public class PdmProduceWorkorder implements Serializable {
|
|||||||
*/
|
*/
|
||||||
private String workorder_code;
|
private String workorder_code;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工单编号
|
||||||
|
*/
|
||||||
|
private String material_code;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 班次类型
|
* 班次类型
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -161,35 +161,39 @@ public class IPdmProduceWorkorderServiceImpl extends ServiceImpl<PdmProduceWorko
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void down(List<String> ids) {
|
public void down(List<String> ids) {
|
||||||
if (ids == null || ids.size() == 0) {
|
if(ids == null || ids.size() == 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
List<PdmProduceWorkorder> workorders = this.list(new QueryWrapper<PdmProduceWorkorder>().in("workorder_id", ids).lt("workorder_status",WorkerOrderEnum.AUTO_COMPLETE.getCode()));
|
List<PdmProduceWorkorder> workorders = this.list(new QueryWrapper<PdmProduceWorkorder>().in("workorder_id", ids).lt("workorder_status", WorkerOrderEnum.AUTO_COMPLETE.getCode()));
|
||||||
if (workorders.size()!= ids.size()){
|
if(workorders.size() != ids.size()) {
|
||||||
throw new BadRequestException("完成的工单不允许再次下发");
|
throw new BadRequestException("完成的工单不允许再次下发");
|
||||||
}
|
}
|
||||||
List<PdmProduceWorkorder> list = this.list(new QueryWrapper<PdmProduceWorkorder>()
|
List<PdmProduceWorkorder> list = this.list(new QueryWrapper<PdmProduceWorkorder>().nested(i -> i.isNull("workorder_code").or().eq("workorder_code", "").or().eq("workorder_code", "").or().eq("material_id", "0")).in("workorder_id", ids));
|
||||||
.nested(i -> i
|
|
||||||
.isNull("workorder_code").or()
|
|
||||||
.eq("workorder_code", "").or()
|
|
||||||
.eq("workorder_code", "0"))
|
|
||||||
.in("workorder_id", ids));
|
|
||||||
//aps排产完成的工单,生成工单编号再下发
|
//aps排产完成的工单,生成工单编号再下发
|
||||||
if(list.size() > 0) {
|
if(list.size() > 0) {
|
||||||
list.forEach(r -> {
|
list.forEach(r ->
|
||||||
this.update(new UpdateWrapper<PdmProduceWorkorder>()
|
{
|
||||||
.eq("workorder_id", r.getWorkorder_id())
|
UpdateWrapper<PdmProduceWorkorder> updateWrapper = new UpdateWrapper<PdmProduceWorkorder>();
|
||||||
.set("workorder_code", CodeUtil.getNewCode("PDM_SHIFTORDER")));
|
if("0".equals(r.getMaterial_id())) {
|
||||||
|
List<MdMeMaterialbase> meMaterialBases = materialbaseService.list(new QueryWrapper<MdMeMaterialbase>().eq("material_code", r.getMaterial_code()));
|
||||||
|
if(!CollectionUtils.isEmpty(meMaterialBases)) {
|
||||||
|
Optional<MdMeMaterialbase> first = meMaterialBases.stream().findFirst();
|
||||||
|
first.ifPresent(mdMeMaterialbase ->
|
||||||
|
{
|
||||||
|
//物料id
|
||||||
|
updateWrapper.set("material_id", mdMeMaterialbase.getMaterial_id());
|
||||||
|
//计量单位
|
||||||
|
updateWrapper.set("materialprocess_series", mdMeMaterialbase.getProduct_series());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
updateWrapper.eq("workorder_id", r.getWorkorder_id());
|
||||||
|
updateWrapper.set("workorder_code", CodeUtil.getNewCode("PDM_SHIFTORDER"));
|
||||||
|
this.update(updateWrapper);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
this.update(new UpdateWrapper<PdmProduceWorkorder>()
|
this.update(new UpdateWrapper<PdmProduceWorkorder>().set("workorder_status", WorkerOrderEnum.SEND.getCode()).set("down_id", SecurityUtils.getCurrentUserId()).set("down_name", SecurityUtils.getCurrentNickName()).set("down_time", new Date()).in("workorder_id", ids));
|
||||||
.set("workorder_status", WorkerOrderEnum.SEND.getCode())
|
|
||||||
.set("down_id", SecurityUtils.getCurrentUserId())
|
|
||||||
.set("down_name", SecurityUtils.getCurrentNickName())
|
|
||||||
.set("down_time", new Date())
|
|
||||||
.in("workorder_id", ids));
|
|
||||||
this.recordWorkOrder(OptionRecord.OptionEnum.UPDATE, ids.toArray(new String[0]));
|
this.recordWorkOrder(OptionRecord.OptionEnum.UPDATE, ids.toArray(new String[0]));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ public class FactoryCalendarServiceImpl implements FactoryCalendarService{
|
|||||||
whereJson.put("create_time", DateUtil.now());
|
whereJson.put("create_time", DateUtil.now());
|
||||||
WQLObject.getWQLObject("PDM_BI_FactoryCalendar").insert(whereJson);
|
WQLObject.getWQLObject("PDM_BI_FactoryCalendar").insert(whereJson);
|
||||||
//插入明细表
|
//插入明细表
|
||||||
this.insertDtlTransactionally(whereJson);
|
this.insertDtl(whereJson);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -92,15 +92,16 @@ public class FactoryCalendarServiceImpl implements FactoryCalendarService{
|
|||||||
String new_start = (old_year + 1) + "-01-01";
|
String new_start = (old_year + 1) + "-01-01";
|
||||||
whereJson.put("factorycale_startdate", new_start);
|
whereJson.put("factorycale_startdate", new_start);
|
||||||
//插入明细表
|
//插入明细表
|
||||||
this.insertDtlTransactionally(whereJson);
|
this.insertDtl(whereJson);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class)
|
// @Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class)
|
||||||
public void insertDtlTransactionally(JSONObject row) {
|
// public void insertDtlTransactionally(JSONObject row) {
|
||||||
insertDtl(row);
|
// insertDtl(row);
|
||||||
}
|
// }
|
||||||
|
|
||||||
@Async("taskExecutor")
|
@Async("taskExecutor")
|
||||||
|
@Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class)
|
||||||
public void insertDtl(JSONObject row) {
|
public void insertDtl(JSONObject row) {
|
||||||
try {
|
try {
|
||||||
String a = DateUtil.format(DateUtil.parse(row.getString("factorycale_startdate")), "yyyy/MM/dd");
|
String a = DateUtil.format(DateUtil.parse(row.getString("factorycale_startdate")), "yyyy/MM/dd");
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ package org.nl.wms.system_manage.service.quartz.utils;
|
|||||||
import cn.hutool.core.util.IdUtil;
|
import cn.hutool.core.util.IdUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.nl.config.thread.ThreadPoolExecutorUtil;
|
|
||||||
import org.nl.modules.common.utils.RedisUtils;
|
import org.nl.modules.common.utils.RedisUtils;
|
||||||
import org.nl.modules.common.utils.ThrowableUtil;
|
import org.nl.modules.common.utils.ThrowableUtil;
|
||||||
import org.nl.modules.wql.util.SpringContextHolder;
|
import org.nl.modules.wql.util.SpringContextHolder;
|
||||||
@@ -17,7 +16,6 @@ import org.quartz.JobExecutionContext;
|
|||||||
import org.quartz.JobExecutionException;
|
import org.quartz.JobExecutionException;
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
import org.springframework.scheduling.annotation.Async;
|
import org.springframework.scheduling.annotation.Async;
|
||||||
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
|
|
||||||
import org.springframework.scheduling.quartz.QuartzJobBean;
|
import org.springframework.scheduling.quartz.QuartzJobBean;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -82,7 +82,7 @@
|
|||||||
>
|
>
|
||||||
导入
|
导入
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<!-- <el-button
|
||||||
slot="right"
|
slot="right"
|
||||||
class="filter-item"
|
class="filter-item"
|
||||||
type="success"
|
type="success"
|
||||||
@@ -91,7 +91,7 @@
|
|||||||
@click="importin"
|
@click="importin"
|
||||||
>
|
>
|
||||||
同步
|
同步
|
||||||
</el-button>
|
</el-button> -->
|
||||||
</crudOperation>
|
</crudOperation>
|
||||||
<!--表单组件-->
|
<!--表单组件-->
|
||||||
<el-dialog
|
<el-dialog
|
||||||
@@ -101,12 +101,16 @@
|
|||||||
:title="crud.status.title"
|
:title="crud.status.title"
|
||||||
width="1200px"
|
width="1200px"
|
||||||
>
|
>
|
||||||
<el-form ref="form" :inline="true" :model="form" label-width="160px" style="border: 1px solid #cfe0df;margin-top: 10px;padding-top: 10px;">
|
<el-form
|
||||||
<el-form-item label="车间" prop="product_area"> <!-- unit_list-->
|
ref="form"
|
||||||
<el-select
|
:inline="true"
|
||||||
v-model="form.product_area"
|
:model="form"
|
||||||
placeholder=""
|
label-width="160px"
|
||||||
>
|
style="border: 1px solid #cfe0df;margin-top: 10px;padding-top: 10px;"
|
||||||
|
>
|
||||||
|
<el-form-item label="车间" prop="product_area">
|
||||||
|
<!-- unit_list-->
|
||||||
|
<el-select v-model="form.product_area" placeholder="">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in dict.product_area"
|
v-for="item in dict.product_area"
|
||||||
:key="item.value"
|
:key="item.value"
|
||||||
@@ -116,28 +120,17 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="销售单号" prop="sale_code">
|
<el-form-item label="销售单号" prop="sale_code">
|
||||||
<el-input
|
<el-input v-model="form.sale_code" style="width: 200px;" />
|
||||||
v-model="form.sale_code"
|
|
||||||
style="width: 200px;"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="销售单明细" prop="seq_no">
|
<el-form-item label="销售单明细" prop="seq_no">
|
||||||
<el-input
|
<el-input v-model="form.seq_no" style="width: 200px;" />
|
||||||
v-model="form.seq_no"
|
|
||||||
style="width: 200px;"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="订单数量" prop="sale_qty">
|
<el-form-item label="订单数量" prop="sale_qty">
|
||||||
<el-input-number
|
<el-input-number v-model="form.sale_qty" style="width: 200px;" />
|
||||||
v-model="form.sale_qty"
|
|
||||||
style="width: 200px;"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="计量单位" prop="unit_name"> <!-- unit_list-->
|
<el-form-item label="计量单位" prop="unit_name">
|
||||||
<el-select
|
<!-- unit_list-->
|
||||||
v-model="form.qty_unit_id"
|
<el-select v-model="form.qty_unit_id" placeholder="">
|
||||||
placeholder=""
|
|
||||||
>
|
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in unit_list"
|
v-for="item in unit_list"
|
||||||
:key="item.value"
|
:key="item.value"
|
||||||
@@ -147,16 +140,10 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="物料编码" prop="material_code">
|
<el-form-item label="物料编码" prop="material_code">
|
||||||
<el-input
|
<el-input v-model="form.material_code" style="width: 200px;" />
|
||||||
v-model="form.material_code"
|
|
||||||
style="width: 200px;"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="客户名称" prop="cust_name">
|
<el-form-item label="客户名称" prop="cust_name">
|
||||||
<el-select
|
<el-select v-model="form.cust_code" placeholder="">
|
||||||
v-model="form.cust_code"
|
|
||||||
placeholder=""
|
|
||||||
>
|
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in customer_list"
|
v-for="item in customer_list"
|
||||||
:key="item.label"
|
:key="item.label"
|
||||||
@@ -174,10 +161,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="备注" prop="remark">
|
<el-form-item label="备注" prop="remark">
|
||||||
<el-input
|
<el-input v-model="form.remark" style="width: 200px;" />
|
||||||
v-model="form.remark"
|
|
||||||
style="width: 200px;"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
@@ -205,7 +189,7 @@
|
|||||||
min-width="100"
|
min-width="100"
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
/>
|
/>
|
||||||
<el-table-column prop="seq_no" label="明细序号" />
|
<!-- <el-table-column prop="seq_no" label="明细序号" /> -->
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="sale_type"
|
prop="sale_type"
|
||||||
label="销售单类型"
|
label="销售单类型"
|
||||||
@@ -216,29 +200,78 @@
|
|||||||
{{ dict.label.PCS_SAL_TYPE[scope.row.sale_type] }}
|
{{ dict.label.PCS_SAL_TYPE[scope.row.sale_type] }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="material_code" label="物料编码" />
|
|
||||||
|
<el-table-column prop="contract_code" label="合同号" :min-width="flexWidth('contract_code', crud.data, '合同号')" />
|
||||||
|
|
||||||
|
<el-table-column prop="material_code" label="物料编码" :min-width="flexWidth('material_code', crud.data, '物料编码')" />
|
||||||
|
|
||||||
|
<el-table-column
|
||||||
|
prop="material_spec"
|
||||||
|
label="物料规格"
|
||||||
|
:min-width="flexWidth('material_spec', crud.data, '物料规格')"
|
||||||
|
/>
|
||||||
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="material_name"
|
prop="material_name"
|
||||||
label="物料名称"
|
label="物料名称"
|
||||||
min-width="100"
|
:min-width="flexWidth('material_name', crud.data, '物料名称')"
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
/>
|
/>
|
||||||
<el-table-column prop="material_spec" label="物料规格" :min-width="flexWidth('material_spec',crud.data,'物料规格')" />
|
|
||||||
|
<el-table-column prop="product_area" label="工段">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
{{ dict.label.product_area[scope.row.product_area] }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
|
<el-table-column prop="sale_qty" label="订单数量" />
|
||||||
|
|
||||||
|
<el-table-column
|
||||||
|
prop="qty_unit_name"
|
||||||
|
label="计量单位"
|
||||||
|
show-overflow-tooltip
|
||||||
|
min-width="80"
|
||||||
|
/>
|
||||||
|
|
||||||
<el-table-column prop="status" label="状态">
|
<el-table-column prop="status" label="状态">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
{{ dict.label.PCS_SALE_STATUS[scope.row.status] }}
|
{{ dict.label.PCS_SALE_STATUS[scope.row.status] }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="sale_qty" label="订单数量" />
|
|
||||||
<el-table-column prop="qty_unit_name" label="计量单位" show-overflow-tooltip min-width="150" />
|
<el-table-column
|
||||||
<el-table-column prop="produce_seq" label="生产顺序" />
|
prop="plandeliverDate"
|
||||||
<el-table-column prop="cust_code" label="客户编码" :min-width="flexWidth('cust_code',crud.data,'客户编码')" />
|
label="计划交期"
|
||||||
<el-table-column prop="cust_name" label="客户名称" :min-width="flexWidth('cust_name',crud.data,'cust_name')" />
|
min-width="100"
|
||||||
<el-table-column prop="plandeliver_date" label="计划交期" min-width="100" show-overflow-tooltip />
|
show-overflow-tooltip
|
||||||
<el-table-column prop="remark" label="备注" show-overflow-tooltip min-width="200" />
|
/>
|
||||||
|
|
||||||
|
<el-table-column
|
||||||
|
prop="early_start_time"
|
||||||
|
label="最早开始时间"
|
||||||
|
min-width="100"
|
||||||
|
show-overflow-tooltip
|
||||||
|
/>
|
||||||
|
|
||||||
<el-table-column prop="create_name" label="创建人" />
|
<el-table-column prop="create_name" label="创建人" />
|
||||||
<el-table-column prop="create_time" label="创建时间" :min-width="flexWidth('create_time',crud.data,'创建时间')" />
|
<el-table-column
|
||||||
<el-table-column prop="update_time" label="修改时间" :min-width="flexWidth('update_time',crud.data,'修改时间')" />
|
prop="createTime"
|
||||||
|
label="创建时间"
|
||||||
|
:min-width="flexWidth('createTime', crud.data, '创建时间')"
|
||||||
|
/>
|
||||||
|
<el-table-column prop="create_mode" label="生成方式" min-width="100">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
{{ dict.label.ST_CREATE_MODE[scope.row.create_mode] }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="remark"
|
||||||
|
label="备注"
|
||||||
|
show-overflow-tooltip
|
||||||
|
min-width="200"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<!-- <el-table-column prop="update_time" label="修改时间" :min-width="flexWidth('update_time',crud.data,'修改时间')" /> -->
|
||||||
<!-- <el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
|
<!-- <el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="create_time"
|
prop="create_time"
|
||||||
@@ -264,7 +297,10 @@
|
|||||||
<!--分页组件-->
|
<!--分页组件-->
|
||||||
<pagination />
|
<pagination />
|
||||||
</div>
|
</div>
|
||||||
<UploadDialog :dialog-show.sync="uploadShow" @tableChanged3="tableChanged3" />
|
<UploadDialog
|
||||||
|
:dialog-show.sync="uploadShow"
|
||||||
|
@tableChanged3="tableChanged3"
|
||||||
|
/>
|
||||||
<Dialog :dialog-show.sync="dialogShow" />
|
<Dialog :dialog-show.sync="dialogShow" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -305,8 +341,15 @@ const defaultForm = {
|
|||||||
}
|
}
|
||||||
export default {
|
export default {
|
||||||
name: 'SaleOrder',
|
name: 'SaleOrder',
|
||||||
dicts: ['PCS_SALE_STATUS', 'PCS_SAL_TYPE', 'IS_OR_NOT', 'product_area'],
|
dicts: ['PCS_SALE_STATUS', 'PCS_SAL_TYPE', 'IS_OR_NOT', 'product_area', 'ST_CREATE_MODE'],
|
||||||
components: { pagination, crudOperation, rrOperation, Treeselect, UploadDialog, Dialog },
|
components: {
|
||||||
|
pagination,
|
||||||
|
crudOperation,
|
||||||
|
rrOperation,
|
||||||
|
Treeselect,
|
||||||
|
UploadDialog,
|
||||||
|
Dialog
|
||||||
|
},
|
||||||
mixins: [presenter(), header(), form(defaultForm), crud()],
|
mixins: [presenter(), header(), form(defaultForm), crud()],
|
||||||
cruds() {
|
cruds() {
|
||||||
return CRUD({
|
return CRUD({
|
||||||
@@ -326,10 +369,8 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
unit_list: [
|
unit_list: [{ value: 16, label: '个\\只' }],
|
||||||
{value: 16, label: '个\\只'}
|
customer_list: [],
|
||||||
],
|
|
||||||
customer_list:[],
|
|
||||||
classes3: [],
|
classes3: [],
|
||||||
uploadShow: false,
|
uploadShow: false,
|
||||||
dialogShow: false,
|
dialogShow: false,
|
||||||
@@ -344,7 +385,7 @@ export default {
|
|||||||
[CRUD.HOOK.beforeToAdd]() {
|
[CRUD.HOOK.beforeToAdd]() {
|
||||||
customerbase.selectList().then(res => {
|
customerbase.selectList().then(res => {
|
||||||
this.customer_list = res.content
|
this.customer_list = res.content
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
queryClassId() {
|
queryClassId() {
|
||||||
const param = {
|
const param = {
|
||||||
|
|||||||
@@ -290,13 +290,13 @@
|
|||||||
<el-form-item v-if="false" label="物料标识" prop="material_id">
|
<el-form-item v-if="false" label="物料标识" prop="material_id">
|
||||||
<el-input v-model="form.material_id" style="width: 200px;" />
|
<el-input v-model="form.material_id" style="width: 200px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="物料编码" prop="materialCode">
|
<el-form-item label="物料编码" prop="material_code">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="form.materialCode"
|
v-model="form.material_code"
|
||||||
style="width: 200px;"
|
style="width: 200px;"
|
||||||
clearable
|
clearable
|
||||||
@focus="materialShow=true"
|
@focus="materialShow=true"
|
||||||
@clear="form.material_id='',form.materialCode='',form.material_name='',form.material_spec=''"
|
@clear="form.material_id='',form.material_code='',form.material_name='',form.material_spec=''"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="物料名称" prop="material_name">
|
<el-form-item label="物料名称" prop="material_name">
|
||||||
@@ -360,14 +360,18 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="是否搬运" prop="is_needmove">
|
<el-form-item label="是否搬运" prop="is_needmove">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="form.is_needmove" style="width: 200px" >
|
v-model="form.is_needmove"
|
||||||
<el-option v-for="item in trueorfalse" :key="item.value" :label="item.label" :value="item.value"/>
|
style="width: 200px"
|
||||||
|
>
|
||||||
|
<el-option v-for="item in trueorfalse" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="修改报工数" prop="is_canupdate_update">
|
<el-form-item label="修改报工数" prop="is_canupdate_update">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="form.is_canupdate_update" style="width: 200px" >
|
v-model="form.is_canupdate_update"
|
||||||
<el-option v-for="item in trueorfalse" :key="item.value" :label="item.label" :value="item.value"/>
|
style="width: 200px"
|
||||||
|
>
|
||||||
|
<el-option v-for="item in trueorfalse" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="是否启用封箱线" prop="is_used_fxx">
|
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="是否启用封箱线" prop="is_used_fxx">
|
||||||
@@ -381,14 +385,18 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="拆箱机" prop="unboxing_device_code">
|
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="拆箱机" prop="unboxing_device_code">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="form.package_ext.unboxing_device_code" style="width: 200px" >
|
v-model="form.package_ext.unboxing_device_code"
|
||||||
<el-option v-for="item in cxj" :key="item.value" :label="item.label" :value="item.value"/>
|
style="width: 200px"
|
||||||
|
>
|
||||||
|
<el-option v-for="item in cxj" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="装箱机" prop="ealing_device_code">
|
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="装箱机" prop="ealing_device_code">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="form.package_ext.ealing_device_code" style="width: 200px" >
|
v-model="form.package_ext.ealing_device_code"
|
||||||
<el-option v-for="item in zxj" :key="item.value" :label="item.label" :value="item.value"/>
|
style="width: 200px"
|
||||||
|
>
|
||||||
|
<el-option v-for="item in zxj" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="是否翻转" prop="is_foreward">
|
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="是否翻转" prop="is_foreward">
|
||||||
@@ -402,8 +410,10 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="封箱机自动确认" prop="auto_confirm">
|
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="封箱机自动确认" prop="auto_confirm">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="form.package_ext.auto_confirm" style="width: 200px" >
|
v-model="form.package_ext.auto_confirm"
|
||||||
<el-option v-for="item in auto_confirm" :key="item.value" :label="item.label" :value="item.value"/>
|
style="width: 200px"
|
||||||
|
>
|
||||||
|
<el-option v-for="item in auto_confirm" :key="item.value" :label="item.label" :value="item.value" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="封箱机确认时间" prop="time">
|
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="封箱机确认时间" prop="time">
|
||||||
@@ -418,21 +428,21 @@
|
|||||||
v-model="form.package_ext.package_model"
|
v-model="form.package_ext.package_model"
|
||||||
style="width: 200px;"
|
style="width: 200px;"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="总箱数" prop="demol_num">
|
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="总箱数" prop="demol_num">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
v-model="form.package_ext.demol_num"
|
v-model="form.package_ext.demol_num"
|
||||||
style="width: 200px;"
|
style="width: 200px;"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="总袋量" prop="order_bag_num">
|
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="总袋量" prop="order_bag_num">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
v-model="form.package_ext.order_bag_num"
|
v-model="form.package_ext.order_bag_num"
|
||||||
style="width: 200px;"
|
style="width: 200px;"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="每袋重量(g)" prop="one_bag_weight">
|
<el-form-item v-if="form.workprocedure_id == '1535144822984282112'" label="每袋重量(g)" prop="one_bag_weight">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
@@ -446,7 +456,7 @@
|
|||||||
v-model="form.package_ext.stack_model"
|
v-model="form.package_ext.stack_model"
|
||||||
style="width: 200px;"
|
style="width: 200px;"
|
||||||
clearable
|
clearable
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
@@ -465,8 +475,8 @@
|
|||||||
>
|
>
|
||||||
<el-table-column type="selection" width="55" />
|
<el-table-column type="selection" width="55" />
|
||||||
<el-table-column v-if="false" prop="workorder_id" label="生产班次工单标识" />
|
<el-table-column v-if="false" prop="workorder_id" label="生产班次工单标识" />
|
||||||
<el-table-column prop="workorder_id" label="工单id" width="160px"></el-table-column>
|
<el-table-column prop="workorder_id" label="工单id" width="160px" />
|
||||||
<el-table-column prop="workorder_code" label="工单编号" width="100px" >
|
<el-table-column prop="workorder_code" label="工单编号" width="100px">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-link type="warning" @click="toView(scope.row)">{{ scope.row.workorder_code }}</el-link>
|
<el-link type="warning" @click="toView(scope.row)">{{ scope.row.workorder_code }}</el-link>
|
||||||
</template>
|
</template>
|
||||||
@@ -482,7 +492,7 @@
|
|||||||
<el-table-column prop="outupperlimit_qty" label="满筐数量" />
|
<el-table-column prop="outupperlimit_qty" label="满筐数量" />
|
||||||
<el-table-column prop="dq_real_qty" label="电气实时数" width="100" show-overflow-tooltip />
|
<el-table-column prop="dq_real_qty" label="电气实时数" width="100" show-overflow-tooltip />
|
||||||
<el-table-column prop="real_qty" label="报工总数" />
|
<el-table-column prop="real_qty" label="报工总数" />
|
||||||
<el-table-column prop="materialCode" label="物料编码" :min-width="flexWidth('materialCode',crud.data,'物料编码')" />
|
<el-table-column prop="material_code" label="物料编码" :min-width="flexWidth('material_code',crud.data,'物料编码')" />
|
||||||
<el-table-column prop="material_spec" label="物料规格" :min-width="flexWidth('material_spec',crud.data,'物料规格')" />
|
<el-table-column prop="material_spec" label="物料规格" :min-width="flexWidth('material_spec',crud.data,'物料规格')" />
|
||||||
<el-table-column prop="device_code" label="当前设备编码" :min-width="flexWidth('device_code',crud.data,'当前设备编码')" />
|
<el-table-column prop="device_code" label="当前设备编码" :min-width="flexWidth('device_code',crud.data,'当前设备编码')" />
|
||||||
<el-table-column
|
<el-table-column
|
||||||
@@ -585,12 +595,11 @@ import crudClassstandard from '@/api/wms/basedata/master/classstandard'
|
|||||||
import AddDialog from '@/views/wms/product_manage/workorder/AddDialog'
|
import AddDialog from '@/views/wms/product_manage/workorder/AddDialog'
|
||||||
import UploadDialog from '@/views/wms/product_manage/workorder/UploadDialog'
|
import UploadDialog from '@/views/wms/product_manage/workorder/UploadDialog'
|
||||||
import ReplaceDeviceDialog from '@/views/wms/product_manage/workorder/ReplaceDeviceDialog'
|
import ReplaceDeviceDialog from '@/views/wms/product_manage/workorder/ReplaceDeviceDialog'
|
||||||
import {openStart} from "./produceshiftorder";
|
|
||||||
|
|
||||||
const defaultForm = {
|
const defaultForm = {
|
||||||
workorder_id: null,
|
workorder_id: null,
|
||||||
workorder_code: null,
|
workorder_code: null,
|
||||||
shift_type_scode: "1",
|
shift_type_scode: '1',
|
||||||
workprocedure_id: null,
|
workprocedure_id: null,
|
||||||
product_area: 'A1',
|
product_area: 'A1',
|
||||||
plan_qty: null,
|
plan_qty: null,
|
||||||
@@ -598,7 +607,7 @@ const defaultForm = {
|
|||||||
person_real_qty: null,
|
person_real_qty: null,
|
||||||
dq_real_qty: null,
|
dq_real_qty: null,
|
||||||
material_id: null,
|
material_id: null,
|
||||||
materialCode: null,
|
material_code: null,
|
||||||
material_weight: null,
|
material_weight: null,
|
||||||
material_name: null,
|
material_name: null,
|
||||||
material_spec: null,
|
material_spec: null,
|
||||||
@@ -662,10 +671,10 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
zxj: [ { value: 'A1_ZXJ_1', label: '一线1号装箱机' }, { value: 'A1_ZXJ_2', label: '一线2号装箱机' }],
|
zxj: [{ value: 'A1_ZXJ_1', label: '一线1号装箱机' }, { value: 'A1_ZXJ_2', label: '一线2号装箱机' }],
|
||||||
auto_confirm: [ { value: '1', label: '自动确认' }, { value: '2', label: '定时确认' }, { value: '3', label: '人工确认' }],
|
auto_confirm: [{ value: '1', label: '自动确认' }, { value: '2', label: '定时确认' }, { value: '3', label: '人工确认' }],
|
||||||
cxj: [ { value: 'A1_KXJ_1', label: '一线1号拆箱机' }, { value: 'A1_KXJ_1', label: '一线2号拆箱机' }],
|
cxj: [{ value: 'A1_KXJ_1', label: '一线1号拆箱机' }, { value: 'A1_KXJ_1', label: '一线2号拆箱机' }],
|
||||||
trueorfalse: [ { value: true, label: '是' }, { value: false, label: '否' }],
|
trueorfalse: [{ value: true, label: '是' }, { value: false, label: '否' }],
|
||||||
deviceList: [],
|
deviceList: [],
|
||||||
classes3: [],
|
classes3: [],
|
||||||
materType: '01',
|
materType: '01',
|
||||||
@@ -693,7 +702,7 @@ export default {
|
|||||||
plan_qty: [
|
plan_qty: [
|
||||||
{ required: true, message: '计划数量不能为空', trigger: 'blur' }
|
{ required: true, message: '计划数量不能为空', trigger: 'blur' }
|
||||||
],
|
],
|
||||||
materialCode: [
|
material_code: [
|
||||||
{ required: true, message: '物料编码不能为空', trigger: 'change' }
|
{ required: true, message: '物料编码不能为空', trigger: 'change' }
|
||||||
],
|
],
|
||||||
order_status: [
|
order_status: [
|
||||||
@@ -893,10 +902,10 @@ export default {
|
|||||||
},
|
},
|
||||||
is_disopen(rows) {
|
is_disopen(rows) {
|
||||||
var length = rows.length
|
var length = rows.length
|
||||||
if (length === 1 ) {
|
if (length === 1) {
|
||||||
if (rows[0].workorder_status==='2'){
|
if (rows[0].workorder_status === '2') {
|
||||||
return false
|
return false
|
||||||
}else {
|
} else {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -927,7 +936,7 @@ export default {
|
|||||||
// 新增编辑给form表单物料相关信息赋值
|
// 新增编辑给form表单物料相关信息赋值
|
||||||
setMaterValue(row) {
|
setMaterValue(row) {
|
||||||
this.form.material_id = row.material_id
|
this.form.material_id = row.material_id
|
||||||
this.form.materialCode = row.material_code
|
this.form.material_code = row.material_code
|
||||||
this.form.material_name = row.material_name
|
this.form.material_name = row.material_name
|
||||||
this.form.material_spec = row.material_spec
|
this.form.material_spec = row.material_spec
|
||||||
},
|
},
|
||||||
@@ -981,15 +990,14 @@ export default {
|
|||||||
[CRUD.HOOK.beforeToEdit]() {
|
[CRUD.HOOK.beforeToEdit]() {
|
||||||
console.log(this.form.package_ext)
|
console.log(this.form.package_ext)
|
||||||
console.log(this.form)
|
console.log(this.form)
|
||||||
if (this.form.package_ext != undefined && this.form.package_ext != null && JSON.stringify(this.form.package_ext).length>3){
|
if (this.form.package_ext !== undefined && this.form.package_ext !== null && JSON.stringify(this.form.package_ext).length > 3) {
|
||||||
this.form.package_ext = JSON.parse(this.form.package_ext)
|
this.form.package_ext = JSON.parse(this.form.package_ext)
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
[CRUD.HOOK.beforeSubmit]() {
|
[CRUD.HOOK.beforeSubmit]() {
|
||||||
if (JSON.stringify(this.form.package_ext).length>3){
|
if (JSON.stringify(this.form.package_ext).length > 3) {
|
||||||
this.form.package_ext = JSON.stringify(this.form.package_ext)
|
this.form.package_ext = JSON.stringify(this.form.package_ext)
|
||||||
}else {
|
} else {
|
||||||
this.form.package_ext = ''
|
this.form.package_ext = ''
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user