From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master

---
 jnpf-lims/jnpf-lims-biz/src/main/resources/mapper/LimsSxtQuyangJihuaRenwuMapper.xml |  158 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 158 insertions(+), 0 deletions(-)

diff --git a/jnpf-lims/jnpf-lims-biz/src/main/resources/mapper/LimsSxtQuyangJihuaRenwuMapper.xml b/jnpf-lims/jnpf-lims-biz/src/main/resources/mapper/LimsSxtQuyangJihuaRenwuMapper.xml
new file mode 100644
index 0000000..a65576c
--- /dev/null
+++ b/jnpf-lims/jnpf-lims-biz/src/main/resources/mapper/LimsSxtQuyangJihuaRenwuMapper.xml
@@ -0,0 +1,158 @@
+<?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="jnpf.limsMapper.LimsSxtQuyangJihuaRenwuMapper">
+
+    <resultMap id="BaseResultMap" type="jnpf.limsEntity.LimsSxtQuyangJihuaRenwuEntity">
+        <id column="f_id" property="id"/>
+        <result column="f_tenant_id" property="fTenantId"/>
+        <result column="jihua_id" property="jihuaId"/>
+        <result column="jihua_zixiang_id" property="jihuaZixiangId"/>
+        <result column="jihua_riqi" property="jihuaRiqi"/>
+        <result column="renwu_zhuangtai" property="renwuZhuangtai"/>
+        <result column="qingyandan_id" property="qingyandanId"/>
+        <result column="qingyandan_liushuihao" property="qingyandanLiushuihao"/>
+        <result column="qingyandan_shengcheng_shijian" property="qingyandanShengchengShijian"/>
+        <result column="jihua_mingcheng" property="jihuaMingcheng"/>
+        <result column="yangpin_leixing" property="yangpinLeixing"/>
+        <result column="yangpin_leixing_mingcheng" property="yangpinLeixingMingcheng"/>
+        <result column="yangpin_mingcheng" property="yangpinMingcheng"/>
+        <result column="suoshu_chejian" property="suoshuChejian"/>
+        <result column="quyang_didian" property="quyangDidian"/>
+        <result column="quyangdian_bianhao" property="quyangdianBianhao"/>
+        <result column="fuze_gangwei" property="fuzeGangwei"/>
+        <result column="quyangliang" property="quyangliang"/>
+        <result column="quyangliang_danwei" property="quyangliangDanwei"/>
+        <result column="zhiliang_biaozhun" property="zhiliangBiaozhun"/>
+        <result column="jianyan_xiangmu" property="jianyanXiangmu"/>
+        <result column="jianyan_xiangmu_mingcheng" property="jianyanXiangmuMingcheng"/>
+        <result column="zhidingren" property="zhidingren"/>
+        <result column="f_delete_mark" property="fDeleteMark"/>
+        <result column="f_delete_time" property="fDeleteTime"/>
+        <result column="f_delete_user_id" property="fDeleteUserId"/>
+        <result column="f_creator_time" property="fCreatorTime"/>
+        <result column="f_creator_user_id" property="fCreatorUserId"/>
+        <result column="f_last_modify_time" property="fLastModifyTime"/>
+        <result column="f_last_modify_user_id" property="fLastModifyUserId"/>
+        <result column="suoshu_chejian_id" property="suoshuChejianId"/>
+        <result column="renwu_shili_id" property="renwuShiliId"/>
+        <result column="renwu_xiuding_xuhao" property="renwuXiudingXuhao"/>
+        <result column="tihuan_yuan_renwu_id" property="tihuanYuanRenwuId"/>
+        <result column="tihuan_xin_renwu_id" property="tihuanXinRenwuId"/>
+        <result column="quyangdian_id" property="quyangdianId"/>
+        <result column="kuaizhao_jiegou_banben" property="kuaizhaoJiegouBanben"/>
+        <result column="kuaizhao_haxi" property="kuaizhaoHaxi"/>
+        <result column="kuaizhao_shengcheng_shijian" property="kuaizhaoShengchengShijian"/>
+        <result column="peizhi_jiaoyan_shijian" property="peizhiJiaoyanShijian"/>
+        <result column="peizhi_jiaoyan_zhuangtai" property="peizhiJiaoyanZhuangtai"/>
+        <result column="peizhi_chayi_biaozhi" property="peizhiChayiBiaozhi"/>
+        <result column="renwu_zhuangtai_yuanyin_daima" property="renwuZhuangtaiYuanyinDaima"/>
+        <result column="renwu_zhuangtai_yuanyin" property="renwuZhuangtaiYuanyin"/>
+        <result column="zhuangtai_biangeng_shijian" property="zhuangtaiBiangengShijian"/>
+        <result column="zhuangtai_biangeng_ren" property="zhuangtaiBiangengRen"/>
+        <result column="shixiao_shijian" property="shixiaoShijian"/>
+        <result column="shixiao_ren" property="shixiaoRen"/>
+        <result column="shixiao_yuanyin_daima" property="shixiaoYuanyinDaima"/>
+        <result column="tihuan_shouquan_id" property="tihuanShouquanId"/>
+        <result column="qingyandan_zhuangtai" property="qingyandanZhuangtai"/>
+        <result column="qingyandan_zhuangtai_tongbu_shijian" property="qingyandanZhuangtaiTongbuShijian"/>
+    </resultMap>
+
+    <insert id="insertIgnoreUnique">
+        INSERT INTO lims_sxt_quyang_jihua_renwu (
+            f_id, f_tenant_id, jihua_id, jihua_zixiang_id, jihua_riqi, renwu_zhuangtai,
+            jihua_mingcheng, yangpin_leixing, yangpin_leixing_mingcheng, yangpin_mingcheng,
+            suoshu_chejian, suoshu_chejian_id, quyang_didian, quyangdian_bianhao, fuze_gangwei,
+            quyangliang, quyangliang_danwei, zhiliang_biaozhun, jianyan_xiangmu,
+            jianyan_xiangmu_mingcheng, zhidingren, f_delete_mark, f_creator_time,
+            f_creator_user_id, renwu_shili_id, renwu_xiuding_xuhao, quyangdian_id,
+            kuaizhao_jiegou_banben, kuaizhao_haxi, kuaizhao_shengcheng_shijian,
+            peizhi_chayi_biaozhi, zhuangtai_biangeng_shijian
+        ) VALUES (
+            #{renwu.id}, #{renwu.fTenantId}, #{renwu.jihuaId}, #{renwu.jihuaZixiangId},
+            #{renwu.jihuaRiqi}, #{renwu.renwuZhuangtai}, #{renwu.jihuaMingcheng},
+            #{renwu.yangpinLeixing}, #{renwu.yangpinLeixingMingcheng}, #{renwu.yangpinMingcheng},
+            #{renwu.suoshuChejian}, #{renwu.suoshuChejianId}, #{renwu.quyangDidian},
+            #{renwu.quyangdianBianhao}, #{renwu.fuzeGangwei}, #{renwu.quyangliang},
+            #{renwu.quyangliangDanwei}, #{renwu.zhiliangBiaozhun}, #{renwu.jianyanXiangmu},
+            #{renwu.jianyanXiangmuMingcheng}, #{renwu.zhidingren}, #{renwu.fDeleteMark},
+            #{renwu.fCreatorTime}, #{renwu.fCreatorUserId}, #{renwu.renwuShiliId},
+            #{renwu.renwuXiudingXuhao}, #{renwu.quyangdianId}, #{renwu.kuaizhaoJiegouBanben},
+            #{renwu.kuaizhaoHaxi}, #{renwu.kuaizhaoShengchengShijian}, #{renwu.peizhiChayiBiaozhi},
+            #{renwu.zhuangtaiBiangengShijian}
+        ) ON CONFLICT (f_tenant_id, renwu_shili_id, renwu_xiuding_xuhao) DO NOTHING
+    </insert>
+
+    <select id="lockPendingRenwu" resultMap="BaseResultMap">
+        SELECT * FROM lims_sxt_quyang_jihua_renwu
+        WHERE jihua_riqi = #{day} AND renwu_zhuangtai = 'pending' AND f_delete_mark = 0
+        ORDER BY f_id FOR UPDATE SKIP LOCKED
+    </select>
+
+    <select id="lockPendingRenwuForJihua" resultMap="BaseResultMap">
+        SELECT * FROM lims_sxt_quyang_jihua_renwu
+        WHERE jihua_id = #{jihuaId} AND f_tenant_id = #{tenantId} AND jihua_riqi = #{day}
+          AND renwu_zhuangtai = 'pending' AND f_delete_mark = 0
+        ORDER BY f_id FOR UPDATE SKIP LOCKED
+    </select>
+
+    <update id="markGenerated">
+        UPDATE lims_sxt_quyang_jihua_renwu
+        SET renwu_zhuangtai = 'generated', qingyandan_id = #{qingyandanId},
+            qingyandan_liushuihao = #{qingyandanLiushuihao},
+            qingyandan_zhuangtai = #{qingyandanZhuangtai},
+            qingyandan_shengcheng_shijian = CURRENT_TIMESTAMP,
+            qingyandan_zhuangtai_tongbu_shijian = CURRENT_TIMESTAMP,
+            zhuangtai_biangeng_shijian = CURRENT_TIMESTAMP
+        WHERE f_id = #{renwuId} AND renwu_zhuangtai = 'generating' AND qingyandan_id IS NULL AND f_delete_mark = 0
+    </update>
+
+    <update id="markGenerating">
+        UPDATE lims_sxt_quyang_jihua_renwu
+        SET renwu_zhuangtai = 'generating', zhuangtai_biangeng_shijian = CURRENT_TIMESTAMP
+        WHERE f_id = #{renwuId} AND renwu_zhuangtai = 'pending' AND qingyandan_id IS NULL AND f_delete_mark = 0
+    </update>
+
+    <update id="resetPending">
+        UPDATE lims_sxt_quyang_jihua_renwu
+        SET renwu_zhuangtai = 'pending', zhuangtai_biangeng_shijian = CURRENT_TIMESTAMP
+        WHERE f_id = #{renwuId} AND renwu_zhuangtai = 'generating' AND qingyandan_id IS NULL AND f_delete_mark = 0
+    </update>
+
+    <update id="markBlockedPeizhiWuxiao">
+        UPDATE lims_sxt_quyang_jihua_renwu
+        SET renwu_zhuangtai = 'blocked_config_invalid', peizhi_jiaoyan_shijian = CURRENT_TIMESTAMP,
+            peizhi_jiaoyan_zhuangtai = 'invalid', renwu_zhuangtai_yuanyin_daima = #{yuanyinDaima},
+            renwu_zhuangtai_yuanyin = #{yuanyin}, zhuangtai_biangeng_shijian = CURRENT_TIMESTAMP
+        WHERE f_id = #{renwuId} AND renwu_zhuangtai = 'generating' AND qingyandan_id IS NULL AND f_delete_mark = 0
+    </update>
+
+    <select id="lockRenwuForQuxiao" resultMap="BaseResultMap">
+        SELECT * FROM lims_sxt_quyang_jihua_renwu
+        WHERE f_id = #{renwuId} AND f_tenant_id = #{tenantId} AND f_delete_mark = 0
+        FOR UPDATE
+    </select>
+
+    <select id="lockWeishengchengRenwuByJihua" resultMap="BaseResultMap">
+        SELECT * FROM lims_sxt_quyang_jihua_renwu
+        WHERE jihua_id = #{jihuaId} AND f_tenant_id = #{tenantId}
+          AND renwu_zhuangtai IN ('pending', 'blocked_config_invalid')
+          AND qingyandan_id IS NULL AND f_delete_mark = 0
+        ORDER BY jihua_riqi, f_id FOR UPDATE
+    </select>
+
+    <update id="quxiaoDangeRenwu">
+        UPDATE lims_sxt_quyang_jihua_renwu
+        SET renwu_zhuangtai = 'cancelled', renwu_zhuangtai_yuanyin_daima = #{yuanyinDaima},
+            zhuangtai_biangeng_ren = #{caozuoRen}, zhuangtai_biangeng_shijian = CURRENT_TIMESTAMP
+        WHERE f_id = #{renwuId}
+          AND renwu_zhuangtai IN ('pending', 'blocked_config_invalid')
+          AND qingyandan_id IS NULL AND f_delete_mark = 0
+    </update>
+
+    <update id="tongbuQingyandanZhuangtai">
+        UPDATE lims_sxt_quyang_jihua_renwu
+        SET qingyandan_zhuangtai = #{qingyandanZhuangtai},
+            qingyandan_zhuangtai_tongbu_shijian = CURRENT_TIMESTAMP
+        WHERE f_id = #{renwuId} AND qingyandan_id = #{qingyandanId} AND f_delete_mark = 0
+    </update>
+</mapper>

--
Gitblit v1.8.0