add:手持海柔出入库顺序表
This commit is contained in:
@@ -31,7 +31,7 @@ import java.util.Map;
|
||||
* @author ZZQ
|
||||
* @Date 2024/1/22 09:06
|
||||
*/
|
||||
@Component
|
||||
//@Component
|
||||
public class RemoteLogServer implements SmartLifecycle {
|
||||
|
||||
@Autowired
|
||||
|
||||
@@ -39,14 +39,13 @@ public class DruidFilter extends FilterEventAdapter {
|
||||
|
||||
@Override
|
||||
protected void statementExecuteAfter(StatementProxy statement, String sql, boolean result) {
|
||||
String traceId = MDC.get("traceId");
|
||||
int size = statement.getParametersSize();
|
||||
String executeSql = sql;
|
||||
int count = 0;
|
||||
try {
|
||||
count=statement.getUpdateCount();
|
||||
}catch (Exception ex){ }
|
||||
if (StringUtils.isNotBlank(traceId) && count>0) {
|
||||
if ( count>0) {
|
||||
if (size > 0) {
|
||||
Collection<JdbcParameter> values = statement.getParameters().values();
|
||||
List<Object> params = new ArrayList<>();
|
||||
@@ -63,8 +62,7 @@ public class DruidFilter extends FilterEventAdapter {
|
||||
public ResultSetProxy statement_getResultSet(FilterChain chain, StatementProxy statement) throws SQLException {
|
||||
ResultSetProxy rs = super.statement_getResultSet(chain, statement);
|
||||
String executeSql = statement.getLastExecuteSql();
|
||||
String traceId = MDC.get("traceId");
|
||||
if (StringUtils.isNotBlank(traceId)){
|
||||
if (true){
|
||||
int result = 0;
|
||||
if (rs != null) {
|
||||
ResultSetImpl rss = rs.getResultSetRaw().unwrap(ResultSetImpl.class);
|
||||
|
||||
@@ -406,7 +406,7 @@ public class AcsToWmsServiceImpl implements AcsToWmsService{
|
||||
// 调用入库分配规则
|
||||
StIvtSectattr sect = sectattrService.getOne(
|
||||
new QueryWrapper<StIvtSectattr>().lambda()
|
||||
.eq(StIvtSectattr::getSect_name, "海柔半成品库区")
|
||||
.eq(StIvtSectattr::getSect_name, "三线半成品库区")
|
||||
);
|
||||
JSONObject jo = new JSONObject();
|
||||
jo.put("sect_id", sect.getSect_id());
|
||||
|
||||
@@ -15,6 +15,7 @@ public class PdaQuery extends BaseQuery<StIvtShutframeinvBcp> {
|
||||
|
||||
|
||||
private String material_code;
|
||||
private String product_area;
|
||||
|
||||
@Override
|
||||
public void paramMapping() {
|
||||
|
||||
@@ -80,7 +80,7 @@ public class PdaStHrBcpEmpOutServiceImpl implements PdaStHrBcpEmpOutService {
|
||||
|
||||
StIvtSectattr sect = sectattrService.getOne(
|
||||
new QueryWrapper<StIvtSectattr>().lambda()
|
||||
.eq(StIvtSectattr::getSect_name, "海柔半成品库区")
|
||||
.eq(StIvtSectattr::getSect_name, "三线半成品库区")
|
||||
);
|
||||
|
||||
List<StIvtStructattr> list = new ArrayList<>();
|
||||
|
||||
@@ -65,10 +65,12 @@ public class PdaStHrBcpInServiceImpl implements PdaStHrBcpInService {
|
||||
List<MdMeMaterialbase> list1 = iMdMeMaterialbaseService.list(
|
||||
new QueryWrapper<MdMeMaterialbase>().lambda()
|
||||
.eq(MdMeMaterialbase::getMaterial_type_id, "1528555445302726656")
|
||||
.eq(MdMeMaterialbase::getProduct_area, "A3")
|
||||
);
|
||||
list = list1.subList(0, Math.min(list1.size(), size));
|
||||
totalCount = list1.size();
|
||||
} else {
|
||||
whereJson.setProduct_area("A3");
|
||||
List list1 = iMdMeMaterialbaseService.getPdaBcpGetMaterial(whereJson, pageQuery);
|
||||
list = list1.subList(0, Math.min(list1.size(), size));
|
||||
totalCount = list1.size();
|
||||
|
||||
@@ -60,7 +60,7 @@ public class IosHrTask extends AbstractAcsTask {
|
||||
// 2.判断device_code2、barcode2 是否为空
|
||||
if (ObjectUtil.isNotEmpty(json.getString("device_code2")) && ObjectUtil.isNotEmpty(json.getString("barcode2"))) {
|
||||
|
||||
param.put("device_code", json.getString("device_code2"));
|
||||
param.put("device_code", json.getString("device_code1"));
|
||||
param.put("barcode", json.getString("barcode2"));
|
||||
iStIvtIostorinvHrBcpInService.fullIn(param);
|
||||
}
|
||||
@@ -78,7 +78,7 @@ public class IosHrTask extends AbstractAcsTask {
|
||||
|
||||
// 2.判断device_code2、barcode2 是否为空
|
||||
if (ObjectUtil.isNotEmpty(json.getString("device_code2")) && ObjectUtil.isNotEmpty(json.getString("barcode2"))) {
|
||||
param.put("device_code", json.getString("device_code2"));
|
||||
param.put("device_code", json.getString("device_code1"));
|
||||
param.put("barcode", json.getString("barcode2"));
|
||||
iStIvtIostorinvEmpBcpService.InEmp(param);
|
||||
}
|
||||
@@ -97,7 +97,7 @@ public class IosHrTask extends AbstractAcsTask {
|
||||
|
||||
// 2.判断device_code2、barcode2 是否为空
|
||||
if (ObjectUtil.isNotEmpty(json.getString("device_code2"))) {
|
||||
param.put("device_code", json.getString("device_code2"));
|
||||
param.put("device_code", json.getString("device_code1"));
|
||||
iStIvtIostorinvEmpBcpService.OutEmp(param);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -228,5 +228,7 @@ public class StIvtIostorinvHrBcp implements Serializable {
|
||||
*/
|
||||
private String point_code;
|
||||
|
||||
private String workprocedure_id;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -76,7 +76,7 @@ public class StIvtIostorinvEmpBcpServiceImpl implements IStIvtIostorinvEmpBcpSe
|
||||
// 1.找一个空货位
|
||||
StIvtSectattr sect = sectattrService.getOne(
|
||||
new QueryWrapper<StIvtSectattr>().lambda()
|
||||
.eq(StIvtSectattr::getSect_name, "海柔半成品库区")
|
||||
.eq(StIvtSectattr::getSect_name, "三线半成品库区")
|
||||
);
|
||||
|
||||
JSONObject jo = new JSONObject();
|
||||
@@ -173,7 +173,7 @@ public class StIvtIostorinvEmpBcpServiceImpl implements IStIvtIostorinvEmpBcpSe
|
||||
// 1.找一个空载具的货位
|
||||
StIvtSectattr sect = sectattrService.getOne(
|
||||
new QueryWrapper<StIvtSectattr>().lambda()
|
||||
.eq(StIvtSectattr::getSect_name, "海柔半成品库区")
|
||||
.eq(StIvtSectattr::getSect_name, "三线半成品库区")
|
||||
);
|
||||
|
||||
JSONObject jo = new JSONObject();
|
||||
|
||||
@@ -174,6 +174,7 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl<StIvtIostorinv
|
||||
mst.setBase_bill_code(row.getString("base_bill_code"));
|
||||
mst.setQty_unit_name(row.getString("base_unit_name"));
|
||||
mst.setUnit_weight(row.getBigDecimal("unit_weight"));
|
||||
mst.setWorkprocedure_id(row.getString("workprocedure_id"));
|
||||
// 载具信息
|
||||
{
|
||||
MdPbStoragevehicleinfo vehicleDao = iMdPbStoragevehicleinfoService.getOne(
|
||||
|
||||
@@ -468,6 +468,8 @@ public class StIvtIostorinvHrBcpOutServiceImpl extends ServiceImpl<StIvtIostorin
|
||||
.task_group_id(IdUtil.getStringId())
|
||||
.point_code3(mst.getPoint_code())
|
||||
.point_code1(mst.getStruct_code())
|
||||
.extParam(MapOf.of("material_id",mst.getMaterial_id(),
|
||||
"material_qty",mst.getPlan_qty(),"table_fk_id",mst.getIostorinv_id()))
|
||||
.vehicle_code(mst.getStoragevehicle_code())
|
||||
.product_area(mst.getWorkshop_id())
|
||||
.callback((Consumer<String>) mst::setTask_id)
|
||||
|
||||
@@ -81,7 +81,7 @@ public class StIvtMoveinvHrBcpServiceImpl extends ServiceImpl<StIvtMoveinvHrBcpM
|
||||
|
||||
// 新增
|
||||
mst.setMoveinv_id(IdUtil.getStringId());
|
||||
mst.setBill_code(CodeUtil.getNewCode("BCP_MOVE_CODE"));
|
||||
mst.setBill_code(CodeUtil.getNewCode("MOVE_CODE"));
|
||||
mst.setBuss_type(form.getString("buss_type"));
|
||||
mst.setBill_type(form.getString("buss_type"));
|
||||
mst.setStor_id(form.getString("stor_id"));
|
||||
|
||||
@@ -76,7 +76,7 @@ public class StIvtMoveinvdtlHrBcpServiceImpl extends ServiceImpl<StIvtMoveinvdtl
|
||||
StIvtMoveinvdtlHrBcp moveinvdtlCp = list.get(0);
|
||||
PointEvent event = PointEvent.builder()
|
||||
.type(AcsTaskEnum.TASK_STRUCT_BCP_HR_MOVE)
|
||||
.acs_task_type(AcsTaskEnum.ACS_TASK_TYPE_NON_WEIGHING_TASK_OF_PS20.getCode())
|
||||
.acs_task_type("19")
|
||||
.task_group_id(IdUtil.getStringId())
|
||||
.point_code1(form.getString("turnout_struct_code"))
|
||||
.point_code3(form.getString("turnin_struct_code"))
|
||||
|
||||
@@ -101,5 +101,9 @@ public class StIvtStructivtHrBcp implements Serializable {
|
||||
*/
|
||||
private BigDecimal unit_weight;
|
||||
|
||||
/**
|
||||
* 工序标识
|
||||
*/
|
||||
private String workprocedure_id;
|
||||
|
||||
}
|
||||
|
||||
@@ -50,6 +50,9 @@
|
||||
<if test="query.sect_id != null and query.sect_id != ''">
|
||||
and sa.sect_id = #{query.sect_id}
|
||||
</if>
|
||||
<if test="query.sect_code != null and query.sect_code != ''">
|
||||
and sa.sect_code = #{query.sect_code}
|
||||
</if>
|
||||
<if test="query.struct_search != null and query.struct_search != ''">
|
||||
and (sa.struct_code = #{query.struct_search} OR sa.struct_name = #{query.struct_search})
|
||||
</if>
|
||||
|
||||
@@ -16,6 +16,8 @@ public class StructIvtHrBcpQuery extends BaseQuery<StIvtStructivtBcp> {
|
||||
|
||||
private String sect_id;
|
||||
|
||||
private String sect_code;
|
||||
|
||||
private String struct_search;
|
||||
|
||||
private String material_search;
|
||||
|
||||
@@ -51,6 +51,7 @@ public class StIvtStructivtHrBcpServiceImpl extends ServiceImpl<StIvtStructivtHr
|
||||
@Override
|
||||
public Object getBcpIvt(StructIvtHrBcpQuery query, PageQuery pageQuery) {
|
||||
com.github.pagehelper.Page<Object> page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize());
|
||||
query.setSect_code("HKQ001");
|
||||
List<Map> mst_detail = this.baseMapper.getBcpIvt(query, pageQuery);
|
||||
TableDataInfo<Map> build = TableDataInfo.build(mst_detail);
|
||||
build.setTotalElements(page.getTotal());
|
||||
|
||||
@@ -112,11 +112,35 @@
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="CONSOLE"/>
|
||||
</root>
|
||||
<logger name="jdbc" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.springframework" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.hibernate" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.quartz" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="com.google" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.redisson" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.nl.modules.wql" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.springframework.data" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
</springProfile>
|
||||
<springProfile name="prod">
|
||||
<root level="info">
|
||||
<appender-ref ref="CONSOLE"/>
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="CONSOLE"/>
|
||||
</root>
|
||||
<logger name="jdbc" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
|
||||
@@ -151,6 +151,19 @@
|
||||
|
||||
<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="workprocedure_id" label="所属工序">
|
||||
<template slot-scope="scope">
|
||||
<el-select v-model="form.tableData[scope.$index].workprocedure_id"
|
||||
class="filter-item" placeholder="所属工序" size="small" style="width: 280px">
|
||||
<el-option
|
||||
v-for="item in workprocedureList"
|
||||
:key="item.workprocedure_id"
|
||||
:label="item.workprocedure_name"
|
||||
:value="item.workprocedure_id"
|
||||
/>
|
||||
</el-select>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column show-overflow-tooltip prop="material_spec" label="物料规格"/>
|
||||
<el-table-column show-overflow-tooltip prop="plan_qty" label="数量(个)">
|
||||
<template slot-scope="scope">
|
||||
@@ -217,6 +230,7 @@ import crudsemiproductIn from '@/views/wms/storage_manage/semiproducthr/semiprod
|
||||
import MaterDtl from '@/views/wms/pub/MaterDialog'
|
||||
import crudStorattr from '@/views/wms/storage_manage/basedata/basedata'
|
||||
import crudPoint from '@/views/wms/scheduler_manage/point/point'
|
||||
import crudWorkProcedure from '@/api/wms/basedata/pdm/workProcedure'
|
||||
|
||||
const defaultForm = {
|
||||
bill_code: '',
|
||||
@@ -257,6 +271,7 @@ export default {
|
||||
materType: '01',
|
||||
storlist: [],
|
||||
pointList: [],
|
||||
workprocedureList: [],
|
||||
billtypelist: [],
|
||||
rules: {
|
||||
product_code: [
|
||||
@@ -283,6 +298,9 @@ export default {
|
||||
crudStorattr.getStor({'stor_type': '5'}).then(res => {
|
||||
this.storlist = res.content
|
||||
})
|
||||
crudWorkProcedure.downSelect({ product_area: 'A3' }).then(res => {
|
||||
this.workprocedureList = res
|
||||
})
|
||||
const area_type = 'A3_BCPRK01'
|
||||
crudPoint.getPoint({ 'area_type': area_type }).then(res => {
|
||||
this.pointList = res
|
||||
|
||||
@@ -105,6 +105,11 @@
|
||||
<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_spec" label="物料规格" align="center" />
|
||||
<el-table-column min-width="120" show-overflow-tooltip prop="workprocedure_id" label="所属工序">
|
||||
<template slot-scope="scope">
|
||||
{{ getprocedurename(scope.row) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="pcsn" label="批次" width="150" align="center" />
|
||||
<el-table-column prop="plan_qty" :formatter="crud.formatNum3" label="数量(个)" align="center" />
|
||||
<el-table-column prop="qty_unit_name" label="单位" align="center" />
|
||||
@@ -124,6 +129,8 @@
|
||||
|
||||
import { crud } from '@crud/crud'
|
||||
import crudsemiproductIn from '@/views/wms/storage_manage/semiproducthr/semiproducthrIn/semiproducthrIn'
|
||||
import crudWorkProcedure from '@/api/wms/basedata/pdm/workProcedure'
|
||||
|
||||
|
||||
export default {
|
||||
name: 'ViewDialog',
|
||||
@@ -145,6 +152,7 @@ export default {
|
||||
tableDtl: [],
|
||||
tabledis: [],
|
||||
billtypelist: [],
|
||||
workprocedureList: {},
|
||||
storlist: [],
|
||||
currentdtl: null,
|
||||
currentDis: {},
|
||||
@@ -164,7 +172,17 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getprocedurename(row) {
|
||||
return this.workprocedureList.get(row.workprocedure_id)
|
||||
},
|
||||
open() {
|
||||
crudWorkProcedure.downSelect({ product_area: 'A3' }).then(res => {
|
||||
var procedures = new Map();
|
||||
res.forEach(item => {
|
||||
procedures.set(item.workprocedure_id,item.workprocedure_name)
|
||||
})
|
||||
this.workprocedureList = procedures
|
||||
})
|
||||
this.queryTableDtl()
|
||||
},
|
||||
close() {
|
||||
|
||||
@@ -91,9 +91,14 @@
|
||||
<el-table-column show-overflow-tooltip min-width="120" prop="material_code" label="物料编码" />
|
||||
<el-table-column show-overflow-tooltip min-width="120" prop="material_name" label="物料名称" />
|
||||
<el-table-column show-overflow-tooltip min-width="120" prop="material_spec" label="物料规格" />
|
||||
<el-table-column show-overflow-tooltip min-width="120" prop="workprocedure_id" label="所属工序" >
|
||||
<template slot-scope="scope">
|
||||
{{ getprocedurename(scope.row) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column show-overflow-tooltip prop="storagevehicle_code" label="载具号" />
|
||||
<el-table-column show-overflow-tooltip prop="canuse_qty" label="可用数量(个)" :formatter="crud.formatNum3" />
|
||||
<!-- <el-table-column show-overflow-tooltip prop="unit_name" label="单位" />-->
|
||||
<!-- <el-table-column show-overflow-tooltip prop="unit_name" label="单位" />-->
|
||||
<el-table-column show-overflow-tooltip prop="instorage_time" label="入库时间" min-width="150" />
|
||||
</el-table>
|
||||
<!--分页组件-->
|
||||
@@ -111,6 +116,8 @@ import pagination from '@crud/Pagination'
|
||||
import DateRangePicker from '@/components/DateRangePicker/index'
|
||||
import crudStorattr, { getStor } from '@/views/wms/storage_manage/basedata/basedata'
|
||||
import semiproductivt from '@/views/wms/storage_manage/semiproducthr/semiproducthrIvt/semiproducthrivt'
|
||||
import crudWorkProcedure from '@/api/wms/basedata/pdm/workProcedure'
|
||||
|
||||
|
||||
export default {
|
||||
name: 'ProductIn',
|
||||
@@ -130,6 +137,7 @@ export default {
|
||||
return {
|
||||
height: document.documentElement.clientHeight - 180 + 'px;',
|
||||
permission: {},
|
||||
workprocedureList: {},
|
||||
storlist: [],
|
||||
storId: null
|
||||
}
|
||||
@@ -141,11 +149,21 @@ export default {
|
||||
}
|
||||
},
|
||||
created() {
|
||||
crudWorkProcedure.downSelect({ product_area: 'A3' }).then(res => {
|
||||
var procedures = new Map();
|
||||
res.forEach(item => {
|
||||
procedures.set(item.workprocedure_id,item.workprocedure_name)
|
||||
})
|
||||
this.workprocedureList = procedures
|
||||
})
|
||||
crudStorattr.getStor({ 'stor_type': '5' }).then(res => {
|
||||
this.storlist = res.content
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
getprocedurename(row){
|
||||
return this.workprocedureList.get(row.workprocedure_id)
|
||||
},
|
||||
downloadMethod() {
|
||||
semiproductivt.exportFile(this.query).then(res => {
|
||||
this.crud.notify('导出成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
|
||||
|
||||
@@ -2,8 +2,8 @@ import request from '@/utils/request'
|
||||
|
||||
export function del(ids) {
|
||||
return request({
|
||||
url: '/api/pda/hrBcp/order',
|
||||
method: 'delete',
|
||||
url: '/api/pda/hrBcp/order/delete',
|
||||
method: 'post',
|
||||
data: ids
|
||||
})
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<el-form-item label="箱码">
|
||||
<label slot="label">箱码:</label>
|
||||
<el-input
|
||||
v-model="query.type"
|
||||
v-model="query.bar_code"
|
||||
clearable
|
||||
style="width: 180px"
|
||||
placeholder="载具号"
|
||||
@@ -42,7 +42,18 @@
|
||||
</div>
|
||||
<!--如果想在工具栏加入更多按钮,可以使用插槽方式, slot = 'left' or 'right'-->
|
||||
|
||||
<crudOperation :permission="permission" />
|
||||
<crudOperation :permission="permission">
|
||||
<el-button
|
||||
slot="right"
|
||||
class="filter-item"
|
||||
icon="el-icon-position"
|
||||
size="mini"
|
||||
type="danger"
|
||||
@click="force(crud.selections)"
|
||||
>
|
||||
强制雀润
|
||||
</el-button>
|
||||
</crudOperation>
|
||||
<!--表格渲染-->
|
||||
<el-table
|
||||
ref="table"
|
||||
@@ -52,6 +63,7 @@
|
||||
style="width: 100%;"
|
||||
@selection-change="crud.selectionChangeHandler"
|
||||
>
|
||||
<el-table-column type="selection" width="55"/>
|
||||
<el-table-column prop="workshop_id" label="车间" min-width="100" show-overflow-tooltip />
|
||||
<el-table-column prop="type" label="出入库类型" min-width="100" show-overflow-tooltip />
|
||||
<el-table-column prop="order_id" label="顺序id" min-width="100" show-overflow-tooltip />
|
||||
@@ -142,8 +154,19 @@ export default {
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
force(rows){
|
||||
if (rows.length > 0){
|
||||
let ids = []
|
||||
rows.forEach((item) => {
|
||||
ids.push(item.order_id)
|
||||
})
|
||||
crudHrorder.del(ids).then(res => {
|
||||
this.crud.notify('操作成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
|
||||
this.crud.toQuery()
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user