tom
2023-12-06 9e968679ed2e6937aeb7b50a6c450d5d19251f42
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <title>相关发票编辑</title>
        <script src="../../js/vue/vue.js"></script>
        <script src="../../js/vue/element-ui/lib/index.js"></script>
        <!-- <script src="../../../../js/vue/elementDefault.js"></script> -->
        <script src="../../js/vue/page.js"></script>
        <script src="../../js/myelement.js"></script>
        <!-- <script src="../../../../data/data.js"></script> -->
        
        <link href="../../js/vue/element-ui/lib/theme-chalk/index.css" rel="stylesheet">
        <link href="../../css/myelement.css" rel="stylesheet">
        <link href="../../css/iconfont.css" rel="stylesheet">
        <link href="../../css/page.css" rel="stylesheet">
        <link href="//at.alicdn.com/t/font_2374495_mkoo966o0uo.css" rel="stylesheet">
    </head>
    
    <body>
        <div id="vbody">
            <div id="page_root">
                <div ref="popup_body">
                    <div class="el-dialog__header">
                        <div class="dialog-title">
                          <i class="iconfont icon-customermanagement"></i>
                          <span> {{formAttr.title}} </span>
                        </div>
                    </div>    
                    <div style="height: 250px; overflow-y: auto;">
                        <div class="el-dialog__body">
                            <h-table
                                v-if="isRefresh"
                                ref="table2"
                                :table-fields="tableFields" 
                                :table-data="tableData2" 
                                :is-within-edit-table-data= "isWithinEditTableData"
                                :pagesize="pagesize"
                                :pagenum="pagenum"
                                :total="total"
                                :table-height="tableHeight2"
                                :is-pagination="false"
                                :is-show-index="true"
                            >
                            </h-table>
                        </div>
                    </div>
                    <div class="el-dialog__footer">
                      <el-button type="default" @click="closeDialog">取 消</el-button>
                    </div>
                </div>
            </div>
            
            <div id="page_loading" style="position: absolute; top:0px; width: 100vw; height: 100vh;">
                <div class="spinner">
                  <div class="cube1"></div>
                  <div class="cube2"></div>
                </div>
            </div>
        </div>    
        
        <script type="text/javascript">
            new Vue({
                el: "#vbody",
                data: {
                    formAttr: {
                        istitle: false,
                        title: "相关发票",
                        columnnumber: 2,
                        labelwidth: "100px",
                        labelposition: "right",
                        size: "medium",
                        border: "0px solid #c6c6c600"
                    },
                    authorize: {
                        edit: true,
                    },
                    tableFields: [
                        {field: "field1", name: "", isshow: "F"},
                        {field: "field2", name: "单位名称", isshow: "T", align: "center", type: "input", required: true},
                        {field: "field3", name: "税号", isshow: "T", align: "center", width: "150", required: true, type: "input"},
                        {field: "field4", name: "开票日期", isshow: "T", align: "center", width: "150", type: "input"},
                        {field: "field5", name: "金额", isshow: "T", align: "center", width: "60", type: "input"},
                        {field: "field6", name: "发票类型", isshow: "T", align: "center", width: "120", type: "input"},
                        {field: "field7", name: "发票号", isshow: "T", align: "center", width: "170", type: "input"},
                        {field: "field8", name: "税率", isshow: "T", align: "center", width: "50", type: "input"},
                    ],
                    pagesize: 5,
                    pagenum: 1,
                    total: 0,
                    tableData_old: [],
                    tableData_new: [],
                    tableData2: [],
                    tableData: [],
                    tableHeight2: 180,
                    urlImg2: "./img/wushuju.png",
                    isEditTableData:true,
                    isWithinEditTableData:false,
                    formData: {},
                    isRefresh: true,
                    selectFormField: {},
                    popupByFieldsDialog: false,
                    
                    selectrow: {}
                },
                
                created() {
                    this.tableData_new = dataRoot.database.dispatchInvoiceDetail;
                    this.tableData_old = clone(dataRoot.database.dispatchInvoiceDetail);
                    this.popupParames = clone(Root.popupParames);
                },
                
                mounted() {
                    //this.initTableData();
                    if (this.popupParames.data) {
                        this.formData = clone(this.popupParames.data);
                        let  result = [];
                        if (this.formData.field1) {
                            result = this.tableData_new.filter(item => {
                                let bo = true;
                                let k_val = this.formData.field1;
                                let bo_ = item.field1.toLowerCase().indexOf(k_val.toLowerCase()) > -1;
                                if (!bo_) {
                                    return false;
                                }
                                return bo;
                            });
                        }
                        console.info(result)
                        this.tableData2 = result;
                    }
                    this.$nextTick(() => { // 以服务的方式调用的 Loading 需要异步关闭
                        document.getElementById('page_root').style.display =  "block";
                        document.getElementById('page_loading').style.display =  "none";
                        
                        //重新设置弹窗宽高
                        this.$nextTick(function(){
                            let w_ = this.$refs.popup_body.offsetWidth + "px";
                            let h_ = this.$refs.popup_body.offsetHeight + "px";
                            Root.setPopupWH(w_, h_);
                        })
                    });
                },
                
                methods:{
                    closeDialog() {
                        Root.hidePopup();
                    },
                }
            });
        </script>
    </body>
</html>