From c8645d83855d8cfa1a9fa8578bcbe079a7d47dd8 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期二, 20 八月 2024 14:04:49 +0800
Subject: [PATCH] 下片界面添加打印标签,对下片清除绑架功能部分字段未重置进行完善
---
UI-Project/src/views/UnLoadGlass/PrintCustomLabelSemi1.vue | 216 ++++++++++++++++++++++++
UI-Project/src/views/UnLoadGlass/loadmachinerack.vue | 63 ++++++
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/mapper/DownGlassInfoMapper.java | 10 +
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml | 95 ++++++++++
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java | 4
hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/FlowCardService.java | 2
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassInfoService.java | 19 ++
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/controller/DownGlassInfoController.java | 5
hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/mapper/FlowCardMapper.java | 2
hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/impl/FlowCardServiceImpl.java | 5
hangzhoumesParent/common/servicebase/src/main/resources/mapper/FlowCardMapper.xml | 32 +++
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java | 65 +++++++
12 files changed, 511 insertions(+), 7 deletions(-)
diff --git a/UI-Project/src/views/UnLoadGlass/PrintCustomLabelSemi1.vue b/UI-Project/src/views/UnLoadGlass/PrintCustomLabelSemi1.vue
new file mode 100644
index 0000000..49419f2
--- /dev/null
+++ b/UI-Project/src/views/UnLoadGlass/PrintCustomLabelSemi1.vue
@@ -0,0 +1,216 @@
+<script setup>
+import request from "@/utils/request"
+import {ElDatePicker, ElMessage} from "element-plus"
+import {nextTick, onMounted, onUnmounted, reactive, ref, watch} from "vue"
+import {Search} from "@element-plus/icons-vue"
+// import {useRouter} from 'vue-router'
+// import {changeFilterEvent, filterChanged} from "@/hook"
+// import {useI18n} from 'vue-i18n'
+// import deepClone from "@/utils/deepClone";
+import companyInfo from "@/lang/companyInfo"
+
+const company = companyInfo()
+//璇█鑾峰彇
+const {t} = useI18n()
+// let router = useRouter()
+let produceList = ref([])
+let labelList = ref([])
+let titleList = ref([])
+let dataList = ref([])
+let list = ref([])
+let lastList=ref([])
+
+let filterData = ref({})
+
+const data = ref({
+ printList: []
+})
+
+
+// const {currentRoute} = useRouter()
+// const route = currentRoute.value
+// data.value.printList = JSON.parse(route.query.printList)
+// const type = route.query.type
+// const faceOrientation = route.query.faceOrientation
+// const lableType = route.query.lableType
+let props = defineProps({
+ printFlowCardId: null,
+ printLayer: null,
+})
+
+onMounted(async () => {
+ console.log(props.printFlowCardId,props.printLayer)
+ const response = await request.post('/unLoadGlass/downGlassInfo/downGlassLabelPrint',{
+ flowCardId:props.printFlowCardId,
+ layer:props.printLayer
+ });
+ if (response.code == 200) {
+ console.log("lastList.value",response.data)
+ lastList.value=response.data;
+
+ } else {
+ ElMessage.error(response.message);
+ }
+
+ }
+
+)
+
+
+// // 鎵撳嵃鏂规硶
+// const printFlowCard = () => {
+// // 闇�瑕佹墦鍗扮殑灞�閮ㄥ尯鍩熻祴浜�"print-wrap"鐨刬d
+// let el = document.getElementById("printFlowCard");
+// let doc = document;
+// let body = doc.body || doc.getElementsByTagName("body")[0];
+// let printId = "print-" + Date.now();
+
+// // 鍒涘缓鏃犲壇浣滅敤鐨勬墦鍗板鍣�(鍥犱笉纭畾椤甸潰鐨勬墦鍗板厓绱犳湁鏃犲叾瀹冩牱寮�)
+// let content = doc.createElement("div");
+// content.id = printId;
+
+// // 鏍峰紡鎺у埗涓庢墦鍗版棤鍏崇殑鍏冪礌闅愯棌
+// let style = doc.createElement("style");
+// style.innerHTML =
+// "body>#" +
+// printId +
+// "{display:none}@media print{" +
+// "@page {" +
+// " size: auto; " +
+// " margin: 2mm 2mm 2mm 2mm; " +
+// " }body>:not(#" +
+// printId +
+// "){display:none !important}body>#" +
+// printId +
+// "{display:block;padding-top:1px}}";
+// //
+// content.innerHTML = el.outerHTML;
+// // // console.log("el.outerHTML", el.outerHTML);
+// body.appendChild(style);
+
+// // 涓巗tyle鍏冪礌璁剧疆鐨勬牱寮忕浉閰嶅悎
+// // 鎶婃墦鍗板唴瀹圭殑鍏冪礌娣诲姞鍒癰ody(浣滀负body鐨勫瓙鍏冪礌锛屽彲鐢╞ody鐨勫瓙閫夋嫨鍣� '>' 鎺у埗鎵撳嵃鏍峰紡)
+// body.appendChild(content);
+// setTimeout(() => {
+// window.print();
+// body.removeChild(content);
+// body.removeChild(style);
+// }, 20);
+// }
+</script>
+
+<template>
+ <!-- <el-button id="printButton" @click="printFlowCard();">鎵撳嵃</el-button> -->
+ <div id="printFlowCard" >
+ <template v-for="(item,id) in lastList">
+ <div id="entirety" >
+ <div style="position: absolute;font-weight: bold;margin-left: 5px;" v-if="item.tempering_layout_id!=null">{{ item.tempering_layout_id }}/{{ item.tempering_feed_sequence }}</div>
+ <div class="row1">
+ <span>{{ item.customer_name }}</span>
+ <span>{{ item.order_id }}</span>
+ </div>
+ <div class="row2">
+ <span>{{ item.project }}</span>
+ <span>{{ item.building_number }}</span>
+ </div>
+ <div class="row3" v-if="item.other_columns!=null&&(JSON.parse(item.other_columns).S02!=null)">{{JSON.parse(item.other_columns).S02}}={{item.quantity}}</div>
+ <div class="row3" v-else>{{Math.round(item.width)}}x{{Math.round(item.height)}}={{item.quantity}}</div>
+ <div class="row5">
+ <span>{{item.glass_child }}</span>
+ <span>{{ item.processing_note }}</span>
+ </div>
+ </div>
+ <div style="width: 20px" v-if="id%2===0"></div>
+ </template>
+ </div>
+
+</template>
+
+<style scoped>
+* {
+ margin: 0;
+ padding: 0;
+}
+
+#printButton {
+ /*margin-top: -20px;*/
+ width: 100px;
+}
+
+#printFlowCard {
+ display: flex;
+ justify-content: left;
+ flex-wrap: wrap;
+ width: 500px;
+}
+
+#entirety{
+ text-align: center;
+ width: 48%;
+ height: 160px;
+ border: black 1px;
+ word-wrap: break-word;
+}
+
+.row1 {
+ font-size: 12pt;
+ font-weight: bold;
+ height: 35px;
+}
+.row1 span {
+ font-size: 12pt;
+}
+
+.row2 {
+ font-size: 14pt;
+ font-weight: bold;
+ height: 35px;
+}
+.row2 span {
+ font-size: 12pt;
+}
+span {
+ font-size: 12pt;
+ font-weight: bold;
+}
+
+.row3 {
+ margin-top: -5px;
+ height: 35px;
+ font-size: 22pt;
+ font-weight: bolder;
+ line-height: 35px;
+}
+
+.row5 {
+ height: 50px;
+ font-weight: bold;
+ font-size: 12pt;
+ margin-left: 20px;
+}
+.row5 span {
+ font-size: 12pt;
+}
+
+.row6 {
+ height: 15px;
+ font-weight: bold;
+ font-size: 8pt;
+}
+
+
+
+
+
+@media print {
+ div {
+ page-break-inside: avoid;
+ }
+ @page {
+ size: auto; /* auto is the initial value */
+ margin: 2mm 2mm 2mm 2mm; /* this affects the margin in the printer settings */
+
+ }
+}
+
+</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue b/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
index 0327ee2..ec9f524 100644
--- a/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
+++ b/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
@@ -9,6 +9,7 @@
import PrintFlow from "@/views/UnLoadGlass/PrintFlow.vue";
import Landingindication from "./Landingindication.vue";
import Landingindicationtwo from "./Landingindicationtwo.vue";
+import PrintLabel from "@/views/UnLoadGlass/PrintCustomLabelSemi1.vue";
const router = useRouter()
const {t} = useI18n()
@@ -36,6 +37,7 @@
const selectValuesa = reactive({});
const selectOptionsa = ref([]);
const dialogTableVisible = ref(false)
+const dialogTableVisible1 = ref(false)
const printFlowCardId = ref('')
const printLayer = ref('')
const now = new Date();
@@ -295,8 +297,16 @@
printFlowCard(); // 鏇挎崲鎴愪綘瑕佹墽琛岀殑鍑芥暟鍚�
//dialogTableVisible.value = false;
}, 1000);
-
+}
+const open1 = async (row) => {
+printFlowCardId.value = row.flowCardId;
+printLayer.value = row.layer
+dialogTableVisible1.value = true;
+// setTimeout(() => {
+// printFlowCard1(); // 鏇挎崲鎴愪綘瑕佹墽琛岀殑鍑芥暟鍚�
+// //dialogTableVisible1.value = false;
+// }, 1000);
}
const printFlowCard = () => {
@@ -342,6 +352,46 @@
}, 20);
}
+const printFlowCard1 = () => {
+ // 闇�瑕佹墦鍗扮殑灞�閮ㄥ尯鍩熻祴浜�"print-wrap"鐨刬d
+ let el = document.getElementById("printFlowCard");
+ let doc = document;
+ let body = doc.body || doc.getElementsByTagName("body")[0];
+ let printId = "print-" + Date.now();
+
+ // 鍒涘缓鏃犲壇浣滅敤鐨勬墦鍗板鍣�(鍥犱笉纭畾椤甸潰鐨勬墦鍗板厓绱犳湁鏃犲叾瀹冩牱寮�)
+ let content = doc.createElement("div");
+ content.id = printId;
+
+ // 鏍峰紡鎺у埗涓庢墦鍗版棤鍏崇殑鍏冪礌闅愯棌
+ let style = doc.createElement("style");
+ style.innerHTML =
+ "body>#" +
+ printId +
+ "{display:none}@media print{" +
+ "@page {" +
+ " size: auto; " +
+ " margin: 2mm 2mm 2mm 2mm; " +
+ " }body>:not(#" +
+ printId +
+ "){display:none !important}body>#" +
+ printId +
+ "{display:block;padding-top:1px}}";
+ //
+ content.innerHTML = el.outerHTML;
+ // // console.log("el.outerHTML", el.outerHTML);
+ body.appendChild(style);
+
+ // 涓巗tyle鍏冪礌璁剧疆鐨勬牱寮忕浉閰嶅悎
+ // 鎶婃墦鍗板唴瀹圭殑鍏冪礌娣诲姞鍒癰ody(浣滀负body鐨勫瓙鍏冪礌锛屽彲鐢╞ody鐨勫瓙閫夋嫨鍣� '>' 鎺у埗鎵撳嵃鏍峰紡)
+ body.appendChild(content);
+ setTimeout(() => {
+ window.print();
+ body.removeChild(content);
+ body.removeChild(style);
+ }, 20);
+}
+
@@ -360,7 +410,7 @@
<el-card style="flex: 1;" v-loading="loading">
<el-card style="flex: 1;margin-left: 4px;margin-top: 1px;" v-loading="loading">
<div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;">
- <el-table height="200px" ref="table" @selection-change="handleSelectionChange" :data="tableData"
+ <el-table height="350px" ref="table" @selection-change="handleSelectionChange" :data="tableData"
:header-cell-style="{ background: '#F2F3F5 ', color: '#1D2129' }">
<el-table-column prop="workstationId" align="center" :label="$t('reportWork.lowerbit')" min-width="80"/>
<el-table-column prop="workstationId" align="center" :label="$t('reportWork.shelfnumber')"
@@ -380,14 +430,15 @@
</el-tag>
</template>
</el-table-column>
- <el-table-column fixed="right" :label="$t('reportWork.operate')" align="center" width="200">
+ <el-table-column fixed="right" :label="$t('reportWork.operate')" align="center" width="400">
<template #default="scope">
<el-button size="mini" type="text" plain v-show="scope.row.enableState !== '宸插惎鐢�'"
@click="handleBindRack(scope.row)">{{ $t('reportWork.bindingshelves') }}
</el-button>
<el-button size="mini" type="text" plain @click="handleBindRack2(scope.row)">{{ $t('reportWork.clear')
}}</el-button>
- <el-button @click="open(scope.row)" :disabled="scope.row.flowCardId == null">鎵撳嵃</el-button>
+ <el-button @click="open(scope.row)" :disabled="scope.row.flowCardId == null">鎵撳嵃娴佺▼鍗�</el-button>
+ <el-button @click="open1(scope.row)" :disabled="scope.row.flowCardId == null">鎵撳嵃鏍囩</el-button>
</template>
</el-table-column>
@@ -497,6 +548,10 @@
<print-flow id="child" :printFlowCardId="printFlowCardId" :printLayer="printLayer"
style="width: 100%;height: 100%"/>
</el-dialog>
+ <el-dialog id="sizePrintCalrd1" v-model="dialogTableVisible1" destroy-on-close >
+ <print-label id="printFlowCard" :printFlowCardId="printFlowCardId" :printLayer="printLayer"
+ style=""/>
+ </el-dialog>
</template>
<style scoped>
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/mapper/FlowCardMapper.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/mapper/FlowCardMapper.java
index bd8d21d..865ca5c 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/mapper/FlowCardMapper.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/mapper/FlowCardMapper.java
@@ -22,4 +22,6 @@
List<Map<String, Object>> selectProject(@Param("processId") String processId,@Param("technologyNumber") Integer technologyNumber);
List<Map<String, Object>> selectFlowCard(@Param("processId") String processId,@Param("technologyNumber") Integer technologyNumber);
+
+ List<Map<String, Object>> selectLabel(@Param("processId") String processId,@Param("technologyNumber") Integer technologyNumber);
}
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/FlowCardService.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/FlowCardService.java
index d03a88c..7120afb 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/FlowCardService.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/FlowCardService.java
@@ -19,4 +19,6 @@
List<Map<String, Object>> selectProject(String processId, Integer technologyNumber);
List<Map<String, Object>> selectFlowCard(String processId, Integer technologyNumber);
+
+ List<Map<String, Object>> selectLabel(String processId, Integer technologyNumber);
}
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/impl/FlowCardServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/impl/FlowCardServiceImpl.java
index c7aa409..3fed7cc 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/impl/FlowCardServiceImpl.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/service/impl/FlowCardServiceImpl.java
@@ -29,4 +29,9 @@
public List<Map<String, Object>> selectFlowCard(String processId, Integer technologyNumber){
return baseMapper.selectFlowCard(processId, technologyNumber);
}
+
+ @Override
+ public List<Map<String, Object>> selectLabel(String processId, Integer technologyNumber){
+ return baseMapper.selectLabel(processId, technologyNumber);
+ }
}
diff --git a/hangzhoumesParent/common/servicebase/src/main/resources/mapper/FlowCardMapper.xml b/hangzhoumesParent/common/servicebase/src/main/resources/mapper/FlowCardMapper.xml
index e24679f..1af4682 100644
--- a/hangzhoumesParent/common/servicebase/src/main/resources/mapper/FlowCardMapper.xml
+++ b/hangzhoumesParent/common/servicebase/src/main/resources/mapper/FlowCardMapper.xml
@@ -68,6 +68,38 @@
group by fc.process_id
</select>
+ <select id="selectLabel" resultType="java.util.Map">
+ select fc.process_id,
+ o.order_id,
+ o.project,
+ o.customer_id,
+ ogd.child_width as width,
+ ogd.child_height as height,
+ od.quantity,
+ od.order_number as orderNumber,
+ fc.technology_number as technologyNumber,
+ ogd.glass_child,
+ ogd.process,
+ c.customer_abbreviation as customer_name,
+ ifnull(od.processing_note, '') as processing_note,
+ bgt.type_name,
+ od.other_columns,
+ od.building_number,
+ od.bend_radius
+ from sd.order as o
+ left join sd.order_detail as od on o.order_id = od.order_id
+ left join sd.order_glass_detail as ogd
+ on ogd.order_id = od.order_id and ogd.order_number = od.order_number
+ left join pp.flow_card as fc on o.order_id = fc.order_id and
+ od.order_number = fc.order_number and
+ fc.technology_number = ogd.technology_number
+ left join sd.product pt on pt.id = od.product_id
+ left join sd.customer c on c.id = o.customer_id
+ left join sd.basic_glass_type bgt on bgt.type_id = pt.type_id
+ where fc.process_id = #{processId}
+ and fc.technology_number = #{technologyNumber}
+ group by od.order_number, od.width, od.height
+ </select>
</mapper>
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/controller/DownGlassInfoController.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/controller/DownGlassInfoController.java
index d3a8e05..fcf4eb3 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/controller/DownGlassInfoController.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/controller/DownGlassInfoController.java
@@ -37,4 +37,9 @@
return Result.build(200, "鏌ヨ鎴愬姛", downGlassInfoService.downGlassPrint(downGlassInfo));
}
+ @PostMapping("/downGlassLabelPrint")
+ public Result downGlassLabelPrint(@RequestBody DownGlassInfo downGlassInfo) {
+ return Result.build(200, "鏌ヨ鎴愬姛", downGlassInfoService.downGlassLabelPrint(downGlassInfo));
+ }
+
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/mapper/DownGlassInfoMapper.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/mapper/DownGlassInfoMapper.java
index da649b8..c0cacb7 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/mapper/DownGlassInfoMapper.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/mapper/DownGlassInfoMapper.java
@@ -7,6 +7,7 @@
import org.springframework.stereotype.Repository;
import java.util.List;
+import java.util.Map;
@Repository
public interface DownGlassInfoMapper extends BaseMapper<DownGlassInfo> {
@@ -42,4 +43,13 @@
* @return
*/
List<DownGlassInfoDTO> queryWorkStationFlowCard(@Param(value = "workList") List<Integer> workList);
+
+ /**
+ * 鑾峰彇涓嬬墖淇℃伅
+ *
+ * @param processId,technologyNumber
+ * @return
+ */
+ List<Map<String, Object>> downGlassLabelPrint(@Param("processId") String processId, @Param("technologyNumber") Integer technologyNumber);
+
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassInfoService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassInfoService.java
index 6e9c45d..e921817 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassInfoService.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/DownGlassInfoService.java
@@ -60,9 +60,26 @@
*/
String setDownGlassInfoRequest(DownGlassInfoRequest request);
+ /**
+ * 娴佺▼鍗℃墦鍗版煡璇�
+ *
+ * @param downGlassInfo
+ * @return
+ */
List<Map<String, List<Map<String, Object>>>> downGlassPrint(DownGlassInfo downGlassInfo);
+ /**
+ * 宸ヤ綅鏄惁婊℃灦鏌ヨ
+ *
+ * @return
+ */
List<DownWorkstation> queryWorkStationIsFull();
-
+ /**
+ * 鏍囩鎵撳嵃鏌ヨ
+ *
+ * @param downGlassInfo
+ * @return
+ */
+ List<Map<String, Object>> downGlassLabelPrint(DownGlassInfo downGlassInfo);
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java
index 6cd6519..7f18616 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java
@@ -158,9 +158,10 @@
queryWrapper.eq("flow_card_id", downGlassInfo.getFlowCardId())
.eq("layer", downGlassInfo.getLayer())
.select("flow_card_id", "layer", "width", "height", "filmsid", "thickness", "glass_type", "COUNT(*) AS quantity")
- .groupBy("flow_card_id", "layer", "width", "height", "filmsid", "thickness", "glass_type","id")
+ .groupBy("flow_card_id", "layer", "width", "height", "filmsid", "thickness", "glass_type", "id")
.orderByAsc("id");
List<Map<String, Object>> resultList = baseMapper.selectMaps(queryWrapper);
+
log.info("MES钀芥灦鏁版嵁:{}", resultList);
List<Map<String, Object>> projectInfo = flowCardService.selectProject(downGlassInfo.getFlowCardId(), downGlassInfo.getLayer());
@@ -220,4 +221,66 @@
listMap.add(result);
return listMap;
}
+
+
+ @Override
+ public List<Map<String, Object>> downGlassLabelPrint(DownGlassInfo downGlassInfo) {
+ //鑾峰彇涓嬬墖鐜荤拑鐨勯『搴�
+// QueryWrapper<DownGlassInfo> queryWrapper = Wrappers.query();
+// queryWrapper
+// .eq("flow_card_id", downGlassInfo.getFlowCardId())
+// .eq("layer", downGlassInfo.getLayer())
+// .select("flow_card_id", "layer", "width", "height", "filmsid", "thickness", "glass_type", "COUNT(*) AS quantity")
+// .groupBy("flow_card_id", "layer", "width", "height", "filmsid", "thickness", "glass_type", "id")
+// .orderByAsc("id");
+// List<Map<String, Object>> resultList = baseMapper.selectMaps(queryWrapper);
+ List<Map<String, Object>> resultList = baseMapper.downGlassLabelPrint(downGlassInfo.getFlowCardId(), downGlassInfo.getLayer());
+ log.info("MES钀芥灦鏁版嵁:{}", resultList);
+ //鑾峰彇ERP鏍囩鎵�闇�鐨勪俊鎭�
+ List<Map<String, Object>> labelInfo = flowCardService.selectLabel(downGlassInfo.getFlowCardId(), downGlassInfo.getLayer());
+ log.info("鏍囩鏁版嵁:{}", labelInfo);
+
+ for (Map<String, Object> row : resultList) {
+ int glass_type = (int) row.get("glass_type");
+ int layer = (int) row.get("layer");
+ for (Map<String, Object> row1 : labelInfo) {
+ int orderNumber = (int) row1.get("orderNumber");
+ int technologyNumber = (int) row1.get("technologyNumber");
+ if (orderNumber == glass_type && technologyNumber == layer) {
+
+ String order_id = (String) row1.get("order_id");
+ String project = (String) row1.get("project");
+ Long customer_id = (Long) row1.get("customer_id");
+ BigDecimal width = (BigDecimal) row1.get("width");
+ BigDecimal height = (BigDecimal) row1.get("height");
+ Long quantity = (Long) row1.get("quantity");
+ String glass_child = (String) row1.get("glass_child");
+ String process = (String) row1.get("process");
+ String customer_name = (String) row1.get("customer_name");
+ String processing_note = (String) row1.get("processing_note");
+ String other_colunmns = (String) row1.get("other_colunmns");
+ String building_number = (String) row1.get("building_number");
+ String bend_radius = (String) row1.get("bend_radius");
+
+ row.put("orderNumber", orderNumber);
+ row.put("technology_number", technologyNumber);
+ row.put("order_id", order_id);
+ row.put("project", project);
+ row.put("customer_id", customer_id);
+ row.put("width", width);
+ row.put("height", height);
+ row.put("quantity", quantity);
+ row.put("glass_child", glass_child);
+ row.put("process", process);
+ row.put("customer_name", customer_name);
+ row.put("processing_note", processing_note);
+ row.put("other_colunmns", other_colunmns);
+ row.put("building_number", building_number);
+ row.put("bend_radius", bend_radius);
+ }
+ }
+ }
+ return resultList;
+ }
+
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
index fe6f4c5..6b8f507 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downworkstation/service/impl/DownWorkstationServiceImpl.java
@@ -86,7 +86,7 @@
item.put("width", downWorkstionAndDownGlassinfo.getTotalwidth());
item.put("fillColor", "yellow");
item.put("content", downWorkstionAndDownGlassinfo.getFlowCardId());
- if (downWorkstionAndDownGlassinfo.getFlowCardId()!=""&&downWorkstionAndDownGlassinfo.getFlowCardId()!=null&&downWorkstionAndDownGlassinfo.getTotalQuantity() == downWorkstionAndDownGlassinfo.getRacksNumber() + downWorkstionAndDownGlassinfo.getRacksNumber()) {
+ if (downWorkstionAndDownGlassinfo.getFlowCardId() != "" && downWorkstionAndDownGlassinfo.getFlowCardId() != null && downWorkstionAndDownGlassinfo.getTotalQuantity() == downWorkstionAndDownGlassinfo.getRacksNumber() + downWorkstionAndDownGlassinfo.getRacksNumber()) {
item.put("fullCardColor", "red");
} else {
item.put("fullCardColor", "blue");
@@ -170,6 +170,8 @@
updateWrapper.set("flow_card_id", null)
.set("total_quantity", 0)
.set("racks_number", 0)
+ .set("other_number", 0)
+ .set("layer", null)
.eq("workstation_id", workstationId);
baseMapper.update(new DownWorkstation(), updateWrapper);
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml
index c633e7d..41072b0 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml
@@ -90,4 +90,99 @@
</foreach>
ORDER BY T.RACKS_NUMBER DESC
</select>
+
+ <select id="selectFlowCard" resultType="java.util.Map">
+ select fc.order_number,
+ concat(round(ogd.child_width), "*", round(ogd.child_height)) as child_width,
+ od.quantity,
+ round(ogd.total_area, 2) as total_area,
+ od.perimeter,
+ od.bend_radius,
+ concat(IFNULL(od.processing_note, ''), IFNULL(od.remarks, '')) as remarks,
+ od.other_columns,
+ round(ogd.child_width) as width,
+ round(ogd.child_height) as height,
+ pd.separation,
+ fc.technology_number
+ from pp.flow_card as fc
+ left join sd.order_glass_detail as ogd
+ on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and
+ fc.technology_number = ogd.technology_number
+ left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
+ left join sd.product_detail as pd
+ on pd.prod_id = od.product_id and pd.glass_sort = ogd.technology_number
+ where fc.process_id = #{processId}
+ and position(fc.technology_number in #{technologyNumber})
+ group by fc.process_id, fc.order_number, fc.technology_number
+ order by IF(sort != NULL || sort != '', sort, fc.order_number)
+
+ </select>
+
+ <select id="selectProject" resultType="java.util.Map">
+ select o.customer_name,
+ o.project,
+ (select process
+ from sd.order_glass_detail
+ where order_id = fc.order_id
+ and order_number = fc.order_number
+ and technology_number = fc.technology_number) as process,
+ od.edging_type,
+ (select glass_child
+ from sd.order_glass_detail
+ where order_id = fc.order_id
+ and order_number = fc.order_number
+ and technology_number = fc.technology_number) as glass_child,
+ od.product_name,
+ o.processing_note,
+ fc.process_id,
+ SUM(od.quantity) as quantity,
+ round(SUM(ogd.total_area), 2) as gross_area,
+ sum(od.weight) as weight,
+ 1 as technologyNumber,
+ concat(fc.process_id, '/', 1) as processIdNumber,
+ concat('瀵瑰簲鎴戝徃鍗曞彿', o.batch) AS otherRemarks
+ from pp.flow_card as fc
+ left join sd.order_glass_detail as ogd
+ on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and
+ fc.technology_number = ogd.technology_number
+ left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
+ left join sd.`order` as o on o.order_id = fc.order_id
+ left join sd.product as p on p.id = od.product_id
+ left join (select ogd.order_id,
+ ogd.order_number,
+ ogd.technology_number,
+ ogd.glass_child,
+ GROUP_CONCAT(glass_child SEPARATOR ' ') AS concatenated_glass_child
+ from sd.order_glass_detail as ogd
+ where ogd.order_id = left (#{processId}
+ , 10)
+ and position (ogd.technology_number in #{technologyNumber})
+ GROUP BY order_id, order_number) as ogdc
+ on ogdc.order_id = ogd.order_id and ogdc.order_number = ogd.order_number and
+ ogdc.technology_number = ogd.technology_number
+ where fc.process_id = #{processId}
+ and position(fc.technology_number in #{technologyNumber})
+ group by fc.process_id
+ </select>
+
+ <select id="downGlassLabelPrint" resultType="java.util.Map">
+ select a.flow_card_id,
+ a.layer,
+ a.width,
+ a.height,
+ a.filmsid,
+ a.thickness,
+ a.glass_type,
+ COUNT(*) AS quantity,
+ b.tempering_layout_id,
+ b.tempering_feed_sequence
+ from down_glass_info a
+ inner join glass_info b on a.glass_id = b.glass_id
+ where a.flow_card_id = #{processId}
+ and a.layer = #{technologyNumber}
+ group by a.flow_card_id, a.layer, a.width, a.height, a.filmsid, a.thickness, a.glass_type, a.id
+ order by a.id
+ </select>
+
+
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0