| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800 |
- <?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.sckw.transport.dao.KwtLogisticsOrderMapper">
- <resultMap id="BaseResultMap" type="com.sckw.transport.model.KwtLogisticsOrder">
- <id column="id" jdbcType="BIGINT" property="id"/>
- <result column="ent_id" jdbcType="BIGINT" property="entId"/>
- <result column="type" jdbcType="BIGINT" property="type"/>
- <result column="t_order_id" jdbcType="BIGINT" property="tOrderId"/>
- <result column="t_order_no" jdbcType="VARCHAR" property="tOrderNo"/>
- <result column="l_order_no" jdbcType="VARCHAR" property="lOrderNo"/>
- <result column="pid" jdbcType="BIGINT" property="pid"/>
- <result column="pids" jdbcType="VARCHAR" property="pids"/>
- <result column="level" jdbcType="VARCHAR" property="level"/>
- <result column="bind_status" jdbcType="VARCHAR" property="bindStatus"/>
- <result column="total_load_amount" jdbcType="VARCHAR" property="totalLoadAmount"/>
- <result column="total_unload_amount" jdbcType="VARCHAR" property="totalUnloadAmount"/>
- <result column="settlement_cycle" jdbcType="BIGINT" property="settlementCycle"/>
- <result column="billing_mode" jdbcType="BIGINT" property="billingMode"/>
- <result column="price" jdbcType="DECIMAL" property="price"/>
- <result column="price_type" jdbcType="BIGINT" property="priceType"/>
- <result column="amount" jdbcType="DECIMAL" property="amount"/>
- <result column="unit" jdbcType="VARCHAR" property="unit"/>
- <result column="loss" jdbcType="DECIMAL" property="loss"/>
- <result column="loss_unit" jdbcType="VARCHAR" property="lossUnit"/>
- <result column="goods_price" jdbcType="DECIMAL" property="goodsPrice"/>
- <result column="goods_price_unit" jdbcType="VARCHAR" property="goodsPriceUnit"/>
- <result column="start_time" jdbcType="TIMESTAMP" property="startTime"/>
- <result column="end_time" jdbcType="TIMESTAMP" property="endTime"/>
- <result column="subcontract_amount" jdbcType="DECIMAL" property="subcontractAmount"/>
- <result column="entrust_amount" jdbcType="DECIMAL" property="entrustAmount"/>
- <result column="unload_amount" jdbcType="DECIMAL" property="unloadAmount"/>
- <result column="load_amount" jdbcType="DECIMAL" property="loadAmount"/>
- <result column="ignore_amount" jdbcType="DECIMAL" property="ignoreAmount"/>
- <result column="deficit_amount" jdbcType="DECIMAL" property="deficitAmount"/>
- <result column="deficit_price" jdbcType="DECIMAL" property="deficitPrice"/>
- <result column="payment" jdbcType="BIGINT" property="payment"/>
- <result column="tax_rate" jdbcType="DECIMAL" property="taxRate"/>
- <result column="remark" jdbcType="VARCHAR" property="remark"/>
- <result column="status" jdbcType="INTEGER" property="status"/>
- <result column="create_by" jdbcType="BIGINT" property="createBy"/>
- <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
- <result column="update_by" jdbcType="BIGINT" property="updateBy"/>
- <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
- <result column="del_flag" jdbcType="INTEGER" property="delFlag"/>
- </resultMap>
- <sql id="Base_Column_List">
- id
- ,
- ent_id,
- t_order_id,
- type,
- level,
- bind_status,
- total_load_amount,
- total_unload_amount,
- t_order_no,
- l_order_no,
- pid,
- pids,
- settlement_cycle,
- price,
- price_type,
- billing_mode,
- amount,
- unit,
- loss,
- loss_unit,
- goods_price,
- goods_price_unit,
- start_time,
- end_time,
- subcontract_amount,
- entrust_amount,
- unload_amount,
- load_amount,
- ignore_amount,
- deficit_amount,
- deficit_price,
- payment,
- tax_rate,
- remark,
- `status`,
- create_by,
- create_time,
- update_by,
- update_time,
- del_flag
- </sql>
- <select id="selectOrderList" resultType="com.sckw.transport.model.dto.LogisticsOrderDTO">
- SELECT a.id as lOrderId,
- a.l_order_no as lOrderNo,
- b.`status` as `status`,
- a.t_order_id as tOrderId,
- a.t_order_no as tOrderNo,
- a.payment as payment,
- a.amount,
- a.price,
- a.loss,
- a.goods_price as goodsPrice,
- c.firm_name as comanyName,
- c.contacts,
- c.phone,
- a.create_by as createBy,
- a.create_time as createTime
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id and a.`status` = b.`status`
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id AND c.unit_type = #{type}
- WHERE a.del_flag = '0'
- AND b.del_flag = '0'
- AND a.t_order_id = #{id,jdbcType=VARCHAR} limit #{page}
- , #{pageSize}
- </select>
- <select id="selectOrderListNotPage" resultType="com.sckw.transport.model.dto.LogisticsOrderDTO">
- SELECT a.id as lOrderId,
- a.l_order_no as lOrderNo,
- b.`status` as `status`,
- a.t_order_id as tOrderId,
- a.t_order_no as tOrderNo,
- a.payment as payment,
- a.amount,
- a.unit as unit,
- a.price,
- a.price_type as priceType,
- a.loss,
- a.loss_unit AS lossUnit,
- a.goods_price as goodsPrice,
- a.goods_price_unit as goodsPriceUnit,
- c.firm_name as companyName,
- c.contacts,
- c.phone,
- a.create_by as createBy,
- a.create_time as createTime
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id and a.`status` = b.`status`
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
- WHERE a.del_flag = '0'
- AND b.del_flag = '0'
- <if test="type != null and type != ''">
- AND c.unit_type = #{type}
- </if>
- AND a.t_order_id = #{id,jdbcType=VARCHAR}
- order by createTime desc
- </select>
- <select id="selectOrderListNotPageByIds" resultType="com.sckw.transport.model.dto.LogisticsOrderDTO">
- SELECT a.id as lOrderId,
- a.l_order_no as lOrderNo,
- b.`status` as `status`,
- a.t_order_id as tOrderId,
- a.t_order_no as tOrderNo,
- a.payment as payment,
- a.amount,
- a.unit as unit,
- a.price,
- a.price_type as priceType,
- a.loss,
- a.loss_unit AS lossUnit,
- a.goods_price as goodsPrice,
- a.goods_price_unit as goodsPriceUnit,
- c.firm_name as companyName,
- c.contacts,
- c.phone,
- a.create_by as createBy,
- a.create_time as createTime
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id and a.`status` = b.`status`
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
- WHERE a.del_flag = '0'
- AND b.del_flag = '0'
- <if test="type != null and type != ''">
- AND c.unit_type = #{type}
- </if>
- <if test="ids != null and ids.size() > 0">
- AND a.t_order_id in
- <foreach collection="ids" separator="," open="(" close=")" item="item">
- #{item}
- </foreach>
- </if>
- order by createTime desc
- </select>
- <select id="selectOrderListByTradeOrderIds" resultType="com.sckw.transport.model.dto.LogisticsOrderDTO">
- SELECT a.id as lOrderId,
- a.l_order_no as lOrderNo,
- a.`status` as `status`,
- a.t_order_id as tOrderId,
- a.t_order_no as tOrderNo,
- a.payment as payment,
- a.amount,
- a.unit as unit,
- a.price,
- a.price_type as priceType,
- a.loss,
- a.loss_unit AS lossUnit,
- a.goods_price as goodsPrice,
- a.goods_price_unit as goodsPriceUnit,
- c.firm_name as companyName,
- c.contacts,
- c.phone,
- a.create_by as createBy,
- a.create_time as createTime
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
- WHERE a.del_flag = '0'
- AND c.del_flag = '0'
- <if test="unitType != null and unitType != ''">
- AND c.unit_type = #{unitType}
- </if>
- <if test="tradeOrderIds != null and tradeOrderIds.size() > 0">
- and a.t_order_id in
- <foreach collection="tradeOrderIds" item="item" separator="," open="(" close=")">
- #{item}
- </foreach>
- </if>
- order by tOrderId, createTime desc
- </select>
- <select id="selectOrderListByContractId" resultType="com.sckw.transport.model.vo.SckwLogisticsOrderVO">
- SELECT a.STATUS,
- a.id AS lOrderId,
- a.l_order_no AS lOrderNo,
- f.contract_no AS contractNo,
- d.id as checkId,
- d.ent_id as checkEntId,
- d.top_ent_id as checkTopEntId,
- d.firm_name AS checkFirmName,
- e.id as carrierId,
- e.ent_id as carrierEntId,
- e.top_ent_id as carrierTopEntId,
- e.firm_name AS carrierFirmName,
- g.goods_name AS goodsName,
- a.amount AS carryingCapacity,
- a.price AS price,
- b.city_name AS loadCityName,
- b.detail_address AS loadDetailAddress,
- a.payment AS payment,
- a.loss AS loss,
- a.loss_unit AS lossUnit,
- a.goods_price AS goodsPrice,
- a.goods_price_unit AS goodsPriceUnit,
- a.settlement_cycle AS settlementCycle,
- e.contacts AS carrierContacts,
- e.phone AS carrierPhone,
- d.contacts AS checkContacts,
- d.phone AS checkPhone,
- b.contacts AS loadContacts,
- b.phone AS loadPhone,
- c.contacts AS unloadContacts,
- c.phone AS unloadPhone,
- a.start_time AS startTime,
- a.end_time AS endTime,
- a.remark AS remark,
- a.create_by AS createBy,
- a.create_time AS createTime,
- f.contract_id AS contractId,
- a.amount AS amount,
- c.detail_address as unloadDetailAddress,
- a.billing_mode as billingMode
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id
- AND b.address_type = 1
- AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2
- AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1
- AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id
- AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id
- AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <!-- <if test="type == 1">-->
- <!-- and (d.top_ent_id = #{entId} or d.ent_id = #{entId})-->
- <!-- </if>-->
- <!-- <if test="type == 2">-->
- <!-- and (e.top_ent_id = #{entId} or e.ent_id = #{entId})-->
- <!-- </if>-->
- <if test="contractIds != null and contractIds.size() > 0">
- and f.contract_id in
- <foreach collection="contractIds" item="item" separator="," open="(" close=")">
- #{item}
- </foreach>
- </if>
- </where>
- ORDER BY a.id DESC
- </select>
- <select id="selectOrderCount" resultType="java.lang.Long">
- SELECT count(a.id)
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id and a.`status` = b.`status`
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id AND c.unit_type = #{type}
- WHERE a.del_flag = '0'
- AND b.del_flag = '0'
- AND a.t_order_id = #{id,jdbcType=VARCHAR}
- </select>
- <select id="selectLogisticOrderData" resultType="com.sckw.transport.api.model.vo.LogisticsOrderVO">
- SELECT DISTINCT a.id AS lOrderId,
- a.l_order_no AS lOrderNO,
- a.t_order_id AS tOrderId,
- a.t_order_no AS tOrderNO,
- a.payment AS payment,
- a.billing_mode AS billingMode,
- c.contract_id AS contractId,
- c.contract_no AS contractNo,
- c.contract_name AS contractName,
- b.goods_name AS goodsName,
- a.amount,
- a.remark as remark,
- a.unit,
- a.ignore_amount AS ignoreAmount,
- a.price,
- a.price_type as priceType,
- a.goods_price AS goodsPrice,
- a.goods_price_unit AS goodsPriceUnit,
- a.loss,
- a.loss_unit AS lossUnit,
- a.tax_rate as taxRate,
- a.load_amount AS loadAmount,
- a.unload_amount AS unloadAmount,
- a.total_load_amount AS totalLoadAmount,
- a.total_unload_amount AS totalUnloadAmount,
- a.settlement_cycle as settlementCycle,
- a.start_time AS startTime,
- a.end_time AS endTime,
- a.create_time AS createTime,
- a.create_by AS createBy,
- a.update_by AS updateBy,
- a.update_time AS updateTime
- FROM
- kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_goods b ON a.id = b.l_order_id and a.bind_status = '0'
- <!-- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id-->
- LEFT JOIN kwt_logistics_order_contract c ON a.id = c.l_order_id
- <!-- LEFT JOIN ( SELECT l_order_id FROM kwt_logistics_order_unit WHERE unit_type = 1 AND ent_id = #{entId} ) g ON a.id = g.l_order_id-->
- <!-- LEFT JOIN ( SELECT ent_id FROM kwt_logistics_order_unit WHERE unit_type = 1 AND ent_id = #{entId} ) g ON a.id = g.l_order_id-->
- LEFT JOIN kwt_logistics_order_unit g on a.id = g.l_order_id and g.unit_type = 1
- LEFT JOIN kwt_logistics_order_unit h on a.id = h.l_order_id and h.unit_type = 2
- <where>
- a.del_flag = 0
- and a.bind_status = '0' <!--and d.unit_type = 1-->
- <if test="dictValue != null and dictValue != ''">
- AND a.payment = #{dictValue}
- </if>
- <if test="logisticsOrderParam.companyId != null and logisticsOrderParam.companyId != ''">
- <!-- AND d.ent_id = #{logisticsOrderParam.companyId}-->
- AND g.ent_id = #{logisticsOrderParam.companyId}
- </if>
- <if test="ids != null and ids.size() > 0">
- AND ( h.ent_id in
- <foreach collection="ids" open="(" close=")" separator="," item="item">
- #{item}
- </foreach>
- or h.top_ent_id in
- <foreach collection="ids" item="item" separator="," close=")" open="(">
- #{item}
- </foreach>
- )
- </if>
- <if test="logisticsOrderParam.taxRate != null and logisticsOrderParam.taxRate != ''">
- AND a.tax_rate = #{logisticsOrderParam.taxRate}
- </if>
- <if test="logisticsOrderParam.goodsName != null and logisticsOrderParam.goodsName != ''">
- AND b.goods_name LIKE concat('%', #{logisticsOrderParam.goodsName}, '%')
- </if>
- <if test="logisticsOrderParam.startTime != null and logisticsOrderParam.startTime != ''">
- AND a.start_time >= #{logisticsOrderParam.startTime}
- </if>
- <if test="logisticsOrderParam.endTime != null and logisticsOrderParam.endTime != ''">
- AND a.end_time <= #{logisticsOrderParam.endTime}
- </if>
- <if test="orderStatusList != null and orderStatusList.size() > 0">
- and a.status in
- <foreach collection="orderStatusList" separator="," open="(" close=")" item="item">
- #{item,jdbcType=INTEGER}
- </foreach>
- </if>
- </where>
- ORDER BY a.create_time DESC
- <if test="logisticsOrderParam.page != null and logisticsOrderParam.pageSize != null">
- limit #{logisticsOrderParam.page,jdbcType=INTEGER}, #{logisticsOrderParam.pageSize,jdbcType=INTEGER}
- </if>
- </select>
- <select id="selectLogisticOrderCount" resultType="java.lang.Long">
- SELECT count(a.id)
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_goods b ON a.id = b.l_order_id
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- LEFT JOIN kwt_logistics_order_unit h ON a.id = h.l_order_id
- LEFT JOIN kwt_logistics_order_contract c ON a.id = c.l_order_id
- <where>
- a.del_flag = 0
- and d.unit_type = 1
- and h.unit_type = 2
- and a.bind_status = '0'
- <if test="dictValue != null and dictValue != ''">
- AND a.payment = #{dictValue}
- </if>
- <if test="logisticsOrderParam.companyId != null and logisticsOrderParam.companyId != ''">
- AND d.ent_id = #{logisticsOrderParam.companyId}
- </if>
- <if test="ids != null and ids.size() > 0">
- AND ( h.ent_id in
- <foreach collection="ids" open="(" close=")" separator="," item="item">
- #{item}
- </foreach>
- or h.top_ent_id in
- <foreach collection="ids" item="item" separator="," close=")" open="(">
- #{item}
- </foreach>
- )
- </if>
- <if test="logisticsOrderParam.taxRate != null and logisticsOrderParam.taxRate != ''">
- AND a.tax_rate = #{logisticsOrderParam.taxRate}
- </if>
- <if test="logisticsOrderParam.goodsName != null and logisticsOrderParam.goodsName != ''">
- AND b.goods_name LIKE concat('%', #{logisticsOrderParam.goodsName}, '%')
- </if>
- <if test="logisticsOrderParam.startTime != null and logisticsOrderParam.startTime != ''">
- AND a.start_time >= #{logisticsOrderParam.startTime}
- </if>
- <if test="logisticsOrderParam.endTime != null and logisticsOrderParam.endTime != ''">
- AND a.end_time <= #{logisticsOrderParam.endTime}
- </if>
- <if test="orderStatusList != null and orderStatusList.size() > 0">
- and a.status in
- <foreach collection="orderStatusList" item="item" close=")" open="(" separator=",">
- #{item,jdbcType=INTEGER}
- </foreach>
- </if>
- </where>
- ORDER BY a.create_time DESC
- </select>
- <select id="getRejectReason" resultType="java.util.Map">
- SELECT a.id AS lOrderId,
- b.remark remark
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id
- WHERE a.del_flag = '0'
- AND b.del_flag = '0'
- and b.status = #{status}
- and a.id = #{id}
- </select>
- <select id="getSubcontractConsignment" resultType="com.sckw.transport.model.vo.SubcontractConsignmentVO">
- SELECT a.id,
- a.pid,
- a.`status` as status,
- a.l_order_no as consignOrderNo,
- c.firm_name as carrierContacts,
- d.goods_name as goodsName,
- a.amount as amount,
- a.price,
- a.price_type as priceType,
- e.detail_address as loadAddress,
- f.detail_address as unloadAddress,
- a.billing_mode as billingMode,
- a.loss,
- a.loss_unit as lossUnit,
- a.goods_price as goodsPrice,
- a.goods_price_unit as goodsPriceUnit,
- a.settlement_cycle as settlementCycle,
- c.contacts as carrierContacts,
- c.phone as carrierPhone,
- b.firm_name as consignCompany,
- b.contacts as consignContacts,
- b.phone as consignPhone,
- e.contacts as loadContacts,
- e.phone as loadContacts,
- f.contacts as unloadContacts,
- f.phone as unloadPhone,
- a.start_time as shipmentsDate,
- a.end_time as receiveGoodsDate,
- a.remark,
- a.create_by as createBy,
- a.create_time as createTime,
- g.contract_id as contractId
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
- AND b.unit_type = 1
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
- AND c.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods d ON a.id = d.l_order_id
- LEFT JOIN kwt_logistics_order_address e ON a.id = e.l_order_id
- AND e.address_type = 1
- LEFT JOIN kwt_logistics_order_address f ON a.id = f.l_order_id
- AND f.address_type = 2
- LEFT JOIN kwt_logistics_order_contract g ON a.id = g.l_order_id
- WHERE a.del_flag = 0
- AND b.del_flag = 0
- AND c.del_flag = 0
- AND e.del_flag = 0
- AND f.del_flag = 0
- and a.pid = #{lOrderId}
- ORDER BY a.create_time
- limit #{page}, #{pageSize}
- </select>
- <select id="getSubcontractConsignmentList" resultType="com.sckw.transport.model.vo.SubcontractConsignmentVO">
- SELECT a.id,
- a.pid,
- a.`status` as status,
- a.l_order_no as consignOrderNo,
- <!-- a.l_order_no as carrierOrderNo,-->
- c.firm_name as carrierCompany,
- d.goods_name as goodsName,
- a.amount as carryingCapacity,
- a.price,
- a.price_type as priceType,
- e.detail_address as loadAddress,
- f.detail_address as unloadAddress,
- a.billing_mode as billingMode,
- a.loss,
- a.tax_rate as taxRate,
- a.loss_unit as lossUnit,
- a.goods_price as goodsPrice,
- a.goods_price_unit as goodsPriceUnit,
- a.settlement_cycle as settlementCycle,
- c.contacts as carrierContacts,
- c.phone as carrierPhone,
- b.firm_name as consignCompany,
- b.contacts as consignContacts,
- b.phone as consignPhone,
- e.contacts as loadContacts,
- e.phone as loadPhone,
- f.contacts as unloadContacts,
- f.phone as unloadPhone,
- a.start_time as shipmentsDate,
- a.end_time as receiveGoodsDate,
- a.remark,
- a.create_by as createBy,
- a.create_time as createTime,
- g.contract_id as contractId,
- g.contract_no as contractNo,
- g.contract_name as contractName,
- g.signing_way as signing,
- e.city_name as loadCityName,
- f.city_name as unloadCityName,
- e.name as loadName,
- f.name as unloadName,
- a.type as orderSource
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
- AND b.unit_type = 1
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
- AND c.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods d ON a.id = d.l_order_id
- LEFT JOIN kwt_logistics_order_address e ON a.id = e.l_order_id
- AND e.address_type = 1
- LEFT JOIN kwt_logistics_order_address f ON a.id = f.l_order_id
- AND f.address_type = 2
- LEFT JOIN kwt_logistics_order_contract g ON a.id = g.l_order_id
- WHERE a.del_flag = 0
- AND b.del_flag = 0
- AND c.del_flag = 0
- AND e.del_flag = 0
- AND f.del_flag = 0
- <if test="lOrderIds != null and lOrderIds.size() > 0">
- and a.pid in
- <foreach collection="lOrderIds" item="item" close=")" open="(" separator=",">
- #{item,jdbcType=BIGINT}
- </foreach>
- </if>
- <!-- ORDER BY a.id desc-->
- ORDER BY a.create_time desc
- </select>
- <select id="getSubcontractConsignmentNotPage" resultType="com.sckw.transport.model.vo.SubcontractConsignmentVO">
- SELECT a.id,
- a.pid,
- a.`status` as status,
- a.l_order_no as consignOrderNo,
- <!-- a.l_order_no as carrierOrderNo,-->
- c.firm_name as carrierCompany,
- d.goods_name as goodsName,
- a.amount as carryingCapacity,
- a.price,
- a.price_type as priceType,
- e.detail_address as loadAddress,
- f.detail_address as unloadAddress,
- a.billing_mode as billingMode,
- a.loss,
- a.loss_unit as lossUnit,
- a.goods_price as goodsPrice,
- a.goods_price_unit as goodsPriceUnit,
- a.settlement_cycle as settlementCycle,
- c.contacts as carrierContacts,
- c.phone as carrierPhone,
- b.firm_name as consignCompany,
- b.contacts as consignContacts,
- b.phone as consignPhone,
- e.contacts as loadContacts,
- e.phone as loadPhone,
- f.contacts as unloadContacts,
- f.phone as unloadPhone,
- a.start_time as shipmentsDate,
- a.end_time as receiveGoodsDate,
- a.remark,
- a.create_by as createBy,
- a.create_time as createTime,
- g.contract_id as contractId,
- g.contract_no as contractNo,
- g.contract_name as contractName,
- g.signing_way as signing,
- e.city_name as loadCityName,
- f.city_name as unloadCityName
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
- AND b.unit_type = 1
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
- AND c.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods d ON a.id = d.l_order_id
- LEFT JOIN kwt_logistics_order_address e ON a.id = e.l_order_id
- AND e.address_type = 1
- LEFT JOIN kwt_logistics_order_address f ON a.id = f.l_order_id
- AND f.address_type = 2
- LEFT JOIN kwt_logistics_order_contract g ON a.id = g.l_order_id
- WHERE a.del_flag = 0
- AND b.del_flag = 0
- AND c.del_flag = 0
- AND e.del_flag = 0
- AND f.del_flag = 0
- and a.pid = #{lOrderId}
- ORDER BY a.create_time desc
- </select>
- <select id="countSubcontractConsignmentById" resultType="java.util.Map">
- SELECT COUNT(0) as total,
- a.id,
- a.pid,
- a.`status` as status,
- a.l_order_no as consignOrderNo,
- c.firm_name as carrierContacts,
- d.goods_name as goodsName,
- a.amount as amount,
- a.price,
- a.price_type as priceType,
- e.detail_address as loadAddress,
- f.detail_address as unloadAddress,
- a.billing_mode as billingMode,
- a.loss,
- a.loss_unit as lossUnit,
- a.goods_price as goodsPrice,
- a.goods_price_unit as goodsPriceUnit,
- a.settlement_cycle as settlementCycle,
- c.contacts as carrierContacts,
- c.phone as carrierPhone,
- b.firm_name as consignCompany,
- b.contacts as consignContacts,
- b.phone as consignPhone,
- e.contacts as loadContacts,
- e.phone as loadContacts,
- f.contacts as unloadContacts,
- f.phone as unloadPhone,
- a.start_time as shipmentsDate,
- a.end_time as receiveGoodsDate,
- a.remark,
- a.create_by as createBy,
- a.create_time as createTime,
- g.contract_id as contractId
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
- AND b.unit_type = 1
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
- AND c.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods d ON a.id = d.l_order_id
- LEFT JOIN kwt_logistics_order_address e ON a.id = e.l_order_id
- AND e.address_type = 1
- LEFT JOIN kwt_logistics_order_address f ON a.id = f.l_order_id
- AND f.address_type = 2
- LEFT JOIN kwt_logistics_order_contract g ON a.id = g.l_order_id
- WHERE a.del_flag = 0
- AND b.del_flag = 0
- AND c.del_flag = 0
- AND e.del_flag = 0
- AND f.del_flag = 0
- and a.pid = #{lOrderId}
- ORDER BY a.create_time
- </select>
- <select id="selectDriverListById" resultType="com.sckw.transport.model.vo.DriverListVo">
- SELECT count(IF(b.status in (7, 8, 13), 1, NULL)) AS count,
- a.id AS lOrderId,
- a.l_order_no AS lOrderNo,
- b.driver_id AS driverId,
- b.id AS wOrderId,
- b.w_order_no AS wOrderNo,
- b.driver_name AS driverName,
- b.driver_phone AS driverPhone,
- b.driver_idcard AS driverIdCard,
- b.truck_no AS truckNo,
- b.status AS status
- FROM
- kwt_waybill_order b
- LEFT JOIN kwt_logistics_order a
- ON b.l_order_id = a.id
- <!-- SELECT a.id AS lOrderId,-->
- <!-- a.l_order_no AS lOrderNo,-->
- <!-- b.driver_id AS driverId,-->
- <!-- b.id AS wOrderId,-->
- <!-- b.w_order_no AS wOrderNo,-->
- <!-- b.driver_name AS driverName,-->
- <!-- b.driver_phone AS driverPhone,-->
- <!-- b.driver_idcard AS driverIdCard,-->
- <!-- b.truck_no AS truckNo-->
- <!-- ,-->
- <!-- COUNT( b.id ) AS count-->
- <!-- FROM-->
- <!-- kwt_waybill_order b,-->
- <!-- kwt_logistics_order a-->
- <where>
- a.id = b.l_order_id
- AND a.del_flag = 0
- AND b.del_flag = 0
- AND b.type = '1'
- AND b.status = 1
- <if test="driverParam.lOrderId != null and driverParam.lOrderId != ''">
- AND a.id =#{driverParam.lOrderId}
- </if>
- <if test="driverParam.driverName != null and driverParam.driverName != '' or (driverParam.driverPhone != null and driverParam.driverPhone != '') or (driverParam.truckNo != null and driverParam.truckNo != '')">
- <!-- and (-->
- <if test="driverParam.driverName != null and driverParam.driverName != ''">
- and b.driver_name like concat('%'
- , #{driverParam.driverName}
- , '%')
- </if>
- <if test="driverParam.driverPhone != null and driverParam.driverPhone != ''">
- and b.driver_phone like concat('%'
- , #{driverParam.driverPhone}
- , '%')
- </if>
- <if test="driverParam.truckNo != null and driverParam.truckNo != ''">
- and b.truck_no like concat('%'
- , #{driverParam.truckNo}
- , '%')
- </if>
- <!-- )-->
- </if>
- GROUP BY
- b.truck_no
- <!-- a.l_order_no,-->
- </where>
- </select>
- <select id="selectDriverCountById" resultType="com.sckw.transport.model.vo.DriverListVo">
- SELECT count(1) AS count,
- b.truck_no AS truckNo
- FROM
- kwt_waybill_order b
- <where>
- b.del_flag = 0
- AND b.type = '1'
- AND b.status in (7
- , 8
- , 13)
- <if test="driverParam.lOrderId != null and driverParam.lOrderId != ''">
- AND b.l_order_id =#{driverParam.lOrderId}
- </if>
- <if test="driverParam.driverName != null and driverParam.driverName != '' or (driverParam.driverPhone != null and driverParam.driverPhone != '') or (driverParam.truckNo != null and driverParam.truckNo != '')">
- <!-- and (-->
- <if test="driverParam.driverName != null and driverParam.driverName != ''">
- and b.driver_name like concat('%'
- , #{driverParam.driverName}
- , '%')
- </if>
- <if test="driverParam.driverPhone != null and driverParam.driverPhone != ''">
- and b.driver_phone like concat('%'
- , #{driverParam.driverPhone}
- , '%')
- </if>
- <if test="driverParam.truckNo != null and driverParam.truckNo != ''">
- and b.truck_no like concat('%'
- , #{driverParam.truckNo}
- , '%')
- </if>
- </if>
- GROUP BY
- b.truck_no
- </where>
- </select>
- <select id="selectLogisticOrderList" resultType="com.sckw.transport.api.model.dto.LogisticsOrderDTO">
- SELECT DISTINCT a.id AS lOrderId,
- a.l_order_no AS lOrderNO,
- a.t_order_id AS tOrderId,
- a.t_order_no AS tOrderNO,
- a.payment AS payment,
- a.billing_mode AS billingMode,
- c.contract_id AS contractId,
- b.goods_name AS goodsName,
- a.amount,
- a.remark as remark,
- a.unit,
- a.ignore_amount AS ignoreAmount,
- a.price,
- a.price_type as priceType,
- a.goods_price AS goodsPrice,
- a.loss,
- a.loss_unit AS lossUnit,
- a.tax_rate as taxRate,
- a.load_amount AS loadAmount,
- a.unload_amount AS unloadAmount,
- a.total_load_amount AS totalLoadAmount,
- a.total_unload_amount AS totalUnloadAmount,
- a.settlement_cycle as settlementCycle,
- a.start_time AS startTime,
- a.end_time AS endTime,
- a.create_time AS createTime,
- a.create_by AS createBy,
- a.update_by AS updateBy,
- a.update_time AS updateTime
- FROM
- kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_goods b ON a.id = b.l_order_id and a.bind_status = '0'
- <!-- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id-->
- LEFT JOIN kwt_logistics_order_contract c ON a.id = c.l_order_id
- <where>
- <if test="ids != null and ids.size() > 0">
- and a.id in
- <foreach collection="ids" item="item" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- </where>
- and a.status = #{status,jdbcType=INTEGER}
- ORDER BY a.create_time DESC
- </select>
- <select id="selectOrderFinishData" resultType="com.sckw.transport.model.vo.OrderFinishVO">
- SELECT b.amount as amount,
- COUNT(a.id) AS number,
- SUM(IFNULL(a.load_amount, 0)) as loadAmount,
- SUM(IFNULL(a.unload_amount, 0)) AS unloadAmount
- FROM kwt_waybill_order a
- LEFT JOIN kwt_logistics_order b ON b.id = a.l_order_id
- AND a.del_flag = 0
- AND b.del_flag = 0
- <where>
- <if test="orderId != null and orderId != ''">
- and b.id = #{orderId}
- </if>
- </where>
- </select>
- <select id="findLogisticsOrder" resultType="com.sckw.transport.model.KwtLogisticsOrder"
- parameterType="java.util.Map">
- select id,
- ent_id entId,
- t_order_id tOrderId,
- t_order_no tOrderNo,
- l_order_no lOrderNo,
- pid,
- pids,
- settlement_cycle settlementCycle,
- price,
- price_type priceType,
- billing_mode billingMode,
- type,
- amount,
- unit,
- loss,
- loss_unit lossUnit,
- goods_price goodsPrice,
- goods_price_unit goodsPriceUnit,
- start_time startTime,
- end_time endTime,
- subcontract_amount subcontractAmount,
- entrust_amount entrustAmount,
- unload_amount unloadAmount,
- load_amount loadAmount,
- ignore_amount ignoreAmount,
- deficit_amount deficitAmount,
- deficit_price deficitPrice,
- payment,
- tax_rate taxRate,
- remark,
- `status`,
- create_by createBy,
- total_load_amount totalLoadAmount,
- total_unload_amount totalUnloadAmount,
- create_time createTime,
- update_by updateBy,
- update_time updateTime
- from kwt_logistics_order
- where del_flag = 0
- <if test="id != null and id != ''">
- and id = #{id, jdbcType=BIGINT}
- </if>
- <if test="pid != null and pid != ''">
- and pid in (#{pid, jdbcType=VARCHAR})
- </if>
- <if test="status != null and status != ''">
- and status = #{status, jdbcType=INTEGER}
- </if>
- <if test="upperlOrderId != null and upperlOrderId != ''">
- and FIND_IN_SET(#{upperlOrderId, jdbcType=BIGINT}, pids)
- </if>
- <if test="belowlOrderId != null and belowlOrderId != ''">
- and FIND_IN_SET(id, #{belowlOrderId, jdbcType=VARCHAR})
- </if>
- <if test="ownOrderId != null and ownOrderId != ''">
- and id != #{ownOrderId, jdbcType=BIGINT}
- </if>
- <if test="allOrderId != null and allOrderId != ''">
- and (
- FIND_IN_SET(#{plOrderIds, jdbcType=BIGINT}
- , pids)
- or FIND_IN_SET(id
- , #{currentlOrderId, jdbcType=VARCHAR})
- )
- </if>
- <if test="checkEntId != null and checkEntId != ''">
- and id in (select l_order_id from kwt_logistics_order_unit where unit_type = 1
- and top_ent_id = #{checkEntId, jdbcType=BIGINT})
- </if>
- </select>
- <select id="selectOrderCountByTorderId" resultType="com.sckw.transport.model.dto.LogisticsOrderDTO">
- SELECT a.id as lOrderId,
- a.l_order_no as lOrderNo,
- b.`status` as `status`,
- a.t_order_id as tOrderId,
- a.t_order_no as tOrderNo,
- a.payment as payment,
- a.amount,
- a.price,
- a.loss,
- a.goods_price as goodsPrice,
- c.firm_name as comanyName,
- c.contacts,
- c.phone,
- a.create_by as createBy,
- a.create_time as createTime
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id AND c.unit_type = #{type}
- WHERE a.del_flag = '0'
- AND b.del_flag = '0'
- AND a.t_order_id = #{id,jdbcType=VARCHAR}
- </select>
- <select id="getAddressList" resultType="java.lang.Integer">
- SELECT a.city_code
- FROM kwt_logistics_order_address a
- LEFT JOIN kwt_logistics_order b ON a.l_order_id = b.id
- where a.city_code is not null
- AND b.ent_id = #{entId}
- GROUP BY a.city_code
- </select>
- <select id="getAddressDetailListByEntId" resultType="com.sckw.transport.api.model.dto.AddressResDTO">
- </select>
- <select id="selectMaxLevel" resultType="java.lang.Integer">
- SELECT MAX(LEVEL)
- FROM kwt_logistics_order
- WHERE del_flag = 0
- AND FIND_IN_SET(#{id}, pids)
- </select>
- <select id="countAmountByTradeOrderId" resultType="java.util.Map">
- SELECT IFNULL(SUM(unload_amount), 0) AS unloadAmount,
- IFNULL(SUM(load_amount), 0) AS loadAmount,
- IFNULL(SUM(total_load_amount), 0) AS totalLoadAmount,
- IFNULL(SUM(total_unload_amount), 0) AS totalUnloadAmount
- FROM kwt_logistics_order
- WHERE del_flag = 0
- AND t_order_id = #{tOrderId}
- AND `status` IN (
- 8
- )
- </select>
- <select id="selectOrderListByIdsAndUnitType" resultType="com.sckw.transport.model.dto.LogisticsOrderDTO">
- SELECT a.id as lOrderId,
- a.l_order_no as lOrderNo,
- b.`status` as `status`,
- a.t_order_id as tOrderId,
- a.t_order_no as tOrderNo,
- a.payment as payment,
- a.amount,
- a.price,
- a.loss,
- a.goods_price as goodsPrice,
- c.firm_name as companyName,
- c.contacts,
- c.phone,
- a.create_by as createBy,
- a.create_time as createTime
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id and a.`status` = b.`status`
- LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id AND c.unit_type = #{type}
- WHERE a.del_flag = '0'
- AND b.del_flag = '0'
- AND a.t_order_id IN
- <foreach collection="ids" item="item" open="(" close=")" separator=",">
- #{item}
- </foreach>
- order by createTime desc
- </select>
- <select id="selectLoopOrderAndDriverListByOrderId" resultType="com.sckw.transport.model.vo.DriverListVo">
- SELECT a.id AS lOrderId,
- a.l_order_no AS lOrderNo,
- c.driver_id AS driverId,
- c.id AS circulateId,
- c.driver_name AS driverName,
- c.driver_phone AS driverPhone,
- c.driver_idcard AS driverIdCard,
- c.truck_no AS truckNo,
- c.truck_id AS truckId,
- c.total_take as count,
- c.status as status
- FROM
- kwt_logistics_order_circulate c, kwt_logistics_order a
- <where>
- a.id = c.l_order_id
- AND c.type = '2'
- AND c.`status` = '0'
- AND a.del_flag = 0
- AND c.del_flag = 0
- <if test="driverParam.lOrderId != null and driverParam.lOrderId != ''">
- AND a.id =#{driverParam.lOrderId}
- </if>
- <if test="driverParam.driverName != null and driverParam.driverName != '' or (driverParam.driverPhone != null and driverParam.driverPhone != '') or (driverParam.truckNo != null and driverParam.truckNo != '')">
- <!-- and (-->
- <if test="driverParam.driverName != null and driverParam.driverName != ''">
- and c.driver_name like concat('%'
- , #{driverParam.driverName}
- , '%')
- </if>
- <if test="driverParam.driverPhone != null and driverParam.driverPhone != ''">
- and c.driver_phone like concat('%'
- , #{driverParam.driverPhone}
- , '%')
- </if>
- <if test="driverParam.truckNo != null and driverParam.truckNo != ''">
- and c.truck_no like concat('%'
- , #{driverParam.truckNo}
- , '%')
- </if>
- <!-- )-->
- </if>
- </where>
- </select>
- <select id="selectLoopOrderAndDriverListByOrderIds" resultType="com.sckw.transport.model.vo.DriverListVo">
- SELECT c.id AS circulateId,
- c.driver_id AS driverId,
- b.id AS lOrderId,
- b.l_order_no AS lOrderNo,
- c.driver_name AS driverName,
- c.driver_phone AS driverPhone,
- c.driver_idcard AS driverIdCard,
- c.truck_no AS truckNo,
- c.truck_id AS truckId,
- c.total_take AS count
- FROM
- kwt_logistics_order_circulate c
- LEFT JOIN kwt_logistics_order b
- ON b.id = c.l_order_id
- WHERE
- b.del_flag = 0
- AND c.del_flag = 0
- AND c.STATUS = 0
- <if test="idsList != null and idsList.size() > 0">
- AND b.id IN
- <foreach collection="idsList" item="item" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- </select>
- <sql id="Query_Column_List">
- a.id AS lOrderId,
- a.l_order_no AS lOrderNo,
- a.t_order_id AS tOrderId,
- a.t_order_no AS tOrderNo,
- a.loss AS loss,
- a.loss_unit AS lossUnit,
- a.settlement_cycle AS accountsCycle,
- a.billing_mode AS billingMode,
- a.amount AS carryingCapacity,
- a.goods_price AS goodsPrice,
- a.goods_price_unit AS goodsPriceUnit,
- a.`status` AS status,
- a.settlement_cycle AS settlementCycle,
- a.price AS price,
- a.price_type AS priceType,
- a.type AS orderSource,
- a.unit AS unit,
- a.subcontract_amount AS subcontractAmount,
- a.entrust_amount AS entrustAmount,
- a.unload_amount AS unloadAmount,
- a.load_amount AS loadAmount,
- a.ignore_amount AS ignoreAmount,
- a.deficit_amount AS deficitAmount,
- a.deficit_price AS deficitPrice,
- a.total_load_amount AS totalLoadAmount,
- a.total_unload_amount AS totalUnloadAmount,
- a.payment AS payment,
- a.tax_rate AS taxRate,
- a.ent_id AS entId,
- a.create_by AS createBy,
- a.create_time AS createTime,
- a.update_by AS updateBy,
- a.update_time AS updateTime,
- a.start_time AS shipmentsDateTime,
- a.end_time AS receiveGoodsDateTime,
- a.remark AS remark,
- g.goods_id AS goodsId,
- g.goods_name AS goodsName,
- g.goods_type AS goodsType,
- f.contract_id AS contractId,
- f.contract_no AS contractNo,
- f.signing_way AS signing,
- d.ent_id AS consignCompanyId,
- d.top_ent_id AS consignTopEntId,
- d.firm_name AS consignCompany,
- d.contacts AS consignContacts,
- d.contacts_id AS consignContactsId,
- e.contacts_id AS carrierContactsId,
- d.phone AS consignPhone,
- e.ent_id AS carrierCompanyId,
- e.firm_name AS carrierCompany,
- e.top_ent_id AS carrierTopEntId,
- e.contacts AS carrierContacts,
- e.phone AS carrierPhone,
- b.`name` AS loadName,
- b.address_type AS loadType,
- b.city_name AS loadCityName,
- b.city_code AS loadCityCode,
- b.detail_address AS loadAddress,
- b.contacts AS shipmentsContacts,
- b.phone AS shipmentsPhone,
- b.lat AS loadLat,
- b.lng AS loadLng,
- c.name AS unloadName,
- c.address_type AS unloadType,
- c.contacts AS receiveGoodsContacts,
- c.phone AS receiveGoodsPhone,
- c.city_name AS unloadCityName,
- c.city_code AS unloadCityCode,
- c.detail_address AS unloadAddress,
- c.lat AS unloadLat,
- c.lng AS unloadLng,
- f.contract_name as contract
- ,
- a.del_flag as delFlag
- </sql>
- <sql id="Query_Column_List_Accept_Carriage">
- a.id AS lOrderId,
- a.l_order_no AS lOrderNo,
- a.t_order_id AS tOrderId,
- a.t_order_no AS tOrderNo,
- a.loss AS loss,
- a.loss_unit AS lossUnit,
- a.settlement_cycle AS accountsCycle,
- a.billing_mode AS billingMode,
- a.amount AS carryingCapacity,
- a.goods_price AS goodsPrice,
- a.goods_price_unit AS goodsPriceUnit,
- a.`status` AS status,
- a.settlement_cycle AS settlementCycle,
- a.price AS price,
- a.price_type AS priceType,
- a.type AS orderSource,
- a.unit AS unit,
- a.subcontract_amount AS subcontractAmount,
- a.entrust_amount AS entrustAmount,
- a.unload_amount AS unloadAmount,
- a.load_amount AS loadAmount,
- a.ignore_amount AS ignoreAmount,
- a.deficit_amount AS deficitAmount,
- a.deficit_price AS deficitPrice,
- a.total_load_amount AS totalLoadAmount,
- a.total_unload_amount AS totalUnloadAmount,
- a.payment AS payment,
- a.tax_rate AS taxRate,
- a.ent_id AS entId,
- a.create_by AS createBy,
- a.create_time AS createTime,
- a.update_by AS updateBy,
- a.update_time AS updateTime,
- a.start_time AS shipmentsDateTime,
- a.end_time AS receiveGoodsDateTime,
- a.remark AS remark,
- g.goods_id AS goodsId,
- g.goods_name AS goodsName,
- g.goods_type AS goodsType,
- f.contract_id AS contractId,
- f.contract_no AS contractNo,
- f.signing_way AS signing,
- d.ent_id AS consignCompanyId,
- d.top_ent_id AS consignTopEntId,
- d.firm_name AS consignCompany,
- d.contacts AS consignContacts,
- d.contacts_id AS consignContactsId,
- e.contacts_id AS carrierContactsId,
- d.phone AS consignPhone,
- e.ent_id AS carrierCompanyId,
- e.firm_name AS carrierCompany,
- e.top_ent_id AS carrierTopEntId,
- e.contacts AS carrierContacts,
- e.phone AS carrierPhone,
- b.`name` AS loadName,
- b.address_type AS loadType,
- b.city_name AS loadCityName,
- b.city_code AS loadCityCode,
- b.detail_address AS loadAddress,
- b.contacts AS shipmentsContacts,
- b.phone AS shipmentsPhone,
- b.lat AS loadLat,
- b.lng AS loadLng,
- c.`name` AS unloadName,
- c.address_type AS unloadType,
- c.contacts AS receiveGoodsContacts,
- c.phone AS receiveGoodsPhone,
- c.city_name AS unloadCityName,
- c.city_code AS unloadCityCode,
- c.detail_address AS unloadAddress,
- c.lat AS unloadLat,
- c.lng AS unloadLng,
- f.contract_name as contract
- ,
- a.del_flag as delFlag,
- case when a.ent_id = e.top_ent_id then 1 ELSE 2 end as createType
- </sql>
- <sql id="Query_Column_List_Cogsign">
- a.id AS lOrderId,
- a.l_order_no AS lOrderNo,
- a.t_order_id AS tOrderId,
- a.t_order_no AS tOrderNo,
- a.loss AS loss,
- a.loss_unit AS lossUnit,
- a.settlement_cycle AS accountsCycle,
- a.billing_mode AS billingMode,
- a.amount AS carryingCapacity,
- a.goods_price AS goodsPrice,
- a.goods_price_unit AS goodsPriceUnit,
- a.`status` AS status,
- a.settlement_cycle AS settlementCycle,
- a.price AS price,
- a.price_type AS priceType,
- a.type AS orderSource,
- a.unit AS unit,
- a.subcontract_amount AS subcontractAmount,
- a.entrust_amount AS entrustAmount,
- a.unload_amount AS unloadAmount,
- a.load_amount AS loadAmount,
- a.ignore_amount AS ignoreAmount,
- a.deficit_amount AS deficitAmount,
- a.deficit_price AS deficitPrice,
- a.total_load_amount AS totalLoadAmount,
- a.total_unload_amount AS totalUnloadAmount,
- a.payment AS payment,
- a.tax_rate AS taxRate,
- a.ent_id AS entId,
- a.create_by AS createBy,
- a.create_time AS createTime,
- a.update_by AS updateBy,
- a.update_time AS updateTime,
- a.start_time AS shipmentsDateTime,
- a.end_time AS receiveGoodsDateTime,
- a.remark AS remark,
- g.goods_id AS goodsId,
- g.goods_name AS goodsName,
- g.goods_type AS goodsType,
- f.contract_id AS contractId,
- f.contract_no AS contractNo,
- f.signing_way AS signing,
- d.ent_id AS consignCompanyId,
- d.top_ent_id AS consignTopEntId,
- d.firm_name AS consignCompany,
- d.contacts AS consignContacts,
- d.contacts_id AS consignContactsId,
- e.contacts_id AS carrierContactsId,
- d.phone AS consignPhone,
- e.ent_id AS carrierCompanyId,
- e.firm_name AS carrierCompany,
- e.top_ent_id AS carrierTopEntId,
- e.contacts AS carrierContacts,
- e.phone AS carrierPhone,
- b.`name` AS loadName,
- b.address_type AS loadType,
- b.city_name AS loadCityName,
- b.city_code AS loadCityCode,
- b.detail_address AS loadAddress,
- b.contacts AS shipmentsContacts,
- b.phone AS shipmentsPhone,
- b.lat AS loadLat,
- b.lng AS loadLng,
- c.`name` AS unloadName,
- c.address_type AS unloadType,
- c.contacts AS receiveGoodsContacts,
- c.phone AS receiveGoodsPhone,
- c.city_name AS unloadCityName,
- c.city_code AS unloadCityCode,
- c.detail_address AS unloadAddress,
- c.lat AS unloadLat,
- c.lng AS unloadLng,
- f.contract_name as contract
- ,
- a.del_flag as delFlag,
- case when a.ent_id = d.top_ent_id then 1 ELSE 2 end as createType
- </sql>
- <sql id="New_Query_Column_List">
- lOrderId,
- lOrderNo,
- tOrderId,
- tOrderNo,
- loss,
- lossUnit,
- accountsCycle,
- billingMode,
- carryingCapacity,
- goodsPrice,
- goodsPriceUnit,
- STATUS,
- settlementCycle,
- price,
- priceType,
- orderSource,
- unit,
- subcontractAmount,
- entrustAmount,
- unloadAmount,
- loadAmount,
- ignoreAmount,
- deficitAmount,
- deficitPrice,
- totalLoadAmount,
- totalUnloadAmount,
- payment,
- taxRate,
- entId,
- createBy,
- createTime,
- updateBy,
- updateTime,
- shipmentsDateTime,
- receiveGoodsDateTime,
- remark,
- goodsId,
- goodsName,
- goodsType,
- contractId,
- contractNo,
- signing,
- consignCompanyId,
- consignTopEntId,
- consignCompany,
- consignContacts,
- consignPhone,
- carrierCompanyId,
- carrierCompany,
- carrierTopEntId,
- carrierContacts,
- carrierPhone,
- loadName,
- loadType,
- loadCityName,
- loadCityCode,
- loadAddress,
- shipmentsContacts,
- shipmentsPhone,
- loadLat,
- loadLng,
- unloadName,
- unloadType,
- receiveGoodsContacts,
- receiveGoodsPhone,
- unloadCityName,
- unloadCityCode,
- unloadAddress,
- unloadLat,
- unloadLng,
- contract,
- createType
- </sql>
- <select id="selectLogisticsOrderList" resultType="com.sckw.transport.model.vo.AcceptCarriageOrderVO">
- SELECT
- <include refid="Query_Column_List">
- </include>
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="type == 1">
- <!-- and (d.top_ent_id = #{entId} or d.ent_id = #{entId})-->
- AND ((
- a.ent_id = #{entId}
- <if test="userIds != null and userIds.size() > 0">
- AND a.create_by IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- d.top_ent_id = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND d.contacts_id IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </if>
- <if test="type == 2">
- <!-- and (e.top_ent_id = #{entId} or e.ent_id = #{entId})-->
- AND ((
- a.ent_id = #{entId}
- <if test="userIds != null and userIds.size() > 0">
- AND a.create_by IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- e.top_ent_id = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND e.contacts_id IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </if>
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%', #{query.keywords}, '%')
- or a.l_order_no like concat('%', #{query.keywords}, '%')
- or d.firm_name like concat('%', #{query.keywords}, '%')
- or e.firm_name like concat('%', #{query.keywords}, '%')
- or g.goods_name like concat('%', #{query.keywords}, '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="idsList != null and idsList.size() > 0">
- and a.id in
- <foreach collection="idsList" close=")" open="(" separator="," item="item">
- #{item}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- and b.city_code = #{query.loadAddressCode}
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- and c.city_code = #{query.unloadAddressCode}
- </if>
- <if test="query.billingMode != null and query.billingMode != ''">
- and a.billing_mode =#{query.billingMode}
- </if>
- </where>
- ORDER BY a.create_time DESC
- <!-- ,a.create_time-->
- </select>
- <select id="selectManagementLogisticsOrderList" resultType="com.sckw.transport.model.vo.ManagementLogisticsOrderVO">
- SELECT
- <include refid="Query_Column_List">
- </include>
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="authEntIdList != null and authEntIdList.size() != 0">
- and a.ent_id in
- <foreach collection="authEntIdList" item="item" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%', #{query.keywords}, '%')
- or a.l_order_no like concat('%', #{query.keywords}, '%')
- or d.firm_name like concat('%', #{query.keywords}, '%')
- or e.firm_name like concat('%', #{query.keywords}, '%')
- or g.goods_name like concat('%', #{query.keywords}, '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="idsList != null and idsList.size > 0">
- and a.id in
- <foreach collection="idsList" item="item" separator="," open="(" close=")">
- #{item}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- and b.city_code LIKE CONCAT(#{query.loadAddressCode}
- , '%')
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- and c.city_code LIKE CONCAT(#{query.unloadAddressCode}
- , '%')
- </if>
- <if test="query.billingMode != null and query.billingMode != ''">
- and a.billing_mode =#{query.billingMode}
- </if>
- </where>
- ORDER BY a.create_time DESC
- <!-- ,a.create_time-->
- </select>
- <select id="countLogisticsOrderListByStatus" resultType="com.sckw.mongo.model.TableTops">
- SELECT a.`status` AS value ,
- COUNT(a.`status`) AS total
- FROM
- kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b
- ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="type == 1">
- <!-- and (d.top_ent_id = #{entId} or d.ent_id = #{entId})-->
- AND ((
- a.ent_id = #{entId}
- <if test="userIds != null and userIds.size() > 0">
- AND a.create_by IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- d.top_ent_id = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND d.contacts_id IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </if>
- <if test="type == 2">
- <!-- and (e.top_ent_id = #{entId} or e.ent_id = #{entId})-->
- AND ((
- a.ent_id = #{entId}
- <if test="userIds != null and userIds.size() > 0">
- AND a.create_by IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- e.top_ent_id = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND e.contacts_id IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </if>
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%'
- , #{query.keywords}
- , '%')
- or a.l_order_no like concat('%'
- , #{query.keywords}
- , '%')
- or d.firm_name like concat('%'
- , #{query.keywords}
- , '%')
- or e.firm_name like concat('%'
- , #{query.keywords}
- , '%')
- or g.goods_name like concat('%'
- , #{query.keywords}
- , '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="idsList != null and idsList.size() > 0">
- and a.id in
- <foreach collection="idsList" item="item" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- and b.city_code = #{query.loadAddressCode}
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- and c.city_code = #{query.unloadAddressCode}
- </if>
- </where>
- group by a.status
- </select>
- <select id="countManagementLogisticsOrderListByStatus" resultType="com.sckw.mongo.model.TableTops">
- SELECT a.`status` AS value ,
- COUNT(a.`status`) AS total
- FROM
- kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b
- ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="authEntIdList != null and authEntIdList.size() != 0">
- and a.ent_id in
- <foreach collection="authEntIdList" separator="," close=")" open="(" item="item">
- #{item}
- </foreach>
- </if>
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%'
- , #{query.keywords}
- , '%')
- or a.l_order_no like concat('%'
- , #{query.keywords}
- , '%')
- or d.firm_name like concat('%'
- , #{query.keywords}
- , '%')
- or e.firm_name like concat('%'
- , #{query.keywords}
- , '%')
- or g.goods_name like concat('%'
- , #{query.keywords}
- , '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- and b.city_code LIKE CONCAT(#{query.loadAddressCode}
- , '%')
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- and c.city_code LIKE CONCAT(#{query.unloadAddressCode}
- , '%')
- </if>
- <if test="query.billingMode != null and query.billingMode != ''">
- and a.billing_mode = #{query.billingMode}
- </if>
- </where>
- group by a.status
- </select>
- <select id="selectCountByLorderId" resultType="java.lang.Integer">
- SELECT COUNT(id)
- FROM kwt_waybill_order
- WHERE del_flag = 0
- and l_order_id = #{orderId}
- <if test="orderStatusList != null and orderStatusList.size() > 0">
- AND status IN
- <foreach collection="orderStatusList" item="item" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </if>
- </select>
- <select id="getMaxOrderNoByDate" resultType="java.lang.String">
- SELECT MAX(l_order_no)
- FROM kwt_logistics_order
- WHERE create_time >= #{date};
- </select>
- <select id="checkLogisticsOrderIsFinishByEntId" resultType="java.lang.String">
- SELECT a.l_order_no
- FROM kwt_logistics_order a
- INNER JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
- AND a.del_flag = 0
- AND b.del_flag = 0
- AND b.unit_type = 1
- INNER JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
- AND a.del_flag = 0
- AND c.del_flag = 0
- AND c.unit_type = 2
- <where>
- <if test="consignEntId != null and consignEntId != ''">
- and b.top_ent_id = #{consignEntId}
- </if>
- <if test="acceptCarriageEntId != null and acceptCarriageEntId != ''">
- and c.top_ent_id = #{acceptCarriageEntId}
- </if>
- <if test="orderStatus != null and orderStatus.size() > 0">
- and a.status in
- <foreach collection="orderStatus" separator="," open="(" item="item" close=")">
- #{item}
- </foreach>
- </if>
- </where>
- </select>
- <select id="selectLogisticsOrderListExport"
- resultType="com.sckw.transport.model.vo.execlVo.AcceptCarriageOrderExcelVo">
- SELECT
- <include refid="Query_Column_List">
- </include>
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="type == 1">
- and (d.top_ent_id = #{entId} or d.ent_id = #{entId})
- </if>
- <if test="type == 2">
- and (e.top_ent_id = #{entId} or e.ent_id = #{entId})
- </if>
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%', #{query.keywords}, '%')
- or a.l_order_no like concat('%', #{query.keywords}, '%')
- or d.firm_name like concat('%', #{query.keywords}, '%')
- or e.firm_name like concat('%', #{query.keywords}, '%')
- or g.goods_name like concat('%', #{query.keywords}, '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- and b.city_code = #{query.loadAddressCode}
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- and c.city_code = #{query.unloadAddressCode}
- </if>
- <if test="query.billingMode != null and query.billingMode != ''">
- and a.billing_mode =#{query.billingMode}
- </if>
- </where>
- ORDER BY a.id DESC
- <!-- ,a.create_time-->
- </select>
- <select id="selectConsignLogisticsOrderList" resultType="com.sckw.transport.model.vo.ConsignOrderVO">
- SELECT
- <include refid="Query_Column_List">
- </include>
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="type == 1">
- <!-- and (d.top_ent_id = #{entId} or d.ent_id = #{entId})-->
- AND ((
- a.ent_id = #{entId}
- <if test="userIds != null and userIds.size() > 0">
- AND a.create_by IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- d.top_ent_id = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND d.contacts_id IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </if>
- <if test="type == 2">
- <!-- and (e.top_ent_id = #{entId} or e.ent_id = #{entId})-->
- AND ((
- a.ent_id = #{entId}
- <if test="userIds != null and userIds.size() > 0">
- AND a.create_by IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- e.top_ent_id = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND e.contacts_id IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </if>
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%', #{query.keywords}, '%')
- or a.l_order_no like concat('%', #{query.keywords}, '%')
- or d.firm_name like concat('%', #{query.keywords}, '%')
- or e.firm_name like concat('%', #{query.keywords}, '%')
- or g.goods_name like concat('%', #{query.keywords}, '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="idsList != null and idsList.size() > 0">
- and a.status in
- <foreach collection="idsList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- and b.city_code = #{query.loadAddressCode}
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- and c.city_code = #{query.unloadAddressCode}
- </if>
- <if test="query.billingMode != null and query.billingMode != ''">
- and a.billing_mode =#{query.billingMode}
- </if>
- </where>
- ORDER BY a.id DESC
- <!-- ,a.create_time-->
- </select>
- <select id="statisticsWaybillSendCar" resultType="java.lang.Integer">
- SELECT COUNT(b.id)
- FROM kwt_waybill_order b
- LEFT JOIN kwt_logistics_order a ON a.id = b.l_order_id
- WHERE a.del_flag = 0
- AND b.del_flag = 0
- <if test="ids != null and ids.size() > 0">
- and a.id in
- <foreach collection="ids" open="(" close=")" separator="," item="item">
- #{item}
- </foreach>
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and b.status in
- <foreach collection="orderList" item="item" separator="," close=")" open="(">
- #{item}
- </foreach>
- </if>
- </select>
- <select id="statisticsLogistics" resultType="java.lang.Long">
- SELECT DISTINCT a.id
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON b.l_order_id = a.id
- WHERE a.del_flag = 0
- AND b.del_flag = 0
- <if test="topEntId != null and topEntId != ''">
- AND (b.ent_id = #{topEntId} OR b.top_ent_id = #{topEntId})
- </if>
- </select>
- <select id="statisticsLogisticsByTopEntIdAndOrderStatus" resultType="java.lang.Integer">
- SELECT count(DISTINCT a.id)
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON b.l_order_id = a.id
- WHERE a.del_flag = 0
- AND b.del_flag = 0
- <if test="topEntId != null and topEntId != ''">
- AND (b.ent_id = #{topEntId} OR b.top_ent_id = #{topEntId})
- </if>
- AND b.unit_type = #{unitType}
- <if test="enterpriseIds != null and enterpriseIds.size() != 0">
- and a.ent_id in
- <foreach collection="enterpriseIds" separator="," close=")" open="(" item="item">
- #{item}
- </foreach>
- </if>
- And a.status in
- <foreach collection="orderList" open="(" close=")" separator="," item="item">
- #{item}
- </foreach>
- </select>
- <select id="selectAcceptCarriageFinishOrder" resultType="com.sckw.transport.model.vo.StatisticsByOrderVO">
- SELECT IFNULL(SUM(t1.waitingAmount), 0) AS waitingAmount,
- IFNULL(SUM(t1.amount), 0) AS amount,
- IFNULL(SUM(t1.entrustAmount), 0) AS entrustAmount,
- IFNULL(SUM(t1.subcontractAmount), 0) AS subcontractAmount,
- IFNULL(SUM(t1.totalPrice), 0) AS totalPrice
- FROM
- (
- SELECT
- <!-- ( a.amount - IFNULL(a.total_load_amount,0)) AS waitingAmount,-->
- case a.status
- when
- 4 then 0
- when 5 then 0
- when 6 then 0
- else (a.amount - IFNULL(a.total_load_amount, 0))
- end waitingAmount,
- a.amount,
- a.entrust_amount AS entrustAmount,
- a.subcontract_amount AS subcontractAmount,
- a.price,
- a.amount * IFNULL(a.price, 0) AS totalPrice
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
- AND a.del_flag = 0
- AND b.del_flag = 0
- WHERE b.unit_type = #{unitType}
- <if test="topId != null and topId != ''">
- and b.top_ent_id = #{topId}
- </if>
- <if test="statusList != null and statusList.size() > 0">
- and a.`status` IN
- <foreach collection="statusList" item="item" separator="," open="(" close=")">
- #{item}
- </foreach>
- </if>
- <if test="dateStart != null and dateStart != ''">
- and a.create_time >= #{dateStart,jdbcType=TIMESTAMP}
- </if>
- <if test="dateEnd != null and dateEnd != ''">
- and a.create_time <= #{dateEnd,jdbcType=TIMESTAMP}
- </if>
- ) t1
- </select>
- <select id="selectStatisticsByOrder" resultType="com.sckw.transport.model.vo.StatisticsByOrderVO">
- SELECT IFNULL(SUM(t1.WaitingAmount), 0) AS WaitingAmount,
- IFNULL(SUM(t1.amount), 0) AS amount,
- IFNULL(SUM(t1.entrustAmount), 0) AS entrustAmount,
- IFNULL(SUM(t1.subcontractAmount), 0) AS subcontractAmount,
- IFNULL(SUM(t1.totalPrice), 0) AS totalPrice
- FROM
- (
- SELECT CASE
- a.STATUS
- WHEN 4 THEN
- 0
- ELSE (a.amount - a.entrust_amount - a.subcontract_amount)
- END waitingAmount,
- <!-- ( a.amount - a.entrust_amount - a.subcontract_amount ) AS WaitingAmount,-->
- a.amount,
- a.entrust_amount AS entrustAmount,
- a.subcontract_amount AS subcontractAmount,
- a.price,
- a.amount * IFNULL(a.price, 0) AS totalPrice
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
- AND a.del_flag = 0
- AND b.del_flag = 0
- WHERE b.unit_type = #{unitType}
- <if test="topId != null and topId != ''">
- and b.top_ent_id = #{topId}
- </if>
- <if test="statusList != null and statusList.size() > 0">
- and a.`status` IN
- <foreach collection="statusList" item="item" separator="," open="(" close=")">
- #{item}
- </foreach>
- </if>
- <if test="dateStart != null and dateStart != ''">
- and a.create_time >= #{dateStart,jdbcType=TIMESTAMP}
- </if>
- <if test="dateEnd != null and dateEnd != ''">
- and a.create_time <= #{dateEnd,jdbcType=TIMESTAMP}
- </if>
- ) t1
- </select>
- <select id="selectAcceptCarriageAwaitFinishOrder" resultType="com.sckw.transport.model.vo.StatisticsByOrderVO">
- SELECT IFNULL(SUM(t1.WaitingAmount), 0) AS WaitingAmount,
- IFNULL(SUM(t1.amount), 0) AS amount,
- IFNULL(SUM(t1.entrustAmount), 0) AS entrustAmount,
- IFNULL(SUM(t1.subcontractAmount), 0) AS subcontractAmount,
- IFNULL(SUM(t1.totalPrice), 0) AS totalPrice
- FROM
- (
- SELECT (a.amount - a.entrust_amount - a.subcontract_amount) AS WaitingAmount,
- a.amount,
- a.entrust_amount AS entrustAmount,
- a.subcontract_amount AS subcontractAmount,
- a.price,
- a.amount * IFNULL(a.price, 0) AS totalPrice
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
- AND a.del_flag = 0
- AND b.del_flag = 0
- WHERE b.unit_type = #{unitType}
- <if test="topId != null and topId != ''">
- and b.top_ent_id = #{topId}
- </if>
- <if test="statusList != null and statusList.size() > 0">
- and a.`status` IN
- <foreach collection="statusList" item="item" separator="," open="(" close=")">
- #{item}
- </foreach>
- </if>
- <if test="dateStart != null and dateStart != ''">
- and a.create_time >= #{dateStart,jdbcType=TIMESTAMP}
- </if>
- <if test="dateEnd != null and dateEnd != ''">
- and a.create_time <= #{dateEnd,jdbcType=TIMESTAMP}
- </if>
- ) t1
- </select>
- <select id="workbenchLogisticsOrderStatisticsByMonth"
- resultType="com.sckw.transport.model.vo.LogisticsOrderStatisticsVO">
- SELECT A.date_time as dateTime,
- COALESCE(B.num, 0) as num,
- IFNULL(B.typeOne, 0) AS typeOne,
- IFNULL(B.typeTwo, 0) AS typeTwo FROM
- (SELECT DATE_FORMAT(DATE_ADD(#{dateStart}, INTERVAL ROW1 MONTH ), '%Y-%m') date_time
- FROM (SELECT @ROW := @ROW +1 as ROW1
- FROM
- (select 0 union all select 1 union all select 2 union all select 3 union all select 4 union all select 5 union
- all select 6 union all select 7 union all select 8 union all select 9) t, (select 0 union all select 1 union all
- select 2 union all select 3 union all select 4 union all select 5 union all select 6 union all select 7 union
- all select 8 union all select 9) t2, (select 0 union all select 1 union all select 2 union all select 3 union
- all select 4 union all select 5 union all select 6 union all select 7 union all select 8 union all select 9) t3,
- (select 0 union all select 1 union all select 2 union all select 3 union all select 4 union all select 5 union
- all select 6 union all select 7 union all select 8 union all select 9) t4, (SELECT @row := -1) r) se
- WHERE DATE_FORMAT(date_add(#{dateStart}, INTERVAL ROW1 MONTH ), '%Y-%m') <= DATE_FORMAT(
- #{dateEnd},
- '%Y-%m')) A
- LEFT JOIN
- (
- SELECT DATE_FORMAT(a.create_time, '%Y-%m') date_time,
- COUNT(*) num,
- CASE
- WHEN #{typeOne} = 1 THEN
- sum(a.amount)
- WHEN #{typeOne} = 2 THEN
- sum(a.amount * IFNULL(a.price, 0))
- ELSE 0 end AS typeOne,
- CASE
- WHEN #{typeTwo} = 2 THEN
- sum(a.amount * IFNULL(a.price, 0))
- WHEN #{typeTwo} = 1 THEN
- sum(a.amount)
- ELSE 0 end AS typeTwo
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
- WHERE a.del_flag = 0
- <if test="id != null">
- AND b.top_ent_id =#{id}
- </if>
- AND b.unit_type = #{type}
- <if test="statusList != null and statusList.size() > 0">
- and a.status in
- <foreach collection="statusList" close=")" open="(" separator="," item="item">
- #{item}
- </foreach>
- </if>
- GROUP BY DATE_FORMAT(a.create_time, '%Y-%m')
- ) B
- ON A.date_time = B.date_time
- </select>
- <select id="workbenchLogisticsOrderStatisticsByDays"
- resultType="com.sckw.transport.model.vo.LogisticsOrderStatisticsVO">
- SELECT A.date as dateTime,
- COALESCE(B.num, 0) as num,
- IFNULL(B.typeOne, 0) AS typeOne,
- IFNULL(B.typeTwo, 0) AS typeTwo FROM
- (select date_add(#{dateStart}, interval row1 DAY) date
- from
- (
- SELECT @row := @row + 1 as row1 FROM
- (select 0 union all select 1 union all select 2 union all select 3 union all select 4 union all select 5 union
- all select 6 union all select 7 union all select 8 union all select 9) t, (select 0 union all select 1 union all
- select 2 union all select 3 union all select 4 union all select 5 union all select 6 union all select 7 union
- all select 8 union all select 9) t2, (select 0 union all select 1 union all select 2 union all select 3 union
- all select 4 union all select 5 union all select 6 union all select 7 union all select 8 union all select 9) t3, (select 0 union all select 1 union all select 2 union all select 3 union all select 4 union all select 5 union
- all select 6 union all select 7 union all select 8 union all select 9) t4, (SELECT @row := -1) r
- ) se
- where date_add(#{dateStart}
- , interval row1 DAY) <= #{dateEnd}) A
- LEFT JOIN
- (
- SELECT COUNT(*) num,
- CASE
- WHEN #{typeOne} = 1 THEN
- sum(a.amount)
- WHEN #{typeOne} = 2 THEN
- sum(a.amount * IFNULL(a.price, 0))
- ELSE 0 end AS typeOne,
- CASE
- WHEN #{typeTwo} = 2 THEN
- sum(a.amount * IFNULL(a.price, 0))
- WHEN #{typeTwo} = 1 THEN
- sum(a.amount)
- ELSE 0 end AS typeTwo,
- DATE_FORMAT(a.create_time, '%Y-%m-%d') date_time
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
- WHERE a.del_flag = 0
- <if test="id != null">
- AND b.top_ent_id =#{id}
- </if>
- AND b.unit_type = b.unit_type = #{type}
- <if test="statusList != null and statusList.size() > 0">
- and a.status in
- <foreach collection="statusList" close=")" open="(" separator="," item="item">
- #{item}
- </foreach>
- </if>
- GROUP BY DATE_FORMAT(a.create_time, '%Y-%m-%d')
- ) B
- ON A.date = B.date_time;
- </select>
- <select id="selectLogisticsOrderListByAcceptCarriage"
- resultType="com.sckw.transport.model.vo.AcceptCarriageOrderVO">
- SELECT
- <include refid="New_Query_Column_List">
- </include>
- FROM (
- SELECT
- <include refid="Query_Column_List_Accept_Carriage">
- </include>
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%', #{query.keywords}, '%')
- or a.l_order_no like concat('%', #{query.keywords}, '%')
- or d.firm_name like concat('%', #{query.keywords}, '%')
- or e.firm_name like concat('%', #{query.keywords}, '%')
- or g.goods_name like concat('%', #{query.keywords}, '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="idsList != null and idsList.size() > 0">
- and a.id in
- <foreach collection="idsList" close=")" open="(" separator="," item="item">
- #{item}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- and b.city_code LIKE CONCAT(#{query.loadAddressCode}
- , '%')
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- and c.city_code LIKE CONCAT(#{query.unloadAddressCode}
- , '%')
- </if>
- <if test="query.billingMode != null and query.billingMode != ''">
- and a.billing_mode =#{query.billingMode}
- </if>
- </where>
- ORDER BY a.create_time DESC
- ) tab
- <where>
- tab.delFlag = 0
- AND ((
- tab.createType = 1
- <if test="entId != null">
- and tab.entId = #{entId}
- </if>
- <if test="userIds != null and userIds.size() > 0">
- AND tab.createBy IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- tab.carrierTopEntId = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND tab.carrierContactsId IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </where>
- </select>
- <select id="selectLogisticsOrderListByConsign" resultType="com.sckw.transport.model.vo.AcceptCarriageOrderVO">
- SELECT
- <include refid="New_Query_Column_List">
- </include>
- FROM (
- SELECT
- <include refid="Query_Column_List_Cogsign">
- </include>
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%', #{query.keywords}, '%')
- or a.l_order_no like concat('%', #{query.keywords}, '%')
- or d.firm_name like concat('%', #{query.keywords}, '%')
- or e.firm_name like concat('%', #{query.keywords}, '%')
- or g.goods_name like concat('%', #{query.keywords}, '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="idsList != null and idsList.size() > 0">
- and a.id in
- <foreach collection="idsList" close=")" open="(" separator="," item="item">
- #{item}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- <!-- and b.city_code = #{query.loadAddressCode}-->
- and b.city_code LIKE CONCAT(#{query.loadAddressCode}
- , '%')
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- and c.city_code LIKE CONCAT(#{query.unloadAddressCode}
- , '%')
- </if>
- <if test="query.billingMode != null and query.billingMode != ''">
- and a.billing_mode =#{query.billingMode}
- </if>
- </where>
- ORDER BY a.create_time DESC
- ) tab
- <where>
- tab.delFlag = 0
- AND ((
- tab.createType = 1
- and tab.entId = #{entId}
- <if test="userIds != null and userIds.size() > 0">
- AND tab.createBy IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- tab.consignTopEntId = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND tab.consignContactsId IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </where>
- ORDER BY tab.createTime DESC
- </select>
- <select id="countLogisticsOrderListByConsignStatus" resultType="com.sckw.mongo.model.TableTops">
- select status AS value ,
- COUNT(status) AS total FROM (
- SELECT
- <include refid="Query_Column_List_Cogsign">
- </include>
- FROM
- kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%', #{query.keywords}, '%')
- or a.l_order_no like concat('%', #{query.keywords}, '%')
- or d.firm_name like concat('%', #{query.keywords}, '%')
- or e.firm_name like concat('%', #{query.keywords}, '%')
- or g.goods_name like concat('%', #{query.keywords}, '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="idsList != null and idsList.size() > 0">
- and a.id in
- <foreach collection="idsList" close=")" open="(" separator="," item="item">
- #{item}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- <!-- and b.city_code = #{query.loadAddressCode}-->
- and b.city_code LIKE CONCAT(#{query.loadAddressCode}, '%')
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- <!-- and c.city_code = #{query.unloadAddressCode}-->
- and c.city_code LIKE CONCAT(#{query.unloadAddressCode}, '%')
- </if>
- <if test="query.billingMode != null and query.billingMode != ''">
- and a.billing_mode =#{query.billingMode}
- </if>
- </where>
- ORDER BY a.create_time DESC
- ) tab
- <where>
- tab.delFlag = 0
- AND ((
- tab.createType = 1
- and tab.entId = #{entId}
- <if test="userIds != null and userIds.size() > 0">
- AND tab.createBy IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- tab.consignTopEntId = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND tab.consignContactsId IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </where>
- group by status
- </select>
- <select id="countLogisticsOrderListByAcceptCarriageStatus" resultType="com.sckw.mongo.model.TableTops">
- SELECT status as value,
- COUNT( status ) AS total FROM (
- SELECT
- <include refid="Query_Column_List_Accept_Carriage">
- </include>
- FROM
- kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%', #{query.keywords}, '%')
- or a.l_order_no like concat('%', #{query.keywords}, '%')
- or d.firm_name like concat('%', #{query.keywords}, '%')
- or e.firm_name like concat('%', #{query.keywords}, '%')
- or g.goods_name like concat('%', #{query.keywords}, '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="idsList != null and idsList.size() > 0">
- and a.id in
- <foreach collection="idsList" close=")" open="(" separator="," item="item">
- #{item}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- and b.city_code LIKE CONCAT(#{query.loadAddressCode}, '%')
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- and c.city_code LIKE CONCAT(#{query.unloadAddressCode}, '%')
- </if>
- <if test="query.billingMode != null and query.billingMode != ''">
- and a.billing_mode =#{query.billingMode}
- </if>
- </where>
- ORDER BY a.create_time DESC
- ) tab
- <where>
- tab.delFlag = 0
- AND ((
- tab.createType = 1
- and tab.entId = #{entId}
- <if test="userIds != null and userIds.size() > 0">
- AND tab.createBy IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- tab.carrierTopEntId = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND tab.carrierContactsId IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </where>
- group by status
- </select>
- <select id="selectConsignLogisticsOrderListByConsign" resultType="com.sckw.transport.model.vo.ConsignOrderVO">
- SELECT
- <include refid="New_Query_Column_List">
- </include>
- FROM (
- SELECT
- <include refid="Query_Column_List_Cogsign">
- </include>
- FROM kwt_logistics_order a
- LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id
- AND b.address_type = 1 AND b.del_flag = 0
- LEFT JOIN kwt_logistics_order_address c ON a.id = c.l_order_id
- AND c.address_type = 2 AND c.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
- AND d.unit_type = 1 AND d.del_flag = 0
- LEFT JOIN kwt_logistics_order_unit e ON a.id = e.l_order_id
- AND e.unit_type = 2
- LEFT JOIN kwt_logistics_order_goods g ON a.id = g.l_order_id AND g.del_flag = 0
- LEFT JOIN kwt_logistics_order_contract f ON a.id = f.l_order_id AND f.del_flag = 0
- <where>
- a.del_flag = 0
- <if test="query.keywords != null and query.keywords != ''">
- and (
- a.t_order_no like concat('%', #{query.keywords}, '%')
- or a.l_order_no like concat('%', #{query.keywords}, '%')
- or d.firm_name like concat('%', #{query.keywords}, '%')
- or e.firm_name like concat('%', #{query.keywords}, '%')
- or g.goods_name like concat('%', #{query.keywords}, '%'))
- </if>
- <if test="orderList != null and orderList.size() > 0">
- and a.status in
- <foreach collection="orderList" item="status" open="(" close=")" separator=",">
- #{status}
- </foreach>
- </if>
- <if test="idsList != null and idsList.size() > 0">
- and a.id in
- <foreach collection="idsList" close=")" open="(" separator="," item="item">
- #{item}
- </foreach>
- </if>
- <if test="query.endBeginDateTime != null and query.endBeginDateTime != ''">
- and DATE ( a.end_time) <![CDATA[ >= ]]> #{query.endBeginDateTime}
- </if>
- <if test="query.endOverDateTime != null and query.endOverDateTime != ''">
- and DATE ( a.end_time ) <![CDATA[ <= ]]> #{query.endOverDateTime}
- </if>
- <if test="query.startBeginDateTime != null and query.startBeginDateTime != ''">
- and DATE ( a.start_time) <![CDATA[ >= ]]> #{query.startBeginDateTime}
- </if>
- <if test="query.startOverDateTime != null and query.startOverDateTime != ''">
- and DATE ( a.start_time ) <![CDATA[ <= ]]> #{query.startOverDateTime}
- </if>
- <if test="query.createStartTime != null and query.createStartTime != ''">
- and a.create_time >=#{query.createStartTime}
- </if>
- <if test="query.createEndTime != null and query.createEndTime != ''">
- and a.create_time <=#{query.createEndTime}
- </if>
- <if test="query.loadAddressCode != null and query.loadAddressCode != ''">
- <!-- and b.city_code = #{query.loadAddressCode}-->
- and b.city_code LIKE CONCAT(#{query.loadAddressCode}
- , '%')
- </if>
- <if test="query.unloadAddressCode != null and query.unloadAddressCode != ''">
- <!-- and c.city_code = #{query.unloadAddressCode}-->
- and c.city_code LIKE CONCAT(#{query.unloadAddressCode}
- , '%')
- </if>
- <if test="query.billingMode != null and query.billingMode != ''">
- and a.billing_mode =#{query.billingMode}
- </if>
- </where>
- ORDER BY a.create_time DESC
- ) tab
- <where>
- tab.delFlag = 0
- AND ((
- tab.createType = 1
- and tab.entId = #{entId}
- <if test="userIds != null and userIds.size() > 0">
- AND tab.createBy IN
- <foreach collection="userIds" open="(" close=")" item="item" separator=",">
- #{item}
- </foreach>
- </if>
- )
- OR (
- tab.consignTopEntId = #{entId}
- <if test="contactsIds != null and contactsIds.size() > 0">
- AND tab.consignContactsId IN
- <foreach collection="contactsIds" separator="," item="item" close=")" open="(">
- #{item}
- </foreach>
- </if>
- ))
- </where>
- ORDER BY tab.createTime DESC
- </select>
- <select id="findLogisticsOrderCount" resultType="com.sckw.transport.model.vo.LogisticsCountVo"
- parameterType="java.util.Map">
- SELECT IFNULL(sum(load_amount), 0.0) loadAmount,
- IFNULL(sum(unload_amount), 0.0) unloadAmount,
- IFNULL(sum(total_load_amount), 0.0) totalLoadAmount,
- IFNULL(sum(total_unload_amount), 0.0) totalUnloadAmount
- from kwt_logistics_order where del_flag = 0
- <if test="tOrderId != null and tOrderId != ''">
- and t_order_id = #{tOrderId, jdbcType=BIGINT}
- </if>
- <if test="lOrderId != null and lOrderId != ''">
- and id = #{lOrderId, jdbcType=BIGINT}
- </if>
- <if test="level != null and level != ''">
- and pid is null
- </if>
- <if test="finishedStatus != null and finishedStatus != ''">
- and status in (4, 5, 6)
- </if>
- <if test="status != null and status != ''">
- and status = #{lOrderId, jdbcType=INTEGER}
- </if>
- <if test="upperlOrderId != null and upperlOrderId != ''">
- and FIND_IN_SET(#{upperlOrderId, jdbcType=BIGINT}, pids)
- </if>
- <if test="belowlOrderId != null and belowlOrderId != ''">
- and FIND_IN_SET(id, #{belowlOrderId, jdbcType=VARCHAR})
- </if>
- </select>
- </mapper>
|