rev:原材料出入库修改

This commit is contained in:
2023-05-24 09:33:14 +08:00
parent ffdcba0faf
commit b022401963
7 changed files with 154 additions and 83 deletions

View File

@@ -16,6 +16,8 @@ import org.nl.common.utils.IdUtil;
import org.nl.common.utils.SecurityUtils; import org.nl.common.utils.SecurityUtils;
import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.common.exception.BadRequestException;
import org.nl.modules.system.util.CodeUtil; import org.nl.modules.system.util.CodeUtil;
import org.nl.wms.masterdata_manage.service.material.IMdMeMaterialbaseService;
import org.nl.wms.masterdata_manage.service.material.dao.MdMeMaterialbase;
import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtBsrealstorattrService; 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.masterdata_manage.storage.service.storage.dao.StIvtBsrealstorattr;
import org.nl.wms.pcs_manage.service.purchase.IPcsIfPurchaseorderService; import org.nl.wms.pcs_manage.service.purchase.IPcsIfPurchaseorderService;
@@ -74,6 +76,9 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl<StIvtIostorinvYl
@Autowired @Autowired
private IPcsIfPurchaseorderService purchaseorderService; private IPcsIfPurchaseorderService purchaseorderService;
@Autowired
private IMdMeMaterialbaseService materialbaseService;
@Override @Override
public Object pageQuery(YlIostorInvQuery query, PageQuery pageQuery) { public Object pageQuery(YlIostorInvQuery query, PageQuery pageQuery) {
@@ -149,7 +154,38 @@ public class StIvtIostorinvOutYlServiceImpl extends ServiceImpl<StIvtIostorinvYl
throw new BadRequestException("单据不存在"); throw new BadRequestException("单据不存在");
} }
dtl_list.forEach(dtl -> {
double need_qty = dtl.getPlan_qty().doubleValue();
List<StIvtStructivtYl> list = structivtYlService.list(new QueryWrapper<StIvtStructivtYl>()
.eq("material_id", dtl.getMaterial_id())
.eq("stor_id", mst.getStor_id())
.eq("workshop_id", mst.getWorkshop_id()));
MdMeMaterialbase mater = materialbaseService.getOne(new QueryWrapper<MdMeMaterialbase>().eq("material_id", dtl.getMaterial_id()));
if (ObjectUtil.isEmpty(list)) {
throw new BadRequestException("当前仓库内不存在物料:" + mater.getMaterial_name());
}
for (StIvtStructivtYl ivt : list) {
//判断是否需要继续分配库存不大于0时跳出循环
if (need_qty > 0){
double canuse_qty = ivt.getCanuse_qty().doubleValue();
if (canuse_qty >= need_qty){
//插入分配表
//维护库存
}
}else {
break;
}
}
if (need_qty > 0){
throw new BadRequestException("物料:"+mater.getMaterial_name()+"库存不足,缺少:"+need_qty+"KG");
}
});
} }

View File

