@@ -12,6 +12,8 @@ from account.models import LensmanInfo  | 
            ||
| 12 | 12 | 
                from apps.contract.models import LensmanContributionContractInfo  | 
            
| 13 | 13 | 
                from apps.lensman.activity.models import LensmanContributionActivityIncomeExpensesInfo  | 
            
| 14 | 14 | 
                from member.models import MemberActivityContributionInfo  | 
            
| 15 | 
                +from utils import cn2an  | 
            |
| 16 | 
                +from utils.error.errno_utils import ContractStatusCode  | 
            |
| 15 | 17 | 
                from utils.redis.rimage import get_images_data  | 
            
| 16 | 18 | 
                from utils.tencentcloud.ess import (callback_decode, create_document, create_flow, create_scheme_url, start_flow,  | 
            
| 17 | 19 | 
                test_upload_document_files, upload_document_files)  | 
            
                @@ -26,7 +28,7 @@ def get_contribtion_contract_status_api(request):  | 
            ||
| 26 | 28 | 
                try:  | 
            
| 27 | 29 | 
                contract = LensmanContributionContractInfo.objects.get(user_id=user_id, activity_id=activity_id, contribution_id=contribution_id)  | 
            
| 28 | 30 | 
                except LensmanContributionContractInfo.DoesNotExist:  | 
            
| 29 | 
                - return response(404, 'Contract Not Found', '合同不存在')  | 
            |
| 31 | 
                + return response(ContractStatusCode.CONTRACT_NOT_FOUND)  | 
            |
| 30 | 32 | 
                 | 
            
