| | |
| | | pleaseEnterData :'Please enter data', |
| | | pleaseEnter :'Please enter', |
| | | msg1 :'库存已存在此物料不能删除', |
| | | unit :'单位', |
| | | }, |
| | | ingredientsStock:{ |
| | | page:{ |
| | |
| | | }, |
| | | stockReport:{ |
| | | page:{ |
| | | warehouseReport:"Warehouse Basic Data" |
| | | } |
| | | warehouseReport:"Warehouse Basic Data", |
| | | finishedProductReport:"成品报表", |
| | | materialReport:"物料报表", |
| | | |
| | | }, |
| | | finishedProductInventoryReport:"成品入库报表", |
| | | finishedProductOutboundReport:"成品出库报表", |
| | | finishedProductTransferReport:"成品调拨报表", |
| | | finishedProductDeliveryReport:"成品领出报表", |
| | | materialAdditionReport:"物料新增报表", |
| | | materialOutboundReport:"物料出库报表", |
| | | materialReturnReport:"物料返库报表", |
| | | }, |
| | | components:{ |
| | | addNewSignature :'Add label name', |
| | |
| | | pleaseEnterData :'Введите данные.', |
| | | pleaseEnter :'Введите', |
| | | msg1 :'库存已存在此物料不能删除', |
| | | unit :'单位', |
| | | }, |
| | | ingredientsStock:{ |
| | | page:{ |
| | |
| | | }, |
| | | stockReport:{ |
| | | page:{ |
| | | warehouseReport:"База запасов" |
| | | } |
| | | warehouseReport:"База запасов", |
| | | finishedProductReport:"成品报表", |
| | | materialReport:"物料报表", |
| | | |
| | | }, |
| | | finishedProductInventoryReport:"成品入库报表", |
| | | finishedProductOutboundReport:"成品出库报表", |
| | | finishedProductTransferReport:"成品调拨报表", |
| | | finishedProductDeliveryReport:"成品领出报表", |
| | | materialAdditionReport:"物料新增报表", |
| | | materialOutboundReport:"物料出库报表", |
| | | materialReturnReport:"物料返库报表", |
| | | }, |
| | | components:{ |
| | | addNewSignature :'Добавить имя метки', |
| | |
| | | pleaseEnterData :'请输入数据', |
| | | pleaseEnter :'请输入', |
| | | msg1 :'库存已存在此物料不能删除', |
| | | unit :'单位', |
| | | }, |
| | | ingredientsStock:{ |
| | | page:{ |
| | |
| | | }, |
| | | stockReport:{ |
| | | page:{ |
| | | warehouseReport:"仓储报表" |
| | | } |
| | | warehouseReport:"仓储报表", |
| | | finishedProductReport:"成品报表", |
| | | materialReport:"物料报表", |
| | | |
| | | }, |
| | | finishedProductInventoryReport:"成品入库报表", |
| | | finishedProductOutboundReport:"成品出库报表", |
| | | finishedProductTransferReport:"成品调拨报表", |
| | | finishedProductDeliveryReport:"成品领出报表", |
| | | materialAdditionReport:"物料新增报表", |
| | | materialOutboundReport:"物料出库报表", |
| | | materialReturnReport:"物料返库报表", |
| | | }, |
| | | components:{ |
| | | addNewSignature :'新增标签名', |
| | |
| | | name: 'stockReport', |
| | | component: () => import('../views/mm/stockReport/StockReport.vue'), |
| | | children:[ |
| | | { |
| | | path: 'warehouseReport', |
| | | name: 'warehouseReport', |
| | | component: () => import('../views/mm/stockReport/WarehouseReport.vue'), |
| | | }, { |
| | | path: 'stockMonthReport', |
| | | name: 'stockMonthReport', |
| | | component: () => import('../views/mm/stockReport/StockMonthReport.vue'), |
| | | }, { |
| | | path: 'subsidiaryMonthReport', |
| | | name: 'subsidiaryMonthReport', |
| | | component: () => import('../views/mm/stockReport/SubsidiaryMonthReport.vue'), |
| | | }, |
| | | /*----------- 新增 ----------------*/ |
| | | { |
| | | path: 'StockWarehouseReport', |
| | | name: 'StockWarehouseReport', |
| | | component: () => import('../views/mm/stockReport/StockWarehouseReport.vue'), |
| | | path: 'finishedProductDeliveryReport', |
| | | name: 'finishedProductDeliveryReport', |
| | | component: () => import('../views/mm/stockReport/FinishedProductDeliveryReport.vue'), |
| | | }, |
| | | { |
| | | path: 'finishedProductInventoryReport', |
| | | name: 'finishedProductInventoryReport', |
| | | component: () => import('../views/mm/stockReport/FinishedProductInventoryReport.vue'), |
| | | }, |
| | | { |
| | | path: 'finishedProductOutboundReport', |
| | | name: 'finishedProductOutboundReport', |
| | | component: () => import('../views/mm/stockReport/FinishedProductOutboundReport.vue'), |
| | | }, |
| | | { |
| | | path: 'finishedProductTransferReport', |
| | | name: 'finishedProductTransferReport', |
| | | component: () => import('../views/mm/stockReport/FinishedProductTransferReport.vue'), |
| | | },{ |
| | | path: 'materialAdditionReport', |
| | | name: 'materialAdditionReport', |
| | | component: () => import('../views/mm/stockReport/MaterialAdditionReport.vue'), |
| | | }, |
| | | { |
| | | path: 'materialOutboundReport', |
| | | name: 'materialOutboundReport', |
| | | component: () => import('../views/mm/stockReport/MaterialOutboundReport.vue'), |
| | | }, |
| | | { |
| | | path: 'materialReturnReport', |
| | | name: 'materialReturnReport', |
| | | component: () => import('../views/mm/stockReport/MaterialReturnReport.vue'), |
| | | }, { |
| | | path: '', |
| | | redirect: '/main/stockReport/warehouseReport' |
| | | redirect: '/main/stockReport/finishedProductInventoryReport' |
| | | } |
| | | ] |
| | | }, |
New file |
| | |
| | | <script setup> |
| | | |
| | | import BasicTable from "@/components/BasicTable.vue" |
| | | import request from "@/utils/request" |
| | | import { ref} from "vue" |
| | | import { useI18n } from 'vue-i18n' |
| | | |
| | | //语言获取 |
| | | const { t } = useI18n() |
| | | |
| | | const childrenData = ref({ |
| | | columns:[ |
| | | {type: 'seq',fixed:"left", title: t('basicData.Number'), width: '80' }, |
| | | {field: 'operationOrderNumber', width:'150', title: t('productStock.operationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderId', width: '150',title: t('order.orderId'),showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operationNumber', width: '100',title: t('order.OrderNum'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateType', width: '120',title:t('warehouseBasicData.type'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'quantity', width: '140',title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.productId',width: '100', title: t('order.productId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.productName',width: '140', title: t('order.product'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.height',width: '100', title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'staterOperationOrderNumber', width: '150',title: t('productStock.staterOperationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'endOperationOrderNumber', width: '100',title: t('productStock.endOperationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operator', width: '100',title: t('productStock.creator'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateTime', width:'140', title: t('productStock.productionDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'processId', width:'140', title: t('processCard.processId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'type', width:'140', title: t('productStock.typeClaim'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'reviewed', width: '100',title: t('productStock.reviewed'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'reviewedTime', width: '140',title: t('productStock.approvedDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'remarks', width: '140',title: t('productStock.remarks'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | |
| | | ],//表格表头字段 |
| | | data:[],//表格数据 |
| | | url :'/finishedGoodsInventory/getSelectFinishedOperateLogReport/领出', |
| | | exportUrl :'/finishedGoodsInventory/exportFinishedOperateLogReport/领出', |
| | | exportName:t('stockReport.finishedProductDeliveryReport'), |
| | | footList:['quantity'] |
| | | }) |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <basic-table |
| | | :childrenData="childrenData"/> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | </style> |
New file |
| | |
| | | <script setup> |
| | | |
| | | import BasicTable from "@/components/BasicTable.vue" |
| | | import request from "@/utils/request" |
| | | import { ref} from "vue" |
| | | import { useI18n } from 'vue-i18n' |
| | | |
| | | //语言获取 |
| | | const { t } = useI18n() |
| | | |
| | | const childrenData = ref({ |
| | | columns:[ |
| | | {type: 'seq',fixed:"left", title: t('basicData.Number'), width: '80' }, |
| | | {field: 'operationOrderNumber', width:'150', title: t('productStock.operationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderId', width: '150',title: t('order.orderId'),showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operationNumber', width: '100',title: t('order.OrderNum'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateType', width: '120',title:t('warehouseBasicData.type'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'quantity', width: '140',title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.productId',width: '100', title: t('order.productId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.productName',width: '140', title: t('order.product'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.height',width: '100', title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'staterOperationOrderNumber', width: '150',title: t('productStock.staterOperationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'endOperationOrderNumber', width: '100',title: t('productStock.endOperationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operator', width: '100',title: t('productStock.creator'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateTime', width:'140', title: t('productStock.productionDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'processId', width:'140', title: t('processCard.processId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'type', width:'140', title: t('productStock.typeClaim'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'reviewed', width: '100',title: t('productStock.reviewed'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'reviewedTime', width: '140',title: t('productStock.approvedDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'remarks', width: '140',title: t('productStock.remarks'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | |
| | | ],//表格表头字段 |
| | | data:[],//表格数据 |
| | | url :'/finishedGoodsInventory/getSelectFinishedOperateLogReport/入库', |
| | | exportUrl :'/finishedGoodsInventory/exportFinishedOperateLogReport/入库', |
| | | exportName:t('stockReport.finishedProductInventoryReport'), |
| | | footList:['quantity'] |
| | | }) |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <basic-table |
| | | :childrenData="childrenData"/> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | </style> |
New file |
| | |
| | | <script setup> |
| | | |
| | | import BasicTable from "@/components/BasicTable.vue" |
| | | import request from "@/utils/request" |
| | | import { ref} from "vue" |
| | | import { useI18n } from 'vue-i18n' |
| | | |
| | | //语言获取 |
| | | const { t } = useI18n() |
| | | |
| | | const childrenData = ref({ |
| | | columns:[ |
| | | {type: 'seq',fixed:"left", title: t('basicData.Number'), width: '80' }, |
| | | {field: 'operationOrderNumber', width:'150', title: t('productStock.operationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderId', width: '150',title: t('order.orderId'),showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operationNumber', width: '100',title: t('order.OrderNum'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateType', width: '120',title:t('warehouseBasicData.type'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'quantity', width: '140',title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.productId',width: '100', title: t('order.productId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.productName',width: '140', title: t('order.product'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.height',width: '100', title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'staterOperationOrderNumber', width: '150',title: t('productStock.staterOperationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'endOperationOrderNumber', width: '100',title: t('productStock.endOperationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operator', width: '100',title: t('productStock.creator'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateTime', width:'140', title: t('productStock.productionDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'processId', width:'140', title: t('processCard.processId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'type', width:'140', title: t('productStock.typeClaim'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'reviewed', width: '100',title: t('productStock.reviewed'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'reviewedTime', width: '140',title: t('productStock.approvedDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'remarks', width: '140',title: t('productStock.remarks'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | |
| | | ],//表格表头字段 |
| | | data:[],//表格数据 |
| | | url :'/finishedGoodsInventory/getSelectFinishedOperateLogReport/出库', |
| | | exportUrl :'/finishedGoodsInventory/exportFinishedOperateLogReport/出库', |
| | | exportName:t('stockReport.finishedProductOutboundReport'), |
| | | footList:['quantity'] |
| | | }) |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <basic-table |
| | | :childrenData="childrenData"/> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | </style> |
New file |
| | |
| | | <script setup> |
| | | |
| | | import BasicTable from "@/components/BasicTable.vue" |
| | | import request from "@/utils/request" |
| | | import { ref} from "vue" |
| | | import { useI18n } from 'vue-i18n' |
| | | |
| | | //语言获取 |
| | | const { t } = useI18n() |
| | | |
| | | const childrenData = ref({ |
| | | columns:[ |
| | | {type: 'seq',fixed:"left", title: t('basicData.Number'), width: '80' }, |
| | | {field: 'operationOrderNumber', width:'150', title: t('productStock.operationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderId', width: '150',title: t('order.orderId'),showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operationNumber', width: '100',title: t('order.OrderNum'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateType', width: '120',title:t('warehouseBasicData.type'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'quantity', width: '140',title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.productId',width: '100', title: t('order.productId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.productName',width: '140', title: t('order.product'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.height',width: '100', title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'staterOperationOrderNumber', width: '150',title: t('productStock.staterOperationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'endOperationOrderNumber', width: '100',title: t('productStock.endOperationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operator', width: '100',title: t('productStock.creator'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateTime', width:'140', title: t('productStock.productionDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'processId', width:'140', title: t('processCard.processId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'type', width:'140', title: t('productStock.typeClaim'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'reviewed', width: '100',title: t('productStock.reviewed'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'reviewedTime', width: '140',title: t('productStock.approvedDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'remarks', width: '140',title: t('productStock.remarks'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | |
| | | ],//表格表头字段 |
| | | data:[],//表格数据 |
| | | url :'/finishedGoodsInventory/getSelectFinishedOperateLogReport/调拨', |
| | | exportUrl :'/finishedGoodsInventory/exportFinishedOperateLogReport/调拨', |
| | | exportName:t('stockReport.finishedProductTransferReport'), |
| | | footList:['quantity'] |
| | | }) |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <basic-table |
| | | :childrenData="childrenData"/> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | </style> |
New file |
| | |
| | | <script setup> |
| | | |
| | | import BasicTable from "@/components/BasicTable.vue" |
| | | import request from "@/utils/request" |
| | | import { ref} from "vue" |
| | | import { useI18n } from 'vue-i18n' |
| | | |
| | | //语言获取 |
| | | const { t } = useI18n() |
| | | |
| | | const childrenData = ref({ |
| | | columns:[ |
| | | {type: 'seq',fixed:"left", title: t('basicData.Number'), width: '80' }, |
| | | {field: 'operationOrderNumber', width:'150', title: t('productStock.operationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operationNumber', width: '100',title: t('order.OrderNum'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateType', width: '120',title:t('warehouseBasicData.type'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'quantity', width: '140',title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'inventoryId',width: '100', title: t('ingredientsStock.id'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'materialCode',width: '140', title: t('ingredients.materialCode'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'materialName',width: '140', title: t('ingredientsStock.materialName'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'height',width: '100', title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'thickness', width: '150',title: t('order.totalThickness'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'producer', width: '100',title: t('ingredientsStock.producer'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'unit', width:'140', title: t('ingredients.unit'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'singlePieceArea', width:'140', title: t('productStock.singlePieceArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'inventoryArea', width:'140', title: t('productStock.inventoryArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operator', width: '100',title: t('productStock.creator'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateTime', width:'140', title: t('productStock.productionDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'remarks', width: '140',title: t('productStock.remarks'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | |
| | | ],//表格表头字段 |
| | | data:[],//表格数据 |
| | | url :'/materialInventory/getMaterialLogReport/物料新增', |
| | | exportUrl :'/materialInventory/exportMaterialLogReport/物料新增', |
| | | exportName:t('stockReport.materialAdditionReport'), |
| | | footList:['quantity'] |
| | | }) |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <basic-table |
| | | :childrenData="childrenData"/> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | </style> |
New file |
| | |
| | | <script setup> |
| | | |
| | | import BasicTable from "@/components/BasicTable.vue" |
| | | import request from "@/utils/request" |
| | | import { ref} from "vue" |
| | | import { useI18n } from 'vue-i18n' |
| | | |
| | | //语言获取 |
| | | const { t } = useI18n() |
| | | |
| | | const childrenData = ref({ |
| | | columns:[ |
| | | {type: 'seq',fixed:"left", title: t('basicData.Number'), width: '80' }, |
| | | {field: 'operationOrderNumber', width:'150', title: t('productStock.operationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operationNumber', width: '100',title: t('order.OrderNum'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateType', width: '120',title:t('warehouseBasicData.type'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'quantity', width: '140',title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'inventoryId',width: '100', title: t('ingredientsStock.id'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'materialCode',width: '140', title: t('ingredients.materialCode'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'materialName',width: '140', title: t('ingredientsStock.materialName'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'height',width: '100', title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'thickness', width: '150',title: t('order.totalThickness'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'producer', width: '100',title: t('ingredientsStock.producer'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'unit', width:'140', title: t('ingredients.unit'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'singlePieceArea', width:'140', title: t('productStock.singlePieceArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'inventoryArea', width:'140', title: t('productStock.inventoryArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operator', width: '100',title: t('productStock.creator'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateTime', width:'140', title: t('productStock.productionDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'remarks', width: '140',title: t('productStock.remarks'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | |
| | | ],//表格表头字段 |
| | | data:[],//表格数据 |
| | | url :'/materialInventory/getMaterialLogReport/物料出库', |
| | | exportUrl :'/materialInventory/exportMaterialLogReport/物料出库', |
| | | exportName:t('stockReport.materialOutboundReport'), |
| | | footList:['quantity'] |
| | | }) |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <basic-table |
| | | :childrenData="childrenData"/> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | </style> |
New file |
| | |
| | | <script setup> |
| | | |
| | | import BasicTable from "@/components/BasicTable.vue" |
| | | import request from "@/utils/request" |
| | | import { ref} from "vue" |
| | | import { useI18n } from 'vue-i18n' |
| | | |
| | | //语言获取 |
| | | const { t } = useI18n() |
| | | |
| | | const childrenData = ref({ |
| | | columns:[ |
| | | {type: 'seq',fixed:"left", title: t('basicData.Number'), width: '80' }, |
| | | {field: 'operationOrderNumber', width:'150', title: t('productStock.operationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operationNumber', width: '100',title: t('order.OrderNum'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateType', width: '120',title:t('warehouseBasicData.type'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'quantity', width: '140',title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'inventoryId',width: '100', title: t('ingredientsStock.id'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'materialCode',width: '140', title: t('ingredients.materialCode'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'materialName',width: '140', title: t('ingredientsStock.materialName'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'height',width: '100', title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'thickness', width: '150',title: t('order.totalThickness'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'producer', width: '100',title: t('ingredientsStock.producer'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'unit', width:'140', title: t('ingredients.unit'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'singlePieceArea', width:'140', title: t('productStock.singlePieceArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'inventoryArea', width:'140', title: t('productStock.inventoryArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operator', width: '100',title: t('productStock.creator'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'operateTime', width:'140', title: t('productStock.productionDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'remarks', width: '140',title: t('productStock.remarks'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | |
| | | ],//表格表头字段 |
| | | data:[],//表格数据 |
| | | url :'/materialInventory/getMaterialLogReport/物料返库', |
| | | exportUrl :'/materialInventory/exportMaterialLogReport/物料返库', |
| | | exportName:t('stockReport.materialReturnReport'), |
| | | footList:['quantity'] |
| | | }) |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <basic-table |
| | | :childrenData="childrenData"/> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | </style> |
| | |
| | | <script setup> |
| | | import {ArrowLeftBold, ArrowRight, Search} from "@element-plus/icons-vue" |
| | | import {ArrowDown, ArrowLeftBold, ArrowRight, Search} from "@element-plus/icons-vue" |
| | | |
| | | import {useRouter,useRoute,onBeforeRouteUpdate} from "vue-router"; |
| | | import { useI18n } from 'vue-i18n' |
| | |
| | | function changeRouter(index){ |
| | | indexFlag=index |
| | | } |
| | | |
| | | const handleCommand = (command) => { |
| | | router.push({ |
| | | path: command |
| | | }) |
| | | } |
| | | </script> |
| | | |
| | | <template> |
| | | <div id="main-div"> |
| | | <div id="div-title"> |
| | | <el-breadcrumb :separator-icon="ArrowRight"> |
| | | <!-- <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" |
| | | :to="{path:'/main/stockReport/WarehouseReport'}">原材料报表 |
| | | </el-breadcrumb-item>--> |
| | | <el-breadcrumb-item @click="changeRouter(2)" :class="indexFlag===2?'indexTag':''" |
| | | :to="{path:'/main/stockReport/stockWarehouseReport'}">{{$t('report.finishedProductReport')}} |
| | | <el-breadcrumb-item |
| | | @click="changeRouter(2)" |
| | | :class="indexFlag===2?'indexTag':''" |
| | | > |
| | | <el-dropdown @command="handleCommand"> |
| | | <span class="el-dropdown-link" style="font-weight: 700;outline: none;"> |
| | | {{ $t('report.finishedProductReport') }} |
| | | <el-icon class="el-icon--right"> |
| | | <arrow-down /> |
| | | </el-icon> |
| | | </span> |
| | | <template #dropdown> |
| | | <el-dropdown-menu> |
| | | <el-dropdown-item command="/main/stockReport/finishedProductInventoryReport" >{{$t('成品入库报表')}}</el-dropdown-item> |
| | | <el-dropdown-item command="/main/stockReport/finishedProductOutboundReport" >{{ $t('成品出库报表') }}</el-dropdown-item> |
| | | <el-dropdown-item command="/main/stockReport/finishedProductTransferReport" >{{ $t('成品调拨报表') }}</el-dropdown-item> |
| | | <el-dropdown-item command="/main/stockReport/finishedProductDeliveryReport" >{{ $t('成品领出报表') }}</el-dropdown-item> |
| | | </el-dropdown-menu> |
| | | </template> |
| | | </el-dropdown> |
| | | |
| | | </el-breadcrumb-item> |
| | | <!-- <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" |
| | | :to="{path:'/main/stockReport/StockMonthReport'}">原片月结报表 |
| | | |
| | | <el-breadcrumb-item |
| | | @click="changeRouter(2)" |
| | | :class="indexFlag===2?'indexTag':''" |
| | | > |
| | | <el-dropdown @command="handleCommand"> |
| | | <span class="el-dropdown-link" style="font-weight: 700;outline: none;"> |
| | | {{ $t('stockReport.page.materialReport') }} |
| | | <el-icon class="el-icon--right"> |
| | | <arrow-down /> |
| | | </el-icon> |
| | | </span> |
| | | <template #dropdown> |
| | | <el-dropdown-menu> |
| | | <el-dropdown-item command="/main/stockReport/materialAdditionReport" >{{$t('物料新增报表')}}</el-dropdown-item> |
| | | <el-dropdown-item command="/main/stockReport/materialOutboundReport" >{{ $t('物料出库报表') }}</el-dropdown-item> |
| | | <el-dropdown-item command="/main/stockReport/materialReturnReport" >{{ $t('物料返库报表') }}</el-dropdown-item> |
| | | </el-dropdown-menu> |
| | | </template> |
| | | </el-dropdown> |
| | | |
| | | </el-breadcrumb-item> |
| | | <el-breadcrumb-item @click="changeRouter(4)" :class="indexFlag===4?'indexTag':''" |
| | | :to="{path:'/main/stockReport/SubsidiaryMonthReport'}"> |
| | | 辅料月结报表 |
| | | </el-breadcrumb-item>--> |
| | | <el-breadcrumb-item v-show="false" :to="{ path: '/main/order/orderReport' }">{{$t('productStock.reportForms')}}</el-breadcrumb-item> |
| | | </el-breadcrumb> |
| | | </div> |
| | |
| | | return |
| | | } |
| | | //表头数据校验 |
| | | const project = titleUploadData.value.project |
| | | if(project === null || project === undefined || project === ''){ |
| | | ElMessage.error(t('delivery.pleaseEnterTheAmountOfFunds')) |
| | | return |
| | | } |
| | | const paymentTerms = titleUploadData.value.paymentTerms |
| | | if(paymentTerms === null || paymentTerms === undefined || paymentTerms === ''){ |
| | | ElMessage.error(t('delivery.pleaseSelectPaymentTerms')) |
| | |
| | | |
| | | @ApiOperation("成品库存记录查询接口") |
| | | @SaCheckPermission("warehouseReport.search") |
| | | @PostMapping("/getSelectFinishedOperateLogReport/{pageNum}/{pageSize}/{selectDate}") |
| | | public Result getSelectFinishedOperateLogReport(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody FinishedOperateLog finishedOperateLog){ |
| | | return Result.seccess(finishedGoodsInventoryService.getSelectFinishedOperateLogReport(pageNum,pageSize,selectDate,finishedOperateLog)); |
| | | @PostMapping("/getSelectFinishedOperateLogReport/{type}/{pageNum}/{pageSize}/{selectDate}") |
| | | public Result getSelectFinishedOperateLogReport(@PathVariable String type,@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody FinishedOperateLog finishedOperateLog){ |
| | | return Result.seccess(finishedGoodsInventoryService.getSelectFinishedOperateLogReport(type,pageNum,pageSize,selectDate,finishedOperateLog)); |
| | | } |
| | | |
| | | @ApiOperation("成品报表导出") |
| | | @PostMapping("/exportFinishedOperateLogReport") |
| | | public void exportFinishedOperateLogReport(HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException { |
| | | @PostMapping("/exportFinishedOperateLogReport/{type}") |
| | | public void exportFinishedOperateLogReport(@PathVariable String type,HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException { |
| | | //参数:相应的数据,实体类信息,相应的方法(数据获取),生成的excel名字 |
| | | DownExcel.download(response, FinishedOperateLogDTO.class, finishedGoodsInventoryService.exportFinishedOperateLogReport(dates),"orderReport"); |
| | | DownExcel.download(response, FinishedOperateLogDTO.class, finishedGoodsInventoryService.exportFinishedOperateLogReport(dates,type),"orderReport"); |
| | | } |
| | | |
| | | |
| | |
| | | import cn.dev33.satoken.annotation.SaCheckPermission; |
| | | import com.example.erp.common.Constants; |
| | | import com.example.erp.common.Result; |
| | | import com.example.erp.dto.mm.FinishedOperateLogDTO; |
| | | import com.example.erp.entity.mm.*; |
| | | import com.example.erp.entity.pp.OptimizeUse; |
| | | import com.example.erp.exception.ServiceException; |
| | | import com.example.erp.service.mm.MaterialInventoryService; |
| | | import com.example.erp.service.mm.MaterialStoreService; |
| | | import com.example.erp.tools.DownExcel; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.io.IOException; |
| | | import java.time.LocalDate; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | |
| | | return Result.seccess(materialInventoryService.printCreateOutbound(materialOutboundId)); |
| | | } |
| | | |
| | | @ApiOperation("物料库存记录查询接口") |
| | | @SaCheckPermission("warehouseReport.search") |
| | | @PostMapping("/getMaterialLogReport/{type}/{pageNum}/{pageSize}/{selectDate}") |
| | | public Result getMaterialLogReport(@PathVariable String type,@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable List<String> selectDate, @RequestBody MaterialLog materialLog){ |
| | | return Result.seccess(materialInventoryService.getMaterialLogReport(type,pageNum,pageSize,selectDate,materialLog)); |
| | | } |
| | | |
| | | @ApiOperation("物料报表导出") |
| | | @PostMapping("/exportMaterialLogReport/{type}") |
| | | public void exportMaterialLogReport(@PathVariable String type, HttpServletResponse response, @RequestBody List<LocalDate> dates) throws IOException, IllegalAccessException, InstantiationException { |
| | | //参数:相应的数据,实体类信息,相应的方法(数据获取),生成的excel名字 |
| | | DownExcel.download(response, MaterialLog.class, materialInventoryService.exportMaterialLogReport(dates,type),"orderReport"); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | |
| | | package com.example.erp.entity.mm; |
| | | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.example.erp.entity.sd.OrderDetail; |
| | |
| | | @Data |
| | | public class MaterialLog { |
| | | @TableId(type = IdType.AUTO) |
| | | |
| | | @ExcelProperty("编号") |
| | | private Long id; |
| | | @ExcelProperty("操作单号") |
| | | private String operationOrderNumber; |
| | | @ExcelProperty("类型") |
| | | private String operateType; |
| | | @ExcelProperty("序号") |
| | | private Integer operationNumber; |
| | | @ExcelProperty("库存编号") |
| | | private Long inventoryId; |
| | | @ExcelProperty("物料编码") |
| | | private Long materialCode; |
| | | @ExcelProperty("物料名称") |
| | | private String materialName; |
| | | @ExcelProperty("产地") |
| | | private String producer; |
| | | @ExcelProperty("单位") |
| | | private String unit; |
| | | @ExcelProperty("宽度") |
| | | private Double width; |
| | | @ExcelProperty("高度") |
| | | private Double height; |
| | | @ExcelProperty("厚度") |
| | | private Double thickness; |
| | | @ExcelProperty("数量") |
| | | private Integer quantity; |
| | | @ExcelProperty("单片面积") |
| | | private Double singlePieceArea; |
| | | @ExcelProperty("库存区域") |
| | | private String inventoryArea; |
| | | @ExcelProperty("备注") |
| | | private String remarks; |
| | | @ExcelProperty("操作人") |
| | | private String operator; |
| | | @ExcelProperty("创建时间") |
| | | private LocalDate operateTime; |
| | | |
| | | |
| | |
| | | |
| | | List<FinishedOperateLog> getSelectFinishedOperateLogReport(@Param("offset") Integer offset, |
| | | @Param("pageSize") Integer pageSize,String startDate, String endDate, |
| | | @Param("finishedOperateLog") FinishedOperateLog finishedOperateLog); |
| | | @Param("finishedOperateLog") FinishedOperateLog finishedOperateLog,String type); |
| | | |
| | | Map<String,Integer> getSelectFinishedOperateLogReportPageTotal(@Param("offset") Integer offset, |
| | | @Param("pageSize") Integer pageSize,String startDate, String endDate, |
| | | @Param("finishedOperateLog") FinishedOperateLog finishedOperateLog); |
| | | @Param("finishedOperateLog") FinishedOperateLog finishedOperateLog,String type); |
| | | |
| | | List<FinishedOperateLogDTO> exportFinishedOperateLogReport(List<LocalDate> dates); |
| | | List<FinishedOperateLogDTO> exportFinishedOperateLogReport(List<LocalDate> dates,String type); |
| | | |
| | | Boolean insertOrderFinishedOperateLog(@Param("orderDetail") OrderDetail orderDetail,@Param("userName") String userName,@Param("oddNumber") String oddNumber); |
| | | |
| | |
| | | package com.example.erp.mapper.mm; |
| | | |
| | | import com.example.erp.dto.mm.FinishedOperateLogDTO; |
| | | import com.example.erp.entity.mm.*; |
| | | import com.example.erp.entity.pp.OptimizeUse; |
| | | import com.example.erp.entity.sd.Delivery; |
| | |
| | | |
| | | MaterialInventory getMaterialInventoryById(@Param("id") Long id); |
| | | |
| | | List<MaterialLog> getMaterialLogReport(@Param("offset") Integer offset, |
| | | @Param("pageSize") Integer pageSize,String startDate, String endDate, |
| | | @Param("materialLog") MaterialLog materialLog,String type); |
| | | |
| | | Map<String,Integer> getMaterialLogReportTotal(@Param("offset") Integer offset, |
| | | @Param("pageSize") Integer pageSize,String startDate, String endDate, |
| | | @Param("materialLog") MaterialLog materialLog,String type); |
| | | |
| | | List<MaterialLog> exportMaterialLogReport(List<LocalDate> dates, String type); |
| | | |
| | | } |
| | |
| | | return map; |
| | | } |
| | | |
| | | public Map<String, Object> getSelectFinishedOperateLogReport(Integer pageNum, Integer pageSize, List<String> selectDate, FinishedOperateLog finishedOperateLog) { |
| | | public Map<String, Object> getSelectFinishedOperateLogReport(String type,Integer pageNum, Integer pageSize, List<String> selectDate, FinishedOperateLog finishedOperateLog) { |
| | | Integer offset = (pageNum-1)*pageSize; |
| | | String endDate = LocalDate.now().toString(); |
| | | String startDate = LocalDate.now().minusDays(15).toString(); |
| | |
| | | } |
| | | |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("data", finishedOperateLogMapper.getSelectFinishedOperateLogReport(offset, pageSize,startDate, endDate, finishedOperateLog)); |
| | | map.put("total", finishedOperateLogMapper.getSelectFinishedOperateLogReportPageTotal(offset, pageSize,startDate, endDate, finishedOperateLog)); |
| | | map.put("data", finishedOperateLogMapper.getSelectFinishedOperateLogReport(offset, pageSize,startDate, endDate, finishedOperateLog,type)); |
| | | map.put("total", finishedOperateLogMapper.getSelectFinishedOperateLogReportPageTotal(offset, pageSize,startDate, endDate, finishedOperateLog,type)); |
| | | List<String> list = new ArrayList<>(); |
| | | list.add(startDate); |
| | | list.add(endDate); |
| | |
| | | |
| | | } |
| | | |
| | | public List<FinishedOperateLogDTO> exportFinishedOperateLogReport(List<LocalDate> dates) { |
| | | return finishedOperateLogMapper.exportFinishedOperateLogReport(dates); |
| | | public List<FinishedOperateLogDTO> exportFinishedOperateLogReport(List<LocalDate> dates,String type) { |
| | | return finishedOperateLogMapper.exportFinishedOperateLogReport(dates,type); |
| | | } |
| | | |
| | | |
| | |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.dynamic.datasource.annotation.DS; |
| | | import com.example.erp.dto.mm.FinishedOperateLogDTO; |
| | | import com.example.erp.entity.mm.*; |
| | | import com.example.erp.entity.pp.FlowCard; |
| | | import com.example.erp.entity.pp.OptimizeUse; |
| | |
| | | return map; |
| | | } |
| | | |
| | | public Map<String, Object> getMaterialLogReport(String type,Integer pageNum, Integer pageSize, List<String> selectDate, MaterialLog materialLog) { |
| | | Integer offset = (pageNum-1)*pageSize; |
| | | String endDate = LocalDate.now().toString(); |
| | | String startDate = LocalDate.now().minusDays(15).toString(); |
| | | if(selectDate !=null && selectDate.size()==2){ |
| | | if(!selectDate.get(0).isEmpty()){ |
| | | startDate = selectDate.get(0); |
| | | } |
| | | if(!selectDate.get(1).isEmpty()){ |
| | | endDate = selectDate.get(1); |
| | | } |
| | | } |
| | | |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("data", materialInventoryMapper.getMaterialLogReport(offset, pageSize,startDate, endDate, materialLog,type)); |
| | | map.put("total", materialInventoryMapper.getMaterialLogReportTotal(offset, pageSize,startDate, endDate, materialLog,type)); |
| | | List<String> list = new ArrayList<>(); |
| | | list.add(startDate); |
| | | list.add(endDate); |
| | | map.put("selectDate",list); |
| | | return map; |
| | | } |
| | | |
| | | public List<MaterialLog> exportMaterialLogReport(List<LocalDate> dates, String type) { |
| | | return materialInventoryMapper.exportMaterialLogReport(dates,type); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | |
| | | from mm.finished_operate_log aa where aa.status!='已作废') fol |
| | | left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number |
| | | <where> |
| | | date(fol.operate_time)>=#{startDate} and date(fol.operate_time) <= #{endDate} |
| | | date(fol.operate_time)>=#{startDate} and date(fol.operate_time) <= #{endDate} and fol.operate_type=#{type} |
| | | <if test="finishedOperateLog.operateType != null and finishedOperateLog.operateType != ''"> |
| | | and fol.operate_type regexp #{finishedOperateLog.operateType} |
| | | </if> |
| | |
| | | from mm.finished_operate_log aa where aa.status!='已作废') fol |
| | | left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number |
| | | <where> |
| | | date(fol.operate_time)>=#{startDate} and date(fol.operate_time) <= #{endDate} |
| | | date(fol.operate_time)>=#{startDate} and date(fol.operate_time) <= #{endDate} and fol.operate_type=#{type} |
| | | <if test="finishedOperateLog.operateType != null and finishedOperateLog.operateType != ''"> |
| | | and fol.operate_type regexp #{finishedOperateLog.operateType} |
| | | </if> |
| | |
| | | from (select * |
| | | from mm.finished_operate_log aa where aa.status!='已作废') fol |
| | | left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number |
| | | where date(fol.operate_time)>=#{dates[0]} and date(fol.operate_time) <= #{dates[1]} |
| | | where date(fol.operate_time)>=#{dates[0]} and date(fol.operate_time) <= #{dates[1]} and fol.operate_type=#{type} |
| | | |
| | | </select> |
| | | |
| | |
| | | where mi.id = #{id} |
| | | </select> |
| | | |
| | | <select id="getMaterialLogReport" > |
| | | select * |
| | | from mm.material_log ml |
| | | <where> |
| | | date(ml.operate_time)>=#{startDate} and date(ml.operate_time) <= #{endDate} and ml.operate_type=#{type} |
| | | <if test="materialLog.operateType != null and materialLog.operateType != ''"> |
| | | and ml.operate_type regexp #{materialLog.operateType} |
| | | </if> |
| | | <if test="materialLog.operationOrderNumber != null and materialLog.operationOrderNumber != ''"> |
| | | and ml.operation_order_number regexp #{materialLog.operationOrderNumber} |
| | | </if> |
| | | <if test="materialLog.operationNumber != null and materialLog.operationNumber != ''"> |
| | | and ml.operation_number regexp #{materialLog.operationNumber} |
| | | </if> |
| | | <if test="materialLog.quantity != null and materialLog.quantity != ''"> |
| | | and ml.quantity regexp #{materialLog.quantity} |
| | | </if> |
| | | <if test="materialLog.width != null and materialLog.width != ''"> |
| | | and ml.width regexp REGEXP_REPLACE(#{materialLog.width},'\\.0+$','') |
| | | </if> |
| | | <if test="materialLog.height != null and materialLog.height != ''"> |
| | | and ml.height regexp REGEXP_REPLACE(#{materialLog.height},'\\.0+$','') |
| | | </if> |
| | | <if test="materialLog.thickness != null and materialLog.thickness != ''"> |
| | | and ml.thickness regexp REGEXP_REPLACE(#{materialLog.thickness},'\\.0+$','') |
| | | </if> |
| | | |
| | | <if test="materialLog.inventoryId != null and materialLog.inventoryId != ''"> |
| | | and ml.inventoryId regexp #{materialLog.inventoryId} |
| | | </if> |
| | | <if test="materialLog.materialCode != null and materialLog.materialCode != ''"> |
| | | and ml.materialCode regexp #{materialLog.materialCode} |
| | | </if> |
| | | <if test="materialLog.materialName != null and materialLog.materialName != ''"> |
| | | and ml.materialName regexp #{materialLog.materialName} |
| | | </if> |
| | | <if test="materialLog.producer != null and materialLog.producer != ''"> |
| | | and ml.producer regexp #{materialLog.producer} |
| | | </if> |
| | | <if test="materialLog.unit != null and materialLog.unit != ''"> |
| | | and ml.unit regexp #{materialLog.unit} |
| | | </if> |
| | | <if test="materialLog.singlePieceArea != null and materialLog.singlePieceArea != ''"> |
| | | and ml.singlePieceArea regexp REGEXP_REPLACE(#{materialLog.singlePieceArea},'\\.0+$','') |
| | | </if> |
| | | <if test="materialLog.inventoryArea != null and materialLog.inventoryArea != ''"> |
| | | and ml.inventoryArea regexp #{materialLog.inventoryArea} |
| | | </if> |
| | | <if test="materialLog.operator != null and materialLog.operator != ''"> |
| | | and ml.operator regexp #{materialLog.operator} |
| | | </if> |
| | | <if test="materialLog.remarks != null and materialLog.remarks != ''"> |
| | | and ml.remarks regexp #{materialLog.remarksr} |
| | | </if> |
| | | </where> |
| | | order by ml.id desc |
| | | limit #{offset},#{pageSize}; |
| | | </select> |
| | | |
| | | |
| | | <select id="getMaterialLogReportTotal"> |
| | | select CEILING(count(ml.id)/#{pageSize}) as 'pageTotal', |
| | | count(ml.id) as 'total' |
| | | from mm.material_log ml |
| | | <where> |
| | | date(ml.operate_time)>=#{startDate} and date(ml.operate_time) <= #{endDate} and ml.operate_type=#{type} |
| | | <if test="materialLog.operateType != null and materialLog.operateType != ''"> |
| | | and ml.operate_type regexp #{materialLog.operateType} |
| | | </if> |
| | | <if test="materialLog.operationOrderNumber != null and materialLog.operationOrderNumber != ''"> |
| | | and ml.operation_order_number regexp #{materialLog.operationOrderNumber} |
| | | </if> |
| | | <if test="materialLog.operationNumber != null and materialLog.operationNumber != ''"> |
| | | and ml.operation_number regexp #{materialLog.operationNumber} |
| | | </if> |
| | | <if test="materialLog.quantity != null and materialLog.quantity != ''"> |
| | | and ml.quantity regexp #{materialLog.quantity} |
| | | </if> |
| | | <if test="materialLog.width != null and materialLog.width != ''"> |
| | | and ml.width regexp REGEXP_REPLACE(#{materialLog.width},'\\.0+$','') |
| | | </if> |
| | | <if test="materialLog.height != null and materialLog.height != ''"> |
| | | and ml.height regexp REGEXP_REPLACE(#{materialLog.height},'\\.0+$','') |
| | | </if> |
| | | <if test="materialLog.thickness != null and materialLog.thickness != ''"> |
| | | and ml.thickness regexp REGEXP_REPLACE(#{materialLog.thickness},'\\.0+$','') |
| | | </if> |
| | | |
| | | <if test="materialLog.inventoryId != null and materialLog.inventoryId != ''"> |
| | | and ml.inventoryId regexp #{materialLog.inventoryId} |
| | | </if> |
| | | <if test="materialLog.materialCode != null and materialLog.materialCode != ''"> |
| | | and ml.materialCode regexp #{materialLog.materialCode} |
| | | </if> |
| | | <if test="materialLog.materialName != null and materialLog.materialName != ''"> |
| | | and ml.materialName regexp #{materialLog.materialName} |
| | | </if> |
| | | <if test="materialLog.producer != null and materialLog.producer != ''"> |
| | | and ml.producer regexp #{materialLog.producer} |
| | | </if> |
| | | <if test="materialLog.unit != null and materialLog.unit != ''"> |
| | | and ml.unit regexp #{materialLog.unit} |
| | | </if> |
| | | <if test="materialLog.singlePieceArea != null and materialLog.singlePieceArea != ''"> |
| | | and ml.singlePieceArea regexp REGEXP_REPLACE(#{materialLog.singlePieceArea},'\\.0+$','') |
| | | </if> |
| | | <if test="materialLog.inventoryArea != null and materialLog.inventoryArea != ''"> |
| | | and ml.inventoryArea regexp #{materialLog.inventoryArea} |
| | | </if> |
| | | <if test="materialLog.operator != null and materialLog.operator != ''"> |
| | | and ml.operator regexp #{materialLog.operator} |
| | | </if> |
| | | <if test="materialLog.remarks != null and materialLog.remarks != ''"> |
| | | and ml.remarks regexp #{materialLog.remarksr} |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | | |
| | | <select id="exportMaterialLogReport"> |
| | | select * from mm.material_log ml |
| | | where date(ml.operate_time)>=#{dates[0]} and date(ml.operate_time) <= #{dates[1]} and ml.operate_type=#{type} |
| | | |
| | | </select> |
| | | |
| | | |
| | | </mapper> |