| | |
| | | |
| | | <resultMap id="ProductionOrderVoResultMap" type="com.ruoyi.production.bean.vo.ProductionOrderVo" extends="BaseResultMap"> |
| | | <result column="salesContractNo" property="salesContractNo" /> |
| | | <result column="masterContractNo" property="masterContractNo" /> |
| | | <result column="customerName" property="customerName" /> |
| | | <result column="productName" property="productName" /> |
| | | <result column="model" property="model" /> |
| | |
| | | po.plan_complete_time, |
| | | po.status, |
| | | po_sales.salesContractNo, |
| | | po_sales.masterContractNo, |
| | | po_sales.customerName, |
| | | p.product_name as productName, |
| | | pm.model as model, |
| | |
| | | left join ( |
| | | select po2.id as orderId, |
| | | group_concat(distinct sl2.sales_contract_no order by sl2.sales_contract_no separator ',') as salesContractNo, |
| | | group_concat(distinct sl2.master_contract_no order by sl2.master_contract_no separator ',') as masterContractNo, |
| | | group_concat(distinct sl2.customer_name order by sl2.customer_name separator ',') as customerName, |
| | | group_concat(distinct sl2.project_name order by sl2.project_name separator ',') as projectName, |
| | | min(sl2.delivery_date) as deliveryDate |
| | |
| | | <if test="status != null"> |
| | | and po.status = #{status} |
| | | </if> |
| | | <if test="startTime != null and endTime != null"> |
| | | and po.create_time >= #{startTime} |
| | | and po.create_time < #{endTime} |
| | | </if> |
| | | </where> |
| | | order by po.id desc |
| | | limit #{offset}, #{size} |
| | |
| | | <if test="status != null"> |
| | | and po.status = #{status} |
| | | </if> |
| | | <if test="startTime != null and endTime != null"> |
| | | and po.create_time >= #{startTime} |
| | | and po.create_time < #{endTime} |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="countHomeOrderProgressByStatus" resultType="java.util.Map"> |
| | | select po.status as status, count(1) as cnt |
| | | from production_order po |
| | | where po.status in (2, 3, 4) |
| | | where po.status in (1, 2, 3, 4) |
| | | <if test="startTime != null and endTime != null"> |
| | | and po.create_time >= #{startTime} |
| | | and po.create_time < #{endTime} |
| | | </if> |
| | | group by po.status |
| | | </select> |
| | | |
| | |
| | | from production_order po |
| | | left join product_model pm on po.product_model_id = pm.id |
| | | left join product p on pm.product_id = p.id |
| | | where po.status in (1, 2) |
| | | <where> |
| | | po.status in (1, 2) |
| | | <if test="planStart != null and planEnd != null"> |
| | | and po.plan_complete_time >= #{planStart} |
| | | and po.plan_complete_time < #{planEnd} |
| | | </if> |
| | | </where> |
| | | order by case when po.status = 2 then 0 else 1 end, po.id desc |
| | | limit #{size} |
| | | </select> |
| | |
| | | <select id="countHomeTodayProductionPlan" resultType="java.lang.Long"> |
| | | select count(1) |
| | | from production_order po |
| | | where po.status in (1, 2) |
| | | <where> |
| | | po.status in (1, 2) |
| | | <if test="planStart != null and planEnd != null"> |
| | | and po.plan_complete_time >= #{planStart} |
| | | and po.plan_complete_time < #{planEnd} |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | | </mapper> |