From 4d5d871dd1cdc90cd1d913a0c696b7662b9d17e0 Mon Sep 17 00:00:00 2001 From: houshuai <17802598606@163.com> Date: 星期一, 30 六月 2025 17:12:36 +0800 Subject: [PATCH] 线边库基本页面搭建 --- src/views/lsw/modules/LswMaterialModal.vue | 64 + src/views/lsw/modules/LswMaterialInventoryForm.vue | 129 +++ src/views/lsw/modules/LswMaterialInventoryModal.vue | 60 + src/views/lsw/LswMaterialOutboundList.vue | 219 +++++ src/views/lsw/modules/LswMaterialForm.vue | 220 +++++ src/views/lsw/LswMaterialInventoryList.vue | 201 +++++ src/views/lsw/modules/LswMaterialOutboundModal.vue | 60 + src/views/lsw/modules/LswMaterialOutboundForm.vue | 144 +++ yarn.lock | 285 +++++++ src/views/lsw/modules/LswMaterialInboundModal.vue | 60 + src/views/lsw/LswMaterialInboundList.vue | 219 +++++ src/views/lsw/modules/LswMaterialInboundForm.vue | 144 +++ src/views/lsw/LswMateriaView.vue | 232 ++++++ src/views/lsw/LswMaterialList.vue | 196 +++++ 14 files changed, 2,229 insertions(+), 4 deletions(-) diff --git a/src/views/lsw/LswMateriaView.vue b/src/views/lsw/LswMateriaView.vue new file mode 100644 index 0000000..0b726ef --- /dev/null +++ b/src/views/lsw/LswMateriaView.vue @@ -0,0 +1,232 @@ +<template> + <a-card + :bordered="false" + title="绾胯竟搴撶墿鏂欎俊鎭�" + > + <a-button @click="handleAdd" type="primary" icon="plus">鏂板鐗╂枡淇℃伅-娴嬭瘯</a-button> + <a-spin :spinning="confirmLoading"> + <div> + <!-- 涓昏〃鍗曞尯鍩� --> + <a-table + ref="table" + size="middle" + bordered + rowKey="id" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + :rowSelection="{ selectedRowKeys: selectedRowKeys, + onChange: onSelectChange, + type: 'radio'}" + @change="handleTableChange"> + </a-table> + </div> + <!-- 瀛愯〃鍗曞尯鍩� --> + <a-tabs v-model="activeKey" @change="handleChangeTabs"> + <a-tab-pane tab="鐗╂枡搴撳瓨淇℃伅" :key="refKeys[0]" :forceRender="true"> + <div style="display: flex; align-items: center; margin-bottom: 10px;"> + <span style="margin-right: 10px;">鐗╂枡搴撳瓨淇℃伅</span> + <a-tag color="green" style="font-weight: bold;"> + 搴撳瓨鎬婚噺锛歿{ totalInventoryQuantity }} + </a-tag> + </div> + <j-vxe-table + keep-source + :ref="refKeys[0]" + :loading="lswMaterialInventoryTable.loading" + :columns="lswMaterialInventoryTable.columns" + :dataSource="lswMaterialInventoryTable.dataSource" + :maxHeight="300" + :rowNumber="true" + :rowSelection="true" + :toolbar="false" + /> + </a-tab-pane> + </a-tabs> + </a-spin> + <lsw-material-modal ref="modalForm" @ok="modalFormOk" /> + </a-card> +</template> + +<script> + +import { getAction } from '@/api/manage' +import { JVxeTableModelMixin } from '@/mixins/JVxeTableModelMixin.js' +import { JVXETypes } from '@/components/jeecg/JVxeTable' +import { getRefPromise, VALIDATE_FAILED } from '@/components/jeecg/JVxeTable/utils/vxeUtils.js' +import { validateDuplicateValue } from '@/utils/util' +import JFormContainer from '@/components/jeecg/JFormContainer' +import { JeecgListMixin } from '@/mixins/JeecgListMixin' +import LswMaterialModal from '@views/lsw/modules/LswMaterialModal.vue' + +export default { + name: 'LswMaterialForm', + mixins: [JVxeTableModelMixin, JeecgListMixin], + components: { + LswMaterialModal, + JFormContainer + }, + data() { + return { + labelCol: { + xs: { span: 24 }, + sm: { span: 5 } + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 } + }, + model: {}, + // 鏂板鏃跺瓙琛ㄩ粯璁ゆ坊鍔犲嚑琛岀┖鏁版嵁 + addDefaultRowNum: 1, + validatorRules: {}, + selectedRowKeys: [], // 鍒濆鍖栦负绌烘暟缁勶紙鍗曢�夋椂瀛樺偍鍗曚釜key锛� + selectedRowData: null, + refKeys: ['lswMaterialInventory'], + tableKeys: ['lswMaterialInventory'], + activeKey: 'lswMaterialInventory', + columns: [ + { + title: '#', + dataIndex: '', + key: 'rowIndex', + width: 60, + align: 'center', + customRender: function(t, r, index) { + return parseInt(index) + 1 + } + }, + { + title: '鐗╂枡缂栫爜', + align: 'center', + dataIndex: 'materialNumber', + customRender: (text) => <strong>{text}</strong> + }, + { + title: '鐗╂枡鍚嶇О', + align: 'center', + dataIndex: 'materialName' + }, + { + title: '鐗╂枡鍨嬪彿', + align: 'center', + dataIndex: 'materialModel' + }, + { + title: '鐗╂枡绫诲瀷', + align: 'center', + dataIndex: 'materialCategory_dictText' + }, + { + title: '鍗曚綅', + align: 'center', + dataIndex: 'materialUnit' + } + ], + // 鐗╂枡搴撳瓨淇℃伅 + lswMaterialInventoryTable: { + loading: false, + dataSource: [], + columns: [ + { + title: '鎵规鍙�', + key: 'batchNumber', + type: JVXETypes.input, + width: '200px', + placeholder: '璇疯緭鍏�${title}', + defaultValue: '' + }, + { + title: '搴撳瓨绫诲瀷', + key: 'inventoryCategory', + type: JVXETypes.input, + width: '200px', + placeholder: '璇疯緭鍏�${title}', + defaultValue: '' + }, + { + title: '鏁伴噺', + key: 'quantity', + type: JVXETypes.input, + width: '200px', + placeholder: '璇疯緭鍏�${title}', + defaultValue: '' + }, + { + title: '搴撳瓨鍦癐D', + key: 'warehouseId', + type: JVXETypes.input, + width: '200px', + placeholder: '璇疯緭鍏�${title}', + defaultValue: '' + }, + { + title: '搴撳瓨鐘舵��', + key: 'inventoryStatus', + type: JVXETypes.input, + width: '200px', + placeholder: '璇疯緭鍏�${title}', + defaultValue: '' + } + ] + }, + url: { + list: '/lswmaterial/lswMaterial/list', + queryById: '/lswmaterial/lswMaterial/queryById', + lswMaterialInventory: { + list: '/lswmaterial/lswMaterial/queryLswMaterialInventoryByMainId' + } + } + } + }, + props: { + //琛ㄥ崟绂佺敤 + disabled: { + type: Boolean, + default: false, + required: false + } + }, + computed: { + formDisabled() { + return this.disabled + }, + totalInventoryQuantity() { + if (!this.lswMaterialInventoryTable.dataSource || this.lswMaterialInventoryTable.dataSource.length === 0) { + return '0'; + } + return this.lswMaterialInventoryTable.dataSource.reduce((sum, item) => { + const quantity = Number(item.quantity) || 0; + return sum + quantity; + }, 0); + }, + }, + created() { + }, + methods: { + handleCustomAdd(){ + console.log('鐐瑰嚮鏂板浜�') + }, + handleTableChange() { + console.log('test---->', this.selectedRowKeys[0]) + }, + async onSelectChange(selectedRowKeys) { + // 鍗曢�夋ā寮忎笅锛宻electedRowKeys 鏄暟缁勶紝浣嗛暱搴︽渶澶氫负1 + console.log('鐐瑰嚮浜�---->') + this.selectedRowKeys = selectedRowKeys + + // 鑾峰彇閫変腑琛岀殑瀹屾暣鏁版嵁 + if (selectedRowKeys.length > 0) { + const selectedId = selectedRowKeys[0] // 閫変腑琛岀殑id + const lswMaterialInventoryResult = await getAction(this.url.lswMaterialInventory.list, { 'id': selectedId }) + this.lswMaterialInventoryTable.dataSource = lswMaterialInventoryResult.result + } + } + + } +} +</script> + +<style scoped> +</style> \ No newline at end of file diff --git a/src/views/lsw/LswMaterialInboundList.vue b/src/views/lsw/LswMaterialInboundList.vue new file mode 100644 index 0000000..97c81f4 --- /dev/null +++ b/src/views/lsw/LswMaterialInboundList.vue @@ -0,0 +1,219 @@ +<template> + <a-card :bordered="false"> + <!-- 鏌ヨ鍖哄煙 --> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="24"> + </a-row> + </a-form> + </div> + <!-- 鏌ヨ鍖哄煙-END --> + + <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> + <div class="table-operator"> + <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button> + <a-button type="primary" icon="download" @click="handleExportXls('鐗╂枡鍏ュ簱鍗�')">瀵煎嚭</a-button> + <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel"> + <a-button type="primary" icon="import">瀵煎叆</a-button> + </a-upload> + <!-- 楂樼骇鏌ヨ鍖哄煙 --> + <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query> + <a-dropdown v-if="selectedRowKeys.length > 0"> + <a-menu slot="overlay"> + <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>鍒犻櫎</a-menu-item> + </a-menu> + <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔 <a-icon type="down" /></a-button> + </a-dropdown> + </div> + + <!-- table鍖哄煙-begin --> + <div> + <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;"> + <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>椤� + <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a> + </div> + + <a-table + ref="table" + size="middle" + :scroll="{x:true}" + bordered + rowKey="id" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + class="j-table-force-nowrap" + @change="handleTableChange"> + + <template slot="htmlSlot" slot-scope="text"> + <div v-html="text"></div> + </template> + <template slot="imgSlot" slot-scope="text,record"> + <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犲浘鐗�</span> + <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/> + </template> + <template slot="fileSlot" slot-scope="text"> + <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犳枃浠�</span> + <a-button + v-else + :ghost="true" + type="primary" + icon="download" + size="small" + @click="downloadFile(text)"> + 涓嬭浇 + </a-button> + </template> + + <span slot="action" slot-scope="text, record"> + <a @click="handleEdit(record)">缂栬緫</a> + + <a-divider type="vertical" /> + <a-dropdown> + <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a> + <a-menu slot="overlay"> + <a-menu-item> + <a @click="handleDetail(record)">璇︽儏</a> + </a-menu-item> + <a-menu-item> + <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a>鍒犻櫎</a> + </a-popconfirm> + </a-menu-item> + </a-menu> + </a-dropdown> + </span> + + </a-table> + </div> + + <lsw-material-inbound-modal ref="modalForm" @ok="modalFormOk"></lsw-material-inbound-modal> + </a-card> +</template> + +<script> + + import '@/assets/less/TableExpand.less' + import { mixinDevice } from '@/utils/mixin' + import { JeecgListMixin } from '@/mixins/JeecgListMixin' + import LswMaterialInboundModal from './modules/LswMaterialInboundModal' + + export default { + name: 'LswMaterialInboundList', + mixins:[JeecgListMixin, mixinDevice], + components: { + LswMaterialInboundModal + }, + data () { + return { + description: '鐗╂枡鍏ュ簱鍗曠鐞嗛〉闈�', + // 琛ㄥご + columns: [ + { + title: '#', + dataIndex: '', + key:'rowIndex', + width:60, + align:"center", + customRender:function (t,r,index) { + return parseInt(index)+1; + } + }, + { + title:'鍒犻櫎鏍囪', + align:"center", + dataIndex: 'delFlag' + }, + { + title:'浜х嚎ID', + align:"center", + dataIndex: 'factoryId' + }, + { + title:'搴撳瓨鍦癐D', + align:"center", + dataIndex: 'warehouseId' + }, + { + title:'鐗╂枡缂栫爜', + align:"center", + dataIndex: 'materialNumber' + }, + { + title:'鐗╂枡鍚嶇О', + align:"center", + dataIndex: 'materialName' + }, + { + title:'鎵规鍙�', + align:"center", + dataIndex: 'batchNumber' + }, + { + title:'鍏ュ簱鏁伴噺', + align:"center", + dataIndex: 'quantity' + }, + { + title:'鎺ユ敹浜�', + align:"center", + dataIndex: 'receiver' + }, + { + title:'鎺ユ敹鏃堕棿', + align:"center", + dataIndex: 'receiveTime' + }, + { + title: '鎿嶄綔', + dataIndex: 'action', + align:"center", + fixed:"right", + width:147, + scopedSlots: { customRender: 'action' } + } + ], + url: { + list: "/lswmaterialinbound/lswMaterialInbound/list", + delete: "/lswmaterialinbound/lswMaterialInbound/delete", + deleteBatch: "/lswmaterialinbound/lswMaterialInbound/deleteBatch", + exportXlsUrl: "/lswmaterialinbound/lswMaterialInbound/exportXls", + importExcelUrl: "lswmaterialinbound/lswMaterialInbound/importExcel", + + }, + dictOptions:{}, + superFieldList:[], + } + }, + created() { + this.getSuperFieldList(); + }, + computed: { + importExcelUrl: function(){ + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; + }, + }, + methods: { + initDictConfig(){ + }, + getSuperFieldList(){ + let fieldList=[]; + fieldList.push({type:'int',value:'delFlag',text:'鍒犻櫎鏍囪',dictCode:''}) + fieldList.push({type:'string',value:'factoryId',text:'浜х嚎ID',dictCode:''}) + fieldList.push({type:'string',value:'warehouseId',text:'搴撳瓨鍦癐D',dictCode:''}) + fieldList.push({type:'string',value:'materialNumber',text:'鐗╂枡缂栫爜',dictCode:''}) + fieldList.push({type:'string',value:'materialName',text:'鐗╂枡鍚嶇О',dictCode:''}) + fieldList.push({type:'string',value:'batchNumber',text:'鎵规鍙�',dictCode:''}) + fieldList.push({type:'int',value:'quantity',text:'鍏ュ簱鏁伴噺',dictCode:''}) + fieldList.push({type:'string',value:'receiver',text:'鎺ユ敹浜�',dictCode:''}) + fieldList.push({type:'datetime',value:'receiveTime',text:'鎺ユ敹鏃堕棿'}) + this.superFieldList = fieldList + } + } + } +</script> +<style scoped> + @import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/lsw/LswMaterialInventoryList.vue b/src/views/lsw/LswMaterialInventoryList.vue new file mode 100644 index 0000000..b39b983 --- /dev/null +++ b/src/views/lsw/LswMaterialInventoryList.vue @@ -0,0 +1,201 @@ +<template> + <a-card :bordered="false"> + <!-- 鏌ヨ鍖哄煙 --> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="24"> + </a-row> + </a-form> + </div> + <!-- 鏌ヨ鍖哄煙-END --> + + <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> + <div class="table-operator"> + <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button> + <a-button type="primary" icon="download" @click="handleExportXls('鐗╂枡搴撳瓨淇℃伅')">瀵煎嚭</a-button> + <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel"> + <a-button type="primary" icon="import">瀵煎叆</a-button> + </a-upload> + <!-- 楂樼骇鏌ヨ鍖哄煙 --> + <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query> + <a-dropdown v-if="selectedRowKeys.length > 0"> + <a-menu slot="overlay"> + <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>鍒犻櫎</a-menu-item> + </a-menu> + <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔 <a-icon type="down" /></a-button> + </a-dropdown> + </div> + + <!-- table鍖哄煙-begin --> + <div> + <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;"> + <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>椤� + <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a> + </div> + + <a-table + ref="table" + size="middle" + :scroll="{x:true}" + bordered + rowKey="id" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + class="j-table-force-nowrap" + @change="handleTableChange"> + + <template slot="htmlSlot" slot-scope="text"> + <div v-html="text"></div> + </template> + <template slot="imgSlot" slot-scope="text,record"> + <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犲浘鐗�</span> + <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/> + </template> + <template slot="fileSlot" slot-scope="text"> + <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犳枃浠�</span> + <a-button + v-else + :ghost="true" + type="primary" + icon="download" + size="small" + @click="downloadFile(text)"> + 涓嬭浇 + </a-button> + </template> + + <span slot="action" slot-scope="text, record"> + <a @click="handleEdit(record)">缂栬緫</a> + + <a-divider type="vertical" /> + <a-dropdown> + <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a> + <a-menu slot="overlay"> + <a-menu-item> + <a @click="handleDetail(record)">璇︽儏</a> + </a-menu-item> + <a-menu-item> + <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a>鍒犻櫎</a> + </a-popconfirm> + </a-menu-item> + </a-menu> + </a-dropdown> + </span> + + </a-table> + </div> + + <lsw-material-inventory-modal ref="modalForm" @ok="modalFormOk"></lsw-material-inventory-modal> + </a-card> +</template> + +<script> + + import '@/assets/less/TableExpand.less' + import { mixinDevice } from '@/utils/mixin' + import { JeecgListMixin } from '@/mixins/JeecgListMixin' + import LswMaterialInventoryModal from './modules/LswMaterialInventoryModal' + + export default { + name: 'LswMaterialInventoryList', + mixins:[JeecgListMixin, mixinDevice], + components: { + LswMaterialInventoryModal + }, + data () { + return { + description: '鐗╂枡搴撳瓨淇℃伅绠$悊椤甸潰', + // 琛ㄥご + columns: [ + { + title: '#', + dataIndex: '', + key:'rowIndex', + width:60, + align:"center", + customRender:function (t,r,index) { + return parseInt(index)+1; + } + }, + { + title:'鐗╂枡ID', + align:"center", + dataIndex: 'materialId' + }, + { + title:'鎵规鍙�', + align:"center", + dataIndex: 'batchNumber' + }, + { + title:'搴撳瓨绫诲瀷', + align:"center", + dataIndex: 'inventoryCategory' + }, + { + title:'鏁伴噺', + align:"center", + dataIndex: 'quantity' + }, + { + title:'搴撳瓨鍦癐D', + align:"center", + dataIndex: 'warehouseId' + }, + { + title:'搴撳瓨鐘舵��', + align:"center", + dataIndex: 'inventoryStatus' + }, + { + title: '鎿嶄綔', + dataIndex: 'action', + align:"center", + fixed:"right", + width:147, + scopedSlots: { customRender: 'action' } + } + ], + url: { + list: "/lswmaterialinventory/lswMaterialInventory/list", + delete: "/lswmaterialinventory/lswMaterialInventory/delete", + deleteBatch: "/lswmaterialinventory/lswMaterialInventory/deleteBatch", + exportXlsUrl: "/lswmaterialinventory/lswMaterialInventory/exportXls", + importExcelUrl: "lswmaterialinventory/lswMaterialInventory/importExcel", + + }, + dictOptions:{}, + superFieldList:[], + } + }, + created() { + this.getSuperFieldList(); + }, + computed: { + importExcelUrl: function(){ + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; + }, + }, + methods: { + initDictConfig(){ + }, + getSuperFieldList(){ + let fieldList=[]; + fieldList.push({type:'string',value:'materialId',text:'鐗╂枡ID',dictCode:''}) + fieldList.push({type:'string',value:'batchNumber',text:'鎵规鍙�',dictCode:''}) + fieldList.push({type:'string',value:'inventoryCategory',text:'搴撳瓨绫诲瀷',dictCode:''}) + fieldList.push({type:'string',value:'quantity',text:'鏁伴噺',dictCode:''}) + fieldList.push({type:'string',value:'warehouseId',text:'搴撳瓨鍦癐D',dictCode:''}) + fieldList.push({type:'string',value:'inventoryStatus',text:'搴撳瓨鐘舵��',dictCode:''}) + this.superFieldList = fieldList + } + } + } +</script> +<style scoped> + @import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/lsw/LswMaterialList.vue b/src/views/lsw/LswMaterialList.vue new file mode 100644 index 0000000..6fa1ffd --- /dev/null +++ b/src/views/lsw/LswMaterialList.vue @@ -0,0 +1,196 @@ +<template> + <a-card :bordered="false"> + <!-- 鏌ヨ鍖哄煙 --> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="24"> + </a-row> + </a-form> + </div> + <!-- 鏌ヨ鍖哄煙-END --> + + <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> + <div class="table-operator"> + <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button> + <a-button type="primary" icon="download" @click="handleExportXls('绾胯竟搴撶墿鏂欎俊鎭�')">瀵煎嚭</a-button> + <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel"> + <a-button type="primary" icon="import">瀵煎叆</a-button> + </a-upload> + <!-- 楂樼骇鏌ヨ鍖哄煙 --> + <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query> + <a-dropdown v-if="selectedRowKeys.length > 0"> + <a-menu slot="overlay"> + <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>鍒犻櫎</a-menu-item> + </a-menu> + <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔 <a-icon type="down" /></a-button> + </a-dropdown> + </div> + + <!-- table鍖哄煙-begin --> + <div> + <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;"> + <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>椤� + <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a> + </div> + + <a-table + ref="table" + size="middle" + bordered + rowKey="id" + class="j-table-force-nowrap" + :scroll="{x:true}" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + @change="handleTableChange"> + + <template slot="htmlSlot" slot-scope="text"> + <div v-html="text"></div> + </template> + <template slot="imgSlot" slot-scope="text,record"> + <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犲浘鐗�</span> + <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/> + </template> + <template slot="fileSlot" slot-scope="text"> + <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犳枃浠�</span> + <a-button + v-else + :ghost="true" + type="primary" + icon="download" + size="small" + @click="downloadFile(text)"> + 涓嬭浇 + </a-button> + </template> + + <span slot="action" slot-scope="text, record"> + <a @click="handleEdit(record)">缂栬緫</a> + + <a-divider type="vertical" /> + <a-dropdown> + <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a> + <a-menu slot="overlay"> + <a-menu-item> + <a @click="handleDetail(record)">璇︽儏</a> + </a-menu-item> + <a-menu-item> + <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a>鍒犻櫎</a> + </a-popconfirm> + </a-menu-item> + </a-menu> + </a-dropdown> + </span> + + </a-table> + </div> + + <lsw-material-modal ref="modalForm" @ok="modalFormOk"/> + </a-card> +</template> + +<script> + + import { JeecgListMixin } from '@/mixins/JeecgListMixin' + import LswMaterialModal from './modules/LswMaterialModal' + import {filterMultiDictText} from '@/components/dict/JDictSelectUtil' + import '@/assets/less/TableExpand.less' + + export default { + name: "LswMaterialList", + mixins:[JeecgListMixin], + components: { + LswMaterialModal + }, + data () { + return { + description: '绾胯竟搴撶墿鏂欎俊鎭鐞嗛〉闈�', + // 琛ㄥご + columns: [ + { + title: '#', + dataIndex: '', + key:'rowIndex', + width:60, + align:"center", + customRender:function (t,r,index) { + return parseInt(index)+1; + } + }, + { + title:'鐗╂枡缂栫爜', + align:"center", + dataIndex: 'materialNumber' + }, + { + title:'鐗╂枡鍚嶇О', + align:"center", + dataIndex: 'materialName' + }, + { + title:'鐗╂枡鍨嬪彿', + align:"center", + dataIndex: 'materialModel' + }, + { + title:'鐗╂枡绫诲瀷', + align:"center", + dataIndex: 'materialCategory_dictText' + }, + { + title:'鍗曚綅', + align:"center", + dataIndex: 'materialUnit' + }, + { + title: '鎿嶄綔', + dataIndex: 'action', + align:"center", + fixed:"right", + width:147, + scopedSlots: { customRender: 'action' }, + } + ], + url: { + list: "/lswmaterial/lswMaterial/list", + delete: "/lswmaterial/lswMaterial/delete", + deleteBatch: "/lswmaterial/lswMaterial/deleteBatch", + exportXlsUrl: "/lswmaterial/lswMaterial/exportXls", + importExcelUrl: "lswmaterial/lswMaterial/importExcel", + + }, + dictOptions:{}, + superFieldList:[], + } + }, + created() { + this.getSuperFieldList(); + }, + computed: { + importExcelUrl: function(){ + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; + } + }, + methods: { + initDictConfig(){ + }, + getSuperFieldList(){ + let fieldList=[]; + fieldList.push({type:'int',value:'delFlag',text:'鍒犻櫎鏍囪',dictCode:''}) + fieldList.push({type:'string',value:'materialNumber',text:'鐗╂枡缂栫爜',dictCode:''}) + fieldList.push({type:'string',value:'materialName',text:'鐗╂枡鍚嶇О',dictCode:''}) + fieldList.push({type:'string',value:'materialModel',text:'鐗╂枡鍨嬪彿',dictCode:''}) + fieldList.push({type:'string',value:'materialCategory',text:'鐗╂枡绫诲瀷',dictCode:'material_category'}) + fieldList.push({type:'string',value:'materialUnit',text:'鍗曚綅',dictCode:''}) + this.superFieldList = fieldList + } + } + } +</script> +<style scoped> + @import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/lsw/LswMaterialOutboundList.vue b/src/views/lsw/LswMaterialOutboundList.vue new file mode 100644 index 0000000..7045f44 --- /dev/null +++ b/src/views/lsw/LswMaterialOutboundList.vue @@ -0,0 +1,219 @@ +<template> + <a-card :bordered="false"> + <!-- 鏌ヨ鍖哄煙 --> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="24"> + </a-row> + </a-form> + </div> + <!-- 鏌ヨ鍖哄煙-END --> + + <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> + <div class="table-operator"> + <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button> + <a-button type="primary" icon="download" @click="handleExportXls('鐗╂枡鍑哄簱鍗�')">瀵煎嚭</a-button> + <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel"> + <a-button type="primary" icon="import">瀵煎叆</a-button> + </a-upload> + <!-- 楂樼骇鏌ヨ鍖哄煙 --> + <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query> + <a-dropdown v-if="selectedRowKeys.length > 0"> + <a-menu slot="overlay"> + <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>鍒犻櫎</a-menu-item> + </a-menu> + <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔 <a-icon type="down" /></a-button> + </a-dropdown> + </div> + + <!-- table鍖哄煙-begin --> + <div> + <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;"> + <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>椤� + <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a> + </div> + + <a-table + ref="table" + size="middle" + :scroll="{x:true}" + bordered + rowKey="id" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + class="j-table-force-nowrap" + @change="handleTableChange"> + + <template slot="htmlSlot" slot-scope="text"> + <div v-html="text"></div> + </template> + <template slot="imgSlot" slot-scope="text,record"> + <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犲浘鐗�</span> + <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/> + </template> + <template slot="fileSlot" slot-scope="text"> + <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犳枃浠�</span> + <a-button + v-else + :ghost="true" + type="primary" + icon="download" + size="small" + @click="downloadFile(text)"> + 涓嬭浇 + </a-button> + </template> + + <span slot="action" slot-scope="text, record"> + <a @click="handleEdit(record)">缂栬緫</a> + + <a-divider type="vertical" /> + <a-dropdown> + <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a> + <a-menu slot="overlay"> + <a-menu-item> + <a @click="handleDetail(record)">璇︽儏</a> + </a-menu-item> + <a-menu-item> + <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a>鍒犻櫎</a> + </a-popconfirm> + </a-menu-item> + </a-menu> + </a-dropdown> + </span> + + </a-table> + </div> + + <lsw-material-outbound-modal ref="modalForm" @ok="modalFormOk"></lsw-material-outbound-modal> + </a-card> +</template> + +<script> + + import '@/assets/less/TableExpand.less' + import { mixinDevice } from '@/utils/mixin' + import { JeecgListMixin } from '@/mixins/JeecgListMixin' + import LswMaterialOutboundModal from './modules/LswMaterialOutboundModal' + + export default { + name: 'LswMaterialOutboundList', + mixins:[JeecgListMixin, mixinDevice], + components: { + LswMaterialOutboundModal + }, + data () { + return { + description: '鐗╂枡鍑哄簱鍗曠鐞嗛〉闈�', + // 琛ㄥご + columns: [ + { + title: '#', + dataIndex: '', + key:'rowIndex', + width:60, + align:"center", + customRender:function (t,r,index) { + return parseInt(index)+1; + } + }, + { + title:'鍒犻櫎鏍囪', + align:"center", + dataIndex: 'delFlag' + }, + { + title:'鐗╂枡缂栫爜', + align:"center", + dataIndex: 'materialNumber' + }, + { + title:'鐗╂枡鍚嶇О', + align:"center", + dataIndex: 'materialName' + }, + { + title:'浜х嚎ID', + align:"center", + dataIndex: 'factoryId' + }, + { + title:'鎵规鍙�', + align:"center", + dataIndex: 'batchNumber' + }, + { + title:'鍑哄簱浜�', + align:"center", + dataIndex: 'outboundStaff' + }, + { + title:'鍑哄簱鏃堕棿', + align:"center", + dataIndex: 'outboundTime' + }, + { + title:'鍑哄簱鏁伴噺', + align:"center", + dataIndex: 'quantity' + }, + { + title:'宸ュ崟ID', + align:"center", + dataIndex: 'workOrderId' + }, + { + title: '鎿嶄綔', + dataIndex: 'action', + align:"center", + fixed:"right", + width:147, + scopedSlots: { customRender: 'action' } + } + ], + url: { + list: "/lswmaterialoutbound/lswMaterialOutbound/list", + delete: "/lswmaterialoutbound/lswMaterialOutbound/delete", + deleteBatch: "/lswmaterialoutbound/lswMaterialOutbound/deleteBatch", + exportXlsUrl: "/lswmaterialoutbound/lswMaterialOutbound/exportXls", + importExcelUrl: "lswmaterialoutbound/lswMaterialOutbound/importExcel", + + }, + dictOptions:{}, + superFieldList:[], + } + }, + created() { + this.getSuperFieldList(); + }, + computed: { + importExcelUrl: function(){ + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; + }, + }, + methods: { + initDictConfig(){ + }, + getSuperFieldList(){ + let fieldList=[]; + fieldList.push({type:'int',value:'delFlag',text:'鍒犻櫎鏍囪',dictCode:''}) + fieldList.push({type:'string',value:'materialNumber',text:'鐗╂枡缂栫爜',dictCode:''}) + fieldList.push({type:'string',value:'materialName',text:'鐗╂枡鍚嶇О',dictCode:''}) + fieldList.push({type:'string',value:'factoryId',text:'浜х嚎ID',dictCode:''}) + fieldList.push({type:'string',value:'batchNumber',text:'鎵规鍙�',dictCode:''}) + fieldList.push({type:'string',value:'outboundStaff',text:'鍑哄簱浜�',dictCode:''}) + fieldList.push({type:'datetime',value:'outboundTime',text:'鍑哄簱鏃堕棿'}) + fieldList.push({type:'string',value:'quantity',text:'鍑哄簱鏁伴噺',dictCode:''}) + fieldList.push({type:'string',value:'workOrderId',text:'宸ュ崟ID',dictCode:''}) + this.superFieldList = fieldList + } + } + } +</script> +<style scoped> + @import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/lsw/modules/LswMaterialForm.vue b/src/views/lsw/modules/LswMaterialForm.vue new file mode 100644 index 0000000..8c4958e --- /dev/null +++ b/src/views/lsw/modules/LswMaterialForm.vue @@ -0,0 +1,220 @@ +<template> + <a-spin :spinning="confirmLoading"> + <j-form-container :disabled="formDisabled"> + <!-- 涓昏〃鍗曞尯鍩� --> + <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail"> + <a-row> + <a-col :span="12" > + <a-form-model-item label="鐗╂枡缂栫爜" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialNumber"> + <a-input v-model="model.materialNumber" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12" > + <a-form-model-item label="鐗╂枡鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialName"> + <a-input v-model="model.materialName" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12" > + <a-form-model-item label="鐗╂枡鍨嬪彿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialModel"> + <a-input v-model="model.materialModel" placeholder="璇疯緭鍏ョ墿鏂欏瀷鍙�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12" > + <a-form-model-item label="鐗╂枡绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialCategory"> + <j-dict-select-tag type="list" v-model="model.materialCategory" dictCode="material_category" placeholder="璇烽�夋嫨鐗╂枡绫诲瀷" /> + </a-form-model-item> + </a-col> + <a-col :span="12" > + <a-form-model-item label="鍗曚綅" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialUnit"> + <a-input v-model="model.materialUnit" placeholder="璇疯緭鍏ュ崟浣�" ></a-input> + </a-form-model-item> + </a-col> + </a-row> + </a-form-model> + </j-form-container> + <!-- 瀛愯〃鍗曞尯鍩� --> + <a-tabs v-model="activeKey" @change="handleChangeTabs"> + <a-tab-pane tab="鐗╂枡搴撳瓨淇℃伅" :key="refKeys[0]" :forceRender="true"> + <j-vxe-table + keep-source + :ref="refKeys[0]" + :loading="lswMaterialInventoryTable.loading" + :columns="lswMaterialInventoryTable.columns" + :dataSource="lswMaterialInventoryTable.dataSource" + :maxHeight="300" + :disabled="formDisabled" + :rowNumber="true" + :rowSelection="true" + :toolbar="true" + /> + </a-tab-pane> + </a-tabs> + </a-spin> +</template> + +<script> + + import { getAction } from '@/api/manage' + import { JVxeTableModelMixin } from '@/mixins/JVxeTableModelMixin.js' + import { JVXETypes } from '@/components/jeecg/JVxeTable' + import { getRefPromise,VALIDATE_FAILED} from '@/components/jeecg/JVxeTable/utils/vxeUtils.js' + import { validateDuplicateValue } from '@/utils/util' + import JFormContainer from '@/components/jeecg/JFormContainer' + + export default { + name: 'LswMaterialForm', + mixins: [JVxeTableModelMixin], + components: { + JFormContainer, + }, + data() { + return { + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + model:{ + }, + // 鏂板鏃跺瓙琛ㄩ粯璁ゆ坊鍔犲嚑琛岀┖鏁版嵁 + addDefaultRowNum: 1, + validatorRules: { + }, + refKeys: ['lswMaterialInventory', ], + tableKeys:['lswMaterialInventory', ], + activeKey: 'lswMaterialInventory', + // 鐗╂枡搴撳瓨淇℃伅 + lswMaterialInventoryTable: { + loading: false, + dataSource: [], + columns: [ + { + title: '鐗╂枡ID', + key: 'materialId', + type: JVXETypes.input, + width:"200px", + placeholder: '璇疯緭鍏�${title}', + defaultValue:'', + }, + { + title: '鎵规鍙�', + key: 'batchNumber', + type: JVXETypes.input, + width:"200px", + placeholder: '璇疯緭鍏�${title}', + defaultValue:'', + }, + { + title: '搴撳瓨绫诲瀷', + key: 'inventoryCategory', + type: JVXETypes.input, + width:"200px", + placeholder: '璇疯緭鍏�${title}', + defaultValue:'', + }, + { + title: '鏁伴噺', + key: 'quantity', + type: JVXETypes.input, + width:"200px", + placeholder: '璇疯緭鍏�${title}', + defaultValue:'', + }, + { + title: '搴撳瓨鍦癐D', + key: 'warehouseId', + type: JVXETypes.input, + width:"200px", + placeholder: '璇疯緭鍏�${title}', + defaultValue:'', + }, + { + title: '搴撳瓨鐘舵��', + key: 'inventoryStatus', + type: JVXETypes.input, + width:"200px", + placeholder: '璇疯緭鍏�${title}', + defaultValue:'', + }, + ] + }, + url: { + add: "/lswmaterial/lswMaterial/add", + edit: "/lswmaterial/lswMaterial/edit", + queryById: "/lswmaterial/lswMaterial/queryById", + lswMaterialInventory: { + list: '/lswmaterial/lswMaterial/queryLswMaterialInventoryByMainId' + }, + } + } + }, + props: { + //琛ㄥ崟绂佺敤 + disabled: { + type: Boolean, + default: false, + required: false + } + }, + computed: { + formDisabled(){ + return this.disabled + }, + }, + created () { + }, + methods: { + addBefore(){ + this.lswMaterialInventoryTable.dataSource=[] + }, + getAllTable() { + let values = this.tableKeys.map(key => getRefPromise(this, key)) + return Promise.all(values) + }, + /** 璋冪敤瀹宔dit()鏂规硶涔嬪悗浼氳嚜鍔ㄨ皟鐢ㄦ鏂规硶 */ + editAfter() { + this.$nextTick(() => { + }) + // 鍔犺浇瀛愯〃鏁版嵁 + if (this.model.id) { + let params = { id: this.model.id } + this.requestSubTableData(this.url.lswMaterialInventory.list, params, this.lswMaterialInventoryTable) + } + }, + //鏍¢獙鎵�鏈変竴瀵逛竴瀛愯〃琛ㄥ崟 + validateSubForm(allValues){ + return new Promise((resolve,reject)=>{ + Promise.all([ + ]).then(() => { + resolve(allValues) + }).catch(e => { + if (e.error === VALIDATE_FAILED) { + // 濡傛灉鏈夋湭閫氳繃琛ㄥ崟楠岃瘉鐨勫瓙琛紝灏辫嚜鍔ㄨ烦杞埌瀹冩墍鍦ㄧ殑tab + this.activeKey = e.index == null ? this.activeKey : this.refKeys[e.index] + } else { + console.error(e) + } + }) + }) + }, + /** 鏁寸悊鎴恌ormData */ + classifyIntoFormData(allValues) { + let main = Object.assign(this.model, allValues.formValue) + return { + ...main, // 灞曞紑 + lswMaterialInventoryList: allValues.tablesValue[0].tableData, + } + }, + validateError(msg){ + this.$message.error(msg) + }, + + } + } +</script> + +<style scoped> +</style> \ No newline at end of file diff --git a/src/views/lsw/modules/LswMaterialInboundForm.vue b/src/views/lsw/modules/LswMaterialInboundForm.vue new file mode 100644 index 0000000..80c577d --- /dev/null +++ b/src/views/lsw/modules/LswMaterialInboundForm.vue @@ -0,0 +1,144 @@ +<template> + <a-spin :spinning="confirmLoading"> + <j-form-container :disabled="formDisabled"> + <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail"> + <a-row> + <a-col :span="12"> + <a-form-model-item label="鍒犻櫎鏍囪" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag"> + <a-input-number v-model="model.delFlag" placeholder="璇疯緭鍏ュ垹闄ゆ爣璁�" style="width: 100%" /> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="浜х嚎ID" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="factoryId"> + <a-input v-model="model.factoryId" placeholder="璇疯緭鍏ヤ骇绾縄D" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="搴撳瓨鍦癐D" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="warehouseId"> + <a-input v-model="model.warehouseId" placeholder="璇疯緭鍏ュ簱瀛樺湴ID" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鐗╂枡缂栫爜" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialNumber"> + <a-input v-model="model.materialNumber" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鐗╂枡鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialName"> + <a-input v-model="model.materialName" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鎵规鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="batchNumber"> + <a-input v-model="model.batchNumber" placeholder="璇疯緭鍏ユ壒娆″彿" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鍏ュ簱鏁伴噺" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="quantity"> + <a-input-number v-model="model.quantity" placeholder="璇疯緭鍏ュ叆搴撴暟閲�" style="width: 100%" /> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鎺ユ敹浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="receiver"> + <a-input v-model="model.receiver" placeholder="璇疯緭鍏ユ帴鏀朵汉" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鎺ユ敹鏃堕棿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="receiveTime"> + <j-date placeholder="璇烽�夋嫨鎺ユ敹鏃堕棿" v-model="model.receiveTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" /> + </a-form-model-item> + </a-col> + </a-row> + </a-form-model> + </j-form-container> + </a-spin> +</template> + +<script> + + import { httpAction, getAction } from '@/api/manage' + import { validateDuplicateValue } from '@/utils/util' + + export default { + name: 'LswMaterialInboundForm', + components: { + }, + props: { + //琛ㄥ崟绂佺敤 + disabled: { + type: Boolean, + default: false, + required: false + } + }, + data () { + return { + model:{ + }, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + confirmLoading: false, + validatorRules: { + }, + url: { + add: "/lswmaterialinbound/lswMaterialInbound/add", + edit: "/lswmaterialinbound/lswMaterialInbound/edit", + queryById: "/lswmaterialinbound/lswMaterialInbound/queryById" + } + } + }, + computed: { + formDisabled(){ + return this.disabled + }, + }, + created () { + //澶囦唤model鍘熷鍊� + this.modelDefault = JSON.parse(JSON.stringify(this.model)); + }, + methods: { + add () { + this.edit(this.modelDefault); + }, + edit (record) { + this.model = Object.assign({}, record); + this.visible = true; + }, + submitForm () { + const that = this; + // 瑙﹀彂琛ㄥ崟楠岃瘉 + this.$refs.form.validate(valid => { + if (valid) { + that.confirmLoading = true; + let httpurl = ''; + let method = ''; + if(!this.model.id){ + httpurl+=this.url.add; + method = 'post'; + }else{ + httpurl+=this.url.edit; + method = 'put'; + } + httpAction(httpurl,this.model,method).then((res)=>{ + if(res.success){ + that.$message.success(res.message); + that.$emit('ok'); + }else{ + that.$message.warning(res.message); + } + }).finally(() => { + that.confirmLoading = false; + }) + } + + }) + }, + } + } +</script> \ No newline at end of file diff --git a/src/views/lsw/modules/LswMaterialInboundModal.vue b/src/views/lsw/modules/LswMaterialInboundModal.vue new file mode 100644 index 0000000..45eb4f4 --- /dev/null +++ b/src/views/lsw/modules/LswMaterialInboundModal.vue @@ -0,0 +1,60 @@ +<template> + <j-modal + :title="title" + :width="width" + :visible="visible" + switchFullscreen + @ok="handleOk" + :okButtonProps="{ class:{'jee-hidden': disableSubmit} }" + @cancel="handleCancel" + cancelText="鍏抽棴"> + <lsw-material-inbound-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></lsw-material-inbound-form> + </j-modal> +</template> + +<script> + + import LswMaterialInboundForm from './LswMaterialInboundForm' + export default { + name: 'LswMaterialInboundModal', + components: { + LswMaterialInboundForm + }, + data () { + return { + title:'', + width:896, + visible: false, + disableSubmit: false + } + }, + methods: { + add () { + this.visible=true + this.$nextTick(()=>{ + this.$refs.realForm.add(); + }) + }, + edit (record) { + this.visible=true + this.$nextTick(()=>{ + this.$refs.realForm.edit(record); + }) + }, + close () { + this.$emit('close'); + this.visible = false; + }, + handleOk () { + this.$refs.realForm.submitForm(); + }, + submitCallback(){ + this.$emit('ok'); + this.visible = false; + }, + handleCancel () { + this.close() + } + } + } +</script> \ No newline at end of file diff --git a/src/views/lsw/modules/LswMaterialInventoryForm.vue b/src/views/lsw/modules/LswMaterialInventoryForm.vue new file mode 100644 index 0000000..79637ba --- /dev/null +++ b/src/views/lsw/modules/LswMaterialInventoryForm.vue @@ -0,0 +1,129 @@ +<template> + <a-spin :spinning="confirmLoading"> + <j-form-container :disabled="formDisabled"> + <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail"> + <a-row> + <a-col :span="12"> + <a-form-model-item label="鐗╂枡ID" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialId"> + <a-input v-model="model.materialId" placeholder="璇疯緭鍏ョ墿鏂橧D" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鎵规鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="batchNumber"> + <a-input v-model="model.batchNumber" placeholder="璇疯緭鍏ユ壒娆″彿" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="搴撳瓨绫诲瀷" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="inventoryCategory"> + <a-input v-model="model.inventoryCategory" placeholder="璇疯緭鍏ュ簱瀛樼被鍨�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鏁伴噺" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="quantity"> + <a-input v-model="model.quantity" placeholder="璇疯緭鍏ユ暟閲�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="搴撳瓨鍦癐D" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="warehouseId"> + <a-input v-model="model.warehouseId" placeholder="璇疯緭鍏ュ簱瀛樺湴ID" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="搴撳瓨鐘舵��" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="inventoryStatus"> + <a-input v-model="model.inventoryStatus" placeholder="璇疯緭鍏ュ簱瀛樼姸鎬�" ></a-input> + </a-form-model-item> + </a-col> + </a-row> + </a-form-model> + </j-form-container> + </a-spin> +</template> + +<script> + + import { httpAction, getAction } from '@/api/manage' + import { validateDuplicateValue } from '@/utils/util' + + export default { + name: 'LswMaterialInventoryForm', + components: { + }, + props: { + //琛ㄥ崟绂佺敤 + disabled: { + type: Boolean, + default: false, + required: false + } + }, + data () { + return { + model:{ + }, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + confirmLoading: false, + validatorRules: { + }, + url: { + add: "/lswmaterialinventory/lswMaterialInventory/add", + edit: "/lswmaterialinventory/lswMaterialInventory/edit", + queryById: "/lswmaterialinventory/lswMaterialInventory/queryById" + } + } + }, + computed: { + formDisabled(){ + return this.disabled + }, + }, + created () { + //澶囦唤model鍘熷鍊� + this.modelDefault = JSON.parse(JSON.stringify(this.model)); + }, + methods: { + add () { + this.edit(this.modelDefault); + }, + edit (record) { + this.model = Object.assign({}, record); + this.visible = true; + }, + submitForm () { + const that = this; + // 瑙﹀彂琛ㄥ崟楠岃瘉 + this.$refs.form.validate(valid => { + if (valid) { + that.confirmLoading = true; + let httpurl = ''; + let method = ''; + if(!this.model.id){ + httpurl+=this.url.add; + method = 'post'; + }else{ + httpurl+=this.url.edit; + method = 'put'; + } + httpAction(httpurl,this.model,method).then((res)=>{ + if(res.success){ + that.$message.success(res.message); + that.$emit('ok'); + }else{ + that.$message.warning(res.message); + } + }).finally(() => { + that.confirmLoading = false; + }) + } + + }) + }, + } + } +</script> \ No newline at end of file diff --git a/src/views/lsw/modules/LswMaterialInventoryModal.vue b/src/views/lsw/modules/LswMaterialInventoryModal.vue new file mode 100644 index 0000000..5dc57c4 --- /dev/null +++ b/src/views/lsw/modules/LswMaterialInventoryModal.vue @@ -0,0 +1,60 @@ +<template> + <j-modal + :title="title" + :width="width" + :visible="visible" + switchFullscreen + @ok="handleOk" + :okButtonProps="{ class:{'jee-hidden': disableSubmit} }" + @cancel="handleCancel" + cancelText="鍏抽棴"> + <lsw-material-inventory-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></lsw-material-inventory-form> + </j-modal> +</template> + +<script> + + import LswMaterialInventoryForm from './LswMaterialInventoryForm' + export default { + name: 'LswMaterialInventoryModal', + components: { + LswMaterialInventoryForm + }, + data () { + return { + title:'', + width:896, + visible: false, + disableSubmit: false + } + }, + methods: { + add () { + this.visible=true + this.$nextTick(()=>{ + this.$refs.realForm.add(); + }) + }, + edit (record) { + this.visible=true + this.$nextTick(()=>{ + this.$refs.realForm.edit(record); + }) + }, + close () { + this.$emit('close'); + this.visible = false; + }, + handleOk () { + this.$refs.realForm.submitForm(); + }, + submitCallback(){ + this.$emit('ok'); + this.visible = false; + }, + handleCancel () { + this.close() + } + } + } +</script> \ No newline at end of file diff --git a/src/views/lsw/modules/LswMaterialModal.vue b/src/views/lsw/modules/LswMaterialModal.vue new file mode 100644 index 0000000..b7b424f --- /dev/null +++ b/src/views/lsw/modules/LswMaterialModal.vue @@ -0,0 +1,64 @@ +<template> + <j-modal + :title="title" + :width="1200" + :visible="visible" + :maskClosable="false" + switchFullscreen + @ok="handleOk" + :okButtonProps="{ class:{'jee-hidden': disableSubmit} }" + @cancel="handleCancel"> + <lsw-material-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"/> + </j-modal> +</template> + +<script> + + import LswMaterialForm from './LswMaterialForm' + + export default { + name: 'LswMaterialModal', + components: { + LswMaterialForm + }, + data() { + return { + title:'', + width:800, + visible: false, + disableSubmit: false + } + }, + methods:{ + add () { + this.visible=true + this.$nextTick(()=>{ + this.$refs.realForm.add(); + }) + }, + edit (record) { + this.visible=true + this.$nextTick(()=>{ + this.$refs.realForm.edit(record); + }) + }, + close () { + this.$emit('close'); + this.visible = false; + }, + handleOk () { + this.$refs.realForm.handleOk(); + }, + submitCallback(){ + this.$emit('ok'); + this.visible = false; + }, + handleCancel () { + this.close() + } + } + } +</script> + +<style scoped> +</style> \ No newline at end of file diff --git a/src/views/lsw/modules/LswMaterialOutboundForm.vue b/src/views/lsw/modules/LswMaterialOutboundForm.vue new file mode 100644 index 0000000..eebe46f --- /dev/null +++ b/src/views/lsw/modules/LswMaterialOutboundForm.vue @@ -0,0 +1,144 @@ +<template> + <a-spin :spinning="confirmLoading"> + <j-form-container :disabled="formDisabled"> + <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail"> + <a-row> + <a-col :span="12"> + <a-form-model-item label="鍒犻櫎鏍囪" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag"> + <a-input-number v-model="model.delFlag" placeholder="璇疯緭鍏ュ垹闄ゆ爣璁�" style="width: 100%" /> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鐗╂枡缂栫爜" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialNumber"> + <a-input v-model="model.materialNumber" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鐗╂枡鍚嶇О" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="materialName"> + <a-input v-model="model.materialName" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="浜х嚎ID" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="factoryId"> + <a-input v-model="model.factoryId" placeholder="璇疯緭鍏ヤ骇绾縄D" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鎵规鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="batchNumber"> + <a-input v-model="model.batchNumber" placeholder="璇疯緭鍏ユ壒娆″彿" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鍑哄簱浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="outboundStaff"> + <a-input v-model="model.outboundStaff" placeholder="璇疯緭鍏ュ嚭搴撲汉" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鍑哄簱鏃堕棿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="outboundTime"> + <j-date placeholder="璇烽�夋嫨鍑哄簱鏃堕棿" v-model="model.outboundTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" /> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="鍑哄簱鏁伴噺" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="quantity"> + <a-input v-model="model.quantity" placeholder="璇疯緭鍏ュ嚭搴撴暟閲�" ></a-input> + </a-form-model-item> + </a-col> + <a-col :span="12"> + <a-form-model-item label="宸ュ崟ID" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="workOrderId"> + <a-input v-model="model.workOrderId" placeholder="璇疯緭鍏ュ伐鍗旾D" ></a-input> + </a-form-model-item> + </a-col> + </a-row> + </a-form-model> + </j-form-container> + </a-spin> +</template> + +<script> + + import { httpAction, getAction } from '@/api/manage' + import { validateDuplicateValue } from '@/utils/util' + + export default { + name: 'LswMaterialOutboundForm', + components: { + }, + props: { + //琛ㄥ崟绂佺敤 + disabled: { + type: Boolean, + default: false, + required: false + } + }, + data () { + return { + model:{ + }, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + confirmLoading: false, + validatorRules: { + }, + url: { + add: "/lswmaterialoutbound/lswMaterialOutbound/add", + edit: "/lswmaterialoutbound/lswMaterialOutbound/edit", + queryById: "/lswmaterialoutbound/lswMaterialOutbound/queryById" + } + } + }, + computed: { + formDisabled(){ + return this.disabled + }, + }, + created () { + //澶囦唤model鍘熷鍊� + this.modelDefault = JSON.parse(JSON.stringify(this.model)); + }, + methods: { + add () { + this.edit(this.modelDefault); + }, + edit (record) { + this.model = Object.assign({}, record); + this.visible = true; + }, + submitForm () { + const that = this; + // 瑙﹀彂琛ㄥ崟楠岃瘉 + this.$refs.form.validate(valid => { + if (valid) { + that.confirmLoading = true; + let httpurl = ''; + let method = ''; + if(!this.model.id){ + httpurl+=this.url.add; + method = 'post'; + }else{ + httpurl+=this.url.edit; + method = 'put'; + } + httpAction(httpurl,this.model,method).then((res)=>{ + if(res.success){ + that.$message.success(res.message); + that.$emit('ok'); + }else{ + that.$message.warning(res.message); + } + }).finally(() => { + that.confirmLoading = false; + }) + } + + }) + }, + } + } +</script> \ No newline at end of file diff --git a/src/views/lsw/modules/LswMaterialOutboundModal.vue b/src/views/lsw/modules/LswMaterialOutboundModal.vue new file mode 100644 index 0000000..a5203a2 --- /dev/null +++ b/src/views/lsw/modules/LswMaterialOutboundModal.vue @@ -0,0 +1,60 @@ +<template> + <j-modal + :title="title" + :width="width" + :visible="visible" + switchFullscreen + @ok="handleOk" + :okButtonProps="{ class:{'jee-hidden': disableSubmit} }" + @cancel="handleCancel" + cancelText="鍏抽棴"> + <lsw-material-outbound-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></lsw-material-outbound-form> + </j-modal> +</template> + +<script> + + import LswMaterialOutboundForm from './LswMaterialOutboundForm' + export default { + name: 'LswMaterialOutboundModal', + components: { + LswMaterialOutboundForm + }, + data () { + return { + title:'', + width:896, + visible: false, + disableSubmit: false + } + }, + methods: { + add () { + this.visible=true + this.$nextTick(()=>{ + this.$refs.realForm.add(); + }) + }, + edit (record) { + this.visible=true + this.$nextTick(()=>{ + this.$refs.realForm.edit(record); + }) + }, + close () { + this.$emit('close'); + this.visible = false; + }, + handleOk () { + this.$refs.realForm.submitForm(); + }, + submitCallback(){ + this.$emit('ok'); + this.visible = false; + }, + handleCancel () { + this.close() + } + } + } +</script> \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 7e59d1e..880d6b2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -355,10 +355,20 @@ dependencies: "@babel/types" "^7.10.4" +"@babel/helper-string-parser@^7.27.1": + version "7.27.1" + resolved "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz#54da796097ab19ce67ed9f88b47bb2ec49367687" + integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== + "@babel/helper-validator-identifier@^7.10.4": version "7.10.4" resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" integrity sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw== + +"@babel/helper-validator-identifier@^7.27.1": + version "7.27.1" + resolved "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz#a7054dcc145a967dd4dc8fee845a57c1316c9df8" + integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== "@babel/helper-wrap-function@^7.10.4": version "7.10.4" @@ -392,6 +402,13 @@ version "7.10.4" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.10.4.tgz#9eedf27e1998d87739fb5028a5120557c06a1a64" integrity sha512-8jHII4hf+YVDsskTF6WuMB3X4Eh+PsUkC2ljq22so5rHvH+T8BzyL94VOdyFLNR8tBSVXOTbNHOKpR4TfRxVtA== + +"@babel/parser@^7.23.5": + version "7.27.7" + resolved "https://registry.npmmirror.com/@babel/parser/-/parser-7.27.7.tgz#1687f5294b45039c159730e3b9c1f1b242e425e9" + integrity sha512-qnzXzDXdr/po3bOTbTIQZ7+TxNKxpkN5IifVLXS+r7qwynkZfPyjZfE7hCXbo7IoO9TNcSyibgONsf2HauUd3Q== + dependencies: + "@babel/types" "^7.27.7" "@babel/plugin-proposal-async-generator-functions@^7.2.0": version "7.10.4" @@ -861,6 +878,14 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" +"@babel/types@^7.27.7": + version "7.27.7" + resolved "https://registry.npmmirror.com/@babel/types/-/types-7.27.7.tgz#40eabd562049b2ee1a205fa589e629f945dce20f" + integrity sha512-8OLQgDScAOHXnAz2cV+RfzzNMipuLVBz2biuAJFMV9bfkNf393je3VM8CLkjQodW5+iWsSJdSgSWT6rsZoXHPw== + dependencies: + "@babel/helper-string-parser" "^7.27.1" + "@babel/helper-validator-identifier" "^7.27.1" + "@hapi/address@2.x.x": version "2.1.4" resolved "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz#5d67ed43f3fd41a69d4b9ff7b56e7c0d1d0a81e5" @@ -1315,6 +1340,17 @@ request-promise-native "^1.0.7" semver "^6.0.0" string.prototype.padstart "^3.0.0" + +"@vue/compiler-sfc@2.7.16": + version "2.7.16" + resolved "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-2.7.16.tgz#ff81711a0fac9c68683d8bb00b63f857de77dc83" + integrity sha512-KWhJ9k5nXuNtygPU7+t1rX6baZeqOYLEforUPjgNDBnLicfHCoi48H87Q8XyLZOrNNsmhuwKqtpDQWjEFe6Ekg== + dependencies: + "@babel/parser" "^7.23.5" + postcss "^8.4.14" + source-map "^0.6.1" + optionalDependencies: + prettier "^1.18.2 || ^2.0.0" "@vue/component-compiler-utils@^3.0.0", "@vue/component-compiler-utils@^3.1.0": version "3.1.2" @@ -1919,6 +1955,13 @@ resolved "https://registry.npmjs.org/async-validator/-/async-validator-3.3.0.tgz#1d92193bbe60d6d6c8b246692c7005e9ed14a8ee" integrity sha512-cAHGD9EL8aCqWXjnb44q94MWiDFzUo1tMhvLb2WzcpWqGiKugsjWG9cvl+jPgkPca7asNbsBU3fa0cwkI/P+Xg== +async-validator@~1.8.1: + version "1.8.5" + resolved "https://registry.npmmirror.com/async-validator/-/async-validator-1.8.5.tgz#dc3e08ec1fd0dddb67e60842f02c0cd1cec6d7f0" + integrity sha512-tXBM+1m056MAX0E8TL2iCjg8WvSyXu0Zc8LNtYqrVeyoL3+esHRZ4SieE9fKQyyU09uONjnMEjrNBMqT0mbvmA== + dependencies: + babel-runtime "6.x" + async@^2.1.2, async@^2.4.1, async@^2.6.2: version "2.6.3" resolved "https://registry.npmjs.org/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" @@ -2164,7 +2207,7 @@ babel-traverse "^6.24.1" babel-types "^6.24.1" -babel-helper-vue-jsx-merge-props@^2.0.3: +babel-helper-vue-jsx-merge-props@^2.0.0, babel-helper-vue-jsx-merge-props@^2.0.3: version "2.0.3" resolved "https://registry.npmjs.org/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-2.0.3.tgz#22aebd3b33902328e513293a8e4992b384f9f1b6" integrity sha512-gsLiKK7Qrb7zYJNgiXKpXblxbV5ffSwR0f5whkPAaBAR4fhi6bwRZxX9wBlIc5M/v8CCkXUbXZL4N/nSE97cqg== @@ -2696,6 +2739,31 @@ version "1.0.0" resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= + +bpmn-js@^7.2.1: + version "7.5.0" + resolved "https://registry.npmmirror.com/bpmn-js/-/bpmn-js-7.5.0.tgz#0e4675acdbdff676db859f8cb7ec395d20e7bbd8" + integrity sha512-0ANaE6Bikg1GmkcvO7RK0MQPX+EKYKBc+q7OWk39/16NcCdNZ/4UiRcCr9n0u1VUCIDsSU/jJ79TIZFnV5CNjw== + dependencies: + bpmn-moddle "^7.0.4" + css.escape "^1.5.1" + diagram-js "^6.8.2" + diagram-js-direct-editing "^1.6.1" + ids "^1.0.0" + inherits "^2.0.4" + min-dash "^3.5.2" + min-dom "^3.1.3" + object-refs "^0.3.0" + tiny-svg "^2.2.2" + +bpmn-moddle@^7.0.4: + version "7.1.3" + resolved "https://registry.npmmirror.com/bpmn-moddle/-/bpmn-moddle-7.1.3.tgz#5b4592001e8f23dbdb18c557531e06489462bf42" + integrity sha512-ZcBfw0NSOdYTSXFKEn7MOXHItz7VfLZTrFYKO8cK6V8ZzGjCcdiLIOiw7Lctw1PJsihhLiZQS8Htj2xKf+NwCg== + dependencies: + min-dash "^3.5.2" + moddle "^5.0.2" + moddle-xml "^9.0.6" brace-expansion@^1.1.7: version "1.1.11" @@ -3497,6 +3565,11 @@ resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== +component-event@^0.1.4: + version "0.1.4" + resolved "https://registry.npmmirror.com/component-event/-/component-event-0.1.4.tgz#3de78fc28782381787e24bf2a7c536bf0142c9b4" + integrity sha512-GMwOG8MnUHP1l8DZx1ztFO0SJTFnIzZnBDkXAj8RM2ntV2A6ALlDxgbMY1Fvxlg6WPQ+5IM/a6vg4PEYbjg/Rw== + component-indexof@0.0.3: version "0.0.3" resolved "https://registry.npmjs.org/component-indexof/-/component-indexof-0.0.3.tgz#11d091312239eb8f32c8f25ae9cb002ffe8d3c24" @@ -3904,6 +3977,11 @@ resolved "https://registry.npmjs.org/css-what/-/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39" integrity sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg== +css.escape@^1.5.1: + version "1.5.1" + resolved "https://registry.npmmirror.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb" + integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg== + css@^2.0.0: version "2.2.4" resolved "https://registry.npmjs.org/css/-/css-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929" @@ -4044,6 +4122,11 @@ dependencies: clap "^1.0.9" source-map "^0.5.3" + +csstype@^3.1.0: + version "3.1.3" + resolved "https://registry.npmmirror.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== current-script-polyfill@^1.0.0: version "1.0.0" @@ -4301,9 +4384,9 @@ resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= -deepmerge@^1.5.2: +deepmerge@^1.2.0, deepmerge@^1.5.2: version "1.5.2" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-1.5.2.tgz#10499d868844cdad4fee0842df8c7f6f0c95a753" + resolved "https://registry.npmmirror.com/deepmerge/-/deepmerge-1.5.2.tgz#10499d868844cdad4fee0842df8c7f6f0c95a753" integrity sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ== default-gateway@^4.2.0: @@ -4432,6 +4515,34 @@ resolved "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== +diagram-js-direct-editing@^1.6.1: + version "1.8.0" + resolved "https://registry.npmmirror.com/diagram-js-direct-editing/-/diagram-js-direct-editing-1.8.0.tgz#7a178cd9203f262842a3e0023f9644e04a157858" + integrity sha512-B4Xj+PJfgBjbPEzT3uZQEkZI5xHFB0Izc+7BhDFuHidzrEMzQKZrFGdA3PqfWhReHf3dp+iB6Tt11G9eGNjKMw== + dependencies: + min-dash "^3.5.2" + min-dom "^3.1.3" + +diagram-js@^6.8.2: + version "6.8.2" + resolved "https://registry.npmmirror.com/diagram-js/-/diagram-js-6.8.2.tgz#d3c37915c62c0cc5d95bc533098c8a35b38e67be" + integrity sha512-5EKYHjW2mmGsn9/jSenSkm8cScK5sO9eETBRQNIIzgZjxBDJn6eX964L2d7/vrAW9SeuijGUsztL9+NUinSsNg== + dependencies: + css.escape "^1.5.1" + didi "^4.0.0" + hammerjs "^2.0.1" + inherits "^2.0.1" + min-dash "^3.5.0" + min-dom "^3.1.2" + object-refs "^0.3.0" + path-intersection "^2.2.0" + tiny-svg "^2.2.1" + +didi@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/didi/-/didi-4.0.0.tgz#2b89d892a67fd3777f7642d3bf06697b69e9b622" + integrity sha512-AzMElh8mCHOPWPCWfGjoJRla31fMXUT6+287W5ef3IPmtuBcyG9+MkFS7uPP6v3t2Cl086KwWfRB9mESa0OsHQ== + diffie-hellman@^5.0.0: version "5.0.3" resolved "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" @@ -4549,6 +4660,11 @@ dependencies: domelementtype "1" +domify@^1.3.1: + version "1.4.2" + resolved "https://registry.npmmirror.com/domify/-/domify-1.4.2.tgz#2d3e8ac49cae41206cc84be31ca401050ae780a6" + integrity sha512-m4yreHcUWHBncGVV7U+yQzc12vIlq0jMrtHZ5mW6dQMiL/7skSYNVX9wqKwOtyO9SGCgevrAFEgOCAHmamHTUA== + domutils@1.5.1: version "1.5.1" resolved "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" @@ -4647,6 +4763,18 @@ version "1.3.496" resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.496.tgz#3f43d32930481d82ad3663d79658e7c59a58af0b" integrity sha512-TXY4mwoyowwi4Lsrq9vcTUYBThyc1b2hXaTZI13p8/FRhY2CTaq5lK+DVjhYkKiTLsKt569Xes+0J5JsVXFurQ== + +element-ui@^2.12.0, element-ui@^2.13.2, element-ui@^2.15.14: + version "2.15.14" + resolved "https://registry.npmmirror.com/element-ui/-/element-ui-2.15.14.tgz#3c34df79467636592812d720d2e6784e7a6ec2ea" + integrity sha512-2v9fHL0ZGINotOlRIAJD5YuVB8V7WKxrE9Qy7dXhRipa035+kF7WuU/z+tEmLVPBcJ0zt8mOu1DKpWcVzBK8IA== + dependencies: + async-validator "~1.8.1" + babel-helper-vue-jsx-merge-props "^2.0.0" + deepmerge "^1.2.0" + normalize-wheel "^1.0.1" + resize-observer-polyfill "^1.5.0" + throttle-debounce "^1.0.1" elliptic@^6.0.0, elliptic@^6.5.2: version "6.5.3" @@ -5917,6 +6045,11 @@ duplexer "^0.1.1" pify "^4.0.1" +hammerjs@^2.0.1: + version "2.0.8" + resolved "https://registry.npmmirror.com/hammerjs/-/hammerjs-2.0.8.tgz#04ef77862cff2bb79d30f7692095930222bf60f1" + integrity sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ== + handle-thing@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" @@ -6284,6 +6417,11 @@ dependencies: postcss "^6.0.1" +ids@^1.0.0: + version "1.0.5" + resolved "https://registry.npmmirror.com/ids/-/ids-1.0.5.tgz#0aeb4777e77e0017a983c9f7b0ca0cccf352afe4" + integrity sha512-XQ0yom/4KWTL29sLG+tyuycy7UmeaM/79GRtSJq6IG9cJGIPeBz5kwDCguie3TwxaMNIc3WtPi0cTa1XYHicpw== + ieee754@^1.1.4: version "1.1.13" resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" @@ -6388,6 +6526,11 @@ version "1.0.1" resolved "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= + +indexof@0.0.1: + version "0.0.1" + resolved "https://registry.npmmirror.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" + integrity sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg== infer-owner@^1.0.3, infer-owner@^1.0.4: version "1.0.4" @@ -7299,6 +7442,11 @@ resolved "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= +lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.npmmirror.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + integrity sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ== + lodash.defaults@^3.1.2: version "3.1.2" resolved "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-3.1.2.tgz#c7308b18dbf8bc9372d701a73493c61192bd2e2c" @@ -7360,6 +7508,11 @@ version "4.1.2" resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.npmmirror.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== lodash.pick@^4.4.0: version "4.4.0" @@ -7488,6 +7641,11 @@ integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= dependencies: object-visit "^1.0.0" + +matches-selector@^1.2.0: + version "1.2.0" + resolved "https://registry.npmmirror.com/matches-selector/-/matches-selector-1.2.0.tgz#d1814e7e8f43e69d22ac33c9af727dc884ecf12a" + integrity sha512-c4vLwYWyl+Ji+U43eU/G5FwxWd4ZH0ePUsFs5y0uwD9HUEFBXUQ1zUUan+78IpRD+y4pUfG0nAzNM292K7ItvA== math-expression-evaluator@^1.2.14: version "1.2.22" @@ -7652,6 +7810,22 @@ resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== +min-dash@^3.0.0, min-dash@^3.5.0, min-dash@^3.5.2, min-dash@^3.8.1: + version "3.8.1" + resolved "https://registry.npmmirror.com/min-dash/-/min-dash-3.8.1.tgz#09a8bd8a041d65eec4732042cde9cb24a6e84b0d" + integrity sha512-evumdlmIlg9mbRVPbC4F5FuRhNmcMS5pvuBUbqb1G9v09Ro0ImPEgz5n3khir83lFok1inKqVDjnKEg3GpDxQg== + +min-dom@^3.1.2, min-dom@^3.1.3: + version "3.2.1" + resolved "https://registry.npmmirror.com/min-dom/-/min-dom-3.2.1.tgz#c272a814397d8bfe97edd12670e7ac34123c043f" + integrity sha512-v6YCmnDzxk4rRJntWTUiwggLupPw/8ZSRqUq0PDaBwVZEO/wYzCH4SKVBV+KkEvf3u0XaWHly5JEosPtqRATZA== + dependencies: + component-event "^0.1.4" + domify "^1.3.1" + indexof "0.0.1" + matches-selector "^1.2.0" + min-dash "^3.8.1" + mini-css-extract-plugin@^0.8.0: version "0.8.2" resolved "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.2.tgz#a875e169beb27c88af77dd962771c9eedc3da161" @@ -7759,6 +7933,22 @@ dependencies: minimist "^1.2.5" +moddle-xml@^9.0.6: + version "9.0.6" + resolved "https://registry.npmmirror.com/moddle-xml/-/moddle-xml-9.0.6.tgz#282b2a2232065a82556ba3fbbe3010b374f95cbf" + integrity sha512-tl0reHpsY/aKlLGhXeFlQWlYAQHFxTkFqC8tq8jXRYpQSnLVw13T6swMaourLd7EXqHdWsc+5ggsB+fEep6xZQ== + dependencies: + min-dash "^3.5.2" + moddle "^5.0.2" + saxen "^8.1.2" + +moddle@^5.0.2: + version "5.0.4" + resolved "https://registry.npmmirror.com/moddle/-/moddle-5.0.4.tgz#1108c9ff210df552ef4589513e620d171e4468e6" + integrity sha512-Kjb+hjuzO+YlojNGxEUXvdhLYTHTtAABDlDcJTtTcn5MbJF9Zkv4I1Fyvp3Ypmfgg1EfHDZ3PsCQTuML9JD6wg== + dependencies: + min-dash "^3.0.0" + moment-timezone@^0.5.31: version "0.5.34" resolved "https://registry.npmmirror.com/moment-timezone/-/moment-timezone-0.5.34.tgz#a75938f7476b88f155d3504a9343f7519d9a405c" @@ -7839,6 +8029,11 @@ version "2.14.1" resolved "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== + +nanoid@^3.3.11: + version "3.3.11" + resolved "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" + integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== nanomatch@^1.2.9: version "1.2.13" @@ -8004,6 +8199,11 @@ resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== +normalize-wheel@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/normalize-wheel/-/normalize-wheel-1.0.1.tgz#aec886affdb045070d856447df62ecf86146ec45" + integrity sha512-1OnlAPZ3zgrk8B91HyRj+eVv+kS5u+Z0SCsak6Xil/kmgEia50ga7zfkumayonZrImffAxPU/5WcyGhzetHNPA== + npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" @@ -8091,6 +8291,11 @@ version "0.9.2" resolved "https://registry.npmjs.org/object-path/-/object-path-0.9.2.tgz#0fd9a74fc5fad1ae3968b586bda5c632bd6c05a5" integrity sha1-D9mnT8X60a45aLWGvaXGMr1sBaU= + +object-refs@^0.3.0: + version "0.3.0" + resolved "https://registry.npmmirror.com/object-refs/-/object-refs-0.3.0.tgz#934f4f0fb6b409e78be15fa60f616108aed63786" + integrity sha512-eP0ywuoWOaDoiake/6kTJlPJhs+k0qNm4nYRzXLNHj6vh+5M3i9R1epJTdxIPGlhWc4fNRQ7a6XJNCX+/L4FOQ== object-visit@^1.0.0: version "1.0.1" @@ -8474,6 +8679,11 @@ resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== +path-intersection@^2.2.0: + version "2.2.1" + resolved "https://registry.npmmirror.com/path-intersection/-/path-intersection-2.2.1.tgz#8476b75fefb7ac402f810d304e0eb0c080c11fe7" + integrity sha512-9u8xvMcSfuOiStv9bPdnRJQhGQXLKurew94n4GPQCdH1nj9QKC9ObbNoIpiRq8skiOBxKkt277PgOoFgAt3/rA== + path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -8547,6 +8757,11 @@ version "4.1.3" resolved "https://registry.npmjs.org/photoswipe/-/photoswipe-4.1.3.tgz#59f49494eeb9ddab5888d03392926a19bc197550" integrity sha512-89Z43IRUyw7ycTolo+AaiDn3W1EEIfox54hERmm9bI12IB9cvRfHSHez3XhAyU8XW2EAFrC+2sKMhh7SJwn0bA== + +picocolors@^1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== picomatch@^2.0.4, picomatch@^2.2.1: version "2.2.2" @@ -9252,6 +9467,15 @@ source-map "^0.6.1" supports-color "^6.1.0" +postcss@^8.4.14: + version "8.5.6" + resolved "https://registry.npmmirror.com/postcss/-/postcss-8.5.6.tgz#2825006615a619b4f62a9e7426cc120b349a8f3c" + integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg== + dependencies: + nanoid "^3.3.11" + picocolors "^1.1.1" + source-map-js "^1.2.1" + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" @@ -9266,6 +9490,11 @@ version "1.19.1" resolved "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== + +"prettier@^1.18.2 || ^2.0.0": + version "2.8.8" + resolved "https://registry.npmmirror.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" + integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== pretty-error@^2.0.2, pretty-error@^2.1.1: version "2.1.1" @@ -9816,7 +10045,7 @@ resolved "https://registry.npmjs.org/reselect/-/reselect-3.0.1.tgz#efdaa98ea7451324d092b2b2163a6a1d7a9a2147" integrity sha1-79qpjqdFEyTQkrKyFjpqHXqaIUc= -resize-observer-polyfill@^1.5.1: +resize-observer-polyfill@^1.5.0, resize-observer-polyfill@^1.5.1: version "1.5.1" resolved "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464" integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg== @@ -10018,6 +10247,11 @@ version "1.2.4" resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + +saxen@^8.1.2: + version "8.1.2" + resolved "https://registry.npmmirror.com/saxen/-/saxen-8.1.2.tgz#e677b32afe93667c9d939d3f3de02e09df108e54" + integrity sha512-xUOiiFbc3Ow7p8KMxwsGICPx46ZQvy3+qfNVhrkwfz3Vvq45eGt98Ft5IQaA1R/7Tb5B5MKh9fUR9x3c3nDTxw== schema-utils@^0.3.0: version "0.3.0" @@ -10350,6 +10584,11 @@ version "2.0.1" resolved "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== + +source-map-js@^1.2.1: + version "1.2.1" + resolved "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" + integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: version "0.5.3" @@ -10935,6 +11174,11 @@ loader-utils "^1.1.0" neo-async "^2.6.0" +throttle-debounce@^1.0.1: + version "1.1.0" + resolved "https://registry.npmmirror.com/throttle-debounce/-/throttle-debounce-1.1.0.tgz#51853da37be68a155cb6e827b3514a3c422e89cd" + integrity sha512-XH8UiPCQcWNuk2LYePibW/4qL97+ZQ1AN3FNXwZRBNPPowo/NRU5fAlDCSNBJIYCKbioZfuYtMhG4quqoJhVzg== + through2@^2.0.0: version "2.0.5" resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" @@ -10974,6 +11218,11 @@ version "2.1.0" resolved "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== + +tiny-svg@^2.2.1, tiny-svg@^2.2.2: + version "2.2.4" + resolved "https://registry.npmmirror.com/tiny-svg/-/tiny-svg-2.2.4.tgz#8d4a16bd2c4644c8444fd3c2ece91db7631cfb35" + integrity sha512-NOi39lBknf4UdDEahNkbEAJnzhu1ZcN2j75IS2vLRmIhsfxdZpTChfLKBcN1ShplVmPIXJAIafk6YY5/Aa80lQ== tinycolor2@^1.4.1: version "1.4.1" @@ -11602,6 +11851,14 @@ resolved "https://registry.npmjs.org/vue/-/vue-2.6.11.tgz#76594d877d4b12234406e84e35275c6d514125c5" integrity sha512-VfPwgcGABbGAue9+sfrD4PuwFar7gPb1yl1UK1MwXoQPAw0BKSqWfoYCT/ThFrdEVWoI51dBuyCoiNU9bZDZxQ== +vue@^2.6.11: + version "2.7.16" + resolved "https://registry.npmmirror.com/vue/-/vue-2.7.16.tgz#98c60de9def99c0e3da8dae59b304ead43b967c9" + integrity sha512-4gCtFXaAA3zYZdTp5s4Hl2sozuySsgz4jy1EnpBHNfpMa9dK1ZCG7viqBPCwXtmgc8nHqUsAu3G4gtmXkkY3Sw== + dependencies: + "@vue/compiler-sfc" "2.7.16" + csstype "^3.1.0" + vuedraggable@^2.20.0: version "2.24.0" resolved "https://registry.npmjs.org/vuedraggable/-/vuedraggable-2.24.0.tgz#1ee069eeb91f61fcb540faf20f1c6b2d4d990a26" @@ -11946,6 +12203,16 @@ dependencies: errno "~0.1.7" +workflow-bpmn-modeler@^0.2.8: + version "0.2.8" + resolved "https://registry.npmmirror.com/workflow-bpmn-modeler/-/workflow-bpmn-modeler-0.2.8.tgz#632facb1f63bcce6b85378fa7bf3a7e0da07a675" + integrity sha512-7Y2+YMx5mFDrpDAMoEK2EMVp5Z4585tYBLuqOxcbB5cdY6Vt1VjE1OBhzcwlFU6MWfpeisMGKbYtlPSHAOzsGg== + dependencies: + bpmn-js "^7.2.1" + element-ui "^2.12.0" + vue "^2.6.10" + xcrud "0.4.1" + wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" @@ -11998,6 +12265,16 @@ dependencies: async-limiter "~1.0.0" +xcrud@0.4.1: + version "0.4.1" + resolved "https://registry.npmmirror.com/xcrud/-/xcrud-0.4.1.tgz#0b644bb20a307c769b8878b0d81b2791dfe1fce1" + integrity sha512-aUbZZDARyNhbdBqT5nrHsXkYMM3Bo0i8EFvVgEyq444cxvYkqz4I71XWN2bPVhK/axfX4RawmIHjOQTz2v/apw== + dependencies: + element-ui "^2.13.2" + lodash.clonedeep "^4.5.0" + lodash.merge "^4.6.2" + vue "^2.6.11" + xe-utils@2.4.8: version "2.4.8" resolved "https://registry.yarnpkg.com/xe-utils/-/xe-utils-2.4.8.tgz#0efda3ca81f6b55f68a8a31e276fb17da59c98b3" -- Gitblit v1.9.3