From 1b86547ddc47a96e86eb376d0a381814ad621fd0 Mon Sep 17 00:00:00 2001 From: guoyuji <guoyujie@ng.com> Date: 星期四, 22 二月 2024 08:13:31 +0800 Subject: [PATCH] 提交产品界面 --- north-glass-erp/src/main/java/com/example/erp/controller/sd/BasicDataController.java | 9 +- north-glass-erp/src/main/java/com/example/erp/service/sd/BasicDateService.java | 57 ++++++++++--- north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue | 118 +++++++++++++++++++++++++--- 3 files changed, 151 insertions(+), 33 deletions(-) diff --git a/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue b/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue index 8d8982b..864fae8 100644 --- a/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue +++ b/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue @@ -1,4 +1,8 @@ <script setup> +import request from "@/utils/request" +import deepClone from "@/utils/deepClone"; +import {ElMessage} from "element-plus"; +import {ref} from "vue"; const disposeList = $ref([ '褰╅噳', '钂欑爞', @@ -23,7 +27,41 @@ '涓┖', '鍖呰' ]) +let BasicData = ref({ + stuffColor:null, + stuffCraft:null, + stuffLowE:null, + stuffPosition:null, + stuffThickness:null, + InterlayerType:null, + InterlayerThickness:null, + InterlayerColor:null +}) +let stuff = ref({ + thickness:'', + color:'', + craft:'', + position:'', + lowE:'' +}) +let processChecked = ref([]) + +request.get(`/basicData/BasicDataByType/product`).then((res) => { + if(res.code==200){ + console.log(res.data) + BasicData.value = res.data + }else{ + ElMessage.warning(res.msg) + } +}) + +const reset = () => { + processChecked.value=[] + Object.keys(stuff.value).forEach((item,index)=>{ + stuff.value[item]='' + }) +} </script> <template> @@ -39,27 +77,57 @@ <!-- <el-col :span="6"></el-col>--> <el-col :span="4"> <div class="grid-content ep-bg-purple" > - <el-select size="small" clearable placeholder="*鍘氬害:" /> + <el-select v-model="stuff.thickness" size="small" clearable placeholder="*鍘氬害:" > + <el-option v-for="item in BasicData.stuffThickness" + :key="item.id" + :label="item.basicName" + :value="item.basicName" + /> + </el-select> + </div> + </el-col> + <el-col :span="5"> + <div class="grid-content ep-bg-purple" > + <el-select v-model="stuff.color" size="small" clearable placeholder="*棰滆壊:" filterable> + <el-option v-for="item in BasicData.stuffColor" + :key="item.id" + :label="item.basicName" + :value="item.basicName" + /> + </el-select> </div> </el-col> <el-col :span="4"> <div class="grid-content ep-bg-purple" > - <el-select size="small" clearable placeholder="*棰滆壊:" /> - </div> - </el-col> - <el-col :span="6"> - <div class="grid-content ep-bg-purple" > - <el-select size="small" clearable placeholder="*宸ヨ壓灞炴��:" /> + <el-select v-model="stuff.craft" size="small" clearable placeholder="*宸ヨ壓灞炴��:" > + <el-option v-for="item in BasicData.stuffCraft" + :key="item.id" + :label="item.basicName" + :value="item.basicName" + /> + </el-select> </div> </el-col> <el-col :span="4"> <div class="grid-content ep-bg-purple" > - <el-select size="small" clearable placeholder="浣嶇疆:" /> + <el-select v-model="stuff.position" size="small" clearable placeholder="浣嶇疆:" > + <el-option v-for="item in BasicData.stuffPosition" + :key="item.id" + :label="item.basicName" + :value="item.basicName" + /> + </el-select> </div> </el-col> <el-col :span="6"> <div class="grid-content ep-bg-purple" > - <el-select size="small" clearable placeholder="LOW-E闈�:" /> + <el-select v-model="stuff.lowE" size="small" clearable placeholder="LOW-E闈�:" > + <el-option v-for="item in BasicData.stuffLowE" + :key="item.id" + :label="item.basicName" + :value="item.basicName" + /> + </el-select> </div> </el-col> </el-row> @@ -90,8 +158,9 @@ </div> <div class="line"/> <div class="glass-process"> - <h5>鏉愭枡灞炴��</h5> + <h5>宸ヨ壓灞炴��</h5> <el-checkbox + v-model="processChecked" v-for="item in processList" :label="item" class="glass-process-checkbox" @@ -126,15 +195,33 @@ <el-select size="small" style="width: 100px" - clearable placeholder="*澶瑰眰鍘氬害:" /> + clearable placeholder="*澶瑰眰鍘氬害:" > + <el-option v-for="item in BasicData.InterlayerThickness" + :key="item.id" + :label="item.basicName" + :value="item.basicName" + /> + </el-select> <el-select size="small" style="width: 100px" - clearable placeholder="*绫诲瀷:" /> + clearable placeholder="*绫诲瀷:" > + <el-option v-for="item in BasicData.InterlayerType" + :key="item.id" + :label="item.basicName" + :value="item.basicName" + /> + </el-select> <el-select size="small" style="width: 100px" - clearable placeholder="*棰滆壊:" /> + clearable placeholder="*棰滆壊:" > + <el-option v-for="item in BasicData.InterlayerColor" + :key="item.id" + :label="item.basicName" + :value="item.basicName" + /> + </el-select> <el-button size="small" type="primary" @@ -153,12 +240,13 @@ </el-col> <el-col :span="13"> <div class="grid-content ep-bg-purple" > - <el-input size="small" disabled /> + <el-input :value="stuff.thickness+stuff.color+stuff.craft+stuff.position+stuff.lowE" size="small" disabled /> </div> </el-col> <el-col :span="3"> <div class="grid-content ep-bg-purple" > <el-button + @click="reset" size="small" type="primary" round>閲嶇疆</el-button> @@ -175,7 +263,7 @@ </el-col> <el-col :span="13"> <div class="grid-content ep-bg-purple" > - <el-input size="small" disabled /> + <el-input :value="processChecked.join('->')" size="small" disabled /> </div> </el-col> <el-col :span="3"> diff --git a/north-glass-erp/src/main/java/com/example/erp/controller/sd/BasicDataController.java b/north-glass-erp/src/main/java/com/example/erp/controller/sd/BasicDataController.java index aabb990..dbc54a8 100644 --- a/north-glass-erp/src/main/java/com/example/erp/controller/sd/BasicDataController.java +++ b/north-glass-erp/src/main/java/com/example/erp/controller/sd/BasicDataController.java @@ -3,10 +3,7 @@ import com.example.erp.common.Result; import com.example.erp.service.sd.BasicDateService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.Map; @@ -19,4 +16,8 @@ public Result getOrderBasicData(){ return Result.seccess(basicDateService.getOrderBasicData()); } + @GetMapping("/BasicDataByType/{type}") + public Result getBasicDataByType(@PathVariable String type){ + return Result.seccess(basicDateService.getBasicDataByType(type)); + } } diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/BasicDateService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/BasicDateService.java index f388f6e..7fab758 100644 --- a/north-glass-erp/src/main/java/com/example/erp/service/sd/BasicDateService.java +++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/BasicDateService.java @@ -22,24 +22,11 @@ //鑾峰彇璁㈠崟鍩烘湰鏁版嵁 public Map<String, List<Object>> getOrderBasicData() { //鑾峰彇璁㈠崟鍩烘湰鏁版嵁绫诲瀷 - List<String> orderBasicDataType = basicDateMapper.getOrderBasicDataType("order"); - //鑾峰彇璁㈠崟鍩烘湰鏁版嵁 - List<BasicData> orderBasicData = basicDateMapper.getOrderBasicData("order"); //鍒涘缓Map瀵硅薄 Map<String, List<Object>> orderBasicDataMap = new HashMap<>(); ; //鍒涘缓List瀵硅薄 + orderBasicDataMap = getBasicDataByType("order"); - //閬嶅巻璁㈠崟鍩烘湰鏁版嵁绫诲瀷 - for(String item :orderBasicDataType){ - List<Object> orderBasicDataList = new ArrayList<>(); - //灏嗙被鍨嬪拰List瀵硅薄鏀惧叆Map涓� - orderBasicDataMap.put(item,orderBasicDataList); - } - //閬嶅巻璁㈠崟鍩烘湰鏁版嵁 - for (BasicData item : orderBasicData){ - //灏嗘暟鎹斁鍏ist涓� - orderBasicDataMap.get(item.getBasicCategory()).add(item); - } //鑾峰彇瀹㈡埛鍒楄〃 List<Object> orderBasicDataList = new ArrayList<>(); @@ -53,4 +40,46 @@ //杩斿洖Map瀵硅薄 return orderBasicDataMap; } + +// public Map<String, List<Object>> getBasicDataByType(String type) { +// List<String> orderBasicDataType = basicDateMapper.getOrderBasicDataType(type); +// //鑾峰彇璁㈠崟鍩烘湰鏁版嵁 +// List<BasicData> orderBasicData = basicDateMapper.getOrderBasicData(type); +// //鍒涘缓Map瀵硅薄 +// Map<String, List<Object>> orderBasicDataMap = new HashMap<>(); ; +// //鍒涘缓List瀵硅薄 +// +// //閬嶅巻璁㈠崟鍩烘湰鏁版嵁绫诲瀷 +// for(String item :orderBasicDataType){ +// List<Object> orderBasicDataList = new ArrayList<>(); +// //灏嗙被鍨嬪拰List瀵硅薄鏀惧叆Map涓� +// orderBasicDataMap.put(item,orderBasicDataList); +// } +// //閬嶅巻璁㈠崟鍩烘湰鏁版嵁 +// for (BasicData item : orderBasicData){ +// //灏嗘暟鎹斁鍏ist涓� +// orderBasicDataMap.get(item.getBasicCategory()).add(item); +// } +// return orderBasicDataMap; +// } + + public Map<String, List<Object>> getBasicDataByType(String type){ + List<String> orderBasicDataType = basicDateMapper.getOrderBasicDataType(type); + List<BasicData> orderBasicData = basicDateMapper.getOrderBasicData(type); + Map<String, List<Object>> BasicDataMap = new HashMap<>(); ; + //鍒涘缓List瀵硅薄 + + //閬嶅巻璁㈠崟鍩烘湰鏁版嵁绫诲瀷 + for(String item :orderBasicDataType){ + List<Object> orderBasicDataList = new ArrayList<>(); + //灏嗙被鍨嬪拰List瀵硅薄鏀惧叆Map涓� + BasicDataMap.put(item,orderBasicDataList); + } + //閬嶅巻璁㈠崟鍩烘湰鏁版嵁 + for (BasicData item : orderBasicData){ + //灏嗘暟鎹斁鍏ist涓� + BasicDataMap.get(item.getBasicCategory()).add(item); + } + return BasicDataMap; + } } -- Gitblit v1.8.0