Merge branch 'master' of http://10.153.19.25:10105/r/ERP_override
| | |
| | | |
| | | <style scoped> |
| | | @media print { |
| | | |
| | | @page { |
| | | margin: 8mm 16mm 20mm 16mm !important; |
| | | } |
| | | .pages { |
| | | page-break-after: always; |
| | | } |
| | |
| | | |
| | | <style scoped> |
| | | @media print { |
| | | |
| | | @page { |
| | | margin: 8mm 16mm 20mm 16mm !important; |
| | | } |
| | | .pages { |
| | | page-break-after: always; |
| | | } |
| New file |
| | |
| | | <script setup> |
| | | import {ref} from "vue"; |
| | | import request from "@/utils/request"; |
| | | import {ElMessage} from "element-plus"; |
| | | import {useI18n} from "vue-i18n" |
| | | const { t } = useI18n() |
| | | const props = defineProps({ |
| | | transferData:{} |
| | | }) |
| | | const emits = defineEmits(['orderNumberTransfer']) |
| | | /*request.post()*/ |
| | | const orderNumberTransferSubmit = () => { |
| | | request.post('/reportingWork/reportingWorkTransfer',props.transferData).then(res => { |
| | | if(res.code === '200' && res.data.data===true){ |
| | | ElMessage.success(t('basicData.saveSuccess')) |
| | | emits('orderNumberTransfer') |
| | | }else{ |
| | | ElMessage.warning(res.data.msg) |
| | | } |
| | | |
| | | }).catch(err => { |
| | | ElMessage.error(t('order.transferPage.errorToMes')) |
| | | }) |
| | | /*emits('orderNumberTransfer')*/ |
| | | } |
| | | </script> |
| | | |
| | | <template> |
| | | <el-form :model="props.transferData"> |
| | | <el-form-item :label="$t('order.transferPage.oldOrderId')+'ï¼'" label-width="140px"> |
| | | <el-text>{{props.transferData.oldOrderId}}</el-text> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('order.transferPage.oldOrderNumber')+'ï¼'" label-width="140px"> |
| | | <el-text>{{props.transferData.oldOrderNumber}}</el-text> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('order.transferPage.newOrderId')+'ï¼'" label-width="140px"> |
| | | <el-input v-model="props.transferData.newOrderId" autocomplete="off" /> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('order.transferPage.newOrderNumber')+'ï¼'" label-width="140px"> |
| | | <el-input v-model="props.transferData.newOrderNumber" type="number" autocomplete="off" /> |
| | | </el-form-item> |
| | | <el-form-item label-width="140px"> |
| | | <el-popconfirm :title="$t('order.transferPage.confirmTitle')" |
| | | @confirm="orderNumberTransferSubmit()"> |
| | | <template #reference> |
| | | <el-button |
| | | type="primary" |
| | | style="margin-left: 268px">{{$t('craft.sure')}}</el-button> |
| | | </template> |
| | | </el-popconfirm> |
| | | </el-form-item> |
| | | </el-form> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | |
| | | </style> |
| | |
| | | |
| | | {field: 'technology_number', width: 90,title: t('processCard.technologyNumber'),showOverflow:"ellipsis"}, |
| | | {field: 'quantity', width: 90,title: t('order.quantity')}, |
| | | {field: 'gross_area', width: 90,title: t('order.area')}, |
| | | {field: 'shippedQuantity',width: 120, title: t('delivery.deliveryQuantity')}, |
| | | {field: 'inventory',width: 120, title: t('productStock.inventoryQuantity')}, |
| | | {field: 'inventoryArea',width: 120, title: t('report.inventoryArea')}, |
| | |
| | | selected:'éä¸', |
| | | partiallySelected:'é¨åéä¸', |
| | | unchecked :'æªéä¸', |
| | | copy:'å¤å¶', |
| | | msg:{ |
| | | max255:'أدخ٠255 ØØ±ÙÙØ§ ÙØØ¯ Ø£ÙØµÙ', |
| | | range99999Dec2: |
| | |
| | | |
| | | quantityMount:'æ°ééé¢', |
| | | allAmount:'é¢ç§¯éé¢ï¼æ»éé¢ï¼', |
| | | orderTransfer:'è®¢åæ¥å·¥è½¬ç§»', |
| | | |
| | | msg:{ |
| | | productCheck:'Ø§ÙØ±Ø¬Ø§Ø¡ Ø§Ø®ØªÙØ§Ø± Ù
ÙØªØ¬', |
| | |
| | | |
| | | pleaseCancelTheFilteringFirst:'ÙØ±Ø¬Ù Ø¥ÙØºØ§Ø¡ Ø§ÙØ§Ø®ØªÙار Ø£ÙÙØ§Ù', |
| | | grossAreaIsNot0:'åå¨å®é
æ»é¢ç§¯çäº0', |
| | | differentSize:'æ¤è®¢å嫿æå¨ä¿®æ¹å¤§å°çï¼å审修æ¹è®¢ååè¯·éæ°é置大å°çï¼æ¯å¦å审ï¼' |
| | | differentSize:'æ¤è®¢å嫿æå¨ä¿®æ¹å¤§å°çï¼å审修æ¹è®¢ååè¯·éæ°é置大å°çï¼æ¯å¦å审ï¼', |
| | | updateOrderIdErrorGtMaxId:'è¾å
¥è®¢åå·ä¸è½å¤§äºæå¤§è®¢åå·', |
| | | updateOrderIdErrorIsExist:'è¾å
¥è®¢åå·å·²åå¨', |
| | | updateOrderIdErrorIsSame:'è¾å
¥è®¢åå·ç¸å', |
| | | updateOrderIdErrorDiscrepancyInLength:'è¾å
¥è®¢åå·é¿åº¦ä¸ç¬¦', |
| | | updateOrderIdErrorInputNumber:'请è¾å
¥æ°å', |
| | | updateOrderIdErrorNotNo1:'ä¸è½ä¿®æ¹ç¬¬ä¸ä¸ªåå', |
| | | } |
| | | |
| | | }, |
| | |
| | | copyTitle:'ÙØ³Ø® Ø§ÙØ¹ÙÙØ§Ù', |
| | | msgList:{ |
| | | checkOrder:'ÙÙ
ÙØªÙ
Ø§ÙØ¹Ø«Ùر عÙÙ Ù
عÙÙÙ
ات Ø§ÙØ·ÙØ¨Ø ÙØ±Ø¬Ù ØªØØ¯Ùد Ø§ÙØ·Ùب اÙÙØ§Ù', |
| | | } |
| | | isOptimize:'æ¤è®¢å已转ä¼åï¼åé失败ï¼', |
| | | isReportingWork:'æ¤è®¢åå·²æ¥å·¥ï¼åé失败ï¼', |
| | | isStorage:'æ¤è®¢åå·²å
¥åºï¼åé失败ï¼', |
| | | }, |
| | | updateOrderId:"ä¿®æ¹è®¢åå·", |
| | | reportingTransfer:'æ¥å·¥è½¬ç§»' |
| | | }, |
| | | craft:{ |
| | | glassAddress:'ÙØ¶Ø¹ Ø¹ÙØ§Ù
Ø© Ø§ÙØ²Ø¬Ø§Ø¬', |
| | |
| | | |
| | | customerAbbreviation:'اختصار Ø§ÙØ¹Ù
ÙÙ', |
| | | pleaseEnterTheCustomerAbbreviation:'Ø§ÙØ±Ø¬Ø§Ø¡ ادخا٠اختصار Ø§ÙØ¹Ù
ÙÙ', |
| | | msgList:{ |
| | | notCustomerInfo:'æªæ¥è¯¢å°å®¢æ·ä¿¡æ¯', |
| | | } |
| | | }, |
| | | delivery:{ |
| | | page:{ |
| | |
| | | selected:'selected', |
| | | partiallySelected:'partially selected', |
| | | unchecked :'unchecked', |
| | | copy:'Copy', |
| | | msg:{ |
| | | max255:"The value contains a maximum of 255 characters", |
| | | range99999Dec2: |
| | |
| | | |
| | | quantityMount:'Quantity and Amount', |
| | | allAmount:'é¢ç§¯éé¢ï¼æ»éé¢ï¼', |
| | | orderTransfer:'è®¢åæ¥å·¥è½¬ç§»', |
| | | |
| | | msg:{ |
| | | productCheck:'Please select a product', |
| | |
| | | |
| | | pleaseCancelTheFilteringFirst:'Please cancel the selection first.', |
| | | grossAreaIsNot0:'There is an actual total area equal to0', |
| | | differentSize:'æ¤è®¢å嫿æå¨ä¿®æ¹å¤§å°çï¼å审修æ¹è®¢ååè¯·éæ°é置大å°çï¼æ¯å¦å审ï¼' |
| | | differentSize:'æ¤è®¢å嫿æå¨ä¿®æ¹å¤§å°çï¼å审修æ¹è®¢ååè¯·éæ°é置大å°çï¼æ¯å¦å审ï¼', |
| | | updateOrderIdErrorGtMaxId:'è¾å
¥è®¢åå·ä¸è½å¤§äºæå¤§è®¢åå·', |
| | | updateOrderIdErrorIsExist:'è¾å
¥è®¢åå·å·²åå¨', |
| | | updateOrderIdErrorIsSame:'è¾å
¥è®¢åå·ç¸å', |
| | | updateOrderIdErrorDiscrepancyInLength:'è¾å
¥è®¢åå·é¿åº¦ä¸ç¬¦', |
| | | updateOrderIdErrorInputNumber:'请è¾å
¥æ°å', |
| | | updateOrderIdErrorNotNo1:'ä¸è½ä¿®æ¹ç¬¬ä¸ä¸ªåå', |
| | | } |
| | | |
| | | }, |
| | |
| | | copy:'Copy', |
| | | copyTitle:'Copy Title', |
| | | msgList:{ |
| | | checkOrder:'No order information is found. Please click Order first' |
| | | } |
| | | checkOrder:'No order information is found. Please click Order first', |
| | | isOptimize:'æ¤è®¢å已转ä¼åï¼åé失败ï¼', |
| | | isReportingWork:'æ¤è®¢åå·²æ¥å·¥ï¼åé失败ï¼', |
| | | isStorage:'æ¤è®¢åå·²å
¥åºï¼åé失败ï¼', |
| | | }, |
| | | updateOrderId:"ä¿®æ¹è®¢åå·", |
| | | reportingTransfer:'æ¥å·¥è½¬ç§»' |
| | | }, |
| | | craft:{ |
| | | glassAddress:'Glass Address', |
| | |
| | | |
| | | customerAbbreviation:'Customer abbreviation', |
| | | pleaseEnterTheCustomerAbbreviation:'Please enter the customers abbreviation', |
| | | msgList:{ |
| | | notCustomerInfo:'æªæ¥è¯¢å°å®¢æ·ä¿¡æ¯', |
| | | } |
| | | }, |
| | | delivery:{ |
| | | page:{ |
| | |
| | | selected:'éä¸', |
| | | partiallySelected:'é¨åéä¸', |
| | | unchecked :'æªéä¸', |
| | | copy:'å¤å¶', |
| | | msg:{ |
| | | max255:"ÐведиÑе 255 Ñимволов.", |
| | | range99999Dec2: |
| | |
| | | |
| | | quantityMount:'æ°ééé¢', |
| | | allAmount:'é¢ç§¯éé¢ï¼æ»éé¢ï¼', |
| | | orderTransfer:'è®¢åæ¥å·¥è½¬ç§»', |
| | | |
| | | msg:{ |
| | | productCheck:'ÐожалÑйÑÑа, вÑбеÑиÑе пÑодÑкÑ', |
| | |
| | | |
| | | pleaseCancelTheFilteringFirst:'请å
åæ¶çé', |
| | | grossAreaIsNot0:'åå¨å®é
æ»é¢ç§¯çäº0', |
| | | differentSize:'æ¤è®¢å嫿æå¨ä¿®æ¹å¤§å°çï¼å审修æ¹è®¢ååè¯·éæ°é置大å°çï¼æ¯å¦å审ï¼' |
| | | differentSize:'æ¤è®¢å嫿æå¨ä¿®æ¹å¤§å°çï¼å审修æ¹è®¢ååè¯·éæ°é置大å°çï¼æ¯å¦å审ï¼', |
| | | updateOrderIdErrorGtMaxId:'è¾å
¥è®¢åå·ä¸è½å¤§äºæå¤§è®¢åå·', |
| | | updateOrderIdErrorIsExist:'è¾å
¥è®¢åå·å·²åå¨', |
| | | updateOrderIdErrorIsSame:'è¾å
¥è®¢åå·ç¸å', |
| | | updateOrderIdErrorDiscrepancyInLength:'è¾å
¥è®¢åå·é¿åº¦ä¸ç¬¦', |
| | | updateOrderIdErrorInputNumber:'请è¾å
¥æ°å', |
| | | updateOrderIdErrorNotNo1:'ä¸è½ä¿®æ¹ç¬¬ä¸ä¸ªåå', |
| | | } |
| | | |
| | | }, |
| | |
| | | copyTitle:'ÐопиÑоваÑÑ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²Ð¾Ðº', |
| | | msgList:{ |
| | | checkOrder:'ÐÑли инÑоÑмаÑÐ¸Ñ Ð¾ заказе не полÑÑена, нажмиÑе на заказ.', |
| | | } |
| | | isOptimize:'æ¤è®¢å已转ä¼åï¼åé失败ï¼', |
| | | isReportingWork:'æ¤è®¢åå·²æ¥å·¥ï¼åé失败ï¼', |
| | | isStorage:'æ¤è®¢åå·²å
¥åºï¼åé失败ï¼', |
| | | }, |
| | | updateOrderId:"ä¿®æ¹è®¢åå·", |
| | | reportingTransfer:'æ¥å·¥è½¬ç§»' |
| | | }, |
| | | craft:{ |
| | | glassAddress:'ÐаÑкиÑовка', |
| | |
| | | |
| | | customerAbbreviation:'ÐлиенÑÑ Ð¡Ð¾ÐºÑаÑениÑ', |
| | | pleaseEnterTheCustomerAbbreviation:'ÐожалÑйÑÑа, введиÑе ÑокÑаÑение клиенÑа.', |
| | | msgList:{ |
| | | notCustomerInfo:'æªæ¥è¯¢å°å®¢æ·ä¿¡æ¯', |
| | | } |
| | | }, |
| | | delivery:{ |
| | | page:{ |
| | |
| | | selected:'éä¸', |
| | | partiallySelected:'é¨åéä¸', |
| | | unchecked :'æªéä¸', |
| | | copy:'å¤å¶', |
| | | msg:{ |
| | | max255:"æå¤è¾å
¥255个å符", |
| | | range99999Dec2: |
| | |
| | | |
| | | quantityMount:'æ°ééé¢', |
| | | allAmount:'é¢ç§¯éé¢ï¼æ»éé¢ï¼', |
| | | orderTransfer:'è®¢åæ¥å·¥è½¬ç§»', |
| | | transferPage:{ |
| | | oldOrderId:'å订åå·', |
| | | newOrderId:'æ°è®¢åå·', |
| | | oldOrderNumber:'å订ååºå·', |
| | | newOrderNumber:'æ°è®¢ååºå·', |
| | | confirmTitle:'ç¡®å®è½¬ç§»æ¤åºå·çæµç¨å¡æ¥å·¥æ°æ®?', |
| | | errorToMes:'ä¸mesé讯å¼å¸¸' |
| | | |
| | | }, |
| | | |
| | | msg:{ |
| | | productCheck:'è¯·éæ©äº§å', |
| | |
| | | |
| | | pleaseCancelTheFilteringFirst:'请å
åæ¶çé', |
| | | grossAreaIsNot0:'åå¨å®é
æ»é¢ç§¯çäº0', |
| | | differentSize:'æ¤è®¢å嫿æå¨ä¿®æ¹å¤§å°çï¼å审修æ¹è®¢ååè¯·éæ°é置大å°çï¼æ¯å¦å审ï¼' |
| | | differentSize:'æ¤è®¢å嫿æå¨ä¿®æ¹å¤§å°çï¼å审修æ¹è®¢ååè¯·éæ°é置大å°çï¼æ¯å¦å审ï¼', |
| | | updateOrderIdErrorGtMaxId:'è¾å
¥è®¢åå·ä¸è½å¤§äºæå¤§è®¢åå·', |
| | | updateOrderIdErrorIsExist:'è¾å
¥è®¢åå·å·²åå¨', |
| | | updateOrderIdErrorIsSame:'è¾å
¥è®¢åå·ç¸å', |
| | | updateOrderIdErrorDiscrepancyInLength:'è¾å
¥è®¢åå·é¿åº¦ä¸ç¬¦', |
| | | updateOrderIdErrorInputNumber:'请è¾å
¥æ°å', |
| | | updateOrderIdErrorNotNo1:'ä¸è½ä¿®æ¹ç¬¬ä¸ä¸ªåå', |
| | | } |
| | | |
| | | }, |
| | |
| | | copy:'å¤å¶è®¢å', |
| | | copyTitle:'å¤å¶è¡¨å¤´', |
| | | msgList:{ |
| | | checkOrder:'æªæ¥è¯¢å°è®¢åä¿¡æ¯ï¼è¯·å
åå»è®¢å' |
| | | } |
| | | checkOrder:'æªæ¥è¯¢å°è®¢åä¿¡æ¯ï¼è¯·å
åå»è®¢å', |
| | | isOptimize:'æ¤è®¢å已转ä¼åï¼åé失败ï¼', |
| | | isReportingWork:'æ¤è®¢åå·²æ¥å·¥ï¼åé失败ï¼', |
| | | isStorage:'æ¤è®¢åå·²å
¥åºï¼åé失败ï¼', |
| | | }, |
| | | updateOrderId:"ä¿®æ¹è®¢åå·", |
| | | reportingTransfer:'æ¥å·¥è½¬ç§»' |
| | | }, |
| | | craft:{ |
| | | glassAddress:'æ è®°', |
| | |
| | | |
| | | customerAbbreviation:'客æ·ç®ç§°', |
| | | pleaseEnterTheCustomerAbbreviation:'请è¾å
¥å®¢æ·ç®ç§°', |
| | | msgList:{ |
| | | notCustomerInfo:'æªæ¥è¯¢å°å®¢æ·ä¿¡æ¯', |
| | | } |
| | | }, |
| | | delivery:{ |
| | | page:{ |
| | |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/main/glassOptimize/MoveManage', |
| | | component: () => import('@/views/pp/glassOptimize/MoveManage.vue') |
| | | }, |
| | | { |
| | | path:'userPassWord', |
| | | name: 'userPassWord', |
| | |
| | | name:'returnToStorageCreate', |
| | | component:()=>import('../views/mm/ingredientStock/ReturnToStorageCreate.vue') |
| | | }, |
| | | //ç©ææ°å¢ |
| | | { |
| | | path:'materialAdditionRecord', |
| | | name:'materialAdditionRecord', |
| | | component:()=>import('../views/mm/ingredientStock/MaterialAdditionRecord.vue') |
| | | }, |
| | | { |
| | | path: '', |
| | | redirect:'/main/ingredientsStock/selectIngredientsStock' |
| | |
| | | export default defineStore('companyInfo', { |
| | | |
| | | state: () => ({ |
| | | timeOut:false,//éåtrueï¼å
¶ä»falseï¼æ¯å¦å¼å¯è¶
æ¶æ¹åå¤éæ¡ç¶æ |
| | | connectMes:false,//常å·trueï¼å
¶ä»falseï¼æ¾ç¤ºè®¢åæ¥å·¥è½¬ç§»æ¯å¦å¯ç¨ |
| | | companyName: '天津åç»ç»çå·¥ä¸ææ¯æéå
¬å¸ï¼TJBB-QR7.1-01ï¼', |
| | | address:'天津å®å»åºèè½ç¯ä¿å·¥ä¸åºå¤©å
´è·¯è¥¿ä¾§å®ä¸éåä¾§', |
| | | telephone:'022-59280088', |
| | |
| | | export default defineStore('companyInfo', { |
| | | |
| | | state: () => ({ |
| | | timeOut:false,//éåtrueï¼å
¶ä»falseï¼æ¯å¦å¼å¯è¶
æ¶æ¹åå¤éæ¡ç¶æ |
| | | connectMes:true,//常å·trueï¼å
¶ä»falseï¼æ¾ç¤ºè®¢åæ¥å·¥è½¬ç§»æ¯å¦å¯ç¨ |
| | | companyName: '常å·å¸åå©ç»çæéå
¬å¸', |
| | | address:'常å·å¸å¤©å®åºééé大æåè·¯8å·', |
| | | telephone:'022-59280088', |
| | |
| | | export default defineStore('companyInfo', { |
| | | |
| | | state: () => ({ |
| | | timeOut:false,//éåtrueï¼å
¶ä»falseï¼æ¯å¦å¼å¯è¶
æ¶æ¹åå¤éæ¡ç¶æ |
| | | connectMes:false,//常å·trueï¼å
¶ä»falseï¼æ¾ç¤ºè®¢åæ¥å·¥è½¬ç§»æ¯å¦å¯ç¨ |
| | | companyName: 'æ°çæé«ç»çç§ææéå
¬å¸', |
| | | address:'æ°çäºå®¶æ¸ å·¥ä¸åå
µå¢æ°å建æå·¥ä¸ååºå·¥ä¸è·¯11å·é1å·', |
| | | telephone:'13419168999', |
| | |
| | | export default defineStore('companyInfo', { |
| | | |
| | | state: () => ({ |
| | | timeOut:true,//éåtrueï¼å
¶ä»falseï¼æ¯å¦å¼å¯è¶
æ¶æ¹åå¤éæ¡ç¶æ |
| | | connectMes:false,//常å·trueï¼å
¶ä»falseï¼æ¾ç¤ºè®¢åæ¥å·¥è½¬ç§»æ¯å¦å¯ç¨ |
| | | companyName: 'éåç¦å天æç»çæéå
¬å¸', |
| | | address:'æµæ±çéåå¸éä¸åºæ¹å®
éå·¥ä¸åè½åºé¹¤å²©è¡28å·2å·', |
| | | telephone:'153 8178 1915 ç¦å天æ', |
| | |
| | | <el-breadcrumb-item @click="changeRouter(4)" :class="indexFlag===4?'indexTag':''" :to="{ path: '/main/ingredientsStock/AccessoriesMonthlySettlement' }">è¾
ææç»</el-breadcrumb-item>--> |
| | | <el-breadcrumb-item @click="changeRouter(5)" :class="indexFlag===5?'indexTag':''" :to="{ path: '/main/ingredientsStock/returnToStorage' }">{{$t('ingredientsStock.returnToStorage')}}</el-breadcrumb-item> |
| | | <el-breadcrumb-item @click="changeRouter(6)" :class="indexFlag===6?'indexTag':''" :to="{ path: '/main/ingredientsStock/selectSurplusMaterials' }">{{$t('ingredientsStock.surplusMaterialManagement')}}</el-breadcrumb-item> |
| | | <el-breadcrumb-item @click="changeRouter(7)" :class="indexFlag===7?'indexTag':''" :to="{ path: '/main/ingredientsStock/materialAdditionRecord' }">{{$t('ingredients.materialAddition')}}</el-breadcrumb-item> |
| | | <el-breadcrumb-item v-show="false" :to="{ path: '/main/order/orderReport' }">{{$t('ingredientsStock.returnToStorage')}}</el-breadcrumb-item> |
| | | </el-breadcrumb> |
| | | |
| New file |
| | |
| | | <!-- é¢åºè®°å½ --> |
| | | <script setup> |
| | | |
| | | import {onMounted, reactive, ref} from "vue"; |
| | | import {useRoute, useRouter} from "vue-router" |
| | | import request from "@/utils/request"; |
| | | import deepClone from "@/utils/deepClone"; |
| | | import useUserInfoStore from "@/stores/userInfo"; |
| | | import {ElMessage} from "element-plus"; |
| | | import {Search} from "@element-plus/icons-vue"; |
| | | import { useI18n } from 'vue-i18n' |
| | | import footSum from "@/hook/footSum"; |
| | | |
| | | //è¯è¨è·å |
| | | const { t } = useI18n() |
| | | const router = useRouter() |
| | | const route = useRoute() |
| | | const userStore = useUserInfoStore() |
| | | const username = userStore.user.userName |
| | | const userid = userStore.user.userId |
| | | let produceList = ref([]) |
| | | const getTableRow = (row,type) =>{ |
| | | switch (type) { |
| | | case 'add' :{ |
| | | alert('ææ¥æ¶å°åç»ä»¶ä¼ éçç¼è¾ä¿¡æ¯') |
| | | break |
| | | } |
| | | case 'delete':{ |
| | | alert('ææ¥æ¶å°åç»ä»¶ä¼ éçå é¤ä¿¡æ¯') |
| | | break |
| | | } |
| | | } |
| | | } |
| | | |
| | | const hasDecimal=(value)=>{ |
| | | const regex=/\./ // å®ä¹æ£å表达å¼ï¼æ¥æ¾å°æ°ç¹ |
| | | return regex.test(value) //è¿åtrue/false |
| | | } |
| | | |
| | | const hasDecimalhtml=(item,row)=>{ |
| | | let aa=item.split('.').length |
| | | if (aa===2){ |
| | | return row[item.split('.')[0]][item.split('.')[1]] |
| | | }else if(aa===3){ |
| | | return row[item.split('.')[0]][item.split('.')[1]][item.split('.')[2]] |
| | | } |
| | | |
| | | |
| | | } |
| | | let selectDate = ref(["",""]) |
| | | |
| | | let type = ref("") |
| | | |
| | | //çéæ¡ä»¶ï¼æå¤é®éè¦å
å®ä¹æç»éé¢çæ°æ® |
| | | let filterData = ref({ |
| | | |
| | | }) |
| | | |
| | | let pageNum=ref(1) |
| | | let total = reactive({ |
| | | pageTotal : 0, |
| | | dataTotal : 0, |
| | | pageSize : 100 |
| | | }) |
| | | |
| | | onMounted(()=> { |
| | | |
| | | //ç¬¬ä¸æ¬¡è°ç¨ |
| | | request.post(`/materialInventory/getMaterialLogReport/ç©ææ°å¢/1/${total.pageSize}/${selectDate.value}`, filterData.value).then((res) => { |
| | | |
| | | if (res.code == 200) { |
| | | console.log(res.data) |
| | | total.dataTotal = res.data.total.total * 1 |
| | | total.pageTotal = res.data.total.pageTotal |
| | | selectDate.value = res.data.selectDate |
| | | produceList = deepClone(res.data.data) |
| | | xGrid.value.loadData(produceList) |
| | | gridOptions.loading = false |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | | router.push("/login") |
| | | } |
| | | }) |
| | | }) |
| | | |
| | | let pageState = null |
| | | |
| | | /*使ç¨çéï¼å端è·åæ°æ®*/ |
| | | const changeFilterEvent = (event, option, $panel,) => { |
| | | // æå¨è§¦åçé |
| | | $panel.changeOption(event, !!option.data, option) |
| | | } |
| | | |
| | | function filterChanged(column) { |
| | | gridOptions.loading = true |
| | | //ç鿡件åçå忡件åçåå |
| | | let value = column.datas[0] != undefined ? column.datas[0] : '' |
| | | value = value.trim() |
| | | //夿æ¯å¦åå¨å¤é® |
| | | if (column.property.indexOf('.') > -1) { |
| | | const columnArr = column.property.split('.') |
| | | filterData.value[columnArr[0]] = { |
| | | [columnArr[1]]: value |
| | | } |
| | | } else { |
| | | filterData.value[column.property] = value |
| | | } |
| | | request.post(`/materialInventory/getMaterialLogReport/ç©ææ°å¢/1/${total.pageSize}/${selectDate.value}`, filterData.value).then((res) => { |
| | | |
| | | if (res.code == 200) { |
| | | total.dataTotal = res.data.total.total * 1 |
| | | total.pageTotal = res.data.total.pageTotal |
| | | |
| | | selectDate.value = res.data.selectDate |
| | | pageNum.value = 1 |
| | | produceList = deepClone(res.data.data) |
| | | xGrid.value.loadData(produceList) |
| | | gridOptions.loading = false |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | | router.push("/login") |
| | | } |
| | | }) |
| | | } |
| | | |
| | | |
| | | const selectOrderList = () => { |
| | | request.post(`/materialInventory/getMaterialLogReport/ç©ææ°å¢/${pageNum.value}/${total.pageSize}/${selectDate.value}/${type.value}`, filterData.value).then((res) => { |
| | | if (res.code == 200) { |
| | | selectDate.value = res.data.selectDate |
| | | if (res.data.total != null) { |
| | | total.dataTotal = res.data.total.total * 1 |
| | | total.pageTotal = res.data.total.pageTotal |
| | | } |
| | | produceList = deepClone(res.data.data) |
| | | xGrid.value.loadData(produceList) |
| | | gridOptions.loading = false |
| | | } else { |
| | | ElMessage.warning(res.msg) |
| | | router.push("/login") |
| | | } |
| | | }) |
| | | } |
| | | |
| | | const changeDate = () => { |
| | | selectOrderList() |
| | | } |
| | | |
| | | //页è跳转 |
| | | const handlePageChange = ({currentPage, pageSize}) => { |
| | | total.pageTotal = pageSize |
| | | pageNum.value = currentPage |
| | | |
| | | selectOrderList() |
| | | } |
| | | |
| | | |
| | | //åç»ä»¶æ¥æ¶åæ° |
| | | const xGrid = ref(); |
| | | |
| | | const gridOptions = reactive({ |
| | | border: "full",//è¡¨æ ¼å è¾¹æ¡ |
| | | keepSource: true,//ä¿ææºæ°æ® |
| | | align: 'center',//æåå±
ä¸ |
| | | stripe: true,//æé©¬çº¹ |
| | | rowConfig: {isCurrent: true, isHover: true, height: 30},//é¼ æ ç§»å¨æéæ©é«äº® |
| | | id: 'StorageRecord', |
| | | showFooter: true,//æ¾ç¤ºè |
| | | printConfig: {}, |
| | | importConfig: {}, |
| | | exportConfig: {}, |
| | | scrollY: {enabled: true},//å¼å¯èææ»å¨ |
| | | showOverflow: true, |
| | | columnConfig: { |
| | | resizable: true, |
| | | useKey: true |
| | | }, |
| | | filterConfig: { //çéé
置项 |
| | | remote: true |
| | | }, |
| | | customConfig: { |
| | | storage: true |
| | | }, |
| | | editConfig: { |
| | | trigger: 'click', |
| | | mode: 'row', |
| | | showStatus: true |
| | | },//è¡¨å¤´åæ° |
| | | columns: [ |
| | | |
| | | {type: 'checkbox',fixed:"left", title: t('basicData.check'), width: '80' }, |
| | | {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'} |
| | | }, |
| | | ],//表头æé® |
| | | toolbarConfig: { |
| | | buttons: [ |
| | | { |
| | | 'name': t('productStock.returnToWarehouse'), status: 'primary', |
| | | 'code': 'cancel' |
| | | }], |
| | | /*import: false, |
| | | export: true, |
| | | print: true,*/ |
| | | zoom: true, |
| | | custom: true |
| | | }, |
| | | |
| | | footerMethod({columns, data}) {//页è彿° |
| | | let footList = ['quantity'] |
| | | return [ |
| | | columns.map((column, columnIndex) => { |
| | | if (columnIndex === 0) { |
| | | return t('basicData.total') |
| | | } |
| | | if (footList.includes(column.field)) { |
| | | return footSum(data, column.field) |
| | | } |
| | | return '' |
| | | }) |
| | | ] |
| | | } |
| | | |
| | | }) |
| | | |
| | | const gridEvents = { |
| | | toolbarButtonClick({code}) { |
| | | const $grid = xGrid.value |
| | | if ($grid) { |
| | | switch (code) { |
| | | |
| | | case 'cancel': { |
| | | const $table = xGrid.value |
| | | //gridOptions.columns.unshift(a) |
| | | if ($table) { |
| | | const selectRecords = $table.getCheckboxRecords() |
| | | |
| | | if (selectRecords.length <= 0) { |
| | | ElMessage.warning(t('productStock.unselectedData')) |
| | | return |
| | | } |
| | | let flowData = ref({ |
| | | |
| | | userId: userid, |
| | | userName: username, |
| | | materialAdd: selectRecords |
| | | |
| | | }) |
| | | request.post("/materialInventory/cancelMaterialAdditionRecord", flowData.value).then((res) => { |
| | | if (res.code == 200 && res.data === "true") { |
| | | ElMessage.success(t('product.msg.operateSuccess')) |
| | | router.push({ |
| | | path: '/main/ingredientsStock/materialAdditionRecord', |
| | | query: {random: Math.random(), storageType: type.value} |
| | | }) |
| | | |
| | | }else if(res.data === "false1"){ |
| | | ElMessage.warning(t('æ°éä¸å¯¹è¯·æ£æ¥')) |
| | | }else if(res.data === "false2"){ |
| | | ElMessage.warning(t('åºåä¸å卿è
åå¨å¤æ¡')) |
| | | }else { |
| | | ElMessage.warning(t('productStock.cancellationFailed')) |
| | | } |
| | | }).catch((err) => { |
| | | ElMessage.error(t('basicData.msg.ServerConnectionError')) |
| | | router.push("/login") |
| | | }) |
| | | } |
| | | return; |
| | | |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <div style="width: 100%;height: 100%"> |
| | | <div class="head"> |
| | | <el-date-picker |
| | | v-model="selectDate" |
| | | type="daterange" |
| | | :start-placeholder="$t('basicData.startDate')" |
| | | :end-placeholder="$t('basicData.endDate')" |
| | | format="YYYY-MM-DD" |
| | | value-format="YYYY-MM-DD" |
| | | |
| | | /> |
| | | <el-button @click="changeDate" style="margin-top: -5px" id="searchButton" type="primary" :icon="Search">{{$t('basicData.search')}}</el-button> |
| | | </div> |
| | | |
| | | <div class="main-table"> |
| | | <vxe-grid |
| | | height="100%" |
| | | @filter-change="filterChanged" |
| | | class="mytable-scrollbar" |
| | | ref="xGrid" |
| | | v-bind="gridOptions" |
| | | v-on="gridEvents" |
| | | :checkbox-config="checkBoxConfig" |
| | | |
| | | > |
| | | |
| | | <!-- <template #state="{ row,column}"> |
| | | <!– <p>{{row[column.field]}}</p>–> |
| | | <!– <el-checkbox v-model="row['isState']" :disabled="row[column.field]==='å·²å®¡æ ¸'||row[column.field]==='æªéè¿'"/>–> |
| | | <vxe-checkbox v-model="row['isState']" :disabled="row[column.field]==='å·²å®¡æ ¸'||row[column.field]==='æªéè¿'"></vxe-checkbox> |
| | | </template>--> |
| | | |
| | | |
| | | <!-- @toolbar-button-click="toolbarButtonClickEvent"--> |
| | | <!-- 䏿æ¾ç¤ºææä¿¡æ¯ææ§½--> |
| | | <template #content="{ row }"> |
| | | <ul class="expand-wrapper"> |
| | | <li v-for="(item,index) in gridOptions.columns" v-show="item.field!=undefined "> |
| | | <span style="font-weight: bold">{{item.title+': '}}</span> |
| | | <span v-if="hasDecimal(item.field)">{{ hasDecimalhtml(item.field,row) }}</span> |
| | | <span v-else>{{ row[item.field] }}</span> |
| | | </li> |
| | | </ul> |
| | | </template> |
| | | |
| | | <!--左边åºå®æ¾ç¤ºçææ§½--> |
| | | <template #button_slot="{ row }"> |
| | | <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">{{$t('basicData.edit')}}</el-button> |
| | | <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">{{$t('basicData.delete')}}</el-button> |
| | | </template> |
| | | |
| | | <template #num1_filter="{ column, $panel }"> |
| | | <div> |
| | | <div v-for="(option, index) in column.filters" :key="index"> |
| | | <input type="type" v-model="option.data" @keyup.enter.native="$panel.confirmFilter()" @input="changeFilterEvent($event, option, $panel)"/> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <template #pager> |
| | | <!--ä½¿ç¨ pager ææ§½--> |
| | | <vxe-pager |
| | | @page-change="handlePageChange" |
| | | :layouts="[ 'PrevPage', 'Jump','PageCount', 'NextPage', 'Total']" |
| | | v-model:current-page="pageNum" |
| | | v-model:page-size="total.pageSize" |
| | | v-model:pager-count="total.pageTotal" |
| | | :total="total.dataTotal" |
| | | > |
| | | </vxe-pager> |
| | | </template> |
| | | |
| | | |
| | | </vxe-grid> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | .head{ |
| | | width: 100%; |
| | | height: 35px; |
| | | } |
| | | |
| | | .main-table{ |
| | | width: 100%; |
| | | height: calc(100% - 35px); |
| | | } |
| | | </style> |
| | |
| | | }else{ |
| | | localStorage.setItem('hasRefreshed', 'false'); |
| | | } |
| | | //æµç¨å¡ç¼è¾æå°æ ç¾ å¸¸å· |
| | | if (printType == 1) { |
| | | request.post(`/processCard/getSelectPrintCustomLabel2/${type}/1`, data.value).then((res) => { |
| | | if (res.code == 200) { |
| | |
| | | } |
| | | }) |
| | | |
| | | }else if(printType==2){ |
| | | } |
| | | //æç»åæ¶æå°æ ç¾ å¸¸å· |
| | | else if(printType==2){ |
| | | request.post(`/processCard/getSelectPrintCustomLabelDetails/${type}/1`, data.value).then((res) => { |
| | | if (res.code == 200) { |
| | | produceList.value = deepClone(res.data.title) |
| | |
| | | }else{ |
| | | localStorage.setItem('hasRefreshed', 'false'); |
| | | } |
| | | //å·¥ç¨æå°æåæ ç¾ |
| | | if(projectNo.value!=null){ |
| | | request.post(`/processCard/getSelectPrintLabel/${projectNo.value}/${type.value}`).then((res) => { |
| | | if (res.code == 200) { |
| | |
| | | |
| | | }else{ |
| | | data.value.printList = JSON.parse(route.query.printList) |
| | | //æµç¨å¡ç¼è¾æå°æ ç¾ å¸¸å· |
| | | if (printType == 1) { |
| | | request.post(`/processCard/getSelectPrintLabel1`, data.value).then((res) => { |
| | | if (res.code == 200) { |
| | |
| | | } |
| | | }) |
| | | |
| | | }else if(printType==2){ |
| | | } |
| | | //æç»åæ¶æå°æ ç¾ å¸¸å· |
| | | else if(printType==2){ |
| | | request.post(`/processCard/getSelectPrintLabelDetails`, data.value).then((res) => { |
| | | if (res.code == 200) { |
| | | produceList.value = deepClone(res.data.data) |
| | |
| | | let lableTitle = lableType.text |
| | | if ($grid) { |
| | | switch (code) { |
| | | //æå°æµç¨å¡ |
| | | case 'print': { |
| | | if (selectRecords === null || selectRecords === '' || selectRecords.length === 0) { |
| | | ElMessage.warning(t('searchOrder.msgList.checkOrder')) |
| | |
| | | |
| | | break |
| | | } |
| | | |
| | | //æ ç¾æå° |
| | | case 'printLabel': { |
| | | if (selectRecords === null || selectRecords === '' || selectRecords.length === 0) { |
| | | ElMessage.warning(t('searchOrder.msgList.checkOrder')) |
| | |
| | | |
| | | break |
| | | } |
| | | //æ ç¾æå°2 |
| | | case 'printLabel2': { |
| | | if (selectRecords === null || selectRecords === '' || selectRecords.length === 0) { |
| | | ElMessage.warning(t('searchOrder.msgList.checkOrder')) |
| | |
| | | |
| | | break |
| | | } |
| | | //æåºæ±æ» |
| | | case 'sort': { |
| | | const $table = xGridDetail.value |
| | | let data = $table.getTableData().fullData |
| | |
| | | }) |
| | | break |
| | | } |
| | | //èªå®ä¹æå° |
| | | case 'customLabel': { |
| | | if (selectRecords === null || selectRecords === '' || selectRecords.length === 0) { |
| | | ElMessage.warning(t('searchOrder.msgList.checkOrder')) |
| | |
| | | id += selectRecords[i].id + "|" |
| | | } |
| | | } |
| | | //æåæ ç¾1 |
| | | if (lableTypes == 1) { |
| | | |
| | | labelRow.value.list = JSON.stringify(selectRecords) |
| | |
| | | dialogTableVisibleLabel.value = true |
| | | } |
| | | |
| | | } else if (company.label === 2) { |
| | | } |
| | | //常å·é¡¹ç® |
| | | else if (company.label === 2) { |
| | | router.push({ |
| | | path: '/main/processCard/PrintCustomLabelCZ', |
| | | query: { |
| | |
| | | }) |
| | | } |
| | | |
| | | } else if (lableTypes == 2) { |
| | | } |
| | | //æåæ ç¾2 |
| | | else if (lableTypes == 2) { |
| | | labelRow.value.list = JSON.stringify(selectRecords) |
| | | labelRow.value.faceOrientation = faceOrientation |
| | | labelRow.value.type = type |
| | | labelRow.value.lableType = lableTypes |
| | | if (company.label === 1) { |
| | | dialogTableVisibleCustomLabel.value = true |
| | | } else if (company.label === 2) { |
| | | } |
| | | //常å·é¡¹ç® |
| | | else if (company.label === 2) { |
| | | router.push({ |
| | | path: '/main/processCard/PrintCustomLabelSemiCZ', |
| | | query: { |
| | |
| | | } |
| | | }) |
| | | } |
| | | } else if (lableTypes == 3) { |
| | | } |
| | | //æåæ ç¾3 常å·é¡¹ç® |
| | | else if (lableTypes == 3) { |
| | | router.push({ |
| | | path: '/main/processCard/PrintLabel1', |
| | | query: { |
| | |
| | | let lableTitle = lableType.text |
| | | if ($grid) { |
| | | switch (code) { |
| | | //æå°æµç¨å¡ |
| | | case 'print': { |
| | | if (selectRecords === null || selectRecords === '' || selectRecords.length === 0) { |
| | | ElMessage.warning(t('searchOrder.msgList.checkOrder')) |
| | |
| | | dialogTableVisible.value = true |
| | | break |
| | | } |
| | | |
| | | //æ ç¾æå° å¸¸å· |
| | | case 'printLabel': { |
| | | if (selectRecords === null || selectRecords === '' || selectRecords.length === 0) { |
| | | ElMessage.warning(t('searchOrder.msgList.checkOrder')) |
| | |
| | | |
| | | break |
| | | } |
| | | //æ ç¾æå°2 å¸¸å· |
| | | case 'printLabel2': { |
| | | if (selectRecords === null || selectRecords === '' || selectRecords.length === 0) { |
| | | ElMessage.warning(t('searchOrder.msgList.checkOrder')) |
| | |
| | | }) |
| | | break |
| | | } |
| | | //èªå®ä¹æåæ ç¾æå° |
| | | case 'customLabel': { |
| | | if (selectRecords === null || selectRecords === '' || selectRecords.length === 0) { |
| | | ElMessage.warning(t('searchOrder.msgList.checkOrder')) |
| | |
| | | id += selectRecords[i].id + "|" |
| | | } |
| | | } |
| | | //æåæ ç¾1 |
| | | if (lableTypes == 1) { |
| | | labelRow.value.list = JSON.stringify(selectRecords) |
| | | labelRow.value.faceOrientation = faceOrientation |
| | |
| | | lastList.value = [] |
| | | if (company.label === 1) { |
| | | dialogTableVisibleLabel.value = true |
| | | } else if (company.label === 2) { |
| | | } |
| | | //常å·é¡¹ç® |
| | | else if (company.label === 2) { |
| | | router.push({ |
| | | path: '/main/processCard/PrintCustomLabelCZ', |
| | | query: { |
| | |
| | | }) |
| | | } |
| | | |
| | | } else if (lableTypes == 2) { |
| | | } |
| | | //æåæ ç¾2 |
| | | else if (lableTypes == 2) { |
| | | labelRow.value.list = JSON.stringify(selectRecords) |
| | | labelRow.value.faceOrientation = faceOrientation |
| | | labelRow.value.type = type |
| | |
| | | lastList.value = [] |
| | | if (company.label === 1) { |
| | | dialogTableVisibleCustomLabel.value = true |
| | | } else if (company.label === 2) { |
| | | } |
| | | //常å·é¡¹ç® |
| | | else if (company.label === 2) { |
| | | router.push({ |
| | | path: '/main/processCard/PrintCustomLabelSemiCZ', |
| | | query: { |
| | |
| | | } |
| | | }) |
| | | } |
| | | } else if (lableTypes == 3) { |
| | | } |
| | | //æåæ ç¾3 |
| | | else if (lableTypes == 3) { |
| | | router.push({ |
| | | path: '/main/processCard/PrintLabel1', |
| | | query: { |
| | |
| | | }else{ |
| | | localStorage.setItem('hasRefreshed', 'false'); |
| | | } |
| | | //å·¥ç¨æå° |
| | | if(projectNo.value!=null){ |
| | | request.post(`/processCard/getSelectPrintLabel/${projectNo.value}/${type.value}`).then((res) => { |
| | | if (res.code == 200) { |
| | |
| | | } |
| | | }) |
| | | }else{ |
| | | //æµç¨å¡ç¼è¾æå°æ ç¾ å¸¸å· |
| | | if (printType == 1) { |
| | | data.value.printList = JSON.parse(route.query.printList) |
| | | request.post(`/processCard/getSelectPrintLabel1`,data.value).then((res) => { |
| | |
| | | router.push("/login") |
| | | } |
| | | }) |
| | | }else if(printType==2){ |
| | | } |
| | | //æç»åæ¶æå°æ ç¾ å¸¸å· |
| | | else if(printType==2){ |
| | | data.value.printList = JSON.parse(route.query.printList) |
| | | request.post(`/processCard/getSelectPrintLabelDetails`, data.value).then((res) => { |
| | | if (res.code == 200) { |
| | |
| | | }else{ |
| | | localStorage.setItem('hasRefreshed', 'false'); |
| | | } |
| | | //æµç¨å¡ç¼è¾æå°æ ç¾2 å¸¸å· |
| | | if (printType == 1) { |
| | | request.post(`/processCard/getSelectPrintCustomLabel2/${type}/1`, data.value).then((res) => { |
| | | if (res.code == 200) { |
| | |
| | | } |
| | | }) |
| | | |
| | | }else if(printType==2){ |
| | | } |
| | | //æç»åæ¶æå°æ ç¾2 å¸¸å· |
| | | else if(printType==2){ |
| | | request.post(`/processCard/getSelectPrintCustomLabelDetails/${type}/1`, data.value).then((res) => { |
| | | if (res.code == 200) { |
| | | produceList.value = deepClone(res.data.title) |
| | |
| | | titleStyleVisible.value = true |
| | | break |
| | | } |
| | | //ç¼è¾ |
| | | case 'editCheckbox': { |
| | | const selectRecords = $grid.getCheckboxRecords() |
| | | if(selectRecords===null ||selectRecords===''||selectRecords.length===0){ |
| | |
| | | return; |
| | | |
| | | } |
| | | //æç»æå° |
| | | case 'detailsPrint': { |
| | | const selectRecords = $grid.getCheckboxRecords() |
| | | if(selectRecords===null ||selectRecords===''||selectRecords.length===0){ |
| | |
| | | return; |
| | | |
| | | } |
| | | //æç»åæ¶æå° |
| | | case 'detailsProcessPrint': { |
| | | const selectRecords = $grid.getCheckboxRecords() |
| | | if(selectRecords===null ||selectRecords===''||selectRecords.length===0){ |
| | |
| | | return; |
| | | |
| | | } |
| | | //订åæå° |
| | | case 'orderPrint': { |
| | | const selectRecords = $grid.getCheckboxRecords() |
| | | if(selectRecords===null ||selectRecords===''||selectRecords.length===0){ |
| | |
| | | slots: {filter: 'num1_filter'}, |
| | | filterMethod: filterChanged}, |
| | | {field: 'quantity', width: 90,title: t('order.quantity')}, |
| | | {field: 'gross_area', width: 90,title: t('order.area')}, |
| | | {field: 'broken_num',width: 90, title: t('reportingWorks.quantityBroken')}, |
| | | // {field: 'shippedQuantity',width: 120, title: t('report.shippedQuantity')}, |
| | | {field: 'inventory',width: 120, title: t('report.inventoryNum')}, |
| | |
| | | if (columnIndex === 0) { |
| | | return t('basicData.total') |
| | | } |
| | | const List = ["quantity", "broken_num", "inventory", "inventoryArea"]; // éæåçæ±å |
| | | const List = ["quantity", "broken_num", "inventory", "inventoryArea","gross_area"]; // éæåçæ±å |
| | | if (List.includes(column.field)) { |
| | | return footSum(data, column.field) |
| | | } |
| | |
| | | </el-col> |
| | | </template> |
| | | <template #add> |
| | | <el-button @click="add" type="primary" style="margin-right: 3px">æ°å¢</el-button> |
| | | <el-button @click="add" type="primary" style="margin-right: 3px">{{$t('basicData.insert')}}</el-button> |
| | | |
| | | </template> |
| | | |
| | |
| | | body: { |
| | | options: [ |
| | | [ |
| | | { code: 'sheet1', name: '订å', prefixIcon: 'vxe-icon-file-txt', visible: true}, |
| | | { code: 'sheet2', name: 'åè´§', prefixIcon: 'vxe-icon-file-txt', visible: true}, |
| | | { code: 'sheet1', name: t('orderBasicData.order'), prefixIcon: 'vxe-icon-file-txt', visible: true}, |
| | | { code: 'sheet2', name: t('searchOrder.delivery'), prefixIcon: 'vxe-icon-file-txt', visible: true}, |
| | | ] |
| | | ] |
| | | } |
| | |
| | | switch (menu.code) { |
| | | case 'sheet1': { |
| | | if(rowClickIndex.value===null){ |
| | | ElMessage.warning("æªæ¥è¯¢å°å®¢æ·ä¿¡æ¯") |
| | | ElMessage.warning(t('customer.msgList.notCustomerInfo'))//"æªæ¥è¯¢å°å®¢æ·ä¿¡æ¯" |
| | | return |
| | | } |
| | | router.push({path: '/main/customer/selectCustomerOrder', query: { id: row.id,type:1 }}) |
| | |
| | | } |
| | | case 'sheet2': { |
| | | if(rowClickIndex.value===null){ |
| | | ElMessage.warning("æªæ¥è¯¢å°å®¢æ·ä¿¡æ¯") |
| | | ElMessage.warning(t('customer.msgList.notCustomerInfo')) |
| | | return |
| | | } |
| | | router.push({path: '/main/customer/selectCustomerOrder', query: { id: row.id,type:2 }}) |
| | |
| | | const blob = new Blob([res]) |
| | | if ('download' in document.createElement('a')) { // éIEä¸è½½ |
| | | const elink = document.createElement('a') |
| | | elink.download = `客æ·è®¢å.xlsx` |
| | | elink.download = `customerOrder.xlsx` |
| | | elink.style.display = 'none' |
| | | elink.href = URL.createObjectURL(blob) |
| | | document.body.appendChild(elink) |
| | |
| | | const blob = new Blob([res]) |
| | | if ('download' in document.createElement('a')) { // éIEä¸è½½ |
| | | const elink = document.createElement('a') |
| | | elink.download = `客æ·åè´§.xlsx` |
| | | elink.download = `customerDelivery.xlsx` |
| | | elink.style.display = 'none' |
| | | elink.href = URL.createObjectURL(blob) |
| | | document.body.appendChild(elink) |
| | |
| | | import footSum from "@/hook/footSum" |
| | | import {useI18n} from "vue-i18n" |
| | | import {multiply,multiplyAuto,divideAuto} from '@/utils/decimal' |
| | | import OrderNumberReportTransfer from "@/components/sd/order/OrderNumberReportTransfer.vue"; |
| | | const { t } = useI18n() |
| | | |
| | | let dialogTableVisible = ref(false) |
| | |
| | | let errorAreaVisible = ref(false) |
| | | let otherMoneyVisible = ref(false) |
| | | let sizeCheckVisible = ref(false) |
| | | let dialogTransferVisible = ref(false) |
| | | const transferData = ref({ |
| | | oldOrderId:null, |
| | | newOrderNumber:null, |
| | | newOrderId:null, |
| | | oldOrderNumber:null, |
| | | }) |
| | | let orderIdVisible = ref(false) |
| | | const maxTableLen =ref(500) |
| | | const userStore = useUserInfoStore() |
| | |
| | | { code: 'errorArea', name: t('basicData.errorSettlementArea'), prefixIcon: 'vxe-icon-chart-bar-x', visible: true, disabled: false }, |
| | | { code: 'otherMoney', name: t('basicData.otherAmounts'), prefixIcon: 'vxe-icon-chart-bar-x', visible: true, disabled: false }, |
| | | { code: 'sizeCheck', name: t('basicData.sizeReview'), prefixIcon: 'vxe-icon-eye-fill', visible: true, disabled: false }, |
| | | { code: 'updateOrderId', name: 'ä¿®æ¹è®¢åå·', prefixIcon: 'vxe-icon-eye-fill', visible: true, disabled: false } |
| | | { code: 'updateOrderId', name: t('searchOrder.updateOrderId'), prefixIcon: 'vxe-icon-eye-fill', visible: true, disabled: false }, |
| | | { code: 'reportingTransfer', name: t('searchOrder.reportingTransfer'), prefixIcon: 'vxe-icon-send', visible: true, disabled: true } |
| | | ] |
| | | ] |
| | | } |
| | |
| | | |
| | | }) |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | computedMoney(result.cell) |
| | | gridOptions.menuConfig.body.options[0][5].disabled = false |
| | | break |
| | | } |
| | | case "reportingTransfer":{ |
| | | const row = xGrid.value.getCurrentRecord() |
| | | if(row===null){ |
| | | ElMessage.warning(t('components.pleaseClickToSelectARowFirst')) |
| | | return |
| | | } |
| | | transferData.value.oldOrderNumber = row.orderNumber |
| | | transferData.value.oldOrderId = titleUploadData.value.orderId |
| | | dialogTransferVisible.value = true |
| | | break |
| | | } |
| | | } |
| | |
| | | gridOptions.toolbarConfig.buttons[2].disabled = true |
| | | gridOptions.toolbarConfig.buttons[3].disabled = true |
| | | gridOptions.toolbarConfig.buttons[4].disabled = true |
| | | |
| | | |
| | | } |
| | | } |
| | | if(res.data.order.processingCard>0 && company.connectMes){ |
| | | gridOptions.menuConfig.body.options[0][12].disabled = false |
| | | } |
| | | |
| | | if(res.data.order.productionOrder !==0 ){ |
| | |
| | | orderId:newOrderId.value, |
| | | random:Math.random()}}) |
| | | }else if(res.data==="false1"){ |
| | | ElMessage.warning("è¾å
¥è®¢åå·ä¸è½å¤§äºæå¤§è®¢åå·") |
| | | ElMessage.warning(t('order.msg.updateOrderIdErrorGtMaxId')) |
| | | }else if(res.data==="false2"){ |
| | | ElMessage.warning("è¾å
¥è®¢åå·å·²åå¨") |
| | | ElMessage.warning(t('order.msg.updateOrderIdErrorIsExist')) |
| | | }else if(res.data==="false3"){ |
| | | ElMessage.warning("è¾å
¥è®¢åå·ç¸å") |
| | | ElMessage.warning(t('order.msg.updateOrderIdErrorIsSame')) |
| | | }else if(res.data==="false4"){ |
| | | ElMessage.warning("è¾å
¥è®¢åå·é¿åº¦ä¸ç¬¦") |
| | | ElMessage.warning(t('order.msg.updateOrderIdErrorDiscrepancyInLength')) |
| | | }else if(res.data==="false5"){ |
| | | ElMessage.warning("请è¾å
¥æ°å") |
| | | ElMessage.warning(t('order.msg.updateOrderIdErrorInputNumber')) |
| | | }else if(res.data==="false6"){ |
| | | ElMessage.warning("ä¸è½ä¿®æ¹ç¬¬ä¸ä¸ªåå") |
| | | ElMessage.warning(t('order.msg.updateOrderIdErrorNotNo1')) |
| | | } |
| | | }) |
| | | } |
| | |
| | | await ElMessageBox.confirm( |
| | | t('order.msg.differentSize'), |
| | | t('order.msg.warning'), |
| | | { |
| | | confirmButtonText: t('basicData.confirmButtonText'), |
| | | {confirmButtonText: t('basicData.confirmButtonText'), |
| | | cancelButtonText: t('basicData.cancelButtonText'), |
| | | type: 'warning', |
| | | } |
| | |
| | | await initOrder(1) |
| | | createCustomerVisible.value = false |
| | | } |
| | | const orderNumberTransfer = () => { |
| | | router.push({ |
| | | path:'/main/order/createOrder', |
| | | query:{ |
| | | orderId:titleUploadData.value.orderId, |
| | | random:Math.random()}}) |
| | | } |
| | | |
| | | </script> |
| | | |
| | |
| | | <create-customer :getOrderPage="'order'" @getOrderFunction="createCustomerSuccess" /> |
| | | </el-dialog> |
| | | |
| | | <!-- è®¢åæ¥å·¥è½¬ç§»--> |
| | | <el-dialog v-model="dialogTransferVisible" |
| | | :close-on-click-modal="false" |
| | | :title="$t('order.orderTransfer')" |
| | | destroy-on-close width="500"> |
| | | <order-number-report-transfer :transferData="transferData" @orderNumberTransfer="orderNumberTransfer"/> |
| | | </el-dialog> |
| | | |
| | | |
| | | </div> |
| | | </template> |
| | |
| | | ElMessage.success(t('product.msg.operateSuccess')+'!') |
| | | selectOrderList() |
| | | }else if(res.data==='false1'){ |
| | | ElMessage.warning('æ¤è®¢å已转ä¼åï¼åé失败ï¼') |
| | | ElMessage.warning(t('searchOrder.msgList.isOptimize')) |
| | | }else if(res.data==='false2'){ |
| | | ElMessage.warning('æ¤è®¢åå·²æ¥å·¥ï¼åé失败ï¼') |
| | | ElMessage.warning(t('searchOrder.msgList.isReportingWork')) |
| | | }else if(res.data==='false3'){ |
| | | ElMessage.warning('æ¤è®¢åå·²å
¥åºï¼åé失败ï¼') |
| | | ElMessage.warning(t('searchOrder.msgList.isStorage')) |
| | | } |
| | | }) |
| | | }) |
| | |
| | | |
| | | } |
| | | } |
| | | //订åè·ç¦»å°äºä¸å¤©åæ¹åcheckbox class æ¹åé¢è² |
| | | const timeOutChangeColor =(row)=>{ |
| | | if(company.timeOut){ |
| | | return row.timeOut |
| | | } |
| | | } |
| | | |
| | | </script> |
| | | |
| | |
| | | |
| | | <template #state="{ row,column}"> |
| | | <el-checkbox |
| | | :class="timeOutChangeColor(row)" |
| | | v-if="row[column.field] === 2" |
| | | @click.native.prevent |
| | | :indeterminate="row[column.field]===1" |
| | | :checked="true"/> |
| | | <el-checkbox |
| | | v-else |
| | | :class="timeOutChangeColor(row)" |
| | | @click.native.prevent |
| | | :indeterminate="row[column.field]===1" |
| | | :checked="false"/> |
| | |
| | | height: 100%; |
| | | } |
| | | |
| | | |
| | | :deep(.timeOut.is-checked .el-checkbox__inner) { |
| | | background-color: orangered; |
| | | border-color: orangered; |
| | | } |
| | | |
| | | |
| | | </style> |
| | |
| | | margin-left: 0.5rem;" |
| | | size="large" |
| | | type="primary" |
| | | round>{{"å¤å¶"}}</el-button> |
| | | round>{{$t('basicData.copy')}}</el-button> |
| | | <el-button |
| | | :disabled="productTotal.state===1" |
| | | @click="saveProduct(null)" |
| | |
| | | return Result.seccess(materialInventoryService.mesMaterialOutbound(reportingWork)); |
| | | } |
| | | |
| | | @ApiOperation("ç©ææ°å¢è¿åæ¥å£") |
| | | @PostMapping("/cancelMaterialAdditionRecord") |
| | | public Result cancelMaterialAdditionRecord( @RequestBody Map<String,Object> object){ |
| | | return Result.seccess(materialInventoryService.cancelMaterialAdditionRecord(object)); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | |
| | | private LocalDate updateTime; |
| | | @TableField(select = false,exist = false) |
| | | private Integer goodsQuantity; |
| | | @TableField(select = false,exist = false) |
| | | private String timeOut; |
| | | |
| | | @TableField(value = "customer_id") |
| | | private Customer customer; |
| | |
| | | |
| | | Boolean deleteMaterialLog(@Param("materialOutboundId") String materialOutboundId); |
| | | |
| | | Boolean deleteMaterialLogById(@Param("id") Long id); |
| | | |
| | | Integer getMaximum(@Param("type") String type); |
| | | |
| | | Integer getMaximums(@Param("type") String type); |
| | |
| | | |
| | | Integer getReturningWarehouseCount(@Param("returningId") String returningId); |
| | | |
| | | Integer getMaterialInventoryCount(@Param("materialCode") Long materialCode,@Param("dateOfManufacture") LocalDate dateOfManufacture); |
| | | List<MaterialInventory> getMaterialInventoryCount(@Param("materialCode") Long materialCode,@Param("dateOfManufacture") LocalDate dateOfManufacture); |
| | | |
| | | Integer getMaterialInventoryCountNull(@Param("materialCode") Long materialCode); |
| | | List<MaterialInventory> getMaterialInventoryCountNull(@Param("materialCode") Long materialCode); |
| | | |
| | | |
| | | List<MaterialInventory> getMaterialInventoryCountId(@Param("materialCode") Long materialCode,@Param("dateOfManufacture") LocalDate dateOfManufacture); |
| | |
| | | @Param("totalArea") Double totalArea, |
| | | @Param("materialInventory") MaterialInventory materialInventory); |
| | | |
| | | Boolean updateMaterialInventoryOut(@Param("materialCode") Long materialCode,@Param("quantity") Integer quantity, |
| | | @Param("dateOfManufacture") String dateOfManufacture); |
| | | |
| | | Boolean updateMaterialInventoryNullOut(@Param("materialCode") Long materialCode,@Param("quantity") Integer quantity); |
| | | |
| | | Boolean insertMaterialInventory(@Param("materialCode") Long materialCode,@Param("singlePieceArea") Double singlePieceArea, |
| | | @Param("totalArea") Double totalArea, |
| | | @Param("materialInventory") MaterialInventory materialInventory); |
| | |
| | | |
| | | |
| | | //æ¥è¯¢ç©ææ¯å¦åå¨ |
| | | Integer MaterialInventoryCount=0; |
| | | List<MaterialInventory> MaterialInventoryCount; |
| | | if (materialInventory.getDateOfManufacture()!=null){ |
| | | MaterialInventoryCount = materialInventoryMapper.getMaterialInventoryCount(materialCode,materialInventory.getDateOfManufacture()); |
| | | }else{ |
| | | MaterialInventoryCount = materialInventoryMapper.getMaterialInventoryCountNull(materialCode); |
| | | } |
| | | |
| | | if(MaterialInventoryCount==1){ |
| | | if(MaterialInventoryCount.size()==1){ |
| | | materialInventory.setId(MaterialInventoryCount.get(0).getId()); |
| | | if (materialInventory.getDateOfManufacture()!=null){ |
| | | materialInventoryMapper.updateMaterialInventory(materialCode,singlePieceArea,totalArea,materialInventory); |
| | | }else{ |
| | | materialInventoryMapper.updateMaterialInventoryNull(materialCode,singlePieceArea,totalArea,materialInventory); |
| | | } |
| | | log.setFunction("saveMaterialInventoryä¿®æ¹"); |
| | | }else if(MaterialInventoryCount==0) { |
| | | }else if(MaterialInventoryCount.isEmpty()) { |
| | | materialInventoryMapper.insertMaterialInventory(materialCode,singlePieceArea,totalArea,materialInventory); |
| | | log.setFunction("saveMaterialInventoryæ°å¢"); |
| | | }else { |
| | |
| | | MaterialStore materialStore=materialStoreMapper.getSelectMaterialStoreById(materialCode); |
| | | json=materialStore.getJson().substring(1, materialStore.getJson().length() - 1); |
| | | MaterialLog materialLog=new MaterialLog(); |
| | | if(materialInventory.getDateOfManufacture()!=null){ |
| | | materialLog.setOperationOrderNumber(materialInventory.getDateOfManufacture().toString()); |
| | | } |
| | | materialLog.setOperateType("ç©ææ°å¢"); |
| | | materialLog.setMaterialCode(materialCode); |
| | | materialLog.setMaterialName(convertString(json,"\"name\"")); |
| | |
| | | |
| | | |
| | | //æ¥è¯¢ç©ææ¯å¦åå¨ |
| | | Integer MaterialInventoryCount=0; |
| | | List<MaterialInventory> MaterialInventoryCount; |
| | | if (returningWarehouseDetail.getDateOfManufacture()!=null){ |
| | | MaterialInventoryCount = materialInventoryMapper.getMaterialInventoryCount(returningWarehouseDetail.getId(),returningWarehouseDetail.getDateOfManufacture()); |
| | | }else{ |
| | |
| | | } |
| | | |
| | | |
| | | if(MaterialInventoryCount>0){ |
| | | if(!MaterialInventoryCount.isEmpty()){ |
| | | if (returningWarehouseDetail.getDateOfManufacture()!=null){ |
| | | materialInventoryMapper.updateMaterialInventoryReturning(returningWarehouseDetail.getId(),singlePieceArea,totalArea,returningWarehouseDetail); |
| | | }else{ |
| | |
| | | } |
| | | |
| | | |
| | | public String cancelMaterialAdditionRecord(Map<String,Object> object) { |
| | | String saveState = "true"; |
| | | //è®¾ç½®åæ»ç¹ |
| | | Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); |
| | | try { |
| | | Log log = new Log(); |
| | | log.setOperatorId(object.get("userId").toString()); |
| | | log.setOperator(object.get("userName").toString()); |
| | | log.setContent(object.toString()); |
| | | //è·å对象éå循ç¯è¿è¡æ°å¢ä¿®æ¹ |
| | | List<MaterialLog> materialLoglist = JSONArray.parseArray(JSONObject.toJSONString(object.get("materialAdd")), MaterialLog.class); |
| | | if (!materialLoglist.isEmpty()){ |
| | | for (MaterialLog materialLog : materialLoglist) { |
| | | |
| | | //æ¥è¯¢ç©ææ¯å¦åå¨ |
| | | List<MaterialInventory> MaterialInventoryList; |
| | | if (materialLog.getOperationOrderNumber()!=null){ |
| | | MaterialInventoryList = materialInventoryMapper.getMaterialInventoryCount(materialLog.getMaterialCode(), LocalDate.parse(materialLog.getOperationOrderNumber())); |
| | | }else{ |
| | | MaterialInventoryList = materialInventoryMapper.getMaterialInventoryCountNull(materialLog.getMaterialCode()); |
| | | } |
| | | |
| | | if(MaterialInventoryList.size()==1){ |
| | | if(MaterialInventoryList.get(0).getAvailableQuantity()>=materialLog.getQuantity()){ |
| | | if (materialLog.getOperationOrderNumber()!=null){ |
| | | materialInventoryMapper.updateMaterialInventoryOut(materialLog.getMaterialCode(),materialLog.getQuantity(),materialLog.getOperationOrderNumber()); |
| | | }else{ |
| | | materialInventoryMapper.updateMaterialInventoryNullOut(materialLog.getMaterialCode(),materialLog.getQuantity()); |
| | | } |
| | | materialInventoryMapper.deleteMaterialLogById(materialLog.getId()); |
| | | }else{ |
| | | return "false1"; |
| | | } |
| | | |
| | | }else{ |
| | | return "false2"; |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | } |
| | | logService.saveLog(log); |
| | | |
| | | } catch (Exception e) { |
| | | TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); |
| | | //å°å¼å¸¸ä¼ å
¥æ°æ®åº |
| | | SysError sysError = new SysError(); |
| | | sysError.setError(e+Arrays.toString(e.getStackTrace())); |
| | | sysError.setFunc("cancelFinishedGoodsInventoryStorage"); |
| | | sysErrorService.insert(sysError); |
| | | saveState = "false"; |
| | | |
| | | } |
| | | return saveState; |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | |
| | | |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public Object reportingWorkTransferSv(Map<String, String> reportingWork) { |
| | | Map<String, Object> result = new HashMap<>(); |
| | | |
| | | Order oldOrder = orderMapper.selectOrderId(reportingWork.get("oldOrderId")); |
| | | OrderDetail oldOrderDetail = orderDetailMapper.selectOne( |
| | | new QueryWrapper<OrderDetail>() |
| | | .eq("order_id", reportingWork.get("oldOrderId")) |
| | | .eq("order_number", reportingWork.get("oldOrderNumber")) |
| | | ); |
| | | if(oldOrder == null){ |
| | | result.put("msg","æ§è®¢åä¸åå¨"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | if(oldOrderDetail == null){ |
| | | result.put("msg","æ§è®¢å次åºå·ä¸åå¨"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | |
| | | Order newOrder = orderMapper.selectOrderId(reportingWork.get("newOrderId")); |
| | | OrderDetail newOrderDetail = orderDetailMapper.selectOne( |
| | |
| | | .eq("order_id", reportingWork.get("newOrderId")) |
| | | .eq("order_number", reportingWork.get("newOrderNumber")) |
| | | ); |
| | | if (newOrder == null){ |
| | | result.put("msg","æ°è®¢åä¸åå¨"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | if(newOrderDetail == null){ |
| | | result.put("msg","æ°è®¢å次åºå·ä¸åå¨"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | if(Objects.equals(oldOrder.getOrderId(), newOrder.getOrderId())){ |
| | | result.put("msg","æ°æ§è®¢åå·ä¸è´"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | |
| | | if(!Objects.equals(oldOrder.getCustomerId(), newOrder.getCustomerId())){ |
| | | return "æ°æ§è®¢å客æ·ä¸ä¸è´"; |
| | | result.put("msg","æ°æ§è®¢å客æ·ä¸ä¸è´"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | if(!Objects.equals(oldOrderDetail.getProductId(), newOrderDetail.getProductId())){ |
| | | return "æ°æ§è®¢å产åä¸ä¸è´"; |
| | | result.put("msg","æ°æ§è®¢å产åä¸ä¸è´"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | if (!Objects.equals(oldOrderDetail.getWidth(), newOrderDetail.getWidth()) |
| | | || !Objects.equals(oldOrderDetail.getHeight(), newOrderDetail.getHeight())){ |
| | | return "æ°æ§è®¢å尺寸ä¸ä¸è´"; |
| | | result.put("msg","æ°æ§è®¢å尺寸ä¸ä¸è´"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | |
| | | |
| | |
| | | .eq("order_number", reportingWork.get("oldOrderNumber")) |
| | | ); |
| | | if(oldOrderProcessDetailList.isEmpty()){ |
| | | return "æ§è®¢åæªåæµç¨å¡"; |
| | | result.put("msg","æ§è®¢åæªåæµç¨å¡"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | //è·åæ°è®¢åæ¯å¦æµç¨å¡æ¯å¦åå¨ |
| | | List<OrderProcessDetail> newOrderProcessDetailList = orderProcessDetailMapper |
| | |
| | | .eq("order_number", reportingWork.get("newOrderNumber")) |
| | | ); |
| | | if(newOrderProcessDetailList.isEmpty()){ |
| | | return "æ°è®¢åæªåæµç¨å¡"; |
| | | result.put("msg","æ°è®¢åæªåæµç¨å¡"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | //æ°è®¢åæ¯å¦åå¨å·²ç»æçåºå· |
| | | List<FlowCard> newFlowCardLayoutStatus = flowCardMapper.selectList(new QueryWrapper<FlowCard>() |
| | |
| | | .gt("layout_status",0) |
| | | ); |
| | | if(!newFlowCardLayoutStatus.isEmpty()){ |
| | | return "æ°è®¢åæ¤åºå·å卿ç"; |
| | | result.put("msg","æ°è®¢åæ¤åºå·å卿ç"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | //è·åæ§è®¢åæ¥å·¥æ°æ®æ±æ» |
| | | List<OrderProcessDetail> oldOrderProcessDetailForReport = orderProcessDetailMapper |
| | |
| | | //restTemplate.postForObject("http://localhost:8086/order/test",orderNumberTransferList,String.class); |
| | | |
| | | //åmesåéhttpè¯·æ± |
| | | ResponseEntity<String> response =restTemplate.exchange( |
| | | ResponseEntity<OrderNumberTransferDTO> response =restTemplate.exchange( |
| | | "http://localhost:88/api/loadGlass/order/order/orderChange", |
| | | HttpMethod.POST, |
| | | new HttpEntity<>(orderNumberTransferList), |
| | | String.class); |
| | | OrderNumberTransferDTO.class); |
| | | |
| | | if(response.getStatusCode() == HttpStatus.OK){ |
| | | return true; |
| | | OrderNumberTransferDTO responseBody = response.getBody(); |
| | | result.put("data",true); |
| | | return result; |
| | | }else{ |
| | | return "è¿æ¥mesååºè¶
æ¶"; |
| | | result.put("msg","è¿æ¥mesååºè¶
æ¶"); |
| | | result.put("data",false); |
| | | return result; |
| | | } |
| | | |
| | | } |
| | |
| | | delete from mm.material_log where operation_order_number=#{materialOutboundId} |
| | | </delete> |
| | | |
| | | <delete id="deleteMaterialLogById" > |
| | | delete from mm.material_log where id=#{id} |
| | | </delete> |
| | | |
| | | <delete id="deleteReturningWarehouseDetail" > |
| | | delete from mm.returning_warehouse_detail where returning_id=#{returningId} |
| | | </delete> |
| | |
| | | </select> |
| | | |
| | | <select id="getMaterialInventoryCount" > |
| | | select count(*) from mm.material_inventory where material_code=#{materialCode} and date_of_manufacture=#{dateOfManufacture} |
| | | select * from mm.material_inventory where material_code=#{materialCode} and date_of_manufacture=#{dateOfManufacture} |
| | | </select> |
| | | |
| | | <select id="getMaterialInventoryCountNull" > |
| | | select count(*) from mm.material_inventory where material_code=#{materialCode} and date_of_manufacture is null |
| | | select * from mm.material_inventory where material_code=#{materialCode} and date_of_manufacture is null |
| | | </select> |
| | | |
| | | <select id="getMaterialInventoryCountId" > |
| | |
| | | update mm.material_inventory set inventory_quantity=inventory_quantity+#{materialInventory.inventoryQuantity}, |
| | | available_quantity=available_quantity+#{materialInventory.inventoryQuantity}, |
| | | total_area=single_piece_area*inventory_quantity |
| | | where material_code=#{materialCode} |
| | | where material_code=#{materialCode} and date_of_manufacture is null |
| | | </update> |
| | | |
| | | <update id="updateMaterialInventoryOut" > |
| | | update mm.material_inventory set inventory_quantity=inventory_quantity-#{quantity}, |
| | | available_quantity=available_quantity-#{quantity}, |
| | | total_area=single_piece_area*inventory_quantity |
| | | where material_code=#{materialCode} and date_of_manufacture=#{dateOfManufacture} |
| | | </update> |
| | | |
| | | <update id="updateMaterialInventoryNullOut" > |
| | | update mm.material_inventory set inventory_quantity=inventory_quantity-#{quantity}, |
| | | available_quantity=available_quantity-#{quantity}, |
| | | total_area=single_piece_area*inventory_quantity |
| | | where material_code=#{materialCode} and date_of_manufacture is null |
| | | </update> |
| | | |
| | | <update id="updateMaterialInventoryReturning" > |
| | |
| | | e.reportWorkQuantityCount, |
| | | e.reportWorkTime, |
| | | e.broken_num, |
| | | c.quantity*a.area as gross_area, |
| | | ifnull(f.inventory, 0) as inventory, |
| | | round(ifnull(f.inventory, 0) * a.area, 2) as inventoryArea, |
| | | ifnull(dd.quantity, 0) as shippedQuantity, |
| | |
| | | <select id="getOrderList"> |
| | | select * from (select |
| | | o.*, |
| | | ifnull(sum(fgi.quantity_available),0) as goodsQuantity |
| | | ifnull(sum(fgi.quantity_available),0) as goodsQuantity, |
| | | if(DATEDIFF(o.delivery_date, CURDATE()) < 3 and o.delivery < 2, 'timeOut','' ) as timeOut |
| | | from |
| | | sd.`order` as o |
| | | left join mm.finished_goods_inventory as fgi |