This commit is contained in:
zhouz
2023-06-15 15:12:24 +08:00
13 changed files with 268 additions and 121 deletions

View File

@@ -2,20 +2,27 @@
package org.nl.wms.masterdata_manage.master.controller.measureunit;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.nl.common.anno.Log;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.nl.wms.masterdata_manage.备份master.service.UnitService;
import org.nl.wms.masterdata_manage.备份master.service.dto.UnitDto;
import org.springframework.data.domain.Pageable;
import org.nl.common.anno.Log;
import org.nl.common.domain.query.PageQuery;
import org.nl.wms.masterdata_manage.service.master.IMdPbMeasureunitService;
import org.nl.wms.masterdata_manage.service.master.dao.MdPbMeasureunit;
import org.nl.wms.masterdata_manage.service.master.dto.UnitQuery;
import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr;
import org.nl.wms.storage_manage.semimanage.service.check.dao.StIvtCheckdtlBcp;
import org.nl.wms.storage_manage.semimanage.service.check.dao.StIvtCheckmstBcp;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
import java.util.List;
/**
* @author loujf
@@ -27,48 +34,40 @@ import java.util.Map;
@RequestMapping("/api/mdPbMeasureunit")
@Slf4j
public class MdPbMeasureunitController {
private final UnitService unitService;
@Autowired
private IMdPbMeasureunitService measureunitService;
@GetMapping
@Log("查询计量单位")
@Log("查询单位")
@ApiOperation("查询计量单位")
//@PreAuthorize("@el.check('Unit:list')")
public ResponseEntity<Object> query(@RequestParam Map whereJson, Pageable page){
return new ResponseEntity<>(unitService.queryAll(whereJson,page),HttpStatus.OK);
public ResponseEntity<Object> query(UnitQuery query, PageQuery page) {
return new ResponseEntity<>(measureunitService.pageQuery(query, page), HttpStatus.OK);
}
@PostMapping
@PostMapping("/add")
@Log("新增计量单位")
@ApiOperation("新增计量单位")
//@PreAuthorize("@el.check('Unit:add')")
public ResponseEntity<Object> create(@Validated @RequestBody UnitDto dto){
unitService.create(dto);
return new ResponseEntity<>(HttpStatus.CREATED);
}
@PutMapping
@Log("修改计量单位")
@ApiOperation("修改计量单位")
//@PreAuthorize("@el.check('Unit:edit')")
public ResponseEntity<Object> update(@Validated @RequestBody UnitDto dto){
unitService.update(dto);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@Log("删除计量单位")
@ApiOperation("删除计量单位")
//@PreAuthorize("@el.check('Unit:del')")
@DeleteMapping
public ResponseEntity<Object> delete(@RequestBody String[] ids) {
unitService.deleteAll(ids);
public ResponseEntity<Object> create(@RequestBody JSONObject whereJson) {
measureunitService.create(whereJson);
return new ResponseEntity<>(HttpStatus.OK);
}
@GetMapping("/getUnit")
@Log("查询单位下拉框")
@ApiOperation("查询仓库下拉框")
//@PreAuthorize("@el.check('materialtype:list')")
public ResponseEntity<Object> queryUnit(@RequestParam Map whereJson) {
return new ResponseEntity<>(unitService.getUnit(whereJson), HttpStatus.OK);
@PostMapping("/update")
@Log("修改计量单位")
@ApiOperation("修改计量单位")
public ResponseEntity<Object> update(@RequestBody JSONObject whereJson) {
measureunitService.update(whereJson);
return new ResponseEntity<>(HttpStatus.OK);
}
@PostMapping("/delete")
@Log("删除计量单位")
@ApiOperation("删除计量单位")
public ResponseEntity<Object> delete(@RequestBody Long[] ids){
for (Long id : ids) {
measureunitService.removeById(id);
}
return new ResponseEntity<>(HttpStatus.OK);
}
}

View File

@@ -1,7 +1,10 @@
package org.nl.wms.masterdata_manage.service.master;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.IService;
import org.nl.common.domain.query.PageQuery;
import org.nl.wms.masterdata_manage.service.master.dao.MdPbMeasureunit;
import org.nl.wms.masterdata_manage.service.master.dto.UnitQuery;
/**
* <p>
@@ -13,4 +16,16 @@ import org.nl.wms.masterdata_manage.service.master.dao.MdPbMeasureunit;
*/
public interface IMdPbMeasureunitService extends IService<MdPbMeasureunit> {
/**
* 分页查询
* @param query,page /
* @return JSONObject
*/
Object pageQuery(UnitQuery query, PageQuery page);
void create(JSONObject jo);
void update(JSONObject jo);
}

