Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
W
wms
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wuhao
wms
Commits
9d98a45c
Commit
9d98a45c
authored
Jul 27, 2023
by
krysent
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
标签打印
parent
97fa0889
Changes
16
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
2156 additions
and
301 deletions
+2156
-301
routes.js
config/routes.js
+6
-1
index.jsx
src/pages/Printer/index.jsx
+50
-8
index.jsx
src/pages/craft/Materiel/index.jsx
+61
-14
index.jsx
src/pages/findstore/Storesearch/index.jsx
+8
-8
indexcopy.jsx
src/pages/findstore/Storesearch/indexcopy.jsx
+73
-72
fields.js
src/pages/outsetstore/Otheroutstore/fields.js
+1000
-0
index.jsx
src/pages/outsetstore/Otheroutstore/index.jsx
+608
-0
index.less
src/pages/outsetstore/Otheroutstore/index.less
+10
-0
printdom.jsx
src/pages/outsetstore/Otheroutstore/printdom.jsx
+206
-0
index.jsx
src/pages/outsetstore/Outstore/index.jsx
+11
-111
printdom.jsx
src/pages/outsetstore/Outstore/printdom.jsx
+4
-1
index.jsx
src/pages/system/Reservoir/index.jsx
+3
-0
index.jsx
src/pages/user/Login/index.jsx
+2
-8
detailTotalCard.js
src/utils/detailTotalCard.js
+25
-25
mymodelhtml.js
src/utils/mymodelhtml.js
+72
-44
printHandle.js
src/utils/printHandle.js
+17
-9
No files found.
config/routes.js
View file @
9d98a45c
...
...
@@ -38,9 +38,14 @@ export default [
name
:
"入库管理"
,
component
:
"./insertstore/Instore"
,
},
{
path
:
"/wms/otherOutstore"
,
name
:
"其他出库单"
,
component
:
"./outsetstore/Otheroutstore"
,
},
{
path
:
"/wms/outstore"
,
name
:
"
出库管理
"
,
name
:
"
生产叫料单
"
,
component
:
"./outsetstore/Outstore"
,
},
{
...
...
src/pages/Printer/index.jsx
View file @
9d98a45c
import
React
,
{
useEffect
,
useRef
,
useReducer
,
useState
}
from
"react"
;
import
{
Button
,
Tooltip
,
Row
,
Divider
,
Drawer
}
from
"antd"
;
import
{
Button
,
Tooltip
,
Row
,
Divider
,
Drawer
,
Modal
,
Space
,
message
,
}
from
"antd"
;
import
AutoTable
from
"@/components/AutoTable"
;
import
getPrem
from
"@/utils/getPrem"
;
//权限判断fn
import
{
useRequest
}
from
"umi"
;
import
defaultFields
from
"./fields"
;
import
{
doFetch
}
from
"@/utils/doFetch"
;
import
InitForm
from
"@/components/InitForm"
;
import
Details
from
"@/components/Detail
s"
;
import
{
stationDetail
}
from
"@/utils/detailTotalCard
"
;
import
Coltext
from
"@/components/Coltext"
;
import
{
start
}
from
"@/utils/printHandle.j
s"
;
import
{
ExclamationCircleFilled
}
from
"@ant-design/icons
"
;
const
{
confirm
}
=
Modal
;
const
Station
=
(
props
)
=>
{
let
actionRef
=
useRef
(),
...
...
@@ -102,6 +111,7 @@ const Station = (props) => {
const
[
drawer
,
setDrawer
]
=
useState
({
visible
:
false
,
});
const
[
selectIds
,
setselectIds
]
=
useState
([]);
let
saveData
=
(
values
,
fn
)
=>
{
let
newfields
=
JSON
.
parse
(
JSON
.
stringify
(
values
));
...
...
@@ -114,6 +124,22 @@ const Station = (props) => {
});
};
const
showConfirm
=
()
=>
{
confirm
({
title
:
`当前已选择
${
selectIds
?.
length
}
条标签数据,是否全部打印?
`,
icon: <ExclamationCircleFilled />,
width: 500,
onOk() {
start("/ngic-workmanship/wmsMaterieLabel/queryByIds", {
ids: selectIds,
});
},
onCancel() {
console.log("Cancel");
},
});
};
const OptionsBtn = () => {
return (
<>
...
...
@@ -129,7 +155,12 @@ const Station = (props) => {
<Button
type="primary"
onClick={() => {
setDrawer
((
v
)
=>
({
...
v
,
visible
:
true
,
title
:
" 子卷补码"
}));
if (selectIds.length == 0) {
message.destroy();
message.warning("请选择数据!", 2);
return;
}
showConfirm();
}}
>
子卷补码
...
...
@@ -138,6 +169,14 @@ const Station = (props) => {
);
};
const rowSelection = {
onChange: (selectedRowKeys, selectedRows) => {
console.log(selectedRowKeys, selectedRows);
setselectIds(selectedRowKeys);
},
preserveSelectedRowKeys:true
};
return (
<div>
<AutoTable
...
...
@@ -147,6 +186,10 @@ const Station = (props) => {
path="/ngic-workmanship/wmsMaterieLabel/page"
actionRef={actionRef}
onRef={(node) => (ChildRef = node)}
rowSelection={{
type: "checkbox",
...rowSelection,
}}
></AutoTable>
<Drawer
title={drawer?.title}
...
...
@@ -170,7 +213,7 @@ const Station = (props) => {
style={{ width: "100%" }}
type="primary"
size="large"
// loading={loading || !vs}
// loading={loading || !vs}
onClick={() => saveData()}
>
保存
...
...
@@ -179,13 +222,12 @@ const Station = (props) => {
style={{ width: "100%" }}
type="primary"
size="large"
// loading={loading || !vs}
// loading={loading || !vs}
onClick={() => saveData()}
>
保存并打印
</Button>
</Drawer>
</div>
);
};
...
...
src/pages/craft/Materiel/index.jsx
View file @
9d98a45c
...
...
@@ -264,7 +264,7 @@ const Materiel = (props) => {
title
:
"默认库区"
,
dataIndex
:
"storeAreaName"
,
key
:
"storeAreaName"
,
search
:
false
search
:
false
,
},
{
...
...
@@ -289,7 +289,7 @@ const Materiel = (props) => {
return
[
getPrem
(
"sysDepartment_save"
,
action
,
"修改"
,
()
=>
{
doFetch
({
url
:
"/ngic-workmanship/pmMaterie/queryById"
,
url
:
"/ngic-workmanship/pmMaterie/query
Detail
ById"
,
params
:
{
id
:
record
.
id
},
}).
then
((
res
)
=>
{
if
(
res
.
code
==
"0000"
)
{
...
...
@@ -366,18 +366,53 @@ const Materiel = (props) => {
formRef
.
validateFields
()
.
then
((
firstValues
)
=>
{
for
(
let
i
in
firstValues
)
{
if
(
firstValues
[
i
]
===
undefined
)
{
firstValues
[
i
]
=
null
;
}
}
params
=
{
...
firstValues
,
...
difrid
,
};
console
.
log
(
params
);
url
=
"/ngic-workmanship/pmMaterie/save"
;
run
({
url
,
params
});
formRefs
.
validateFields
()
.
then
((
secondFields
)
=>
{
let
secondFieldsKeys
=
Object
.
keys
(
secondFields
);
let
materieCharList
=
defaultSpecificFileds
.
map
((
it
)
=>
{
if
(
secondFieldsKeys
.
indexOf
(
it
.
fieldsKey
)
!=
-
1
)
{
it
.
fieldRealValue
=
secondFields
[
it
.
fieldsKey
];
}
const
el
=
{
fieldType
:
it
.
fieldType
,
fieldTypeName
:
it
.
fieldTypeName
,
fieldCondName
:
it
.
fieldCondName
,
fieldCondKey
:
it
.
fieldCondKey
,
optCondName
:
it
.
optCondName
,
optCondKey
:
it
.
optCondKey
,
fieldId
:
it
.
fieldId
,
fieldName
:
it
.
fieldName
,
fieldChar
:
it
.
fieldChar
,
fieldCharName
:
it
.
fieldCharName
,
fieldCharValue
:
it
.
fieldCharValue
,
fieldRealValue
:
it
.
fieldRealValue
,
valueList
:
it
.
valueList
,
};
return
el
;
});
let
materieProductUnitList
=
firstValues
?.
materieProductUnitList
?.
map
((
it
)
=>
{
return
{
productionUnit
:
it
.
productionUnit
,
conversionRate
:
it
.
conversionRate
,
};
});
for
(
let
i
in
firstValues
)
{
if
(
firstValues
[
i
]
===
undefined
)
{
firstValues
[
i
]
=
null
;
}
}
params
=
{
...
firstValues
,
materieCharList
,
...
difrid
,
materieProductUnitList
,
};
url
=
"/ngic-workmanship/pmMaterie/save"
;
run
({
url
,
params
});
})
.
catch
((
error
)
=>
{});
})
.
catch
((
error
)
=>
{});
}
else
{
...
...
@@ -524,6 +559,7 @@ const Materiel = (props) => {
/>
</
div
>
</
AutoTable
>
<
Drawer
title=
{
iftype
.
title
}
visible=
{
vs
}
...
...
@@ -544,6 +580,17 @@ const Materiel = (props) => {
return
null
;
}
}
></
InitForm
>
<
div
style=
{
{
fontSize
:
16
,
fontWeight
:
"bold"
,
marginBottom
:
15
}
}
>
特定属性
</
div
>
<
InitForm
formRef=
{
formRefs
}
fields=
{
specificFileds
}
onChange=
{
(
changedValues
,
allValues
)
=>
{}
}
actions=
{
()
=>
{
return
null
;
}
}
></
InitForm
>
</>
}
<
Button
...
...
src/pages/findstore/Storesearch/index.jsx
View file @
9d98a45c
...
...
@@ -145,14 +145,14 @@ function Instore(props) {
key
:
"length"
,
search
:
false
,
},
{
title
:
"库存信息"
,
dataIndex
:
"option"
,
key
:
"option"
,
valueType
:
"option"
,
width
:
100
,
render
:
(
text
,
row
,
_
,
action
)
=>
extraAction
(
text
,
row
,
_
,
action
),
},
//
{
//
title: "库存信息",
//
dataIndex: "option",
//
key: "option",
//
valueType: "option",
//
width: 100,
//
render: (text, row, _, action) => extraAction(text, row, _, action),
//
},
];
return
(
...
...
src/pages/findstore/Storesearch/indexcopy.jsx
View file @
9d98a45c
...
...
@@ -52,78 +52,79 @@ const Storesearch = (props) => {
"dataIndex"
:
"productionUnitName"
,
"key"
:
"productionUnitName"
,
"search"
:
false
},
{
"title"
:
"库存信息"
,
"valueType"
:
"option"
,
"width"
:
88
,
"search"
:
false
,
"render"
:
(
dom
,
record
)
=>
{
return
<
a
onClick=
{
()
=>
{
Modal
.
info
({
title
:
"库存信息"
,
width
:
1200
,
okText
:
"知道了"
,
content
:
(
<
div
>
<
AutoTable
withCard=
{
false
}
columns=
{
[
{
"title"
:
"仓库编号"
,
"dataIndex"
:
"storeCode"
,
"key"
:
"storeCode"
,
},
{
"title"
:
"仓库名称"
,
"dataIndex"
:
"storeName"
,
"key"
:
"storeName"
},
{
"title"
:
"库位名称"
,
"dataIndex"
:
"storePositionName"
,
"key"
:
"storePositionName"
},
{
"title"
:
"批次号/SN号"
,
"dataIndex"
:
"materieControlNo"
,
"key"
:
"materieControlNo"
},
{
"title"
:
"供应商编号"
,
"dataIndex"
:
"supplierNo"
,
"key"
:
"supplierNo"
},
{
"title"
:
"供应商名称"
,
"dataIndex"
:
"supplierName"
,
"key"
:
"supplierName"
},
{
"title"
:
"库存数量"
,
"dataIndex"
:
"stroeNum"
,
"key"
:
"stroeNum"
,
search
:
false
},
]
}
path=
"/ngic-workmanship/wmsMaterieStore/queryPositionList"
extraparams=
{
{
level
:
select
.
level
??
0
,
key
:
select
.
selectedKeys
??
""
,
materieId
:
record
.
materieId
}
}
>
</
AutoTable
>
</
div
>
)
})
}
}
>
查看
</
a
>
}
}
},
// {
// "title": "库存信息",
// "valueType": "option",
// "width": 88,
// "search": false,
// "render": (dom, record) => {
// return <a
// onClick={() => {
// Modal.info({
// title: "库存信息",
// width: 1200,
// okText: "知道了",
// content: (
// <div>
// <AutoTable
// withCard={false}
// columns={[
// {
// "title": "仓库编号",
// "dataIndex": "storeCode",
// "key": "storeCode",
// },
// {
// "title": "仓库名称",
// "dataIndex": "storeName",
// "key": "storeName"
// },
// {
// "title": "库位名称",
// "dataIndex": "storePositionName",
// "key": "storePositionName"
// },
// {
// "title": "批次号/SN号",
// "dataIndex": "materieControlNo",
// "key": "materieControlNo"
// },
// {
// "title": "供应商编号",
// "dataIndex": "supplierNo",
// "key": "supplierNo"
// },
// {
// "title": "供应商名称",
// "dataIndex": "supplierName",
// "key": "supplierName"
// },
// {
// "title": "库存数量",
// "dataIndex": "stroeNum",
// "key": "stroeNum",
// search:false
// },
// ]}
// path="/ngic-workmanship/wmsMaterieStore/queryPositionList"
// extraparams={{
// level: select.level ?? 0,
// key: select.selectedKeys ?? "",
// materieId: record.materieId
// }}
// >
// </AutoTable>
// </div>
// )
// })
// }}
// >
// 查看
// </a>
// }
// }
]
const
tableprops
=
{
...
...
src/pages/outsetstore/Otheroutstore/fields.js
0 → 100644
View file @
9d98a45c
This diff is collapsed.
Click to expand it.
src/pages/outsetstore/Otheroutstore/index.jsx
0 → 100644
View file @
9d98a45c
This diff is collapsed.
Click to expand it.
src/pages/outsetstore/Otheroutstore/index.less
0 → 100644
View file @
9d98a45c
.sitelayout {
min-height: calc(100vh - 98px) !important;
.sitelayoutbackground {
background: #fff;
}
}
.title{
margin: 0px;
}
\ No newline at end of file
src/pages/outsetstore/Otheroutstore/printdom.jsx
0 → 100644
View file @
9d98a45c
import
{
doFetch
}
from
"@/utils/doFetch"
;
import
React
,
{
useState
,
useImperativeHandle
,
forwardRef
,
useRef
,
}
from
"react"
;
import
{
useEffect
}
from
"react"
;
import
{
ScrollBoard
}
from
"@jiaminghi/data-view-react"
;
import
{
useWindowSize
}
from
"@/utils/windowsize"
;
const
pageStyle
=
`
@media all {
.page-break {
display: none;
}
}
@media print {
html, body {
height: initial !important;
overflow: initial !important;
position:relative;
-webkit-print-color-adjust: exact;
word-break: break-all;
}
}
@media print {
.page-break {
margin-top:0;
display: block;
page-break-before: auto;
}
}
@media print {
.page-noprint {
display: none !important;
}
}
@page {
size: auto;
margin: 0px;
}
`
;
let
columns
=
[
{
title
:
"物料编码 - 名称"
,
dataIndex
:
"materieName"
,
key
:
"materieName"
,
search
:
false
,
render
:
(
dom
,
row
)
=>
{
return
(
row
.
materieCode
??
""
)
+
" - "
+
(
row
.
materieName
??
""
);
},
},
{
title
:
"出库数量"
,
dataIndex
:
"outstroeNum"
,
key
:
"outstroeNum"
,
search
:
false
,
},
{
title
:
"库存单位"
,
dataIndex
:
"productionUnitName"
,
key
:
"productionUnitName"
,
search
:
false
,
width
:
60
,
},
];
function
PrintDom
({
totalPath
,
val
,
totalParams
,
totalCard
},
ref
)
{
let
printRef
=
useRef
();
const
[
data
,
setdata
]
=
useState
({});
useImperativeHandle
(
ref
,
()
=>
({
dom
:
printRef
,
}));
useEffect
(()
=>
{
if
(
val
==
"detail"
)
{
doFetch
({
url
:
totalPath
,
params
:
totalParams
}).
then
((
res
)
=>
{
setdata
(
res
?.
data
?.
data
);
});
}
else
{
}
},
[
val
]);
let
datas
=
data
?.
materialList
?
data
?.
materialList
.
map
((
it
)
=>
{
return
columns
.
map
((
item
)
=>
{
if
(
item
.
render
)
{
return
item
.
render
(
it
,
it
);
}
else
{
return
it
[
item
.
dataIndex
];
}
});
})
:
[];
return
(
<>
<
style
type=
"text/css"
media=
"print"
>
{
pageStyle
}
</
style
>
{
val
==
"detail"
&&
(
<
div
ref=
{
printRef
}
style=
{
{
width
:
"100%"
,
minHeight
:
"100%"
,
overflow
:
"inherit"
,
position
:
"relative"
,
}
}
>
<
div
style=
{
{
display
:
"flex"
,
justifyContent
:
"space-between"
,
alignItems
:
"center"
,
padding
:
"0 2%"
,
paddingBottom
:
12
,
}
}
>
<
h1
style=
{
{
width
:
"100%"
,
fontSize
:
40
,
marginTop
:
"-6px"
,
}
}
>
出库工单
</
h1
>
<
img
style=
{
{
width
:
300
,
height
:
"auto"
,
}
}
src=
{
data
?.
qrCodeUrl
}
alt=
""
/>
</
div
>
<
div
style=
{
{
display
:
"flex"
,
flexWrap
:
"wrap"
,
paddingLeft
:
"2%"
,
marginTop
:
24
,
}
}
>
{
totalCard
&&
totalCard
[
0
].
itemData
.
filter
((
it
)
=>
!
(
it
.
noshow
===
true
))
.
map
((
it
)
=>
{
return
(
<
div
style=
{
{
width
:
it
.
noshow
??
"32%"
,
backgroundColor
:
"#f9f9f9"
,
marginRight
:
"1%"
,
marginBottom
:
10
,
padding
:
"4px"
,
fontSize
:
20
,
overflow
:
"hidden"
,
}
}
>
<
b
>
{
it
.
title
}
:
</
b
>
<
span
>
{
data
[
it
.
key
]
||
"-"
}
</
span
>
</
div
>
);
})
}
</
div
>
<
div
style=
{
{
padding
:
"4px 2%"
,
position
:
"relative"
,
width
:
"100%"
,
overflow
:
"hidden"
,
}
}
id=
"large"
>
<
div
style=
{
{
marginBottom
:
18
,
}
}
>
<
b
>
{
totalCard
&&
totalCard
[
1
].
cardTitle
}
</
b
>
</
div
>
<
ScrollBoard
config=
{
{
header
:
columns
.
map
((
it
)
=>
it
.
title
),
data
:
datas
,
rowNum
:
datas
.
length
,
hoverPause
:
false
,
}
}
/>
</
div
>
</
div
>
)
}
</>
);
}
export
default
forwardRef
(
PrintDom
);
src/pages/outsetstore/Outstore/index.jsx
View file @
9d98a45c
...
...
@@ -186,11 +186,11 @@ function Outstore(props) {
},
valueType
:
"select"
,
},
{
title
:
"相关单号"
,
dataIndex
:
"businessNo"
,
key
:
"businessNo"
,
},
//
{
//
title: "相关单号",
//
dataIndex: "businessNo",
//
key: "businessNo",
//
},
{
title
:
"备注"
,
dataIndex
:
"remark"
,
...
...
@@ -227,71 +227,6 @@ function Outstore(props) {
},
],
},
{
title
:
"操作"
,
valueType
:
"option"
,
width
:
240
,
render
:
(
text
,
record
,
_
,
action
)
=>
{
return
[
getPrem
(
"equipmentCustomer_save"
,
action
,
"下架采集"
,
async
()
=>
{
let
extra
=
defaultFields
.
dooutside
(
record
.
id
,
record
.
storeId
);
setdrawprops
((
s
)
=>
({
...
s
,
visible
:
true
,
//查看详情 props
val
:
"detail"
,
title
:
`下架采集`
,
...
extra
,
totalPath
:
"/ngic-workmanship/wmsMaterieOutstore/getOutStoreInfoById"
,
totalParams
:
{
id
:
record
.
id
},
extra
:
null
,
}));
setInitialState
((
s
)
=>
{
return
{
...
s
,
submits
:
{},
};
});
}
),
getPrem
(
"equipmentCustomer_deleteById"
,
action
,
"关单"
,
null
,
{
title
:
"确认关单?"
,
onConfirm
:
()
=>
{
doFetch
({
url
:
"/ngic-workmanship/wmsMaterieOutstore/close"
,
params
:
{
id
:
record
.
id
},
}).
then
((
res
)
=>
{
if
(
res
.
code
==
"0000"
)
{
reload
();
}
});
},
}),
record
.
status
==
0
&&
getPrem
(
"equipmentCustomer_deleteById"
,
action
,
"删除"
,
null
,
{
title
:
"确认删除?"
,
onConfirm
:
()
=>
{
doFetch
({
url
:
"/ngic-workmanship/wmsMaterieOutstore/deleteById"
,
params
:
{
id
:
record
.
id
},
}).
then
((
res
)
=>
{
if
(
res
.
code
==
"0000"
)
{
reload
();
}
});
},
}),
];
},
},
];
}
else
{
return
[
...
...
@@ -363,11 +298,11 @@ function Outstore(props) {
},
valueType
:
"select"
,
},
{
title
:
"相关单号"
,
dataIndex
:
"businessNo"
,
key
:
"businessNo"
,
},
//
{
//
title: "相关单号",
//
dataIndex: "businessNo",
//
key: "businessNo",
//
},
{
title
:
"备注"
,
dataIndex
:
"remark"
,
...
...
@@ -419,42 +354,7 @@ function Outstore(props) {
const
tableprops
=
{
...
props
,
pageextra
:
activeTabKey
==
"1"
?
(
<
Dropdown
placement=
"bottomRight"
overlay=
{
<
Menu
onClick=
{
(
e
)
=>
{
setdrawprops
((
s
)
=>
({
...
s
,
visible
:
true
,
title
:
"新增"
+
itemz
[
e
.
key
],
fields
:
defaultFields
[
e
.
key
],
outstoreType
:
keytoval
[
e
.
key
],
val
:
"add"
,
//类型
extra
:
null
,
}));
}
}
items=
{
items
}
/>
}
>
<
Button
type=
"primary"
>
新增
</
Button
>
</
Dropdown
>
)
:
(
"none"
),
tabList
:
[
{
tab
:
"未完成"
,
key
:
"1"
,
},
{
tab
:
"已完成"
,
key
:
"2"
,
},
],
activeTabKey
,
onTabChange
,
columns
,
...
...
src/pages/outsetstore/Outstore/printdom.jsx
View file @
9d98a45c
...
...
@@ -72,6 +72,7 @@ let columns = [
];
function
PrintDom
({
totalPath
,
val
,
totalParams
,
totalCard
},
ref
)
{
console
.
log
(
totalCard
);
let
printRef
=
useRef
();
const
[
data
,
setdata
]
=
useState
({});
useImperativeHandle
(
ref
,
()
=>
({
...
...
@@ -81,7 +82,9 @@ function PrintDom({ totalPath, val, totalParams, totalCard }, ref) {
useEffect
(()
=>
{
if
(
val
==
"detail"
)
{
doFetch
({
url
:
totalPath
,
params
:
totalParams
}).
then
((
res
)
=>
{
setdata
(
res
?.
data
?.
data
);
if
(
res
.
code
==
"0000"
)
{
setdata
(
res
?.
data
?.
data
);
}
});
}
else
{
}
...
...
src/pages/system/Reservoir/index.jsx
View file @
9d98a45c
...
...
@@ -476,6 +476,9 @@ const Materiel = (props) => {
for
(
let
i
in
defaultFields
)
{
defaultFields
[
i
].
value
=
null
;
defaultFields
[
i
].
disabled
=
false
;
if
(
i
==
'status'
)
{
defaultFields
[
i
].
value
=
1
;
}
if
(
i
==
"serialNumberRuleId"
||
i
==
"labelTemplateId"
||
...
...
src/pages/user/Login/index.jsx
View file @
9d98a45c
...
...
@@ -37,7 +37,7 @@ import {
}
from
"@/services/system"
;
import
{
doFetch
}
from
"@/utils/doFetch"
;
import
{
ProDescriptions
}
from
"@ant-design/pro-components"
;
import
{
start
}
from
"@/utils/printHandle.js"
;
const
{
Search
}
=
Input
;
...
...
@@ -614,13 +614,7 @@ const Login = () => {
</Link> */
}
</
div
>
</
LoginForm
>
<
Button
onClick=
{
()
=>
{
start
();
}
}
>
start
</
Button
>
</
div
>
<
Footer
></
Footer
>
</
div
>
...
...
src/utils/detailTotalCard.js
View file @
9d98a45c
...
...
@@ -731,31 +731,31 @@ const materielDetail = [
},
],
},
{
cardTitle
:
"单位转换设置"
,
itemData
:
[
{
key
:
"materieProductUnitList"
,
type
:
"table"
,
col
:
{
span
:
24
},
columns
:
[
{
title
:
"辅助单位"
,
dataIndex
:
"productionUnitName"
,
key
:
"productionUnitName"
,
search
:
false
,
},
{
title
:
"转换比"
,
dataIndex
:
"conversionRate"
,
key
:
"conversionRate"
,
search
:
false
,
width
:
200
},
],
},
],
},
//
{
//
cardTitle: "单位转换设置",
//
itemData: [
//
{
//
key: "materieProductUnitList",
//
type: "table",
//
col: { span: 24 },
//
columns: [
//
{
//
title: "辅助单位",
//
dataIndex: "productionUnitName",
//
key: "productionUnitName",
//
search: false,
//
},
//
{
//
title: "转换比",
//
dataIndex: "conversionRate",
//
key: "conversionRate",
//
search: false,
//
width: 200
//
},
//
],
//
},
//
],
//
},
];
const
shiftgroupDetail
=
[
//班组信息详情
...
...
src/utils/mymodelhtml.js
View file @
9d98a45c
import
src
from
"../../public/ewm.png"
;
export
const
str
=
`<table
border="1"
width="100%"
height="100%"
style="border-collapse: collapse; border: solid 1px"
bordercolor="#000000"
cellpadding="0"
>
<tr>
<td colspan="8">卷料名称:剪切后硅钢片</td>
</tr>
<tr>
<td colspan="8">卷料编码:PDC010100093</td>
</tr>
<tr>
<td colspan="4">牌号:070片</td>
<td colspan="4">母卷编号:20SQC</td>
</tr>
<tr>
<td colspan="4">厂家:江苏南高</td>
<td colspan="4">母卷重量:100KG</td>
</tr>
<tr>
<td colspan="8">单边卷料厚度:200mm</td>
</tr>
<tr>
<td colspan="2" rowspan="3">
<img src=
${
src
}
style="width:50px"/>
</td>
<td colspan="3">铁损:0.68w/kg</td>
<td colspan="3">批次:20230412</td>
</tr>
<tr>
<td colspan="3">宽度:188mm</td>
<td colspan="3">片厚:0.2mm</td>
</tr>
<tr>
<td colspan="3">重量:631KG</td>
<td colspan="3">米数:2292M</td>
</tr>
<tr>
<td colspan="8">条码:1BR157846039401296</td>
</tr>
</table>`
;
export
function
str
(
data
)
{
// return `<table
// border="1"
// width="100%"
// height="100%"
// style="border-collapse: collapse; border: solid 1px;z-index:99999999"
// bordercolor="#000000"
// cellpadding="0"
// >
// <tr>
// <td colSpan="7">卷料名称:${data?.materieName ?? "--"}</td>
// <td colSpan="1">3</td>
// </td>
// </tr>
// <tr>
// <td colspan="8">卷料编码:${data?.materieCode ?? "--"}</td>
// </tr>
// <tr>
// <td colspan="8">牌号:${data?.shopSign ?? "--"}片</td>
// </tr>
// <tr>
// <td colspan="8">单边卷料厚度:${data?.unilateralThickness ?? "--"}</td>
// </tr>
// <tr>
// <td colspan="4">铁损:${data?.ironLoss ?? "--"}w/kg</td>
// <td colspan="4">批次:${data?.materieControlNo ?? "--"}</td>
// </tr>
// <tr>
// <td colspan="4">宽度:${data?.width ?? "--"}mm</td>
// <td colspan="4">片厚:${data?.sheetThickness ?? "--"}mm</td>
// </tr>
// <tr>
// <td colspan="4">重量:${data?.weight ?? "--"}KG</td>
// <td colspan="4">米数:${data?.length ?? "--"}M</td>
// </tr>
// <tr>
// <td colspan="8">条码:${data?.materieControlNo ?? "--"}</td>
// </tr>
// </table>`;
return
` <div style="display:flex; width:100% ;height:100%; flex-direction: column;justify-self: space-between;">
<div style="display:flex; flex-direction: row;flex:4;">
<div style="display:flex;flex-direction: column;flex:2">
<div style="flex:1">卷料名称:
${
data
?.
materieName
??
"--"
}
<
/div
>
<
div
style
=
"flex:1"
>
卷料编码:
$
{
data
?.
materieCode
??
"--"
}
<
/div
>
<
div
style
=
"flex:1"
>
牌号:
$
{
data
?.
shopSign
??
"--"
}
片
<
/div
>
<
div
style
=
"flex:1"
>
单边卷料厚度:
$
{
data
?.
unilateralThickness
??
"--"
}
mm
<
/div
>
<
/div
>
<
div
style
=
"flex:1"
>
<
img
src
=
$
{
data
?.
qrCodeUrl
}
style
=
"width:90px"
/>
<
/div
>
<
/div
>
<
div
style
=
"display:flex; flex-direction: row;flex:1;"
>
<
div
style
=
"flex:2"
>
铁损:
$
{
data
?.
ironLoss
??
"--"
}
w
/
kg
<
/div
>
<
div
style
=
"flex:3"
>
批次:
$
{
data
?.
materieControlNo
??
"--"
}
<
/div
>
<
/div
>
<
div
style
=
"display:flex; flex-direction: row;flex:1;"
>
<
div
style
=
"flex:2"
>
宽度:
$
{
data
?.
width
??
"--"
}
mm
<
/div
>
<
div
style
=
"flex:3"
>
片厚:
$
{
data
?.
sheetThickness
??
"--"
}
mm
<
/div
>
<
/div
>
<
div
style
=
"display:flex; flex-direction: row;flex:1;"
>
<
div
style
=
"flex:2"
>
重量:
$
{
data
?.
weight
??
"--"
}
KG
<
/div
>
<
div
style
=
"flex:3"
>
米数:
$
{
data
?.
length
??
"--"
}
M
<
/div
>
<
/div
>
<
div
style
=
"display:flex; flex-direction: row;flex:1;"
>
<
div
style
=
"flex:1"
>
条码:
$
{
data
?.
materieControlNo
??
"--"
}
<
/div
>
<
/div
>
<
/div>`
;
}
src/utils/printHandle.js
View file @
9d98a45c
import
{
str
}
from
'@/utils/mymodelhtml.js'
export
function
start
()
{
import
{
str
}
from
"@/utils/mymodelhtml.js"
;
import
{
doFetch
}
from
"./doFetch"
;
export
async
function
start
(
url
,
params
)
{
if
(
!
getLodop
)
{
alert
(
"系统检测当前环境未安装相关插件,请先安装C-Lodop插件!"
);
return
;
}
let
LODOP
=
getLodop
();
const
res
=
await
doFetch
({
url
,
params
});
const
data
=
JSON
.
parse
(
JSON
.
stringify
(
res
?.
data
?.
dataList
));
console
.
log
(
data
);
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
const
template
=
str
(
data
[
i
]);
console
.
log
(
template
);
let
LODOP
=
getLodop
();
LODOP
.
PRINT_INIT
(
"task1"
);
LODOP
.
ADD_PRINT_HTM
(
0
,
0
,
"100%"
,
"100%"
,
template
);
LODOP
.
SET_PRINT_PAGESIZE
(
0
,
800
,
600
,
""
);
// LODOP.PREVIEW();
LODOP
.
PRINT
();
}
LODOP
.
PRINT_INIT
(
"task1"
);
LODOP
.
ADD_PRINT_HTM
(
0
,
0
,
"100%"
,
"100%"
,
str
);
LODOP
.
SET_PRINT_PAGESIZE
(
0
,
800
,
600
,
""
);
LODOP
.
PREVIEW
();
// LODOP.PRINT();
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment