代码更新

This commit is contained in:
2022-10-26 19:58:51 +08:00
parent db1baf70a7
commit 4630e6138b
15 changed files with 188 additions and 264 deletions

View File

@@ -12,6 +12,7 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.common.exception.BadRequestException;
import org.nl.modules.common.utils.SecurityUtils; import org.nl.modules.common.utils.SecurityUtils;
import org.nl.wms.sch.manage.RegionTypeEnum;
import org.nl.wms.sch.service.PointService; import org.nl.wms.sch.service.PointService;
import org.nl.wms.sch.service.dto.PointDto; import org.nl.wms.sch.service.dto.PointDto;
import org.nl.modules.wql.WQL; import org.nl.modules.wql.WQL;
@@ -212,10 +213,10 @@ public class PointServiceImpl implements PointService {
for (int i = 0; i < arrStruct.size(); i++) { for (int i = 0; i < arrStruct.size(); i++) {
JSONObject json = arrStruct.getJSONObject(i); JSONObject json = arrStruct.getJSONObject(i);
JSONObject structMap = new JSONObject(); JSONObject structMap = new JSONObject();
structMap.put("point_id", json.getString("struct_id")); structMap.put("point_id", IdUtil.getSnowflake(1,1).nextId());
structMap.put("point_code", json.getString("struct_code")); structMap.put("point_code", json.getString("struct_code"));
structMap.put("point_name", json.getString("struct_name")); structMap.put("point_name", json.getString("struct_name"));
structMap.put("region_id", json.getString("region_id")); structMap.put("region_id", RegionTypeEnum.A_HKZC.getId());
structMap.put("source_id", json.getString("struct_id")); structMap.put("source_id", json.getString("struct_id"));
structMap.put("point_type", "01"); structMap.put("point_type", "01");
structMap.put("is_host", "0"); structMap.put("is_host", "0");

View File

@@ -117,11 +117,9 @@
IF 输入.flag = "2" IF 输入.flag = "2"
QUERY QUERY
SELECT SELECT
struct.*,region.region_id struct.*
FROM FROM
ST_IVT_StructAttr struct ST_IVT_StructAttr struct
left join
SCH_BASE_Region region on struct.region_id = region.region_id
WHERE WHERE
struct.is_delete = '0' struct.is_delete = '0'
ENDSELECT ENDSELECT

View File

@@ -45,7 +45,7 @@ public interface CheckOutBillService {
* {bill_code=, stor_id=1473161852946092032, stor_code=01, stor_name=原材料库, bill_status=10, total_qty=2, detail_count=1, bill_type=010201, remark=, biz_date=2022-01-08, create_mode=, tableData=[{material_id=1309, material_code=090301010001, bill_status=10, material_name=碳化钨粉 02, pcsn=, quality_scode=02, ivt_level=01, is_active=1, plan_qty=2, qty_unit_name=千克\公斤, qty_unit_id=1, remark=, edit=true}]} * {bill_code=, stor_id=1473161852946092032, stor_code=01, stor_name=原材料库, bill_status=10, total_qty=2, detail_count=1, bill_type=010201, remark=, biz_date=2022-01-08, create_mode=, tableData=[{material_id=1309, material_code=090301010001, bill_status=10, material_name=碳化钨粉 02, pcsn=, quality_scode=02, ivt_level=01, is_active=1, plan_qty=2, qty_unit_name=千克\公斤, qty_unit_id=1, remark=, edit=true}]}
* / * /
*/ */
void insertDtl (Map whereJson); void insertDtl (JSONObject whereJson);
/** /**
* 新增出库单 * 新增出库单
* @param whereJson * @param whereJson
@@ -82,7 +82,7 @@ public interface CheckOutBillService {
* 修改出库单 * 修改出库单
* @param whereJson / * @param whereJson /
*/ */
void update(Map whereJson); void update(JSONObject whereJson);
/** /**
* 全部分配,对同一出库单明细进行分配 * 全部分配,对同一出库单明细进行分配
* @param whereJson / * @param whereJson /

View File

@@ -431,8 +431,6 @@ public class StorPublicServiceImpl implements StorPublicService {
WQLObject wo_Point = WQLObject.getWQLObject("SCH_BASE_Point"); WQLObject wo_Point = WQLObject.getWQLObject("SCH_BASE_Point");
//载具表 //载具表
WQLObject wo_Storage = WQLObject.getWQLObject("MD_PB_StorageVehicleInfo"); WQLObject wo_Storage = WQLObject.getWQLObject("MD_PB_StorageVehicleInfo");
//载具表
WQLObject bucketrecord = WQLObject.getWQLObject("md_pb_bucketrecord");
String struct_id = from.getString("struct_id"); String struct_id = from.getString("struct_id");
String point_code = from.getString("point_code"); String point_code = from.getString("point_code");
//锁定类型 //锁定类型
@@ -456,13 +454,10 @@ public class StorPublicServiceImpl implements StorPublicService {
HashMap<String,String> map = new HashMap<>(); HashMap<String,String> map = new HashMap<>();
if(lock_type.equals("00")){//解锁 if(lock_type.equals("00")){//解锁
map.put("lock_type",lock_type); map.put("lock_type",lock_type);
map.put("taskdtl_type","");
map.put("taskdtl_id","");
map.put("task_code",""); map.put("task_code","");
map.put("inv_type",""); map.put("inv_type","");
map.put("inv_id",""); map.put("inv_id","");
map.put("inv_code",""); map.put("inv_code","");
String area_type = jo.getString("area_type");
//是否清空载具 //是否清空载具
if("1".equals(from.getString("is_free"))){ if("1".equals(from.getString("is_free"))){
map.put("storagevehicle_code",""); map.put("storagevehicle_code","");
@@ -480,35 +475,15 @@ public class StorPublicServiceImpl implements StorPublicService {
} }
map.put("storagevehicle_code",Storage.getString("storagevehicle_code")); map.put("storagevehicle_code",Storage.getString("storagevehicle_code"));
map.put("storagevehicle_qty","1"); map.put("storagevehicle_qty","1");
map.put("storagevehicle_type",Storage.getString("storagevehicle_type"));
map.put("storagevehicle_id",Storage.getString("storagevehicle_id"));
map.put("vehicle_code",Storage.getString("storagevehicle_code")); map.put("vehicle_code",Storage.getString("storagevehicle_code"));
map.put("point_status","01"); map.put("point_status","01");
JSONArray bus = bucketrecord.query("storagevehicle_code='"+storagevehicle_code+"'").getResultJSONArray(0);
if(bus.size()>0){
map.put("point_status","02");
map.put("is_emptyvehicle","0");
}else{
map.put("is_emptyvehicle","1");
}
}else{ }else{
map.put("is_emptyvehicle","0"); map.put("is_emptyvehicle","0");
if(StrUtil.isNotEmpty(jo.getString("storagevehicle_code"))){ if(StrUtil.isNotEmpty(jo.getString("storagevehicle_code"))){
String storagevehicle = jo.getString("storagevehicle_code");
JSONArray bus = bucketrecord.query("storagevehicle_code='"+storagevehicle+"'").getResultJSONArray(0);
if(bus.size()>0){
map.put("is_emptyvehicle","0");
}else{
map.put("is_emptyvehicle","1");
}
} }
} }
} }
//区域类型非输送线才需解锁
if(!area_type.equals("21")){
wo_Point.update(map,"point_id='"+jo.getString("point_id")+"'");
wo_Struct.update(map,"struct_id='"+jo.getString("struct_id")+"'");
}
}else{//锁定 }else{//锁定
map.put("lock_type",lock_type); map.put("lock_type",lock_type);
map.put("taskdtl_type",from.getString("taskdtl_type")); map.put("taskdtl_type",from.getString("taskdtl_type"));
@@ -517,7 +492,6 @@ public class StorPublicServiceImpl implements StorPublicService {
map.put("inv_type",from.getString("inv_type")); map.put("inv_type",from.getString("inv_type"));
map.put("inv_id",from.getString("inv_id")); map.put("inv_id",from.getString("inv_id"));
map.put("inv_code",from.getString("inv_code")); map.put("inv_code",from.getString("inv_code"));
String area_type = jo.getString("area_type");
if (StrUtil.isNotEmpty(storagevehicle_code)) { if (StrUtil.isNotEmpty(storagevehicle_code)) {
JSONObject Storage = wo_Storage.query("storagevehicle_code='"+storagevehicle_code+"'").uniqueResult(0); JSONObject Storage = wo_Storage.query("storagevehicle_code='"+storagevehicle_code+"'").uniqueResult(0);
if(ObjectUtil.isEmpty(Storage)){ if(ObjectUtil.isEmpty(Storage)){
@@ -529,18 +503,6 @@ public class StorPublicServiceImpl implements StorPublicService {
map.put("storagevehicle_id",Storage.getString("storagevehicle_id")); map.put("storagevehicle_id",Storage.getString("storagevehicle_id"));
map.put("vehicle_code",Storage.getString("storagevehicle_code")); map.put("vehicle_code",Storage.getString("storagevehicle_code"));
map.put("point_status","01"); map.put("point_status","01");
JSONArray bus = bucketrecord.query("storagevehicle_code='"+storagevehicle_code+"'").getResultJSONArray(0);
if(bus.size()>0){
map.put("point_status","02");
map.put("is_emptyvehicle","0");
}else{
map.put("is_emptyvehicle","1");
}
}
//区域类型非输送线才需解锁
if(!area_type.equals("21")){
wo_Point.update(map,"point_id='"+jo.getString("point_id")+"'");
wo_Struct.update(map,"struct_id='"+jo.getString("struct_id")+"'");
} }
} }
} }

View File

@@ -94,7 +94,6 @@
struct.struct_code, struct.struct_code,
point.point_code, point.point_code,
point.point_id, point.point_id,
point.area_type,
struct.storagevehicle_code struct.storagevehicle_code
FROM FROM
SCH_BASE_Point point SCH_BASE_Point point

View File

@@ -31,24 +31,24 @@ public class CheckOutBillController {
} }
@GetMapping("/addDtl") @GetMapping("/addDtl")
@Log("查询出库单") @Log("查询库存")
@ApiOperation("查询出库单") @ApiOperation("查询库存")
//@PreAuthorize("@el.check('checkoutbill:list')") //@PreAuthorize("@el.check('checkoutbill:list')")
public ResponseEntity<Object> queryAddDtl(@RequestParam Map whereJson, Pageable page){ public ResponseEntity<Object> queryAddDtl(@RequestParam Map whereJson, Pageable page){
return new ResponseEntity<>(checkOutBillService.queryAddDtl(whereJson,page), HttpStatus.OK); return new ResponseEntity<>(checkOutBillService.queryAddDtl(whereJson,page), HttpStatus.OK);
} }
@GetMapping("/queryDtl") @GetMapping("/queryDtl")
@Log("查询出库单") @Log("查询库存")
@ApiOperation("查询出库单") @ApiOperation("查询库存")
//@PreAuthorize("@el.check('checkoutbill:list')") //@PreAuthorize("@el.check('checkoutbill:list')")
public ResponseEntity<Object> queryDtl(@RequestParam Map whereJson, Pageable page){ public ResponseEntity<Object> queryDtl(@RequestParam Map whereJson, Pageable page){
return new ResponseEntity<>(checkOutBillService.queryDtl(whereJson,page), HttpStatus.OK); return new ResponseEntity<>(checkOutBillService.queryDtl(whereJson,page), HttpStatus.OK);
} }
@GetMapping("/getOutBillDtl") @GetMapping("/getOutBillDtl")
@Log("查询出库单") @Log("查询明细")
@ApiOperation("查询出库单") @ApiOperation("查询明细")
public ResponseEntity<Object> getOutBillDtl(@RequestParam Map whereJson){ public ResponseEntity<Object> getOutBillDtl(@RequestParam Map whereJson){
return new ResponseEntity<>(checkOutBillService.getOutBillDtl(whereJson), HttpStatus.OK); return new ResponseEntity<>(checkOutBillService.getOutBillDtl(whereJson), HttpStatus.OK);
} }
@@ -64,14 +64,14 @@ public class CheckOutBillController {
@PutMapping @PutMapping
@Log("修改出库单") @Log("修改出库单")
@ApiOperation("修改出库单") @ApiOperation("修改出库单")
public ResponseEntity<Object> update(@RequestBody Map whereJson){ public ResponseEntity<Object> update(@RequestBody JSONObject whereJson){
checkOutBillService.update(whereJson); checkOutBillService.update(whereJson);
return new ResponseEntity<>(HttpStatus.NO_CONTENT); return new ResponseEntity<>(HttpStatus.NO_CONTENT);
} }
@PostMapping() @PostMapping()
@Log("新增出库单") @Log("新增出库单")
@ApiOperation("新增出库单") @ApiOperation("新增出库单")
public ResponseEntity<Object> insertDtl(@RequestBody Map whereJson){ public ResponseEntity<Object> insertDtl(@RequestBody JSONObject whereJson){
checkOutBillService.insertDtl(whereJson); checkOutBillService.insertDtl(whereJson);
return new ResponseEntity<>(HttpStatus.CREATED); return new ResponseEntity<>(HttpStatus.CREATED);
} }

View File

@@ -34,7 +34,8 @@ import java.util.*;
@Slf4j @Slf4j
public class CheckOutBillServiceImpl implements CheckOutBillService { public class CheckOutBillServiceImpl implements CheckOutBillService {
private StorPublicService storPublicService; @Autowired
private final StorPublicService storPublicService;
@Override @Override
public Map<String, Object> pageQuery(Map whereJson, Pageable page) { public Map<String, Object> pageQuery(Map whereJson, Pageable page) {
@@ -64,12 +65,14 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
public Map<String, Object> queryAddDtl(Map whereJson, Pageable page) { public Map<String, Object> queryAddDtl(Map whereJson, Pageable page) {
HashMap<String, String> map = new HashMap<>(whereJson); HashMap<String, String> map = new HashMap<>(whereJson);
map.put("flag", "7"); map.put("flag", "7");
map.put("begin_time", MapUtil.getStr(whereJson,"begin_time"));
map.put("end_time", MapUtil.getStr(whereJson,"end_time"));
if (StrUtil.isNotEmpty(map.get("bill_code"))) { if (StrUtil.isNotEmpty(map.get("material_code"))) {
map.put("bill_code", "%" + map.get("bill_code") + "%"); map.put("material_code", "%" + map.get("material_code") + "%");
} }
if (StrUtil.isNotEmpty(map.get("remark"))) { if (StrUtil.isNotEmpty(map.get("pcsn"))) {
map.put("remark", "%" + map.get("remark") + "%"); map.put("pcsn", "%" + map.get("pcsn") + "%");
} }
JSONObject jo = WQL.getWO("QST_IVT_CHECKOUTBILL").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), ""); JSONObject jo = WQL.getWO("QST_IVT_CHECKOUTBILL").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "");
return jo; return jo;
@@ -175,10 +178,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void insertDtl(Map map) { public void insertDtl(JSONObject map) {
//明细另一种写法 //明细另一种写法
//JSONArray jsonArr = JSONArray.fromObject(whereJson.get("tableData")); //JSONArray jsonArr = JSONArray.fromObject(whereJson.get("tableData"));
ArrayList<HashMap> rows = (ArrayList<HashMap>) map.get("tableData"); JSONArray rows = map.getJSONArray("tableData");
map.remove("tableData"); map.remove("tableData");
Long currentUserId = SecurityUtils.getCurrentUserId(); Long currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getCurrentNickName(); String nickName = SecurityUtils.getCurrentNickName();
@@ -189,6 +192,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
JSONObject jsonStor = WQLObject.getWQLObject("st_ivt_bsrealstorattr").query("stor_id ='" + MapUtil.getStr(map, "stor_id") + "'").uniqueResult(0); JSONObject jsonStor = WQLObject.getWQLObject("st_ivt_bsrealstorattr").query("stor_id ='" + MapUtil.getStr(map, "stor_id") + "'").uniqueResult(0);
map.put("iostorinv_id", iostorinv_id); map.put("iostorinv_id", iostorinv_id);
map.put("bill_code", bill_code); map.put("bill_code", bill_code);
map.put("biz_date", map.getString("biz_date").substring(0,10));
String bill_type = (String) map.get("bill_type"); String bill_type = (String) map.get("bill_type");
map.put("buss_type", bill_type.substring(0, 4)); map.put("buss_type", bill_type.substring(0, 4));
map.put("io_type", "1"); map.put("io_type", "1");
@@ -209,13 +213,23 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
map.put("syscompanyid", deptId); map.put("syscompanyid", deptId);
for (int i = 0; i < rows.size(); i++) { for (int i = 0; i < rows.size(); i++) {
HashMap<String, String> row = rows.get(i); JSONObject row = rows.getJSONObject(i);
row.put("iostorinvdtl_id", IdUtil.getSnowflake(1, 1).nextId() + ""); JSONObject jsonDtl = new JSONObject();
row.put("iostorinv_id", iostorinv_id); jsonDtl.put("iostorinvdtl_id", IdUtil.getSnowflake(1, 1).nextId() + "");
row.put("seq_no", (i + 1) + ""); jsonDtl.put("iostorinv_id", iostorinv_id);
row.put("assign_qty", "0"); jsonDtl.put("seq_no", (i + 1) + "");
row.put("unassign_qty", row.get("plan_qty")); jsonDtl.put("material_id", row.getString("material_id"));
WQLObject.getWQLObject("ST_IVT_IOStorInvDtl").insert(row); jsonDtl.put("pcsn", row.getString("pcsn"));
jsonDtl.put("box_no", row.getString("box_no"));
jsonDtl.put("quality_scode", "01");
jsonDtl.put("bill_status", "10");
jsonDtl.put("qty_unit_id", row.get("qty_unit_id"));
jsonDtl.put("qty_unit_name", row.getString("qty_unit_name"));
jsonDtl.put("plan_qty", row.get("plan_qty"));
jsonDtl.put("remark", row.getString("remark"));
jsonDtl.put("assign_qty", "0");
jsonDtl.put("unassign_qty", row.get("plan_qty"));
WQLObject.getWQLObject("ST_IVT_IOStorInvDtl").insert(jsonDtl);
} }
WQLObject.getWQLObject("ST_IVT_IOStorInv").insert(map); WQLObject.getWQLObject("ST_IVT_IOStorInv").insert(map);
} }
@@ -269,7 +283,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void update(Map whereJson) { public void update(JSONObject whereJson) {
Long currentUserId = SecurityUtils.getCurrentUserId(); Long currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getCurrentNickName(); String nickName = SecurityUtils.getCurrentNickName();
@@ -284,16 +298,25 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
//先删除该单据下的所有明细 //先删除该单据下的所有明细
String iostorinv_id = (String) whereJson.get("iostorinv_id"); String iostorinv_id = (String) whereJson.get("iostorinv_id");
wo_dtl.delete("iostorinv_id = '" + iostorinv_id + "'"); wo_dtl.delete("iostorinv_id = '" + iostorinv_id + "'");
ArrayList<HashMap> rows = (ArrayList<HashMap>) whereJson.get("tableData"); JSONArray rows = whereJson.getJSONArray("tableData");
for (int i = 0; i < rows.size(); i++) { for (int i = 0; i < rows.size(); i++) {
HashMap<String, String> row = rows.get(i); JSONObject row = rows.getJSONObject(i);
row.put("iostorinvdtl_id", IdUtil.getSnowflake(1, 1).nextId() + ""); JSONObject jsonDtl = new JSONObject();
row.put("iostorinv_id", iostorinv_id); jsonDtl.put("iostorinvdtl_id", IdUtil.getSnowflake(1, 1).nextId() + "");
row.put("seq_no", (i + 1) + ""); jsonDtl.put("iostorinv_id", iostorinv_id);
row.put("bill_status", "10"); jsonDtl.put("seq_no", (i + 1) + "");
row.put("assign_qty", "0"); jsonDtl.put("material_id", row.getString("material_id"));
row.put("unassign_qty", row.get("plan_qty")); jsonDtl.put("pcsn", row.getString("pcsn"));
WQLObject.getWQLObject("ST_IVT_IOStorInvDtl").insert(row); jsonDtl.put("box_no", row.getString("box_no"));
jsonDtl.put("quality_scode", "01");
jsonDtl.put("bill_status", "10");
jsonDtl.put("qty_unit_id", row.get("qty_unit_id"));
jsonDtl.put("qty_unit_name", row.getString("qty_unit_name"));
jsonDtl.put("plan_qty", row.get("plan_qty"));
jsonDtl.put("remark", row.getString("remark"));
jsonDtl.put("assign_qty", "0");
jsonDtl.put("unassign_qty", row.get("plan_qty"));
WQLObject.getWQLObject("ST_IVT_IOStorInvDtl").insert(jsonDtl);
} }
} }
@@ -657,12 +680,9 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
.addParam("material_id", map.get("material_id")) .addParam("material_id", map.get("material_id"))
.addParam("quality_scode", map.get("quality_scode")) .addParam("quality_scode", map.get("quality_scode"))
.addParam("pcsn", map.get("pcsn")) .addParam("pcsn", map.get("pcsn"))
.addParam("ivt_level", map.get("ivt_level"))
.addParam("is_active", map.get("is_active"))
.addParam("iostorinv_id", map.get("iostorinv_id")) .addParam("iostorinv_id", map.get("iostorinv_id"))
.addParam("stor_id", map.get("stor_id")) .addParam("stor_id", map.get("stor_id"))
.addParam("sect_id", map.get("sect_id")) .addParam("sect_id", map.get("sect_id"))
.addParam("remark", map.get("remark"))
.process() .process()
.getResultJSONArray(0); .getResultJSONArray(0);
return jo; return jo;

View File

@@ -67,60 +67,45 @@
IF 输入.flag = "1" IF 输入.flag = "1"
PAGEQUERY PAGEQUERY
SELECT SELECT
ios.iostorinv_id AS id, ios.*
ios.*,
user.nick_name AS upload_optname
FROM FROM
ST_IVT_IOStorInv ios ST_IVT_IOStorInv ios
inner join (SELECT WHERE
invdtl.iostorinv_id io_type = '1'
FROM
st_ivt_iostorinvdtl invdtl
LEFT JOIN md_me_materialbase mb ON mb.material_id = invdtl.material_id
where 1=1
OPTION 输入.quality_scode <> ""
invdtl.quality_scode = 输入.quality_scode
ENDOPTION
OPTION 输入.pcsn <> ""
invdtl.pcsn like 输入.pcsn
ENDOPTION
OPTION 输入.material_code <> ""
(mb.material_code like 输入.material_code or mb.material_name like 输入.material_code)
ENDOPTION
group by iostorinv_id) dtlcopy on dtlcopy.iostorinv_id = ios.iostorinv_id
LEFT JOIN sys_user user ON user.user_id = ios.upload_optid
WHERE 1=1
and ios.is_delete='0' and ios.is_delete='0'
OPTION 输入.bill_code <> "" OPTION 输入.bill_code <> ""
ios.bill_code like 输入.bill_code ios.bill_code like 输入.bill_code
ENDOPTION ENDOPTION
OPTION 输入.io_type <> "" OPTION 输入.io_type <> ""
ios.io_type = 输入.io_type ios.io_type = 输入.io_type
ENDOPTION ENDOPTION
OPTION 输入.buss_type <> ""
ios.buss_type like 输入.buss_type
ENDOPTION
OPTION 输入.bill_type <> "" OPTION 输入.bill_type <> ""
ios.bill_type = 输入.bill_type ios.bill_type = 输入.bill_type
ENDOPTION ENDOPTION
OPTION 输入.stor_id <> "" OPTION 输入.stor_id <> ""
ios.stor_id = 输入.stor_id ios.stor_id = 输入.stor_id
ENDOPTION ENDOPTION
OPTION 输入.deptIds <> ""
ios.sysdeptid in 输入.deptIds
ENDOPTION
OPTION 输入.create_mode <> "" OPTION 输入.create_mode <> ""
ios.create_mode = 输入.create_mode ios.create_mode = 输入.create_mode
ENDOPTION ENDOPTION
OPTION 输入.bill_status <> "" OPTION 输入.bill_status <> ""
ios.bill_status = 输入.bill_status ios.bill_status = 输入.bill_status
ENDOPTION ENDOPTION
OPTION 输入.begin_time <> "" OPTION 输入.begin_time <> ""
ios.input_time >= 输入.begin_time ios.input_time >= 输入.begin_time
ENDOPTION ENDOPTION
OPTION 输入.end_time <> "" OPTION 输入.end_time <> ""
ios.input_time <= 输入.end_time ios.input_time <= 输入.end_time
ENDOPTION ENDOPTION
ENDSELECT ENDSELECT
ENDPAGEQUERY ENDPAGEQUERY
ENDIF ENDIF
@@ -168,7 +153,6 @@
struct.sect_code, struct.sect_code,
struct.storagevehicle_id, struct.storagevehicle_id,
struct.storagevehicle_code, struct.storagevehicle_code,
struct.storagevehicle_type,
point.point_id point.point_id
FROM FROM
ST_IVT_StructIvt ivt ST_IVT_StructIvt ivt
@@ -226,7 +210,6 @@
struct.sect_code, struct.sect_code,
struct.storagevehicle_id, struct.storagevehicle_id,
struct.storagevehicle_code, struct.storagevehicle_code,
struct.storagevehicle_type,
point.point_id point.point_id
FROM FROM
ST_IVT_StructIvt ivt2 ST_IVT_StructIvt ivt2
@@ -305,16 +288,13 @@
mb.material_name, mb.material_name,
task.task_code, task.task_code,
task.task_status, task.task_status,
task.taskdtl_type, task.task_type,
point.point_code AS start_point_code, point2.point_code
point2.area_type,
point2.source_id
FROM FROM
ST_IVT_IOStorInvDis dis ST_IVT_IOStorInvDis dis
LEFT JOIN ST_IVT_IOStorInv ios ON ios.iostorinv_id = dis.iostorinv_id LEFT JOIN ST_IVT_IOStorInv ios ON ios.iostorinv_id = dis.iostorinv_id
LEFT JOIN md_me_materialbase mb ON mb.material_id = dis.material_id LEFT JOIN md_me_materialbase mb ON mb.material_id = dis.material_id
LEFT JOIN SCH_BASE_Task task ON task.task_id = dis.task_id AND task.is_delete = '0' and task.vehicle_code = dis.storagevehicle_code LEFT JOIN SCH_BASE_Task task ON task.task_id = dis.task_id
LEFT JOIN SCH_BASE_Point point ON point.source_id = dis.struct_id
LEFT JOIN SCH_BASE_Point point2 ON point2.point_id = dis.point_id LEFT JOIN SCH_BASE_Point point2 ON point2.point_id = dis.point_id
WHERE WHERE
1 = 1 1 = 1
@@ -448,41 +428,49 @@
IF 输入.flag = "7" IF 输入.flag = "7"
PAGEQUERY PAGEQUERY
SELECT SELECT
qldtl.inspectiondtl_id AS source_billdtl_id, ivt.stockrecord_id,
qlmst.inspection_type AS source_bill_type, ivt.struct_id,
qlmst.inspection_code AS source_bill_code, ivt.struct_code,
'QL_TEST_InspectionSheetMst' AS source_bill_table, ivt.struct_name,
qldtl.base_bill_code, ivt.region_id,
qldtl.base_bill_id, ivt.material_id,
qldtl.base_bill_table, ivt.quality_scode,
qldtl.base_bill_type, ivt.pcsn,
qlmst.biz_date, ivt.canuse_qty,
mb.material_code, ivt.frozen_qty,
mb.material_name, ivt.ivt_qty AS plan_qty,
qldtl.pcsn, ivt.warehousing_qty,
'2' AS plan_qty, ivt.qty_unit_id,
qldtl.material_id, ivt.instorage_time,
qldtl.qty_unit_id, mater.material_name,
qldtl.qty_unit_name mater.material_code,
unit.unit_name AS qty_unit_name,
attr.storagevehicle_code AS box_no
FROM FROM
ql_test_inspectionsheetdtl qldtl ST_IVT_StructIvt ivt
LEFT JOIN ql_test_inspectionsheetmst qlmst ON qlmst.inspection_id = qldtl.inspection_id LEFT JOIN md_me_materialbase mater ON mater.material_id = ivt.material_id
LEFT JOIN md_me_materialbase mb ON mb.material_id = qldtl.material_id LEFT JOIN md_pb_measureunit unit ON unit.measure_unit_id = ivt.qty_unit_id
LEFT JOIN ST_IVT_StructAttr attr ON attr.struct_id = ivt.struct_id
LEFT JOIN PDM_BI_SubPackageRelation sub ON ivt.pcsn = sub.container_name AND sub.status = '2'
WHERE WHERE
qlmst.is_delete = '0' attr.is_delete = '0'
AND qldtl.bill_status IN ('10', '20', '30', '40', '50') AND attr.is_used = '1'
AND qlmst.inspection_type IN ('10', '20')
OPTION 输入.remark <> "" OPTION 输入.material_code <> ""
(mb.material_code like 输入.remark or mb.material_name like 输入.remark) (mater.material_code like 输入.material_code or
mater.material_name like 输入.material_code)
ENDOPTION ENDOPTION
OPTION 输入.bill_code <> ""
qlmst.inspection_code like 输入.bill_code OPTION 输入.pcsn <> ""
ivt.pcsn like 输入.pcsn
ENDOPTION ENDOPTION
OPTION 输入.begin_time <> "" OPTION 输入.begin_time <> ""
qlmst.biz_date >= 输入.begin_time ivt.instorage_time >= 输入.begin_time
ENDOPTION ENDOPTION
OPTION 输入.end_time <> "" OPTION 输入.end_time <> ""
qlmst.biz_date <= 输入.end_time ivt.instorage_time <= 输入.end_time
ENDOPTION ENDOPTION
ENDSELECT ENDSELECT
ENDPAGEQUERY ENDPAGEQUERY
@@ -537,35 +525,21 @@
QUERY QUERY
SELECT SELECT
dis.*, dis.*,
disdtl.real_qty AS total_storage_qty,
disdtl.bucket_num,
mater.material_code, mater.material_code,
mater.material_name, mater.material_name,
task.start_point_code, task.point_code1 AS start_point_code,
task.next_point_code, task.point_code2 AS next_point_code,
task.taskdtl_id,
task.task_id, task.task_id,
task.task_code, task.task_code,
task.taskdtl_type, task.task_type,
task.task_status task.task_status
FROM FROM
st_ivt_iostorinvdis dis st_ivt_iostorinvdis dis
LEFT JOIN md_me_materialbase mater ON dis.material_id = mater.material_id LEFT JOIN md_me_materialbase mater ON dis.material_id = mater.material_id
LEFT JOIN sch_base_task task ON dis.task_id = task.task_id and task.vehicle_code = dis.storagevehicle_code AND task.is_delete = '0' LEFT JOIN sch_base_task task ON dis.task_id = task.task_id
LEFT JOIN (
SELECT
sum( real_qty ) AS real_qty,
count(iostorinvdtl_id) AS bucket_num,
iostorinvdtl_id,
storagevehicle_id
FROM
st_ivt_iostorinvdisdtl
GROUP BY
storagevehicle_id,iostorinvdtl_id
) AS disdtl ON dis.iostorinvdtl_id = disdtl.iostorinvdtl_id
AND dis.storagevehicle_id = disdtl.storagevehicle_id
WHERE WHERE
1=1 1=1
OPTION 输入.iostorinvdtl_id <> "" OPTION 输入.iostorinvdtl_id <> ""
dis.iostorinvdtl_id = 输入.iostorinvdtl_id dis.iostorinvdtl_id = 输入.iostorinvdtl_id
ENDOPTION ENDOPTION

View File

@@ -110,7 +110,19 @@
</div> </div>
<!--如果想在工具栏加入更多按钮可以使用插槽方式 slot = 'left' or 'right'--> <!--如果想在工具栏加入更多按钮可以使用插槽方式 slot = 'left' or 'right'-->
<crudOperation :permission="permission" /> <crudOperation :permission="permission">
<el-button
slot="right"
class="filter-item"
type="info"
:loading="syncLoading"
icon="el-icon-refresh"
size="mini"
@click="sync()"
>
仓位同步
</el-button>
</crudOperation>
<!--表单组件--> <!--表单组件-->
<el-dialog <el-dialog
:close-on-click-modal="false" :close-on-click-modal="false"

View File

@@ -118,7 +118,7 @@
size="mini" size="mini"
@click="queryDtl()" @click="queryDtl()"
> >
添加质检物料 添加物料
</el-button> </el-button>
<el-button <el-button
slot="left" slot="left"
@@ -142,7 +142,6 @@
:header-cell-style="{background:'#f5f7fa',color:'#606266'}" :header-cell-style="{background:'#f5f7fa',color:'#606266'}"
> >
<el-table-column type="index" label="序号" width="50" align="center" /> <el-table-column type="index" label="序号" width="50" align="center" />
<el-table-column prop="bill_status" label="订单状态" align="center" :formatter="bill_statusFormat" />
<el-table-column show-overflow-tooltip prop="material_code" label="物料编码" width="190" align="center"> <el-table-column show-overflow-tooltip prop="material_code" label="物料编码" width="190" align="center">
<template scope="scope"> <template scope="scope">
<el-input v-show="!scope.row.edit" v-model="scope.row.material_code" disabled class="input-with-select"> <el-input v-show="!scope.row.edit" v-model="scope.row.material_code" disabled class="input-with-select">
@@ -152,19 +151,20 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="material_name" label="物料名称" align="center" min-width="150px" show-overflow-tooltip /> <el-table-column prop="material_name" label="物料名称" align="center" min-width="150px" show-overflow-tooltip />
<el-table-column show-overflow-tooltip prop="pcsn" label="批次" align="center"> <el-table-column show-overflow-tooltip prop="pcsn" label="子卷" align="center">
<template scope="scope"> <template scope="scope">
<el-input v-show="!scope.row.edit" v-model="scope.row.pcsn" size="mini" /> <el-input v-show="!scope.row.edit" v-model="scope.row.pcsn" size="mini" />
<span v-show="scope.row.edit">{{ scope.row.pcsn }}</span> <span v-show="scope.row.edit">{{ scope.row.pcsn }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="plan_qty" label="重量" width="150" align="center"> <el-table-column prop="plan_qty" label="出库重量" width="150" align="center">
<template scope="scope"> <template scope="scope">
<el-input-number v-model="scope.row.plan_qty" :disabled="scope.row.edit" :precision="3" :controls="false" :min="0" style="width: 120px" /> <el-input-number v-model="scope.row.plan_qty" v-show="!scope.row.edit" :precision="3" :controls="false" :min="1" style="width: 120px" />
<span v-show="scope.row.edit">{{ scope.row.plan_qty }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="qty_unit_name" label="单位" align="center" /> <el-table-column prop="qty_unit_name" label="单位" align="center" />
<el-table-column prop="quality_scode" label="品质类型" align="center" width="110px"> <!-- <el-table-column prop="quality_scode" label="品质类型" align="center" width="110px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-select <el-select
v-model="scope.row.quality_scode" v-model="scope.row.quality_scode"
@@ -212,27 +212,25 @@
/> />
</el-select> </el-select>
</template> </template>
</el-table-column> </el-table-column>-->
<el-table-column prop="source_bill_type" label="源单类型" align="center" width="130px" :formatter="invtypeFormat" show-overflow-tooltip /> <el-table-column prop="source_bill_type" label="源单类型" align="center" width="130px" :formatter="invtypeFormat" show-overflow-tooltip />
<el-table-column prop="source_bill_code" label="源单号" align="center" width="130px" show-overflow-tooltip /> <el-table-column prop="source_bill_code" label="源单号" align="center" width="130px" show-overflow-tooltip />
<el-table-column show-overflow-tooltip prop="remark" label="明细备注" align="center"> <el-table-column show-overflow-tooltip prop="remark" label="明细备注" align="center">
<template scope="scope"> <template scope="scope">
<el-input v-show="!scope.row.edit" v-model="scope.row.remark" size="mini" /> <el-input v-model="scope.row.remark" size="mini" />
<span v-show="scope.row.edit">{{ scope.row.remark }}</span> <span>{{ scope.row.remark }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column v-if="crud.status.cu > 0" align="center" label="操作" width="160" fixed="right"> <el-table-column v-if="crud.status.cu > 0" align="center" label="操作" width="160" fixed="right">
<template scope="scope"> <template scope="scope">
<el-button type="danger" class="filter-item" size="mini" icon="el-icon-delete" @click.native.prevent="deleteRow(scope.$index, form.tableData)" /> <el-button type="danger" class="filter-item" size="mini" icon="el-icon-delete" @click.native.prevent="deleteRow(scope.$index, form.tableData)" />
<el-button v-show="!scope.row.edit" type="primary" class="filter-item" size="mini" icon="el-icon-edit" @click="handleEdit(scope.$index, scope.row)">编辑</el-button>
<el-button v-show="scope.row.edit" type="success" class="filter-item" size="mini" icon="el-icon-check" @click="handleEdit(scope.$index, scope.row)">完成</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<AddDtl :dialog-show.sync="dtlShow" :open-param="materType" @tableChanged="tableChanged" /> <AddDtl :dialog-show.sync="dtlShow" :open-param="materType" @tableChanged="tableChanged" />
<MaterDialog :dialog-show.sync="materShow" :mater-opt-code.sync="materType" @tableChanged2="tableChanged2" /> <MaterDialog :dialog-show.sync="materShow" :mater-opt-code.sync="materType" @setMaterValue="setMaterValue" />
</el-dialog> </el-dialog>
</template> </template>
@@ -279,7 +277,9 @@ export default {
nowrow: {}, nowrow: {},
nowindex: '', nowindex: '',
storlist: [], storlist: [],
billtypelist: [], billtypelist: [
{ 'name': '发货出库', 'code': '111111' }
],
invtypelist: [], invtypelist: [],
rules: { rules: {
stor_id: [ stor_id: [
@@ -304,19 +304,25 @@ export default {
methods: { methods: {
open() { open() {
// 查询原材料库的仓库 // 查询原材料库的仓库
crudStorattr.getStor({ 'is_materialstore': '1' }).then(res => { crudStorattr.getStor({ 'is_productstore': '1' }).then(res => {
this.storlist = res.content this.storlist = res.content
}) })
crudRawAssist.getType({ 'io_code': '0101', 'io_flag': '01' }).then(res => { /* crudRawAssist.getType({ 'io_code': '0101', 'io_flag': '01' }).then(res => {
this.billtypelist = res this.billtypelist = res
}) })
checkoutbill.getInvTypes().then(res => { checkoutbill.getInvTypes().then(res => {
this.invtypelist = res this.invtypelist = res
}) })*/
}, },
close() { close() {
this.$emit('AddChanged') this.$emit('AddChanged')
}, },
[CRUD.HOOK.beforeSubmit]() {
if (this.form.tableData.length === 0) {
this.crud.notify('请至少选择一条明细', CRUD.NOTIFICATION_TYPE.INFO)
return false
}
},
[CRUD.HOOK.afterToEdit]() { [CRUD.HOOK.afterToEdit]() {
checkoutbill.getOutBillDtl({ 'iostorinv_id': this.form.iostorinv_id }).then(res => { checkoutbill.getOutBillDtl({ 'iostorinv_id': this.form.iostorinv_id }).then(res => {
this.form.tableData = res this.form.tableData = res
@@ -346,9 +352,6 @@ export default {
} }
} }
}, },
bill_statusFormat(row, column) {
return this.dict.label.io_bill_status[row.bill_status]
},
storChange(row) { storChange(row) {
this.storlist.forEach((item) => { this.storlist.forEach((item) => {
if (item.stor_id === row) { if (item.stor_id === row) {
@@ -362,22 +365,22 @@ export default {
this.crud.notify('请选择业务类型!', CRUD.NOTIFICATION_TYPE.INFO) this.crud.notify('请选择业务类型!', CRUD.NOTIFICATION_TYPE.INFO)
return return
} }
checkoutbill.paramByCodeType({ 'bill_type': this.form.bill_type }).then(res => { this.materShow = true
this.materType = res.materType /* checkoutbill.paramByCodeType({ 'bill_type': this.form.bill_type }).then(res => {
this.materShow = true this.materType = res.materType
this.nowindex = index this.nowindex = index
this.nowrow = row this.nowrow = row
}) })*/
}, },
async queryDtl(index, row) { async queryDtl(index, row) {
if (this.form.bill_type === '') { if (this.form.bill_type === '') {
this.crud.notify('请选择业务类型!', CRUD.NOTIFICATION_TYPE.INFO) this.crud.notify('请选择业务类型!', CRUD.NOTIFICATION_TYPE.INFO)
return return
} }
checkoutbill.paramByCodeType({ 'bill_type': this.form.bill_type }).then(res => { this.dtlShow = true
this.materType = res.materType /* checkoutbill.paramByCodeType({ 'bill_type': this.form.bill_type }).then(res => {
this.dtlShow = true this.materType = res.materType
}) })*/
}, },
tableChanged(rows) { tableChanged(rows) {
const tablemap = new Map() const tablemap = new Map()
@@ -392,17 +395,11 @@ export default {
if (!this.flagnow) { if (!this.flagnow) {
item.edit = true item.edit = true
item.quality_scode = '00' item.quality_scode = '00'
item.ivt_level = '01'
item.is_active = '1'
item.bill_status = '10'
tablemap.set(item.material_id, item) tablemap.set(item.material_id, item)
} }
} else { } else {
item.edit = true item.edit = true
item.quality_scode = '00' item.quality_scode = '00'
item.ivt_level = '01'
item.is_active = '1'
item.bill_status = '10'
tablemap.set(item.material_id, item) tablemap.set(item.material_id, item)
} }
}) })
@@ -411,7 +408,7 @@ export default {
} }
this.form.detail_count = this.form.tableData.length this.form.detail_count = this.form.tableData.length
}, },
tableChanged2(row) { setMaterValue(row) {
for (let i = 0; i < this.form.tableData.length; i++) { for (let i = 0; i < this.form.tableData.length; i++) {
if (this.form.tableData[i].material_id === row.material_id) { if (this.form.tableData[i].material_id === row.material_id) {
this.crud.notify('不允许添加相同物料!') this.crud.notify('不允许添加相同物料!')
@@ -423,6 +420,8 @@ export default {
this.nowrow.material_name = row.material_name this.nowrow.material_name = row.material_name
this.nowrow.qty_unit_id = row.base_unit_id this.nowrow.qty_unit_id = row.base_unit_id
this.nowrow.qty_unit_name = row.unit_name this.nowrow.qty_unit_name = row.unit_name
this.nowrow.plan_qty = '1'
this.nowrow.edit = false
this.form.tableData.splice(this.nowindex, 1, this.nowrow) // 通过splice 替换数据 触发视图更新 this.form.tableData.splice(this.nowindex, 1, this.nowrow) // 通过splice 替换数据 触发视图更新
}, },
async insertdtl() { async insertdtl() {
@@ -430,56 +429,15 @@ export default {
this.crud.notify('请选择业务类型!', CRUD.NOTIFICATION_TYPE.INFO) this.crud.notify('请选择业务类型!', CRUD.NOTIFICATION_TYPE.INFO)
return return
} }
this.form.tableData.push({ material_id: '', material_code: '', bill_status: '10', material_name: '', pcsn: '', quality_scode: '00', ivt_level: '01', is_active: '1', plan_qty: '2', qty_unit_name: '', qty_unit_id: '', remark: '', edit: false }) this.form.tableData.push({ material_id: '', material_code: '', material_name: '', pcsn: '', quality_scode: '00', plan_qty: '1', qty_unit_name: '', qty_unit_id: '', remark: '', edit: false })
this.form.detail_count = this.form.tableData.length this.form.detail_count = this.form.tableData.length
}, },
handleEdit(index, row) {
// 判断是否可以关闭编辑状态
if (!row.edit) {
if (!row.material_id || !row.plan_qty || parseFloat(row.plan_qty) <= 0) {
this.crud.notify('物料、数量不可为空!', CRUD.NOTIFICATION_TYPE.INFO)
return false
}
if (row.quality_scode !== '00') {
this.crud.notify('请校验物料' + row.material_code + ',品质类型是否正确', CRUD.NOTIFICATION_TYPE.INFO)
return false
}
if (row.ivt_level !== '01') {
this.crud.notify('请校验物料' + row.material_code + ',库存等级是否正确', CRUD.NOTIFICATION_TYPE.INFO)
return false
}
if (row.is_active !== '1') {
this.crud.notify('请校验物料' + row.material_code + ',是否可用是否正确', CRUD.NOTIFICATION_TYPE.INFO)
return false
}
}
row.edit = !row.edit
this.form.tableData.splice(index, 1, row) // 通过splice 替换数据 触发视图更新
if (row.edit) {
this.form.total_qty = 0
this.form.tableData.forEach((item) => {
this.form.total_qty = this.form.total_qty + item.plan_qty
})
}
},
deleteRow(index, rows) { deleteRow(index, rows) {
this.form.total_qty = parseFloat(this.form.total_qty) - parseFloat(rows[index].plan_qty) this.form.total_qty = parseFloat(this.form.total_qty) - parseFloat(rows[index].plan_qty)
rows.splice(index, 1) rows.splice(index, 1)
this.nowindex = '' this.nowindex = ''
this.nowrow = {} this.nowrow = {}
this.form.detail_count = this.form.tableData.length this.form.detail_count = this.form.tableData.length
},
[CRUD.HOOK.beforeSubmit]() {
if (this.form.tableData.length === 0) {
this.crud.notify('请至少选择一条明细', CRUD.NOTIFICATION_TYPE.INFO)
return false
}
for (let i = 0; i < this.form.tableData.length; i++) {
if (!this.form.tableData[i].edit) {
this.crud.notify('尚有未完成编辑的物料明细序号' + (i + 1) + ',请检查!')
return false
}
}
} }
} }
} }

View File

@@ -14,19 +14,19 @@
<!-- 搜索 --> <!-- 搜索 -->
<date-range-picker v-model="query.createTime" class="date-item" /> <date-range-picker v-model="query.createTime" class="date-item" />
<el-input <el-input
v-model="query.bill_code" v-model="query.material_code"
clearable clearable
size="mini" size="mini"
placeholder="质检单号模糊查询" placeholder="物料编码、名称"
style="width: 200px;" style="width: 200px;"
class="filter-item" class="filter-item"
@keyup.enter.native="crud.toQuery" @keyup.enter.native="crud.toQuery"
/> />
<el-input <el-input
v-model="query.remark" v-model="query.pcsn"
clearable clearable
size="mini" size="mini"
placeholder="物料" placeholder="子卷号"
style="width: 200px;" style="width: 200px;"
class="filter-item" class="filter-item"
@keyup.enter.native="crud.toQuery" @keyup.enter.native="crud.toQuery"
@@ -44,12 +44,12 @@
:header-cell-style="{background:'#f5f7fa',color:'#606266'}" :header-cell-style="{background:'#f5f7fa',color:'#606266'}"
> >
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column show-overflow-tooltip prop="biz_date" label="日期" /> <el-table-column show-overflow-tooltip prop="instorage_time" label="入库日期" />
<el-table-column show-overflow-tooltip prop="source_bill_code" label="单据号" />
<el-table-column show-overflow-tooltip prop="material_code" 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_name" label="物料名称" />
<el-table-column show-overflow-tooltip prop="pcsn" label="批次" /> <el-table-column show-overflow-tooltip prop="box_no" label="箱号" />
<el-table-column show-overflow-tooltip prop="plan_qty" :formatter="crud.formatNum3" label="检测重量" /> <el-table-column show-overflow-tooltip prop="pcsn" label="子卷号" />
<el-table-column show-overflow-tooltip prop="plan_qty" :formatter="crud.formatNum3" label="重量" />
<el-table-column show-overflow-tooltip prop="qty_unit_name" label="重量单位" /> <el-table-column show-overflow-tooltip prop="qty_unit_name" label="重量单位" />
</el-table> </el-table>
<!--分页组件--> <!--分页组件-->

View File

@@ -111,8 +111,6 @@
<el-table-column show-overflow-tooltip prop="assign_qty" label="已分配重量" :formatter="crud.formatNum3" align="center" /> <el-table-column show-overflow-tooltip prop="assign_qty" label="已分配重量" :formatter="crud.formatNum3" align="center" />
<el-table-column show-overflow-tooltip prop="unassign_qty" label="未分配重量" :formatter="crud.formatNum3" align="center" /> <el-table-column show-overflow-tooltip prop="unassign_qty" label="未分配重量" :formatter="crud.formatNum3" align="center" />
<el-table-column prop="quality_scode" label="品质类型" align="center" width="110px" :formatter="quality_scodeFormat" /> <el-table-column prop="quality_scode" label="品质类型" align="center" width="110px" :formatter="quality_scodeFormat" />
<el-table-column prop="ivt_level" label="库存等级" align="center" width="100px" :formatter="ivt_levelFormat" />
<el-table-column prop="is_active" label="是否可用" align="center" width="110px" :formatter="is_activeFormat" />
<el-table-column prop="source_bill_type" label="源单类型" align="center" width="130px" :formatter="invtypeFormat" /> <el-table-column prop="source_bill_type" label="源单类型" align="center" width="130px" :formatter="invtypeFormat" />
<el-table-column show-overflow-tooltip prop="source_bill_code" label="源单编号" align="center" /> <el-table-column show-overflow-tooltip prop="source_bill_code" label="源单编号" align="center" />
<el-table-column show-overflow-tooltip prop="qty_unit_name" label="单位" align="center" /> <el-table-column show-overflow-tooltip prop="qty_unit_name" label="单位" align="center" />
@@ -193,12 +191,12 @@
</el-table-column> </el-table-column>
<el-table-column show-overflow-tooltip prop="material_code" label="物料编码" align="center" /> <el-table-column show-overflow-tooltip prop="material_code" label="物料编码" align="center" />
<el-table-column show-overflow-tooltip prop="material_name" label="物料名称" align="center" /> <el-table-column show-overflow-tooltip prop="material_name" label="物料名称" align="center" />
<el-table-column show-overflow-tooltip prop="pcsn" label="批次号" align="center" /> <el-table-column show-overflow-tooltip prop="pcsn" label="子卷批次号" align="center" />
<el-table-column show-overflow-tooltip prop="plan_qty" label="出库重量" :formatter="crud.formatNum3" align="center" /> <el-table-column show-overflow-tooltip prop="plan_qty" label="出库重量" :formatter="crud.formatNum3" align="center" />
<el-table-column show-overflow-tooltip prop="struct_code" label="仓位编码" align="center" /> <el-table-column show-overflow-tooltip prop="struct_code" label="仓位编码" align="center" />
<el-table-column show-overflow-tooltip prop="struct_name" label="仓位名称" align="center" /> <el-table-column show-overflow-tooltip prop="struct_name" label="仓位名称" align="center" />
<el-table-column show-overflow-tooltip prop="task_code" label="任务号" align="center" /> <el-table-column show-overflow-tooltip prop="task_code" label="任务号" align="center" />
<el-table-column show-overflow-tooltip prop="point_name" label="出库点" align="center" /> <el-table-column show-overflow-tooltip prop="point_code" label="出库点" align="center" />
<el-table-column align="center" label="操作" width="160" fixed="right"> <el-table-column align="center" label="操作" width="160" fixed="right">
<template scope="scope"> <template scope="scope">
<el-button :disabled="tabledisabled(scope.row)" type="danger" class="filter-item" size="mini" icon="el-icon-delete" @click.native.prevent="deleteRow(scope.row)" /> <el-button :disabled="tabledisabled(scope.row)" type="danger" class="filter-item" size="mini" icon="el-icon-delete" @click.native.prevent="deleteRow(scope.row)" />

View File

@@ -78,9 +78,9 @@
<el-table-column type="index" label="序号" width="50" align="center" /> <el-table-column type="index" label="序号" width="50" align="center" />
<el-table-column show-overflow-tooltip prop="sect_name" label="库区" align="center" /> <el-table-column show-overflow-tooltip prop="sect_name" label="库区" align="center" />
<el-table-column show-overflow-tooltip prop="struct_code" label="仓位" align="center" /> <el-table-column show-overflow-tooltip prop="struct_code" label="仓位" align="center" />
<el-table-column show-overflow-tooltip prop="storagevehicle_code" label="载具号" align="center" /> <el-table-column show-overflow-tooltip prop="storagevehicle_code" label="号" align="center" />
<el-table-column show-overflow-tooltip prop="material_name" label="物料名称" align="center" /> <el-table-column show-overflow-tooltip prop="material_name" label="物料名称" align="center" />
<el-table-column show-overflow-tooltip prop="pcsn" label="批次号" align="center" /> <el-table-column show-overflow-tooltip prop="pcsn" label="子卷批次号" align="center" />
<el-table-column show-overflow-tooltip prop="canuse_qty" label="可出重量" :formatter="crud.formatNum3" align="center" /> <el-table-column show-overflow-tooltip prop="canuse_qty" label="可出重量" :formatter="crud.formatNum3" align="center" />
<el-table-column show-overflow-tooltip prop="plan_qty" label="重量" :formatter="crud.formatNum3" width="160" align="center"> <el-table-column show-overflow-tooltip prop="plan_qty" label="重量" :formatter="crud.formatNum3" width="160" align="center">
<template scope="scope"> <template scope="scope">
@@ -176,7 +176,11 @@ export default {
} }
}, },
handleEdit(index, row) { handleEdit(index, row) {
debugger
// 判断是否可以关闭编辑状态 // 判断是否可以关闭编辑状态
if (row.edit === undefined) {
row.edit = false
}
if (!row.edit) { if (!row.edit) {
if (row.plan_qty > this.queryrow.unassign_qty) { if (row.plan_qty > this.queryrow.unassign_qty) {
this.crud.notify('出库重量不能超过未分配数', CRUD.NOTIFICATION_TYPE.INFO) this.crud.notify('出库重量不能超过未分配数', CRUD.NOTIFICATION_TYPE.INFO)

View File

@@ -135,14 +135,13 @@
> >
<el-table-column min-width="120" show-overflow-tooltip prop="material_code" label="物料编码" align="center" /> <el-table-column min-width="120" show-overflow-tooltip prop="material_code" label="物料编码" align="center" />
<el-table-column min-width="120" show-overflow-tooltip prop="material_name" label="物料名称" align="center" /> <el-table-column min-width="120" show-overflow-tooltip prop="material_name" label="物料名称" align="center" />
<el-table-column prop="pcsn" label="批次号" align="center" /> <el-table-column prop="pcsn" label="子卷批次号" align="center" />
<el-table-column prop="storagevehicle_code" label="载具号" align="center" /> <el-table-column prop="storagevehicle_code" label="号" align="center" />
<el-table-column prop="bucket_num" label="桶数" :formatter="crud.formatNum0" align="center" /> <el-table-column prop="plan_qty" :formatter="crud.formatNum3" label="重量" align="center" />
<el-table-column prop="total_storage_qty" :formatter="crud.formatNum3" label="重量" align="center" />
<el-table-column prop="start_point_code" label="起始位置" align="center" /> <el-table-column prop="start_point_code" label="起始位置" align="center" />
<el-table-column prop="next_point_code" label="目的位置" align="center" /> <el-table-column prop="next_point_code" label="目的位置" align="center" />
<el-table-column prop="task_code" label="任务号" align="center" /> <el-table-column prop="task_code" label="任务号" align="center" />
<el-table-column prop="taskdtl_type" label="任务类型" align="center" width="150px" :formatter="taskdtl_typeFormat" /> <el-table-column prop="task_type" label="任务类型" align="center" width="150px" :formatter="taskdtl_typeFormat" />
<el-table-column prop="task_status" label="状态" align="center" width="110px" :formatter="task_statusFormat" /> <el-table-column prop="task_status" label="状态" align="center" width="110px" :formatter="task_statusFormat" />
</el-table> </el-table>
</el-card> </el-card>

View File

@@ -172,7 +172,7 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :selectable="checkboxT" type="selection" width="55" /> <el-table-column :selectable="checkboxT" type="selection" width="55" />
<el-table-column show-overflow-tooltip prop="bill_code" width="130" label="单编码"> <el-table-column show-overflow-tooltip prop="bill_code" width="130" label="单编码">
<template slot-scope="scope"> <template slot-scope="scope">
<el-link type="warning" @click="toView(scope.$index, scope.row)">{{ scope.row.bill_code }}</el-link> <el-link type="warning" @click="toView(scope.$index, scope.row)">{{ scope.row.bill_code }}</el-link>
</template> </template>
@@ -270,7 +270,6 @@ export default {
this.viewShow = true this.viewShow = true
}, },
[CRUD.HOOK.beforeRefresh]() { [CRUD.HOOK.beforeRefresh]() {
this.crud.query.buss_type = '0101'
this.handleCurrentChange(null) this.handleCurrentChange(null)
}, },
handleSelectionChange(val, row) { handleSelectionChange(val, row) {