From 5b8c78431735954433c0a4cd2df44f1b5c91d313 Mon Sep 17 00:00:00 2001 From: Shaun Chyxion Date: Fri, 24 Feb 2023 00:28:51 +0800 Subject: [PATCH] application filter by owner bug fixes --- .../crm/common/controller/BaseQueryController.java | 1 - .../ambition/crm/controller/AbstractBaseController.java | 7 +++++-- .../ambition/crm/controller/ApplicationController.java | 5 +++-- web/app/templates/customer-application/list.hbs | 1 + 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/server/crm/src/main/java/com/pudonghot/ambition/crm/common/controller/BaseQueryController.java b/server/crm/src/main/java/com/pudonghot/ambition/crm/common/controller/BaseQueryController.java index d43840b..bf2bfa3 100644 --- a/server/crm/src/main/java/com/pudonghot/ambition/crm/common/controller/BaseQueryController.java +++ b/server/crm/src/main/java/com/pudonghot/ambition/crm/common/controller/BaseQueryController.java @@ -1,6 +1,5 @@ package com.pudonghot.ambition.crm.common.controller; -import com.pudonghot.ambition.crm.common.controller.BaseController; import lombok.extern.slf4j.Slf4j; import me.chyxion.tigon.mybatis.Search; import me.chyxion.tigon.model.ViewModel; diff --git a/server/crm/src/main/java/com/pudonghot/ambition/crm/controller/AbstractBaseController.java b/server/crm/src/main/java/com/pudonghot/ambition/crm/controller/AbstractBaseController.java index 2b68705..4e615dc 100644 --- a/server/crm/src/main/java/com/pudonghot/ambition/crm/controller/AbstractBaseController.java +++ b/server/crm/src/main/java/com/pudonghot/ambition/crm/controller/AbstractBaseController.java @@ -278,7 +278,7 @@ public abstract class AbstractBaseController { val joFilters = filters(strFilters); for (val filter : joFilters.entrySet()) { val field = filter.getKey(); - val colProp = filterCol(filter.getKey()); + val colProp = filterCol(field); if (colProp != null) { val col = colProp.getKey(); val filterVal = filter.getValue(); @@ -288,7 +288,10 @@ public abstract class AbstractBaseController { } // type convert 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 { search.eq(col, filterVal); diff --git a/server/crm/src/main/java/com/pudonghot/ambition/crm/controller/ApplicationController.java b/server/crm/src/main/java/com/pudonghot/ambition/crm/controller/ApplicationController.java index 0ed4dbc..b44a7d3 100644 --- a/server/crm/src/main/java/com/pudonghot/ambition/crm/controller/ApplicationController.java +++ b/server/crm/src/main/java/com/pudonghot/ambition/crm/controller/ApplicationController.java @@ -1,6 +1,5 @@ package com.pudonghot.ambition.crm.controller; -import com.pudonghot.ambition.crm.common.controller.BaseQueryController; import lombok.val; import java.util.List; import java.util.Arrays; @@ -25,6 +24,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.beans.factory.annotation.Autowired; import com.pudonghot.ambition.crm.form.create.ApplicationFormForCreate; 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.update.ApplicationImageFormForUpdate; import com.pudonghot.ambition.crm.form.create.ApplicationAttachedFileFormForCreate; @@ -60,9 +60,10 @@ public class ApplicationController @RequestParam(value = "search", required = false) final String strSearch) { - final ListResult> result = + val result = listViewModels(new Search().asc(Application.NAME), start, limit, strSearch, null, filters, null); + result.setAttr("users", userService.listViewModels( new Search().asc(User.EMPLOYEE_ID))); result.setAttr("namePrefixes", diff --git a/web/app/templates/customer-application/list.hbs b/web/app/templates/customer-application/list.hbs index 7b774e9..76e56ea 100644 --- a/web/app/templates/customer-application/list.hbs +++ b/web/app/templates/customer-application/list.hbs @@ -39,6 +39,7 @@ label='Owner Filter' options=model.users value-field='id' + text-field='name' text-exp='$.employeeId ($.name)' }}