View File

@@ -7,8 +7,6 @@ import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;
/**
* <p>
@@ -64,7 +62,7 @@ public class MdPbMeasureunit implements Serializable {
/**
* 创建时间
*/
private Date create_time;
private String create_time;
/**
* 修改人
@@ -79,7 +77,7 @@ public class MdPbMeasureunit implements Serializable {
/**
* 修改时间
*/
private Date update_time;
private String update_time;
/**
* 外部标识

View File

@@ -0,0 +1,24 @@
package org.nl.wms.masterdata_manage.service.master.dto;
import lombok.Data;
import org.nl.common.domain.query.BaseQuery;
import org.nl.common.domain.query.QParam;
import org.nl.common.enums.QueryTEnum;
import org.nl.wms.masterdata_manage.service.master.dao.MdPbMeasureunit;
import org.nl.wms.storage_manage.rawmanage.service.check.dao.StIvtCheckmstYl;
/*
* @author ZZQ
* @Date 2023/5/4 19:49
*/
@Data
public class UnitQuery extends BaseQuery<MdPbMeasureunit> {
private String search;
@Override
public void paramMapping() {
super.doP.put("search", QParam.builder().k(new String[]{"unit_name"}).type(QueryTEnum.LK).build());
}
}

View File

@@ -1,11 +1,25 @@
package org.nl.wms.masterdata_manage.service.master.impl;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import io.jsonwebtoken.lang.Assert;
import org.apache.catalina.security.SecurityUtil;
import org.nl.common.TableDataInfo;
import org.nl.common.domain.query.BaseQuery;
import org.nl.common.domain.query.PageQuery;
import org.nl.common.utils.IdUtil;
import org.nl.common.utils.SecurityUtils;
import org.nl.wms.masterdata_manage.service.master.IMdPbMeasureunitService;
import org.nl.wms.masterdata_manage.service.master.dao.MdPbMeasureunit;
import org.nl.wms.masterdata_manage.service.master.dao.mapper.MdPbMeasureunitMapper;
import org.nl.wms.masterdata_manage.service.master.dto.UnitQuery;
import org.nl.wms.storage_manage.semimanage.service.check.dao.StIvtCheckmstBcp;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
/**
* <p>
* 计量单位表 服务实现类
@@ -17,4 +31,39 @@ import org.springframework.stereotype.Service;
@Service
public class MdPbMeasureunitServiceImpl extends ServiceImpl<MdPbMeasureunitMapper, MdPbMeasureunit> implements IMdPbMeasureunitService {
@Override
public Object pageQuery(UnitQuery query, PageQuery page) {
Page<MdPbMeasureunit> pageQuery = this.page(page.build(), query.build());
return TableDataInfo.build(pageQuery);
}
@Override
public void create(JSONObject jo) {
String unit_code = jo.getString("unit_code");
String unit_name = jo.getString("unit_name");
String ext_id = jo.getString("ext_id");
BigDecimal qty_precision = jo.getBigDecimal("qty_precision");
boolean is_used = jo.getBoolean("is_used");
MdPbMeasureunit unit = new MdPbMeasureunit();
unit.setMeasure_unit_id(IdUtil.getStringId());
unit.setUnit_code(unit_code);
unit.setUnit_name(unit_name);
unit.setQty_precision(qty_precision);
unit.setExt_id(ext_id);
unit.setIs_used(is_used);
unit.setCreate_id(SecurityUtils.getCurrentUserId());
unit.setCreate_name(SecurityUtils.getCurrentNickName());
unit.setCreate_time(DateUtil.now());
this.save(unit);
}
@Override
public void update(JSONObject jo) {
Assert.notNull(new Object[]{jo, jo.get("measure_unit_id")}, "请求参数不能为空");
MdPbMeasureunit mst = jo.toJavaObject(MdPbMeasureunit.class);
mst.setUpdate_id(SecurityUtils.getCurrentUserId());
mst.setUpdate_name(SecurityUtils.getCurrentNickName());
mst.setUpdate_time(DateUtil.now());
this.updateById(mst);
}
}

View File

@@ -30,6 +30,8 @@ public interface SchBasePointMapper extends BaseMapper<SchBasePoint> {
*/
List<Map> selectPoint(Map<String,Object> map);
List<Map> canUsePoint(Map<String,Object> map);
Map getDeviceWorkprodure(String pointCode);
Map getWorkprodure(@Param("workprodureId") String workprodureId, @Param("workprodureCode") String workprodureCode);

