diff --git a/src/main/java/com/xujie/modules/order/support/PoDetailAdvancedQuerySupport.java b/src/main/java/com/xujie/modules/order/support/PoDetailAdvancedQuerySupport.java
index d008605..74d68ef 100644
--- a/src/main/java/com/xujie/modules/order/support/PoDetailAdvancedQuerySupport.java
+++ b/src/main/java/com/xujie/modules/order/support/PoDetailAdvancedQuerySupport.java
@@ -75,7 +75,7 @@ public final class PoDetailAdvancedQuerySupport {
map.put("advancePayment", new FieldMeta("pod.c_advance_payment", "string"));
map.put("advancePaid", new FieldMeta("pod.c_advance_paid", "string"));
map.put("createTime", new FieldMeta("pod.create_time", "date"));
- map.put("planner", new FieldMeta("pod.c_planner", "string"));
+ map.put("planner", new FieldMeta("ISNULL(suPlanner.user_display, poh.c_planner)", "string"));
map.put("edit", new FieldMeta("pod.c_edit", "string"));
map.put("endPlanner", new FieldMeta("pod.c_end_planner", "string"));
map.put("remarkDelay", new FieldMeta("pod.c_remark_delay", "string"));
diff --git a/src/main/java/com/xujie/modules/order/support/PoFieldAuthSupport.java b/src/main/java/com/xujie/modules/order/support/PoFieldAuthSupport.java
index dc43d7b..84304cc 100644
--- a/src/main/java/com/xujie/modules/order/support/PoFieldAuthSupport.java
+++ b/src/main/java/com/xujie/modules/order/support/PoFieldAuthSupport.java
@@ -228,7 +228,7 @@ public class PoFieldAuthSupport {
rawValue = PoOrderTypeSupport.normalizeOrderTypeFilter(rawValue);
}
ValidatedQueryCondition validated = new ValidatedQueryCondition();
- validated.setSqlExpression(meta.getQuerySqlExpr());
+ validated.setSqlExpression(resolveQuerySqlExpr(meta));
validated.setOperator(operator);
validated.setValue(rawValue);
validated.setDataType(meta.getQueryDataType());
@@ -435,6 +435,16 @@ public class PoFieldAuthSupport {
return StringUtils.hasText(meta.getDictType()) ? meta.getDictType().trim() : null;
}
+ private String resolveQuerySqlExpr(PoFieldMeta meta) {
+ if (meta == null || !StringUtils.hasText(meta.getQuerySqlExpr())) {
+ return meta == null ? null : meta.getQuerySqlExpr();
+ }
+ if ("planner".equals(normalizeFieldCode(meta.getFieldCode()))) {
+ return "ISNULL(suPlanner.user_display, poh.c_planner)";
+ }
+ return meta.getQuerySqlExpr();
+ }
+
private String resolveExtEditorType(String dataType, String dictType) {
if (StringUtils.hasText(dictType)) {
return "dict-select";
diff --git a/src/main/resources/mapper/inspection/InspectionRequestHeaderMapper.xml b/src/main/resources/mapper/inspection/InspectionRequestHeaderMapper.xml
index 9e25309..0183fc4 100644
--- a/src/main/resources/mapper/inspection/InspectionRequestHeaderMapper.xml
+++ b/src/main/resources/mapper/inspection/InspectionRequestHeaderMapper.xml
@@ -29,7 +29,7 @@
- h.site, h.request_no, h.request_date, h.need_inspect_date, h.supplier_no, h.planner, h.create_by, h.create_date, h.inspect_address, h.inspect_contract, h.remark, h.status, h.status_db, h.qc_operator, h.inspect_date, h.plan_start_date, h.plan_end_date, h.scheduled_date, h.scheduled_by, h.schedule_remark, s.supplier_name
+ h.site, h.request_no, h.request_date, h.need_inspect_date, h.supplier_no, ISNULL(dbo.plm_get_user_display(h.site, h.planner), h.planner) AS planner, h.create_by, h.create_date, h.inspect_address, h.inspect_contract, h.remark, h.status, h.status_db, h.qc_operator, h.inspect_date, h.plan_start_date, h.plan_end_date, h.scheduled_date, h.scheduled_by, h.schedule_remark, s.supplier_name
@@ -150,7 +156,7 @@
poh.ship_via AS shipMethod,
poh.supplier_no AS supplierNo,
ss.supplier_name AS supplierName,
- poh.c_planner AS planner
+ ISNULL(dbo.plm_get_user_display(poh.site, poh.c_planner), poh.c_planner) AS planner
FROM PODetail pod
INNER JOIN POHeader poh
ON poh.order_no = pod.order_no
@@ -191,7 +197,10 @@
AND ss.supplier_name like concat('%',#{query.supplierName},'%')
- AND ISNULL(poh.c_planner, '') like concat('%',#{query.planner},'%')
+ AND (
+ ISNULL(poh.c_planner, '') like concat('%',#{query.planner},'%')
+ OR ISNULL(dbo.plm_get_user_display(poh.site, poh.c_planner), '') like concat('%',#{query.planner},'%')
+ )
ORDER BY ISNULL(pod.c_crd,pod.want_receive_date) DESC, pod.id DESC
diff --git a/src/main/resources/mapper/order/PODetailMapper.xml b/src/main/resources/mapper/order/PODetailMapper.xml
index 1990c3e..cb9b1ed 100644
--- a/src/main/resources/mapper/order/PODetailMapper.xml
+++ b/src/main/resources/mapper/order/PODetailMapper.xml
@@ -163,7 +163,10 @@
and c_advance_payment = #{advancePayment} and c_advance_paid = #{advancePaid} and create_time = #{createTime}
- and c_planner = #{planner}
+
+ and (c_planner = #{planner}
+ or ISNULL(dbo.plm_get_user_display(site, c_planner), '') = #{planner})
+ and c_edit = #{edit} and c_end_planner = #{endPlanner} and c_remark_delay = #{remarkDelay}
@@ -220,7 +223,7 @@
,pod.c_advance_payment as advancePayment
,pod.c_advance_paid as advancePaid
,pod.create_time as createTime
- ,pod.c_planner as planner
+ ,ISNULL(suPlanner.user_display, poh.c_planner) as planner
,pod.c_edit as edit
,pod.c_end_planner as endPlanner
,pod.c_remark_delay as remarkDelay
@@ -262,6 +265,7 @@
from PODetail pod
left join POHeader poh on poh.order_no = pod.order_no
left join srm_supplier ss on ss.supplier_no = poh.supplier_no and ss.site = pod.site
+ left join sys_user suPlanner on suPlanner.site = poh.site and suPlanner.username = poh.c_planner
left join part p on p.part_no = pod.part_no and p.site = pod.site
left join part_family pf1 on p.site = pf1.site and p.category = pf1.family_id
where pod.site = '${query.site}'
@@ -328,7 +332,10 @@
and pod.c_advance_payment like '%${query.advancePayment}%' and pod.c_advance_paid like '%${query.advancePaid}%' and pod.create_time like '%${query.createTime}%'
- and pod.c_planner like '%${query.planner}%'
+
+ and (poh.c_planner like '%${query.planner}%'
+ or ISNULL(suPlanner.user_display, '') like '%${query.planner}%')
+ and pod.c_edit like '%${query.edit}%' and pod.c_end_planner like '%${query.endPlanner}%' and pod.c_remark_delay like '%${query.remarkDelay}%'
@@ -388,7 +395,7 @@
,pod.c_advance_payment as advancePayment
,pod.c_advance_paid as advancePaid
,pod.create_time as createTime
- ,pod.c_planner as planner
+ ,ISNULL(suPlanner.user_display, poh.c_planner) as planner
,pod.c_edit as edit
,pod.c_end_planner as endPlanner
,pod.c_remark_delay as remarkDelay
@@ -434,6 +441,7 @@
and exv.order_no = pod.order_no
and exv.item_no = pod.item_no
left join srm_supplier ss on ss.supplier_no = poh.supplier_no and ss.site = pod.site
+ left join sys_user suPlanner on suPlanner.site = poh.site and suPlanner.username = poh.c_planner
left join part p on p.part_no = pod.part_no and p.site = pod.site
left join part_family pf1 on p.site = pf1.site and p.category = pf1.family_id
where pod.site = #{query.site}
diff --git a/src/main/resources/mapper/order/POHeaderMapper.xml b/src/main/resources/mapper/order/POHeaderMapper.xml
index 83f16a9..5a964d1 100644
--- a/src/main/resources/mapper/order/POHeaderMapper.xml
+++ b/src/main/resources/mapper/order/POHeaderMapper.xml
@@ -55,7 +55,8 @@