guoyuji
2024-06-21 ea952b446a6fca053c27178bccf1c2af6f25f30b
north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
@@ -6,6 +6,7 @@
import request from "@/utils/request"
import deepClone from "@/utils/deepClone"
import  useUserInfoStore from '@/stores/userInfo'
import companyInfo from "@/stores/sd/companyInfo"
import SelectProduct from "@/views/sd/product/SelectProduct.vue"
import OrderOtherMoney from "@/components/sd/order/OrderOtherMoney.vue"
import OrderSizeCheck from "@/components/sd/order/OrderSizeCheck.vue"
@@ -24,6 +25,7 @@
const maxTableLen =ref(150)
let errorArea = ref(0.4)
const userStore = useUserInfoStore()
const company = companyInfo()
const router = useRouter()
const route = useRoute()
const xGrid = ref()
@@ -219,9 +221,9 @@
      {
        validator ({ cellValue }) {
          //const regex = /^(0(\.\d{1,2})?|([1-9]\d{0,4})(\.\d{1,2})?|99999(\.9{1,2})?)$/
          const regex = /^(0|[1-9][0-9]{0,4}([.][0-9]{1,2})?)$/
          const regex = company.widHeiLength.regexp
          if (!regex.test(cellValue)) {
            return new Error(t('basicData.msg.range99999Dec2'))
            return new Error(t(company.widHeiLength.msg))
          }
        }
      }
@@ -229,9 +231,9 @@
    height:[
      {
        validator ({ cellValue }) {
          const regex = /^(0|[1-9][0-9]{0,4}([.][0-9]{1,2})?)$/
          const regex = company.widHeiLength.regexp
          if ( !regex.test(cellValue)) {
            return new Error(t('basicData.msg.range99999Dec2'))
            return new Error(t(t(company.widHeiLength.msg)))
          }
        }
      }
@@ -491,8 +493,8 @@
        case 'copyChecked' :{
          let result = toolbarButtonClickEvent()
          if(result){
            const dataList = xGrid.value.getTableData().visibleData
            if(result.cell=='productName'){
              const dataList = xGrid.value.getTableData().visibleData
              const val = dataList[result.start][result.cell]
              const val1 = dataList[result.start]["productId"]
              dataList.forEach((item,index) =>{
@@ -502,7 +504,6 @@
                }
              })
            }else if(result.cell=='productId'){
              const dataList = xGrid.value.getTableData().visibleData
              const val = dataList[result.start][result.cell]
              const val1 = dataList[result.start]["productName"]
              dataList.forEach((item,index) =>{
@@ -512,11 +513,11 @@
                }
              })
            }else{
              const dataList = xGrid.value.getTableData().visibleData
              const val = dataList[result.start][result.cell]
              const val = getNestedProperty(dataList[result.start],result.cell)
              dataList.forEach((item,index) =>{
                if(index>=result.start && index<=result.end){
                  item[result.cell] = val
                  setNestedValue(item,result.cell,val)
                }
              })
            }
@@ -527,8 +528,9 @@
        case 'copyAll' :{
          let result = toolbarButtonClickEvent()
          if(result){
            const dataList = xGrid.value.getTableData().visibleData
            if(result.cell=='productName'){
              const dataList = xGrid.value.getTableData().visibleData
              const val = dataList[result.start][result.cell]
              const val1 = dataList[result.start]["productId"]
              dataList.forEach((item,index) =>{
@@ -538,7 +540,6 @@
                }
              })
            }else if(result.cell=='productId'){
              const dataList = xGrid.value.getTableData().visibleData
              const val = dataList[result.start][result.cell]
              const val1 = dataList[result.start]["productName"]
              dataList.forEach((item,index) =>{
@@ -548,11 +549,10 @@
                }
              })
            }else{
              const dataList = xGrid.value.getTableData().visibleData
              const val = dataList[result.start][result.cell]
              const val = getNestedProperty(dataList[result.start],result.cell)
              dataList.forEach((item,index) =>{
                if(index>=result.start ){
                  item[result.cell] = val
                  setNestedValue(item,result.cell,val)
                }
              })
            }
@@ -654,9 +654,15 @@
        titleUploadData.value.delivery=null
        titleUploadData.value.createTime=null
        const orderDetails = res.data.orderDetails
        orderDetails.forEach(item => {
          item.otherColumns = JSON.parse(item.otherColumns)
        })
        if(history.state.type=='copy'){
          xGrid.value.reloadData(res.data.orderDetails)
          xGrid.value.reloadData(orderDetails)
        }
        gridOptions.loading = false
        return
      }
@@ -788,7 +794,6 @@
//查询重复订单方法
const selectOrder = (order) => {
  console.log(order)
  request.post(`/order/selectOrder`,order).then((res) => {
    if(res.code==200){
      if(res.data.data>0){
@@ -992,6 +997,13 @@
  }, obj);
}
function setNestedValue(obj, path, value) {
  const keys = path.split('.');
  const lastKey = keys.pop();
  const lastObj = keys.reduce((obj, key) => obj[key], obj);
  lastObj[lastKey] = value;
}
//行单元格修改修改触发此事件
const editClosedEvent = ({ row, column }) => {
  //判断修改相应的数值修改面积与金额
@@ -1150,7 +1162,7 @@
        </el-col>
        <el-col  :span="2"><el-text>{{$t('order.icon')}}:</el-text></el-col>
        <el-col  :span="2">
          <el-select v-model="titleUploadData.icon"  clearable placeholder=" " >
          <el-select v-model="titleUploadData.icon"  clearable placeholder=" " allow-create  filterable>
            <el-option  v-for="item in titleSelectJson['icon']"
                       :key="item.id"
                       :label="item.basicName"
@@ -1159,7 +1171,7 @@
        </el-col>
        <el-col  :span="2"><el-text>{{$t('order.packType')}}:</el-text></el-col>
        <el-col  :span="2">
          <el-select v-model="titleUploadData.packType"  clearable placeholder=" " >
          <el-select v-model="titleUploadData.packType"  clearable placeholder=" " allow-create  filterable >
            <el-option v-for="item in titleSelectJson['packType']"
                       :key="item.id"
                       :label="item.basicName"
@@ -1314,6 +1326,7 @@
    >
      <order-size-check
          @getParent="gaveOrderSizeCheck"
          :orderId="titleUploadData.orderId"
          :OrderDetail="xGrid"/>
    </el-dialog>
@@ -1358,7 +1371,5 @@
    height: 90%;
    width: 100%;
  }
</style>