View File

@@ -89,6 +89,33 @@
AND ruledis.load_series >= #{loadSeries}
</if>
</select>
<select id="canUsePoint" resultType="java.util.Map">
SELECT
point.point_code,
point.point_type
FROM
sch_base_point point
WHERE
(point.vehicle_code = '' OR point.vehicle_code IS NULL)
AND not exists(
SELECT
*
FROM
sch_base_task
WHERE
( point_code1 = point.point_code OR point_code2 = point.point_code )
AND '07' > task_status
AND is_delete = '0'
)
<if test="region_code != null and region_code != ''">
AND point.region_code = #{region_code}
</if>
<if test="search != null and search != ''">
AND (point.point_code like '%${search}%' or point.point_name like '%${search}%')
</if>
</select>
<select id="getDeviceWorkprodure" resultType="java.util.Map">
select
r.workprocedure_code,r.workprocedure_id,dev.device_code,dev.spec from pdm_bi_device dev

View File

@@ -26,30 +26,27 @@ import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtBsrealstorattr
import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService;
import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtBsrealstorattr;
import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr;
import org.nl.wms.scheduler_manage.service.point.ISchBasePointService;
import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint;
import org.nl.wms.scheduler_manage.service.point.dao.mapper.SchBasePointMapper;
import org.nl.wms.storage_manage.CHECKEnum;
import org.nl.wms.storage_manage.rawmanage.service.check.dao.StIvtCheckdtlYl;
import org.nl.wms.storage_manage.rawmanage.service.check.dao.StIvtCheckmstYl;
import org.nl.wms.storage_manage.semimanage.service.check.dao.StIvtCheckdtlBcp;
import org.nl.wms.storage_manage.semimanage.service.check.dao.mapper.StIvtCheckdtlBcpMapper;
import org.nl.wms.storage_manage.semimanage.service.check.dto.CheckQuery;
import org.nl.wms.storage_manage.semimanage.MLEnum;
import org.nl.wms.storage_manage.semimanage.service.check.IStIvtCheckdtlBcpService;
import org.nl.wms.storage_manage.semimanage.service.check.IStIvtCheckmstBcpService;
import org.nl.wms.storage_manage.semimanage.service.check.dao.StIvtCheckdtlBcp;
import org.nl.wms.storage_manage.semimanage.service.check.dao.StIvtCheckmstBcp;
import org.nl.wms.storage_manage.semimanage.service.check.dao.mapper.StIvtCheckdtlBcpMapper;
import org.nl.wms.storage_manage.semimanage.service.check.dao.mapper.StIvtCheckmstBcpMapper;
import org.nl.wms.storage_manage.semimanage.service.iostorInv.dao.StIvtIostorinvBcp;
import org.nl.wms.storage_manage.semimanage.service.check.dto.CheckQuery;
import org.nl.wms.storage_manage.semimanage.service.moveOrLess.IStIvtMoreorlessmstBcpService;
import org.nl.wms.storage_manage.semimanage.service.shutFrame.dao.StIvtShutframedtlBcp;
import org.nl.wms.storage_manage.semimanage.service.shutFrame.dao.StIvtShutframeinvBcp;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.function.Consumer;
/**
* <p>
@@ -74,6 +71,10 @@ public class StIvtCheckmstBcpServiceImpl extends ServiceImpl<StIvtCheckmstBcpMap
private IStIvtMoreorlessmstBcpService moreorlessmstBcpService;
@Autowired
private StIvtCheckdtlBcpMapper checkdtlBcpMapper;
@Autowired
private SchBasePointMapper pointMapper;
@Autowired
private ISchBasePointService pointService;
@Override
public Object pageQuery(CheckQuery query, PageQuery page) {
@@ -278,8 +279,9 @@ public class StIvtCheckmstBcpServiceImpl extends ServiceImpl<StIvtCheckmstBcpMap
throw new BadRequestException("当前仓位的盘点移出任务已经下发!");
}
//查询可用的半成品移出点位
String point_code = "PD01";
Map map = new HashMap<>();
map.put("region_code", "A1_BCP_PD");
List<Map> maps = pointMapper.canUsePoint(map);
StIvtCheckmstBcp mst = this.getById(dtl.getCheck_id());
@@ -288,7 +290,7 @@ public class StIvtCheckmstBcpServiceImpl extends ServiceImpl<StIvtCheckmstBcpMap
PointEvent event = PointEvent.builder()
.type(AcsTaskEnum.TASK_STRUCT_SHUT.getCode())
.point_code1(struct.getStruct_code())
.point_code2(point_code)
.point_code2((String) maps.get(0).get("point_code"))
.vehicle_code(dtl.getStoragevehicle_code())
.product_area(mst.getWorkshop_id())
.build();
@@ -297,7 +299,7 @@ public class StIvtCheckmstBcpServiceImpl extends ServiceImpl<StIvtCheckmstBcpMap
checkdtlBcpService.update(new UpdateWrapper<StIvtCheckdtlBcp>()
.set("is_down", "1")
.set("checkpoint_id", point_code)
.set("checkpoint_id", (String) maps.get(0).get("point_code"))
.set("status", CHECKEnum.DTL_STATUS.code("盘点中"))
.eq("struct_id", dtl.getStruct_id())
.eq("check_id", dtl.getCheck_id()));
@@ -312,28 +314,39 @@ public class StIvtCheckmstBcpServiceImpl extends ServiceImpl<StIvtCheckmstBcpMap
String status = form.getString("status");
List<StIvtCheckdtlBcp> dtl_list = checkdtlBcpMapper.queryCheckDtlByTask(MapOf.of("task_id", task_id));
StIvtCheckdtlBcp dtl = dtl_list.get(0);
if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode()) && dtl.getIs_down().equals("2")) {
checkdtlBcpService.update(new UpdateWrapper<StIvtCheckdtlBcp>()
.set("status", CHECKEnum.DTL_STATUS.code("完成"))
.eq("struct_id", dtl.getStruct_id())
.eq("check_id", dtl.getCheck_id()));
//判断是否存在未完成的明细
List<StIvtCheckdtlBcp> list = checkdtlBcpService.list(new QueryWrapper<StIvtCheckdtlBcp>().eq("check_id", dtl.getCheck_id())
.ne("status", CHECKEnum.DTL_STATUS.code("完成")));
if (list.size() == 0) {
StIvtCheckmstBcp jo_mst = this.getOne(new QueryWrapper<StIvtCheckmstBcp>().eq("check_id", dtl.getCheck_id()));
jo_mst.setStatus(CHECKEnum.BILL_STATUS.code("完成"));
jo_mst.setConfirm_optid(SecurityUtils.getCurrentUserId());
jo_mst.setConfirm_optname(SecurityUtils.getCurrentNickName());
jo_mst.setConfirm_time(DateUtil.now());
//解锁起点点位、仓位
List<StIvtCheckdtlBcp> finish_list = checkdtlBcpService.list(new QueryWrapper<StIvtCheckdtlBcp>().eq("check_id", dtl.getCheck_id())
.eq("status", CHECKEnum.DTL_STATUS.code("完成")));
finish_list.stream()
.map(finish -> finish.getStruct_id())
.distinct()
.forEach(struct_id -> structattrService.update(new UpdateWrapper<StIvtStructattr>().set("inv_code", "").set("lock_type", "0").eq("struct_id", struct_id)));
if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) {
if (dtl.getIs_down().equals("1")) {
//更新终点点位状态
String point_code = dtl.getCheckpoint_id();
pointService.update(new UpdateWrapper<SchBasePoint>().lambda()
.eq(SchBasePoint::getPoint_code, point_code)
.set(SchBasePoint::getVehicle_code, dtl.getStoragevehicle_code()));
}
if (dtl.getIs_down().equals("2")) {
checkdtlBcpService.update(new UpdateWrapper<StIvtCheckdtlBcp>()
.set("status", CHECKEnum.DTL_STATUS.code("完成"))
.eq("struct_id", dtl.getStruct_id())
.eq("check_id", dtl.getCheck_id()));
//判断是否存在未完成的明细
List<StIvtCheckdtlBcp> list = checkdtlBcpService.list(new QueryWrapper<StIvtCheckdtlBcp>().eq("check_id", dtl.getCheck_id())
.ne("status", CHECKEnum.DTL_STATUS.code("完成")));
if (list.size() == 0) {
StIvtCheckmstBcp jo_mst = this.getOne(new QueryWrapper<StIvtCheckmstBcp>().eq("check_id", dtl.getCheck_id()));
jo_mst.setStatus(CHECKEnum.BILL_STATUS.code("完成"));
jo_mst.setConfirm_optid(SecurityUtils.getCurrentUserId());
jo_mst.setConfirm_optname(SecurityUtils.getCurrentNickName());
jo_mst.setConfirm_time(DateUtil.now());
//解锁起点点位、仓位
List<StIvtCheckdtlBcp> finish_list = checkdtlBcpService.list(new QueryWrapper<StIvtCheckdtlBcp>().eq("check_id", dtl.getCheck_id())
.eq("status", CHECKEnum.DTL_STATUS.code("完成")));
finish_list.stream()
.map(finish -> finish.getStruct_id())
.distinct()
.forEach(struct_id -> structattrService.update(new UpdateWrapper<StIvtStructattr>().set("inv_code", "").set("lock_type", "0").eq("struct_id", struct_id)));
}
}
}
}

View File

@@ -27,6 +27,9 @@ import org.nl.modules.system.util.CodeUtil;
import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtBsrealstorattrService;
import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtBsrealstorattr;
import org.nl.wms.product_manage.sch.service.TaskService;
import org.nl.wms.scheduler_manage.service.point.ISchBasePointService;
import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint;
import org.nl.wms.scheduler_manage.service.point.dao.mapper.SchBasePointMapper;
import org.nl.wms.scheduler_manage.service.task.ISchBaseTaskService;
import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask;
import org.nl.wms.storage_manage.IOSEnum;
@@ -45,10 +48,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.function.Consumer;
/**
@@ -72,6 +72,10 @@ public class StIvtShutframeinvBcpServiceImpl extends ServiceImpl<StIvtShutframei
private StIvtStructivtBcpMapper bcpMapper;
@Autowired
private ISchBaseTaskService taskService;
@Autowired
private SchBasePointMapper pointMapper;
@Autowired
private ISchBasePointService pointService;
@Override
@@ -92,6 +96,13 @@ public class StIvtShutframeinvBcpServiceImpl extends ServiceImpl<StIvtShutframei
//根据任务号查询对应的任务组
SchBaseTask task = taskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_id", task_id));
String point_code = task.getPoint_code2();
String vehicle_code = task.getVehicle_code();
pointService.update(new UpdateWrapper<SchBasePoint>().lambda()
.eq(SchBasePoint::getPoint_code, point_code)
.set(SchBasePoint::getVehicle_code, vehicle_code));
List<SchBaseTask> task_list = taskService.list(new QueryWrapper<SchBaseTask>()
.eq("task_group_id", task.getTask_group_id())
.ne("task_status", StatusEnum.TASK_FINISH)
@@ -142,7 +153,10 @@ public class StIvtShutframeinvBcpServiceImpl extends ServiceImpl<StIvtShutframei
Assert.notNull(new Object[]{form, form.get("shutframeinv_id")}, "请求参数不能为空");
//查询可用的半成品移出点位
List<String> point_list = Arrays.asList(new String[]{"PP01", "PP02"});
Map map = new HashMap<>();
map.put("region_code", "A1_BCP_PD");
List<Map> point_list = pointMapper.canUsePoint(map);
if (point_list.size() < 2) {
throw new BadRequestException("拼盘需要两个可用的拼盘点位!");
}
@@ -154,7 +168,7 @@ public class StIvtShutframeinvBcpServiceImpl extends ServiceImpl<StIvtShutframei
PointEvent event = PointEvent.builder()
.type(AcsTaskEnum.TASK_STRUCT_SHUT.getCode())
.point_code1(list.get(0).getTurnin_struct_code())
.point_code2(point_list.get(0))
.point_code2((String) point_list.get(0).get("point_code"))
.task_group_id(task_group_id)
.vehicle_code(list.get((0)).getStoragevehicle_code_in())
.product_area(mst.getWorkshop_id())
@@ -163,7 +177,7 @@ public class StIvtShutframeinvBcpServiceImpl extends ServiceImpl<StIvtShutframei
PointEvent event2 = PointEvent.builder()
.type(AcsTaskEnum.TASK_STRUCT_SHUT.getCode())
.point_code1(list.get(0).getTurnout_struct_code())
.point_code2(point_list.get(1))
.point_code2((String) point_list.get(1).get("point_code"))
.vehicle_code(list.get((0)).getStoragevehicle_code())
.product_area(mst.getWorkshop_id())
.build();

View File

@@ -2,7 +2,7 @@ import request from '@/utils/request'
export function add(data) {
return request({
url: 'api/mdPbMeasureunit',
url: 'api/mdPbMeasureunit/add',
method: 'post',
data
})
@@ -10,16 +10,16 @@ export function add(data) {
export function del(ids) {
return request({
url: 'api/mdPbMeasureunit/',
method: 'delete',
url: 'api/mdPbMeasureunit/delete',
method: 'post',
data: ids
})
}
export function edit(data) {
return request({
url: 'api/mdPbMeasureunit',
method: 'put',
url: 'api/mdPbMeasureunit/update',
method: 'post',
data
})
}

View File

@@ -45,7 +45,7 @@
<el-table-column prop="unit_code" label="编码" />
<el-table-column prop="unit_name" label="名称" />
<el-table-column prop="qty_precision" label="数据精度" />
<el-table-column prop="update_optname" label="修改者" />
<el-table-column prop="update_name" label="修改者" />
<el-table-column prop="update_time" label="修改时间" width="135" />
<el-table-column prop="is_used" label="启用 ">
<template slot-scope="scope">

View File

@@ -11,20 +11,22 @@
>
<el-row v-show="crud.status.cu > 0" :gutter="20">
<el-col :span="20" style="border: 1px solid white">
<span />
<span/>
</el-col>
<el-col :span="4">
<span>
<el-button icon="el-icon-check" size="mini" :loading="crud.cu === 2" type="primary" @click="crud.submitCU">保存</el-button>
<el-button icon="el-icon-check" size="mini" :loading="crud.cu === 2" type="primary"
@click="crud.submitCU">保存</el-button>
<el-button icon="el-icon-close" size="mini" type="info" @click="crud.cancelCU">关闭</el-button>
</span>
</el-col>
</el-row>
<el-form ref="form" style="border: 1px solid #cfe0df;margin-top: 10px;padding-top: 10px;" :inline="true" :model="form" :rules="rules" size="mini" label-width="85px" label-suffix=":">
<el-form ref="form" style="border: 1px solid #cfe0df;margin-top: 10px;padding-top: 10px;" :inline="true"
:model="form" :rules="rules" size="mini" label-width="85px" label-suffix=":">
<el-form-item label="单据号" prop="bill_code">
<label slot="label">单&nbsp;&nbsp;据&nbsp;号:</label>
<el-input v-model="form.bill_code" disabled placeholder="系统生成" clearable style="width: 210px" />
<el-input v-model="form.bill_code" disabled placeholder="系统生成" clearable style="width: 210px"/>
</el-form-item>
<el-form-item label="仓库" prop="product_code">
<label slot="label">所属仓库:</label>
@@ -53,10 +55,10 @@
:disabled="crud.status.view > 0"
>
<el-option
v-for="item in storlist"
:key="item.stor_id"
:label="item.stor_name"
:value="item.stor_id"
v-for="item in pointList"
:key="item.point_code"
:label="item.point_code"
:value="item.point_code"
/>
</el-select>
</el-form-item>
@@ -96,7 +98,7 @@
</el-form-item>
<el-form-item label="明细数" prop="detail_count">
<label slot="label">明&nbsp;&nbsp;细&nbsp;数:</label>
<el-input v-model="form.detail_count" size="mini" disabled style="width: 210px" />
<el-input v-model="form.detail_count" size="mini" disabled style="width: 210px"/>
</el-form-item>
<el-form-item label="总重量" prop="total_qty">
<label slot="label">总&nbsp;&nbsp;重&nbsp;量:</label>
@@ -109,11 +111,13 @@
/>
</el-form-item>
<el-form-item label="业务日期" prop="biz_date">
<el-date-picker v-model="form.biz_date" type="date" placeholder="选择日期" style="width: 210px" value-format="yyyy-MM-dd" :disabled="crud.status.view > 0" />
<el-date-picker v-model="form.biz_date" type="date" placeholder="选择日期" style="width: 210px"
value-format="yyyy-MM-dd" :disabled="crud.status.view > 0"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<label slot="label">备&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;注:</label>
<el-input v-model="form.remark" style="width: 380px;" rows="2" type="textarea" :disabled="crud.status.view > 0" />
<el-input v-model="form.remark" style="width: 380px;" rows="2" type="textarea"
:disabled="crud.status.view > 0"/>
</el-form-item>
</el-form>
@@ -121,7 +125,7 @@
<div v-show="crud.status.add === 1" class="crud-opts2" style="margin-bottom: 5px;">
<span class="crud-opts-right2">
<!--左侧插槽-->
<slot name="left" />
<slot name="left"/>
<el-button
slot="left"
class="filter-item"
@@ -143,11 +147,11 @@
border
:header-cell-style="{background:'#f5f7fa',color:'#606266'}"
>
<el-table-column type="index" label="序号" width="55" align="center" />
<el-table-column type="index" label="序号" width="55" align="center"/>
<el-table-column show-overflow-tooltip prop="material_code" label="物料编码" />
<el-table-column show-overflow-tooltip prop="material_name" label="物料名称" />
<el-table-column show-overflow-tooltip prop="material_spec" label="物料规格" />
<el-table-column show-overflow-tooltip prop="material_code" label="物料编码"/>
<el-table-column show-overflow-tooltip prop="material_name" label="物料名称"/>
<el-table-column show-overflow-tooltip prop="material_spec" label="物料规格"/>
<el-table-column show-overflow-tooltip prop="base_bill_code" label="订单号">
<template slot-scope="scope">
<el-input
@@ -219,7 +223,7 @@
</template>
<script>
import CRUD, { crud, form } from '@crud/crud'
import CRUD, {crud, form} from '@crud/crud'
import crudsemiproductIn from '@/views/wms/storage_manage/semiproduct/semiproductIn/semiproductIn'
import MaterDtl from '@/views/wms/pub/MaterDialog'
import crudStorattr from '@/views/wms/storage_manage/basedata/basedata'
@@ -239,11 +243,11 @@ const defaultForm = {
export default {
name: 'AddDialog',
components: { MaterDtl },
components: {MaterDtl},
mixins: [crud(), form(defaultForm)],
dicts: ['IO_BILL_STATUS', 'ST_QUALITY_SCODE', 'bill_type', 'product_area'],
cruds() {
return CRUD({ title: '入库新增', crudMethod: { ...crudsemiproductIn }})
return CRUD({title: '入库新增', crudMethod: {...crudsemiproductIn}})
},
props: {
dialogShow: {
@@ -262,16 +266,17 @@ export default {
opendtlParam: null,
materType: '03', // 关键成品
storlist: [],
pointList: [{ 'point_code': 'RK01' }],
billtypelist: [],
rules: {
product_code: [
{ required: true, message: '生产车间不能为空', trigger: 'blur' }
{required: true, message: '生产车间不能为空', trigger: 'blur'}
],
bill_type: [
{ required: true, message: '业务类型不能为空', trigger: 'blur' }
{required: true, message: '业务类型不能为空', trigger: 'blur'}
],
biz_date: [
{ required: true, message: '业务日期不能为空', trigger: 'blur' }
{required: true, message: '业务日期不能为空', trigger: 'blur'}
]
}
}
@@ -285,7 +290,7 @@ export default {
},
methods: {
open() {
crudStorattr.getStor({ 'stor_type': '2' }).then(res => {
crudStorattr.getStor({'stor_type': '2'}).then(res => {
this.storlist = res.content
})
},
@@ -294,7 +299,7 @@ export default {
},
[CRUD.HOOK.afterToEdit]() {
// 获取入库单明细
crudsemiproductIn.getIODtl({ 'iostorinv_id': this.form.iostorinv_id }).then(res => {
crudsemiproductIn.getIODtl({'iostorinv_id': this.form.iostorinv_id}).then(res => {
this.form.tableData = res
// 将明细变成不可编辑
for (let i = 0; i < this.form.tableData.length; i++) {
@@ -304,7 +309,7 @@ export default {
})
},
[CRUD.HOOK.afterToView]() {
crudsemiproductIn.getIODtl({ 'bill_code': this.form.bill_code }).then(res => {
crudsemiproductIn.getIODtl({'bill_code': this.form.bill_code}).then(res => {
this.form.tableData = res.content
// 将明细变成不可编辑
for (let i = 0; i < this.form.tableData.length; i++) {

View File

@@ -78,10 +78,10 @@
:disabled="crud.status.view > 0"
>
<el-option
v-for="item in storlist"
:key="item.stor_id"
:label="item.stor_name"
:value="item.stor_id"
v-for="item in pointList"
:key="item.point_code"
:label="item.point_code"
:value="item.point_code"
/>
</el-select>
</el-form-item>
@@ -247,6 +247,7 @@ export default {
materType: '03', // 关键成品
storlist: [],
billtypelist: [],
pointList: [{ 'point_code': 'CK01' }],
rules: {
product_code: [
{ required: true, message: '生产车间不能为空', trigger: 'blur' }