| | |
| | | where id = #{id} |
| | | </select> |
| | | |
| | | <select id="workList" resultType="com.ycl.platform.domain.vo.YwUnitVO"> |
| | | <select id="workList" resultType="integer"> |
| | | SELECT |
| | | a.*, |
| | | COUNT(b.id) AS work_order_count |
| | | count(DISTINCT wo.id) |
| | | FROM |
| | | t_yw_unit a |
| | | LEFT JOIN |
| | | t_work_order b ON a.id = b.unit_id AND b.deleted = 0 AND b.status = 'WAIT_DISTRIBUTE' |
| | | t_work_order wo |
| | | INNER JOIN t_monitor tm ON wo.serial_number = tm.serial_number |
| | | INNER JOIN t_yw_point yp ON yp.serial_number = wo.serial_number AND yp.deleted = 0 |
| | | INNER JOIN t_work_order_error_type et ON wo.work_order_no = et.work_order_no |
| | | INNER JOIN sys_dict_data da ON da.dict_value = et.error_name AND da.dict_type = 'error_type' |
| | | WHERE |
| | | a.deleted = 0 |
| | | GROUP BY |
| | | a.id; |
| | | wo.unit_id = #{query.unitId} AND wo.deleted = 0 |
| | | <if test="query.status != null and query.status != ''"> |
| | | AND wo.status = #{query.status} |
| | | </if> |
| | | <if test="query.isNotDistribute != null and query.isNotDistribute"> |
| | | AND wo.status != 'WAIT_DISTRIBUTE' |
| | | </if> |
| | | <if test="query.keyword != null and query.keyword != ''"> |
| | | AND (tm.name like concat('%', #{query.keyword}, '%') or tm.serial_number like concat('%', #{query.keyword}, |
| | | '%')) |
| | | </if> |
| | | <if test="query.start != null and query.end != null"> |
| | | AND wo.create_time BETWEEN #{query.start} AND #{query.end} |
| | | </if> |
| | | <if test="query.errorType != null and query.errorType !='' "> |
| | | AND (EXISTS ( |
| | | SELECT 1 |
| | | FROM t_work_order_error_type twoet |
| | | WHERE twoet.work_order_no = wo.work_order_no |
| | | AND twoet.error_name = #{query.errorType} |
| | | )) |
| | | </if> |
| | | </select> |
| | | |
| | | <insert id="insertYwUnit" parameterType="YwUnit" useGeneratedKeys="true" keyProperty="id"> |
| | |
| | | INNER JOIN t_unit_people tup ON tup.unit_id = tyw.id and tyw.deleted = 0 |
| | | INNER JOIN t_yw_people typ ON tup.yw_people_id = typ.id AND typ.user_id = #{userId} AND typ.deleted = 0 |
| | | </select> |
| | | |
| | | <select id="ywUnitCount" resultType="java.util.Map"> |
| | | SELECT |
| | | u.unit_name AS name, |
| | | COUNT(tcs.id) AS num, |
| | | 100 - SUM(score) AS score |
| | | FROM |
| | | t_contract_score tcs |
| | | LEFT JOIN t_yw_unit u ON tcs.unit_id = u.id |
| | | WHERE tcs.deleted = 0 |
| | | GROUP BY tcs.unit_id |
| | | ORDER BY score DESC |
| | | </select> |
| | | </mapper> |