集成oms服务模块

This commit is contained in:
hjx
2026-01-19 15:20:20 +08:00
parent 1837337488
commit 56356839bf
163 changed files with 16893 additions and 0 deletions
@@ -0,0 +1,180 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mhd.oms.domain.taskOrder.repository.mapper.TaskOrderMapper">
<resultMap type="com.mhd.oms.domain.taskOrder.repository.po.TaskOrderPO" id="TaskOrderResult">
<result property="id" column="id" />
<result property="createBy" column="create_by" />
<result property="createByName" column="create_by_name" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateByName" column="update_by_name" />
<result property="updateTime" column="update_time" />
<result property="delFlag" column="del_flag" />
<result property="scmId" column="scm_id" />
</resultMap>
<sql id="selectTaskOrderPo">
select
a.id,a.create_by,a.create_by_name,a.create_time,a.update_by,a.update_by_name,a.update_time,a.del_flag,a.scm_id,a.task_no,a.task_status,a.order_id,a.merge_state,a.notice_code,a.enter_warehouse_code,a.warehouse_id,a.warehouse_name,a.plan_num,a.merge_task_no,
c.estimated_receiving_time,
case a.merge_state when 0 then '未合并' when 1 then '已合并' else '未知状态' end mergeStateStr,
case a.task_status when 0 then '未下发' when 1 then '已下发' when 2 then '已完成' when 3 then '已拦截' when 4 then '已取消' else '未知状态' end taskStatusStr
from
oms_task_order a
left join oms_receipt_info c on a.order_id = c.order_id and c.del_flag = 1
</sql>
<sql id="selectTaskOrderPo1">
<where>
a.del_flag = 1
<!-- <if test="createByName != null and createByName != ''">-->
<!-- and a.create_by_name like concat('%', #{createByName}, '%')-->
<!-- </if>-->
<!-- <if test="updateByName != null and updateByName != ''">-->
<!-- and a.update_by_name like concat('%', #{updateByName}, '%')-->
<!-- </if>-->
<if test="scmId != null and scmId != ''">
and a.scm_id = #{scmId}
</if>
<if test="taskStatus != null">
and a.task_status = #{taskStatus}
</if>
<if test="taskTypeId != null">
and a.task_type_id = #{taskTypeId}
</if>
<if test="idList != null">
and a.id in
<foreach collection="idList" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if>
<if test="scmIdList != null">
and a.scm_id in
<foreach collection="scmIdList" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if>
<if test="orderIdList != null">
and a.order_id in
<foreach collection="orderIdList" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if>
</where>
</sql>
<select id="queryList" parameterType="com.mhd.oms.domain.taskOrder.repository.todo.TaskOrderDO" resultType="com.mhd.oms.domain.taskOrder.repository.po.TaskOrderPO">
<include refid="selectTaskOrderPo"/>
<include refid="selectTaskOrderPo1"/>
</select>
<select id="queryEffectiveNumByScmId" resultType="java.math.BigDecimal">
select
ifnull(sum(plan_num), 0)
from
oms_task_order
WHERE
del_flag = 1
and task_status in (0,1,2)
and scm_id = #{scmId}
and goods_id = #{goodsId}
</select>
<select id="getPoTaskDetail" parameterType="java.util.List" resultType="com.mhd.oms.domain.taskOrder.repository.po.PoTaskDetailPO">
SELECT
a.id,
a.task_no,
a.warehouse_id,
a.warehouse_name,
b.shipper_id,
b.shipper
FROM
oms_task_order a
LEFT JOIN oms_purchase_order b ON a.order_id = b.id
WHERE
a.del_flag = 1 and
a.id in
<foreach collection="ids" open="(" separator="," close=")" item="item" index="index">
#{item}
</foreach>
</select>
<select id="getAbleCancelledTaskList" resultType="com.mhd.oms.domain.taskOrder.repository.po.TaskOrderPO">
select
scm_id,plan_num
from oms_task_order
where
del_flag = 1
and task_status = 0
and(merge_task_no is null or merge_task_no = '')
and id in
<foreach collection="idList" open="(" separator="," close=")" item="item" index="index">
#{item}
</foreach>
</select>
<select id="getInfoByIds" resultType="com.mhd.oms.domain.taskOrder.repository.po.TaskOrderPO">
SELECT
*
FROM
oms_task_order
WHERE
del_flag = 1
and ( id IN
<foreach collection="ids" open="(" separator="," close=")" item="item" index="index">
#{item}
</foreach>
OR merge_task_no IN ( SELECT merge_task_no FROM oms_task_order
WHERE id IN
<foreach collection="ids" open="(" separator="," close=")" item="item" index="index">
#{item}
</foreach>
AND merge_state = 1))
</select>
<select id="queryPurListByOrderId" resultMap="TaskOrderResult">
select
a.id,a.create_by,a.create_by_name,a.create_time,a.update_by,a.update_by_name,a.update_time,a.del_flag,a.scm_id,a.task_no,a.task_status,a.order_id,a.merge_state,a.notice_code,a.enter_warehouse_code,a.warehouse_id,a.warehouse_name,a.plan_num,
b.order_no,b.customer_orders,b.shipper_id,b.shipper,b.supplier_id,b.supplier,b.order_type_id,b.order_type,b.delivery_system,
c.estimated_receiving_time,
case a.merge_state when 0 then '未合并' when 1 then '已合并' else '未知状态' end mergeStateStr,
case a.task_status when 0 then '未下发' when 1 then '已下发' when 2 then '已完成' when 3 then '已拦截' when 4 then '已取消' else '未知状态' end taskStatusStr
from
oms_task_order a
left join oms_purchase_order b on a.order_id = b.id and b.del_flag = 1
left join oms_receipt_info c on a.order_id = c.order_id and c.del_flag = 1
<include refid="where_queryListByOrderId"/>
</select>
<select id="querySalesListByOrderId" resultMap="TaskOrderResult">
select
a.id,a.create_by,a.create_by_name,a.create_time,a.update_by,a.update_by_name,a.update_time,a.del_flag,a.scm_id,a.task_no,a.task_status,a.order_id,a.merge_state,a.notice_code,a.enter_warehouse_code,a.warehouse_id,a.warehouse_name,a.plan_num,
b.order_no,b.customer_orders,b.shipper_id,b.shipper,b.customer_id,b.customer,b.order_type_id,b.order_type,b.delivery_system,
c.estimated_receiving_time,
case a.merge_state when 0 then '未合并' when 1 then '已合并' else '未知状态' end mergeStateStr,
case a.task_status when 0 then '未下发' when 1 then '已下发' when 2 then '已完成' when 3 then '已拦截' when 4 then '已取消' else '未知状态' end taskStatusStr
from
oms_task_order a
left join oms_sales_order b on a.order_id = b.id and b.del_flag = 1
left join oms_receipt_info c on a.order_id = c.order_id and c.del_flag = 1
<include refid="where_queryListByOrderId"/>
</select>
<sql id="where_queryListByOrderId">
<where>
a.del_flag = 1
<if test="orderIdList != null">
and a.order_id in
<foreach collection="orderIdList" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if>
</where>
</sql>
</mapper>