@@ -1,6 +1,7 @@
package org.nl.wms.storage_manage.rawmanage.service.iostorInv.impl; package org.nl.wms.storage_manage.rawmanage.service.iostorInv.impl;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
@@ -74,7 +75,6 @@ public class StIvtIostorinvYlServiceImpl extends ServiceImpl<StIvtIostorinvYlMap
@Autowired @Autowired
private IPcsIfPurchaseorderService purchaseorderService; private IPcsIfPurchaseorderService purchaseorderService;
@Override @Override
public Object pageQuery(YlIostorInvQuery query, PageQuery pageQuery) { public Object pageQuery(YlIostorInvQuery query, PageQuery pageQuery) {
Page<Object> page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize()); Page<Object> page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize());
@@ -156,7 +156,36 @@ public class StIvtIostorinvYlServiceImpl extends ServiceImpl<StIvtIostorinvYlMap
dis.setWork_status(IOSEnum.WORK_STATUS.code("完成")); dis.setWork_status(IOSEnum.WORK_STATUS.code("完成"));
iostorinvdisYlService.updateById(dis); iostorinvdisYlService.updateById(dis);
//修改库存和插入库存变动记录表 //修改库存
//判断该货位和物料上是否存在
StIvtStructivtYl structivtYl = structivtYlService.getOne(new QueryWrapper<StIvtStructivtYl>().eq("struct_code", dis.getSect_code()).eq("material_id", dis.getMaterial_id()));
if (ObjectUtil.isNotEmpty(structivtYl)) {
structivtYl.setCanuse_qty(NumberUtil.add(structivtYl.getCanuse_qty(), dis.getPlan_qty()));
structivtYl.setIvt_qty(structivtYl.getCanuse_qty());
structivtYlService.updateById(structivtYl);
} else {
structivtYlService.save(StIvtStructivtYl.builder()
.stockrecord_id(IdUtil.getStringId())
.struct_id(dis.getStruct_id())
.struct_code(dis.getStruct_code())
.struct_name(dis.getStruct_name())
.material_id(dis.getMaterial_id())
.quality_scode(dis.getQuality_scode())
.pcsn(dis.getPcsn())
.ivt_level(dis.getIvt_level())
.is_active(dis.getIs_active())
.canuse_qty(dis.getReal_qty())
.ivt_qty(dis.getReal_qty())
.qty_unit_id(dis.getQty_unit_id())
.instorage_time(DateUtil.now())
.stor_id(mst.getStor_id())
.workshop_id(mst.getWorkshop_id())
.build()
);
}
/*//插入库存变动记录表
structivtflowService.recordStructivtFlow( structivtflowService.recordStructivtFlow(
StIvtStructivtflowDto.builder() StIvtStructivtflowDto.builder()
.bill_code(mst.getBill_code()).change_type_scode(CHANGE_BILL_TYPE_ENUM.IOSTORINV_IN_CONFIRM).bill_table("st_ivt_iostorinv_bcp") .bill_code(mst.getBill_code()).change_type_scode(CHANGE_BILL_TYPE_ENUM.IOSTORINV_IN_CONFIRM).bill_table("st_ivt_iostorinv_bcp")
@@ -165,7 +194,7 @@ public class StIvtIostorinvYlServiceImpl extends ServiceImpl<StIvtIostorinvYlMap
.task_id(dis.getTask_id()) .task_id(dis.getTask_id())
.storagevehicle_code(dis.getStoragevehicle_code()) .storagevehicle_code(dis.getStoragevehicle_code())
.build() .build()
); );*/
}); });
//修改明细状态 //修改明细状态

View File

@@ -1,9 +1,14 @@
package org.nl.wms.storage_manage.rawmanage.service.structIvt.dao; package org.nl.wms.storage_manage.rawmanage.service.structIvt.dao;
import java.math.BigDecimal; import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date; import java.util.Date;
import java.io.Serializable; import java.io.Serializable;
import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -18,6 +23,7 @@ import lombok.EqualsAndHashCode;
@Data @Data
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@TableName("st_ivt_structivt_yl") @TableName("st_ivt_structivt_yl")
@Builder
public class StIvtStructivtYl implements Serializable { public class StIvtStructivtYl implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@@ -25,6 +31,7 @@ public class StIvtStructivtYl implements Serializable {
/** /**
* 库存记录标识 * 库存记录标识
*/ */
@TableId(value = "stockrecord_id")
private String stockrecord_id; private String stockrecord_id;
/** /**
@@ -95,7 +102,7 @@ public class StIvtStructivtYl implements Serializable {
/** /**
* 入库时间 * 入库时间
*/ */
private Date instorage_time; private String instorage_time;
/** /**
* 仓库标识 * 仓库标识
@@ -105,7 +112,7 @@ public class StIvtStructivtYl implements Serializable {
/** /**
* 车间标识 * 车间标识
*/ */
private String product_area; private String workshop_id;
} }

