| | |
| | | if(result){ |
| | | const dataList = xGrid.value.getTableData().visibleData |
| | | const val = getNestedProperty(dataList[result.start],result.cell)+"" |
| | | if(!/\d$/.test(val)){ |
| | | const matches = val.match(/\D/g); |
| | | const b= val.lastIndexOf(matches[matches.length-1]) |
| | | |
| | | const numbersArr = [] |
| | | const regex = /\d+/g |
| | | let match |
| | | while ((match = regex.exec(val))) { |
| | | numbersArr.push({ number: match[0], index: match.index }); |
| | | } |
| | | let numbers=numbersArr[numbersArr.length-1] |
| | | var subStr1 = val.substring(numbers.index); |
| | | var subStr2 = val.substring(0, numbers.index); |
| | | let number = parseInt(subStr1) |
| | | var reg =new RegExp(number,"g") |
| | | dataList.forEach((item,index) =>{ |
| | | if(index>=result.start ){ |
| | | let newStr = subStr1.replace(reg, number); |
| | | if(parseInt(newStr)>9){ |
| | | newStr=parseInt(newStr) |
| | | } |
| | | setNestedValue(item,result.cell,subStr2+newStr) |
| | | number=number+1 |
| | | const numbersArr = [] |
| | | const regex = /\d+/g |
| | | let match |
| | | while ((match = regex.exec(val))) { |
| | | numbersArr.push({ number: match[0], index: match.index }); |
| | | } |
| | | let numbers=numbersArr[numbersArr.length-1] |
| | | var subStr1 = val.substring(numbers.index); |
| | | const matche = subStr1.match(/(\d+)([^0-9]|$)/); |
| | | const a= val.lastIndexOf(matche[2]) |
| | | var subStr2 = val.substring(0, numbers.index); |
| | | var subStr3 = val.substring(a,b+1); |
| | | let number = parseInt(subStr1) |
| | | var reg =new RegExp(number,"g") |
| | | dataList.forEach((item,index) =>{ |
| | | if(index>=result.start ){ |
| | | let newStr = subStr1.replace(reg, number); |
| | | if(parseInt(newStr)>9){ |
| | | newStr=parseInt(newStr) |
| | | if(!/\d$/.test(val)){ |
| | | newStr=newStr+subStr3 |
| | | } |
| | | } |
| | | setNestedValue(item,result.cell,subStr2+newStr) |
| | | number=number+1 |
| | | } |
| | | |
| | | }) |
| | | }) |
| | | }else{ |
| | | const numbersArr = [] |
| | | const regex = /\d+/g |
| | | let match |
| | | while ((match = regex.exec(val))) { |
| | | numbersArr.push({ number: match[0], index: match.index }); |
| | | } |
| | | let numbers=numbersArr[numbersArr.length-1] |
| | | var subStr1 = val.substring(numbers.index); |
| | | var subStr2 = val.substring(0, numbers.index); |
| | | let number = parseInt(subStr1) |
| | | var reg =new RegExp(number,"g") |
| | | dataList.forEach((item,index) =>{ |
| | | if(index>=result.start ){ |
| | | let newStr = subStr1.replace(reg, number); |
| | | if(parseInt(newStr)>9){ |
| | | newStr=parseInt(newStr) |
| | | } |
| | | setNestedValue(item,result.cell,subStr2+newStr) |
| | | number=number+1 |
| | | } |
| | | |
| | | }) |
| | | } |
| | | |
| | | } |
| | | computedMoney(result.cell) |
| | |
| | | if (result) { |
| | | const dataList = xGrid.value.getTableData().visibleData |
| | | const val = getNestedProperty(dataList[result.start], result.cell)+"" |
| | | const numbersArr = [] |
| | | const regex = /\d+/g |
| | | let match |
| | | while ((match = regex.exec(val))) { |
| | | numbersArr.push({ number: match[0], index: match.index }); |
| | | } |
| | | let numbers=numbersArr[numbersArr.length-1] |
| | | var subStr1 = val.substring(numbers.index); |
| | | var subStr2 = val.substring(0, numbers.index); |
| | | let number = parseInt(subStr1) |
| | | var reg =new RegExp(number,"g") |
| | | dataList.forEach((item,index) =>{ |
| | | if(index >= result.start && index <= result.end){ |
| | | let newStr = subStr1.replace(reg, number); |
| | | if(parseInt(newStr)>9){ |
| | | newStr=parseInt(newStr) |
| | | } |
| | | setNestedValue(item,result.cell,subStr2+newStr) |
| | | number=number+1 |
| | | } |
| | | if(!/\d$/.test(val)){ |
| | | const matches = val.match(/\D/g); |
| | | const b= val.lastIndexOf(matches[matches.length-1]) |
| | | |
| | | }) |
| | | /*let numbers = parseInt(val.match(/(\d+)$/)) |
| | | const string=val.replace(/\d+$/, '') |
| | | dataList.forEach((item, index) => { |
| | | if (index >= result.start && index <= result.end) { |
| | | setNestedValue(item, result.cell, string + numbers) |
| | | numbers = numbers + 1 |
| | | const numbersArr = [] |
| | | const regex = /\d+/g |
| | | let match |
| | | while ((match = regex.exec(val))) { |
| | | numbersArr.push({ number: match[0], index: match.index }); |
| | | } |
| | | })*/ |
| | | let numbers=numbersArr[numbersArr.length-1] |
| | | var subStr1 = val.substring(numbers.index); |
| | | const matche = subStr1.match(/(\d+)([^0-9]|$)/); |
| | | const a= val.lastIndexOf(matche[2]) |
| | | var subStr2 = val.substring(0, numbers.index); |
| | | var subStr3 = val.substring(a,b+1); |
| | | let number = parseInt(subStr1) |
| | | var reg =new RegExp(number,"g") |
| | | dataList.forEach((item,index) =>{ |
| | | if(index >= result.start && index <= result.end){ |
| | | let newStr = subStr1.replace(reg, number); |
| | | if(parseInt(newStr)>9){ |
| | | newStr=parseInt(newStr) |
| | | newStr=newStr+subStr3 |
| | | } |
| | | setNestedValue(item,result.cell,subStr2+newStr) |
| | | number=number+1 |
| | | } |
| | | |
| | | }) |
| | | }else{ |
| | | const numbersArr = [] |
| | | const regex = /\d+/g |
| | | let match |
| | | while ((match = regex.exec(val))) { |
| | | numbersArr.push({ number: match[0], index: match.index }); |
| | | } |
| | | let numbers=numbersArr[numbersArr.length-1] |
| | | var subStr1 = val.substring(numbers.index); |
| | | var subStr2 = val.substring(0, numbers.index); |
| | | let number = parseInt(subStr1) |
| | | var reg =new RegExp(number,"g") |
| | | dataList.forEach((item,index) =>{ |
| | | if(index >= result.start && index <= result.end){ |
| | | let newStr = subStr1.replace(reg, number); |
| | | if(parseInt(newStr)>9){ |
| | | newStr=parseInt(newStr) |
| | | } |
| | | setNestedValue(item,result.cell,subStr2+newStr) |
| | | number=number+1 |
| | | } |
| | | |
| | | }) |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | computedMoney(result.cell) |
| | |
| | | |
| | | if(titleUploadData.value.calculateType===3){ |
| | | item.grossAmount=multiply(item.price,item.quantity) |
| | | }else if(titleUploadData.value.calculateType===4){ |
| | | item.grossAmount=parseFloat(divideAuto(item.width * item.height* item.quantity*item.price,1000000,company.decValue)) |
| | | }else{ |
| | | item.grossAmount=multiply(item.price,item.computeGrossArea) |
| | | } |
| | |
| | | titleUploadData.value.alType = titleSelectJson.value.alType[0].basicName |
| | | titleUploadData.value.calculateType = company.calculateType |
| | | const today = new Date |
| | | today.setTime(today.getTime() + (7 * 24 * 60 * 60 * 1000)) |
| | | today.setTime(today.getTime() + (company.deliveryDate * 24 * 60 * 60 * 1000)) |
| | | titleUploadData.value.deliveryDate = today.getFullYear() + |
| | | '-' + ("0" + (today.getMonth() + 1)).slice(-2) |
| | | + '-' + ("0" + today.getDate()).slice(-2) |
| | |
| | | return |
| | | } |
| | | titleUploadData.value.project = item.project |
| | | titleUploadData.value.salesmanId = item.salesmanId |
| | | titleUploadData.value.salesmanId = parseInt(item.salesmanId) |
| | | titleUploadData.value.salesman = item.salesman |
| | | titleUploadData.value.contacts = item.contacts |
| | | titleUploadData.value.contactNumber = item.contactNumber |
| | | } |
| | | |
| | | const changeCustomer = () => { |
| | | const customer = titleUploadData.value.customerId |
| | | titleUploadData.value.customerId = customer['id'] |
| | | titleUploadData.value.customerName = customer['customerName'] |
| | | titleUploadData.value.project = customer['project'] |
| | | titleUploadData.value.salesmanId = customer['salesmanId'] |
| | | titleUploadData.value.salesman = customer['salesman'] |
| | | titleUploadData.value.contacts = customer['contacts'] |
| | | titleUploadData.value.contactNumber = customer['contactNumber'] |
| | | projects.value = customer['projectList'] |
| | | const changedCustomerId = titleUploadData.value.customerId |
| | | const customer = titleSelectJson.value.customer.filter(item => item.id === changedCustomerId) |
| | | titleUploadData.value.customerName = customer[0].customerName |
| | | titleUploadData.value.project = customer[0].project |
| | | titleUploadData.value.salesmanId = customer[0].salesmanId |
| | | titleUploadData.value.salesman = customer[0].salesman |
| | | titleUploadData.value.contacts = customer[0].contacts |
| | | titleUploadData.value.contactNumber = customer[0].contactNumber |
| | | projects.value = customer[0].projectList |
| | | } |
| | | |
| | | const changeSaleMan = () => { |
| | |
| | | // 获取保留面积, |
| | | const decValue = company.decValue |
| | | switch (titleUploadData.value.calculateType){ |
| | | case 2:{ |
| | | case 2 :{ |
| | | areaSum = parseFloat(divideAuto(row.width * row.height* row.quantity,1000000,company.decValue)) |
| | | break |
| | | } |
| | | case 4:{ |
| | | areaSum = parseFloat(divideAuto(row.width * row.height* row.quantity,1000000,company.decValue)) |
| | | break |
| | | } |
| | |
| | | } |
| | | if(titleUploadData.value.calculateType===3){ |
| | | item.grossAmount=multiply(item.price , item.quantity) |
| | | }else if(titleUploadData.value.calculateType===4){ |
| | | item.grossAmount=parseFloat(divideAuto(item.width * item.height* item.quantity*item.price,1000000,company.decValue)) |
| | | }else{ |
| | | item.grossAmount=multiply(item.price * 1 , item.computeGrossArea) |
| | | } |
| | |
| | | } |
| | | if(titleUploadData.value.calculateType===3){ |
| | | row.grossAmount=multiply(row.price ,row.quantity) |
| | | }else if(titleUploadData.value.calculateType===4){ |
| | | row.grossAmount=parseFloat(divideAuto(row.width * row.height* row.quantity*row.price,1000000,company.decValue)) |
| | | }else{ |
| | | row.grossAmount=multiply(row.price , row.computeGrossArea) |
| | | } |
| | |
| | | if( !isNaN(item.computeArea*1) && item.computeArea != null ){ |
| | | if(titleUploadData.value.calculateType===3){ |
| | | item.grossAmount=parseFloat(multiply(item.price , item.quantity)) |
| | | }else if(titleUploadData.value.calculateType===4){ |
| | | item.grossArea = countArea(item) |
| | | item.computeGrossArea = item.grossArea |
| | | item.grossAmount=parseFloat(divideAuto(item.width * item.height* item.quantity*item.price,1000000,company.decValue)) |
| | | }else{ |
| | | item.grossArea = countArea(item) |
| | | item.computeGrossArea = item.grossArea |
| | |
| | | xGrid.value.clearEdit() |
| | | let rowNext = row |
| | | delete rowNext._X_ROW_KEY |
| | | xGrid.value.insertAt(rowNext, xGrid.value.getTableData.length || -1) |
| | | //xGrid.value.insertAt({}, xGrid.value.getTableData.length || -1) |
| | | //xGrid.value.insertAt(rowNext, xGrid.value.getTableData.length || -1) |
| | | xGrid.value.insertAt({}, xGrid.value.getTableData.length || -1) |
| | | } |
| | | const nextRow = xGrid.value.getTableData().fullData[nextRowIndex] |
| | | xGrid.value.setCurrentRow(nextRow) |
| | |
| | | <el-option v-for="item in titleSelectJson['customer']" |
| | | :key="item.id" |
| | | :label="item.id+' '+item.customerName" |
| | | :value="item" |
| | | :value="item.id" |
| | | /> |
| | | <template #footer> |
| | | <el-button @click="createCustomerVisible=true" text bg size="small" > |
| | |
| | | <el-option :value="1" :label="t('order.areaAmountPerPiece')"/> |
| | | <el-option :value="2" :label="t('order.areaAmountAge')"/> |
| | | <el-option :value="3" :label="t('order.quantityMount')"/> |
| | | <el-option :value="4" :label="t('order.allAmount')"/> |
| | | </el-select> |
| | | </el-col> |
| | | <el-col :span="2"><el-text>*{{$t('order.salesman')}}:</el-text></el-col> |
| | |
| | | class="product1" |
| | | v-model="productVisible" |
| | | @closed="closeProductDialog" |
| | | :destroy-on-close="true" |
| | | style="width: 80%;height:75%; "> |
| | | <template #header > |
| | | <div class="my-header"> |