From 312f1aed411696c33b75c11cedd32c0412ec717e Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期三, 14 五月 2025 09:12:31 +0800 Subject: [PATCH] art: 设备管理-基础代码生成 --- src/views/eam/dispose/modules/EamEquipmentTransferModal.vue | 144 ++++ src/views/eam/dispose/EamEquipmentLeanOutList.vue | 220 ++++++ src/views/eam/dispose/EamEquipmentDisposeList.vue | 220 ++++++ src/views/eam/repair/modules/EamMajorPartialRepairModal.vue | 156 ++++ src/views/eam/dispose/EamEquipmentTransferList.vue | 225 ++++++ src/views/eam/dispose/modules/EamEquipmentDisposeModal.vue | 141 +++ src/views/eam/dispose/modules/EamEquipmentSealUpModal.vue | 141 +++ src/views/eam/dispose/EamEquipmentSealUpList.vue | 220 ++++++ src/views/eam/repair/EamMajorPartialRepairList.vue | 245 ++++++ src/views/eam/dispose/modules/EamEquipmentLeanOutModal.vue | 141 +++ src/views/eam/maintenance/EamPrecisionCheckDetailList.vue | 170 ++++ src/views/eam/maintenance/modules/EamPrecisionCheckDetailModal.vue | 117 +++ 12 files changed, 2,140 insertions(+), 0 deletions(-) diff --git a/src/views/eam/dispose/EamEquipmentDisposeList.vue b/src/views/eam/dispose/EamEquipmentDisposeList.vue new file mode 100644 index 0000000..db86104 --- /dev/null +++ b/src/views/eam/dispose/EamEquipmentDisposeList.vue @@ -0,0 +1,220 @@ +<template> + <a-card :bordered="false"> + + <!-- 鏌ヨ鍖哄煙 --> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="24"> + + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍒犻櫎鏍囪"> + <a-input placeholder="璇疯緭鍏ュ垹闄ゆ爣璁�" v-model="queryParam.delFlag"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍗曟嵁鍙�"> + <a-input placeholder="璇疯緭鍏ュ崟鎹彿" v-model="queryParam.code"></a-input> + </a-form-item> + </a-col> + <template v-if="toggleSearchStatus"> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="queryParam.equipmentId"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="杞/鎶ュ簾"> + <a-input placeholder="璇疯緭鍏ヨ浆璁�/鎶ュ簾" v-model="queryParam.disposeType"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鐢宠浜�"> + <a-input placeholder="璇疯緭鍏ョ敵璇蜂汉" v-model="queryParam.reportUser"></a-input> + </a-form-item> + </a-col> + </template> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> + <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button> + <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button> + <a @click="handleToggleSearch" style="margin-left: 8px"> + {{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }} + <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/> + </a> + </span> + </a-col> + + </a-row> + </a-form> + </div> + + <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> + <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> + <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" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + class="j-table-force-nowrap" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + @change="handleTableChange"> + + <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-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a>鍒犻櫎</a> + </a-popconfirm> + </a-menu-item> + </a-menu> + </a-dropdown> + </span> + + </a-table> + </div> + <!-- table鍖哄煙-end --> + + <!-- 琛ㄥ崟鍖哄煙 --> + <eamEquipmentDispose-modal ref="modalForm" @ok="modalFormOk"></eamEquipmentDispose-modal> + </a-card> +</template> + +<script> + import '@/assets/less/TableExpand.less' + import EamEquipmentDisposeModal from './modules/EamEquipmentDisposeModal' + import { JeecgListMixin } from '@/mixins/JeecgListMixin' + + export default { + name: "EamEquipmentDisposeList", + mixins:[JeecgListMixin], + components: { + EamEquipmentDisposeModal + }, + 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: 'code' + }, + { + title: '璁惧ID', + align:"center", + dataIndex: 'equipmentId' + }, + { + title: '杞/鎶ュ簾', + align:"center", + dataIndex: 'disposeType' + }, + { + title: '鐢宠浜�', + align:"center", + dataIndex: 'reportUser' + }, + { + title: '澶勭疆鏃堕棿', + align:"center", + dataIndex: 'disposeTime' + }, + { + title: '澶勭疆鐞嗙敱', + align:"center", + dataIndex: 'disposeReason' + }, + { + title: '澶勭疆閲戦', + align:"center", + dataIndex: 'disposeAmount' + }, + { + title: '瀹℃牳浜�', + align:"center", + dataIndex: 'approvalUser' + }, + { + title: '瀹℃牳鏃堕棿', + align:"center", + dataIndex: 'approvalTime' + }, + { + title: '澶囨敞', + align:"center", + dataIndex: 'remark' + }, + { + title: '鎿嶄綔', + dataIndex: 'action', + align:"center", + scopedSlots: { customRender: 'action' }, + } + ], + url: { + list: "/eam/eamEquipmentDispose/list", + delete: "/eam/eamEquipmentDispose/delete", + deleteBatch: "/eam/eamEquipmentDispose/deleteBatch", + exportXlsUrl: "eam/eamEquipmentDispose/exportXls", + importExcelUrl: "eam/eamEquipmentDispose/importExcel", + }, + } + }, + computed: { + importExcelUrl: function(){ + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; + } + }, + methods: { + + } + } +</script> +<style scoped> + @import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/eam/dispose/EamEquipmentLeanOutList.vue b/src/views/eam/dispose/EamEquipmentLeanOutList.vue new file mode 100644 index 0000000..d8711d2 --- /dev/null +++ b/src/views/eam/dispose/EamEquipmentLeanOutList.vue @@ -0,0 +1,220 @@ +<template> + <a-card :bordered="false"> + + <!-- 鏌ヨ鍖哄煙 --> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="24"> + + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍒犻櫎鏍囪"> + <a-input placeholder="璇疯緭鍏ュ垹闄ゆ爣璁�" v-model="queryParam.delFlag"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="queryParam.equipmentId"></a-input> + </a-form-item> + </a-col> + <template v-if="toggleSearchStatus"> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍗曟嵁鍙�"> + <a-input placeholder="璇疯緭鍏ュ崟鎹彿" v-model="queryParam.code"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍊熷叆閮ㄩ棬"> + <a-input placeholder="璇疯緭鍏ュ�熷叆閮ㄩ棬" v-model="queryParam.leanDepartId"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍊熷叆璐d换浜�"> + <a-input placeholder="璇疯緭鍏ュ�熷叆璐d换浜�" v-model="queryParam.leanPerson"></a-input> + </a-form-item> + </a-col> + </template> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> + <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button> + <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button> + <a @click="handleToggleSearch" style="margin-left: 8px"> + {{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }} + <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/> + </a> + </span> + </a-col> + + </a-row> + </a-form> + </div> + + <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> + <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> + <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" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + class="j-table-force-nowrap" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + @change="handleTableChange"> + + <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-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a>鍒犻櫎</a> + </a-popconfirm> + </a-menu-item> + </a-menu> + </a-dropdown> + </span> + + </a-table> + </div> + <!-- table鍖哄煙-end --> + + <!-- 琛ㄥ崟鍖哄煙 --> + <eamEquipmentLeanOut-modal ref="modalForm" @ok="modalFormOk"></eamEquipmentLeanOut-modal> + </a-card> +</template> + +<script> + import '@/assets/less/TableExpand.less' + import EamEquipmentLeanOutModal from './modules/EamEquipmentLeanOutModal' + import { JeecgListMixin } from '@/mixins/JeecgListMixin' + + export default { + name: "EamEquipmentLeanOutList", + mixins:[JeecgListMixin], + components: { + EamEquipmentLeanOutModal + }, + 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: 'equipmentId' + }, + { + title: '鍗曟嵁鍙�', + align:"center", + dataIndex: 'code' + }, + { + title: '鍊熷叆閮ㄩ棬', + align:"center", + dataIndex: 'leanDepartId' + }, + { + title: '鍊熷叆璐d换浜�', + align:"center", + dataIndex: 'leanPerson' + }, + { + title: '鍊熷嚭鐘舵��', + align:"center", + dataIndex: 'leanStatus' + }, + { + title: '鍊熷嚭寮�濮嬫椂闂�', + align:"center", + dataIndex: 'leanStartTime' + }, + { + title: '鍊熷嚭褰掕繕鏃堕棿', + align:"center", + dataIndex: 'leanEndTime' + }, + { + title: '瀹℃牳浜�', + align:"center", + dataIndex: 'approvalUser' + }, + { + title: '瀹℃牳鏃堕棿', + align:"center", + dataIndex: 'approvalTime' + }, + { + title: '澶囨敞', + align:"center", + dataIndex: 'remark' + }, + { + title: '鎿嶄綔', + dataIndex: 'action', + align:"center", + scopedSlots: { customRender: 'action' }, + } + ], + url: { + list: "/eam/eamEquipmentLeanOut/list", + delete: "/eam/eamEquipmentLeanOut/delete", + deleteBatch: "/eam/eamEquipmentLeanOut/deleteBatch", + exportXlsUrl: "eam/eamEquipmentLeanOut/exportXls", + importExcelUrl: "eam/eamEquipmentLeanOut/importExcel", + }, + } + }, + computed: { + importExcelUrl: function(){ + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; + } + }, + methods: { + + } + } +</script> +<style scoped> + @import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/eam/dispose/EamEquipmentSealUpList.vue b/src/views/eam/dispose/EamEquipmentSealUpList.vue new file mode 100644 index 0000000..3282867 --- /dev/null +++ b/src/views/eam/dispose/EamEquipmentSealUpList.vue @@ -0,0 +1,220 @@ +<template> + <a-card :bordered="false"> + + <!-- 鏌ヨ鍖哄煙 --> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="24"> + + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍒犻櫎鏍囪"> + <a-input placeholder="璇疯緭鍏ュ垹闄ゆ爣璁�" v-model="queryParam.delFlag"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="queryParam.equipmentId"></a-input> + </a-form-item> + </a-col> + <template v-if="toggleSearchStatus"> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍗曟嵁鍙�"> + <a-input placeholder="璇疯緭鍏ュ崟鎹彿" v-model="queryParam.code"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鐢宠浜�"> + <a-input placeholder="璇疯緭鍏ョ敵璇蜂汉" v-model="queryParam.reportUser"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="灏佸瓨寮�濮嬫椂闂�"> + <a-input placeholder="璇疯緭鍏ュ皝瀛樺紑濮嬫椂闂�" v-model="queryParam.sealStartTime"></a-input> + </a-form-item> + </a-col> + </template> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> + <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button> + <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button> + <a @click="handleToggleSearch" style="margin-left: 8px"> + {{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }} + <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/> + </a> + </span> + </a-col> + + </a-row> + </a-form> + </div> + + <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> + <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> + <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" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + class="j-table-force-nowrap" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + @change="handleTableChange"> + + <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-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a>鍒犻櫎</a> + </a-popconfirm> + </a-menu-item> + </a-menu> + </a-dropdown> + </span> + + </a-table> + </div> + <!-- table鍖哄煙-end --> + + <!-- 琛ㄥ崟鍖哄煙 --> + <eamEquipmentSealUp-modal ref="modalForm" @ok="modalFormOk"></eamEquipmentSealUp-modal> + </a-card> +</template> + +<script> + import '@/assets/less/TableExpand.less' + import EamEquipmentSealUpModal from './modules/EamEquipmentSealUpModal' + import { JeecgListMixin } from '@/mixins/JeecgListMixin' + + export default { + name: "EamEquipmentSealUpList", + mixins:[JeecgListMixin], + components: { + EamEquipmentSealUpModal + }, + 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: 'equipmentId' + }, + { + title: '鍗曟嵁鍙�', + align:"center", + dataIndex: 'code' + }, + { + title: '鐢宠浜�', + align:"center", + dataIndex: 'reportUser' + }, + { + title: '灏佸瓨寮�濮嬫椂闂�', + align:"center", + dataIndex: 'sealStartTime' + }, + { + title: '灏佸瓨缁撴潫鏃堕棿', + align:"center", + dataIndex: 'sealEndTime' + }, + { + title: '灏佸瓨鍘熷洜', + align:"center", + dataIndex: 'sealUpReason' + }, + { + title: '灏佸瓨鐘舵��', + align:"center", + dataIndex: 'sealStatus' + }, + { + title: '瀹℃牳浜�', + align:"center", + dataIndex: 'approvalUser' + }, + { + title: '瀹℃牳鏃堕棿', + align:"center", + dataIndex: 'approvalTime' + }, + { + title: '澶囨敞', + align:"center", + dataIndex: 'remark' + }, + { + title: '鎿嶄綔', + dataIndex: 'action', + align:"center", + scopedSlots: { customRender: 'action' }, + } + ], + url: { + list: "/eam/eamEquipmentSealUp/list", + delete: "/eam/eamEquipmentSealUp/delete", + deleteBatch: "/eam/eamEquipmentSealUp/deleteBatch", + exportXlsUrl: "eam/eamEquipmentSealUp/exportXls", + importExcelUrl: "eam/eamEquipmentSealUp/importExcel", + }, + } + }, + computed: { + importExcelUrl: function(){ + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; + } + }, + methods: { + + } + } +</script> +<style scoped> + @import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/eam/dispose/EamEquipmentTransferList.vue b/src/views/eam/dispose/EamEquipmentTransferList.vue new file mode 100644 index 0000000..345a008 --- /dev/null +++ b/src/views/eam/dispose/EamEquipmentTransferList.vue @@ -0,0 +1,225 @@ +<template> + <a-card :bordered="false"> + + <!-- 鏌ヨ鍖哄煙 --> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="24"> + + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍒犻櫎鏍囪"> + <a-input placeholder="璇疯緭鍏ュ垹闄ゆ爣璁�" v-model="queryParam.delFlag"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍗曟嵁鍙�"> + <a-input placeholder="璇疯緭鍏ュ崟鎹彿" v-model="queryParam.code"></a-input> + </a-form-item> + </a-col> + <template v-if="toggleSearchStatus"> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="queryParam.equipmentId"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璋冨嚭閮ㄩ棬"> + <a-input placeholder="璇疯緭鍏ヨ皟鍑洪儴闂�" v-model="queryParam.oldDepartId"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璋冨叆閮ㄩ棬"> + <a-input placeholder="璇疯緭鍏ヨ皟鍏ラ儴闂�" v-model="queryParam.newDepartId"></a-input> + </a-form-item> + </a-col> + </template> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> + <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button> + <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button> + <a @click="handleToggleSearch" style="margin-left: 8px"> + {{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }} + <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/> + </a> + </span> + </a-col> + + </a-row> + </a-form> + </div> + + <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> + <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> + <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" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + class="j-table-force-nowrap" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + @change="handleTableChange"> + + <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-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a>鍒犻櫎</a> + </a-popconfirm> + </a-menu-item> + </a-menu> + </a-dropdown> + </span> + + </a-table> + </div> + <!-- table鍖哄煙-end --> + + <!-- 琛ㄥ崟鍖哄煙 --> + <eamEquipmentTransfer-modal ref="modalForm" @ok="modalFormOk"></eamEquipmentTransfer-modal> + </a-card> +</template> + +<script> + import '@/assets/less/TableExpand.less' + import EamEquipmentTransferModal from './modules/EamEquipmentTransferModal' + import { JeecgListMixin } from '@/mixins/JeecgListMixin' + + export default { + name: "EamEquipmentTransferList", + mixins:[JeecgListMixin], + components: { + EamEquipmentTransferModal + }, + 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: 'code' + }, + { + title: '璁惧ID', + align:"center", + dataIndex: 'equipmentId' + }, + { + title: '璋冨嚭閮ㄩ棬', + align:"center", + dataIndex: 'oldDepartId' + }, + { + title: '璋冨叆閮ㄩ棬', + align:"center", + dataIndex: 'newDepartId' + }, + { + title: '鐢宠浜�', + align:"center", + dataIndex: 'reportUser' + }, + { + title: '鍙樺姩鍘熷洜', + align:"center", + dataIndex: 'transferReason' + }, + { + title: '鍙樺姩鐘舵��', + align:"center", + dataIndex: 'transferStatus' + }, + { + title: '鍙樺姩鏃ユ湡', + align:"center", + dataIndex: 'transferTime' + }, + { + title: '瀹℃牳浜�', + align:"center", + dataIndex: 'approvalUser' + }, + { + title: '瀹℃牳鏃堕棿', + align:"center", + dataIndex: 'approvalTime' + }, + { + title: '澶囨敞', + align:"center", + dataIndex: 'remark' + }, + { + title: '鎿嶄綔', + dataIndex: 'action', + align:"center", + scopedSlots: { customRender: 'action' }, + } + ], + url: { + list: "/eam/eamEquipmentTransfer/list", + delete: "/eam/eamEquipmentTransfer/delete", + deleteBatch: "/eam/eamEquipmentTransfer/deleteBatch", + exportXlsUrl: "eam/eamEquipmentTransfer/exportXls", + importExcelUrl: "eam/eamEquipmentTransfer/importExcel", + }, + } + }, + computed: { + importExcelUrl: function(){ + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; + } + }, + methods: { + + } + } +</script> +<style scoped> + @import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/eam/dispose/modules/EamEquipmentDisposeModal.vue b/src/views/eam/dispose/modules/EamEquipmentDisposeModal.vue new file mode 100644 index 0000000..ca9d651 --- /dev/null +++ b/src/views/eam/dispose/modules/EamEquipmentDisposeModal.vue @@ -0,0 +1,141 @@ +<template> + <j-modal + :title="title" + :width="800" + :visible="visible" + :confirmLoading="confirmLoading" + switchFullscreen + @ok="handleOk" + @cancel="handleCancel" + cancelText="鍏抽棴"> + + <a-spin :spinning="confirmLoading"> + <a-form-model ref="form" :model="model" :rules="validatorRules"> + + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag" label="鍒犻櫎鏍囪"> + <a-input-number v-model="model.delFlag"/> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="code" label="鍗曟嵁鍙�"> + <a-input placeholder="璇疯緭鍏ュ崟鎹彿" v-model="model.code" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentId" label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="model.equipmentId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="disposeType" label="杞/鎶ュ簾"> + <a-input placeholder="璇疯緭鍏ヨ浆璁�/鎶ュ簾" v-model="model.disposeType" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="reportUser" label="鐢宠浜�"> + <a-input placeholder="璇疯緭鍏ョ敵璇蜂汉" v-model="model.reportUser" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="disposeTime" label="澶勭疆鏃堕棿"> + <a-input placeholder="璇疯緭鍏ュ缃椂闂�" v-model="model.disposeTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="disposeReason" label="澶勭疆鐞嗙敱"> + <a-input placeholder="璇疯緭鍏ュ缃悊鐢�" v-model="model.disposeReason" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="disposeAmount" label="澶勭疆閲戦"> + <a-input placeholder="璇疯緭鍏ュ缃噾棰�" v-model="model.disposeAmount" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="approvalUser" label="瀹℃牳浜�"> + <a-input placeholder="璇疯緭鍏ュ鏍镐汉" v-model="model.approvalUser" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="approvalTime" label="瀹℃牳鏃堕棿"> + <a-input placeholder="璇疯緭鍏ュ鏍告椂闂�" v-model="model.approvalTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="remark" label="澶囨敞"> + <a-input placeholder="璇疯緭鍏ュ娉�" v-model="model.remark" /> + </a-form-model-item> + + </a-form-model> + </a-spin> + </j-modal> +</template> + +<script> + import { httpAction } from '@/api/manage' + import moment from "moment" + + export default { + name: "EamEquipmentDisposeModal", + data () { + return { + title:"鎿嶄綔", + visible: false, + model: {}, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + + confirmLoading: false, + validatorRules:{ + }, + url: { + add: "/eam/eamEquipmentDispose/add", + edit: "/eam/eamEquipmentDispose/edit", + }, + } + }, + created () { + }, + methods: { + add () { + //鍒濆鍖栭粯璁ゅ�� + this.edit({}); + }, + edit (record) { + this.model = Object.assign({}, record); + this.visible = true; + }, + close () { + this.$emit('close'); + this.visible = false; + this.$refs.form.clearValidate(); + }, + handleOk () { + 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; + that.close(); + }) + }else{ + return false; + } + }) + }, + handleCancel () { + this.close() + }, + + + } + } +</script> + +<style lang="less" scoped> + +</style> \ No newline at end of file diff --git a/src/views/eam/dispose/modules/EamEquipmentLeanOutModal.vue b/src/views/eam/dispose/modules/EamEquipmentLeanOutModal.vue new file mode 100644 index 0000000..196ce87 --- /dev/null +++ b/src/views/eam/dispose/modules/EamEquipmentLeanOutModal.vue @@ -0,0 +1,141 @@ +<template> + <j-modal + :title="title" + :width="800" + :visible="visible" + :confirmLoading="confirmLoading" + switchFullscreen + @ok="handleOk" + @cancel="handleCancel" + cancelText="鍏抽棴"> + + <a-spin :spinning="confirmLoading"> + <a-form-model ref="form" :model="model" :rules="validatorRules"> + + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag" label="鍒犻櫎鏍囪"> + <a-input-number v-model="model.delFlag"/> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentId" label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="model.equipmentId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="code" label="鍗曟嵁鍙�"> + <a-input placeholder="璇疯緭鍏ュ崟鎹彿" v-model="model.code" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="leanDepartId" label="鍊熷叆閮ㄩ棬"> + <a-input placeholder="璇疯緭鍏ュ�熷叆閮ㄩ棬" v-model="model.leanDepartId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="leanPerson" label="鍊熷叆璐d换浜�"> + <a-input placeholder="璇疯緭鍏ュ�熷叆璐d换浜�" v-model="model.leanPerson" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="leanStatus" label="鍊熷嚭鐘舵��"> + <a-input placeholder="璇疯緭鍏ュ�熷嚭鐘舵��" v-model="model.leanStatus" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="leanStartTime" label="鍊熷嚭寮�濮嬫椂闂�"> + <a-input placeholder="璇疯緭鍏ュ�熷嚭寮�濮嬫椂闂�" v-model="model.leanStartTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="leanEndTime" label="鍊熷嚭褰掕繕鏃堕棿"> + <a-input placeholder="璇疯緭鍏ュ�熷嚭褰掕繕鏃堕棿" v-model="model.leanEndTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="approvalUser" label="瀹℃牳浜�"> + <a-input placeholder="璇疯緭鍏ュ鏍镐汉" v-model="model.approvalUser" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="approvalTime" label="瀹℃牳鏃堕棿"> + <a-input placeholder="璇疯緭鍏ュ鏍告椂闂�" v-model="model.approvalTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="remark" label="澶囨敞"> + <a-input placeholder="璇疯緭鍏ュ娉�" v-model="model.remark" /> + </a-form-model-item> + + </a-form-model> + </a-spin> + </j-modal> +</template> + +<script> + import { httpAction } from '@/api/manage' + import moment from "moment" + + export default { + name: "EamEquipmentLeanOutModal", + data () { + return { + title:"鎿嶄綔", + visible: false, + model: {}, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + + confirmLoading: false, + validatorRules:{ + }, + url: { + add: "/eam/eamEquipmentLeanOut/add", + edit: "/eam/eamEquipmentLeanOut/edit", + }, + } + }, + created () { + }, + methods: { + add () { + //鍒濆鍖栭粯璁ゅ�� + this.edit({}); + }, + edit (record) { + this.model = Object.assign({}, record); + this.visible = true; + }, + close () { + this.$emit('close'); + this.visible = false; + this.$refs.form.clearValidate(); + }, + handleOk () { + 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; + that.close(); + }) + }else{ + return false; + } + }) + }, + handleCancel () { + this.close() + }, + + + } + } +</script> + +<style lang="less" scoped> + +</style> \ No newline at end of file diff --git a/src/views/eam/dispose/modules/EamEquipmentSealUpModal.vue b/src/views/eam/dispose/modules/EamEquipmentSealUpModal.vue new file mode 100644 index 0000000..19a2d8c --- /dev/null +++ b/src/views/eam/dispose/modules/EamEquipmentSealUpModal.vue @@ -0,0 +1,141 @@ +<template> + <j-modal + :title="title" + :width="800" + :visible="visible" + :confirmLoading="confirmLoading" + switchFullscreen + @ok="handleOk" + @cancel="handleCancel" + cancelText="鍏抽棴"> + + <a-spin :spinning="confirmLoading"> + <a-form-model ref="form" :model="model" :rules="validatorRules"> + + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag" label="鍒犻櫎鏍囪"> + <a-input-number v-model="model.delFlag"/> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentId" label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="model.equipmentId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="code" label="鍗曟嵁鍙�"> + <a-input placeholder="璇疯緭鍏ュ崟鎹彿" v-model="model.code" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="reportUser" label="鐢宠浜�"> + <a-input placeholder="璇疯緭鍏ョ敵璇蜂汉" v-model="model.reportUser" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sealStartTime" label="灏佸瓨寮�濮嬫椂闂�"> + <a-input placeholder="璇疯緭鍏ュ皝瀛樺紑濮嬫椂闂�" v-model="model.sealStartTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sealEndTime" label="灏佸瓨缁撴潫鏃堕棿"> + <a-input placeholder="璇疯緭鍏ュ皝瀛樼粨鏉熸椂闂�" v-model="model.sealEndTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sealUpReason" label="灏佸瓨鍘熷洜"> + <a-input placeholder="璇疯緭鍏ュ皝瀛樺師鍥�" v-model="model.sealUpReason" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sealStatus" label="灏佸瓨鐘舵��"> + <a-input placeholder="璇疯緭鍏ュ皝瀛樼姸鎬�" v-model="model.sealStatus" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="approvalUser" label="瀹℃牳浜�"> + <a-input placeholder="璇疯緭鍏ュ鏍镐汉" v-model="model.approvalUser" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="approvalTime" label="瀹℃牳鏃堕棿"> + <a-input placeholder="璇疯緭鍏ュ鏍告椂闂�" v-model="model.approvalTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="remark" label="澶囨敞"> + <a-input placeholder="璇疯緭鍏ュ娉�" v-model="model.remark" /> + </a-form-model-item> + + </a-form-model> + </a-spin> + </j-modal> +</template> + +<script> + import { httpAction } from '@/api/manage' + import moment from "moment" + + export default { + name: "EamEquipmentSealUpModal", + data () { + return { + title:"鎿嶄綔", + visible: false, + model: {}, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + + confirmLoading: false, + validatorRules:{ + }, + url: { + add: "/eam/eamEquipmentSealUp/add", + edit: "/eam/eamEquipmentSealUp/edit", + }, + } + }, + created () { + }, + methods: { + add () { + //鍒濆鍖栭粯璁ゅ�� + this.edit({}); + }, + edit (record) { + this.model = Object.assign({}, record); + this.visible = true; + }, + close () { + this.$emit('close'); + this.visible = false; + this.$refs.form.clearValidate(); + }, + handleOk () { + 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; + that.close(); + }) + }else{ + return false; + } + }) + }, + handleCancel () { + this.close() + }, + + + } + } +</script> + +<style lang="less" scoped> + +</style> \ No newline at end of file diff --git a/src/views/eam/dispose/modules/EamEquipmentTransferModal.vue b/src/views/eam/dispose/modules/EamEquipmentTransferModal.vue new file mode 100644 index 0000000..6bd5226 --- /dev/null +++ b/src/views/eam/dispose/modules/EamEquipmentTransferModal.vue @@ -0,0 +1,144 @@ +<template> + <j-modal + :title="title" + :width="800" + :visible="visible" + :confirmLoading="confirmLoading" + switchFullscreen + @ok="handleOk" + @cancel="handleCancel" + cancelText="鍏抽棴"> + + <a-spin :spinning="confirmLoading"> + <a-form-model ref="form" :model="model" :rules="validatorRules"> + + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag" label="鍒犻櫎鏍囪"> + <a-input-number v-model="model.delFlag"/> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="code" label="鍗曟嵁鍙�"> + <a-input placeholder="璇疯緭鍏ュ崟鎹彿" v-model="model.code" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentId" label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="model.equipmentId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="oldDepartId" label="璋冨嚭閮ㄩ棬"> + <a-input placeholder="璇疯緭鍏ヨ皟鍑洪儴闂�" v-model="model.oldDepartId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="newDepartId" label="璋冨叆閮ㄩ棬"> + <a-input placeholder="璇疯緭鍏ヨ皟鍏ラ儴闂�" v-model="model.newDepartId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="reportUser" label="鐢宠浜�"> + <a-input placeholder="璇疯緭鍏ョ敵璇蜂汉" v-model="model.reportUser" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="transferReason" label="鍙樺姩鍘熷洜"> + <a-input placeholder="璇疯緭鍏ュ彉鍔ㄥ師鍥�" v-model="model.transferReason" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="transferStatus" label="鍙樺姩鐘舵��"> + <a-input placeholder="璇疯緭鍏ュ彉鍔ㄧ姸鎬�" v-model="model.transferStatus" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="transferTime" label="鍙樺姩鏃ユ湡"> + <a-input placeholder="璇疯緭鍏ュ彉鍔ㄦ棩鏈�" v-model="model.transferTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="approvalUser" label="瀹℃牳浜�"> + <a-input placeholder="璇疯緭鍏ュ鏍镐汉" v-model="model.approvalUser" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="approvalTime" label="瀹℃牳鏃堕棿"> + <a-input placeholder="璇疯緭鍏ュ鏍告椂闂�" v-model="model.approvalTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="remark" label="澶囨敞"> + <a-input placeholder="璇疯緭鍏ュ娉�" v-model="model.remark" /> + </a-form-model-item> + + </a-form-model> + </a-spin> + </j-modal> +</template> + +<script> + import { httpAction } from '@/api/manage' + import moment from "moment" + + export default { + name: "EamEquipmentTransferModal", + data () { + return { + title:"鎿嶄綔", + visible: false, + model: {}, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + + confirmLoading: false, + validatorRules:{ + }, + url: { + add: "/eam/eamEquipmentTransfer/add", + edit: "/eam/eamEquipmentTransfer/edit", + }, + } + }, + created () { + }, + methods: { + add () { + //鍒濆鍖栭粯璁ゅ�� + this.edit({}); + }, + edit (record) { + this.model = Object.assign({}, record); + this.visible = true; + }, + close () { + this.$emit('close'); + this.visible = false; + this.$refs.form.clearValidate(); + }, + handleOk () { + 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; + that.close(); + }) + }else{ + return false; + } + }) + }, + handleCancel () { + this.close() + }, + + + } + } +</script> + +<style lang="less" scoped> + +</style> \ No newline at end of file diff --git a/src/views/eam/maintenance/EamPrecisionCheckDetailList.vue b/src/views/eam/maintenance/EamPrecisionCheckDetailList.vue new file mode 100644 index 0000000..3d22709 --- /dev/null +++ b/src/views/eam/maintenance/EamPrecisionCheckDetailList.vue @@ -0,0 +1,170 @@ +<template> + <a-card :bordered="false"> + + <!-- 鏌ヨ鍖哄煙 --> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="24"> + + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍒犻櫎鏍囪"> + <a-input placeholder="璇疯緭鍏ュ垹闄ゆ爣璁�" v-model="queryParam.delFlag"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璁惧鍙傛暟id"> + <a-input placeholder="璇疯緭鍏ヨ澶囧弬鏁癷d" v-model="queryParam.equipmentPrecisionId"></a-input> + </a-form-item> + </a-col> + <template v-if="toggleSearchStatus"> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="瀹炴祴鍊�"> + <a-input placeholder="璇疯緭鍏ュ疄娴嬪��" v-model="queryParam.actualValue"></a-input> + </a-form-item> + </a-col> + </template> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> + <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button> + <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button> + <a @click="handleToggleSearch" style="margin-left: 8px"> + {{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }} + <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/> + </a> + </span> + </a-col> + + </a-row> + </a-form> + </div> + + <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> + <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> + <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" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + class="j-table-force-nowrap" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + @change="handleTableChange"> + + <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-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a>鍒犻櫎</a> + </a-popconfirm> + </a-menu-item> + </a-menu> + </a-dropdown> + </span> + + </a-table> + </div> + <!-- table鍖哄煙-end --> + + <!-- 琛ㄥ崟鍖哄煙 --> + <eamPrecisionCheckDetail-modal ref="modalForm" @ok="modalFormOk"></eamPrecisionCheckDetail-modal> + </a-card> +</template> + +<script> + import '@/assets/less/TableExpand.less' + import EamPrecisionCheckDetailModal from './modules/EamPrecisionCheckDetailModal' + import { JeecgListMixin } from '@/mixins/JeecgListMixin' + + export default { + name: "EamPrecisionCheckDetailList", + mixins:[JeecgListMixin], + components: { + EamPrecisionCheckDetailModal + }, + 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: 'equipmentPrecisionId' + }, + { + title: '瀹炴祴鍊�', + align:"center", + dataIndex: 'actualValue' + }, + { + title: '鎿嶄綔', + dataIndex: 'action', + align:"center", + scopedSlots: { customRender: 'action' }, + } + ], + url: { + list: "/eam/eamPrecisionCheckDetail/list", + delete: "/eam/eamPrecisionCheckDetail/delete", + deleteBatch: "/eam/eamPrecisionCheckDetail/deleteBatch", + exportXlsUrl: "eam/eamPrecisionCheckDetail/exportXls", + importExcelUrl: "eam/eamPrecisionCheckDetail/importExcel", + }, + } + }, + computed: { + importExcelUrl: function(){ + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; + } + }, + methods: { + + } + } +</script> +<style scoped> + @import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/eam/maintenance/modules/EamPrecisionCheckDetailModal.vue b/src/views/eam/maintenance/modules/EamPrecisionCheckDetailModal.vue new file mode 100644 index 0000000..9cfd884 --- /dev/null +++ b/src/views/eam/maintenance/modules/EamPrecisionCheckDetailModal.vue @@ -0,0 +1,117 @@ +<template> + <j-modal + :title="title" + :width="800" + :visible="visible" + :confirmLoading="confirmLoading" + switchFullscreen + @ok="handleOk" + @cancel="handleCancel" + cancelText="鍏抽棴"> + + <a-spin :spinning="confirmLoading"> + <a-form-model ref="form" :model="model" :rules="validatorRules"> + + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag" label="鍒犻櫎鏍囪"> + <a-input-number v-model="model.delFlag"/> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentPrecisionId" label="璁惧鍙傛暟id"> + <a-input placeholder="璇疯緭鍏ヨ澶囧弬鏁癷d" v-model="model.equipmentPrecisionId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="actualValue" label="瀹炴祴鍊�"> + <a-input placeholder="璇疯緭鍏ュ疄娴嬪��" v-model="model.actualValue" /> + </a-form-model-item> + + </a-form-model> + </a-spin> + </j-modal> +</template> + +<script> + import { httpAction } from '@/api/manage' + import moment from "moment" + + export default { + name: "EamPrecisionCheckDetailModal", + data () { + return { + title:"鎿嶄綔", + visible: false, + model: {}, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + + confirmLoading: false, + validatorRules:{ + }, + url: { + add: "/eam/eamPrecisionCheckDetail/add", + edit: "/eam/eamPrecisionCheckDetail/edit", + }, + } + }, + created () { + }, + methods: { + add () { + //鍒濆鍖栭粯璁ゅ�� + this.edit({}); + }, + edit (record) { + this.model = Object.assign({}, record); + this.visible = true; + }, + close () { + this.$emit('close'); + this.visible = false; + this.$refs.form.clearValidate(); + }, + handleOk () { + 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; + that.close(); + }) + }else{ + return false; + } + }) + }, + handleCancel () { + this.close() + }, + + + } + } +</script> + +<style lang="less" scoped> + +</style> \ No newline at end of file diff --git a/src/views/eam/repair/EamMajorPartialRepairList.vue b/src/views/eam/repair/EamMajorPartialRepairList.vue new file mode 100644 index 0000000..4286fc2 --- /dev/null +++ b/src/views/eam/repair/EamMajorPartialRepairList.vue @@ -0,0 +1,245 @@ +<template> + <a-card :bordered="false"> + + <!-- 鏌ヨ鍖哄煙 --> + <div class="table-page-search-wrapper"> + <a-form layout="inline" @keyup.enter.native="searchQuery"> + <a-row :gutter="24"> + + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鍒犻櫎鏍囪"> + <a-input placeholder="璇疯緭鍏ュ垹闄ゆ爣璁�" v-model="queryParam.delFlag"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="queryParam.equipmentId"></a-input> + </a-form-item> + </a-col> + <template v-if="toggleSearchStatus"> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="缁翠慨绫诲瀷"> + <a-input placeholder="璇疯緭鍏ョ淮淇被鍨�" v-model="queryParam.repairType"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璁″垝寮�濮嬫椂闂�"> + <a-input placeholder="璇疯緭鍏ヨ鍒掑紑濮嬫椂闂�" v-model="queryParam.planStartTime"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璁″垝缁撴潫鏃堕棿"> + <a-input placeholder="璇疯緭鍏ヨ鍒掔粨鏉熸椂闂�" v-model="queryParam.planEndTime"></a-input> + </a-form-item> + </a-col> + </template> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> + <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button> + <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button> + <a @click="handleToggleSearch" style="margin-left: 8px"> + {{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }} + <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/> + </a> + </span> + </a-col> + + </a-row> + </a-form> + </div> + + <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> + <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> + <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" + :columns="columns" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + class="j-table-force-nowrap" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + @change="handleTableChange"> + + <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-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)"> + <a>鍒犻櫎</a> + </a-popconfirm> + </a-menu-item> + </a-menu> + </a-dropdown> + </span> + + </a-table> + </div> + <!-- table鍖哄煙-end --> + + <!-- 琛ㄥ崟鍖哄煙 --> + <eamMajorPartialRepair-modal ref="modalForm" @ok="modalFormOk"></eamMajorPartialRepair-modal> + </a-card> +</template> + +<script> + import '@/assets/less/TableExpand.less' + import EamMajorPartialRepairModal from './modules/EamMajorPartialRepairModal' + import { JeecgListMixin } from '@/mixins/JeecgListMixin' + + export default { + name: "EamMajorPartialRepairList", + mixins:[JeecgListMixin], + components: { + EamMajorPartialRepairModal + }, + 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: 'equipmentId' + }, + { + title: '缁翠慨绫诲瀷', + align:"center", + dataIndex: 'repairType' + }, + { + title: '璁″垝寮�濮嬫椂闂�', + align:"center", + dataIndex: 'planStartTime' + }, + { + title: '璁″垝缁撴潫鏃堕棿', + align:"center", + dataIndex: 'planEndTime' + }, + { + title: '缁翠慨缂栫爜', + align:"center", + dataIndex: 'repairCode' + }, + { + title: '缁翠慨鍚嶇О', + align:"center", + dataIndex: 'repairName' + }, + { + title: '缁翠慨鐘舵��', + align:"center", + dataIndex: 'repairStatus' + }, + { + title: '瀹為檯寮�濮嬫椂闂�', + align:"center", + dataIndex: 'actualStartTime' + }, + { + title: '瀹為檯缁撴潫鏃堕棿', + align:"center", + dataIndex: 'actualEndTime' + }, + { + title: '鎬婚噾棰�', + align:"center", + dataIndex: 'totalAmount' + }, + { + title: '闄勪欢', + align:"center", + dataIndex: 'attachment' + }, + { + title: '缁翠慨鎻忚堪', + align:"center", + dataIndex: 'repairDescription' + }, + { + title: '缁翠慨鏂瑰紡', + align:"center", + dataIndex: 'repairMethod' + }, + { + title: '濮斿鍏徃', + align:"center", + dataIndex: 'outsourcedCompany' + }, + { + title: '璐d换浜�', + align:"center", + dataIndex: 'responsiblePerson' + }, + { + title: '鎿嶄綔', + dataIndex: 'action', + align:"center", + scopedSlots: { customRender: 'action' }, + } + ], + url: { + list: "/eam/eamMajorPartialRepair/list", + delete: "/eam/eamMajorPartialRepair/delete", + deleteBatch: "/eam/eamMajorPartialRepair/deleteBatch", + exportXlsUrl: "eam/eamMajorPartialRepair/exportXls", + importExcelUrl: "eam/eamMajorPartialRepair/importExcel", + }, + } + }, + computed: { + importExcelUrl: function(){ + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; + } + }, + methods: { + + } + } +</script> +<style scoped> + @import '~@assets/less/common.less'; +</style> \ No newline at end of file diff --git a/src/views/eam/repair/modules/EamMajorPartialRepairModal.vue b/src/views/eam/repair/modules/EamMajorPartialRepairModal.vue new file mode 100644 index 0000000..e43dcf0 --- /dev/null +++ b/src/views/eam/repair/modules/EamMajorPartialRepairModal.vue @@ -0,0 +1,156 @@ +<template> + <j-modal + :title="title" + :width="800" + :visible="visible" + :confirmLoading="confirmLoading" + switchFullscreen + @ok="handleOk" + @cancel="handleCancel" + cancelText="鍏抽棴"> + + <a-spin :spinning="confirmLoading"> + <a-form-model ref="form" :model="model" :rules="validatorRules"> + + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="delFlag" label="鍒犻櫎鏍囪"> + <a-input-number v-model="model.delFlag"/> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentId" label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="model.equipmentId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="repairType" label="缁翠慨绫诲瀷"> + <a-input placeholder="璇疯緭鍏ョ淮淇被鍨�" v-model="model.repairType" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="planStartTime" label="璁″垝寮�濮嬫椂闂�"> + <a-input placeholder="璇疯緭鍏ヨ鍒掑紑濮嬫椂闂�" v-model="model.planStartTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="planEndTime" label="璁″垝缁撴潫鏃堕棿"> + <a-input placeholder="璇疯緭鍏ヨ鍒掔粨鏉熸椂闂�" v-model="model.planEndTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="repairCode" label="缁翠慨缂栫爜"> + <a-input placeholder="璇疯緭鍏ョ淮淇紪鐮�" v-model="model.repairCode" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="repairName" label="缁翠慨鍚嶇О"> + <a-input placeholder="璇疯緭鍏ョ淮淇悕绉�" v-model="model.repairName" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="repairStatus" label="缁翠慨鐘舵��"> + <a-input placeholder="璇疯緭鍏ョ淮淇姸鎬�" v-model="model.repairStatus" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="actualStartTime" label="瀹為檯寮�濮嬫椂闂�"> + <a-input placeholder="璇疯緭鍏ュ疄闄呭紑濮嬫椂闂�" v-model="model.actualStartTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="actualEndTime" label="瀹為檯缁撴潫鏃堕棿"> + <a-input placeholder="璇疯緭鍏ュ疄闄呯粨鏉熸椂闂�" v-model="model.actualEndTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="totalAmount" label="鎬婚噾棰�"> + <a-input placeholder="璇疯緭鍏ユ�婚噾棰�" v-model="model.totalAmount" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="attachment" label="闄勪欢"> + <a-input placeholder="璇疯緭鍏ラ檮浠�" v-model="model.attachment" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="repairDescription" label="缁翠慨鎻忚堪"> + <a-input placeholder="璇疯緭鍏ョ淮淇弿杩�" v-model="model.repairDescription" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="repairMethod" label="缁翠慨鏂瑰紡"> + <a-input placeholder="璇疯緭鍏ョ淮淇柟寮�" v-model="model.repairMethod" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="outsourcedCompany" label="濮斿鍏徃"> + <a-input placeholder="璇疯緭鍏ュ澶栧叕鍙�" v-model="model.outsourcedCompany" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="responsiblePerson" label="璐d换浜�"> + <a-input placeholder="璇疯緭鍏ヨ矗浠讳汉" v-model="model.responsiblePerson" /> + </a-form-model-item> + + </a-form-model> + </a-spin> + </j-modal> +</template> + +<script> + import { httpAction } from '@/api/manage' + import moment from "moment" + + export default { + name: "EamMajorPartialRepairModal", + data () { + return { + title:"鎿嶄綔", + visible: false, + model: {}, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + + confirmLoading: false, + validatorRules:{ + }, + url: { + add: "/eam/eamMajorPartialRepair/add", + edit: "/eam/eamMajorPartialRepair/edit", + }, + } + }, + created () { + }, + methods: { + add () { + //鍒濆鍖栭粯璁ゅ�� + this.edit({}); + }, + edit (record) { + this.model = Object.assign({}, record); + this.visible = true; + }, + close () { + this.$emit('close'); + this.visible = false; + this.$refs.form.clearValidate(); + }, + handleOk () { + 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; + that.close(); + }) + }else{ + return false; + } + }) + }, + handleCancel () { + this.close() + }, + + + } + } +</script> + +<style lang="less" scoped> + +</style> \ No newline at end of file -- Gitblit v1.9.3