ci-plus 1.1.7 → 1.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +3 -2
- package/src/fileRelated/seeFile.vue +6 -4
- package/src/identificationCard/identificationCard.vue +23 -8
- package/src/sortableTable/headerInput.vue +14 -103
- package/src/sortableTable/sortableTable copy.vue +221 -0
- package/src/sortableTable/sortableTable.vue +106 -160
- package/src/sortableTable/utils/sortableTableColumnCell.vue +15 -12
- package/src/sortableTable/utils/sortableTableColumnCell2.vue +26 -28
- package/src/sortableTable/utils/sortableTableDragItem.vue +39 -46
- package/src/sortableTable/utils/sortableTableDragItem2.vue +109 -57
- package/src/utils/baseApi.ts +54 -29
- package/src/utils/cardPrint.ts +91 -42
|
@@ -1,86 +1,117 @@
|
|
|
1
|
-
<!--
|
|
1
|
+
<!-- 2023-12-29 新增显示/隐藏按钮 -->
|
|
2
2
|
|
|
3
3
|
<template>
|
|
4
|
-
<draggable
|
|
4
|
+
<!-- <vue-draggable
|
|
5
5
|
class="drag-container"
|
|
6
6
|
:list="modelValue"
|
|
7
7
|
chosen-class="hover"
|
|
8
8
|
handle=".mover"
|
|
9
9
|
draggable=".item"
|
|
10
10
|
itemKey="key"
|
|
11
|
+
> -->
|
|
12
|
+
<vue-draggable
|
|
13
|
+
class="drag-container"
|
|
14
|
+
v-model="modelValue"
|
|
15
|
+
chosen-class="hover"
|
|
16
|
+
handle=".mover"
|
|
17
|
+
draggable=".item"
|
|
18
|
+
itemKey="key"
|
|
11
19
|
>
|
|
12
|
-
<template
|
|
13
|
-
#item="{ element, index }: { element: SortColumn; index: number }"
|
|
14
|
-
>
|
|
20
|
+
<!-- <template #item="{ element, index }: { element: SortColumn; index: number }">
|
|
15
21
|
<div :class="{ item: true, 'item-hide': element.hide }">
|
|
16
22
|
<div class="mover">
|
|
17
23
|
<el-icon :size="16"><Rank /></el-icon>
|
|
18
24
|
</div>
|
|
19
|
-
<div
|
|
20
|
-
class="title"
|
|
21
|
-
@click="element.hide = !element.hide"
|
|
22
|
-
>
|
|
25
|
+
<div class="title" @click="handleShow(element)">
|
|
23
26
|
{{ element.col.label }}
|
|
24
27
|
</div>
|
|
25
|
-
<div
|
|
26
|
-
class="pin"
|
|
27
|
-
v-if="showPin"
|
|
28
|
-
>
|
|
28
|
+
<div class="pin" v-if="showPin">
|
|
29
29
|
<span
|
|
30
30
|
v-if="element.col.fixed === true || element.col.fixed === 'left'"
|
|
31
31
|
@click="element.col.fixed = void 0"
|
|
32
32
|
>
|
|
33
|
-
|
|
34
|
-
<svg-icon
|
|
35
|
-
name="regular-left"
|
|
36
|
-
size="20"
|
|
37
|
-
color="#2C93FF"
|
|
38
|
-
></svg-icon>
|
|
33
|
+
<svg-icon name="regular-left" size="20" color="#2C93FF"></svg-icon>
|
|
39
34
|
</span>
|
|
40
|
-
<span
|
|
41
|
-
|
|
42
|
-
@click="element.col.fixed = 'left'"
|
|
43
|
-
>
|
|
44
|
-
<!-- <el-icon color="#000000" class="no-inherit"><Star /></el-icon> -->
|
|
45
|
-
<svg-icon
|
|
46
|
-
name="regular-center"
|
|
47
|
-
size="20"
|
|
48
|
-
></svg-icon>
|
|
35
|
+
<span v-else @click="element.col.fixed = 'left'">
|
|
36
|
+
<svg-icon name="regular-center" size="20"></svg-icon>
|
|
49
37
|
</span>
|
|
50
|
-
<span
|
|
51
|
-
|
|
52
|
-
@click="element.col.fixed = void 0"
|
|
53
|
-
>
|
|
54
|
-
<!-- <el-icon color="#409EFC" class="no-inherit"> <StarFilled /> </el-icon> -->
|
|
55
|
-
<svg-icon
|
|
56
|
-
name="regular-right"
|
|
57
|
-
size="20"
|
|
58
|
-
color="#2C93FF"
|
|
59
|
-
></svg-icon>
|
|
38
|
+
<span v-if="element.col.fixed === 'right'" @click="element.col.fixed = void 0">
|
|
39
|
+
<svg-icon name="regular-right" size="20" color="#2C93FF"></svg-icon>
|
|
60
40
|
</span>
|
|
61
|
-
<span
|
|
62
|
-
|
|
63
|
-
@click="element.col.fixed = 'right'"
|
|
64
|
-
>
|
|
65
|
-
<!-- <el-icon color="#000000" class="no-inherit"><Star /></el-icon> -->
|
|
66
|
-
<svg-icon
|
|
67
|
-
name="regular-center"
|
|
68
|
-
size="20"
|
|
69
|
-
></svg-icon>
|
|
41
|
+
<span v-else @click="element.col.fixed = 'right'">
|
|
42
|
+
<svg-icon name="regular-center" size="20"></svg-icon>
|
|
70
43
|
</span>
|
|
71
44
|
</div>
|
|
72
|
-
<
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
45
|
+
<div class="ifshow">
|
|
46
|
+
<el-button
|
|
47
|
+
:type="element.hide ? 'primary' : ''"
|
|
48
|
+
@click="handleShow(element)"
|
|
49
|
+
size="small"
|
|
50
|
+
>
|
|
51
|
+
{{ element.hide ? '显示' : '隐藏' }}
|
|
52
|
+
</el-button>
|
|
53
|
+
</div>
|
|
54
|
+
<div class="widths">
|
|
55
|
+
宽度:
|
|
56
|
+
<el-input class="w-50 m-2" v-model="element.col.width" size="small" width="50"></el-input>
|
|
57
|
+
</div>
|
|
58
|
+
<sortable-table-drag-item v-if="element.children" v-model="element.children" />
|
|
59
|
+
</div>
|
|
60
|
+
</template> -->
|
|
61
|
+
<div v-for="(element, index) in modelValue" :class="{ item: true, 'item-hide': element.hide }">
|
|
62
|
+
<div class="mover">
|
|
63
|
+
<el-icon :size="16"><Rank /></el-icon>
|
|
64
|
+
</div>
|
|
65
|
+
<div class="title" @click="element.hide = !element.hide">
|
|
66
|
+
{{ element.col.label }}
|
|
67
|
+
</div>
|
|
68
|
+
<div class="pin" v-if="showPin">
|
|
69
|
+
<!-- <span v-if="element.col.fixed === true || element.col.fixed === 'left'" @click="element.col.fixed = void 0">
|
|
70
|
+
<var-icon name="pin-off" :size="16" style="transform: rotate(-30deg); color: cadetblue" />
|
|
71
|
+
</span>
|
|
72
|
+
<span v-else @click="element.col.fixed = 'left'">
|
|
73
|
+
<var-icon name="pin" :size="16" style="transform: rotate(-30deg)" />
|
|
74
|
+
</span>
|
|
75
|
+
<span v-if="element.col.fixed === 'right'" @click="element.col.fixed = void 0">
|
|
76
|
+
<var-icon name="pin-off" :size="16" style="transform: scaleX(-1) rotate(-30deg); color: cadetblue" />
|
|
77
|
+
</span>
|
|
78
|
+
<span v-else @click="element.col.fixed = 'right'">
|
|
79
|
+
<var-icon name="pin" :size="16" style="transform: rotate(30deg)" />
|
|
80
|
+
</span> -->
|
|
81
|
+
<span
|
|
82
|
+
v-if="element.col.fixed === true || element.col.fixed === 'left'"
|
|
83
|
+
@click="element.col.fixed = void 0"
|
|
84
|
+
>
|
|
85
|
+
<svg-icon name="regular-left" size="20" color="#2C93FF"></svg-icon>
|
|
86
|
+
</span>
|
|
87
|
+
<span v-else @click="element.col.fixed = 'left'">
|
|
88
|
+
<svg-icon name="regular-center" size="20"></svg-icon>
|
|
89
|
+
</span>
|
|
90
|
+
<span v-if="element.col.fixed === 'right'" @click="element.col.fixed = void 0">
|
|
91
|
+
<svg-icon name="regular-right" size="20" color="#2C93FF"></svg-icon>
|
|
92
|
+
</span>
|
|
93
|
+
<span v-else @click="element.col.fixed = 'right'">
|
|
94
|
+
<svg-icon name="regular-center" size="20"></svg-icon>
|
|
95
|
+
</span>
|
|
96
|
+
</div>
|
|
97
|
+
<div class="ifshow">
|
|
98
|
+
<el-button :type="element.hide ? 'primary' : ''" @click="handleShow(element)" size="small">
|
|
99
|
+
{{ element.hide ? '显示' : '隐藏' }}
|
|
100
|
+
</el-button>
|
|
76
101
|
</div>
|
|
77
|
-
|
|
78
|
-
|
|
102
|
+
<div class="widths">
|
|
103
|
+
宽度:
|
|
104
|
+
<el-input class="w-50 m-2" v-model="element.col.width" size="small" width="50"></el-input>
|
|
105
|
+
</div>
|
|
106
|
+
<sortable-table-drag-item v-if="element.children" v-model="element.children" />
|
|
107
|
+
</div>
|
|
108
|
+
</vue-draggable>
|
|
79
109
|
</template>
|
|
80
110
|
<script setup lang="ts">
|
|
81
|
-
import SvgIcon from '
|
|
111
|
+
import SvgIcon from '../../svgIcon/index'
|
|
82
112
|
import { computed } from 'vue'
|
|
83
|
-
import draggable from 'vuedraggable'
|
|
113
|
+
// import draggable from 'vuedraggable'
|
|
114
|
+
import { VueDraggable } from 'vue-draggable-plus'
|
|
84
115
|
import { SortColumn, SortableTableIns } from './interface'
|
|
85
116
|
import { Rank } from '@element-plus/icons-vue'
|
|
86
117
|
const props = defineProps<{
|
|
@@ -94,14 +125,20 @@ const modelValue = computed({
|
|
|
94
125
|
},
|
|
95
126
|
set(value) {
|
|
96
127
|
emits('update:modelValue', value)
|
|
97
|
-
}
|
|
128
|
+
}
|
|
98
129
|
})
|
|
130
|
+
|
|
131
|
+
// 显示或者隐藏列
|
|
132
|
+
const handleShow = (col: SortColumn) => {
|
|
133
|
+
// console.log('显示或者隐藏列', col)
|
|
134
|
+
col.hide = !col.hide
|
|
135
|
+
}
|
|
99
136
|
</script>
|
|
100
137
|
<style scoped lang="scss">
|
|
101
138
|
$hoverBC: rgba(137, 182, 233, 0.5);
|
|
102
139
|
|
|
103
140
|
.drag-container {
|
|
104
|
-
display: flex;
|
|
141
|
+
// display: flex;
|
|
105
142
|
width: 100%;
|
|
106
143
|
flex-direction: column;
|
|
107
144
|
|
|
@@ -110,6 +147,7 @@ $hoverBC: rgba(137, 182, 233, 0.5);
|
|
|
110
147
|
display: flex;
|
|
111
148
|
align-items: center;
|
|
112
149
|
white-space: nowrap;
|
|
150
|
+
width: 100%;
|
|
113
151
|
.mover,
|
|
114
152
|
.title {
|
|
115
153
|
padding: 5px;
|
|
@@ -133,6 +171,20 @@ $hoverBC: rgba(137, 182, 233, 0.5);
|
|
|
133
171
|
padding: 5px;
|
|
134
172
|
}
|
|
135
173
|
}
|
|
174
|
+
.ifshow {
|
|
175
|
+
text-align: center;
|
|
176
|
+
flex: 1;
|
|
177
|
+
line-height: 32px;
|
|
178
|
+
.el-button {
|
|
179
|
+
margin-bottom: 0;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
.widths {
|
|
183
|
+
.el-input {
|
|
184
|
+
width: 50px !important;
|
|
185
|
+
margin-right: 20px;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
136
188
|
}
|
|
137
189
|
.item-hide {
|
|
138
190
|
background: rgba(218, 218, 218, 0.5);
|
package/src/utils/baseApi.ts
CHANGED
|
@@ -5,34 +5,59 @@
|
|
|
5
5
|
* @版本 : 1.0.0
|
|
6
6
|
* @创建时间 : 创建时间 2024-01-05 13:17:56
|
|
7
7
|
*/
|
|
8
|
-
import { store } from '@ice/stark-data'
|
|
9
|
-
const apis = store.get('APIs')['1.1.1']
|
|
8
|
+
// import { store } from '@ice/stark-data'
|
|
9
|
+
// const apis = store.get('APIs')['1.1.1']
|
|
10
|
+
// export default apis
|
|
10
11
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
"produceModule": "http://10.20.72.231:8553/api/ProduceModule/produceModule/v1.1.1/",
|
|
17
|
-
"customerModule": "http://10.20.72.231:8512/api/CustomerModule/customerModule/v1.1.1/",
|
|
18
|
-
"measureModule": "http://10.20.72.231:8001/api/MeasureBasicCenter/measureBasic/v1.1.1/",
|
|
19
|
-
"technology": "http://10.20.72.231:9877/api/Technology/bomModule/v1.1.1/",
|
|
20
|
-
"storageModule": "http://10.20.72.231:9999/api/WarehouseModule/warehouseModule/v1.1.1/",
|
|
21
|
-
"deviceModule": "http://10.20.72.231:8516/api/DeviceModule/deviceModule/v1.1.1/",
|
|
22
|
-
"warehouseInspection": "http://10.20.72.231:9875/api/InspectionManagement/warehouseInspection/v1.1.1/",
|
|
23
|
-
"abnormityManagement": "http://10.20.72.231:8517/api/AbnormityManagement/abnormityManagement/v1.1.1/",
|
|
24
|
-
"userBasicCenter": "http://10.20.72.231:9002/api/UserBasicCenter/userbasic/v1.1.1/",
|
|
25
|
-
"schedulingModule": "http://10.20.72.231:9003/api/SchedulingModule/schedulingModule/v1.1.1/",
|
|
26
|
-
"fileModule": "http://10.20.72.231:9877/api/Technology/fileModule/v1.1.1/",
|
|
27
|
-
"OAMModule": "http://10.20.72.231:8510/api/OAM/sys_code_set/v1.1.1/",
|
|
28
|
-
"dailyPlan": "http://10.20.72.231:8519/api/SchedulingModule/dailyPlan/v1.1.1/",
|
|
29
|
-
"materialModule": "http://10.20.72.231:8765/api/ProductCenter/productCenter/v1.1.1/",
|
|
30
|
-
"middleWarehouse": "http://10.20.72.231:9999/api/MiddleWarehouse/middleWarehouse/v1.1.1/",
|
|
31
|
-
"unqualified": "http://10.20.72.231:9998/api/NonconformityBasic/nonconformityBasic/v1.1.1/",
|
|
32
|
-
"auditCenter": "http://10.20.72.231:9601/api/AuditCenter/basicModule/v1.1.1/",
|
|
33
|
-
"qualityManagement": "http://10.20.72.231:8369/api/QualityManagement/quality/v1.1.1/",
|
|
34
|
-
"finishedStorage": "http://10.20.72.231:8368/api/FinishedProductStorage/finishedProductStorage/v1.1.1/",
|
|
35
|
-
"login": "http://10.23.181.13:8098/mes-auth-service/mes/api/v1/auth/login/",
|
|
36
|
-
"userInfo": "http://10.23.181.13:8098/mes/mvc/"
|
|
12
|
+
import axios from 'axios'
|
|
13
|
+
axios.defaults.withCredentials = true
|
|
14
|
+
|
|
15
|
+
interface IApi {
|
|
16
|
+
[key: string]: string
|
|
37
17
|
}
|
|
38
|
-
|
|
18
|
+
const type = import.meta.env.VITE_API_PARAMS // 判断当前环境
|
|
19
|
+
const baseApi =
|
|
20
|
+
type === 'getApiDev'
|
|
21
|
+
? import.meta.env.VITE_BASE_URL
|
|
22
|
+
: import.meta.env.VITE_BASE_URL + ':' + import.meta.env.VITE_PORT_AXIOS
|
|
23
|
+
const getUrl = async (): Promise<IApi> => {
|
|
24
|
+
return new Promise((resolve, reject) => {
|
|
25
|
+
let urldev = `${baseApi}:8510/api/OAM/sys_code_set/v1.1.1/query_function_config_get/`
|
|
26
|
+
let urlPro = `${baseApi}/logapi/OAM/api/OAM/sys_code_set/v1.1.1/query_function_config_get/`
|
|
27
|
+
let apiurl = type === 'getApiDev' ? urldev : urlPro
|
|
28
|
+
try {
|
|
29
|
+
axios
|
|
30
|
+
.get(apiurl, {
|
|
31
|
+
params: { function_code: type || 'getApiPro' },
|
|
32
|
+
})
|
|
33
|
+
.then((res) => {
|
|
34
|
+
if (
|
|
35
|
+
res.data.code === 200 &&
|
|
36
|
+
res.data.data &&
|
|
37
|
+
res.data.data.all_choices &&
|
|
38
|
+
res.data.data.all_choices.length > 0
|
|
39
|
+
) {
|
|
40
|
+
// console.log('接口配置: ', res.data.data.all_choices)
|
|
41
|
+
resolve(
|
|
42
|
+
res.data.data.all_choices.reduce((acc: any, cur: any) => {
|
|
43
|
+
acc[cur.label] = baseApi + cur.value
|
|
44
|
+
return acc
|
|
45
|
+
}, {}),
|
|
46
|
+
)
|
|
47
|
+
} else {
|
|
48
|
+
console.error('没获取到接口数据: ', res.data.msg)
|
|
49
|
+
reject(res.data.msg)
|
|
50
|
+
}
|
|
51
|
+
})
|
|
52
|
+
.catch((error) => {
|
|
53
|
+
console.error(error)
|
|
54
|
+
reject(error)
|
|
55
|
+
})
|
|
56
|
+
} catch (error) {
|
|
57
|
+
console.log('error: ', error)
|
|
58
|
+
}
|
|
59
|
+
})
|
|
60
|
+
}
|
|
61
|
+
const apis = await getUrl()
|
|
62
|
+
export default apis
|
|
63
|
+
|
package/src/utils/cardPrint.ts
CHANGED
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
*/
|
|
8
8
|
// import { scan_card_code_get } from '@/api/InventoryBatch'
|
|
9
9
|
import { ElMessage } from 'element-plus'
|
|
10
|
-
import { setDate } from '
|
|
11
|
-
import apis from '
|
|
10
|
+
import { setDate } from '@/utils/Dayjs'
|
|
11
|
+
import apis from '@/utils/baseApi'
|
|
12
12
|
import axios from 'axios'
|
|
13
13
|
const { storageModule } = apis
|
|
14
14
|
let baseUrls = new URL(storageModule).origin + '/' // 图片的地址前缀
|
|
@@ -48,23 +48,27 @@ export const cardPrint = (
|
|
|
48
48
|
r2c2: item.material_code, // 物料编码
|
|
49
49
|
r2c4: baseUrls + item.qr_code_path, // 二维码地址
|
|
50
50
|
r3c2: item.material_model, // 产品型号
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
51
|
+
r4c1: '供应商', // 供应商/生产厂商
|
|
52
|
+
r4c2: item.center_data[0]?.supplier_name,
|
|
53
|
+
r5c1: '材料厂商',
|
|
54
|
+
r5c2: item.center_data[0]?.material_manufacturer,
|
|
55
55
|
r5c4: item.card_code, // 标识卡号
|
|
56
56
|
r6c2: item.process_name, // 本工序
|
|
57
57
|
r6c4: item.next_process_name, // 下工序
|
|
58
58
|
r7c2: item.current_inventory, // 本箱数量
|
|
59
|
-
r7c4:
|
|
60
|
-
r8c2:
|
|
59
|
+
r7c4: item.opt_user_name, // 操作工/自检员
|
|
60
|
+
r8c2: item.center_data[0]?.inspector, // 检验员
|
|
61
61
|
r8c4: setDate(item.product_date), // 生产日期
|
|
62
62
|
r9c2: item.value, // 规值
|
|
63
63
|
r9c4: item.material_model, // 规格
|
|
64
|
+
r10c1: '批次号',
|
|
65
|
+
r10c2: item.flow_lot_number
|
|
66
|
+
? item.flow_lot_number
|
|
67
|
+
: item.center_data[0]?.b2b_batch_number, // 流转批次号:存在就用流转批次号,不存在用批次序列号
|
|
64
68
|
r12c2: item.remark, // 备注
|
|
65
69
|
r13c1: item.flow_lot_number
|
|
66
70
|
? item.flow_lot_number
|
|
67
|
-
: item.center_data[0]
|
|
71
|
+
: item.center_data[0]?.b2b_batch_number || '', //条形码文本:流转批次号存在就用流转批次号,不存在用批次序列号
|
|
68
72
|
}
|
|
69
73
|
}
|
|
70
74
|
// 为尚工厂-(产品标识卡\尾料标识卡)
|
|
@@ -82,12 +86,12 @@ export const cardPrint = (
|
|
|
82
86
|
? item.material_type + '/' + item.material_name
|
|
83
87
|
: item.material_name,
|
|
84
88
|
r2c1: '分布场所代号',
|
|
85
|
-
r2c2: item.center_data[0]
|
|
89
|
+
r2c2: item.center_data[0]?.store_code,
|
|
86
90
|
r2c4: baseUrls + item.qr_code_path, // 二维码地址
|
|
87
91
|
r3c1: '客户名称',
|
|
88
|
-
r3c2: item.center_data[0]
|
|
92
|
+
r3c2: item.center_data[0]?.customer_name,
|
|
89
93
|
r4c1: '供应商',
|
|
90
|
-
r4c2: item.center_data[0]
|
|
94
|
+
r4c2: item.center_data[0]?.supplier_name,
|
|
91
95
|
r5c1: '产品型号',
|
|
92
96
|
r5c2: item.material_model,
|
|
93
97
|
r5c4: item.card_code, // 标识卡号
|
|
@@ -96,13 +100,13 @@ export const cardPrint = (
|
|
|
96
100
|
r6c3: '库位',
|
|
97
101
|
r6c4: item.next_process_code,
|
|
98
102
|
r7c1: '材料炉号',
|
|
99
|
-
r7c2: item.center_data[0]
|
|
103
|
+
r7c2: item.center_data[0]?.material_heat_number,
|
|
100
104
|
r7c3: '收货人员',
|
|
101
|
-
r7c4: item.center_data[0]
|
|
105
|
+
r7c4: item.center_data[0]?.consignee,
|
|
102
106
|
r8c1: '材料厂家',
|
|
103
|
-
r8c2: item.center_data[0]
|
|
107
|
+
r8c2: item.center_data[0]?.material_manufacturer, // 材料厂家
|
|
104
108
|
r8c3: '材料牌号',
|
|
105
|
-
r8c4: item.center_data[0]
|
|
109
|
+
r8c4: item.center_data[0]?.material_mark,
|
|
106
110
|
r9c1: '抽检结果', // (无)
|
|
107
111
|
r9c2: '',
|
|
108
112
|
r9c3: '单重',
|
|
@@ -114,14 +118,14 @@ export const cardPrint = (
|
|
|
114
118
|
r11c1: '总箱数',
|
|
115
119
|
r11c2: item.total_row,
|
|
116
120
|
r11c3: '本批数量',
|
|
117
|
-
r11c4: item.center_data[0]
|
|
121
|
+
r11c4: item.center_data[0]?.batch_count,
|
|
118
122
|
r12c1: '件数规格',
|
|
119
|
-
r12c2: item.center_data[0]
|
|
123
|
+
r12c2: item.center_data[0]?.case_count_str,
|
|
120
124
|
r12c3: '生产日期',
|
|
121
125
|
r12c4: setDate(item.product_date),
|
|
122
126
|
r13c1: '备注', // 备注
|
|
123
127
|
r13c2: item.remark, // 备注
|
|
124
|
-
r14c1: item.center_data[0]
|
|
128
|
+
r14c1: item.center_data[0]?.b2b_batch_number || '', //条形码文本
|
|
125
129
|
}
|
|
126
130
|
}
|
|
127
131
|
// 成品工厂-尾料标识卡(为尚无尾料标识卡,使用为尚的成品标识卡)
|
|
@@ -135,26 +139,31 @@ export const cardPrint = (
|
|
|
135
139
|
r2c2: item.material_code, // 物料编码
|
|
136
140
|
r2c4: baseUrls + item.qr_code_path, // 二维码地址
|
|
137
141
|
r3c2: item.material_model, // 产品型号
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
+
r4c1: '供应商', // 供应商/生产厂商
|
|
143
|
+
r4c2: item.center_data[0]?.supplier_name,
|
|
144
|
+
r5c1: '材料厂商',
|
|
145
|
+
r5c2: item.center_data[0]?.material_manufacturer,
|
|
142
146
|
r5c4: item.card_code, // 标识卡号
|
|
143
|
-
r6c2:
|
|
147
|
+
r6c2: item.center_data[0]?.tail_reason, // 尾料原因
|
|
144
148
|
r7c2: item.process_name, // 本工序
|
|
145
149
|
r7c4: item.next_process_code, // 下工序
|
|
146
150
|
r8c2: item.current_inventory, // 本箱数量
|
|
147
|
-
r8c4:
|
|
148
|
-
r9c2:
|
|
149
|
-
r9c4: setDate(
|
|
150
|
-
r10c2: setDate(
|
|
151
|
+
r8c4: item.opt_user_name, // 操作工/自检员
|
|
152
|
+
r9c2: item.center_data[0]?.inspector, // 检验员
|
|
153
|
+
r9c4: setDate(item.product_date), // 生产日期
|
|
154
|
+
r10c2: setDate(item.center_data[0]?.inspect_time), // 检查日期
|
|
151
155
|
r10c4: item.material_model, // 规格
|
|
152
156
|
r11c2: '', // 游隙/尺寸
|
|
153
157
|
r11c4: item.value, // 规值
|
|
154
|
-
|
|
155
|
-
|
|
158
|
+
r12c1: '批次号', // 批次号
|
|
159
|
+
r12c2: item.flow_lot_number
|
|
160
|
+
? item.flow_lot_number
|
|
161
|
+
: item.center_data[0]?.b2b_batch_number, // 流转批次号:存在就用流转批次号,不存在用批次序列号
|
|
162
|
+
r13c1: '备注',
|
|
163
|
+
r13c2: item.remark,
|
|
164
|
+
r14c1: item.flow_lot_number
|
|
156
165
|
? item.flow_lot_number
|
|
157
|
-
: item.center_data[0]
|
|
166
|
+
: item.center_data[0]?.b2b_batch_number || '', //条形码文本:流转批次号存在就用流转批次号,不存在用批次序列号
|
|
158
167
|
}
|
|
159
168
|
}
|
|
160
169
|
// 成品工厂-责废标识卡
|
|
@@ -191,7 +200,7 @@ export const cardPrint = (
|
|
|
191
200
|
r2c2: item.material_code, // 物料编码
|
|
192
201
|
r2c4: baseUrls + item.qr_code_path, // 二维码地址
|
|
193
202
|
r3c2: item.material_model, // 产品型号
|
|
194
|
-
r4c2: item.center_data[0]
|
|
203
|
+
r4c2: item.center_data[0]?.flow_lot_number, // 流转批次号
|
|
195
204
|
r5c2: item.storage_scrap_count, // 责废总数
|
|
196
205
|
r5c4: item.card_code, // 标识卡号
|
|
197
206
|
r6c2: item.process_name, // 工序
|
|
@@ -214,7 +223,7 @@ export const cardPrint = (
|
|
|
214
223
|
r12c1: '其他', // 渲染数组第5及以后行的'建'
|
|
215
224
|
r12c2: badStr, // 渲染数组第5及以后行的'值'
|
|
216
225
|
r13c2: item.remark, // 备注
|
|
217
|
-
r14c1: item.center_data[0]
|
|
226
|
+
r14c1: item.center_data[0]?.b2b_batch_number || '', //条形码文本
|
|
218
227
|
}
|
|
219
228
|
}
|
|
220
229
|
// 为尚工厂-责废标识卡
|
|
@@ -296,7 +305,7 @@ export const cardPrint = (
|
|
|
296
305
|
r14c2: badStr, // 渲染数组第2及以后行的'值'
|
|
297
306
|
r15c1: '备注', // 备注
|
|
298
307
|
r15c2: item.remark, //条形码文本
|
|
299
|
-
r16c1: item.center_data[0]
|
|
308
|
+
r16c1: item.center_data[0]?.b2b_batch_number || '', // 条形码文本
|
|
300
309
|
}
|
|
301
310
|
}
|
|
302
311
|
// 成品工厂-返工标识卡
|
|
@@ -336,7 +345,7 @@ export const cardPrint = (
|
|
|
336
345
|
r2c4: baseUrls + item.qr_code_path, // 二维码地址
|
|
337
346
|
r3c1: '产品型号',
|
|
338
347
|
r3c2: item.material_model,
|
|
339
|
-
r4c1: '
|
|
348
|
+
r4c1: '批次号',
|
|
340
349
|
r4c2: item.flow_lot_number,
|
|
341
350
|
r5c1: '返工总数',
|
|
342
351
|
r5c2: item.rework_count,
|
|
@@ -366,7 +375,7 @@ export const cardPrint = (
|
|
|
366
375
|
r11c2: badStr, // 渲染数组不良项目的'值'
|
|
367
376
|
r13c1: '备注',
|
|
368
377
|
r13c2: item.remark, // 备注
|
|
369
|
-
r14c1: item.center_data[0]
|
|
378
|
+
r14c1: item.center_data[0]?.b2b_batch_number || '', //条形码文本
|
|
370
379
|
}
|
|
371
380
|
}
|
|
372
381
|
// 为尚工厂-返工标识卡
|
|
@@ -444,7 +453,7 @@ export const cardPrint = (
|
|
|
444
453
|
r13c2: badStr, // 渲染数组不良项目的'值'
|
|
445
454
|
r14c1: '备注',
|
|
446
455
|
r14c2: item.remark, // 备注
|
|
447
|
-
r15c1: item.center_data[0]
|
|
456
|
+
r15c1: item.center_data[0]?.b2b_batch_number || '', //条形码文本
|
|
448
457
|
}
|
|
449
458
|
}
|
|
450
459
|
// 成品工厂-装配标识卡(为尚工厂无装配标识卡)
|
|
@@ -574,7 +583,7 @@ export const cardPrint = (
|
|
|
574
583
|
r11c2: badStr, // 渲染数组第3行的'值'
|
|
575
584
|
r13c1: '备注',
|
|
576
585
|
r13c2: item.remark, // 备注
|
|
577
|
-
r14c1: item.center_data[0]?.b2b_batch_number, //条形码文本
|
|
586
|
+
r14c1: item.center_data[0]?.b2b_batch_number || '', //条形码文本
|
|
578
587
|
}
|
|
579
588
|
}
|
|
580
589
|
// 为尚工厂-料废标识卡
|
|
@@ -652,7 +661,50 @@ export const cardPrint = (
|
|
|
652
661
|
r13c2: badStr, // 渲染数组不良项目的'值'
|
|
653
662
|
r14c1: '备注',
|
|
654
663
|
r14c2: item.remark, // 备注
|
|
655
|
-
r15c1: item.center_data[0]
|
|
664
|
+
r15c1: item.center_data[0]?.b2b_batch_number || '', //条形码文本
|
|
665
|
+
}
|
|
666
|
+
}
|
|
667
|
+
// (成品工厂-为尚工厂)-账物卡
|
|
668
|
+
else if (item.card_state == 'ZHANGWU') {
|
|
669
|
+
// 如果有不良项目,就循环获取其中值
|
|
670
|
+
// 获取 badList[4] 以后项的 value 拼接成字符串
|
|
671
|
+
obj = {
|
|
672
|
+
card_state: item.card_state,
|
|
673
|
+
factoryType: item.is_finished_goods, // 工厂类型:1:为尚工厂 | 2:成品工厂
|
|
674
|
+
r1c2: '账物卡',
|
|
675
|
+
r1c3: '文件编号',
|
|
676
|
+
r1c4: item.material_type, // 文件编号
|
|
677
|
+
r2c1: '名称/类型',
|
|
678
|
+
r2c2: item.material_name
|
|
679
|
+
? item.material_name + '/' + item.material_type
|
|
680
|
+
: item.material_type,
|
|
681
|
+
r2c4: baseUrls + item.qr_code_path, // 二维码地址
|
|
682
|
+
r3c1: '产品型号',
|
|
683
|
+
r3c2: item.material_model,
|
|
684
|
+
r4c1: '材料编码',
|
|
685
|
+
r4c2: item.material_code,
|
|
686
|
+
r5c1: '批号',
|
|
687
|
+
r5c2: item.flow_lot_number
|
|
688
|
+
? item.flow_lot_number
|
|
689
|
+
: item.center_data[0]?.b2b_batch_number,
|
|
690
|
+
r5c4: item.card_code, // 标识卡号
|
|
691
|
+
r6c1: '规值',
|
|
692
|
+
r6c2: item.center_data[0]?.value,
|
|
693
|
+
r6c3: '供应商',
|
|
694
|
+
r6c4: item.center_data[0]?.supplier_name,
|
|
695
|
+
data: [
|
|
696
|
+
{
|
|
697
|
+
opt_time: setDate(item.opt_time), // 日期
|
|
698
|
+
sr: item.record_type === 1 ? item.inventory : '', // 收入
|
|
699
|
+
fc: item.record_type === 2 ? item.inventory : '', // 发出
|
|
700
|
+
balance_count: item.balance_count, //结转
|
|
701
|
+
remark: item.remark, // 签字/备注
|
|
702
|
+
},
|
|
703
|
+
],
|
|
704
|
+
|
|
705
|
+
r14c1: item.flow_lot_number
|
|
706
|
+
? item.flow_lot_number
|
|
707
|
+
: item.center_data[0]?.b2b_batch_number || '', //条形码文本
|
|
656
708
|
}
|
|
657
709
|
}
|
|
658
710
|
|
|
@@ -684,6 +736,3 @@ export function setCardList(rowList: any) {
|
|
|
684
736
|
|
|
685
737
|
return cParams
|
|
686
738
|
}
|
|
687
|
-
|
|
688
|
-
export default cardPrint
|
|
689
|
-
|