ci-plus 1.1.8 → 1.2.0
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/index.ts +1 -1
- 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/utils/baseApi.ts +54 -29
- package/src/utils/cardPrint.ts +91 -42
- package/vite.config.ts +1 -0
package/index.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ci-plus",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"description": "ci组件库",
|
|
5
5
|
"main": "./index.ts",
|
|
6
6
|
"scripts": {
|
|
@@ -21,7 +21,8 @@
|
|
|
21
21
|
"sortablejs": "^1.15.1",
|
|
22
22
|
"vite-plugin-svg-icons": "^2.0.1",
|
|
23
23
|
"jsbarcode": "^3.11.6",
|
|
24
|
-
"dayjs": "^1.11.9"
|
|
24
|
+
"dayjs": "^1.11.9",
|
|
25
|
+
"vue-draggable-plus": "^0.4.0"
|
|
25
26
|
},
|
|
26
27
|
"devDependencies": {},
|
|
27
28
|
"peerDependencies": {},
|
|
@@ -30,10 +30,11 @@
|
|
|
30
30
|
defineOptions({ name: 'ci-seeFile' })
|
|
31
31
|
import { ref, watch } from 'vue'
|
|
32
32
|
import axios from 'axios'
|
|
33
|
+
import apis from '../utils/baseApi'
|
|
33
34
|
import { ElMessage } from 'element-plus'
|
|
34
35
|
|
|
35
36
|
interface Props {
|
|
36
|
-
url
|
|
37
|
+
url: string[] // 传入要显示的附件地址数组
|
|
37
38
|
baseUrl?: string // 图片展示的基础路径
|
|
38
39
|
}
|
|
39
40
|
|
|
@@ -76,12 +77,13 @@ const fileArr = (url: string, pathArr: string[]) => {
|
|
|
76
77
|
}
|
|
77
78
|
}
|
|
78
79
|
}
|
|
79
|
-
|
|
80
|
+
const { storageModule } = apis
|
|
81
|
+
let fileURL = new URL(storageModule).origin + '/' // 附件的地址前缀
|
|
80
82
|
const emits = defineEmits(['onClick'])
|
|
81
83
|
const pathArr = ref<any[]>([])
|
|
82
84
|
// 对数组中的每个字符串应用处理函数
|
|
83
85
|
// @ts-ignore
|
|
84
|
-
pathArr.value = setFilePath(props.url, props.baseUrl ||
|
|
86
|
+
pathArr.value = setFilePath(props.url, props.baseUrl || fileURL)
|
|
85
87
|
|
|
86
88
|
// 监听props.url的变化
|
|
87
89
|
watch(
|
|
@@ -89,7 +91,7 @@ watch(
|
|
|
89
91
|
(newVal) => {
|
|
90
92
|
// 对新值进行处理
|
|
91
93
|
// @ts-ignore
|
|
92
|
-
pathArr.value = setFilePath(newVal, props.baseUrl ||
|
|
94
|
+
pathArr.value = setFilePath(newVal, props.baseUrl || fileURL)
|
|
93
95
|
},
|
|
94
96
|
{
|
|
95
97
|
immediate: true, // 是否立即执行
|
|
@@ -190,11 +190,13 @@
|
|
|
190
190
|
<td colspan="2">{{ item.r3c2 }}</td>
|
|
191
191
|
</tr>
|
|
192
192
|
<tr>
|
|
193
|
-
|
|
193
|
+
<!-- 供应商 -->
|
|
194
|
+
<td>{{ item.r4c1 }}</td>
|
|
194
195
|
<td colspan="2">{{ item.r4c2 }}</td>
|
|
195
196
|
</tr>
|
|
196
197
|
<tr>
|
|
197
|
-
|
|
198
|
+
<!-- 材料厂商 -->
|
|
199
|
+
<td>{{ item.r5c1 }}</td>
|
|
198
200
|
<td colspan="2">{{ item.r5c2 }}</td>
|
|
199
201
|
<td colspan="2" class="content">
|
|
200
202
|
{{ item.r5c4 }}
|
|
@@ -232,6 +234,11 @@
|
|
|
232
234
|
{{ item.r9c4 }}
|
|
233
235
|
</td>
|
|
234
236
|
</tr>
|
|
237
|
+
<tr>
|
|
238
|
+
<!-- 批次号 -->
|
|
239
|
+
<td>{{ item.r10c1 }}</td>
|
|
240
|
+
<td colspan="3">{{ item.r10c2 }}</td>
|
|
241
|
+
</tr>
|
|
235
242
|
<tr>
|
|
236
243
|
<td>备注</td>
|
|
237
244
|
<td colspan="3">{{ item.r12c2 }}</td>
|
|
@@ -417,11 +424,13 @@
|
|
|
417
424
|
<td colspan="2">{{ item.r3c2 }}</td>
|
|
418
425
|
</tr>
|
|
419
426
|
<tr>
|
|
420
|
-
|
|
427
|
+
<!-- 供应商 -->
|
|
428
|
+
<td>{{ item.r4c1 }}</td>
|
|
421
429
|
<td colspan="2">{{ item.r4c2 }}</td>
|
|
422
430
|
</tr>
|
|
423
431
|
<tr>
|
|
424
|
-
|
|
432
|
+
<!-- 材料厂商 -->
|
|
433
|
+
<td>{{ item.r5c1 }}</td>
|
|
425
434
|
<td colspan="2">{{ item.r5c2 }}</td>
|
|
426
435
|
<td colspan="2" class="content">
|
|
427
436
|
{{ item.r5c4 }}
|
|
@@ -472,15 +481,21 @@
|
|
|
472
481
|
</td>
|
|
473
482
|
</tr>
|
|
474
483
|
<tr>
|
|
475
|
-
|
|
484
|
+
<!-- 批次号 -->
|
|
485
|
+
<td>{{ item.r12c1 }}</td>
|
|
476
486
|
<td colspan="3">{{ item.r12c2 }}</td>
|
|
477
487
|
</tr>
|
|
488
|
+
<tr>
|
|
489
|
+
<!-- 备注 -->
|
|
490
|
+
<td>{{ item.r13c1 }}</td>
|
|
491
|
+
<td colspan="3">{{ item.r13c2 }}</td>
|
|
492
|
+
</tr>
|
|
478
493
|
<tr>
|
|
479
494
|
<td colspan="4">
|
|
480
495
|
<div class="b2bcode" style="margin: 1px">
|
|
481
496
|
<bar-code
|
|
482
497
|
:key="item + new Date()"
|
|
483
|
-
:value="item.
|
|
498
|
+
:value="item.r14c1"
|
|
484
499
|
:maxWidth="myWidth"
|
|
485
500
|
:newClass="index"
|
|
486
501
|
></bar-code>
|
|
@@ -531,7 +546,7 @@
|
|
|
531
546
|
<td colspan="2">{{ item.r3c2 }}</td>
|
|
532
547
|
</tr>
|
|
533
548
|
<tr>
|
|
534
|
-
<td
|
|
549
|
+
<td>批次号</td>
|
|
535
550
|
<td colspan="2">{{ item.r4c2 }}</td>
|
|
536
551
|
</tr>
|
|
537
552
|
<tr>
|
|
@@ -1125,7 +1140,7 @@
|
|
|
1125
1140
|
<td colspan="2">{{ item.r3c2 }}</td>
|
|
1126
1141
|
</tr>
|
|
1127
1142
|
<tr>
|
|
1128
|
-
<td
|
|
1143
|
+
<td>批次号</td>
|
|
1129
1144
|
<td colspan="2">{{ item.r4c2 }}</td>
|
|
1130
1145
|
</tr>
|
|
1131
1146
|
<tr>
|
|
@@ -1,44 +1,7 @@
|
|
|
1
|
-
<!-- @format -->
|
|
2
|
-
|
|
3
1
|
<template>
|
|
4
2
|
<div style="display: flex; align-items: center; justify-content: center">
|
|
5
3
|
<span>{{ text }}</span>
|
|
6
|
-
|
|
7
4
|
<div class="myporpove" id="myinputs">
|
|
8
|
-
<!-- <el-button @click.stop="handleButtonClick"> </el-button> -->
|
|
9
|
-
|
|
10
|
-
<!-- <el-popover
|
|
11
|
-
ref="popover"
|
|
12
|
-
:title="text"
|
|
13
|
-
content="这是一段内容,这是一段内容。"
|
|
14
|
-
:visible="visible"
|
|
15
|
-
>
|
|
16
|
-
<template #reference>
|
|
17
|
-
<div style="width: 23px; height: 16px">
|
|
18
|
-
<svg-icon
|
|
19
|
-
name="mysearch"
|
|
20
|
-
size="15"
|
|
21
|
-
:color="value ? '#2C93FF' : ''"
|
|
22
|
-
@click="toggle"
|
|
23
|
-
/>
|
|
24
|
-
</div>
|
|
25
|
-
</template>
|
|
26
|
-
<el-select
|
|
27
|
-
v-model="operator"
|
|
28
|
-
class="m-2 input-select"
|
|
29
|
-
placeholder="请选择查询类型"
|
|
30
|
-
size="default"
|
|
31
|
-
clearable
|
|
32
|
-
>
|
|
33
|
-
<el-option
|
|
34
|
-
v-for="item in options"
|
|
35
|
-
:key="item.value"
|
|
36
|
-
:label="item.label"
|
|
37
|
-
:value="item.value"
|
|
38
|
-
/>
|
|
39
|
-
</el-select>
|
|
40
|
-
</el-popover> -->
|
|
41
|
-
|
|
42
5
|
<header-popover
|
|
43
6
|
:popperStyle="PopperStyle"
|
|
44
7
|
:trigger="trigger"
|
|
@@ -172,11 +135,10 @@
|
|
|
172
135
|
<script setup lang="ts">
|
|
173
136
|
defineOptions({ name: 'ci-headerInput' })
|
|
174
137
|
import SvgIcon from '@/components/SvgIcon.vue'
|
|
175
|
-
import { computed, ref, watch
|
|
138
|
+
import { computed, ref, watch } from 'vue'
|
|
176
139
|
import lodash from 'lodash'
|
|
177
140
|
import headerPopover from './utils/headerPopover.vue'
|
|
178
141
|
import { TooltipTriggerType } from 'element-plus'
|
|
179
|
-
const popover = ref()
|
|
180
142
|
|
|
181
143
|
// 定义 props 的类型
|
|
182
144
|
interface SelectConfig {
|
|
@@ -440,17 +402,19 @@ if (props.type !== 'date') {
|
|
|
440
402
|
watch(operator, (newVal, oldVal) => {
|
|
441
403
|
console.log('operator.value: ', newVal, oldVal)
|
|
442
404
|
if (newVal == 'between' || oldVal == 'between') {
|
|
405
|
+
console.log('重置value的值')
|
|
443
406
|
value.value = ''
|
|
444
407
|
}
|
|
445
408
|
})
|
|
446
409
|
|
|
447
410
|
// 返回面板数据
|
|
448
411
|
const confirm = (closeF?: Function) => {
|
|
449
|
-
|
|
450
|
-
|
|
412
|
+
// 下拉列表框选值的时候处理最终值
|
|
413
|
+
if (props.type === 'select' && props.selectConfig.selectMultiple) {
|
|
414
|
+
operator.value = 'in' // 多选
|
|
451
415
|
value.value = selectValue.value?.join(',') || ''
|
|
452
|
-
} else {
|
|
453
|
-
operator.value = '='
|
|
416
|
+
} else if (props.type === 'select' && !props.selectConfig.selectMultiple) {
|
|
417
|
+
operator.value = '=' // 单选
|
|
454
418
|
value.value = selectValue.value
|
|
455
419
|
}
|
|
456
420
|
// 将当前参数的值放到对象中
|
|
@@ -469,6 +433,13 @@ const confirm = (closeF?: Function) => {
|
|
|
469
433
|
|
|
470
434
|
// 清除按钮:清空输入框和发送请求
|
|
471
435
|
const clear = () => {
|
|
436
|
+
// 如果是select下拉框,就清空select的值
|
|
437
|
+
if (props.type === 'select' && props.selectConfig.selectMultiple) {
|
|
438
|
+
selectValue.value = []
|
|
439
|
+
} else if (props.type === 'select' && !props.selectConfig.selectMultiple) {
|
|
440
|
+
selectValue.value = void 0
|
|
441
|
+
}
|
|
442
|
+
|
|
472
443
|
value.value = void 0
|
|
473
444
|
confirm()
|
|
474
445
|
}
|
|
@@ -478,67 +449,7 @@ const close = () => {}
|
|
|
478
449
|
const open = () => {
|
|
479
450
|
emits('open')
|
|
480
451
|
}
|
|
481
|
-
/*
|
|
482
|
-
const handleShow = () => {
|
|
483
|
-
console.log('打开')
|
|
484
|
-
visible.value = true
|
|
485
|
-
document.addEventListener('mousedown', handleDocumentClick)
|
|
486
|
-
}
|
|
487
|
-
const handleHide = () => {
|
|
488
|
-
console.log('关闭')
|
|
489
|
-
visible.value = false
|
|
490
|
-
document.removeEventListener('mousedown', handleDocumentClick)
|
|
491
|
-
}
|
|
492
|
-
|
|
493
|
-
const handleDocumentClick = (e: any) => {
|
|
494
|
-
// 查找所有的class名称为 is-light 的元素
|
|
495
|
-
// const el1 = document.querySelector('.is-light')
|
|
496
|
-
// console.log('el1: ', el1)
|
|
497
|
-
|
|
498
|
-
const elements = document.querySelectorAll('[id^="el-popper-container-"]')
|
|
499
|
-
console.log('elements: ', elements)
|
|
500
|
-
|
|
501
|
-
if (elements && elements.length > 0) {
|
|
502
|
-
for (let i = 0; i < elements.length; i++) {
|
|
503
|
-
const element = elements[i]
|
|
504
|
-
console.log('element: ', element)
|
|
505
|
-
if (element?.contains(e.target)) {
|
|
506
|
-
return
|
|
507
|
-
}
|
|
508
|
-
}
|
|
509
|
-
}
|
|
510
|
-
|
|
511
|
-
// 通过自定义属性 aria-label 查找元素
|
|
512
|
-
const el = document.querySelector(`[aria-label="${props.text}"]`)
|
|
513
|
-
console.dir('el: ', el)
|
|
514
|
-
// 获取 el 的class为.is-light的兄弟元素
|
|
515
|
-
const el2 = el?.parentElement?.querySelector('.el-select__popper')
|
|
516
|
-
console.dir('el2: ', el2)
|
|
517
|
-
console.log('是否包含: ', el?.contains(e.target))
|
|
518
|
-
// 获取class为 porpove的元素;
|
|
519
|
-
|
|
520
|
-
// 判断点击的元素是否是是e的子元素
|
|
521
|
-
if (el?.contains(e.target)) {
|
|
522
|
-
return
|
|
523
|
-
}
|
|
524
|
-
if (!popover.value.$el.contains(e.target)) {
|
|
525
|
-
console.log(22222)
|
|
526
|
-
handleHide()
|
|
527
|
-
}
|
|
528
|
-
}
|
|
529
452
|
|
|
530
|
-
const visible = ref(false)
|
|
531
|
-
// const toggle = () => {
|
|
532
|
-
// console.log('visible', visible.value)
|
|
533
|
-
// if (visible.value) {
|
|
534
|
-
// // visible.value = false
|
|
535
|
-
// } else {
|
|
536
|
-
// visible.value = true
|
|
537
|
-
// document.addEventListener('mousedown', handleDocumentClick)
|
|
538
|
-
// lodash.debounce(() => handleShow(), 500)
|
|
539
|
-
// }
|
|
540
|
-
// }
|
|
541
|
-
*/
|
|
542
453
|
// 排序
|
|
543
454
|
const orderChangtop = (val: string) => {
|
|
544
455
|
console.log('升序', ordersVal.value)
|
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
|
-
|