jobdone-shared-files 1.1.5 → 1.1.7
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/ProjectContactUserPicker.vue +8 -16
- package/package.json +1 -1
|
@@ -7,12 +7,12 @@
|
|
|
7
7
|
:clear-btn="clearBtn" :opts="optsAdjust" preview-key="organName" :filter-keys="['organName']"
|
|
8
8
|
:selected-data="organPicked" placeholder="所屬公司 / 協力廠商 / 專案成員" searchPlaceholder="文字篩選"
|
|
9
9
|
@select="(v) => selectOrgan(v)" :reset-value="defaultOrgan" />
|
|
10
|
-
|
|
10
|
+
<small class="text-danger mt-1" v-if="organInvalid && !organPicked?.organId">必填</small>
|
|
11
11
|
</div>
|
|
12
12
|
<div class="user-pick-autocomplete-select-box">
|
|
13
|
-
<autocomplete-select ref="userPicker"
|
|
14
|
-
:
|
|
15
|
-
:clear-btn="clearBtn" :disabled="!organPicked?.organId"
|
|
13
|
+
<autocomplete-select ref="userPicker"
|
|
14
|
+
:trigger-class="`${userSelectClass} ${userInvalid && !userPicked?.userId ? 'is-invalid' : ''}`"
|
|
15
|
+
:opts="organPickedUsers" :clear-btn="clearBtn" :disabled="!organPicked?.organId"
|
|
16
16
|
:preview-key="userPicked.userId ? `displayName + ' ( ' + lastName +' ' + firstName + ' ) ' + '( 電話: ' + phoneNumber + ' )'` : 'displayName'"
|
|
17
17
|
:filter-keys="['displayName', 'firstName', 'lastName', 'phoneNumber']" :selected-data="userPicked"
|
|
18
18
|
:placeholder="organPicked?.organId ? '選擇受文者' : '請先選擇受文者所屬公司 / 協力廠商 / 專案成員'"
|
|
@@ -83,27 +83,19 @@ const resetSelected = () => {
|
|
|
83
83
|
const setOrganSelectFirst = () => {
|
|
84
84
|
selectOrgan(optsAdjust.value[0] || defaultOrgan)
|
|
85
85
|
}
|
|
86
|
-
const setSelected = (userId) => {
|
|
86
|
+
const setSelected = async (userId) => {
|
|
87
87
|
if (!userId) {
|
|
88
88
|
resetSelected()
|
|
89
89
|
return
|
|
90
90
|
}
|
|
91
|
-
let userIdList = optsAdjust.value.flatMap(i => i.users
|
|
92
|
-
{
|
|
93
|
-
...item,
|
|
94
|
-
organization: {
|
|
95
|
-
organName: i.organName,
|
|
96
|
-
organId: i.organId,
|
|
97
|
-
users: i.users
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
))) || []
|
|
91
|
+
let userIdList = optsAdjust.value.flatMap(i => i.users) || []
|
|
101
92
|
let user = userIdList.find(i => i.userId == userId)
|
|
102
93
|
if (!user) {
|
|
103
94
|
resetSelected()
|
|
104
95
|
return
|
|
105
96
|
}
|
|
106
|
-
|
|
97
|
+
|
|
98
|
+
selectOrgan(optsAdjust.find(i => i.organId == user.organization?.id))
|
|
107
99
|
selectUser(user, true)
|
|
108
100
|
}
|
|
109
101
|
|