View File

@@ -91,7 +91,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<rrOperation /> <rrOperation/>
</el-row> </el-row>
</el-form> </el-form>
</div> </div>
@@ -132,19 +132,19 @@
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="仓位编码" prop="struct_code"> <el-form-item label="仓位编码" prop="struct_code">
<el-input v-model="form.struct_code" style="width: 200px;" /> <el-input v-model="form.struct_code" style="width: 200px;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="仓位名称" prop="struct_name"> <el-form-item label="仓位名称" prop="struct_name">
<el-input v-model="form.struct_name" style="width: 200px;" /> <el-input v-model="form.struct_name" style="width: 200px;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="仓位简称"> <el-form-item label="仓位简称">
<el-input v-model="form.simple_name" style="width: 200px;" /> <el-input v-model="form.simple_name" style="width: 200px;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@@ -163,7 +163,7 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="载具号"> <el-form-item label="载具号">
<label slot="label">载&nbsp;&nbsp;具&nbsp;号:</label> <label slot="label">载&nbsp;&nbsp;具&nbsp;号:</label>
<el-input v-model="form.storagevehicle_code" style="width: 200px;" /> <el-input v-model="form.storagevehicle_code" style="width: 200px;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@@ -189,12 +189,12 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="容量" prop="capacity"> <el-form-item label="容量" prop="capacity">
<label slot="label">容&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;量:</label> <label slot="label">容&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;量:</label>
<el-input v-model="form.capacity" style="width: 200px;" /> <el-input v-model="form.capacity" style="width: 200px;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="承受重量" prop="weight"> <el-form-item label="承受重量" prop="weight">
<el-input v-model="form.weight" style="width: 200px;" /> <el-input v-model="form.weight" style="width: 200px;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@@ -202,13 +202,13 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="宽度" prop="width"> <el-form-item label="宽度" prop="width">
<label slot="label">宽&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;度:</label> <label slot="label">宽&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;度:</label>
<el-input v-model="form.width" style="width: 200px;" /> <el-input v-model="form.width" style="width: 200px;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="深度" prop="zdepth"> <el-form-item label="深度" prop="zdepth">
<label slot="label">深&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;度:</label> <label slot="label">深&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;度:</label>
<el-input v-model="form.zdepth" style="width: 200px;" /> <el-input v-model="form.zdepth" style="width: 200px;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@@ -216,7 +216,7 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="高度" prop="height"> <el-form-item label="高度" prop="height">
<label slot="label">高&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;度:</label> <label slot="label">高&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;度:</label>
<el-input v-model="form.height" style="width: 200px;" /> <el-input v-model="form.height" style="width: 200px;"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@@ -248,7 +248,7 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="备注"> <el-form-item label="备注">
<label slot="label">备&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;注:</label> <label slot="label">备&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;注:</label>
<el-input v-model="form.remark" style="width: 550px;" rows="2" type="textarea" /> <el-input v-model="form.remark" style="width: 550px;" rows="2" type="textarea"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@@ -270,29 +270,29 @@
@select="handleSelectionChange" @select="handleSelectionChange"
@select-all="onSelectAll" @select-all="onSelectAll"
> >
<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_code" label="工单编号" width="140px" /> <el-table-column prop="workorder_code" label="工单编号" width="140px"/>
<el-table-column prop="shift_type_scode" label="班次类型"> <el-table-column prop="shift_type_scode" label="班次类型">
<template slot-scope="scope"> <template slot-scope="scope">
{{ dict.label.PDM_BI_SHIFTTYPE[scope.row.shift_type_scode] }} {{ dict.label.PDM_BI_SHIFTTYPE[scope.row.shift_type_scode] }}
</template> </template>
</el-table-column> </el-table-column>
<!-- <el-table-column prop="workprocedure_code" label="工序编码" />--> <!-- <el-table-column prop="workprocedure_code" label="工序编码" />-->
<el-table-column prop="product_area" label="生产车间" /> <el-table-column prop="product_area" label="生产车间"/>
<el-table-column prop="plan_qty" label="计划数量" /> <el-table-column prop="plan_qty" label="计划数量"/>
<el-table-column prop="real_qty" label="实际数量" /> <el-table-column prop="real_qty" label="实际数量"/>
<el-table-column prop="person_name" label="生产人员" /> <el-table-column prop="person_name" label="生产人员"/>
<el-table-column prop="person_real_qty" label="人员实际数量" width="100" show-overflow-tooltip /> <el-table-column prop="person_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="dq_real_qty" label="电气实际数量" width="100" show-overflow-tooltip/>
<el-table-column prop="material_name" label="物料名称" width="120" show-overflow-tooltip /> <el-table-column prop="material_name" label="物料名称" width="120" show-overflow-tooltip/>
<el-table-column prop="workprocedure_name" label="工序名称" width="120" show-overflow-tooltip /> <el-table-column prop="workprocedure_name" label="工序名称" width="120" show-overflow-tooltip/>
<el-table-column prop="material_weight" label="物料单重" width="100" :formatter="crud.formatQlNum4" /> <el-table-column prop="material_weight" label="物料单重" width="100" :formatter="crud.formatQlNum4"/>
<el-table-column prop="planproducestart_date" label="计划开始时间" width="100" show-overflow-tooltip /> <el-table-column prop="planproducestart_date" label="计划开始时间" width="100" show-overflow-tooltip/>
<el-table-column prop="planproduceend_date" label="计划结束时间" width="100" show-overflow-tooltip /> <el-table-column prop="planproduceend_date" label="计划结束时间" width="100" show-overflow-tooltip/>
<el-table-column prop="realproducestart_date" label="实际开始时间" width="100" show-overflow-tooltip /> <el-table-column prop="realproducestart_date" label="实际开始时间" width="100" show-overflow-tooltip/>
<el-table-column prop="realproduceend_date" label="实际结束时间" width="100" show-overflow-tooltip /> <el-table-column prop="realproduceend_date" label="实际结束时间" width="100" show-overflow-tooltip/>
<el-table-column prop="device_code" label="当前设备编码" width="100" show-overflow-tooltip /> <el-table-column prop="device_code" label="当前设备编码" width="100" show-overflow-tooltip/>
<el-table-column prop="is_canupdate_update" label="操作工是否允许修改报工数量" width="200" show-overflow-tooltip> <el-table-column prop="is_canupdate_update" label="操作工是否允许修改报工数量" width="200" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">
{{ dict.label.IS_OR_NOT[scope.row.is_canupdate_update] }} {{ dict.label.IS_OR_NOT[scope.row.is_canupdate_update] }}
@@ -318,29 +318,29 @@
{{ dict.label.IS_OR_NOT[scope.row.is_error] }} {{ dict.label.IS_OR_NOT[scope.row.is_error] }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="error_info" label="异常信息" show-overflow-tooltip /> <el-table-column prop="error_info" label="异常信息" show-overflow-tooltip/>
<el-table-column prop="remark" label="备注" /> <el-table-column prop="remark" label="备注"/>
<el-table-column prop="create_name" label="创建人" show-overflow-tooltip /> <el-table-column prop="create_name" label="创建人" show-overflow-tooltip/>
<el-table-column prop="create_time" label="创建时间" show-overflow-tooltip /> <el-table-column prop="create_time" label="创建时间" show-overflow-tooltip/>
<el-table-column prop="update_name" label="修改人" show-overflow-tooltip /> <el-table-column prop="update_name" label="修改人" show-overflow-tooltip/>
<el-table-column prop="update_time" label="修改时间" show-overflow-tooltip /> <el-table-column prop="update_time" label="修改时间" show-overflow-tooltip/>
</el-table> </el-table>
<!--分页组件--> <!--分页组件-->
<pagination /> <pagination/>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import crudStructattr from '@/api/wms/basedata/st/structattr' import crudStructattr from '@/api/wms/basedata/st/structattr'
import CRUD, { crud, form, header, presenter } from '@crud/crud' import CRUD, {crud, form, header, presenter} from '@crud/crud'
import rrOperation from '@crud/RR.operation' import rrOperation from '@crud/RR.operation'
import crudOperation from '@crud/CRUD.operation' import crudOperation from '@crud/CRUD.operation'
import udOperation from '@crud/UD.operation' import udOperation from '@crud/UD.operation'
import pagination from '@crud/Pagination' import pagination from '@crud/Pagination'
import crudSectattr from '@/api/wms/basedata/st/sectattr' import crudSectattr from '@/api/wms/basedata/st/sectattr'
import crudProduceshiftorder from '@/views/wms/product_manage/workorder/produceshiftorder' import crudProduceshiftorder from '@/views/wms/product_manage/workorder/produceshiftorder'
import { getLodop } from '@/assets/js/lodop/LodopFuncs' import {getLodop} from '@/assets/js/lodop/LodopFuncs'
import orderExt from '@/views/wms/product_manage/workorder/orderExt' import orderExt from '@/views/wms/product_manage/workorder/orderExt'
const defaultForm = { const defaultForm = {
@@ -391,7 +391,7 @@ const defaultForm = {
export default { export default {
name: 'Structattr', name: 'Structattr',
dicts: ['ST_HEIGHT_TYPE', 'd_lock_type', 'SCH_TASK_TYPE_DTL', 'IS_OR_NOT', 'MPS_BD_ORDERSTATUS', 'WORKORDER_CREATE_TYPE', 'PDM_BI_SHIFTTYPE'], dicts: ['ST_HEIGHT_TYPE', 'd_lock_type', 'SCH_TASK_TYPE_DTL', 'IS_OR_NOT', 'MPS_BD_ORDERSTATUS', 'WORKORDER_CREATE_TYPE', 'PDM_BI_SHIFTTYPE'],
components: { pagination, crudOperation, rrOperation, udOperation }, components: {pagination, crudOperation, rrOperation, udOperation},
mixins: [presenter(), header(), form(defaultForm), crud()], mixins: [presenter(), header(), form(defaultForm), crud()],
cruds() { cruds() {
return CRUD({ return CRUD({
@@ -407,7 +407,7 @@ export default {
}, },
url: 'api/produceWorkorder', url: 'api/produceWorkorder',
idField: 'struct_id', idField: 'struct_id',
crudMethod: { ...crudStructattr } crudMethod: {...crudStructattr}
}) })
}, },
data() { data() {
@@ -433,42 +433,42 @@ export default {
permission: {}, permission: {},
rules: { rules: {
struct_id: [ struct_id: [
{ required: true, message: '仓位标识不能为空', trigger: 'blur' } {required: true, message: '仓位标识不能为空', trigger: 'blur'}
], ],
struct_code: [ struct_code: [
{ required: true, message: '仓位编码不能为空', trigger: 'blur' } {required: true, message: '仓位编码不能为空', trigger: 'blur'}
], ],
struct_name: [ struct_name: [
{ required: true, message: '仓位名称不能为空', trigger: 'blur' } {required: true, message: '仓位名称不能为空', trigger: 'blur'}
], ],
sect_id: [ sect_id: [
{ required: true, message: '库区标识不能为空', trigger: 'blur' } {required: true, message: '库区标识不能为空', trigger: 'blur'}
], ],
stor_id: [ stor_id: [
{ required: true, message: '仓库标识不能为空', trigger: 'blur' } {required: true, message: '仓库标识不能为空', trigger: 'blur'}
], ],
capacity: [ capacity: [
{ required: false, message: '不能为空', trigger: 'blur' }, {required: false, message: '不能为空', trigger: 'blur'},
{ validator: numberOne } {validator: numberOne}
], ],
weight: [ weight: [
{ required: false, message: '不能为空', trigger: 'blur' }, {required: false, message: '不能为空', trigger: 'blur'},
{ validator: numberOne } {validator: numberOne}
], ],
width: [ width: [
{ required: false, message: '不能为空', trigger: 'blur' }, {required: false, message: '不能为空', trigger: 'blur'},
{ validator: numberOne } {validator: numberOne}
], ],
height: [ height: [
{ required: false, message: '不能为空', trigger: 'blur' }, {required: false, message: '不能为空', trigger: 'blur'},
{ validator: numberOne } {validator: numberOne}
], ],
zdepth: [ zdepth: [
{ required: false, message: '不能为空', trigger: 'blur' }, {required: false, message: '不能为空', trigger: 'blur'},
{ validator: numberOne } {validator: numberOne}
], ],
material_height_type: [ material_height_type: [
{ required: true, message: '物料高度类型不能为空', trigger: 'blur' } {required: true, message: '物料高度类型不能为空', trigger: 'blur'}
] ]
} }
} }
@@ -568,24 +568,23 @@ export default {
} }
orderExt.getExtList(this.currentRow).then(res => { orderExt.getExtList(this.currentRow).then(res => {
debugger debugger
const item = res[0] res.forEach((item) => {
// res.forEach((item) => { const LODOP = getLodop()
const LODOP = getLodop() LODOP.SET_SHOW_MODE('HIDE_DISBUTTIN_SETUP', 1)// 隐藏那些无效按钮
LODOP.SET_SHOW_MODE('HIDE_DISBUTTIN_SETUP', 1)// 隐藏那些无效按钮 // 打印纸张大小设置https://www.it610.com/article/2094844.html
// 打印纸张大小设置https://www.it610.com/article/2094844.html LODOP.SET_PRINT_PAGESIZE(1, '80mm', '50mm', '')
LODOP.SET_PRINT_PAGESIZE(1, '80mm', '50mm', '') // LODOP.ADD_PRINT_RECT('0mm', '0mm', '48mm', '28mm', 0, 1)
// LODOP.ADD_PRINT_RECT('0mm', '0mm', '48mm', '28mm', 0, 1) LODOP.ADD_PRINT_BARCODE('10mm', '12mm', '60mm', '25mm', '128Auto', item.bar_code)
LODOP.ADD_PRINT_BARCODE('10mm', '12mm', '60mm', '25mm', '128Auto', item.bar_code) LODOP.SET_PRINT_STYLEA(0, 'ShowBarText', 0)
LODOP.SET_PRINT_STYLEA(0, 'ShowBarText', 0) LODOP.ADD_PRINT_TEXT('35mm', '22mm', '40mm', '20mm', item.bar_code.substring(0, 9))
LODOP.ADD_PRINT_TEXT('35mm', '22mm', '40mm', '20mm', item.bar_code.substring(0, 9)) LODOP.SET_PRINT_STYLEA(0, 'FontSize', 20)
LODOP.SET_PRINT_STYLEA(0, 'FontSize', 20) LODOP.ADD_PRINT_TEXT('42mm', '25mm', '40mm', '20mm', item.bar_code.substring(9, 16))
LODOP.ADD_PRINT_TEXT('42mm', '25mm', '40mm', '20mm', item.bar_code.substring(9, 16)) console.log(item.barcode)
console.log(item.barcode) LODOP.SET_PRINT_STYLEA(0, 'FontSize', 20)
LODOP.SET_PRINT_STYLEA(0, 'FontSize', 20) LODOP.PRINT()// 打印
// LODOP.PRINT()// 打印 // LODOP.PREVIEW()
// LODOP.PREVIEW() })
}) })
// })
this.crud.notify('打印成功', CRUD.NOTIFICATION_TYPE.SUCCESS) this.crud.notify('打印成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
this.crud.toQuery() this.crud.toQuery()
}, },

View File

@@ -216,7 +216,7 @@ import AddDialog from '@/views/wms/storage_manage/rawproduct/rawProductIn/AddDia
import DivDialog from '@/views/wms/storage_manage/rawproduct/rawProductIn/DivDialog' import DivDialog from '@/views/wms/storage_manage/rawproduct/rawProductIn/DivDialog'
import ViewDialog from '@/views/wms/storage_manage/rawproduct/rawProductIn/ViewDialog' import ViewDialog from '@/views/wms/storage_manage/rawproduct/rawProductIn/ViewDialog'
import {mapGetters} from 'vuex' import {mapGetters} from 'vuex'
import crudStorattr from "@/api/wms/basedata/st/storattr"; import crudStorattr from "@/views/wms/storage_manage/basedata/basedata";
export default { export default {
name: 'RawProductIn', name: 'RawProductIn',
@@ -262,7 +262,7 @@ export default {
} }
}, },
created() { created() {
crudStorattr.queryStor({"stor_type": "3"}).then(res => { crudStorattr.getStor({"stor_type": "3"}).then(res => {
this.storlist = res.content this.storlist = res.content
}) })
}, },

View File

@@ -223,10 +223,10 @@
import CRUD, {crud, form} from '@crud/crud' import CRUD, {crud, form} from '@crud/crud'
import MaterDtl from '@/views/wms/pub/MaterDialog' import MaterDtl from '@/views/wms/pub/MaterDialog'
import BillDtl from '@/views/wms/storage_manage/rawproduct/rawProductIn/AddDtl' import BillDtl from '@/views/wms/storage_manage/rawproduct/rawProductIn/AddDtl'
import crudStorattr from "@/api/wms/basedata/st/storattr";
import crudProductOut from '@/views/wms/storage_manage/rawproduct/rawProductOut/rawproductout' import crudProductOut from '@/views/wms/storage_manage/rawproduct/rawProductOut/rawproductout'
import crudStructattr from "@/api/wms/basedata/st/structattr"; import crudStructattr from "@/api/wms/basedata/st/structattr";
import StructIvt from "@/views/wms/storage_manage/rawproduct/rawProductOut/StructIvt"; import StructIvt from "@/views/wms/storage_manage/rawproduct/rawProductOut/StructIvt";
import crudStorattr from "@/views/wms/storage_manage/basedata/basedata";
const defaultForm = { const defaultForm = {
bill_code: '', bill_code: '',
@@ -293,7 +293,7 @@ export default {
}, },
methods: { methods: {
open() { open() {
crudStorattr.queryStor({"stor_type": "3"}).then(res => { crudStorattr.getStor({"stor_type": "3"}).then(res => {
this.storlist = res.content this.storlist = res.content
}) })
}, },

View File

@@ -216,7 +216,7 @@ import AddDialog from '@/views/wms/storage_manage/rawproduct/rawProductOut/AddDi
import DivDialog from '@/views/wms/storage_manage/rawproduct/rawProductOut/DivDialog' import DivDialog from '@/views/wms/storage_manage/rawproduct/rawProductOut/DivDialog'
import ViewDialog from '@/views/wms/storage_manage/rawproduct/rawProductOut/ViewDialog' import ViewDialog from '@/views/wms/storage_manage/rawproduct/rawProductOut/ViewDialog'
import {mapGetters} from 'vuex' import {mapGetters} from 'vuex'
import crudStorattr from "@/api/wms/basedata/st/storattr"; import crudStorattr from "@/views/wms/storage_manage/basedata/basedata";
export default { export default {
name: 'RawProductOut', name: 'RawProductOut',
@@ -262,7 +262,7 @@ export default {
} }
}, },
created() { created() {
crudStorattr.queryStor({"stor_type": "3"}).then(res => { crudStorattr.getStor({"stor_type": "3"}).then(res => {
this.storlist = res.content this.storlist = res.content
}) })
}, },