123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250 |
- <template>
- <div id="materialSlModal">
- <a-modal
- title=""
- v-model="materialSlModVis"
- @cancel="handleCancel"
- width="80%"
- style="top:330px;left:100px;"
- >
- <!-- 増行 子表 -->
- <a-card :bordered="false" style="margin:10px 0">
- <!-- 子表 -->
- <a-form-model ref="formRef">
- <a-table
- v-if="materialSlData"
- bordered
- rowKey="id"
- :columns="materialSlColumns"
- :data-source="materialSlData"
- :rowSelection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
- :pagination="false"
- :scroll="{x:2100,y: 300}"
- >
-
- </a-table>
- </a-form-model>
- </a-card>
- <!-- 页面底部保存取消 -->
- <div
- :style="{
- position: 'absolute',
- right: 0,
- bottom: 0,
- width: '100%',
- borderTop: '1px solid #e9e9e9',
- padding: '10px 16px',
- background: '#fff',
- textAlign: 'right',
- zIndex: 1
- }"
- >
- <a-popconfirm title="确定放弃?" @confirm="close" okText="确定" cancelText="取消">
- <a-button :style="{ marginRight: '8px' }">返回</a-button>
- </a-popconfirm>
- <a-button type="primary" @click="addSave">
- 确认
- </a-button>
- </div>
- </a-modal>
- </div>
- </template>
- <script>
- import { JeecgListMixin } from '@/mixins/JeecgListMixin'
- import JEllipsis from '@/components/jeecg/JEllipsis'
- import moment from 'moment'
- import {getGoods} from '@api/oa/cd-personnel-files'
- export default {
- name: 'MaterialSlModal', // 报关要素
- mixins: [JeecgListMixin],
- components: { JEllipsis, moment },
- data() {
- let ellipsis = (v, l = 20) => <j-ellipsis value={v} length={l} /> // 省略
- return {
- loading: false, // 表格加载
- pushState: false, //是否推送
- // 子表表头
- materialSlColumns: [
- {
- title: '所属部门',
- dataIndex: 'sysOrgCode',
- width: 140,
- ellipsis: true,
- className: 'replacecolor'
- },
- {
- title: '物料编号',
- dataIndex: 'materialNumber',
- width: 140,
- ellipsis: true,
- className: 'replacecolor'
- },
- {
- title: '录入人账号',
- dataIndex: 'inputAccount',
- width: 130,
- ellipsis: true,
- className: 'replacecolor'
- },
- {
- title: '部门',
- dataIndex: 'department',
- width: 130,
- ellipsis: true,
- className: 'replacecolor'
- },
- {
- title: '品名',
- dataIndex: 'tradeName',
- width: 130,
- ellipsis: true,
- className: 'replacecolor'
- },
- {
- title: '品牌',
- dataIndex: 'brand',
- width: 120,
- ellipsis: true,
- className: 'replacecolor'
- },
- {
- title: '类别',
- dataIndex: 'category',
- width: 120,
- ellipsis: true,
- className: 'replacecolor'
- },
- {
- title: '规格型号',
- dataIndex: 'specificationsModels',
- ellipsis: true,
- width: 180,
- className: 'replacecolor'
- },
- {
- title: '数量',
- dataIndex: 'amount',
- width: 120,
- ellipsis: true,
- className: 'replacecolor'
- },
- {
- title: '单位',
- dataIndex: 'unit',
- width: 120,
- ellipsis: true,
- className: 'replacecolor'
- },
- {
- title: '单价(元)',
- dataIndex: 'unitPrice',
- width: 120,
- ellipsis: true,
- className: 'replacecolor'
- },
- {
- title: '金额',
- dataIndex: 'money',
- width: 90,
- className: 'replacecolor',
- },
- {
- title: '入库日期',
- dataIndex: 'inputWarehouseDate',
- width: 90,
- className: 'replacecolor',
- },
- ],
- materialSlData: [ ], // 子表信息
- materialSlModVis: false,
- selectedRowKeys:[],
- selectedRows:[],
- }
- },
- // 接收父组件 方法
- props: {},
- created() {
- },
- methods: {
- personLists(value){
- getGoods({tableName:'material_apply'}).then(res => {
- if (res.success) {
- debugger
- this.materialSlData = res.result
- }else{
- this.$message.error(res.message);
- }
- })
- },
- close() {
- this.$emit('close-declare')
- this.materialSlModVis = false
- this.declareElements = {}
- this.declareElementsData = []
- this.selectedRowKeys = []
- },
- handleCancel() {
- this.close()
- },
- onSelectChange(keys,rows){
- this.selectedRowKeys = keys;
- this.selectedRows = rows;
- },
- addSave(){
- if(this.selectedRowKeys.length == 0){
- this.$message.error('请勾选数据');
- }else if(this.selectedRowKeys.length >1){
- this.$message.error('一次只可勾选一行数据');
- }else{
- var data ={
- trade_name : this.selectedRows[0].tradeName,
- brand:this.selectedRows[0].brand,
- category:this.selectedRows[0].category,
- specifications_models:this.selectedRows[0].specificationsModels,
- unit:this.selectedRows[0].unit,
- unit_price:this.selectedRows[0].unitPrice,
-
- }
-
- this.$emit('close',data)
- this.close()
- }
- }
- },
- computed: {}
- }
- </script>
- <style lang="less" scoped>
- /deep/ .ant-table-thead > tr > th {
- text-align: center;
- // font-weight: 700;
- }
- /deep/ .ant-table-tbody {
- text-align: center;
- }
- // th.replacecolor {
- // background-color: #ccc;
- // }
- // 对话框里的card样式
- /deep/ .ant-modal-content {
- background-color: #f0f2f5;
- }
- /deep/ .ant-modal-body {
- padding: 10px;
- }
- /deep/.ant-form-item{
- margin-bottom: 0px !important;
- }
- /deep/.ant-table-scroll {
- word-break: break-all;
- }
- </style>
|