Commit 97e09b7d authored by 李苏's avatar 李苏 💬

调整

parent ca28e83b
# 页面标题
VUE_APP_TITLE = 格物软件
VUE_APP_TITLE = 涉案人员随身物品管理
# 开发环境配置
ENV = 'http://demo.ruoyi.vip/'
......
# 页面标题
VUE_APP_TITLE = 格物软件
VUE_APP_TITLE = 涉案人员随身物品管理
# 生产环境配置
ENV = 'production'
......
# 页面标题
VUE_APP_TITLE = 格物管理系统
VUE_APP_TITLE = 涉案人员随身物品管理
NODE_ENV = production
......
......@@ -200,6 +200,217 @@ export const powerRoutes=[
},
]
},
/* 调用 */
{
path: '/call',
component: 'Layout',
hidden: false,
alwaysShow: true,
redirect: 'case',
meta: {
title: "调用管理",
icon: "fa-cog",
noCache: false,
link: null,
mkid: '901030000'
},
children:[
{
component: 'call/thingCall/index',
hidden: false,
meta: {
"title": "物品调用",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901031000',
},
name: 'thingCall',
path: "thingCall",
},
{
component: 'call/return/index',
hidden: false,
meta: {
"title": "物品归还",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901032000',
},
name: 'return',
path: "return",
},
{
component: 'call/record/index',
hidden: false,
meta: {
"title": "逾期记录查询",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901033000',
},
name: 'record',
path: "record",
}
]
},
/* 物品处置 */
{
path: '/handle',
component: 'Layout',
hidden: false,
alwaysShow: true,
redirect: 'back',
meta: {
title: "物品处理",
icon: "fa-cog",
noCache: false,
link: null,
mkid: '901040000'
},
children:[
{
component: 'handle/back/index',
hidden: false,
meta: {
"title": "物品发还",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901041000',
},
name: 'back',
path: "back",
},
{
component: 'handle/seizure/index',
hidden: false,
meta: {
"title": "物品没收",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901042000',
},
name: 'seizure',
path: "seizure",
},
{
component: 'handle/transfer/index',
hidden: false,
meta: {
"title": "随案移送",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901043000',
},
name: 'transfer',
path: "transfer",
},
{
component: 'handle/sale/index',
hidden: false,
meta: {
"title": "物品拍卖",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901044000',
},
name: 'sale',
path: "sale",
},
{
component: 'handle/destroy/index',
hidden: false,
meta: {
"title": "物品销毁",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901045000',
},
name: 'destroy',
path: "destroy",
},
{
component: 'handle/saveCancel/index',
hidden: false,
meta: {
"title": "登记保存解除",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901046000',
},
name: 'saveCancel',
path: "saveCancel",
},
{
component: 'handle/unseal/index',
hidden: false,
meta: {
"title": "解封",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901047000',
},
name: 'unseal',
path: "unseal",
},
]
},
/* 查询分析 */
{
path: '/analysis',
component: 'Layout',
hidden: false,
alwaysShow: true,
redirect: 'list',
meta: {
title: "查询分析",
icon: "fa-cog",
noCache: false,
link: null,
mkid: '901050000'
},
children:[
{
component: 'analysis/list/index',
hidden: false,
meta: {
"title": "在库物品清单",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901051000',
},
name: 'list',
path: "list",
},
{
component: 'analysis/query/index',
hidden: false,
meta: {
"title": "出入库台账查询",
"icon": "",
"noCache": false,
"link": null,
"mkid": '901052000',
},
name: 'query',
path: "query",
}
]
}
]
// 公共路由
......
<template>
<BasePage :power="{
add: false,
copy: false,
delButton: false,
editButton: false,
operateButtons: false,
workFlow: false,
/* 表格 */
showSelection: false,
saveSelected: false
}" class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<!-- <el-button @click="demo(ctx.basePage)" size='mini' type="primary">示例按钮</el-button> -->
</template>
</BasePage>
</template>
<script>
export default {
data() {
return {
config: {
/* 基本配置*/
url: 'cxfx/crtz',
tableTitle: [
{
title: "序列号",
field: "xlh",
width: 140
},
{
title: "物品编码",
field: "wpbm",
},
{
title: "物品名称",
field: "wpmc",
},
{
title: "数量",
field: "count",
},
{
title: "案件编码",
field: "ajbm",
width: 140
},
{
title: "案件名称",
field: "ajmc",
width: 140
},
{
title: "物品持有人",
field: "wpcyr",
},
{
title: "物品特征",
field: "wptz",
},
{
title: "物品状态",
field: "wpzt",
formatter(a, b, c) {
let map = {
0: '未入库',
1: '在库',
2: '出库'
}
return map[c]
}
},
{
title: "所在库",
field: "szk",
width:130,
"transform": {
"url": "jcsj/u_ckwh/query",
"label": "ckmc",
"value": "id"
}
},
{
title: "维护人",
field: "whr"
},
{
title: "维护时间",
field: "whsj",
fieldType: "ftDateTime"
}
],
queryParams: [
[{
label: '部门',
prop: 'ssbm',
span: 4,
type: 'RelSelect',
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
},
}
},
{
label: '仓库',
prop: 'ckid',
span: 4,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
},
},
{
label: '物品信息',
prop: 'wpxx',
span: 4,
type: 'input',
value: ''
},
{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
},
{
label: '案件信息',
prop: 'ajxx',
span: 4,
type: 'input',
value: ''
},
]
],
/* 默认启停用 */
// treeUrl:''
}
}
},
methods: {
/* 示例*/
// demo(basePage){
// }
},
components: {
}
}
</script>
<style>
</style>
<template>
<RelDialog width="50%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<el-form slot="form" ref="form" :model="form" label-width="100px" :rules="rules">
<el-row :gutter="20" :app="this">
<EditColItem :required="item.required||false" :readonly="item.readonly?true:false " v-for="(item,index) in editColItemList " :value="item.value" :span="item.span" :label="item.label" :prop='item.prop' :key="item.prop" :type="item.type" :typeConfig='item.typeConfig' :rule="item.rule" />
</el-row>
</el-form>
</RelDialog>
</template>
<script>
import {
editMixin
} from 'common'
export default {
mixins: [editMixin],
data() {
return {
editColItemList: [
{
label: '编码',
prop: 'code',
span: 12,
type: 'input',
required:true,
},
{
label: '名称',
prop: 'name',
span: 12,
type: 'input',
required:true,
},
{
label: '备注',
prop: 'bz',
span: 24,
type: 'input'
},
]
}
}
}
</script>
<template>
<BasePage :power="{
add: false,
copy: false,
delButton: false,
editButton: false,
operateButtons: false,
workFlow: false,
/* 表格 */
showSelection: false,
saveSelected: false
}" class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<!-- <el-button @click="demo(ctx.basePage)" size='mini' type="primary">示例按钮</el-button> -->
</template>
</BasePage>
</template>
<script>
import Edit from './edit.vue'
export default {
data() {
return {
config: {
/* 基本配置*/
url: 'cxfx/crtz',
tableTitle: [{
title: "序列号",
field: "xlh",
width: 140
},
{
title: "单号",
field: "dh",
width: 140
},
{
title: "业务时间",
field: "ywsj",
fieldType: "ftDate"
},
{
title: "事务类型",
field: "swlx",
width: 140,
formatter(a, b, value) {
let map = {
'1': '扣押',
'2': '先行保存库',
'3': '冻结',
'4': '查封',
'5': '登记保存',
'6': '归还入库',
'7': '调度出库',
'8': '发还出库',
'9': '调拨出库',
'10': '随案移动',
'11': '拍卖',
'12': '销毁',
'13': '解除出库',
}
return map[value]
}
},
{
title: "物品编码",
field: "wpbm",
width: 120,
},
{
title: "物品名称",
field: "wpmc",
width: 100,
},
{
title: "物品特征",
field: "wptz",
width: 200,
},
{
title: "数量",
field: "count",
width: 140,
},
{
title: "物品持有人",
field: "wpcyr",
width: 140,
},
{
title: "案件编码",
field: "ajbm",
width: 140
},
{
title: "案件名称",
field: "ajmc",
width: 140
},
{
title: "案件名称",
field: "ajmc",
width: 140
},
{
title: "入库数量",
field: "rksl",
width: 140
},
{
title: "出库数量",
field: "cksl",
width: 140
},
{
title: "仓库",
field: "ckmc",
width: 140
},
{
title: "部门",
field: "bm",
width: 140,
"transform": {
"url": "hjbm/query",
"label": "bmmc",
"value": "bmid"
}
},
],
queryParams: [
[{
label: '部门',
prop: 'ssbm',
span: 4,
type: 'RelSelect',
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
},
}
},
{
label: '仓库',
prop: 'ckid',
span: 4,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
},
},
{
label: '物品信息',
prop: 'wpxx',
span: 4,
type: 'input',
value: ''
},
{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
},
{
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 6,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
],
[
{
label: '案件信息',
prop: 'ajxx',
span: 4,
type: 'input',
value: ''
},
]
],
}
}
},
methods: {
/* 示例*/
// demo(basePage){
// }
},
components: {
Edit
}
}
</script>
<style>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="display: flex;height: 70vh;">
DialogTitle:'新增',
showDialog:false,
<div v-loading='loading' v-if="b64!=null" class="full">
<img class="full" :src="b64" alt="正在连接摄像头...若长时间连接失败请刷新页面或者检查摄像头设备是否连接,SDK是否正确安装!" srcset="">
</div>
<div slot="reFooter" class="refooter" >
<span slot="footer" class="dialog-footer" >
<el-button @click="app.showDialog=false">取 消</el-button>
</div>
<div slot="reFooter" class="refooter">
<span slot="footer" class="dialog-footer">
<el-button @click="cancel">取 消</el-button>
<el-button type="primary" @click="save()">保 存</el-button>
</span>
</div>
</DefaultDialog>
</template>
<script>
import {
autoAttach,
autoAttachDownload,
deleteAttachDownload,
uploadAttachDownload
} from "common/src/api/system/dmgSystem.js";
export default {
props: {
app: {
type: Object,
default: ()=>{
default: () => {
return {}
}
}
},
async mounted() {
var socket = new WebSocket('ws://localhost:9000');
this.socket = socket
// 监听WebSocket事件
socket.addEventListener('open', () => {
socket.send(this.getinfo);
//
});
socket.addEventListener('message', (event) => {
// console.log('收到WebSocket消息:', event.data);
if (event.data instanceof Blob) {
} else {
let resdata = JSON.parse(event.data)
if (resdata.func == 'OpenCamera') {
socket.send(this.hqspl());
} else if (resdata.func == 'GetCameraVideoBuff') {
this.b64 = 'data:image/png;base64,' + resdata.imgBase64Str
} else if (resdata.func == "GetCameraInfo") {
/* 获取deviceType==1*/
if (resdata.devInfo && resdata.devInfo.length > 0) {
let gpy = resdata.devInfo.filter(item => item.deviceType == 1)
if (gpy.length == 0) {
gpy[0] = resdata.devInfo[0]
this.$warning('未调用到外接摄像头,正在启用其他摄像头')
}
this.devNum = gpy[0].id
// this.devNum=0
/* 开启摄像头*/
this.socket.send(this.dksxt());
} else {
this.$warning('请接入摄像头,检查是否安装了SDK程序')
}
}
}
});
socket.addEventListener('close', () => {
console.log('WebSocket连接已关闭');
});
socket.addEventListener('error', (error) => {
console.error('WebSocket连接出错:', error);
});
},
beforeDestroy() {
this.socket.send(this.gbsb());
this.socket.close();
},
data() {
return {
loading: false,
devNum: 0,
b64: null,
getinfo: JSON.stringify({
"func": "GetCameraInfo",
"reqId": 123
})
}
},
methods: {
save() {
if (this.b64) {
this.loading = true
var mimeString
function dataURItoBlob(dataURI) {
var byteString = atob(dataURI.split(',')[1]);
mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0];
var ab = new ArrayBuffer(byteString.length);
var ia = new Uint8Array(ab);
for (var i = 0; i < byteString.length; i++) {
ia[i] = byteString.charCodeAt(i);
}
return new Blob([ab], {
type: mimeString
});
}
// 将Base64数据转换为Blob对象
let name = `${new Date()}.png`
var blob = dataURItoBlob(this.b64);
var formData = new FormData();
formData.append('file', blob)
formData.append('type', mimeString)
formData.append('name', name)
formData.append('groupid', this.app.singleItem.id)
uploadAttachDownload(formData, this.app.baseUrl).then(res => {
if (res.success) {
this.$success('上传成功')
this.app.showDialog = false
}
}).finally(e => {
this.loading = false
})
} else {
this.$warning('暂未拍摄到图像,无法保存')
}
},
hqspl() {
let params = JSON.stringify({
"func": "GetCameraVideoBuff",
"reqId": 126,
"devNum": this.devNum,
"width": 640,
"height": 480,
"fps": 10,
"enable": "true"
})
return params
},
gbsb() {
let params = JSON.stringify({
"func": "CloseCamera",
"reqId": 127,
"devNum": this.devNum,
})
return params
},
dksxt() {
let params = JSON.stringify({
"func": "OpenCamera",
"reqId": 125,
"devNum": this.devNum,
"mediaNum": 0,
"resolutionNum": 0,
"fps": 10,
"userName": "admin",
"password": "9999"
})
return params
},
cancel() {
this.app.showDialog = false
this.socket.send(this.gbsb());
this.socket.close();
}
}
}
......
......@@ -2,11 +2,14 @@
<BasePage :autoQuery="false" ref="BasePage" class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
<Dialog v-if="ctx.basePage.showDialog" :app='ctx.basePage' />
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<AttachFileButton :app='ctx.basePage'></AttachFileButton>
<el-button @click="tz(ctx.basePage)" size='mini' type="primary">同步</el-button>
<el-button @click="pz(ctx.basePage)" size='mini' type="primary">拍照</el-button>
</template>
<template #tablePagerLeft="ctx">
<div class="tablePagerLeft">
......@@ -21,6 +24,7 @@
<script>
import Edit from './edit.vue'
import Dialog from './dialog.vue'
import {
tableMixin
} from 'common'
......@@ -29,7 +33,7 @@
mounted() {
/* 初始化*/
this.$refs.TablePager.pageQuery({
setFirstCurrent:true
setFirstCurrent: true
})
},
data() {
......@@ -49,8 +53,7 @@
config: {
/* 基本配置*/
url: 'jcsj/u_wpgl',
tableTitle: [
{
tableTitle: [{
title: "案件编码",
field: "ajbm",
width: 140
......@@ -68,12 +71,12 @@
{
title: "物品编码",
field: "wpbm",
fieldType: "ftDate"
},
{
title: "物品名称",
field: "wpmc",
fieldType: "ftDate"
},
{
title: "数量",
......@@ -82,13 +85,35 @@
{
title: "物品持有人",
field: "wpcyr",
fieldType: "ftDate"
},
{
title: "物品特征",
field: "wptz",
fieldType: "ftDate"
},
{
title: "物品状态",
field: "wpzt",
formatter(a, b, c) {
let map = {
0: '未入库',
1: '在库',
2: '出库'
}
return map[c]
}
},
{
title: "所在库",
field: "szk",
width:130,
"transform": {
"url": "jcsj/u_ckwh/query",
"label": "ckmc",
"value": "id"
}
},
{
title: "维护人",
field: "whr"
......@@ -100,24 +125,58 @@
},
],
queryParams: [
[{
"label": "仓库类型",
"prop": "cklx",
[
// {
// "label": "仓库类型",
// "prop": "cklx",
// "span": 4,
// "type": "RelSelect",
// "value": "",
// "typeConfig": {
// "src": "jcsj/u_ckwh/query/cklx",
// "match": {
// "value": "type",
// "label": "name"
// }
// }
// },
{
"label": "物品状态",
"prop": "wpzt",
"span": 4,
"type": "RelSelect",
"value": "",
"typeConfig": {
"src": "jcsj/u_ckwh/query/cklx",
optionsData: [{
name: '未入库',
value: 0
},
{
name: '在库',
value: 1
},
{
name: '出库',
value: 2
}
],
"match": {
"value": "type",
"value": "value",
"label": "name"
}
}
},
{
label: '物品信息',
prop: 'wpxx',
span: 3,
type: 'input',
value: ''
},
{
label: '案件号',
prop: 'ajbm',
span: 4,
span: 3,
type: 'input',
value: ''
},
......@@ -132,13 +191,29 @@
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 12,
span: 6,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '仓库',
prop: 'ckid',
span: 4,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
},
},
]
],
],
......@@ -147,38 +222,51 @@
},
methods: {
tz(ctx){
if(ctx.singleItem&&ctx.singleItem.id){
this.$post('jcsj/u_wpgl/sync',{
id:ctx.singleItem.id
}).then(res=>{
if(res.success){
tz(ctx) {
if (ctx.singleItem && ctx.singleItem.id) {
this.$post('jcsj/u_wpgl/sync', {
id: ctx.singleItem.id
}).then(res => {
if (res.success) {
this.$success('操作成功')
ctx.refresh()
}
})
}else{
} else {
this.$warning('请选择一条数据')
}
},
pz(ctx){
if (ctx.singleItem && ctx.singleItem.id) {
ctx.DialogTitle='拍照'
ctx.showDialog=true
} else {
this.$warning('请选择一条数据')
}
},
getRow(e){
getRow(e) {
this.rowItem = e
this.$refs.BasePage.queryParams.ajid=e.id
this.$refs.BasePage.queryParams.ajbm=e.ajbm
this.$refs.BasePage.queryParams.ajid = e.id
this.$refs.BasePage.queryParams.ajbm = e.ajbm
/* 单独村春数据*/
this.$refs.BasePage.CASE=e
this.$refs.BasePage.CASE = e
this.$refs.BasePage.refresh()
},
/* 示例*/
query:function(params){
return this.$post('jcsj/u_ajgl/query',params)
query: function(params) {
return this.$post('jcsj/u_ajgl/query', params)
}
},
components: {
Edit
Edit,Dialog
}
}
......
<template>
<RelDialog width="50%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<el-form slot="form" ref="form" :model="form" label-width="100px" :rules="rules">
<el-row :gutter="20" :app="this">
<EditColItem :required="item.required||false" :readonly="item.readonly?true:false " v-for="(item,index) in editColItemList " :value="item.value" :span="item.span" :label="item.label" :prop='item.prop' :key="item.prop" :type="item.type" :typeConfig='item.typeConfig' :rule="item.rule" />
</el-row>
</el-form>
</RelDialog>
</template>
<script>
import {
editMixin
} from 'common'
export default {
mixins: [editMixin],
data() {
return {
editColItemList: [
{
label: '编码',
prop: 'code',
span: 12,
type: 'input',
required:true,
},
{
label: '名称',
prop: 'name',
span: 12,
type: 'input',
required:true,
},
{
label: '备注',
prop: 'bz',
span: 24,
type: 'input'
},
]
}
}
}
</script>
<template>
<BasePage :power="{
add: false,
copy: false,
delButton: false,
editButton: false,
operateButtons: false,
workFlow: false,
/* 表格 */
showSelection: false,
saveSelected: false
}" :rowClass="rowClass" class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<!-- <el-button @click="demo(ctx.basePage)" size='mini' type="primary">示例按钮</el-button> -->
</template>
</BasePage>
</template>
<script>
// import Edit from './edit.vue'
export default {
data() {
return {
config: {
/* 基本配置*/
url: 'wpdy/kyyqjl',
tableTitle: [{
title: "序列号",
field: "xlh",
width: 140
},
{
title: "物品编码",
field: "wpbm",
width: 140
},
{
title: "物品名称",
field: "wpmc",
width: 140
},
{
title: "部门",
field: "bm",
width: 140,
"transform": {
"url": "hjbm/query",
"label": "bmmc",
"value": "bmid"
}
},
{
title: "仓库",
field: "ckmc",
width: 140
},
{
title: "调用人",
field: "dyr",
width: 140
},
{
title: "调用日期",
field: "ckmc",
width: 140,
fieldType: "ftDate"
},
{
title: "预计归还时间",
field: "yjghrq",
width: 140,
fieldType: "ftDate"
},
{
title: "实际归还日期",
field: "ckmc",
width: 140,
fieldType: "ftDate"
},
{
title: "数量",
field: "count",
}
],
queryParams: [
[{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
},
{
label: '物品信息',
prop: 'wpxx',
span: 4,
type: 'input',
value: ''
},
{
"label": "仓库",
"prop": "ckid",
"span": 4,
"type": "RelSelect",
"value": "",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
}
},
{
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 8,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '调用人',
prop: 'dyr',
span: 4,
type: 'input',
value: ''
},
]]
/* 默认启停用 */
}
}
},
methods: {
rowClass(
{
row,
rowIndex
}) {
// if(row.ckrq<row.yjghrq){
// return 'warning-row'
// }else{
// return '';
// }
}
/* 示例*/
// demo(basePage){
// }
},
components: {
// Edit
}
}
</script>
<style>
</style>
<template>
<HjRelDialog :master='false' width="70%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<el-form slot="form" ref="form" :model="form" label-width="120px" :rules="rules">
<!-- 结构-->
<div class="editMain">
<div class="editMain_left">
<!-- 扫码-->
<div class="editMain_left1">
<el-input placeholder="请输入序列号" v-model="xlh" class="input-with-select">
<el-button @click="cxxlh" slot="append" icon="el-icon-search"></el-button>
</el-input>
</div>
<div class="editMain_left2">
<editTableForEdit :expandTitle='false' :rename="'选择物品'" code="SHHJTHINGSWLX7" :indexApp='app' :type='type' @save='save' ref="editTableForEdit"
:editTableTitle='editTableTitle' v-if="editTableForEdit" :editTableData="form.details" />
</div>
</div>
<el-row class="editMain_right" :gutter="20" :app="this">
<EditColItem :required="item.required||false" :readonly="item.readonly?true:false "
v-for="(item,index) in editColItemList " :value="item.value" :span="item.span" :label="item.label"
:prop='item.prop' :key="item.prop" :type="item.type" :typeConfig='item.typeConfig' :rule="item.rule" />
</el-row>
</div>
</el-form>
</HjRelDialog>
</template>
<script>
import {
editMixin,
editMixin_expand
} from 'common'
export default {
mixins: [editMixin, editMixin_expand],
methods:{
/* 过滤序列号添加*/
filter(obj){
console.log(obj)
let xlh=obj.xlh
let iscf=false
this.form.details.forEach(item=>{
if(item.xlh==xlh){
iscf=true
}
})
if(!iscf){
this.form.details.push(obj)
}else{
console.warn(`重复序列号${obj.xlh}`)
}
},
cxxlh(){
if(this.xlh){
this.$post('jcsj/u_wpgl/query',{
xlh:this.xlh
}).then(res=>{
if(res.data.records){
if(res.data.records.length!=0){
this.filter(res.data.records[0])
this.xlh=''
}else{
this.$warning('未查询到数据')
}
}
})
}else{
this.$warning('请输入序列号')
}
},
save(list){
list.forEach(item=>{
this.filter(item)
})
}
},
data() {
return {
xlh:'',
form: {
swlx: 6,
details:[]
},
formDetail: [],
editColItemList: [
{
label: '入库单号',
prop: 'rkdh',
span: 24,
type: 'input',
},
{
label: '入库日期',
prop: 'rkrq',
span: 24,
type: 'date',
value:new Date().getTime(),
required: true,
},
{
"label": "部门",
"prop": "bm",
"span": 24,
"type": "RelSelect",
"value": "",
"required": true,
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
}
}
},
{
label: '仓库',
prop: 'ckid',
span: 24,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
// cklx: "KY"
}
},
required: true,
},
{
label: '经手人',
prop: 'jsr',
span: 24,
type: 'input',
},
{
label: '归还人',
prop: 'swlxr',
span: 24,
type: 'input',
}
],
editTableTitle: [{
title: "序号",
field: "xh",
width: 50,
align: "center"
},
{
title: "物品编码",
field: "wpbm",
width: 100,
align: "center"
},
{
title: "物品名称",
field: "wpmc",
width: 120,
align: "center"
},
{
title: "物品特征",
field: "wptz",
width: 140,
align: "center"
},
{
title: "案件编号",
field: "ajbm",
width: 90,
align: "center"
},
{
title: "案件名称",
field: "ajmc",
width: 120,
align: "center"
},
{
title: "物品持有人",
field: "wpcyr",
width: 100,
align: "center"
},
{
title: "入库数量",
field: "count",
width: 100,
align: "center"
},
{
title: "备注",
field: "bz",
width: 150,
align: "center"
}
]
}
}
}
</script>
<style lang="scss" scoped>
.editMain {
display: flex;
}
.editMain_left {
width: 70%;
min-height: 400px;
border-right: 5px solid #fff;
}
.editMain_left1 {
height: 30px;
width: 100%;
}
.editMain_left2 {
width: 100%;
height: calc(100% - 30px);
}
.editMain_right {
background-color: #eee;
width: 30%;
min-height: 400px;
padding-top: 10px;
}
</style>
<template>
<BasePage ref="basepage" :autoQuery='false' class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<AttachFileButton :app='ctx.basePage'></AttachFileButton>
</template>
</BasePage>
</template>
<script>
import Edit from './edit.vue'
export default {
/* 赋值swlx主动查询*/
mounted() {
this.$refs.basepage.queryParams.swlx = '6'
this.$refs.basepage.refresh()
},
methods: {
},
data() {
return {
config: {
/* 基本配置*/
url: 'wpdy/wpgh',
tableTitle: [{
title: "入库单号",
field: "rkdh",
fieldType: "upper",
width: 140
},
{
title: "入库日期",
field: "rkrq",
fieldType: "ftDate"
},
{
title: "仓库",
field: "ckmc",
width: 140
},
{
title: "事务类型",
field: "swlx",
width: 140,
formatter(a, b, value) {
let map = {
'1': '扣押',
'2': '先行保存库',
'3': '冻结',
'4': '查封',
'5': '登记保存',
'6': '归还入库',
'7': '调度出库',
'8': '发还出库',
'9': '调拨出库',
'10': '随案移动',
'11': '拍卖',
'12': '销毁',
'13': '解除出库',
}
return map[value]
}
},
{
title: "部门",
field: "bm",
width: 140,
"transform": {
"url": "hjbm/query",
"label": "bmmc",
"value": "bmid"
}
},
{
title: "经手人",
field: "jsr",
width: 140
},
{
label: '归还人',
prop: 'swlxr',
span: 4,
type: 'input',
value: ''
},
{
title: "备注",
field: "bz"
},
{
title: "维护人",
field: "whr"
},
{
title: "维护时间",
field: "whsj",
fieldType: "ftDateTime"
},
],
queryParams: [
[{
label: '部门',
prop: 'ssbm',
span: 4,
type: 'RelSelect',
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
},
}
},
{
"label": "仓库",
"prop": "ckid",
"span": 4,
"type": "RelSelect",
"value": "",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
cklx: 'KY'
}
}
},
{
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 8,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '入库单号',
prop: 'rkdh',
span: 4,
type: 'input',
value: ''
},
{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
}
],
[{
label: '案件信息',
prop: 'ajxx',
span: 4,
type: 'input',
value: ''
},
{
label: '归还人',
prop: 'swlxr',
span: 4,
type: 'input',
value: ''
},
]
],
}
}
},
components: {
Edit
}
}
</script>
<style>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="display: flex;height: 70vh;">
DialogTitle:'新增',
showDialog:false,
</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 {
}
},
methods: {
}
}
</script>
<style scoped>
</style>
<template>
<HjRelDialog :master='false' width="70%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<el-form slot="form" ref="form" :model="form" label-width="120px" :rules="rules">
<!-- 结构-->
<div class="editMain">
<div class="editMain_left">
<!-- 扫码-->
<div class="editMain_left1">
<el-input placeholder="请输入序列号" v-model="xlh" class="input-with-select">
<el-button @click="cxxlh" slot="append" icon="el-icon-search"></el-button>
</el-input>
</div>
<div class="editMain_left2">
<editTableForEdit :expandTitle='false' :rename="'选择物品'" code="SHHJTHING1" :indexApp='app' :type='type' @save='save' ref="editTableForEdit"
:editTableTitle='editTableTitle' v-if="editTableForEdit" :editTableData="form.details" />
</div>
</div>
<el-row class="editMain_right" :gutter="20" :app="this">
<EditColItem :required="item.required||false" :readonly="item.readonly?true:false "
v-for="(item,index) in editColItemList " :value="item.value" :span="item.span" :label="item.label"
:prop='item.prop' :key="item.prop" :type="item.type" :typeConfig='item.typeConfig' :rule="item.rule" />
</el-row>
</div>
</el-form>
</HjRelDialog>
</template>
<script>
import {
editMixin,
editMixin_expand
} from 'common'
export default {
mixins: [editMixin, editMixin_expand],
methods:{
/* 过滤序列号添加*/
filter(obj){
console.log(obj)
let xlh=obj.xlh
let iscf=false
this.form.details.forEach(item=>{
if(item.xlh==xlh){
iscf=true
}
})
if(!iscf){
this.form.details.push(obj)
}else{
console.warn(`重复序列号${obj.xlh}`)
}
},
cxxlh(){
if(this.xlh){
this.$post('jcsj/u_wpgl/query',{
xlh:this.xlh
}).then(res=>{
if(res.data.records){
if(res.data.records.length!=0){
this.filter(res.data.records[0])
this.xlh=''
}else{
this.$warning('未查询到数据')
}
}
})
}else{
this.$warning('请输入序列号')
}
},
save(list){
list.forEach(item=>{
this.filter(item)
})
}
},
data() {
return {
xlh:'',
form: {
swlx: 7,
details:[]
},
formDetail: [],
editColItemList: [
{
label: '出库单号',
prop: 'ckdh',
span: 24,
type: 'input',
},
{
label: '出库日期',
prop: 'ckrq',
span: 24,
type: 'date',
value:new Date().getTime(),
required: true,
},
{
"label": "部门",
"prop": "bm",
"span": 24,
"type": "RelSelect",
"value": "",
"required": true,
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
}
}
},
{
label: '仓库',
prop: 'ckid',
span: 24,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
// cklx: "KY"
}
},
required: true,
},
{
label: '预计归还日期',
prop: 'yjghrq',
span: 24,
type: 'date',
required: true,
},
{
label: '经手人',
prop: 'jsr',
span: 24,
type: 'input',
},
{
label: '调用人',
prop: 'dyr',
span: 24,
type: 'input',
}
],
editTableTitle: [{
title: "序号",
field: "xh",
width: 50,
align: "center"
},
{
title: "物品编码",
field: "wpbm",
width: 100,
align: "center"
},
{
title: "物品名称",
field: "wpmc",
width: 120,
align: "center"
},
{
title: "物品特征",
field: "wptz",
width: 140,
align: "center"
},
{
title: "案件编号",
field: "ajbm",
width: 90,
align: "center"
},
{
title: "案件名称",
field: "ajmc",
width: 120,
align: "center"
},
{
title: "物品持有人",
field: "wpcyr",
width: 100,
align: "center"
},
{
title: "入库数量",
field: "count",
width: 100,
align: "center"
},
{
title: "备注",
field: "bz",
width: 150,
align: "center"
}
]
}
}
}
</script>
<style lang="scss" scoped>
.editMain {
display: flex;
}
.editMain_left {
width: 70%;
min-height: 400px;
border-right: 5px solid #fff;
}
.editMain_left1 {
height: 30px;
width: 100%;
}
.editMain_left2 {
width: 100%;
height: calc(100% - 30px);
}
.editMain_right {
background-color: #eee;
width: 30%;
min-height: 400px;
padding-top: 10px;
}
</style>
<template>
<BasePage ref="basepage" :autoQuery='false' class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<AttachFileButton :app='ctx.basePage'></AttachFileButton>
</template>
</BasePage>
</template>
<script>
import Edit from './edit.vue'
export default {
/* 赋值swlx主动查询*/
mounted() {
this.$refs.basepage.queryParams.swlx = '7'
this.$refs.basepage.refresh()
},
methods: {
},
data() {
return {
config: {
/* 基本配置*/
url: 'wpdy/wpdy',
tableTitle: [{
title: "出库单号",
field: "ckdh",
fieldType: "upper",
width: 140
},
{
title: "出库日期",
field: "ckrq",
fieldType: "ftDate"
},
{
title: "预计归还日期",
field: "yjghrq",
fieldType: "ftDate"
},
{
title: "仓库",
field: "ckmc",
width: 140
},
{
title: "事务类型",
field: "swlx",
width: 140,
formatter(a, b, value) {
let map = {
'1': '扣押',
'2': '先行保存库',
'3': '冻结',
'4': '查封',
'5': '登记保存',
'6': '归还入库',
'7': '调度出库',
'8': '发还出库',
'9': '调拨出库',
'10': '随案移动',
'11': '拍卖',
'12': '销毁',
'13': '解除出库',
}
return map[value]
}
},
{
title: "部门",
field: "bm",
width: 140,
"transform": {
"url": "hjbm/query",
"label": "bmmc",
"value": "bmid"
}
},
{
title: "经手人",
field: "jsr",
width: 140
},
{
label: '调用人',
prop: 'dyr',
span: 4,
type: 'input',
value: ''
},
{
title: "备注",
field: "bz"
},
{
title: "维护人",
field: "whr"
},
{
title: "维护时间",
field: "whsj",
fieldType: "ftDateTime"
},
],
queryParams: [
[{
label: '部门',
prop: 'ssbm',
span: 4,
type: 'RelSelect',
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
},
}
},
{
"label": "仓库",
"prop": "ckid",
"span": 4,
"type": "RelSelect",
"value": "",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
cklx: 'KY'
}
}
},
{
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 8,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '出库单号',
prop: 'ckdh',
span: 4,
type: 'input',
value: ''
},
{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
}
],
[{
label: '案件信息',
prop: 'ajxx',
span: 4,
type: 'input',
value: ''
},
{
label: '调用人',
prop: 'dyr',
span: 4,
type: 'input',
value: ''
},
]
],
}
}
},
components: {
Edit
}
}
</script>
<style>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="display: flex;height: 70vh;">
DialogTitle:'新增',
showDialog:false,
</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 {
}
},
methods: {
}
}
</script>
<style scoped>
</style>
<template>
<HjRelDialog :master='false' width="70%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<el-form slot="form" ref="form" :model="form" label-width="120px" :rules="rules">
<!-- 结构-->
<div class="editMain">
<div class="editMain_left">
<!-- 扫码-->
<div class="editMain_left1">
<el-input placeholder="请输入序列号" v-model="xlh" class="input-with-select">
<el-button @click="cxxlh" slot="append" icon="el-icon-search"></el-button>
</el-input>
</div>
<div class="editMain_left2">
<editTableForEdit :expandTitle='false' :rename="'选择物品'" code="SHHJTHING1" :indexApp='app' :type='type' @save='save' ref="editTableForEdit"
:editTableTitle='editTableTitle' v-if="editTableForEdit" :editTableData="form.details" />
</div>
</div>
<el-row class="editMain_right" :gutter="20" :app="this">
<EditColItem :required="item.required||false" :readonly="item.readonly?true:false "
v-for="(item,index) in editColItemList " :value="item.value" :span="item.span" :label="item.label"
:prop='item.prop' :key="item.prop" :type="item.type" :typeConfig='item.typeConfig' :rule="item.rule" />
</el-row>
</div>
</el-form>
</HjRelDialog>
</template>
<script>
import {
editMixin,
editMixin_expand
} from 'common'
export default {
mixins: [editMixin, editMixin_expand],
methods:{
/* 过滤序列号添加*/
filter(obj){
let xlh=obj.xlh
let iscf=false
this.form.details.forEach(item=>{
if(item.xlh==xlh){
iscf=true
}
})
if(!iscf){
this.form.details.push(obj)
}else{
console.warn(`重复序列号${obj.xlh}`)
}
},
cxxlh(){
if(this.xlh){
this.$post('jcsj/u_wpgl/query',{
xlh:this.xlh
}).then(res=>{
if(res.data.records){
if(res.data.records.length!=0){
this.filter(res.data.records[0])
this.xlh=''
}else{
this.$warning('未查询到数据')
}
}
})
}else{
this.$warning('请输入序列号')
}
},
save(list){
list.forEach(item=>{
this.filter(item)
})
}
},
data() {
return {
xlh:'',
form: {
swlx: 8,
details:[]
},
formDetail: [],
editColItemList: [
{
label: '出库单号',
prop: 'ckdh',
span: 24,
type: 'input',
},
{
label: '出库日期',
prop: 'ckrq',
span: 24,
type: 'date',
value:new Date().getTime(),
required: true,
},
{
"label": "部门",
"prop": "bm",
"span": 24,
"type": "RelSelect",
"value": "",
"required": true,
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
}
}
},
{
label: '仓库',
prop: 'ckid',
span: 24,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
},
required: true,
},
{
label: '经手人',
prop: 'jsr',
span: 24,
type: 'input',
},
{
label: '发还对象',
prop: 'fhdx',
span: 24,
type: 'input',
required: true,
},
{
label: '领取人',
prop: 'lqr',
span: 24,
type: 'input',
}
],
editTableTitle: [{
title: "序号",
field: "xh",
width: 50,
align: "center"
},
{
title: "物品编码",
field: "wpbm",
width: 100,
align: "center"
},
{
title: "物品名称",
field: "wpmc",
width: 120,
align: "center"
},
{
title: "物品特征",
field: "wptz",
width: 140,
align: "center"
},
{
title: "案件编号",
field: "ajbm",
width: 90,
align: "center"
},
{
title: "案件名称",
field: "ajmc",
width: 120,
align: "center"
},
{
title: "物品持有人",
field: "wpcyr",
width: 100,
align: "center"
},
{
title: "入库数量",
field: "count",
width: 100,
align: "center"
},
{
title: "备注",
field: "bz",
width: 150,
align: "center"
}
]
}
}
}
</script>
<style lang="scss" scoped>
.editMain {
display: flex;
}
.editMain_left {
width: 70%;
min-height: 400px;
border-right: 5px solid #fff;
}
.editMain_left1 {
height: 30px;
width: 100%;
}
.editMain_left2 {
width: 100%;
height: calc(100% - 30px);
}
.editMain_right {
background-color: #eee;
width: 30%;
min-height: 400px;
padding-top: 10px;
}
</style>
<template>
<BasePage ref="basepage" :autoQuery='false' class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<AttachFileButton :app='ctx.basePage'></AttachFileButton>
</template>
</BasePage>
</template>
<script>
import Edit from './edit.vue'
export default {
/* 赋值swlx主动查询*/
mounted() {
this.$refs.basepage.queryParams.swlx = '8'
this.$refs.basepage.refresh()
},
methods: {
},
data() {
return {
config: {
/* 基本配置*/
url: 'jcsj/u_ckgl',
tableTitle: [{
title: "出库单号",
field: "ckdh",
fieldType: "upper",
width: 140
},
{
title: "出库日期",
field: "ckrq",
fieldType: "ftDate"
},
{
title: "仓库",
field: "ckmc",
width: 140
},
{
title: "事务类型",
field: "swlx",
width: 140,
formatter(a, b, value) {
let map = {
'1': '扣押',
'2': '先行保存库',
'3': '冻结',
'4': '查封',
'5': '登记保存',
'6': '归还入库',
'7': '调度出库',
'8': '发还出库',
'9': '调拨出库',
'10': '随案移动',
'11': '拍卖',
'12': '销毁',
'13': '解除出库',
}
return map[value]
}
},
{
title: "部门",
field: "bm",
width: 140,
"transform": {
"url": "hjbm/query",
"label": "bmmc",
"value": "bmid"
}
},
{
title: "发还对象",
field: "fhdx",
width: 140
},
{
title: "领取人",
field: "lqr",
width: 140
},
{
title: "经手人",
field: "jsr",
width: 140
},
{
title: "备注",
field: "bz"
}
],
queryParams: [
[{
label: '部门',
prop: 'ssbm',
span: 4,
type: 'RelSelect',
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
},
}
},
{
"label": "仓库",
"prop": "ckid",
"span": 4,
"type": "RelSelect",
"value": "",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
}
},
{
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 8,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '出库单号',
prop: 'ckdh',
span: 4,
type: 'input',
value: ''
},
{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
}
],
[{
label: '案件信息',
prop: 'ajxx',
span: 4,
type: 'input',
value: ''
}
]
],
}
}
},
components: {
Edit
}
}
</script>
<style>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="display: flex;height: 70vh;">
DialogTitle:'新增',
showDialog:false,
</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 {
}
},
methods: {
}
}
</script>
<style scoped>
</style>
<template>
<HjRelDialog :master='false' width="70%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<el-form slot="form" ref="form" :model="form" label-width="120px" :rules="rules">
<!-- 结构-->
<div class="editMain">
<div class="editMain_left">
<!-- 扫码-->
<div class="editMain_left1">
<el-input placeholder="请输入序列号" v-model="xlh" class="input-with-select">
<el-button @click="cxxlh" slot="append" icon="el-icon-search"></el-button>
</el-input>
</div>
<div class="editMain_left2">
<editTableForEdit :expandTitle='false' :rename="'选择物品'" code="SHHJTHING1" :indexApp='app' :type='type' @save='save' ref="editTableForEdit"
:editTableTitle='editTableTitle' v-if="editTableForEdit" :editTableData="form.details" />
</div>
</div>
<el-row class="editMain_right" :gutter="20" :app="this">
<EditColItem :required="item.required||false" :readonly="item.readonly?true:false "
v-for="(item,index) in editColItemList " :value="item.value" :span="item.span" :label="item.label"
:prop='item.prop' :key="item.prop" :type="item.type" :typeConfig='item.typeConfig' :rule="item.rule" />
</el-row>
</div>
</el-form>
</HjRelDialog>
</template>
<script>
import {
editMixin,
editMixin_expand
} from 'common'
export default {
mixins: [editMixin, editMixin_expand],
methods:{
/* 过滤序列号添加*/
filter(obj){
let xlh=obj.xlh
let iscf=false
this.form.details.forEach(item=>{
if(item.xlh==xlh){
iscf=true
}
})
if(!iscf){
this.form.details.push(obj)
}else{
console.warn(`重复序列号${obj.xlh}`)
}
},
cxxlh(){
if(this.xlh){
this.$post('jcsj/u_wpgl/query',{
xlh:this.xlh
}).then(res=>{
if(res.data.records){
if(res.data.records.length!=0){
this.filter(res.data.records[0])
this.xlh=''
}else{
this.$warning('未查询到数据')
}
}
})
}else{
this.$warning('请输入序列号')
}
},
save(list){
list.forEach(item=>{
this.filter(item)
})
}
},
data() {
return {
xlh:'',
form: {
swlx: 12,
details:[]
},
formDetail: [],
editColItemList: [
{
label: '出库单号',
prop: 'ckdh',
span: 24,
type: 'input',
},
{
label: '出库日期',
prop: 'ckrq',
span: 24,
type: 'date',
value:new Date().getTime(),
required: true,
},
{
"label": "部门",
"prop": "bm",
"span": 24,
"type": "RelSelect",
"value": "",
"required": true,
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
}
}
},
{
label: '仓库',
prop: 'ckid',
span: 24,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
},
required: true,
},
{
label: '销毁单位',
prop: 'xhdw',
span: 24,
type: 'input',
},
{
label: '销毁方式',
prop: 'xhfs',
span: 24,
type: 'input',
},
{
label: '经手人',
prop: 'jsr',
span: 24,
type: 'input',
}
],
editTableTitle: [{
title: "序号",
field: "xh",
width: 50,
align: "center"
},
{
title: "物品编码",
field: "wpbm",
width: 100,
align: "center"
},
{
title: "物品名称",
field: "wpmc",
width: 120,
align: "center"
},
{
title: "物品特征",
field: "wptz",
width: 140,
align: "center"
},
{
title: "案件编号",
field: "ajbm",
width: 90,
align: "center"
},
{
title: "案件名称",
field: "ajmc",
width: 120,
align: "center"
},
{
title: "物品持有人",
field: "wpcyr",
width: 100,
align: "center"
},
{
title: "入库数量",
field: "count",
width: 100,
align: "center"
},
{
title: "备注",
field: "bz",
width: 150,
align: "center"
}
]
}
}
}
</script>
<style lang="scss" scoped>
.editMain {
display: flex;
}
.editMain_left {
width: 70%;
min-height: 400px;
border-right: 5px solid #fff;
}
.editMain_left1 {
height: 30px;
width: 100%;
}
.editMain_left2 {
width: 100%;
height: calc(100% - 30px);
}
.editMain_right {
background-color: #eee;
width: 30%;
min-height: 400px;
padding-top: 10px;
}
</style>
<template>
<BasePage ref="basepage" :autoQuery='false' class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<AttachFileButton :app='ctx.basePage'></AttachFileButton>
</template>
</BasePage>
</template>
<script>
import Edit from './edit.vue'
export default {
/* 赋值swlx主动查询*/
mounted() {
this.$refs.basepage.queryParams.swlx = '12'
this.$refs.basepage.refresh()
},
methods: {
},
data() {
return {
config: {
/* 基本配置*/
url: 'jcsj/u_ckgl',
tableTitle: [{
title: "出库单号",
field: "ckdh",
fieldType: "upper",
width: 140
},
{
title: "出库日期",
field: "ckrq",
fieldType: "ftDate"
},
{
title: "部门",
field: "bm",
"transform": {
"url": "hjbm/query",
"label": "bmmc",
"value": "bmid"
}
},
{
title: "仓库",
field: "ckmc",
width: 140
},
{
title: "事务类型",
field: "swlx",
width: 140,
formatter(a, b, value) {
let map = {
'1': '扣押',
'2': '先行保存库',
'3': '冻结',
'4': '查封',
'5': '登记保存',
'6': '归还入库',
'7': '调度出库',
'8': '发还出库',
'9': '调拨出库',
'10': '随案移动',
'11': '拍卖',
'12': '销毁',
'13': '解除出库',
}
return map[value]
}
},
{
title: "经手人",
field: "jsr",
width: 140
},
],
queryParams: [
[{
label: '部门',
prop: 'ssbm',
span: 4,
type: 'RelSelect',
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
},
}
},
{
"label": "仓库",
"prop": "ckid",
"span": 4,
"type": "RelSelect",
"value": "",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
}
},
{
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 8,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '出库单号',
prop: 'ckdh',
span: 4,
type: 'input',
value: ''
},
{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
}
],
[{
label: '案件信息',
prop: 'ajxx',
span: 4,
type: 'input',
value: ''
}
]
],
}
}
},
components: {
Edit
}
}
</script>
<style>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="display: flex;height: 70vh;">
DialogTitle:'新增',
showDialog:false,
</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 {
}
},
methods: {
}
}
</script>
<style scoped>
</style>
<template>
<HjRelDialog :master='false' width="70%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<el-form slot="form" ref="form" :model="form" label-width="120px" :rules="rules">
<!-- 结构-->
<div class="editMain">
<div class="editMain_left">
<!-- 扫码-->
<div class="editMain_left1">
<el-input placeholder="请输入序列号" v-model="xlh" class="input-with-select">
<el-button @click="cxxlh" slot="append" icon="el-icon-search"></el-button>
</el-input>
</div>
<div class="editMain_left2">
<editTableForEdit :expandTitle='false' :rename="'选择物品'" code="SHHJTHING1" :indexApp='app' :type='type' @save='save' ref="editTableForEdit"
:editTableTitle='editTableTitle' v-if="editTableForEdit" :editTableData="form.details" />
</div>
</div>
<el-row class="editMain_right" :gutter="20" :app="this">
<EditColItem :required="item.required||false" :readonly="item.readonly?true:false "
v-for="(item,index) in editColItemList " :value="item.value" :span="item.span" :label="item.label"
:prop='item.prop' :key="item.prop" :type="item.type" :typeConfig='item.typeConfig' :rule="item.rule" />
</el-row>
</div>
</el-form>
</HjRelDialog>
</template>
<script>
import {
editMixin,
editMixin_expand
} from 'common'
export default {
mixins: [editMixin, editMixin_expand],
methods:{
/* 过滤序列号添加*/
filter(obj){
let xlh=obj.xlh
let iscf=false
this.form.details.forEach(item=>{
if(item.xlh==xlh){
iscf=true
}
})
if(!iscf){
this.form.details.push(obj)
}else{
console.warn(`重复序列号${obj.xlh}`)
}
},
cxxlh(){
if(this.xlh){
this.$post('jcsj/u_wpgl/query',{
xlh:this.xlh
}).then(res=>{
if(res.data.records){
if(res.data.records.length!=0){
this.filter(res.data.records[0])
this.xlh=''
}else{
this.$warning('未查询到数据')
}
}
})
}else{
this.$warning('请输入序列号')
}
},
save(list){
list.forEach(item=>{
this.filter(item)
})
}
},
data() {
return {
xlh:'',
form: {
swlx: 11,
details:[]
},
formDetail: [],
editColItemList: [
{
label: '出库单号',
prop: 'ckdh',
span: 24,
type: 'input',
},
{
label: '出库日期',
prop: 'ckrq',
span: 24,
type: 'date',
value:new Date().getTime(),
required: true,
},
{
"label": "部门",
"prop": "bm",
"span": 24,
"type": "RelSelect",
"value": "",
"required": true,
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
}
}
},
{
label: '仓库',
prop: 'ckid',
span: 24,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
},
required: true,
},
{
label: '拍得单位',
prop: 'pddw',
span: 24,
type: 'input',
},
{
label: '经手人',
prop: 'jsr',
span: 24,
type: 'input',
}
],
editTableTitle: [{
title: "序号",
field: "xh",
width: 50,
align: "center"
},
{
title: "物品编码",
field: "wpbm",
width: 100,
align: "center"
},
{
title: "物品名称",
field: "wpmc",
width: 120,
align: "center"
},
{
title: "物品特征",
field: "wptz",
width: 140,
align: "center"
},
{
title: "案件编号",
field: "ajbm",
width: 90,
align: "center"
},
{
title: "案件名称",
field: "ajmc",
width: 120,
align: "center"
},
{
title: "物品持有人",
field: "wpcyr",
width: 100,
align: "center"
},
{
title: "入库数量",
field: "count",
width: 100,
align: "center"
},
{
title: "备注",
field: "bz",
width: 150,
align: "center"
}
]
}
}
}
</script>
<style lang="scss" scoped>
.editMain {
display: flex;
}
.editMain_left {
width: 70%;
min-height: 400px;
border-right: 5px solid #fff;
}
.editMain_left1 {
height: 30px;
width: 100%;
}
.editMain_left2 {
width: 100%;
height: calc(100% - 30px);
}
.editMain_right {
background-color: #eee;
width: 30%;
min-height: 400px;
padding-top: 10px;
}
</style>
<template>
<BasePage ref="basepage" :autoQuery='false' class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<AttachFileButton :app='ctx.basePage'></AttachFileButton>
</template>
</BasePage>
</template>
<script>
import Edit from './edit.vue'
export default {
/* 赋值swlx主动查询*/
mounted() {
this.$refs.basepage.queryParams.swlx = '11'
this.$refs.basepage.refresh()
},
methods: {
},
data() {
return {
config: {
/* 基本配置*/
url: 'jcsj/u_ckgl',
tableTitle: [{
title: "出库单号",
field: "ckdh",
fieldType: "upper",
width: 140
},
{
title: "出库日期",
field: "ckrq",
fieldType: "ftDate"
},
{
title: "部门",
field: "bm",
"transform": {
"url": "hjbm/query",
"label": "bmmc",
"value": "bmid"
}
},
{
title: "仓库",
field: "ckmc",
width: 140
},
{
title: "移送单位",
field: "ysdw",
width: 140
},
{
title: "事务类型",
field: "swlx",
width: 140,
formatter(a, b, value) {
let map = {
'1': '扣押',
'2': '先行保存库',
'3': '冻结',
'4': '查封',
'5': '登记保存',
'6': '归还入库',
'7': '调度出库',
'8': '发还出库',
'9': '调拨出库',
'10': '随案移动',
'11': '拍卖',
'12': '销毁',
'13': '解除出库',
}
return map[value]
}
},
{
title: "经手人",
field: "jsr",
width: 140
},
],
queryParams: [
[{
label: '部门',
prop: 'ssbm',
span: 4,
type: 'RelSelect',
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
},
}
},
{
"label": "仓库",
"prop": "ckid",
"span": 4,
"type": "RelSelect",
"value": "",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
}
},
{
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 8,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '出库单号',
prop: 'ckdh',
span: 4,
type: 'input',
value: ''
},
{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
}
],
[{
label: '案件信息',
prop: 'ajxx',
span: 4,
type: 'input',
value: ''
},
{
label: '拍得单位',
prop: 'pddw',
span: 4,
type: 'input',
value: ''
}
]
],
}
}
},
components: {
Edit
}
}
</script>
<style>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="display: flex;height: 70vh;">
DialogTitle:'新增',
showDialog:false,
</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 {
}
},
methods: {
}
}
</script>
<style scoped>
</style>
<template>
<HjRelDialog :master='false' width="70%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<el-form slot="form" ref="form" :model="form" label-width="120px" :rules="rules">
<!-- 结构-->
<div class="editMain">
<div class="editMain_left">
<!-- 扫码-->
<div class="editMain_left1">
<el-input placeholder="请输入序列号" v-model="xlh" class="input-with-select">
<el-button @click="cxxlh" slot="append" icon="el-icon-search"></el-button>
</el-input>
</div>
<div class="editMain_left2">
<editTableForEdit :expandTitle='false' :rename="'选择物品'" code="SHHJTHING1DJBC" :indexApp='app' :type='type' @save='save' ref="editTableForEdit"
:editTableTitle='editTableTitle' v-if="editTableForEdit" :editTableData="form.details" />
</div>
</div>
<el-row class="editMain_right" :gutter="20" :app="this">
<EditColItem :required="item.required||false" :readonly="item.readonly?true:false "
v-for="(item,index) in editColItemList " :value="item.value" :span="item.span" :label="item.label"
:prop='item.prop' :key="item.prop" :type="item.type" :typeConfig='item.typeConfig' :rule="item.rule" />
</el-row>
</div>
</el-form>
</HjRelDialog>
</template>
<script>
import {
editMixin,
editMixin_expand
} from 'common'
export default {
mixins: [editMixin, editMixin_expand],
methods:{
/* 过滤序列号添加*/
filter(obj){
let xlh=obj.xlh
let iscf=false
this.form.details.forEach(item=>{
if(item.xlh==xlh){
iscf=true
}
})
if(!iscf){
this.form.details.push(obj)
}else{
console.warn(`重复序列号${obj.xlh}`)
}
},
cxxlh(){
if(this.xlh){
this.$post('jcsj/u_wpgl/query',{
xlh:this.xlh
}).then(res=>{
if(res.data.records){
if(res.data.records.length!=0){
this.filter(res.data.records[0])
this.xlh=''
}else{
this.$warning('未查询到数据')
}
}
})
}else{
this.$warning('请输入序列号')
}
},
save(list){
list.forEach(item=>{
this.filter(item)
})
}
},
data() {
return {
xlh:'',
form: {
swlx: 13,
details:[]
},
formDetail: [],
editColItemList: [
{
label: '出库单号',
prop: 'ckdh',
span: 24,
type: 'input',
},
{
label: '出库日期',
prop: 'ckrq',
span: 24,
type: 'date',
value:new Date().getTime(),
required: true,
},
{
"label": "部门",
"prop": "bm",
"span": 24,
"type": "RelSelect",
"value": "",
"required": true,
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
}
}
},
{
label: '仓库',
prop: 'ckid',
span: 24,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
cklx:'DJBC'
}
},
required: true,
},
{
label: '经手人',
prop: 'jsr',
span: 24,
type: 'input',
}
],
editTableTitle: [{
title: "序号",
field: "xh",
width: 50,
align: "center"
},
{
title: "物品编码",
field: "wpbm",
width: 100,
align: "center"
},
{
title: "物品名称",
field: "wpmc",
width: 120,
align: "center"
},
{
title: "物品特征",
field: "wptz",
width: 140,
align: "center"
},
{
title: "案件编号",
field: "ajbm",
width: 90,
align: "center"
},
{
title: "案件名称",
field: "ajmc",
width: 120,
align: "center"
},
{
title: "物品持有人",
field: "wpcyr",
width: 100,
align: "center"
},
{
title: "入库数量",
field: "count",
width: 100,
align: "center"
},
{
title: "备注",
field: "bz",
width: 150,
align: "center"
}
]
}
}
}
</script>
<style lang="scss" scoped>
.editMain {
display: flex;
}
.editMain_left {
width: 70%;
min-height: 400px;
border-right: 5px solid #fff;
}
.editMain_left1 {
height: 30px;
width: 100%;
}
.editMain_left2 {
width: 100%;
height: calc(100% - 30px);
}
.editMain_right {
background-color: #eee;
width: 30%;
min-height: 400px;
padding-top: 10px;
}
</style>
<template>
<BasePage ref="basepage" :autoQuery='false' class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<AttachFileButton :app='ctx.basePage'></AttachFileButton>
</template>
</BasePage>
</template>
<script>
import Edit from './edit.vue'
export default {
/* 赋值swlx主动查询*/
mounted() {
this.$refs.basepage.queryParams.swlx = '13'
this.$refs.basepage.refresh()
},
methods: {
},
data() {
return {
config: {
/* 基本配置*/
url: 'jcsj/u_ckgl',
tableTitle: [{
title: "出库单号",
field: "ckdh",
fieldType: "upper",
width: 140
},
{
title: "出库日期",
field: "ckrq",
fieldType: "ftDate"
},
{
title: "部门",
field: "bm",
"transform": {
"url": "hjbm/query",
"label": "bmmc",
"value": "bmid"
}
},
{
title: "仓库",
field: "ckmc",
width: 140
},
{
title: "事务类型",
field: "swlx",
width: 140,
formatter(a, b, value) {
let map = {
'1': '扣押',
'2': '先行保存库',
'3': '冻结',
'4': '查封',
'5': '登记保存',
'6': '归还入库',
'7': '调度出库',
'8': '发还出库',
'9': '调拨出库',
'10': '随案移动',
'11': '拍卖',
'12': '销毁',
'13': '解除出库',
}
return map[value]
}
},
{
title: "经手人",
field: "jsr",
width: 140
},
],
queryParams: [
[{
label: '部门',
prop: 'ssbm',
span: 4,
type: 'RelSelect',
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
},
}
},
{
"label": "仓库",
"prop": "ckid",
"span": 4,
"type": "RelSelect",
"value": "",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
cklx:'DJBC'
}
}
},
{
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 8,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '出库单号',
prop: 'ckdh',
span: 4,
type: 'input',
value: ''
},
{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
}
],
[{
label: '案件信息',
prop: 'ajxx',
span: 4,
type: 'input',
value: ''
},
]
],
}
}
},
components: {
Edit
}
}
</script>
<style>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="display: flex;height: 70vh;">
DialogTitle:'新增',
showDialog:false,
</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 {
}
},
methods: {
}
}
</script>
<style scoped>
</style>
<template>
<HjRelDialog :master='false' width="70%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<el-form slot="form" ref="form" :model="form" label-width="120px" :rules="rules">
<!-- 结构-->
<div class="editMain">
<div class="editMain_left">
<!-- 扫码-->
<div class="editMain_left1">
<el-input placeholder="请输入序列号" v-model="xlh" class="input-with-select">
<el-button @click="cxxlh" slot="append" icon="el-icon-search"></el-button>
</el-input>
</div>
<div class="editMain_left2">
<editTableForEdit :expandTitle='false' :rename="'选择物品'" code="SHHJTHING1" :indexApp='app' :type='type' @save='save' ref="editTableForEdit"
:editTableTitle='editTableTitle' v-if="editTableForEdit" :editTableData="form.details" />
</div>
</div>
<el-row class="editMain_right" :gutter="20" :app="this">
<EditColItem :required="item.required||false" :readonly="item.readonly?true:false "
v-for="(item,index) in editColItemList " :value="item.value" :span="item.span" :label="item.label"
:prop='item.prop' :key="item.prop" :type="item.type" :typeConfig='item.typeConfig' :rule="item.rule" />
</el-row>
</div>
</el-form>
</HjRelDialog>
</template>
<script>
import {
editMixin,
editMixin_expand
} from 'common'
export default {
mixins: [editMixin, editMixin_expand],
methods:{
/* 过滤序列号添加*/
filter(obj){
let xlh=obj.xlh
let iscf=false
this.form.details.forEach(item=>{
if(item.xlh==xlh){
iscf=true
}
})
if(!iscf){
this.form.details.push(obj)
}else{
console.warn(`重复序列号${obj.xlh}`)
}
},
cxxlh(){
if(this.xlh){
this.$post('jcsj/u_wpgl/query',{
xlh:this.xlh
}).then(res=>{
if(res.data.records){
if(res.data.records.length!=0){
this.filter(res.data.records[0])
this.xlh=''
}else{
this.$warning('未查询到数据')
}
}
})
}else{
this.$warning('请输入序列号')
}
},
save(list){
list.forEach(item=>{
this.filter(item)
})
}
},
data() {
return {
xlh:'',
form: {
swlx: 9,
details:[]
},
formDetail: [],
editColItemList: [
{
label: '出库单号',
prop: 'ckdh',
span: 24,
type: 'input',
},
{
label: '出库日期',
prop: 'ckrq',
span: 24,
type: 'date',
value:new Date().getTime(),
required: true,
},
{
"label": "部门",
"prop": "bm",
"span": 24,
"type": "RelSelect",
"value": "",
"required": true,
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
}
}
},
{
label: '调出仓库',
prop: 'ckid',
span: 24,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
},
required: true,
},
{
label: '调入仓库',
prop: 'msdrck',
span: 24,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
cklx:'MS'
}
},
required: true,
},
{
label: '经手人',
prop: 'jsr',
span: 24,
type: 'input',
}
],
editTableTitle: [{
title: "序号",
field: "xh",
width: 50,
align: "center"
},
{
title: "物品编码",
field: "wpbm",
width: 100,
align: "center"
},
{
title: "物品名称",
field: "wpmc",
width: 120,
align: "center"
},
{
title: "物品特征",
field: "wptz",
width: 140,
align: "center"
},
{
title: "案件编号",
field: "ajbm",
width: 90,
align: "center"
},
{
title: "案件名称",
field: "ajmc",
width: 120,
align: "center"
},
{
title: "物品持有人",
field: "wpcyr",
width: 100,
align: "center"
},
{
title: "入库数量",
field: "count",
width: 100,
align: "center"
},
{
title: "备注",
field: "bz",
width: 150,
align: "center"
}
]
}
}
}
</script>
<style lang="scss" scoped>
.editMain {
display: flex;
}
.editMain_left {
width: 70%;
min-height: 400px;
border-right: 5px solid #fff;
}
.editMain_left1 {
height: 30px;
width: 100%;
}
.editMain_left2 {
width: 100%;
height: calc(100% - 30px);
}
.editMain_right {
background-color: #eee;
width: 30%;
min-height: 400px;
padding-top: 10px;
}
</style>
<template>
<BasePage ref="basepage" :autoQuery='false' class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<AttachFileButton :app='ctx.basePage'></AttachFileButton>
</template>
</BasePage>
</template>
<script>
import Edit from './edit.vue'
export default {
/* 赋值swlx主动查询*/
mounted() {
this.$refs.basepage.queryParams.swlx = '9'
this.$refs.basepage.refresh()
},
methods: {
},
data() {
return {
config: {
/* 基本配置*/
url: 'jcsj/u_ckgl',
tableTitle: [{
title: "出库单号",
field: "ckdh",
fieldType: "upper",
width: 140
},
{
title: "出库日期",
field: "ckrq",
fieldType: "ftDate"
},
{
title: "调出仓库",
field: "ckmc",
width: 140
},
{
title: "调入仓库",
field: "msdrckmc",
width: 140
},
{
title: "事务类型",
field: "swlx",
width: 140,
formatter(a, b, value) {
let map = {
'1': '扣押',
'2': '先行保存库',
'3': '冻结',
'4': '查封',
'5': '登记保存',
'6': '归还入库',
'7': '调度出库',
'8': '发还出库',
'9': '调拨出库',
'10': '随案移动',
'11': '拍卖',
'12': '销毁',
'13': '解除出库',
}
return map[value]
}
},
{
title: "经手人",
field: "jsr",
width: 140
},
{
title: "备注",
field: "bz"
}
],
queryParams: [
[{
label: '部门',
prop: 'ssbm',
span: 4,
type: 'RelSelect',
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
},
}
},
{
"label": "仓库",
"prop": "ckid",
"span": 4,
"type": "RelSelect",
"value": "",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
}
},
{
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 8,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '出库单号',
prop: 'ckdh',
span: 4,
type: 'input',
value: ''
},
{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
}
],
[{
label: '案件信息',
prop: 'ajxx',
span: 4,
type: 'input',
value: ''
}
]
],
}
}
},
components: {
Edit
}
}
</script>
<style>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="display: flex;height: 70vh;">
DialogTitle:'新增',
showDialog:false,
</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 {
}
},
methods: {
}
}
</script>
<style scoped>
</style>
<template>
<HjRelDialog :master='false' width="70%" :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<el-form slot="form" ref="form" :model="form" label-width="120px" :rules="rules">
<!-- 结构-->
<div class="editMain">
<div class="editMain_left">
<!-- 扫码-->
<div class="editMain_left1">
<el-input placeholder="请输入序列号" v-model="xlh" class="input-with-select">
<el-button @click="cxxlh" slot="append" icon="el-icon-search"></el-button>
</el-input>
</div>
<div class="editMain_left2">
<editTableForEdit :expandTitle='false' :rename="'选择物品'" code="SHHJTHING1" :indexApp='app' :type='type' @save='save' ref="editTableForEdit"
:editTableTitle='editTableTitle' v-if="editTableForEdit" :editTableData="form.details" />
</div>
</div>
<el-row class="editMain_right" :gutter="20" :app="this">
<EditColItem :required="item.required||false" :readonly="item.readonly?true:false "
v-for="(item,index) in editColItemList " :value="item.value" :span="item.span" :label="item.label"
:prop='item.prop' :key="item.prop" :type="item.type" :typeConfig='item.typeConfig' :rule="item.rule" />
</el-row>
</div>
</el-form>
</HjRelDialog>
</template>
<script>
import {
editMixin,
editMixin_expand
} from 'common'
export default {
mixins: [editMixin, editMixin_expand],
methods:{
/* 过滤序列号添加*/
filter(obj){
let xlh=obj.xlh
let iscf=false
this.form.details.forEach(item=>{
if(item.xlh==xlh){
iscf=true
}
})
if(!iscf){
this.form.details.push(obj)
}else{
console.warn(`重复序列号${obj.xlh}`)
}
},
cxxlh(){
if(this.xlh){
this.$post('jcsj/u_wpgl/query',{
xlh:this.xlh
}).then(res=>{
if(res.data.records){
if(res.data.records.length!=0){
this.filter(res.data.records[0])
this.xlh=''
}else{
this.$warning('未查询到数据')
}
}
})
}else{
this.$warning('请输入序列号')
}
},
save(list){
list.forEach(item=>{
this.filter(item)
})
}
},
data() {
return {
xlh:'',
form: {
swlx: 10,
details:[]
},
formDetail: [],
editColItemList: [
{
label: '出库单号',
prop: 'ckdh',
span: 24,
type: 'input',
},
{
label: '出库日期',
prop: 'ckrq',
span: 24,
type: 'date',
value:new Date().getTime(),
required: true,
},
{
"label": "部门",
"prop": "bm",
"span": 24,
"type": "RelSelect",
"value": "",
"required": true,
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
}
}
},
{
label: '出库仓库',
prop: 'ckid',
span: 24,
"type": "RelSelect",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
},
required: true,
},
{
label: '移送单位',
prop: 'ysdw',
span: 24,
type: 'input',
},
{
label: '经手人',
prop: 'jsr',
span: 24,
type: 'input',
}
],
editTableTitle: [{
title: "序号",
field: "xh",
width: 50,
align: "center"
},
{
title: "物品编码",
field: "wpbm",
width: 100,
align: "center"
},
{
title: "物品名称",
field: "wpmc",
width: 120,
align: "center"
},
{
title: "物品特征",
field: "wptz",
width: 140,
align: "center"
},
{
title: "案件编号",
field: "ajbm",
width: 90,
align: "center"
},
{
title: "案件名称",
field: "ajmc",
width: 120,
align: "center"
},
{
title: "物品持有人",
field: "wpcyr",
width: 100,
align: "center"
},
{
title: "入库数量",
field: "count",
width: 100,
align: "center"
},
{
title: "备注",
field: "bz",
width: 150,
align: "center"
}
]
}
}
}
</script>
<style lang="scss" scoped>
.editMain {
display: flex;
}
.editMain_left {
width: 70%;
min-height: 400px;
border-right: 5px solid #fff;
}
.editMain_left1 {
height: 30px;
width: 100%;
}
.editMain_left2 {
width: 100%;
height: calc(100% - 30px);
}
.editMain_right {
background-color: #eee;
width: 30%;
min-height: 400px;
padding-top: 10px;
}
</style>
<template>
<BasePage ref="basepage" :autoQuery='false' class="min_full" :config="config">
<template #dialog="ctx">
<!-- 嵌入默认页面额外弹框的插槽 ctx.pagePage来操作默认页面 -->
</template>
<template #toolbar="ctx">
<!-- 嵌入默认页面工具栏的插槽 ctx.pagePage来操作默认页面 -->
<AttachFileButton :app='ctx.basePage'></AttachFileButton>
</template>
</BasePage>
</template>
<script>
import Edit from './edit.vue'
export default {
/* 赋值swlx主动查询*/
mounted() {
this.$refs.basepage.queryParams.swlx = '10'
this.$refs.basepage.refresh()
},
methods: {
},
data() {
return {
config: {
/* 基本配置*/
url: 'jcsj/u_ckgl',
tableTitle: [{
title: "出库单号",
field: "ckdh",
fieldType: "upper",
width: 140
},
{
title: "出库日期",
field: "ckrq",
fieldType: "ftDate"
},
{
title: "部门",
field: "bm",
"transform": {
"url": "hjbm/query",
"label": "bmmc",
"value": "bmid"
}
},
{
title: "仓库",
field: "ckmc",
width: 140
},
{
title: "移送单位",
field: "ysdw",
width: 140
},
{
title: "事务类型",
field: "swlx",
width: 140,
formatter(a, b, value) {
let map = {
'1': '扣押',
'2': '先行保存库',
'3': '冻结',
'4': '查封',
'5': '登记保存',
'6': '归还入库',
'7': '调度出库',
'8': '发还出库',
'9': '调拨出库',
'10': '随案移动',
'11': '拍卖',
'12': '销毁',
'13': '解除出库',
}
return map[value]
}
},
{
title: "经手人",
field: "jsr",
width: 140
},
],
queryParams: [
[{
label: '部门',
prop: 'ssbm',
span: 4,
type: 'RelSelect',
"typeConfig": {
"src": "hjbm/query",
"match": {
"value": "bmid",
"label": "bmmc"
},
}
},
{
"label": "仓库",
"prop": "ckid",
"span": 4,
"type": "RelSelect",
"value": "",
"typeConfig": {
"src": "jcsj/u_ckwh/query",
"match": {
"value": "id",
"label": "ckmc"
},
params: {
}
}
},
{
label: '维护时间',
startProp: "kssj",
endProp: "jssj",
span: 8,
type: 'RelDaterangeV2',
startValue: new Date().getTime() - 1000 * 60 * 60 * 24 * 30,
endValue: new Date().getTime(),
},
{
label: '出库单号',
prop: 'ckdh',
span: 4,
type: 'input',
value: ''
},
{
label: '序列号',
prop: 'xlh',
span: 4,
type: 'input',
value: ''
}
],
[{
label: '案件信息',
prop: 'ajxx',
span: 4,
type: 'input',
value: ''
},
{
label: '移送单位',
prop: 'ysdw',
span: 4,
type: 'input',
value: ''
}
]
],
}
}
},
components: {
Edit
}
}
</script>
<style>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="display: flex;height: 70vh;">
DialogTitle:'新增',
showDialog:false,
</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 {
}
},
methods: {
}
}
</script>
<style scoped>
</style>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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