Skip to content

Commit

Permalink
Merge pull request #613 from R-Sourabh/#611-improve-picker-fetch
Browse files Browse the repository at this point in the history
Improved: The fetching logic of assigned picker by using a Solr-query instead of perform find (#611)
  • Loading branch information
ravilodhi authored Sep 26, 2024
2 parents 53565be + b387bde commit d4beb1a
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 41 deletions.
7 changes: 3 additions & 4 deletions src/services/UtilService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -271,10 +271,9 @@ const fetchRejectReasons = async(query: any): Promise<any> => {

const getAvailablePickers = async (query: any): Promise <any> => {
return api({
url: 'performFind',
method: 'get',
params: query,
cache: true
url: "solr-query",
method: "post",
data: query,
})
}

Expand Down
56 changes: 19 additions & 37 deletions src/views/AssignPickerModal.vue
Original file line number Diff line number Diff line change
Expand Up @@ -190,54 +190,36 @@ export default defineComponent({
},
async findPickers() {
this.isLoading = true;
let inputFields = {}
let query = {}
this.pickers = []
if(this.queryString.length > 0) {
inputFields = {
firstName_value: this.queryString,
firstName_op: 'contains',
firstName_ic: 'Y',
firstName_grp: '1',
externalId_value: this.queryString,
externalId_op: 'contains',
externalId_ic: 'Y',
externalId_grp: '2',
lastName_value: this.queryString,
lastName_op: 'contains',
lastName_ic: 'Y',
lastName_grp: '3',
partyId_value: this.queryString,
partyId_op: 'contains',
partyId_ic: 'Y',
partyId_grp: '4',
groupName_value: this.queryString,
groupName_op: 'contains',
groupName_ic: 'Y',
groupName_grp: '5'
}
let keyword = this.queryString.trim().split(' ')
query = `(${keyword.map(key => `*${key}*`).join(' OR ')}) OR "${this.queryString}"^100`;
}
else {
query = `*:*`
}
const payload = {
inputFields: {
...inputFields,
roleTypeIdTo: 'WAREHOUSE_PICKER'
},
viewSize: 50,
entityName: 'PartyRelationshipAndDetail',
noConditionFind: 'Y',
orderBy: "firstName ASC",
filterByDate: "Y",
distinct: "Y",
fieldList: ["firstName", "groupName", "lastName", "partyId", "externalId"]
"json": {
"params": {
"rows": "50",
"q": query,
"defType" : "edismax",
"qf": "firstName lastName groupName partyId externalId",
"sort": "firstName asc"
},
"filter": ["docType:EMPLOYEE", "WAREHOUSE_PICKER_role:true"]
}
}
try {
const resp = await UtilService.getAvailablePickers(payload);
if (resp.status === 200 && !hasError(resp)) {
this.pickers = resp.data.docs.map((picker) => ({
name: picker.groupName ? picker.groupName : picker.firstName + ' ' + picker.lastName,
this.pickers = resp.data.response.docs.map((picker) => ({
name: picker.groupName ? picker.groupName : (picker.firstName || picker.lastName)
? (picker.firstName ? picker.firstName : '') + (picker.lastName ? ' ' + picker.lastName : '') : picker.partyId,
id: picker.partyId,
externalId: picker.externalId
}))
Expand Down

0 comments on commit d4beb1a

Please sign in to comment.