| 31 | 33 | 
                     return response(200, data={
               | 
            
| 32 | 34 | 
                'contract_status': contract.contract_status,  | 
            
                @@ -1,16 +1,18 @@  | 
            ||
| 1 | 1 | 
                __version__ = "0.5.22"  | 
            
| 2 | 2 | 
                 | 
            
| 3 | 
                -from .cn2an import Cn2An  | 
            |
| 3 | 
                +# from .cn2an import Cn2An  | 
            |
| 4 | 4 | 
                from .an2cn import An2Cn  | 
            
| 5 | 
                -from .transform import Transform  | 
            |
| 6 | 5 | 
                 | 
            
| 7 | 
                -cn2an = Cn2An().cn2an  | 
            |
| 6 | 
                +  | 
            |
| 7 | 
                +# from .transform import Transform  | 
            |
| 8 | 
                +  | 
            |
| 9 | 
                +# cn2an = Cn2An().cn2an  | 
            |
| 8 | 10 | 
                an2cn = An2Cn().an2cn  | 
            
| 9 | 
                -transform = Transform().transform  | 
            |
| 11 | 
                +# transform = Transform().transform  | 
            |
| 10 | 12 | 
                 | 
            
| 11 | 13 | 
                __all__ = [  | 
            
| 12 | 14 | 
                "__version__",  | 
            
| 13 | 
                - "cn2an",  | 
            |
| 15 | 
                + # "cn2an",  | 
            |
| 14 | 16 | 
                "an2cn",  | 
            
| 15 | 
                - "transform"  | 
            |
| 17 | 
                + # "transform"  | 
            |
| 16 | 18 | 
                ]  | 
            
                @@ -1,19 +1,23 @@  | 
            ||
| 1 | 
                -from typing import Union  | 
            |
| 2 | 
                -from warnings import warn  | 
            |
| 1 | 
                +# -*- coding: utf-8 -*-  | 
            |
| 3 | 2 | 
                 | 
            
| 4 | 
                -from proces import preprocess  | 
            |
| 3 | 
                +# from typing import Union  | 
            |
| 4 | 
                +from warnings import warn  | 
            |
| 5 | 5 | 
                 | 
            
| 6 | 6 | 
                from .conf import NUMBER_LOW_AN2CN, NUMBER_UP_AN2CN, UNIT_LOW_ORDER_AN2CN, UNIT_UP_ORDER_AN2CN  | 
            
| 7 | 7 | 
                 | 
            
| 8 | 8 | 
                 | 
            
| 9 | 
                +# from proces import preprocess  | 
            |
| 10 | 
                +  | 
            |
| 11 | 
                +  | 
            |
| 12 | 
                +  | 
            |
| 9 | 13 | 
                class An2Cn(object):  | 
            
| 10 | 
                - def __init__(self) -> None:  | 
            |
| 14 | 
                + def __init__(self):  | 
            |
| 11 | 15 | 
                self.all_num = "0123456789"  | 
            
| 12 | 16 | 
                self.number_low = NUMBER_LOW_AN2CN  | 
            
| 13 | 17 | 
                self.number_up = NUMBER_UP_AN2CN  | 
            
| 14 | 18 | 
                self.mode_list = ["low", "up", "rmb", "direct"]  | 
            
| 15 | 19 | 
                 | 
            
| 16 | 
                - def an2cn(self, inputs: Union[str, int, float] = None, mode: str = "low") -> str:  | 
            |
| 20 | 
                + def an2cn(self, inputs=None, mode="low"):  | 
            |
| 17 | 21 | 
                """阿拉伯数字转中文数字  | 
            
| 18 | 22 | 
                 | 
            
| 19 | 23 | 
                :param inputs: 阿拉伯数字  | 
            
                @@ -22,7 +26,7 @@ class An2Cn(object):  | 
            ||
| 22 | 26 | 
                """  | 
            
| 23 | 27 | 
                if inputs is not None and inputs != "":  | 
            
| 24 | 28 | 
                if mode not in self.mode_list:  | 
            
| 25 | 
                -                raise ValueError(f"mode 仅支持 {str(self.mode_list)} !")
               | 
            |
| 29 | 
                +                raise ValueError(u"mode 仅支持 {} !".format(str(self.mode_list)))
               | 
            |
| 26 | 30 | 
                 | 
            
| 27 | 31 | 
                # 将数字转化为字符串,这里会有Python会自动做转化  | 
            
| 28 | 32 | 
                # 1. -> 1.0 1.00 -> 1.0 -0 -> 0  | 
            
                @@ -32,17 +36,17 @@ class An2Cn(object):  | 
            ||
| 32 | 36 | 
                # 数据预处理:  | 
            
| 33 | 37 | 
                # 1. 繁体转简体  | 
            
| 34 | 38 | 
                # 2. 全角转半角  | 
            
| 35 | 
                - inputs = preprocess(inputs, pipelines=[  | 
            |
| 36 | 
                - "traditional_to_simplified",  | 
            |
| 37 | 
                - "full_angle_to_half_angle"  | 
            |
| 38 | 
                - ])  | 
            |
| 39 | 
                + # inputs = preprocess(inputs, pipelines=[  | 
            |
| 40 | 
                + # "traditional_to_simplified",  | 
            |
| 41 | 
                + # "full_angle_to_half_angle"  | 
            |
| 42 | 
                + # ])  | 
            |
| 39 | 43 | 
                 | 
            
| 40 | 44 | 
                # 检查数据是否有效  | 
            
| 41 | 45 | 
                self.__check_inputs_is_valid(inputs)  | 
            
| 42 | 46 | 
                 | 
            
| 43 | 47 | 
                # 判断正负  | 
            
| 44 | 48 | 
                if inputs[0] == "-":  | 
            
| 45 | 
                - sign = "负"  | 
            |
| 49 | 
                + sign = u"负"  | 
            |
| 46 | 50 | 
                inputs = inputs[1:]  | 
            
| 47 | 51 | 
                else:  | 
            
| 48 | 52 | 
                sign = ""  | 
            
                @@ -57,7 +61,7 @@ class An2Cn(object):  | 
            ||
| 57 | 61 | 
                # 不包含小数的输入  | 
            
| 58 | 62 | 
                integer_data = split_result[0]  | 
            
| 59 | 63 | 
                if mode == "rmb":  | 
            
| 60 | 
                - output = self.__integer_convert(integer_data, "up") + "元整"  | 
            |
| 64 | 
                + output = self.__integer_convert(integer_data, "up") + u"元整"  | 
            |
| 61 | 65 | 
                else:  | 
            
| 62 | 66 | 
                output = self.__integer_convert(integer_data, mode)  | 
            
| 63 | 67 | 
                elif len_split_result == 2:  | 
            
                @@ -69,57 +73,57 @@ class An2Cn(object):  | 
            ||
| 69 | 73 | 
                len_dec_data = len(dec_data)  | 
            
| 70 | 74 | 
                 | 
            
| 71 | 75 | 
                if len_dec_data == 0:  | 
            
| 72 | 
                - output = int_data + "元整"  | 
            |
| 76 | 
                + output = int_data + u"元整"  | 
            |
| 73 | 77 | 
                elif len_dec_data == 1:  | 
            
| 74 | 
                -                            raise ValueError(f"异常输出:{dec_data}")
               | 
            |
| 78 | 
                +                            raise ValueError(u"异常输出:{}".format(dec_data))
               | 
            |
| 75 | 79 | 
                elif len_dec_data == 2:  | 
            
| 76 | 
                - if dec_data[1] != "零":  | 
            |
| 77 | 
                - if int_data == "零":  | 
            |
| 78 | 
                - output = dec_data[1] + "角"  | 
            |
| 80 | 
                + if dec_data[1] != u"零":  | 
            |
| 81 | 
                + if int_data == u"零":  | 
            |
| 82 | 
                + output = dec_data[1] + u"角"  | 
            |
| 79 | 83 | 
                else:  | 
            
| 80 | 
                - output = int_data + "元" + dec_data[1] + "角"  | 
            |
| 84 | 
                + output = int_data + u"元" + dec_data[1] + u"角"  | 
            |
| 81 | 85 | 
                else:  | 
            
| 82 | 
                - output = int_data + "元整"  | 
            |
| 86 | 
                + output = int_data + u"元整"  | 
            |
| 83 | 87 | 
                else:  | 
            
| 84 | 
                - if dec_data[1] != "零":  | 
            |
| 85 | 
                - if dec_data[2] != "零":  | 
            |
| 86 | 
                - if int_data == "零":  | 
            |
| 87 | 
                - output = dec_data[1] + "角" + dec_data[2] + "分"  | 
            |
| 88 | 
                + if dec_data[1] != u"零":  | 
            |
| 89 | 
                + if dec_data[2] != u"零":  | 
            |
| 90 | 
                + if int_data == u"零":  | 
            |
| 91 | 
                + output = dec_data[1] + u"角" + dec_data[2] + u"分"  | 
            |
| 88 | 92 | 
                else:  | 
            
| 89 | 
                - output = int_data + "元" + dec_data[1] + "角" + dec_data[2] + "分"  | 
            |
| 93 | 
                + output = int_data + u"元" + dec_data[1] + u"角" + dec_data[2] + u"分"  | 
            |
| 90 | 94 | 
                else:  | 
            
| 91 | 
                - if int_data == "零":  | 
            |
| 92 | 
                - output = dec_data[1] + "角"  | 
            |
| 95 | 
                + if int_data == u"零":  | 
            |
| 96 | 
                + output = dec_data[1] + u"角"  | 
            |
| 93 | 97 | 
                else:  | 
            
| 94 | 
                - output = int_data + "元" + dec_data[1] + "角"  | 
            |
| 98 | 
                + output = int_data + u"元" + dec_data[1] + u"角"  | 
            |
| 95 | 99 | 
                else:  | 
            
| 96 | 
                - if dec_data[2] != "零":  | 
            |
| 97 | 
                - if int_data == "零":  | 
            |
| 98 | 
                - output = dec_data[2] + "分"  | 
            |
| 100 | 
                + if dec_data[2] != u"零":  | 
            |
| 101 | 
                + if int_data == u"零":  | 
            |
| 102 | 
                + output = dec_data[2] + u"分"  | 
            |
| 99 | 103 | 
                else:  | 
            
| 100 | 
                - output = int_data + "元" + "零" + dec_data[2] + "分"  | 
            |
| 104 | 
                + output = int_data + u"元" + u"零" + dec_data[2] + u"分"  | 
            |
| 101 | 105 | 
                else:  | 
            
| 102 | 
                - output = int_data + "元整"  | 
            |
| 106 | 
                + output = int_data + u"元整"  | 
            |
| 103 | 107 | 
                else:  | 
            
| 104 | 108 | 
                output = self.__integer_convert(integer_data, mode) + self.__decimal_convert(decimal_data, mode)  | 
            
| 105 | 109 | 
                else:  | 
            
| 106 | 
                -                    raise ValueError(f"输入格式错误:{inputs}!")
               | 
            |
| 110 | 
                +                    raise ValueError(u"输入格式错误:{}!".format(inputs))
               | 
            |
| 107 | 111 | 
                else:  | 
            
| 108 | 
                -            raise ValueError("输入数据为空!")
               | 
            |
| 112 | 
                + raise ValueError(u"输入数据为空!")  | 
            |
| 109 | 113 | 
                 | 
            
| 110 | 114 | 
                return sign + output  | 
            
| 111 | 115 | 
                 | 
            
| 112 | 
                - def __direct_convert(self, inputs: str) -> str:  | 
            |
| 116 | 
                + def __direct_convert(self, inputs):  | 
            |
| 113 | 117 | 
                _output = ""  | 
            
| 114 | 118 | 
                for d in inputs:  | 
            
| 115 | 119 | 
                if d == ".":  | 
            
| 116 | 
                - _output += "点"  | 
            |
| 120 | 
                + _output += u"点"  | 
            |
| 117 | 121 | 
                else:  | 
            
| 118 | 122 | 
                _output += self.number_low[int(d)]  | 
            
| 119 | 123 | 
                return _output  | 
            
| 120 | 124 | 
                 | 
            
| 121 | 125 | 
                @staticmethod  | 
            
| 122 | 
                - def __number_to_string(number_data: Union[int, float]) -> str:  | 
            |
| 126 | 
                + def __number_to_string(number_data):  | 
            |
| 123 | 127 | 
                # 小数处理:python 会自动把 0.00005 转化成 5e-05,因此 str(0.00005) != "0.00005"  | 
            
| 124 | 128 | 
                string_data = str(number_data)  | 
            
| 125 | 129 | 
                if "e" in string_data:  | 
            
                @@ -132,14 +136,14 @@ class An2Cn(object):  | 
            ||
| 132 | 136 | 
                string_data = string_key + "0" * int(string_value)  | 
            
| 133 | 137 | 
                return string_data  | 
            
| 134 | 138 | 
                 | 
            
| 135 | 
                - def __check_inputs_is_valid(self, check_data: str) -> None:  | 
            |
| 139 | 
                + def __check_inputs_is_valid(self, check_data):  | 
            |
| 136 | 140 | 
                # 检查输入数据是否在规定的字典中  | 
            
| 137 | 141 | 
                all_check_keys = self.all_num + ".-"  | 
            
| 138 | 142 | 
                for data in check_data:  | 
            
| 139 | 143 | 
                if data not in all_check_keys:  | 
            
| 140 | 
                -                raise ValueError(f"输入的数据不在转化范围内:{data}!")
               | 
            |
| 144 | 
                +                raise ValueError(u"输入的数据不在转化范围内:{}!".format(data))
               | 
            |
| 141 | 145 | 
                 | 
            
| 142 | 
                - def __integer_convert(self, integer_data: str, mode: str) -> str:  | 
            |
| 146 | 
                + def __integer_convert(self, integer_data, mode):  | 
            |
| 143 | 147 | 
                if mode == "low":  | 
            
| 144 | 148 | 
                numeral_list = NUMBER_LOW_AN2CN  | 
            
| 145 | 149 | 
                unit_list = UNIT_LOW_ORDER_AN2CN  | 
            
                @@ -147,14 +151,14 @@ class An2Cn(object):  | 
            ||
| 147 | 151 | 
                numeral_list = NUMBER_UP_AN2CN  | 
            
| 148 | 152 | 
                unit_list = UNIT_UP_ORDER_AN2CN  | 
            
| 149 | 153 | 
                else:  | 
            
| 150 | 
                -            raise ValueError(f"error mode: {mode}")
               | 
            |
| 154 | 
                +            raise ValueError("error mode: {}".format(mode))
               | 
            |
| 151 | 155 | 
                 | 
            
| 152 | 156 | 
                # 去除前面的 0,比如 007 => 7  | 
            
| 153 | 157 | 
                integer_data = str(int(integer_data))  | 
            
| 154 | 158 | 
                 | 
            
| 155 | 159 | 
                len_integer_data = len(integer_data)  | 
            
| 156 | 160 | 
                if len_integer_data > len(unit_list):  | 
            
| 157 | 
                -            raise ValueError(f"超出数据范围,最长支持 {len(unit_list)} 位")
               | 
            |
| 161 | 
                +            raise ValueError(u"超出数据范围,最长支持 {} 位".format(len(unit_list)))
               | 
            |
| 158 | 162 | 
                 | 
            
| 159 | 163 | 
                output_an = ""  | 
            
| 160 | 164 | 
                for i, d in enumerate(integer_data):  | 
            
                @@ -164,31 +168,31 @@ class An2Cn(object):  | 
            ||
| 164 | 168 | 
                if not (len_integer_data - i - 1) % 4:  | 
            
| 165 | 169 | 
                output_an += numeral_list[int(d)] + unit_list[len_integer_data - i - 1]  | 
            
| 166 | 170 | 
                 | 
            
| 167 | 
                - if i > 0 and not output_an[-1] == "零":  | 
            |
| 171 | 
                + if i > 0 and not output_an[-1] == u"零":  | 
            |
| 168 | 172 | 
                output_an += numeral_list[int(d)]  | 
            
| 169 | 173 | 
                 | 
            
| 170 | 
                -        output_an = output_an.replace("零零", "零").replace("零万", "万").replace("零亿", "亿").replace("亿万", "亿") \
               | 
            |
| 171 | 
                -            .strip("零")
               | 
            |
| 174 | 
                + output_an = output_an.replace(u"零零", u"零").replace(u"零万", u"万").replace(u"零亿", u"亿").replace(u"亿万", u"亿") \  | 
            |
| 175 | 
                + .strip(u"零")  | 
            |
| 172 | 176 | 
                 | 
            
| 173 | 177 | 
                # 解决「一十几」问题  | 
            
| 174 | 
                - if output_an[:2] in ["一十"]:  | 
            |
| 178 | 
                + if output_an[:2] in [u"一十"]:  | 
            |
| 175 | 179 | 
                output_an = output_an[1:]  | 
            
| 176 | 180 | 
                 | 
            
| 177 | 181 | 
                # 0 - 1 之间的小数  | 
            
| 178 | 182 | 
                if not output_an:  | 
            
| 179 | 
                - output_an = "零"  | 
            |
| 183 | 
                + output_an = u"零"  | 
            |
| 180 | 184 | 
                 | 
            
| 181 | 185 | 
                return output_an  | 
            
| 182 | 186 | 
                 | 
            
| 183 | 
                - def __decimal_convert(self, decimal_data: str, o_mode: str) -> str:  | 
            |
| 187 | 
                + def __decimal_convert(self, decimal_data, o_mode):  | 
            |
| 184 | 188 | 
                len_decimal_data = len(decimal_data)  | 
            
| 185 | 189 | 
                 | 
            
| 186 | 190 | 
                if len_decimal_data > 16:  | 
            
| 187 | 
                -            warn(f"注意:小数部分长度为 {len_decimal_data} ,将自动截取前 16 位有效精度!")
               | 
            |
| 191 | 
                +            warn(u"注意:小数部分长度为 {} ,将自动截取前 16 位有效精度!".format(len_decimal_data))
               | 
            |
| 188 | 192 | 
                decimal_data = decimal_data[:16]  | 
            
| 189 | 193 | 
                 | 
            
| 190 | 194 | 
                if len_decimal_data:  | 
            
| 191 | 
                - output_an = "点"  | 
            |
| 195 | 
                + output_an = u"点"  | 
            |
| 192 | 196 | 
                else:  | 
            
| 193 | 197 | 
                output_an = ""  | 
            
| 194 | 198 | 
                 | 
            
                @@ -197,7 +201,7 @@ class An2Cn(object):  | 
            ||
| 197 | 201 | 
                elif o_mode == "up":  | 
            
| 198 | 202 | 
                numeral_list = NUMBER_UP_AN2CN  | 
            
| 199 | 203 | 
                else:  | 
            
| 200 | 
                -            raise ValueError(f"error mode: {o_mode}")
               | 
            |
| 204 | 
                +            raise ValueError("error mode: {}".format(o_mode))
               | 
            |
| 201 | 205 | 
                 | 
            
| 202 | 206 | 
                for data in decimal_data:  | 
            
| 203 | 207 | 
                output_an += numeral_list[int(data)]  | 
            
                @@ -1,135 +1,138 @@  | 
            ||
| 1 | 
                -NUMBER_CN2AN = {
               | 
            |
| 2 | 
                - "零": 0,  | 
            |
| 3 | 
                - "〇": 0,  | 
            |
| 4 | 
                - "一": 1,  | 
            |
| 5 | 
                - "壹": 1,  | 
            |
| 6 | 
                - "幺": 1,  | 
            |
| 7 | 
                - "二": 2,  | 
            |
| 8 | 
                - "贰": 2,  | 
            |
| 9 | 
                - "两": 2,  | 
            |
| 10 | 
                - "三": 3,  | 
            |
| 11 | 
                - "叁": 3,  | 
            |
| 12 | 
                - "四": 4,  | 
            |
| 13 | 
                - "肆": 4,  | 
            |
| 14 | 
                - "五": 5,  | 
            |
| 15 | 
                - "伍": 5,  | 
            |
| 16 | 
                - "六": 6,  | 
            |
| 17 | 
                - "陆": 6,  | 
            |
| 18 | 
                - "七": 7,  | 
            |
| 19 | 
                - "柒": 7,  | 
            |
| 20 | 
                - "八": 8,  | 
            |
| 21 | 
                - "捌": 8,  | 
            |
| 22 | 
                - "九": 9,  | 
            |
| 23 | 
                - "玖": 9,  | 
            |
| 24 | 
                -}  | 
            |
| 25 | 
                -UNIT_CN2AN = {
               | 
            |
| 26 | 
                - "十": 10,  | 
            |
| 27 | 
                - "拾": 10,  | 
            |
| 28 | 
                - "百": 100,  | 
            |
| 29 | 
                - "佰": 100,  | 
            |
| 30 | 
                - "千": 1000,  | 
            |
| 31 | 
                - "仟": 1000,  | 
            |
| 32 | 
                - "万": 10000,  | 
            |
| 33 | 
                - "亿": 100000000,  | 
            |
| 34 | 
                -}  | 
            |
| 35 | 
                -UNIT_LOW_AN2CN = {
               | 
            |
| 36 | 
                - 10: "十",  | 
            |
| 37 | 
                - 100: "百",  | 
            |
| 38 | 
                - 1000: "千",  | 
            |
| 39 | 
                - 10000: "万",  | 
            |
| 40 | 
                - 100000000: "亿",  | 
            |
| 41 | 
                -}  | 
            |
| 1 | 
                +# -*- coding: utf-8 -*-  | 
            |
| 2 | 
                +  | 
            |
| 3 | 
                +  | 
            |
| 4 | 
                +# NUMBER_CN2AN = {
               | 
            |
| 5 | 
                +# "零": 0,  | 
            |
| 6 | 
                +# "〇": 0,  | 
            |
| 7 | 
                +# "一": 1,  | 
            |
| 8 | 
                +# "壹": 1,  | 
            |
| 9 | 
                +# "幺": 1,  | 
            |
| 10 | 
                +# "二": 2,  | 
            |
| 11 | 
                +# "贰": 2,  | 
            |
| 12 | 
                +# "两": 2,  | 
            |
| 13 | 
                +# "三": 3,  | 
            |
| 14 | 
                +# "叁": 3,  | 
            |
| 15 | 
                +# "四": 4,  | 
            |
| 16 | 
                +# "肆": 4,  | 
            |
| 17 | 
                +# "五": 5,  | 
            |
| 18 | 
                +# "伍": 5,  | 
            |
| 19 | 
                +# "六": 6,  | 
            |
| 20 | 
                +# "陆": 6,  | 
            |
| 21 | 
                +# "七": 7,  | 
            |
| 22 | 
                +# "柒": 7,  | 
            |
| 23 | 
                +# "八": 8,  | 
            |
| 24 | 
                +# "捌": 8,  | 
            |
| 25 | 
                +# "九": 9,  | 
            |
| 26 | 
                +# "玖": 9,  | 
            |
| 27 | 
                +# }  | 
            |
| 28 | 
                +# UNIT_CN2AN = {
               | 
            |
| 29 | 
                +# "十": 10,  | 
            |
| 30 | 
                +# "拾": 10,  | 
            |
| 31 | 
                +# "百": 100,  | 
            |
| 32 | 
                +# "佰": 100,  | 
            |
| 33 | 
                +# "千": 1000,  | 
            |
| 34 | 
                +# "仟": 1000,  | 
            |
| 35 | 
                +# "万": 10000,  | 
            |
| 36 | 
                +# "亿": 100000000,  | 
            |
| 37 | 
                +# }  | 
            |
| 38 | 
                +# UNIT_LOW_AN2CN = {
               | 
            |
| 39 | 
                +# 10: "十",  | 
            |
| 40 | 
                +# 100: "百",  | 
            |
| 41 | 
                +# 1000: "千",  | 
            |
| 42 | 
                +# 10000: "万",  | 
            |
| 43 | 
                +# 100000000: "亿",  | 
            |
| 44 | 
                +# }  | 
            |
| 42 | 45 | 
                 NUMBER_LOW_AN2CN = {
               | 
            
| 43 | 
                - 0: "零",  | 
            |
| 44 | 
                - 1: "一",  | 
            |
| 45 | 
                - 2: "二",  | 
            |
| 46 | 
                - 3: "三",  | 
            |
| 47 | 
                - 4: "四",  | 
            |
| 48 | 
                - 5: "五",  | 
            |
| 49 | 
                - 6: "六",  | 
            |
| 50 | 
                - 7: "七",  | 
            |
| 51 | 
                - 8: "八",  | 
            |
| 52 | 
                - 9: "九",  | 
            |
| 46 | 
                + 0: u"零",  | 
            |
| 47 | 
                + 1: u"一",  | 
            |
| 48 | 
                + 2: u"二",  | 
            |
| 49 | 
                + 3: u"三",  | 
            |
| 50 | 
                + 4: u"四",  | 
            |
| 51 | 
                + 5: u"五",  | 
            |
| 52 | 
                + 6: u"六",  | 
            |
| 53 | 
                + 7: u"七",  | 
            |
| 54 | 
                + 8: u"八",  | 
            |
| 55 | 
                + 9: u"九",  | 
            |
| 53 | 56 | 
                }  | 
            
| 54 | 57 | 
                 NUMBER_UP_AN2CN = {
               | 
            
| 55 | 
                - 0: "零",  | 
            |
| 56 | 
                - 1: "壹",  | 
            |
| 57 | 
                - 2: "贰",  | 
            |
| 58 | 
                - 3: "叁",  | 
            |
| 59 | 
                - 4: "肆",  | 
            |
| 60 | 
                - 5: "伍",  | 
            |
| 61 | 
                - 6: "陆",  | 
            |
| 62 | 
                - 7: "柒",  | 
            |
| 63 | 
                - 8: "捌",  | 
            |
| 64 | 
                - 9: "玖",  | 
            |
| 58 | 
                + 0: u"零",  | 
            |
| 59 | 
                + 1: u"壹",  | 
            |
| 60 | 
                + 2: u"贰",  | 
            |
| 61 | 
                + 3: u"叁",  | 
            |
| 62 | 
                + 4: u"肆",  | 
            |
| 63 | 
                + 5: u"伍",  | 
            |
| 64 | 
                + 6: u"陆",  | 
            |
| 65 | 
                + 7: u"柒",  | 
            |
| 66 | 
                + 8: u"捌",  | 
            |
| 67 | 
                + 9: u"玖",  | 
            |
| 65 | 68 | 
                }  | 
            
| 66 | 69 | 
                UNIT_LOW_ORDER_AN2CN = [  | 
            
| 67 | 70 | 
                "",  | 
            
| 68 | 
                - "十",  | 
            |
| 69 | 
                - "百",  | 
            |
| 70 | 
                - "千",  | 
            |
| 71 | 
                - "万",  | 
            |
| 72 | 
                - "十",  | 
            |
| 73 | 
                - "百",  | 
            |
| 74 | 
                - "千",  | 
            |
| 75 | 
                - "亿",  | 
            |
| 76 | 
                - "十",  | 
            |
| 77 | 
                - "百",  | 
            |
| 78 | 
                - "千",  | 
            |
| 79 | 
                - "万",  | 
            |
| 80 | 
                - "十",  | 
            |
| 81 | 
                - "百",  | 
            |
| 82 | 
                - "千",  | 
            |
| 71 | 
                + u"十",  | 
            |
| 72 | 
                + u"百",  | 
            |
| 73 | 
                + u"千",  | 
            |
| 74 | 
                + u"万",  | 
            |
| 75 | 
                + u"十",  | 
            |
| 76 | 
                + u"百",  | 
            |
| 77 | 
                + u"千",  | 
            |
| 78 | 
                + u"亿",  | 
            |
| 79 | 
                + u"十",  | 
            |
| 80 | 
                + u"百",  | 
            |
| 81 | 
                + u"千",  | 
            |
| 82 | 
                + u"万",  | 
            |
| 83 | 
                + u"十",  | 
            |
| 84 | 
                + u"百",  | 
            |
| 85 | 
                + u"千",  | 
            |
| 83 | 86 | 
                ]  | 
            
| 84 | 87 | 
                UNIT_UP_ORDER_AN2CN = [  | 
            
| 85 | 88 | 
                "",  | 
            
| 86 | 
                - "拾",  | 
            |
| 87 | 
                - "佰",  | 
            |
| 88 | 
                - "仟",  | 
            |
| 89 | 
                - "万",  | 
            |
| 90 | 
                - "拾",  | 
            |
| 91 | 
                - "佰",  | 
            |
| 92 | 
                - "仟",  | 
            |
| 93 | 
                - "亿",  | 
            |
| 94 | 
                - "拾",  | 
            |
| 95 | 
                - "佰",  | 
            |
| 96 | 
                - "仟",  | 
            |
| 97 | 
                - "万",  | 
            |
| 98 | 
                - "拾",  | 
            |
| 99 | 
                - "佰",  | 
            |
| 100 | 
                - "仟",  | 
            |
| 89 | 
                + u"拾",  | 
            |
| 90 | 
                + u"佰",  | 
            |
| 91 | 
                + u"仟",  | 
            |
| 92 | 
                + u"万",  | 
            |
| 93 | 
                + u"拾",  | 
            |
| 94 | 
                + u"佰",  | 
            |
| 95 | 
                + u"仟",  | 
            |
| 96 | 
                + u"亿",  | 
            |
| 97 | 
                + u"拾",  | 
            |
| 98 | 
                + u"佰",  | 
            |
| 99 | 
                + u"仟",  | 
            |
| 100 | 
                + u"万",  | 
            |
| 101 | 
                + u"拾",  | 
            |
| 102 | 
                + u"佰",  | 
            |
| 103 | 
                + u"仟",  | 
            |
| 101 | 104 | 
                ]  | 
            
| 102 | 
                -STRICT_CN_NUMBER = {
               | 
            |
| 103 | 
                - "零": "零",  | 
            |
| 104 | 
                - "一": "一壹",  | 
            |
| 105 | 
                - "二": "二贰",  | 
            |
| 106 | 
                - "三": "三叁",  | 
            |
| 107 | 
                - "四": "四肆",  | 
            |
| 108 | 
                - "五": "五伍",  | 
            |
| 109 | 
                - "六": "六陆",  | 
            |
| 110 | 
                - "七": "七柒",  | 
            |
| 111 | 
                - "八": "八捌",  | 
            |
| 112 | 
                - "九": "九玖",  | 
            |
| 113 | 
                - "十": "十拾",  | 
            |
| 114 | 
                - "百": "百佰",  | 
            |
| 115 | 
                - "千": "千仟",  | 
            |
| 116 | 
                - "万": "万",  | 
            |
| 117 | 
                - "亿": "亿",  | 
            |
| 118 | 
                -}  | 
            |
| 119 | 
                -NORMAL_CN_NUMBER = {
               | 
            |
| 120 | 
                - "零": "零〇",  | 
            |
| 121 | 
                - "一": "一壹幺",  | 
            |
| 122 | 
                - "二": "二贰两",  | 
            |
| 123 | 
                - "三": "三叁仨",  | 
            |
| 124 | 
                - "四": "四肆",  | 
            |
| 125 | 
                - "五": "五伍",  | 
            |
| 126 | 
                - "六": "六陆",  | 
            |
| 127 | 
                - "七": "七柒",  | 
            |
| 128 | 
                - "八": "八捌",  | 
            |
| 129 | 
                - "九": "九玖",  | 
            |
| 130 | 
                - "十": "十拾",  | 
            |
| 131 | 
                - "百": "百佰",  | 
            |
| 132 | 
                - "千": "千仟",  | 
            |
| 133 | 
                - "万": "万",  | 
            |
| 134 | 
                - "亿": "亿",  | 
            |
| 135 | 
                -}  | 
            |
| 105 | 
                +# STRICT_CN_NUMBER = {
               | 
            |
| 106 | 
                +# "零": "零",  | 
            |
| 107 | 
                +# "一": "一壹",  | 
            |
| 108 | 
                +# "二": "二贰",  | 
            |
| 109 | 
                +# "三": "三叁",  | 
            |
| 110 | 
                +# "四": "四肆",  | 
            |
| 111 | 
                +# "五": "五伍",  | 
            |
| 112 | 
                +# "六": "六陆",  | 
            |
| 113 | 
                +# "七": "七柒",  | 
            |
| 114 | 
                +# "八": "八捌",  | 
            |
| 115 | 
                +# "九": "九玖",  | 
            |
| 116 | 
                +# "十": "十拾",  | 
            |
| 117 | 
                +# "百": "百佰",  | 
            |
| 118 | 
                +# "千": "千仟",  | 
            |
| 119 | 
                +# "万": "万",  | 
            |
| 120 | 
                +# "亿": "亿",  | 
            |
| 121 | 
                +# }  | 
            |
| 122 | 
                +# NORMAL_CN_NUMBER = {
               | 
            |
| 123 | 
                +# "零": "零〇",  | 
            |
| 124 | 
                +# "一": "一壹幺",  | 
            |
| 125 | 
                +# "二": "二贰两",  | 
            |
| 126 | 
                +# "三": "三叁仨",  | 
            |
| 127 | 
                +# "四": "四肆",  | 
            |
| 128 | 
                +# "五": "五伍",  | 
            |
| 129 | 
                +# "六": "六陆",  | 
            |
| 130 | 
                +# "七": "七柒",  | 
            |
| 131 | 
                +# "八": "八捌",  | 
            |
| 132 | 
                +# "九": "九玖",  | 
            |
| 133 | 
                +# "十": "十拾",  | 
            |
| 134 | 
                +# "百": "百佰",  | 
            |
| 135 | 
                +# "千": "千仟",  | 
            |
| 136 | 
                +# "万": "万",  | 
            |
| 137 | 
                +# "亿": "亿",  | 
            |
| 138 | 
                +# }  | 
            
                @@ -226,6 +226,11 @@ class TenancyStatusCode(BaseStatusCode):  | 
            ||
| 226 | 226 | 
                TENANCY_SHOT_REQUEST_NOT_FOUND = StatusCodeField(509011, 'Tenancy Shot Request Not Found', description=u'租赁镜头申请不存在')  | 
            
| 227 | 227 | 
                 | 
            
| 228 | 228 | 
                 | 
            
| 229 | 
                +class ContractStatusCode(BaseStatusCode):  | 
            |
| 230 | 
                + """ 合同相关错误码 5091xx """  | 
            |
| 231 | 
                + CONTRACT_NOT_FOUND = StatusCodeField(509101, 'Contract Not Found', description=u'合同不存在')  | 
            |
| 232 | 
                +  | 
            |
| 233 | 
                +  | 
            |
| 229 | 234 | 
                class TencentCloudStatusCode(BaseStatusCode):  | 
            
| 230 | 235 | 
                """ 腾讯云SDK错误码 5099xx """  | 
            
| 231 | 236 | 
                TENCENT_CLOUD_SDK_EXCEPTION = StatusCodeField(509901, 'Tencent Cloud SDK Exception', description=u'腾讯云SDK报错')  |