You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
138 lines
5.5 KiB
XML
138 lines
5.5 KiB
XML
<?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.glxp.api.dao.collect.IoCollectOrderMapper">
|
|
<select id="filterList" parameterType="com.glxp.api.req.collect.CollectOrderRequest"
|
|
resultType="com.glxp.api.res.collect.IoCollectOrderResponse">
|
|
SELECT ico.billNo,
|
|
ico.busType,
|
|
ico.fromType,
|
|
ico.fromTypeDesc,
|
|
ico.fromCorp,
|
|
ico.billTime,
|
|
ico.orderCirType,
|
|
ico.createTime,
|
|
ico.workPlaceCode,
|
|
ico.remark,
|
|
ico.createUser,
|
|
ico.updateTime,
|
|
ico.updateUser,
|
|
ico.tagStatus,
|
|
ico.splitStatus,
|
|
ico.invAlert,
|
|
ico.splitMsg,
|
|
ico.fromCorpName,
|
|
ico.tagMsg,
|
|
sys_workplace_document.busName busTypeName,
|
|
sw.workplaceName,
|
|
ico.id,
|
|
ico.orderTime,
|
|
ico.uploadStatus,
|
|
ico.uploadError,
|
|
ico.errorMsg,
|
|
row_number() over ( order by case when ico.orderTime is null then ico.createTime else ico.orderTime end desc ) as orderSequence
|
|
FROM io_collect_order ico
|
|
left join sys_workplace_document on ico.busType = sys_workplace_document.documentTypeCode
|
|
left join basic_corp bc on ico.fromCorp = bc.erpId
|
|
left join sys_workplace sw on ico.workPlaceCode = sw.workplaceId
|
|
<where>
|
|
<if test="billNo != '' and billNo != null">
|
|
AND billNo LIKE concat('%', #{billNo}, '%')
|
|
</if>
|
|
<if test="workplaceName != '' and workplaceName != null">
|
|
AND workplaceName LIKE concat('%', #{workplaceName}, '%')
|
|
</if>
|
|
<if test="busType != null and busType != ''">
|
|
AND busType = #{busType}
|
|
</if>
|
|
<if test="fromCorp != '' and fromCorp != null">
|
|
AND fromCorp LIKE concat('%', #{fromCorp}, '%')
|
|
</if>
|
|
<if test="busType != null and busType != ''">
|
|
AND busType = #{busType}
|
|
</if>
|
|
<if test="tagStatus != null">
|
|
AND tagStatus = #{tagStatus}
|
|
</if>
|
|
<if test="workPlaceCode != null">
|
|
AND ico.workPlaceCode = #{workPlaceCode}
|
|
</if>
|
|
<if test="chargeUser != null">
|
|
AND sw.chargeUser = #{chargeUser}
|
|
</if>
|
|
<if test="unionKey != null">
|
|
AND (
|
|
ico.billNo like concat('%', #{unionKey}, '%')
|
|
or ico.fromCorp like concat('%', #{unionKey}, '%')
|
|
or ico.fromCorpName like concat('%', #{unionKey}, '%')
|
|
or ico.backupOrderRemark1 like concat('%', #{unionKey}, '%')
|
|
or ico.backupOrderRemark2 like concat('%', #{unionKey}, '%')
|
|
or ico.backupOrderRemark3 like concat('%', #{unionKey}, '%')
|
|
or ico.backupOrderRemark4 like concat('%', #{unionKey}, '%')
|
|
or ico.backupOrderRemark5 like concat('%', #{unionKey}, '%')
|
|
or ico.backupOrderRemark6 like concat('%', #{unionKey}, '%'))
|
|
</if>
|
|
|
|
|
|
<if test="tagStatusList != null and tagStatusList.size() > 0">
|
|
and tagStatus in
|
|
<foreach collection="tagStatusList" item="item" index="index" separator="," open="(" close=")">
|
|
#{item}
|
|
</foreach>
|
|
</if>
|
|
<if test="workPlaceCodes != null and workPlaceCodes.size() > 0">
|
|
and ico.workPlaceCode in
|
|
<foreach collection="workPlaceCodes" item="item" index="index" separator="," open="(" close=")">
|
|
#{item}
|
|
</foreach>
|
|
</if>
|
|
<if test="invAlert != null">
|
|
and ico.invAlert =#{invAlert}
|
|
</if>
|
|
<if test="invAlerts != null and invAlerts.size() > 0">
|
|
and ico.invAlert in
|
|
<foreach collection="invAlerts" item="item" index="index" separator="," open="(" close=")">
|
|
#{item}
|
|
</foreach>
|
|
</if>
|
|
<if test="uploadStatus != null">
|
|
and ico.uploadStatus = #{uploadStatus}
|
|
</if>
|
|
</where>
|
|
GROUP BY
|
|
ico.billNo
|
|
order by case when ico.orderTime is null then ico.createTime else ico.orderTime end desc
|
|
</select>
|
|
|
|
|
|
<select id="clearOrder">
|
|
-- 清除拆零队列
|
|
TRUNCATE io_split_code;
|
|
TRUNCATE io_split_code_detail;
|
|
TRUNCATE io_split_fifo_code;
|
|
truncate io_split_fifo_inv;
|
|
|
|
|
|
-- 清除拆零,原始单据等
|
|
TRUNCATE io_collect_code;
|
|
TRUNCATE io_collect_order;
|
|
TRUNCATE io_collect_order_biz;
|
|
TRUNCATE io_collect_order_code_auto;
|
|
TRUNCATE io_collect_order_code_man;
|
|
|
|
|
|
TRUNCATE io_split_des_order;
|
|
TRUNCATE io_split_des_order_code;
|
|
TRUNCATE io_split_des_order_detail;
|
|
TRUNCATE io_collect_order_code_man;
|
|
|
|
TRUNCATE io_collect_order_origin;
|
|
TRUNCATE io_collect_order_biz_origin;
|
|
</select>
|
|
|
|
<update id="updateInvAlert" parameterType="map">
|
|
UPDATE io_collect_order
|
|
SET invAlert = #{invAlert}
|
|
WHERE id = #{id}
|
|
</update>
|
|
</mapper>
|