Merge branch 'master' of http://bore.pub:10439/r/ERP_override
| | |
| | | <template> |
| | | <div id="sheet" @dblclick="handleDoubleClick"> |
| | | <table border="1" > |
| | | <thead> |
| | | <tr class="title-s"> |
| | | <th colspan="9"> |
| | | <h1> |
| | |
| | | <th v-if="!company.showDeliveryCreator" style="width: 10%;" colspan="1">加工要求</th> |
| | | <th v-if="!company.showDeliveryCreator" style="width: 10%;" colspan="1">备注</th> |
| | | </tr> |
| | | </thead> |
| | | <template v-for="(item, index) in produceList" :key="index" > |
| | | <tr> |
| | | <td style="font-size: 15px;font-weight: bold;text-align: left" colspan="4">产品名称: |
| | |
| | | const grossNum = ref({ |
| | | quantity: 0, |
| | | grossArea: 0, |
| | | perimeter: 0 |
| | | perimeter: 0, |
| | | weight:0 |
| | | }) |
| | | const getData = () => { |
| | | request.get(`/order/printOrderProductDetail/${props.orderId}/${selectedValues.value}`).then(res => { |
| | |
| | | grossNum.value.quantity += getQuantity(item.productDetail) |
| | | grossNum.value.grossArea += getArea(item.productDetail) |
| | | grossNum.value.perimeter += getPerimeter(item.productDetail) |
| | | grossNum.value.weight += getWeight(item.productDetail) |
| | | stringToJson(item.productDetail) |
| | | }) |
| | | |
| | | grossNum.value.quantity = parseFloat(grossNum.value.quantity.toFixed(2)) |
| | | grossNum.value.grossArea = parseFloat(grossNum.value.grossArea.toFixed(2)) |
| | | grossNum.value.perimeter = parseFloat(grossNum.value.perimeter.toFixed(2)) |
| | | grossNum.value.weight = parseFloat(grossNum.value.weight.toFixed(2)) |
| | | |
| | | }) |
| | | } |
| | |
| | | grossNum.value.quantity=0 |
| | | grossNum.value.grossArea=0 |
| | | grossNum.value.perimeter=0 |
| | | grossNum.value.weight=0 |
| | | data.value= res.data |
| | | |
| | | data.value.orderProductDetail.forEach(item => { |
| | | grossNum.value.quantity += getQuantity(item.productDetail) |
| | | grossNum.value.grossArea += getArea(item.productDetail) |
| | | grossNum.value.perimeter += getPerimeter(item.productDetail) |
| | | grossNum.value.weight += getWeight(item.productDetail) |
| | | stringToJson(item.productDetail) |
| | | }) |
| | | grossNum.value.quantity = parseFloat(grossNum.value.quantity.toFixed(2)) |
| | | grossNum.value.grossArea = parseFloat(grossNum.value.grossArea.toFixed(2)) |
| | | grossNum.value.perimeter = parseFloat(grossNum.value.perimeter.toFixed(2)) |
| | | grossNum.value.weight = parseFloat(grossNum.value.weight.toFixed(2)) |
| | | |
| | | }) |
| | | |
| | |
| | | return parseFloat(perimeter.toFixed(2)) |
| | | } |
| | | |
| | | const getWeight = (productList) => { |
| | | let weight = 0 |
| | | productList.forEach(item => { |
| | | weight += item.weight |
| | | }) |
| | | return parseFloat(weight.toFixed(2)) |
| | | } |
| | | |
| | | const printSheet = () => { |
| | | } |
| | | |
| | |
| | | </tr> |
| | | |
| | | <tr class="title-s"> |
| | | <th colspan="2" style="width: 30%"></th> |
| | | <th colspan="2" style="width: 30%;text-align: left;"><span>总重量:{{ grossNum.weight }}</span></th> |
| | | <th colspan="5" style="width: 40%;"> |
| | | <h3 >生产任务单(成品)</h3> |
| | | </th> |
| | |
| | | {field: 'order.packType',width:120, title: t('order.packType'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | // {field: 'prodID',width:120, title: '工艺流程',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'perimeter',width:120, title: t('order.perimeter'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'weight',width:120, title: t('processCard.weight'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'price',width:120, title: t('order.price'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'grossAmount',width:120, title: t('order.grossAmount'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'order.otherMoney',width:120, title: t('basicData.otherAmounts'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | |
| | | url :'/order/getOrderProductSummary', |
| | | exportUrl :'/order/exportOrderProductSummary', |
| | | exportName:t('order.orderDetailsSummaryReport'), |
| | | footList:['quantity','grossArea','computeGrossArea','perimeter','price','grossAmount'] |
| | | footList:['quantity','grossArea','computeGrossArea','perimeter','price','grossAmount','weight'] |
| | | }) |
| | | |
| | | |
| | |
| | | {field: 'order.packType',width:120, title: t('order.packType'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | // {field: 'prodID',width:120, title: '工艺流程',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'perimeter',width:120, title: t('order.perimeter'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'weight',width:120, title: t('processCard.weight'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'price',width:120, title: t('order.price'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'grossAmount',width:120, title: t('order.grossAmount'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'order.otherMoney',width:120, title: t('basicData.otherAmounts'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | |
| | | url :'/order/getOrderReport', |
| | | exportUrl :'/order/exportOrderReport', |
| | | exportName:t('order.orderDetailsReport'), |
| | | footList:['quantity','grossArea','computeGrossArea','perimeter','price','grossAmount'] |
| | | footList:['quantity','grossArea','computeGrossArea','perimeter','price','grossAmount','weight'] |
| | | }) |
| | | |
| | | |
| | |
| | | a.edging_type, |
| | | b.pack_type, |
| | | round(sum(a.perimeter),2) as perimeter, |
| | | round(sum(a.weight),2) as weight, |
| | | a.price, |
| | | sum(a.gross_amount ) as gross_amount, |
| | | b.al_type, |