<?xml version="1.0" encoding="UTF-8" ?>
|
|
<sqls>
|
<dataSpace name="order">
|
|
<sql name="refreshRebateAmtUsed">
|
<![CDATA[
|
update rebate_amt_detail set amt_used = (
|
select sum(so_order_detail_rebate.amt) from so_order
|
left join so_order_detail_rebate on so_order_detail_rebate.parent_id = so_order.id
|
where so_order.customer_id = rebate_amt_detail.account_id
|
and so_order.state_code = 'Open'
|
), amt_freeze = (
|
select sum(so_order_detail_rebate.amt) from so_order
|
left join so_order_detail_rebate on so_order_detail_rebate.parent_id = so_order.id
|
where so_order.customer_id = rebate_amt_detail.account_id
|
and so_order.state_code = 'UnderApproval'
|
)
|
where rebate_amt_detail.account_id = '@{account_id}'
|
]]>
|
</sql>
|
|
<sql name="refreshRebateAmtAvailable">
|
<![CDATA[
|
update rebate_amt_detail set amt_net = amt_book - amt_used,
|
amt_available = amt_book - amt_used - amt_freeze
|
where rebate_amt_detail.account_id = '@{account_id}'
|
]]>
|
</sql>
|
|
<sql name="refreshRebateQtyUsed">
|
<![CDATA[
|
update rebate_qty_detail set qty_used = (
|
select sum(so_order_detail.qty) from so_order
|
left join so_order_detail on so_order_detail.parent_id = so_order.id
|
where so_order.customer_id = rebate_qty_detail.account_id
|
and so_order.state_code = 'Open' and so_order_detail.type_code = 'gift'
|
), qty_freeze = (
|
select sum(so_order_detail.qty) from so_order
|
left join so_order_detail on so_order_detail.parent_id = so_order.id
|
where so_order.customer_id = rebate_qty_detail.account_id
|
and so_order.state_code = 'UnderApproval' and so_order_detail.type_code = 'gift'
|
)
|
where rebate_qty_detail.account_id = '@{account_id}'
|
]]>
|
</sql>
|
|
<sql name="refreshRebateQtyAvailable">
|
<![CDATA[
|
update rebate_qty_detail set qty_net = qty_book - qty_used,
|
qty_available = qty_book - qty_used - qty_freeze
|
where rebate_qty_detail.account_id = '@{account_id}'
|
]]>
|
</sql>
|
|
</dataSpace>
|
|
<dataSpace name="implant">
|
<sql name="getImplantPositionHierarchy">
|
<![CDATA[
|
select md_position_hierarchy.* from md_position_hierarchy
|
where exists(
|
select 1 from md_channel_structure
|
where md_channel_structure.hospital_id = '@{hospitalId}' and md_position_hierarchy.position_id = md_channel_structure.position_id
|
)
|
]]>
|
</sql>
|
|
<sql name="getPositionEmployee">
|
<![CDATA[
|
select distinct md_position.id position_id, md_position.name position_name, md_employee.code employee_code,md_employee.name employee_name
|
from md_position
|
left join md_position_employee on md_position.id = md_position_employee.position_id
|
left join md_employee on md_employee.id = md_position_employee.employee_id
|
where md_position.id = '@{positionId}'
|
]]>
|
</sql>
|
|
</dataSpace>
|
<dataSpace name="order-setting">
|
|
<sql name="getOrderSettingLastUpdateTime">
|
<![CDATA[
|
select max(update_time) from (
|
select max(update_time) as update_time from so_order_setting
|
union all
|
select max(update_time) as update_time from so_order_setting_rule
|
)tbl
|
]]>
|
</sql>
|
|
<sql name="getOneBUCheckRules">
|
<![CDATA[
|
select * from (
|
select so_order_setting_rule.id, so_order_setting_rule.bu_id,
|
so_order_setting_rule.is_active, so_order_setting_rule.value,
|
so_order_setting_rule_action.name, so_order_setting_rule_action.title,
|
so_order_setting_rule_action.class_name, so_order_setting_rule.level,
|
so_order_setting_rule_action.unit,
|
so_order_setting_rule.order_no, so_order_setting_rule_action.limit_count, (
|
select count(1) from so_order_setting_rule_limit
|
left join so_order_setting on so_order_setting_rule_limit.setting_template_id = so_order_setting.template_id
|
and so_order_setting.bu_id = '@{buId}'
|
where so_order_setting_rule_limit.rule_action_id = so_order_setting_rule_action.id
|
and so_order_setting.is_active = 'T' and so_order_setting_rule.is_active = 'T'
|
) as count
|
from so_order_setting_rule left join so_order_setting_rule_action
|
on so_order_setting_rule.action_id = so_order_setting_rule_action.id
|
where bu_id = '@{buId}'
|
)tbl
|
where tbl.limit_count <= tbl.count
|
order by order_no
|
]]>
|
</sql>
|
|
<sql name="updateOrderDetailNCId">
|
<![CDATA[
|
update so_order_detail set sku_nc_id = (
|
select nc_id from md_prod_sku
|
where md_prod_sku.id = so_order_detail.sku_id
|
)
|
where parent_id = '@{orderId}' and sku_nc_id is null
|
]]>
|
</sql>
|
|
<sql name="getQtyReceived">
|
<![CDATA[
|
select order_id, customer_id, sum(qty) qty_received from so_delivery_detail
|
where so_delivery_detail.parent_id = '@{deliveryId}'
|
]]>
|
</sql>
|
|
</dataSpace>
|
</sqls>
|