application filter by owner bug fixes

This commit is contained in:
Shaun Chyxion 2023-02-24 00:28:51 +08:00
parent 587b9c633f
commit 5b8c784317
4 changed files with 9 additions and 5 deletions

View File

@ -1,6 +1,5 @@
package com.pudonghot.ambition.crm.common.controller; package com.pudonghot.ambition.crm.common.controller;
import com.pudonghot.ambition.crm.common.controller.BaseController;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import me.chyxion.tigon.mybatis.Search; import me.chyxion.tigon.mybatis.Search;
import me.chyxion.tigon.model.ViewModel; import me.chyxion.tigon.model.ViewModel;

View File

@ -278,7 +278,7 @@ public abstract class AbstractBaseController {
val joFilters = filters(strFilters); val joFilters = filters(strFilters);
for (val filter : joFilters.entrySet()) { for (val filter : joFilters.entrySet()) {
val field = filter.getKey(); val field = filter.getKey();
val colProp = filterCol(filter.getKey()); val colProp = filterCol(field);
if (colProp != null) { if (colProp != null) {
val col = colProp.getKey(); val col = colProp.getKey();
val filterVal = filter.getValue(); val filterVal = filter.getValue();
@ -288,7 +288,10 @@ public abstract class AbstractBaseController {
} }
// type convert // type convert
if (filterVal instanceof Collection) { if (filterVal instanceof Collection) {
search.eq(col, jsonService.convert((Collection) filterVal, colProp.getValue())); val values = jsonService.convert((Collection) filterVal, colProp.getValue());
if (!values.isEmpty()) {
search.in(col, values);
}
} }
else { else {
search.eq(col, filterVal); search.eq(col, filterVal);

View File

@ -1,6 +1,5 @@
package com.pudonghot.ambition.crm.controller; package com.pudonghot.ambition.crm.controller;
import com.pudonghot.ambition.crm.common.controller.BaseQueryController;
import lombok.val; import lombok.val;
import java.util.List; import java.util.List;
import java.util.Arrays; import java.util.Arrays;
@ -25,6 +24,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import com.pudonghot.ambition.crm.form.create.ApplicationFormForCreate; import com.pudonghot.ambition.crm.form.create.ApplicationFormForCreate;
import com.pudonghot.ambition.crm.form.update.ApplicationFormForUpdate; import com.pudonghot.ambition.crm.form.update.ApplicationFormForUpdate;
import com.pudonghot.ambition.crm.common.controller.BaseQueryController;
import com.pudonghot.ambition.crm.form.create.ApplicationImageFormForCreate; import com.pudonghot.ambition.crm.form.create.ApplicationImageFormForCreate;
import com.pudonghot.ambition.crm.form.update.ApplicationImageFormForUpdate; import com.pudonghot.ambition.crm.form.update.ApplicationImageFormForUpdate;
import com.pudonghot.ambition.crm.form.create.ApplicationAttachedFileFormForCreate; import com.pudonghot.ambition.crm.form.create.ApplicationAttachedFileFormForCreate;
@ -60,9 +60,10 @@ public class ApplicationController
@RequestParam(value = "search", required = false) @RequestParam(value = "search", required = false)
final String strSearch) { final String strSearch) {
final ListResult<ViewModel<Application>> result = val result =
listViewModels(new Search().asc(Application.NAME), listViewModels(new Search().asc(Application.NAME),
start, limit, strSearch, null, filters, null); start, limit, strSearch, null, filters, null);
result.setAttr("users", userService.listViewModels( result.setAttr("users", userService.listViewModels(
new Search().asc(User.EMPLOYEE_ID))); new Search().asc(User.EMPLOYEE_ID)));
result.setAttr("namePrefixes", result.setAttr("namePrefixes",

View File

@ -39,6 +39,7 @@
label='Owner Filter' label='Owner Filter'
options=model.users options=model.users
value-field='id' value-field='id'
text-field='name'
text-exp='$.employeeId ($.name)' text-exp='$.employeeId ($.name)'
}} }}
</th> </th>