wuxw7
2018-05-22 9e0fa31a2b81a9d2fd2588b78b6de637f0352639
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
<?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="centerServiceDAOImpl">
 
    <!--保存订单信息 c_orders 中 -->
    <insert id="saveOrder" parameterType="Map">
        <![CDATA[
            insert into c_orders(o_id,app_id,ext_transaction_id,user_id,request_time,order_type_cd,remark,status_cd)
            values(#{oId},#{appId},#{extTransactionId},#{userId},#{requestTime},#{orderTypeCd},#{remark},#{statusCd})
        ]]>
    </insert>
    <!-- 保存属性信息c_orders_attrs 中-->
    <insert id="saveOrderAttrs" parameterType="Map">
        <![CDATA[
            insert into c_orders_attrs(o_id,attr_id,spec_cd,value)
            values(#{oId},#{attrId},#{specCd},#{value})
        ]]>
    </insert>
    <!-- 保存订单项信息 c_business -->
    <insert id="saveBusiness" parameterType="Map">
        <![CDATA[
            insert into c_business(b_id,o_id,business_type_cd,remark,status_cd)
            values(#{bId},#{oId},#{businessTypeCd},#{remark},#{statusCd})
        ]]>
    </insert>
    <!-- 保存属性信息 c_business_attrs -->
    <insert id="saveBusinessAttrs" parameterType="Map">
        <![CDATA[
            insert into c_business_attrs(b_id,attr_id,spec_cd,value)
            values(#{bId},#{attrId},#{specCd},#{value})
        ]]>
    </insert>
    <!-- 更新订单信息(一般就更新订单状态) -->
    <update id="updateOrder" parameterType="Map" >
        <![CDATA[
            update c_orders co set
            co.status_cd=#{statusCd},
            co.finish_time=#{finishTime}
            where co.o_id=#{oId}
         ]]>
    </update>
    <!-- 更新订单项信息(一般就更新订单项状态)-->
    <update id="updateBusiness" parameterType="Map">
        <![CDATA[
            update c_business cb set
            cb.status_cd=#{statusCd},
            cb.finish_time=#{finishTime}
            where cb.o_id=#{oId}
         ]]>
    </update>
    <!--根据bId 修改业务项信息-->
    <update id="updateBusinessByBId" parameterType="Map">
        <![CDATA[
            update c_business cb set
            cb.status_cd=#{statusCd},
            cb.finish_time=#{finishTime}
            where cb.b_id in (#{bId})
            and cb.status_cd not in ('D','E')
         ]]>
    </update>
    <!-- 当所有业务动作是否都是C,将订单信息改为 C-->
    <update id="completeOrderByBId" parameterType="String" >
        <![CDATA[
            update c_orders co set co.status_cd = 'C' where co.status='S'
                and not exists(
                        select 1 from c_business cb where cb.status_cd <> 'C'
                        and cb.o_id = co.o_id
                        and cb.b_id in (#{bId})
                )
        ]]>
    </update>
 
    <select id="getOrderInfoByBId" parameterType="String" resultType="Map">
        <![CDATA[
        select co.* from c_orders co where 1 = 1 and exists
        (
            select 1 from c_business cb where cb.o_id = co.o_id
            and cb.b_id = #{bId}
        )
    ]]>
    </select>
 
    <!-- 获取同个订单中已经完成的订单项-->
    <select id="getCommonOrderCompledBusinessByBId" parameterType="String" resultType="Map">
        <![CDATA[
            select * from c_business cb where cb.finish_time is not null
            and cb.o_id in (
                select cb1.o_id from c_business cb1 where cb1.b_id = #{bId}
            )
        ]]>
    </select>
    <!--查询 所有有效 app信息-->
    <select id="getAppRouteAndServiceInfoAll" resultType="Map">
        <![CDATA[
             SELECT ca.app_id,ca.name,ca.security_code,ca.while_list_ip,ca.black_list_ip,cr.invoke_limit_times,
            cr.order_type_cd,cs.service_id,cs.business_type_cd,cr.invoke_model,cs.is_instance,
            cs.messageQueueName,cs.method,cs.name,cs.provide_app_id,cs.retry_count,cs.seq,cs.service_code,
            cs.timeout,cs.url FROM c_app ca,c_route cr,c_service cs
            WHERE ca.status_cd = '0'
            AND ca.app_id = cr.app_id
            AND cr.status_cd = '0'
            AND cr.service_id = cs.service_id
            AND cs.status_cd = '0'
        ]]>
 
    </select>
 
    <select id="getMappingInfoAll" resultType="com.java110.entity.mapping.Mapping">
        <![CDATA[
             SELECT cm.domain,cm.name,cm.key,cm.value,cm.remark from c_mapping cm where cm.status_cd = '0'
        ]]>
    </select>
 
</mapper>