Pārlūkot izejas kodu

Merge branch 'code2' into cucu

codeMan 1 gadu atpakaļ
vecāks
revīzija
ebdfe1baaa

+ 2 - 1
src/DRP/HDrpManagement/productManage/detail/index.vue

@@ -44,7 +44,7 @@ import info from './tabs/info.vue'
 import saleClass from './tabs/class.vue'
 import gradePrice from './tabs/gradePrice.vue'
 import { useRouter } from "vue-router";
-import { onActivated, onMounted,ref ,computed} from "vue";
+import { onActivated, onMounted,ref ,computed, provide} from "vue";
 import { message } from 'ant-design-vue';
 import { storeToRefs } from 'pinia'
 import { useBaseStore } from '@/stores/modules/base'
@@ -61,6 +61,7 @@ const checkSite = computed(()=>{
 })
 const mainAreaData = ref([])
 const productData = ref({})
+provide('productDetail',productData)
 const cls = ref()
 const mianData = async (fn)=>{
   const res = await Api.requested({

+ 6 - 1
src/DRP/HDrpManagement/productManage/detail/modules/tree.vue

@@ -21,13 +21,17 @@ export default {
 }
 </script>
 <script setup>
-  import {ref,defineProps,defineExpose,defineEmits,computed,watch, onActivated} from 'vue'
+  import {ref,defineProps,defineExpose,defineEmits,computed,watch, onActivated, inject} from 'vue'
   import { MinusCircleOutlined,CheckCircleOutlined } from '@ant-design/icons-vue';
   import { storeToRefs } from 'pinia'
   import { useBaseStore } from '@/stores/modules/base'
+import { message } from 'ant-design-vue';
   const base = useBaseStore()
   let { classAct } = storeToRefs(base)
 
+  let productDetail = inject('productDetail')
+  console.log(productDetail,'产品');
+
   const props = defineProps({
     flexAuto:String,
     column:String,
@@ -42,6 +46,7 @@ export default {
     return false
   })
   const classClick = (item)=> {
+    if (productDetail.value.status != '新建') return message.warning('不可编辑')
     treeData.value = item
     classAct.value = item.itemclassid
     emit('onClassChange',classAct.value)

+ 32 - 6
src/DRP/SDrpManagement/productGroup/detail/index.vue

@@ -66,9 +66,12 @@
             <div v-if="widthscheme.type == '自定义'">
              <a-input style="width:150px;" v-model:value="schemeData.width" placeholder="输入区间内宽度"></a-input><span style="color:#666">&emsp;输入范围:{{widthscheme.min}}mm - {{widthscheme.max}}mm</span>
             </div>
-            <a-select v-else v-model:value="schemeData.width" style="width: 150px" placeholder="选择宽度">
+            <div v-else>
+              <a-button  class="mr-10 mt-10" v-for="(item,index) in widthscheme.rowsdetail" :key="index" :disabled="schemeData.width != item.num && (schemeData.width != null && schemeData.width != '')" :type="schemeData.width == item.num?'primary':'default'" @click="customClick2('width',item.num)">{{item.num}}</a-button>
+            </div>
+            <!-- <a-select v-else v-model:value="schemeData.width" style="width: 150px" placeholder="选择宽度">
               <a-select-option v-for="item in widthscheme.rowsdetail" :key="item.sa_sizeschemedetailid" :value="item.num">{{item.num}}</a-select-option>
-            </a-select>
+            </a-select> -->
           </div>
         </div>
         <div class="mt-30 input-number-panel">
@@ -77,9 +80,12 @@
             <div v-if="lengthscheme.type == '自定义'">
              <a-input style="width:150px;" v-model:value="schemeData.length" placeholder="输入区间内长度"></a-input><span style="color:#666">&emsp;输入范围:{{lengthscheme.min}}mm - {{lengthscheme.max}}mm</span>
             </div>
-            <a-select v-else v-model:value="schemeData.length" style="width: 150px" placeholder="选择长度">
+            <div>
+              <a-button  class="mr-10 mt-10" v-for="(item,index) in lengthscheme.rowsdetail" :key="index" :disabled="schemeData.length != item.num && (schemeData.length != null && schemeData.length != '')" :type="schemeData.length == item.num?'primary':'default'" @click="customClick2('length',item.num)">{{item.num}}</a-button>
+            </div>
+            <!-- <a-select v-else v-model:value="schemeData.length" style="width: 150px" placeholder="选择长度">
               <a-select-option v-for="item in lengthscheme.rowsdetail" :key="item.sa_sizeschemedetailid" :value="item.num">{{item.num}}</a-select-option>
-            </a-select>
+            </a-select> -->
           </div>
         </div>
         <a-divider/>
@@ -142,7 +148,7 @@
   const imgIndex = ref(0)
   const custom = ref([])
   const qty = ref(0)
-  const groupDetail = async ()=>{
+  const groupDetail = async (init)=>{
     data.value.sa_itemgroupid = router.currentRoute.value.query.id
     const res = await Api.requested({
       "id": "20221223165503",
@@ -150,7 +156,13 @@
     })
     group.value = res.data
     group.value.specRows = group.value.specRows.reverse()
+    console.log(group.value);
     qty.value = res.data.item[0].orderminqty
+    if (!init) return
+    if (group.value.materialRows.length == 1) data.value.material = group.value.materialRows[0].parm
+    if (group.value.colorRows.length == 1) data.value.color = group.value.colorRows[0].parm
+    if (group.value.cheekRows.length == 1) data.value.cheek = group.value.cheekRows[0].parm
+    if (group.value.specRows.length == 1) data.value.spec = group.value.specRows[0].parm
 
     // 获取可定制项
     let arr = ['cheekRows','colorRows','materialRows','specRows']
@@ -170,6 +182,13 @@
     }
     groupDetail()
   }
+  const customClick2 = (key,value)=>{
+    if (schemeData.value[key] == value) {
+      schemeData.value[key] = ''
+    } else {
+      schemeData.value[key] = value
+    }
+  }
   const schemeData = ref({
     length:null,
     width:null
@@ -266,6 +285,13 @@
       } else {
         lengthscheme.value = await schemeRequest(lengthschemeid)
         widthscheme.value = await schemeRequest(widthschemeid)
+        console.log(widthscheme.value.rowsdetail);
+        if (widthscheme.value.rowsdetail.length == 1 && widthscheme.type != '自定义') {
+          schemeData.value.width = widthscheme.value.rowsdetail[0].num
+        }
+        if (lengthscheme.value.rowsdetail.length == 1 && lengthscheme.type != '自定义') {
+          schemeData.value.length = lengthscheme.value.rowsdetail[0].num
+        }
       }
   }
   const validCustomSize = ()=>{
@@ -286,7 +312,7 @@
     
   }
   onMounted(()=>{
-    groupDetail()
+    groupDetail(true)
   })
 </script>
 <style scoped>

+ 5 - 5
src/customized/delaibao/productManage/modules/edit.vue

@@ -170,35 +170,35 @@
         </a-col>
         <a-col :span="6" v-if="form.iscustomsize == 1">
           <a-form-item label="长" name="lengthschemeid" :rules="[{ required: true, message: '请选择长度定制方案' }]">
-            <a-select v-model:value="form.lengthschemeid" placeholder="选择长度定制方案">
+            <a-select :disabled="form.spec != '自定义'" v-model:value="form.lengthschemeid" placeholder="选择长度定制方案">
               <a-select-option :value="item.sa_sizecustomizedschemeid" v-for="item in schemeWhOptions" :key="item.sa_sizecustomizedschemeid">{{item.schemename}}</a-select-option>
             </a-select>
           </a-form-item>
         </a-col>
         <a-col :span="6" v-if="form.iscustomsize == 1">
           <a-form-item label="宽" name="widthschemeid" :rules="[{ required: true, message: '请选选择宽度定制方案' }]">
-            <a-select v-model:value="form.widthschemeid" placeholder="选择宽度定制方案">
+            <a-select :disabled="form.spec != '自定义'" v-model:value="form.widthschemeid" placeholder="选择宽度定制方案">
               <a-select-option :value="item.sa_sizecustomizedschemeid" v-for="item in schemeWhOptions" :key="item.sa_sizecustomizedschemeid">{{item.schemename}}</a-select-option>
             </a-select>
           </a-form-item>
         </a-col>
         <a-col :span="6" v-if="form.iscustomsize == 1">
           <a-form-item label="选项" name="materialschemeid" :rules="[{ required: true, message: '请选选择选项定制方案' }]">
-            <a-select v-model:value="form.materialschemeid" placeholder="选择选项定制方案">
+            <a-select :disabled="form.material != '自定义'" v-model:value="form.materialschemeid" placeholder="选择选项定制方案">
               <a-select-option :value="item.sa_sizecustomizedschemeid" v-for="item in schemeWhOptions" :key="item.sa_sizecustomizedschemeid">{{item.schemename}}</a-select-option>
             </a-select>
           </a-form-item>
         </a-col>
         <a-col :span="6" v-if="form.iscustomsize == 1">
           <a-form-item label="颜色" name="colorschemeid" :rules="[{ required: true, message: '请选选择颜色定制方案' }]">
-            <a-select v-model:value="form.colorschemeid" placeholder="选择颜色定制方案">
+            <a-select :disabled="form.color != '自定义'" v-model:value="form.colorschemeid" placeholder="选择颜色定制方案">
               <a-select-option :value="item.sa_sizecustomizedschemeid" v-for="item in schemeWhOptions" :key="item.sa_sizecustomizedschemeid">{{item.schemename}}</a-select-option>
             </a-select>
           </a-form-item>
         </a-col>
         <a-col :span="6" v-if="form.iscustomsize == 1">
           <a-form-item label="工艺" name="cheekschemeid" :rules="[{ required: true, message: '请选选择工艺定制方案' }]">
-            <a-select v-model:value="form.cheekschemeid" placeholder="选择工艺定制方案">
+            <a-select :disabled="form.cheek != '自定义'" v-model:value="form.cheekschemeid" placeholder="选择工艺定制方案">
               <a-select-option :value="item.sa_sizecustomizedschemeid" v-for="item in schemeWhOptions" :key="item.sa_sizecustomizedschemeid">{{item.schemename}}</a-select-option>
             </a-select>
           </a-form-item>

+ 1 - 0
vite.config.js

@@ -34,6 +34,7 @@ export default defineConfig({
         rewrite: (path) => path.replace(/^\/api/, ""),
       },
     },
+    host:'0.0.0.0'
   },
   build: {
     rollupOptions: {