Commit 1161dc97 authored by 李苏's avatar 李苏 💬

库内管理

parent 86ebb4bc
......@@ -606,8 +606,38 @@ export const powerRoutes = [
path: "kcyhd",
}
]
},
/* 库内管理*/
{
erpComponent: false,
component: 'template/index',
hidden: false,
meta: {
"title": "库内管理",
"icon": "",
"noCache": false,
"link": null,
"mkid": '920070000',
},
redirect: 'zt',
name: 'kngl',
path: "kngl",
children: [{
component: 'ccgl/kngl/zt/index',
hidden: false,
meta: {
"title": "组托",
"icon": "",
"noCache": false,
"link": null,
"mkid": 920070200,
},
name: 'zt',
path: "zt",
}
]
},
]
}
......
<template>
<div class="outer">
<div class=" higher flex-column">
<!-- 分层-->
<div class="top">
<Top @getRow='topGetRow' ref="top"></Top>
</div>
<div class="bottom flex">
<div class="full" >
<el-tabs class="full" v-model="activeName" >
<el-tab-pane class="full" label="明细" name="first">
<Mx ref="mx" class="full" />
</el-tab-pane>
</el-tabs>
</div>
</div>
</div>
</div>
</template>
<script>
import Top from './top/index.vue'
import Mx from './mx.vue'
export default {
components: {
Top,
Mx
},
data(){
return{
activeName:'first'
}
},
methods: {
topGetRow(row) {
/* dom赋值*/
let mid = row.id
this.$refs.mx.$refs.basePage.queryParams.mid = mid
this.$refs.mx.$refs.basePage.$refs['TablePager'].pageQuery({
setFirstCurrent: true
})
},
}
}
</script>
<style lang="scss" scoped>
.outer {
overflow: auto;
height: calc(100vh - 84px);
width: 100%;
.top {
width: 100%;
height: 45%;
}
.bottom {
width: 100%;
height: 55%;
.left {
width: 50%;
height: 100%;
}
.right {
width: 50%;
height: 100%;
}
}
}
.higher {
height: 140vh;
}
.flex-column {
display: flex;
flex-direction: column;
}
::v-deep .el-tabs__content{
height: calc(100% - 40px);
}
::v-deep .el-tabs__nav-scroll{
padding-left: 10px;
}
</style>
<template>
<BasePage @getRow='getRow' ref="basePage" :power='power' :toolButton='false' class="min_full"
style="height: 100%;border-top: 0px;" :autoQuery='false' :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
</template>
</BasePage>
</template>
<script>
export default {
data() {
return {
power: {
add: false,
copy: false,
/* 手动控制删除 */
delButton: false,
/* 手动控制编辑按钮权限 */
editButton: false,
/* 是否渲染右侧操作按钮 */
operateButtons: false,
/* 是否开启工作流按钮 */
workFlow: false,
/* 表格开启选择,以及记住选择 */
showSelection: false,
saveSelected: false
},
config: {
/* 基本配置*/
url: 'wms/kcgl/rqdj',
queryUrl: 'wms/kcgl/rqdj/query/detail',
tableTitle: [{
title: "唯一码",
field: "packCode",
width: 140
},
{
title: "容器",
field: "rqCode",
width: 140
},
{
title: "货主",
field: "hzName",
width: 140
},
/* 分割*/
{
title: "物料编码",
field: "wlxxCode",
width: 140
},
{
title: "物料名称",
field: "wlxxName",
width: 140
},
{
title: "物料规格",
field: "wlxxGg",
width: 140
},
{
title: "物料批号",
field: "wlph",
width: 140
},
{
title: "制令号",
field: "zlh",
width: 140
},
{
title: "原托盘数量",
field: "ytpsl",
width: 140
},
{
title: "增加数量",
field: "zjsl",
width: 140
}
],
queryParams: [],
}
}
},
methods: {
getRow(val) {
this.$emit('getRow', val)
},
demo(ctx) {
if (ctx.singleItem && ctx.singleItem.id) {
console.log(ctx.singleItem)
} else {
this.$warning('请选中一条数据')
}
}
},
components: {
}
}
</script>
<style>
</style>
\ No newline at end of file
<template>
<BasePage :power='power' @getRow='getRow' class="min_full" style="height: 100%;" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
<ztDialog :app='ctx.basePage' v-if="ctx.basePage.showDialog&&ctx.basePage.DialogTitle=='组托'" />
</template>
<template #toolbar="ctx">
<el-button @click="zt(ctx.basePage)" size='mini' type="primary">组托</el-button>
<el-button @click="ct(ctx.basePage)" size='mini' type="primary">拆托</el-button>
</template>
</BasePage>
</template>
<script>
import ztDialog from './ztDialog.vue';
export default {
data() {
return {
power: {
add: false,
copy: false,
/* 手动控制删除 */
delButton: false,
/* 手动控制编辑按钮权限 */
editButton: false,
/* 是否渲染右侧操作按钮 */
operateButtons: false,
/* 是否开启工作流按钮 */
workFlow: false,
/* 表格开启选择,以及记住选择 */
showSelection: false,
saveSelected: false
},
config: {
queryDetail: true,
/* 基本配置*/
url: 'wms/kcgl/rqdj',
tableTitle: [{
title: "类型",
field: "djlx",
fieldType: "ftString",
align: 'center',
width: 80,
"transform": {
"url": "wms/kcgl/rqdj/init/djlx",
"label": "name",
"value": "id"
}
},
{
title: "单据号",
field: "djid",
width: 140
},
{
title: "业务日期",
field: "ywrq",
fieldType: 'ftDate'
},
{
title: "容器",
field: "rqCode",
width: 140
},
{
title: "单据来源",
field: "djly",
width: 140,
"transform": {
"url": "wms/kcgl/rqdj/init/djly",
"label": "name",
"value": "id"
}
},
{
title: "来源单据号",
field: "lydjid",
width: 200,
},
{
title: "状态",
field: "zt",
width: 140,
"transform": {
"url": "wms/kcgl/rqdj/init/zt",
"label": "name",
"value": "id"
}
},
{
title: "维护人",
field: "whr"
},
{
title: "维护时间",
field: "whsj",
fieldType: 'ftDateTime'
}
],
queryParams: [
[{
label: '日期',
startProp: "start",
endProp: "end",
span: 12,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '容器',
prop: 'rqCode',
span: 6,
type: 'input',
value: ''
}
]
],
/* 默认启停用 */
}
}
},
methods: {
zt(ctx){
ctx.DialogWidth='70vw'
ctx.DialogTitle='组托'
ctx.showDialog=true
},
ct(){
},
getRow(val) {
this.$emit('getRow', val)
}
},
components: {
ztDialog
}
}
</script>
<style>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="display: flex;height: 70vh;">
<BasePage ref="basePage" :toolButton='false' :power='power' class="min_full" style="height: 100%;"
:config="config" />
</div>
<div slot="reFooter" class="refooter">
<span slot="footer" class="dialog-footer">
<el-button @click="app.showDialog=false">取 消</el-button>
<el-button type="primary" @click="save()">保 存</el-button>
</span>
</div>
</DefaultDialog>
</template>
<script>
export default {
props: {
app: {
type: Object,
default: () => {
return {}
}
}
},
async mounted() {
},
data() {
return {
power: {
add: false,
copy: false,
/* 手动控制删除 */
delButton: true,
/* 手动控制编辑按钮权限 */
editButton: false,
/* 是否渲染右侧操作按钮 */
operateButtons: false,
/* 是否开启工作流按钮 */
workFlow: false,
/* 表格开启选择,以及记住选择 */
showSelection: true,
saveSelected: true
},
config: {
/* Dialog*/
// queryDetail: true,
/* 基本配置*/
url: 'wms/kcgl/rqdj/queryPackmxWithoutRq',
queryUrl: 'wms/kcgl/rqdj/queryPackmxWithoutRq',
tableTitle: [{
title: "唯一码",
field: "packCode",
width: 140
},
{
title: "物料编码",
field: "wlxxCode",
width: 140
},
{
title: "物料名称",
field: "wlxxName",
width: 140
},
{
title: "物料规格",
field: "wlxxGg",
width: 140
},
{
title: "数量",
field: "sl",
width: 140
},
{
title: "制令号",
field: "zlh",
width: 140
},
{
title: "物料批号",
field: "wlph",
width: 140
},
{
title: "原托盘数量",
field: "ytpsl",
width: 140
}
],
queryParams: [
[{
label: '容器',
prop: 'kqid',
span: 6,
required: false,
type: 'AuxInput',
typeConfig: {
give:(row)=>{
console.log(row)
},
isRequest: false,
code: 'MATERIAL',
label: 'kqName',
transform: {
value: 'id',
label: 'name'
}
}
},
{
label: '唯一码',
prop: 'packCode',
span: 6,
type: 'input',
value: ''
}
]
],
/* 默认启停用 */
}
}
},
methods: {
save() {
let list = this.$refs.basePage.$refs.TablePager.selectedList || []
if (list.length != 0) {
this.$post('lxyl/zlgl/kccj/doGenerate', list).then(res => {
if (res.success) {
this.app.showDialog = false
this.app.refresh()
}
})
} else {
this.$warning('请至少勾选一条数据')
}
}
}
}
</script>
<style scoped>
</style>
<template>
<RelDialog width="80%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<RelDialog width="60%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<!-- 填写表单内容,slot=form必写-->
<el-form slot="form" ref="form" :model="form" label-width="100px" :rules="rules">
<el-row :gutter="20" :app="this">
......@@ -31,7 +31,7 @@
let colItem={
label: item.name,
prop: item.field,
span: 6,
span: 12,
type: map[item.type]||'input',
}
if(item.show=='Y'){
......@@ -47,20 +47,20 @@
editColItemList: [{
label: '物料编码',
prop: 'code',
span: 6,
span: 12,
type: 'input',
},
{
label: '物料名称',
prop: 'name',
span: 6,
span: 12,
type: 'input',
required: true,
},
{
label: '物料分类',
prop: 'flid',
span: 6,
span: 12,
type: 'RelSelect',
typeConfig: {
src: "jcsj/wlxx/init/wlfl"
......@@ -69,13 +69,13 @@
{
label: '规格',
prop: 'gg',
span: 6,
span: 12,
type: 'input'
},
{
label: '计量单位',
prop: 'jldw',
span: 6,
span: 12,
type: 'RelSelect',
typeConfig: {
src: "jcsj/jldw/query"
......@@ -86,7 +86,7 @@
{
label: '辅计量单位',
prop: 'fjldw',
span: 6,
span: 12,
type: 'RelSelect',
typeConfig: {
src: "jcsj/jldw/query"
......@@ -96,16 +96,26 @@
{
label: '批号管理',
prop: 'phgl',
span: 6,
span: 12,
type: 'checkbox',
value: 'N'
},
{
label: '库存期限',
prop: 'kcqx',
span: 6,
span: 12,
type: 'input'
},
/* 定制物料组*/
{
label: '物料组',
prop: 'wlzid',
span: 12,
type: 'RelSelect',
typeConfig: {
src: "lxyl/jcsj/wlxx/init/wlz"
}
},
{
label: '备注',
prop: 'bz',
......
......@@ -58,7 +58,7 @@
doDelete,
apiTreeQuery,
qt
} from 'common/src/erpApi/baseData/material/info.js';
} from './wlxx.js';
/* edit页面*/
import Edit from './edit'
import {
......@@ -97,7 +97,7 @@
type: '',
DialogTitle: '',
/* 基础url*/
baseUrl: 'jcsj/wlxx',
baseUrl: 'lxyl/jcsj/wlxx',
/* 查询参数*/
queryParams: {
condition:''
......
import request from 'common/src/utils/request'
/* query */
export function doQuery(query) {
return request({
url: 'lxyl/jcsj/wlxx/query',
method: 'post',
data: query||{}
})
}
export function doAdd(query) {
return request({
url: 'lxyl/jcsj/wlxx/add',
method: 'post',
data: query||{}
})
}
export function doUpdate(query) {
return request({
url: 'lxyl/jcsj/wlxx/update',
method: 'post',
data: query||{}
})
}
export function doDelete(query) {
return request({
url: 'lxyl/jcsj/wlxx/delete',
method: 'post',
data: query||{}
})
}
export function qt(query) {
return request({
url: 'lxyl/jcsj/wlxx/record/qt',
method: 'post',
data: query||{}
})
}
export function apiTreeQuery(query) {
return request({
url: 'lxyl/jcsj/wlfl/query',
method: 'post',
data: query||{}
})
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment