liuyn
2024-03-11 a87f1c3df03078814ee97ad0c8ac200a232419e9
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
<!-- sldsValidatorIgnore -->
<!-- sldsValidatorIgnore -->
<template>
    <!-- 展示 -->
    <section role="dialog" tabindex="-1" aria-modal="true" aria-labelledby="modal-heading-01"
        class="slds-modal slds-fade-in-open slds-modal_medium">
        <template lwc:if={isLoading}>
            <lightning-spinner size="large" alternative-text="Loading"></lightning-spinner>
        </template>
        <c-common-toast></c-common-toast>
        <div class="slds-modal__container">
            <button class="slds-button slds-button_icon slds-modal__close slds-button_icon-inverse" title="Close"
                onclick={cancel}>
                <lightning-icon icon-name="utility:close" alternative-text="close" variant="inverse"
                    size="small"></lightning-icon>
                <span class="slds-assistive-text">Close</span>
            </button>
            <div class="slds-modal__header">
                <h1 id="modal-heading-01" class="slds-modal__title slds-hyphenate">{title}</h1>
            </div>
            <div class="slds-scrollable">
                <div class="slds-modal__content" id="modal-content-id-1">
                    <lightning-card style="height: 500px; display:block;position: relative;">
                        <div slot="actions"><span style="color: red;">*</span> = 必填信息</div>
                        <lightning-record-edit-form object-api-name={sobjectType} record-type-id={recordTypeId}
                            record-id={recordId} onsubmit={handleSubmit} onsuccess={handleSuccess} onerror={handleError}
                            onload={handleLoad} class="lightning-edit-form">
                            <template for:each={layout} for:item="layoutSection">
                                <lightning-accordion class="greyyyy" active-section-name={sectionName}
                                    allow-multiple-sections-open key={layoutSection.name}>
                                    <article class="slds-card" lwc:if={layoutSection.showLabel}>
                                        <div class="slds-card__header slds-grid" lwc:if={layoutSection.showSection}>
                                            <header class="slds-media slds-media_center slds-has-flexi-truncate">
                                                <div class="slds-media__body">
                                                    <h3 class="slds-card__header-title">
                                                        <span
                                                            class="test-id__section-header-title section-header-title slds-p-horizontal--small">{layoutSection.label}</span>
                                                    </h3>
                                                </div>
                                            </header>
                                        </div>
                                        <div class="slds-card__body slds-card__body_inner">
                                            
                                            <lightning-layout multiple-rows="true">
                                                <template for:each={layoutSection.layoutColumns}
                                                    for:item="layoutColumns">
                                                    <template for:each={layoutColumns.layoutItems}
                                                        for:item="layoutField">
                                                        <lightning-layout-item class="hehe-layoutItem" size="6"
                                                            key={layoutField.index1}>
                                                            <lightning-layout multiple-rows="true">
                                                                <lightning-layout-item class="hehe-layoutItem"
                                                                    size="1"></lightning-layout-item>
                                                                <lightning-layout-item class="hehe-layoutItem"
                                                                    size="10">
                                                                    <template if:false={layoutField.isModify}>
                                                                        <lightning-input label="emptySpace" value=""
                                                                            style="visibility:hidden;"
                                                                            key={layoutField.emptySpace}
                                                                            lwc:if={layoutField.emptySpace}></lightning-input>
                                                                        <lightning-input-field field-name={layoutField.field}
                                                                            value={layoutField.value}
                                                                            required={layoutField.isRequired}
                                                                            data-field={layoutField.field}
                                                                            key={layoutField.field}
                                                                            disabled={layoutField.isDisable}
                                                                            onchange={dataChange} style="min-height: 44px;"
                                                                            lwc:else>
                                                                        </lightning-input-field>
                                                                    </template>
                                                                    <template if:true={layoutField.isModify}>
                                                                        <lightning-input label={layoutField.fieldLabel}
                                                                            value={layoutField.value}
                                                                            required={layoutField.isRequired}
                                                                            data-field={layoutField.field}
                                                                            variant="label-inline" onchange={dataChange}
                                                                            key={layoutField.field}
                                                                            disabled={layoutField.isDisable}
                                                                            style="height: 44px;">
                                                                        </lightning-input>
                                                                    </template>
                                                                </lightning-layout-item>
                                                            </lightning-layout>
                                                        </lightning-layout-item>
                                                    </template>
                                                </template>
                                            </lightning-layout>
                                        </div>
                                    </article>
                                </lightning-accordion>
                            </template>
                            <div class="slds-text-align_center">
                                <lightning-button type="submit" class="hidden" style="display:none"></lightning-button>
                            </div>
                        </lightning-record-edit-form>
                    </lightning-card>
                </div>
            </div>
            <div class="slds-modal__footer">
                <div class="slds-text-align_center">
                    <lightning-button label="取消" onclick={cancel} class="slds-m-right_x-small"></lightning-button>
                    <lightning-button label="保存并新建" onclick={clickSubmitAndNew}
                        class="slds-m-right_x-small"></lightning-button>
                    <lightning-button label="保存" type="submit" onclick={clickSubmit} class="slds-m-right_x-small"
                        variant="brand"></lightning-button>
                </div>
            </div>
        </div>
    </section>
    <div class="slds-backdrop slds-backdrop_open"></div>
</template>