You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

83 lines
4.6 KiB

<?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="org.springblade.modules.fitting.mapper.OperationOrderMaterialMapper">
<!-- 通用查询映射结果 -->
<resultMap id="operationOrderMaterialResultMap" type="org.springblade.modules.fitting.pojo.entity.OperationOrderMaterialEntity">
<result column="id" property="id"/>
<result column="site_id" property="siteId"/>
<result column="order_id" property="orderId"/>
<result column="material_from" property="materialFrom"/>
<result column="material_id" property="materialId"/>
<result column="material_name" property="materialName"/>
<result column="material_code" property="materialCode"/>
<result column="material_type" property="materialType"/>
<result column="material_spec" property="materialSpec"/>
<result column="user_amount" property="userAmount"/>
<result column="create_time" property="createTime"/>
<result column="create_by" property="createBy"/>
<result column="create_name" property="createName"/>
<result column="status" property="status"/>
<result column="update_time" property="updateTime"/>
<result column="update_name" property="updateName"/>
</resultMap>
<select id="selectOperationOrderMaterialPage" resultMap="operationOrderMaterialResultMap">
select * from sf_operation_order_material where is_deleted = 0
</select>
<select id="exportOperationOrderMaterial" resultType="org.springblade.modules.fitting.excel.OperationOrderMaterialExcel">
SELECT * FROM sf_operation_order_material ${ew.customSqlSegment}
</select>
<select id="getOrderUserdFitting" resultType="org.springblade.modules.fitting.pojo.dto.OperationOrderMaterialDTO">
SELECT m.id,m.material_from,m.material_id,m.material_name,m.material_code,m.material_type
,m.material_spec,m.user_amount AS amount FROM `sf_operation_order_material` m
WHERE m.order_id=#{orderId} AND m.status='0'
ORDER BY m.create_time DESC
</select>
<select id="getOrderApplyFitting" resultType="org.springblade.modules.fitting.pojo.dto.OperationOrderMaterialDTO">
SELECT f.id,f.fitting_name AS materialName,f.fitting_power AS materialSpec,f.apply_num AS amount,f.status,f.fitting_version as materialType
,f.fitting_code as materialCode
FROM `crm_platform_fitting_apply` f
LEFT JOIN `sf_operation_order` o ON o.number=f.order_number
WHERE o.id=#{orderId} and f.status!='6'
ORDER BY f.create_time DESC
</select>
<select id="getEmpUseFittingList" resultType="org.springblade.modules.fitting.pojo.entity.OperationOrderMaterialEntity">
SELECT o.id,o.order_id,o.material_id,o.material_name,o.material_code,o.material_type,o.material_spec,
o.user_amount,o.create_time,o.material_from
FROM `sf_operation_order_material` o
WHERE o.status='0'
<if test="vo.smallConditon !=null and vo.smallConditon !='' ">
and (o.material_name like concat('%',#{vo.smallConditon},'%')
or o.material_code like concat('%',#{vo.smallConditon},'%'))
</if>
<if test="vo.engineerId !=null and vo.engineerId !='' ">
and o.emp_user_id=#{vo.engineerId}
</if>
ORDER BY o.create_time DESC
</select>
<select id="getOrderUseFittingDetail" resultType="org.springblade.modules.fitting.pojo.vo.OrderUseFittingDetailVo">
SELECT m.id,m.material_from,m.material_name,m.material_code,m.material_type,m.material_spec,m.user_amount,m.create_time AS userTime
,o.number AS orderNumber,o.power_station_code,o.customer_name,CONCAT(o.province,o.city,o.area,o.customer_address) AS customerAddress
FROM `sf_operation_order_material` m
LEFT JOIN `sf_operation_order` o ON o.id=m.order_id
WHERE m.id=#{id}
</select>
<select id="getOrderCanUseFittingDetail" resultType="org.springblade.modules.fitting.pojo.vo.OrderUseFittingDetailVo">
SELECT m.id AS materialId,m.name AS materialName,m.code AS materialCode
,m.power AS materialSpec,ifnull(e.stock,0) as stock,d.dict_value AS materialType
FROM `sf_material` m
LEFT JOIN `sf_material_engineer` e ON e.material_id=m.id AND e.engineer_id=#{empUserId}
LEFT JOIN blade_dict d ON d.code = 'wl_type' AND d.parent_id > 0 AND d.is_sealed = 0 AND d.is_deleted = 0 AND d.dict_key=m.type
WHERE m.id=#{materialId}
</select>
</mapper>