liurunyu
2025-05-30 4afa387b237899d5f841a3070d04739772c22551
pms-parent/pms-global/src/main/resources/mapper/PrAssemblyPlanMapper.xml
@@ -236,8 +236,8 @@
        from pr_assembly_plan
        where id = #{id,jdbcType=BIGINT}
    </delete>
    <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoPr.PrAssemblyPlan"
            useGeneratedKeys="true">
    <insert id="insert" parameterType="com.dy.pmsGlobal.pojoPr.PrAssemblyPlan"
           >
        insert into pr_assembly_plan
        ( id,order_id, pro_id, batch_id
        , process_id, name, number
@@ -251,8 +251,8 @@
               , #{deleted,jdbcType=TINYINT}, #{content,jdbcType=VARCHAR}, #{inputNumber,jdbcType=INTEGER}
               , #{outputNumber,jdbcType=INTEGER})
    </insert>
    <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoPr.PrAssemblyPlan"
            useGeneratedKeys="true">
    <insert id="insertSelective" parameterType="com.dy.pmsGlobal.pojoPr.PrAssemblyPlan"
           >
        insert into pr_assembly_plan
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">id,</if>
@@ -423,16 +423,22 @@
    </select>
    <select id="selectByPlanName" resultType="cn.hutool.json.JSONObject">
        select ap.id planId,ap.name planName,ap.`status`,pn.id nodeId,pn.content from pr_assembly_plan ap
        select ap.id planId,
        ap.name planName,
        ap.`status`,
        pn.id nodeId,
        pn.content
        from pr_assembly_plan ap
        left join pr_production_node pn on ap.process_id = pn.process_id
        where status != -1
        <if test="planName != null and planName!= ''">
            and ap.name like concat('%', #{planName}, '%')
        </if>
        order by ap.id desc, pn.id asc
    </select>
    <select id="queryPlanList" resultType="cn.hutool.json.JSONObject">
        select pp.`name` as pro_name, p.`name` ,p.number, p.output_number, concat(round(((p.output_number/p.number) * 100 ),0), '%') as complete_rate ,p.end_date,
        select pp.`name` as pro_name, p.`name` ,p.number,p.input_number, p.output_number, concat(round(((p.output_number/p.number) * 100 ),0), '%') as complete_rate ,p.end_date,
        TIMESTAMPDIFF(DAY, NOW(),p.end_date) AS days_difference
        from (SELECT * FROM pr_assembly_plan WHERE  STATUS = 1 and deleted = 0)  p
        LEFT JOIN plt_product pp