From e69cc83c653ce78691aad2eedd4c71ca70f559c4 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 15 二月 2023 17:53:46 +0800
Subject: [PATCH] 2023-02-15

---
 src/tabviews/custom/components/module/voucher/index.jsx |   31 +++++++++++++++----------------
 1 files changed, 15 insertions(+), 16 deletions(-)

diff --git a/src/tabviews/custom/components/module/voucher/index.jsx b/src/tabviews/custom/components/module/voucher/index.jsx
index b5cef0f..a670376 100644
--- a/src/tabviews/custom/components/module/voucher/index.jsx
+++ b/src/tabviews/custom/components/module/voucher/index.jsx
@@ -12,8 +12,10 @@
 import ResetRemark from './resetRemark'
 import ResetAttach from './resetAttach'
 import LoadFromTemp from './loadFromTemp'
+import asyncComponent from '@/utils/asyncComponent'
 import './index.scss'
 
+const PrintVoucher = asyncComponent(() => import('./printVoucher'))
 const { confirm } = Modal
 
 class VoucherModule extends Component {
@@ -80,8 +82,8 @@
       }
     }
 
-    // config.wrap.type = 'checkVoucher'
-    // BID = '20230214130744811P0K95RQ155KG0QIQOFV'
+    config.wrap.type = 'checkVoucher'
+    BID = '20230214130744811P0K95RQ155KG0QIQOFV'
 
     // config.wrap.type = 'checkTemp'
     // BID = '20230214174458780MFR8IA576ON4VKNOLVH'
@@ -906,10 +908,6 @@
     })
   }
 
-  triggerprint = () => {
-
-  }
-
   dataChange = (data) => {
     this.setState({
       status: 'change',
@@ -926,12 +924,13 @@
       _val = parseInt(val)
     }
     
-    this.setState({attachments: _val})
+    this.setState({attachments: _val, status: 'change'})
   }
 
   changeVouDate = (val) => {
     const { type, status, saved } = this.state
-    this.setState({vouDate: val})
+
+    this.setState({vouDate: val, status: 'change'})
 
     if (type === 'createVoucher' && val && !saved && (status === 'empty' || status === 'change')) {
       this.updateVoucherChar(val)
@@ -1011,7 +1010,7 @@
       num = 0
     }
 
-    this.setState({attachlist: vals, attachments: num})
+    this.setState({status: 'change', attachlist: vals, attachments: num})
   }
 
   triggermore = () => {
@@ -1095,14 +1094,14 @@
   }
 
   render() {
-    const { type, status, loading, config, orgcode, typeOptions, tempTypes, charType, charInt, data, vouDate, username, remark, attachments, title, attachlist, tempTypeClass } = this.state
+    const { type, status, loading, config, orgcode, orgname, typeOptions, tempTypes, charType, charName, charInt, data, vouDate, username, remark, attachments, title, attachlist, tempTypeClass } = this.state
 
     return (
       <div className="menu-voucher-wrap" style={config.style}>
         {type === 'createVoucher' ? <div className="voucher-header">
           <Button className="add-background header-btn" disabled={status === 'empty'} onClick={() => this.triggersave('add')}>淇濆瓨骞舵柊澧�</Button>
           <Button className="add-background header-btn" disabled={status === 'empty' || status === 'saved'} onClick={() => this.triggersave()}>淇濆瓨</Button>
-          <Button className="print-background header-btn" disabled={status !== 'saved'} onClick={this.triggerprint}>鎵撳嵃</Button>
+          <PrintVoucher ID={config.uuid + 'print'} data={data} orgname={orgname} vouDate={vouDate} charName={charName} charInt={charInt} attachments={attachments} disabled={status !== 'saved'}/>
           <Dropdown overlay={<div className="mk-voucher-dropdown-wrap">
             <SaveAsTemp tempTypes={tempTypes} onChange={this.triggerTempsave}/>
             <div className="split"></div>
@@ -1113,29 +1112,29 @@
         </div> : null}
         {type === 'checkVoucher' ? <div className="voucher-header">
           <Button className="add-background header-btn" disabled={status === 'empty' || status === 'saved'} onClick={() => this.triggersave()}>淇濆瓨</Button>
-          <Button className="print-background header-btn" disabled={status !== 'saved'} onClick={this.triggerprint}>鎵撳嵃</Button>
+          <PrintVoucher ID={config.uuid + 'print'} data={data} orgname={orgname} vouDate={vouDate} charName={charName} charInt={charInt} attachments={attachments} disabled={status !== 'saved'}/>
           <Button className="out-background header-btn" onClick={this.triggerclose}>鍏抽棴</Button>
         </div> : null}
         <div className="voucher-body" style={{padding: `0px ${config.wrap.space || 0}px`}}>
           {type === 'createVoucher' || type === 'checkVoucher' ? <div className="pre-wrap">
             <div className="voucher-code">
-              <Select value={charType} dropdownClassName="mk-vcode-dropdown" onChange={(val, option) => this.setState({charType: val, charName: option.props.charName, charInt: option.props.charint})}>
+              <Select value={charType} dropdownClassName="mk-vcode-dropdown" onChange={(val, option) => this.setState({status: 'change', charType: val, charName: option.props.charName, charInt: option.props.charint})}>
                 {typeOptions.map(option =>
                   <Select.Option key={option.voucher_char_int} value={option.voucher_class} charName={option.voucher_char} charint={option.voucher_char_int}>{option.voucher_char}</Select.Option>
                 )}
               </Select>
-              <InputNumber precision={0} min={1} value={charInt} autoComplete="off" onChange={(val) => this.setState({charInt: val})}/> 鍙�
+              <InputNumber precision={0} min={1} value={charInt} autoComplete="off" onChange={(val) => this.setState({status: 'change', charInt: val})}/> 鍙�
             </div>
             <div className="voucher-date">
               鏃ユ湡锛�<DatePicker value={vouDate} onChange={this.changeVouDate}/>
             </div>
             <div className="voucher-text">
-              <Input value={title} placeholder="鍑瘉鏂囨湰" autoComplete="off" onChange={(e) => this.setState({title: e.target.value})}/>
+              <Input value={title} placeholder="鍑瘉鏂囨湰" autoComplete="off" onChange={(e) => this.setState({status: 'change', title: e.target.value})}/>
             </div>
             <div className="voucher-affix">
               闄勫崟鎹� <InputNumber precision={0} value={attachments || 0} autoComplete="off" onChange={this.changeAttach}/> 寮�
               <ResetAttach config={config} orgcode={orgcode} voucherCode={this.state.voucherCode} attachlist={attachlist} onChange={this.resetAttachList}/>
-              <ResetRemark remark={remark} ID={config.uuid + 'remark'} onChange={(val) => this.setState({remark: val})}/>
+              <ResetRemark remark={remark} ID={config.uuid + 'remark'} onChange={(val) => this.setState({status: 'change', remark: val})}/>
             </div>
           </div> : null}
           {type === 'createTemp' || type === 'checkTemp' ? <div className="pre-temp-wrap">

--
Gitblit v1.8.0