Browse Source

fix:基础版本维护

master
zhangzq 1 week ago
parent
commit
b68a029c4b
  1. 6
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/controller/SectattrController.java
  2. 1
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/ISectattrService.java
  3. 63
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/impl/SectattrServiceImpl.java
  4. 4
      nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/util/UpdateIvtUtils.java
  5. 2
      nladmin-system/nlsso-server/src/main/resources/config/application-dev.yml
  6. 10
      nladmin-ui/src/views/wms/basedata/material/index.vue
  7. 10
      nladmin-ui/src/views/wms/basedata/sectattr/sectattr.js
  8. 76
      nladmin-ui/src/views/wms/basedata/storagevehicleinfo/index.vue
  9. 43
      nladmin-ui/src/views/wms/basedata/structattr/index.vue
  10. 2
      nladmin-ui/src/views/wms/st/inbill/DivDialog.vue
  11. 4
      nladmin-ui/src/views/wms/st/outbill/DivDialog.vue

6
nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/controller/SectattrController.java

@ -65,6 +65,12 @@ public class SectattrController {
return new ResponseEntity<>(iSectattrService.getSect(whereJson), HttpStatus.OK);
}
@GetMapping("/getSectCode")
@Log("查询库区下拉框")
public ResponseEntity<Object> querySectCode(@RequestParam Map whereJson) {
return new ResponseEntity<>(iSectattrService.getSectCode(whereJson), HttpStatus.OK);
}
@PutMapping("/changeActive")
@Log("修改库区状态")
public ResponseEntity<Object> update(@RequestBody JSONObject json) {

1
nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/ISectattrService.java

@ -59,6 +59,7 @@ public interface ISectattrService extends IService<Sectattr> {
void deleteAll(String[] ids);
JSONObject getSect(Map whereJson);
JSONObject getSectCode(Map whereJson);
/**
* 改变启用状态

63
nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/impl/SectattrServiceImpl.java

@ -179,7 +179,68 @@ public class SectattrServiceImpl extends ServiceImpl<SectattrMapper, Sectattr> i
stor_cas.put("label", stor_jo.getStor_name());
List<Sectattr> sectattrList = sectattrMapper.selectList(new LambdaQueryWrapper<>(Sectattr.class)
.select(Sectattr::getSect_code,Sectattr::getSect_name)
.select(Sectattr::getSect_code,Sectattr::getSect_id,Sectattr::getSect_name)
.eq(StrUtil.isNotEmpty(stor_jo.getStor_id()),Sectattr::getStor_id,stor_jo.getStor_id())
.eq(StrUtil.isNotEmpty(sect_type_attr),Sectattr::getSect_type_attr,sect_type_attr)
.eq(Sectattr::getIs_delete,BaseDataEnum.IS_YES_NOT.code("否"))
.eq(Sectattr::getIs_used, BaseDataEnum.IS_YES_NOT.code("是"))
);
if (!sectattrList.isEmpty()) {
JSONArray sect_ja = new JSONArray();
for (int j = 0; j < sectattrList.size(); j++) {
Sectattr sect_jo = sectattrList.get(j);
JSONObject sect_cas = new JSONObject();
sect_cas.put("value", sect_jo.getSect_id());
sect_cas.put("label", sect_jo.getSect_name());
sect_ja.add(sect_cas);
}
stor_cas.put("children", sect_ja);
}
new_ja.add(stor_cas);
}
JSONObject jo = new JSONObject();
jo.put("content", new_ja);
return jo;
}
@Override
public JSONObject getSectCode(Map whereJson) {
JSONArray new_ja = new JSONArray();
String is_materialstore = (String) whereJson.get("is_materialstore");
String is_virtualstore = (String) whereJson.get("is_virtualstore");
String is_semi_finished = (String) whereJson.get("is_semi_finished");
String is_productstore = (String) whereJson.get("is_productstore");
String is_attachment = (String) whereJson.get("is_attachment");
String is_reversed = (String) whereJson.get("is_reversed");
String sect_type_attr = (String) whereJson.get("sect_type_attr");
String stor_id = (String) whereJson.get("stor_id");
LambdaQueryWrapper<BsrealStorattr> queryWrapper = new LambdaQueryWrapper<>(BsrealStorattr.class)
.select(BsrealStorattr::getStor_id, BsrealStorattr::getStor_code, BsrealStorattr::getStor_name)
.eq(StrUtil.isNotEmpty(is_materialstore),BsrealStorattr::getIs_materialstore,is_materialstore)
.eq(StrUtil.isNotEmpty(is_virtualstore),BsrealStorattr::getIs_virtualstore,is_virtualstore)
.eq(StrUtil.isNotEmpty(is_semi_finished),BsrealStorattr::getIs_materialstore,is_semi_finished)
.eq(StrUtil.isNotEmpty(is_productstore),BsrealStorattr::getIs_materialstore,is_productstore)
.eq(StrUtil.isNotEmpty(is_attachment),BsrealStorattr::getIs_materialstore,is_attachment)
.eq(StrUtil.isNotEmpty(is_reversed),BsrealStorattr::getIs_materialstore,is_reversed)
.eq(StrUtil.isNotEmpty(stor_id),BsrealStorattr::getStor_id,stor_id)
.eq(BsrealStorattr::getIs_delete, BaseDataEnum.IS_YES_NOT.code("否"))
.eq(BsrealStorattr::getIs_used, BaseDataEnum.IS_YES_NOT.code("是")
);
List<BsrealStorattr> bsrealStorattrList = iBsrealStorattrService.list(queryWrapper);
for (int i = 0; i < bsrealStorattrList.size(); i++) {
BsrealStorattr stor_jo = bsrealStorattrList.get(i);
JSONObject stor_cas = new JSONObject();
stor_cas.put("value", stor_jo.getStor_code());
stor_cas.put("label", stor_jo.getStor_name());
List<Sectattr> sectattrList = sectattrMapper.selectList(new LambdaQueryWrapper<>(Sectattr.class)
.select(Sectattr::getSect_code,Sectattr::getSect_id,Sectattr::getSect_name)
.eq(StrUtil.isNotEmpty(stor_jo.getStor_id()),Sectattr::getStor_id,stor_jo.getStor_id())
.eq(StrUtil.isNotEmpty(sect_type_attr),Sectattr::getSect_type_attr,sect_type_attr)
.eq(Sectattr::getIs_delete,BaseDataEnum.IS_YES_NOT.code("否"))

4
nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_manage/service/util/UpdateIvtUtils.java

@ -119,7 +119,7 @@ public class UpdateIvtUtils {
* @param where 输入参数
*/
private void updateAddCanuseInsertIvt(JSONObject where) {
throw new BadRequestException("当前载具已存在库存物料,请检查数据!");
// throw new BadRequestException("当前载具已存在库存物料,请检查数据!");
// 判断当前载具是否有物料
// MdPbStoragevehicleext extDao = iMdPbStoragevehicleextService.getOne(
// new QueryWrapper<MdPbStoragevehicleext>().lambda()
@ -197,7 +197,7 @@ public class UpdateIvtUtils {
}
// 如果可用数和冻结数都为零则删除数据
if (frozen_qty == 0 && extDao.getQty().doubleValue() == 0) {
iMdPbStoragevehicleextService.removeById(extDao);
// iMdPbStoragevehicleextService.removeById(extDao);
} else {
extDao.setFrozen_qty(BigDecimal.valueOf(frozen_qty));
extDao.setUpdate_id(SecurityUtils.getCurrentUserId());

2
nladmin-system/nlsso-server/src/main/resources/config/application-dev.yml

@ -12,7 +12,7 @@ spring:
url: jdbc:mysql://${DB_HOST:192.168.81.251}:${DB_PORT:3306}/${DB_NAME:wms_standardv1}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false
# url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:wms_oulun}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false
username: ${DB_USER:root}
password: ${DB_PWD:123456}
password: ${DB_PWD:P@ssw0rd.}
# 初始连接数
initial-size: 15
# 最小连接数

10
nladmin-ui/src/views/wms/basedata/material/index.vue

@ -43,7 +43,7 @@
<el-form ref="form" :model="form" :rules="rules" size="mini" label-width="110px">
<el-row>
<el-col :span="8">
<el-form-item label="物料编码" prop="material_code" >
<el-form-item label="物料编码" prop="material_code">
<el-input v-model="form.material_code" style="width: 200px;" :disabled="crud.status.edit > 0" />
</el-form-item>
</el-col>
@ -102,9 +102,9 @@
@selection-change="crud.selectionChangeHandler"
>
<el-table-column prop="material_code" label="物料编码" width="160" />
<el-table-column prop="material_name" label="物料名称" width="180" show-overflow-tooltip />
<el-table-column prop="material_spec" label="物料规格" width="140" />
<el-table-column prop="material_model" label="物料型号" />
<el-table-column prop="material_name" label="物料名称" width="160" show-overflow-tooltip />
<el-table-column prop="material_spec" label="物料规格" width="160" show-overflow-tooltip />
<el-table-column prop="material_model" label="物料型号" width="680" show-overflow-tooltip />
<el-table-column prop="class_name" label="物料分类" width="140" />
<el-table-column label="启用" align="center" prop="is_used">
<template slot-scope="scope">
@ -138,7 +138,7 @@
<!--分页组件-->
<pagination />
</div>
<UploadDialog :dialog-show.sync="uploadShow"/>
<UploadDialog :dialog-show.sync="uploadShow" />
</div>
</template>

10
nladmin-ui/src/views/wms/basedata/sectattr/sectattr.js

@ -32,6 +32,14 @@ export function getSect(params) {
})
}
export function getSectCode(params) {
return request({
url: 'api/sectattr/getSectCode',
method: 'get',
params
})
}
export function changeActive(data) {
return request({
url: 'api/sectattr/changeActive',
@ -40,4 +48,4 @@ export function changeActive(data) {
})
}
export default { add, edit, del, getSect, changeActive }
export default { add, edit, del, getSect, getSectCode, changeActive }

76
nladmin-ui/src/views/wms/basedata/storagevehicleinfo/index.vue

@ -40,7 +40,7 @@
@keyup.enter.native="crud.toQuery"
/>
</el-form-item>
<rrOperation/>
<rrOperation />
</el-form>
</div>
@ -67,30 +67,34 @@
>
<el-form ref="form" :model="materialForm" :rules="rules" size="mini" label-width="110px">
<el-form-item label="载具编码" prop="vehicle_code">
<el-input v-model="materialForm.vehicle_code" disabled style="width: 370px;"/>
<el-input v-model="materialForm.vehicle_code" disabled style="width: 370px;" />
</el-form-item>
<el-form-item label="物料编码" prop="material_code">
<template slot-scope="scope">
<el-input v-model="materialForm.material_code" clearable style="width: 370px"
@clear="materialForm.material_id='',materialForm.material_code='',materialForm.material_name='',materialForm.material_spec=''">
<el-button slot="append" icon="el-icon-plus" @click="queryMater"/>
<el-input
v-model="materialForm.material_code"
clearable
style="width: 370px"
@clear="materialForm.material_id='',materialForm.material_code='',materialForm.material_name='',materialForm.material_spec=''"
>
<el-button slot="append" icon="el-icon-plus" @click="queryMater" />
</el-input>
</template>
</el-form-item>
<el-form-item label="物料规格" prop="material_spec">
<el-input v-model="materialForm.material_spec" disabled style="width: 370px;"/>
<el-input v-model="materialForm.material_spec" disabled style="width: 370px;" />
</el-form-item>
<el-form-item label="批 次" prop="pcsn">
<el-input v-model="materialForm.pcsn" clearable style="width: 370px;"/>
<el-input v-model="materialForm.pcsn" clearable style="width: 370px;" />
</el-form-item>
<el-form-item label="物料数量" prop="qty">
<el-input v-model="materialForm.qty" clearable style="width: 370px;"/>
<el-input v-model="materialForm.qty" clearable style="width: 370px;" />
</el-form-item>
<el-form-item label="冻结数量" prop="frozen_qty">
<el-input v-model="materialForm.frozen_qty" clearable style="width: 370px;"/>
<el-input v-model="materialForm.frozen_qty" clearable style="width: 370px;" />
</el-form-item>
<el-form-item label="流程实例" prop="proc_inst_id">
<el-input v-model="materialForm.proc_inst_id" clearable style="width: 370px;"/>
<el-input v-model="materialForm.proc_inst_id" clearable style="width: 370px;" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -108,11 +112,11 @@
<el-form ref="form" :model="updateForm" :rules="rules" size="mini" label-width="110px">
<el-form-item label="载具编号" prop="vehicle_code">
<template slot-scope="scope">
<el-input v-model="updateForm.vehicle_code" clearable/>
<el-input v-model="updateForm.vehicle_code" clearable />
</template>
</el-form-item>
<el-form-item label="载具重量(g)" prop="vehicle_weight">
<el-input-number v-model="updateForm.vehicle_weight" clearable style="width: 370px;"/>
<el-input-number v-model="updateForm.vehicle_weight" clearable style="width: 370px;" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -129,22 +133,22 @@
>
<el-form ref="form" :model="printForm" size="mini" label-width="150px">
<el-form-item label="纸张高度(mm)" prop="pageh">
<el-input v-model="printForm.pageh" :precision="0" style="width: 150px;"/>
<el-input v-model="printForm.pageh" :precision="0" style="width: 150px;" />
</el-form-item>
<el-form-item label="纸张宽度(mm)" prop="pagew">
<el-input v-model="printForm.pagew" :precision="0" style="width: 150px;"/>
<el-input v-model="printForm.pagew" :precision="0" style="width: 150px;" />
</el-form-item>
<el-form-item label="页边距top(mm)" prop="pagetop">
<el-input v-model="printForm.pagetop" :precision="0" style="width: 150px;"/>
<el-input v-model="printForm.pagetop" :precision="0" style="width: 150px;" />
</el-form-item>
<el-form-item label="页边距right(mm)" prop="pageright">
<el-input v-model="printForm.pageright" :precision="0" style="width: 150px;"/>
<el-input v-model="printForm.pageright" :precision="0" style="width: 150px;" />
</el-form-item>
<el-form-item label="页边距down(mm)" prop="pagedown">
<el-input v-model="printForm.pagedown" :precision="0" style="width: 150px;"/>
<el-input v-model="printForm.pagedown" :precision="0" style="width: 150px;" />
</el-form-item>
<el-form-item label="页边距left(mm)" prop="pageleft">
<el-input v-model="printForm.pageleft" :precision="0" style="width: 150px;"/>
<el-input v-model="printForm.pageleft" :precision="0" style="width: 150px;" />
</el-form-item>
<br>
</el-form>
@ -180,22 +184,22 @@
</el-form-item>
<br>
<el-form-item label="起始载具号" prop="vehicle_code">
<el-input v-model="form.vehicle_code" :disabled="true" style="width: 250px;"/>
<el-input v-model="form.vehicle_code" :disabled="true" style="width: 250px;" />
</el-form-item>
<el-form-item label="载具数量" prop="num">
<el-input-number v-model="form.num" :precision="0" style="width: 150px;"/>
<el-input-number v-model="form.num" :precision="0" style="width: 150px;" />
</el-form-item>
<el-form-item label="高度(mm)" prop="h">
<el-input-number v-model="form.h" :precision="0" style="width: 150px;"/>
<el-input-number v-model="form.h" :precision="0" style="width: 150px;" />
</el-form-item>
<el-form-item label="宽度(mm)" prop="w">
<el-input-number v-model="form.w" :precision="0" style="width: 150px;"/>
<el-input-number v-model="form.w" :precision="0" style="width: 150px;" />
</el-form-item>
<el-form-item label="深度(mm)" prop="l">
<el-input-number v-model="form.l" :precision="0" style="width: 150px;"/>
<el-input-number v-model="form.l" :precision="0" style="width: 150px;" />
</el-form-item>
<el-form-item label="重量(g)" prop="weight">
<el-input-number v-model="form.weight" :precision="0" style="width: 150px;"/>
<el-input-number v-model="form.weight" :precision="0" style="width: 150px;" />
</el-form-item>
<el-form-item label="是否启用">
<el-radio v-model="form.is_used" label="0"></el-radio>
@ -236,8 +240,8 @@
/>
</template>
</el-table-column>
<el-table-column prop="create_name" label="创建人"/>
<el-table-column prop="create_time" label="创建时间" width="150px"/>
<el-table-column prop="create_name" label="创建人" />
<el-table-column prop="create_time" label="创建时间" width="150px" />
<el-table-column
v-permission="['admin','storagevehicleinfo:edit','storagevehicleinfo:del']"
label="操作"
@ -249,12 +253,13 @@
<udOperation
:data="scope.row"
:permission="permission"
:disabled-edit="true"
/>
</template>
</el-table-column>
</el-table>
<!-- 分页组件-->
<pagination/>
<pagination />
</div>
<MaterDtl
:dialog-show.sync="materialShow"
@ -275,7 +280,6 @@ import pagination from '@crud/Pagination'
import { getLodop } from '@/assets/js/lodop/LodopFuncs'
import MaterDtl from '@/views/wms/basedata/material/MaterialDialog'
const defaultForm = {
vehicle_code: null,
vehicle_name: null,
@ -298,7 +302,7 @@ const defaultForm = {
}
export default {
name: 'Storagevehicleinfo',
dicts: ['storagevehicle_type', "VEHICLE_OVER_TYPE"],
dicts: ['storagevehicle_type', 'VEHICLE_OVER_TYPE'],
components: { pagination, crudOperation, rrOperation, udOperation, MaterDtl },
mixins: [presenter(), header(), form(defaultForm), crud()],
cruds() {
@ -347,23 +351,23 @@ export default {
permission: {},
rules: {
vehicle_code: [
{required: true, message: '不能为空', trigger: 'blur'}
{ required: true, message: '不能为空', trigger: 'blur' }
],
is_delete: [
{required: true, message: '不能为空', trigger: 'blur'}
{ required: true, message: '不能为空', trigger: 'blur' }
],
is_used: [
{required: true, message: '不能为空', trigger: 'blur'}
{ required: true, message: '不能为空', trigger: 'blur' }
],
vehicle_type: [
{required: true, message: '不能为空', trigger: 'blur'}
{ required: true, message: '不能为空', trigger: 'blur' }
],
overstruct_type: [
{required: true, message: '不能为空', trigger: 'blur'}
{ required: true, message: '不能为空', trigger: 'blur' }
],
num: [
{required: true, message: '不能为空', trigger: 'blur'},
{validator: numberOne}
{ required: true, message: '不能为空', trigger: 'blur' },
{ validator: numberOne }
]
}
}

43
nladmin-ui/src/views/wms/basedata/structattr/index.vue

@ -93,16 +93,16 @@
</div>
<!--如果想在工具栏加入更多按钮可以使用插槽方式 slot = 'left' or 'right'-->
<crudOperation :permission="permission">
<!-- <el-button-->
<!-- slot="right"-->
<!-- class="filter-item"-->
<!-- type="warning"-->
<!-- icon="el-icon-check"-->
<!-- size="mini"-->
<!-- @click="openOneCreate"-->
<!-- >-->
<!-- 一键生成-->
<!-- </el-button>-->
<!-- <el-button-->
<!-- slot="right"-->
<!-- class="filter-item"-->
<!-- type="warning"-->
<!-- icon="el-icon-check"-->
<!-- size="mini"-->
<!-- @click="openOneCreate"-->
<!-- >-->
<!-- 一键生成-->
<!-- </el-button>-->
</crudOperation>
<!--表单组件-->
@ -272,16 +272,17 @@
{{ dict.label.placement_type[scope.row.placement_type] }}
</template>
</el-table-column>
<el-table-column label="是否启用" align="center" prop="is_used">
<template slot-scope="scope">
<el-switch
:value="format_is_used(scope.row.is_used)"
active-color="#409EFF"
inactive-color="#F56C6C"
@change="changeEnabled(scope.row, scope.row.is_used)"
/>
</template>
</el-table-column>
<!-- <el-table-column label="是否启用" align="center" prop="is_used">-->
<!-- <template slot-scope="scope">-->
<!-- <el-switch-->
<!-- :value="format_is_used(scope.row.is_used)"-->
<!-- active-color="#409EFF"-->
<!-- inactive-color="#F56C6C"-->
<!-- @change="changeEnabled(scope.row, scope.row.is_used)"-->
<!-- />-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column prop="is_used" label="是否启用" />-->
<el-table-column prop="taskdtl_type" label="锁定任务类型" width="150" :formatter="taskdtl_typeFormat" />
<el-table-column prop="task_code" label="锁定任务编码" width="150" />
<el-table-column prop="inv_code" label="锁定单据编码" width="150" />
@ -305,7 +306,7 @@
<!--分页组件-->
<pagination />
</div>
<!-- <OneCreateDialog :dialog-show.sync="openOneCreateDialog" />-->
<!-- <OneCreateDialog :dialog-show.sync="openOneCreateDialog" />-->
</div>
</template>

2
nladmin-ui/src/views/wms/st/inbill/DivDialog.vue

@ -255,7 +255,7 @@ export default {
},
methods: {
open() {
crudSectattr.getSect({ 'stor_id': this.storId }).then(res => {
crudSectattr.getSectCode({ 'stor_id': this.storId }).then(res => {
this.sects = res.content
})

4
nladmin-ui/src/views/wms/st/outbill/DivDialog.vue

@ -297,7 +297,7 @@ export default {
sects: [],
pointList: [],
rules: {
},
}
}
},
watch: {
@ -320,7 +320,7 @@ export default {
},
methods: {
open() {
crudSectattr.getSect({ 'stor_id': this.storId }).then(res => {
crudSectattr.getSectCode({ 'stor_id': this.storId }).then(res => {
this.sects = res.content
})

Loading…
Cancel
Save