| | |
| | | <vol-box v-model="show" title="ç»ç" :width="800" :height="600"> |
| | | <template #content> |
| | | <el-form :model="formData" label-width="100px"> |
| | | <!-- <el-form-item label="è¾å
¥é¡¹"> --> |
| | | <el-form-item label="æç®±å·/æçå·" style="width: 50%"> |
| | | <el-input type="text" v-model="this.palletCode" placeholder="请æ«ç æ¡ç "> </el-input> |
| | | <el-form-item label="æ¡ç " style="width: 50%"> |
| | | <el-input type="text" v-model="palletCode" placeholder="请æ«ç æ¡ç "> </el-input> |
| | | </el-form-item> |
| | | |
| | | <!-- éåç©æå表 --> |
| | | <el-form-item v-for="(item, index) in formData.items" :key="index" style="width: 70%"> |
| | | <el-select size="mini" clearable v-model="item.MaterilName" placeholder="è¯·éæ©"> |
| | | <el-option v-for="item in GetMatetils()" :value="item.value" :label="item.text" |
| | | :key="item.value"></el-option> |
| | | <el-select |
| | | size="mini" |
| | | clearable |
| | | filterable |
| | | v-model="item.MaterilName" |
| | | placeholder="è¯·éæ©ç©æ" |
| | | style="width: 45%; margin-right: 5%" |
| | | > |
| | | <!-- é¿å
使ç¨ä¸å¾ªç¯åéç¸åçitemåç§° --> |
| | | <el-option |
| | | v-for="material in GetMatetils()" |
| | | :value="material.value" |
| | | :label="material.text" |
| | | :key="material.value" |
| | | ></el-option> |
| | | </el-select> |
| | | <!-- <el-input v-model="item.MaterilName" placeholder="请è¾å
¥ç©æåç§°" style="width: 50%"></el-input> --> |
| | | <el-input v-model="item.num" placeholder="请è¾å
¥æ°é" style="width: 70%"></el-input> |
| | | |
| | | <!-- æ°éåºè¯¥æ¯æ°åç±»å --> |
| | | <el-input |
| | | v-model="item.num" |
| | | placeholder="请è¾å
¥æ°é" |
| | | style="width: 35%; margin-right: 5%" |
| | | type="number" |
| | | ></el-input> |
| | | |
| | | <el-button v-if="index > 0" type="danger" @click="removeItem(index)">X</el-button> |
| | | </el-form-item> |
| | | <!-- </el-form-item> --> |
| | | </el-form> |
| | | <el-button type="primary" @click="addItem"> |
| | | æ·»å è¾å
¥æ¡ |
| | | |
| | | <el-button type="primary" @click="addItem" style="margin-top: 10px;"> |
| | | æ·»å ç©æ |
| | | </el-button> |
| | | </template> |
| | | |
| | |
| | | data() { |
| | | return { |
| | | formData: { |
| | | items: [{ MaterilName: '' }, { num: '' }], |
| | | // æ¯ä¸ªitemåºè¯¥æ¯ä¸ä¸ªå
å«MaterilNameånumç对象 |
| | | items: [{ MaterilName: '', num: '' }], |
| | | }, |
| | | index: 1, |
| | | palletCode: "", |
| | | show: false, |
| | | MatetilList: [] |
| | | MatetilList: [] // å设è¿éä¼è¢«å¡«å
ç©ææ°æ® |
| | | }; |
| | | }, |
| | | methods: { |
| | | addItem() { |
| | | this.formData.items.push([{ MaterilName: '' }, { num: '' }]); |
| | | // ä¿æä¸åå§æ°æ®ç»æä¸è´ï¼æ·»å ä¸ä¸ªå¯¹è±¡è䏿¯æ°ç» |
| | | this.formData.items.push({ MaterilName: '', num: '' }); |
| | | }, |
| | | removeItem(index) { |
| | | this.formData.items.splice(index, 1); |
| | | }, |
| | | |
| | | //è·åç©æä¿¡æ¯ |
| | | // è·åç©æä¿¡æ¯ |
| | | GetMatetils() { |
| | | var data = []; |
| | | this.MatetilList.forEach((t) => { |
| | | data.push(t); |
| | | }); |
| | | return data; |
| | | // ç®å代ç ï¼ç´æ¥è¿åå表 |
| | | return this.MatetilList; |
| | | }, |
| | | |
| | | submitForm() { |
| | | if ( |
| | | !this.palletCode || |
| | | this.palletCode == "" |
| | | ) { |
| | | // éªè¯æ¡ç |
| | | if (!this.palletCode.trim()) { |
| | | this.$message.error("请æ«ç "); |
| | | return; |
| | | } |
| | | |
| | | // éªè¯è³å°æä¸ä¸ªç©æä¸æ°éææ |
| | | const hasValidItem = this.formData.items.some(item => |
| | | item.MaterilName && item.num && Number(item.num) > 0 |
| | | ); |
| | | |
| | | if (!hasValidItem) { |
| | | this.$message.error("è¯·æ·»å ææçç©æåæ°é"); |
| | | return; |
| | | } |
| | | |
| | |
| | | jsonData: JSON.parse(JSON.stringify(this.formData.items)), |
| | | palletCode: this.palletCode, |
| | | } |
| | | |
| | | }; |
| | | |
| | | |
| | | this.http.post("/api/BoxingInfo/AddBoxingInfo", params, true).then((x) => { |
| | | if (!x.status) { |
| | | this.$message.error(x.message); |
| | | } else { |
| | | this.$Message.success("æå"); |
| | | this.$message.success("æä½æå"); |
| | | // é置表å |
| | | this.palletCode = ''; |
| | | this.formData.items = []; |
| | | this.formData.items = [{ MaterilName: '', num: '' }]; |
| | | this.show = false; |
| | | $vue.refresh(); |
| | | // éç¥ç¶ç»ä»¶å·æ°æ°æ® |
| | | if (window.$vue && $vue.refresh) { |
| | | $vue.refresh(); |
| | | } |
| | | } |
| | | }).catch(error => { |
| | | this.$message.error("æäº¤å¤±è´¥ï¼" + (error.message || "ç½ç»é误")); |
| | | }); |
| | | }, |
| | | }, |
| | | |
| | | }; |
| | | </script> |
| | | |
| | |
| | | .container { |
| | | font-family: 'Inter', system-ui, sans-serif; |
| | | } |
| | | </style> |
| | | </style> |