1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- <?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="com.dayou.mapper.PersonalTargetMapper">
- <!-- 通用查询映射结果 -->
- <resultMap id="BaseResultMap" type="com.dayou.entity.PersonalTarget">
- <result column="id" property="id" />
- <result column="created" property="created" />
- <result column="modified" property="modified" />
- <result column="deleted" property="deleted" />
- <result column="personal_id" property="personalId" />
- <result column="location" property="location" />
- <result column="amount" property="amount" />
- <result column="price" property="price" />
- <result column="house_certificate" property="houseCertificate" />
- <result column="land_certificate" property="landCertificate" />
- <result column="immovable_certificate" property="immovableCertificate" />
- <result column="entity_info" property="entityInfo" />
- <result column="background_info" property="backgroundInfo" />
- <result column="selling_ability" property="sellingAbility" />
- </resultMap>
- <!-- 通用查询结果列 -->
- <sql id="Base_Column_List">
- id,
- created,
- modified,
- deleted,
- personal_id, location, amount, price, house_certificate, land_certificate, immovable_certificate, entity_info, background_info, selling_ability
- </sql>
- <select id="validateProd" parameterType="java.lang.Long" resultType="com.dayou.vo.ProdValidateVO">
- SELECT
- pt.acreage,
- ROUND( pt.amount / 10000, 2 ) AS amount,
- p.location AS productionName,
- concat( '川友房估', p.order_id, '号' ) AS productionNo,
- p.bailorA,
- p.bailorB,
- DATE_FORMAT( JSON_UNQUOTE( JSON_EXTRACT( selling_ability, '$.sceneDateD' )), '%Y-%m-%d' ) AS valueTiming,
- (
- SELECT
- ( CASE production WHEN 'STATEMENT' THEN '价值意见书' WHEN 'FINAL' THEN '报告' WHEN 'TECHNIC' THEN '报告' END )
- FROM
- personal_production
- WHERE
- deleted = 0
- AND target_id = pt.id
- AND production_time IS NOT NULL
- ORDER BY
- production_time DESC
- LIMIT 1
- ) AS productions ,
- c.name AS clientName
- FROM
- personal_target pt
- LEFT JOIN personal p ON p.id = pt.personal_id
- left join customer_company c on c.id = p.clientele_id
- WHERE
- pt.personal_id = #{id}
- AND pt.deleted = 0
- and p.deleted =0
- </select>
- <select id="fuzzyBackgroundList" parameterType="java.lang.String" resultType="java.lang.String">
- SELECT
- background_info
- FROM
- personal_target
- WHERE
- background_info IS NOT NULL
- AND deleted = 0
- AND JSON_EXTRACT( background_info, '$.location' ) LIKE concat ('%',#{location},'%')
- order by id desc
- </select>
- <select id="queryPersonalTargetEvaData" parameterType="java.lang.String" resultType="com.dayou.dto.PersonalTargetEvaData">
- SELECT
- p.order_id as orderId,
- p.order_id as orderNO,
- JSON_UNQUOTE(JSON_EXTRACT(pt.entity_info,'$.communityName')) as houseName,
- pt.location as address,
- JSON_UNQUOTE(JSON_EXTRACT(pt.entity_info,'$.allFloor')) as totalFloor,
- JSON_UNQUOTE(JSON_EXTRACT(pt.entity_info,'$.buildingAge')) as buildYear,
- DATE_FORMAT(JSON_UNQUOTE(JSON_EXTRACT(selling_ability,'$.sceneDateD')),'%Y-%m-%d %H:%i:%s') AS priceDate,
- pt.acreage as area,
- pt.amount as money,
- pt.price as price,
- pt.modified as modifyTime
- FROM
- personal_target pt
- LEFT JOIN personal p ON p.id = pt.personal_id
- where p.created>='2025-01-01 00:00:00' and pt.modified >#{startDate}
- </select>
- </mapper>
|