コード例 #1
0
def save_send_express(express_param):
    sql = "INSERT INTO Express (id, customerStoreNumber, expressType, overdueTime, status, storeTime, syncFlag" \
          ", version, box_id, mouth_id, storeUserPhoneNumber" \
          ", operator_id, groupName,Weight, lastModifiedTime)" \
          " VALUES (:id,:customerStoreNumber,:expressType,:overdueTime,:status,:storeTime,:syncFlag," \
          ":version,:box_id,:mouth_id,:storeUserPhoneNumber" \
          ",:operator_id,:groupName,:Weight,:lastModifiedTime)"
    ClientDatabase.insert_or_update_database(sql, express_param)
コード例 #2
0
def save_express_for_customer_to_staff(express_param):
    sql = "INSERT INTO Express (id, expressType, overdueTime, status, StoreTime, SyncFlag" \
          ", Version, box_id, mouth_id" \
          ", operator_id, storeUser_id,groupName,lastModifiedTime)" \
          " VALUES (:id,:expressType,:overdueTime,:status,:storeTime,:syncFlag," \
          ":version,:box_id,:mouth_id" \
          ",:operator_id,:storeUser_id,:groupName,:lastModifiedTime)"
    ClientDatabase.insert_or_update_database(sql, express_param)
コード例 #3
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def init_mouth_type(mouth_type):
    sql = "SELECT * FROM MouthType WHERE id=:id"
    result_set = ClientDatabase.get_result_set(sql, mouth_type)
    if len(result_set) != 0:
        return
    sql = "INSERT INTO MouthType (id, defaultUsePrice,defaultOverduePrice, name,deleteFlag)" \
          "VALUES (:id,:defaultUsePrice,:defaultOverduePrice,:name,:deleteFlag)"
    ClientDatabase.insert_or_update_database(sql, mouth_type)
コード例 #4
0
def save_express(express_param):
    sql = "INSERT INTO Express (id, ExpressNumber, expressType,  status, StoreTime, SyncFlag" \
          ", ValidateCode, Version, box_id, mouth_id" \
          ", operator_id, groupName, lastModifiedTime, payAmount, payType, order_id, takeUser_id)" \
          " VALUES (:id,:expressNumber,:expressType,:status,:storeTime,:syncFlag," \
          ":validateCode,:version,:box_id,:mouth_id" \
          ",:operator_id,:groupName,:lastModifiedTime,:payAmount,:payType,:order_id,:takeUser_id)"
    ClientDatabase.insert_or_update_database(sql, express_param)
    print("写入本地数据库成功!")
コード例 #5
0
def init_express(express):
    sql = "INSERT INTO Express (id, expressNumber, expressType, overdueTime, status, storeTime, syncFlag" \
          ", takeUserPhoneNumber, storeUserPhoneNumber, validateCode, version, box_id, " \
          "logisticsCompany_id, mouth_id, operator_id, " \
          "storeUser_id,groupName,customerStoreNumber, chargeType, continuedHeavy, " \
          "continuedPrice, endAddress, startAddress, firstHeavy, firstPrice, designationSize, " \
          "electronicCommerce_id, takeUser_id, payAmount, payType, order_id)" \
          "VALUES (:id,:expressNumber,:expressType,:overdueTime,:status,:storeTime,:syncFlag,:takeUserPhoneNumber" \
          ",:storeUserPhoneNumber,:validateCode,:version,:box_id,:logisticsCompany_id,:mouth_id,:operator_id,:" \
          "storeUser_id,:groupName,:customerStoreNumber,:chargeType,:continuedHeavy,:continuedPrice" \
          ",:endAddress,:startAddress,:firstHeavy,:firstPrice,:designationSize,:electronicCommerce_id" \
          ",:takeUser_id,:payAmount,:payType,:order_id)"
    ClientDatabase.insert_or_update_database(sql, express)
コード例 #6
0
def init_client():
    try:
        message, status_code = HttpClient.get_message('box/init')
        if status_code != 200:
            return message['statusMessage']
        ClientDatabase.init_database()
        box_param = {'id': message['id'], 'name': message['name'], 'orderNo': message['orderNo'],
                     'validateType': message['validateType'], 'operator_id': message['operator']['id'],
                     'syncFlag': message['syncFlag'], 'currencyUnit': message['currencyUnit'],
                     "overdueType": message['overdueType'], "freeHours": ClientTools.get_value("freeHours", message),
                     "freeDays": ClientTools.get_value("freeDays", message),
                     "holidayType": ClientTools.get_value("holidayType", message, None),
                     "receiptNo": ClientTools.get_value("receiptNo", message, 0)}
        CompanyService.init_company(message['operator'])
        BoxDao.init_box(box_param)

        cabinets = message['cabinets']
        for cabinet in cabinets:
            BoxDao.init_cabinet(cabinet)
            mouths = cabinet['mouths']
            for m in mouths:
                __mouth = {'id': m['id'], 'deleteFlag': m['deleteFlag'], 'number': m['number'],
                           'usePrice': m['usePrice'],
                           'overduePrice': m['overduePrice'], 'status': m['status'], 'box_id': message['id'],
                           'cabinet_id': cabinet['id'], 'numberInCabinet': m['numberInCabinet'],
                           'syncFlag': m['syncFlag'], 'openOrder': ClientTools.get_value("openOrder", m)}
                if 'express' in m.keys():
                    __mouth['express_id'] = m['express']['id']
                    express.service.ExpressService.init_express(m['express'], __mouth, box_param)
                else:
                    __mouth['express_id'] = None
                __mouth['mouthType_id'] = m['mouthType']['id']
                mouth_type_param = m['mouthType']
                mouth_type = {'id': mouth_type_param['id'], 'name': mouth_type_param['name'],
                              'defaultUsePrice': mouth_type_param['defaultUsePrice'],
                              'defaultOverduePrice': mouth_type_param['defaultOverduePrice'],
                              'deleteFlag': mouth_type_param['deleteFlag']}
                BoxDao.init_mouth_type(mouth_type)
                BoxDao.init_mouth(__mouth)

        if "holidays" in message.keys():
            holidays = message["holidays"]
            for holiday in holidays:
                holiday_param = {'id': holiday['id'], 'startTime': holiday['startTime'], 'endTime': holiday['endTime'],
                                 'delayDay': holiday['delayDays'], 'holidayType': holiday['holidayType']}
                BoxDao.init_holiday(holiday_param)

        box_signal_handler.init_client_signal.emit("Success")
    except Exception as e:
        logger.error(("init_client ERROR :", e))
        box_signal_handler.init_client_signal.emit("ERROR")
コード例 #7
0
def save_customer_express(customer_store_express):
    sql = "INSERT INTO Express(id, customerStoreNumber, expressType," \
          " status, storeTime, syncFlag, version, " \
          "box_id, logisticsCompany_id, mouth_id, operator_id, " \
          "storeUser_id, recipientName, weight, recipientUserPhoneNumber, chargeType, lastModifiedTime,)" \
          "VALUES (:id,:customerStoreNumber,:expressType," \
          "'IN_STORE',:storeTime,0,0,:box_id," \
          ":logisticsCompany_id,:mouth_id,:operator_id," \
          ":storeUser_id,:recipientName,:weight,:recipientUserPhoneNumber, :chargeType, :lastModifiedTime,)"
    return ClientDatabase.save_customer_express(sql, customer_store_express)
コード例 #8
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def get_box_by_box_id(box_id):
    sql = "SELECT * FROM Box WHERE id = :id AND deleteFlag = :deleteFlag"
    return ClientDatabase.get_result_set(sql, box_id)
コード例 #9
0
def update_download_info_end(param):
    sql = "UPDATE Download SET status=:status,EndTime=:endTime WHERE id=:id"
    ClientDatabase.insert_or_update_database(sql, param)
コード例 #10
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def update_holiday(msg):
    sql = "UPDATE Holiday SET startTime=:startTime, endTime=:endTime," \
          "delayDay=:delayDay,holidayType=:holidayType WHERE id=:id"
    ClientDatabase.insert_or_update_database(sql, msg)
コード例 #11
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def get_box_by_order_no(order_no):
    sql = "SELECT * FROM Box WHERE orderNo = :orderNo AND deleteFlag = :deleteFlag"
    return ClientDatabase.get_result_set(sql, order_no)
コード例 #12
0
def check_download_by_id(param):
    sql = "SELECT * FROM Download WHERE id=:id"
    return ClientDatabase.get_result_set(sql, param)
コード例 #13
0
def get_upgrade_info(param):
    sql = "SELECT * FROM Download WHERE type=:type and status =:status AND deleteFlag=0"
    return ClientDatabase.get_result_set(sql, param)
コード例 #14
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def init_mouth(mouth):
    sql = "INSERT INTO Mouth(id, deleteFlag, number,usePrice ,overduePrice, status, box_id, cabinet_id, " \
          "express_id, mouthType_id,numberInCabinet,syncFlag,openOrder)" \
          "VALUES (:id,:deleteFlag,:number,:usePrice,:overduePrice,:status,:box_id,:cabinet_id,:express_id" \
          ",:mouthType_id,:numberInCabinet,:syncFlag,:openOrder)"
    ClientDatabase.insert_or_update_database(sql, mouth)
コード例 #15
0
def get_not_finish_info(param):
    sql = "SELECT * FROM Download WHERE status!=:status AND type=:type AND flagTime=:flagTime"
    return ClientDatabase.get_result_set(sql, param)
コード例 #16
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def init_cabinet(cabinet):
    sql = "INSERT INTO Cabinet(id, deleteFlag, number)" \
          "VALUES (:id,:deleteFlag,:number)"
    ClientDatabase.insert_or_update_database(sql, cabinet)
コード例 #17
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def get_mouth(msg):
    sql = "SELECT * FROM Mouth WHERE express_id = :id"
    return ClientDatabase.get_result_set(sql, msg)[0]
コード例 #18
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def update_box(msg):
    sql = "UPDATE Box SET name=:name, orderNo=:orderNo," \
          "validateType=:validateType,currencyUnit=:currencyUnit,overdueType=:overdueType," \
          "freeDays=:freeDays,freeHours=:freeHours,holidayType=:holidayType WHERE id=:id"
    ClientDatabase.insert_or_update_database(sql, msg)
コード例 #19
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def delete_holiday(param):
    sql = "UPDATE Holiday SET deleteFlag= 1 WHERE id=:id"
    ClientDatabase.insert_or_update_database(sql, param)
コード例 #20
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def get_holiday_by_id(param):
    sql = "SELECT * FROM Holiday WHERE deleteFlag = 0 AND id = :id"
    return ClientDatabase.get_result_set(sql, param)
コード例 #21
0
def update_download_info_status(param):
    sql = "UPDATE Download SET status=:status WHERE id=:id"
    ClientDatabase.insert_or_update_database(sql, param)
コード例 #22
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def get_not_sync_mouth_list(param):
    sql = "SELECT * FROM Mouth WHERE deleteFlag=0 AND syncFlag=:syncFlag"
    return ClientDatabase.get_result_set(sql, param)
コード例 #23
0
def get_all_download_info(param):
    sql = "SELECT * FROM Download WHERE status=:status"
    return ClientDatabase.get_result_set(sql, param)
コード例 #24
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def free_mouth(mouth):
    sql = "UPDATE mouth SET express_id = NULL , status = 'ENABLE' " \
          "WHERE id = :id"
    ClientDatabase.insert_or_update_database(sql, mouth)
コード例 #25
0
def get_md5_by_id(param):
    sql = "SELECT MD5 FROM Download WHERE id=:id"
    return ClientDatabase.get_result_set(sql, param)
コード例 #26
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def get_mouth_type(mouth_type_param):
    sql = "SELECT * FROM MouthType WHERE name = :name AND deleteFlag = 0"
    return ClientDatabase.get_result_set(sql, mouth_type_param)
コード例 #27
0
def insert_download_info(advertisement):
    sql = "INSERT INTO Download (id, url, filename, status, position, type, MD5,flagTime,version,initFlag,deleteFlag)" \
          "VALUES (:id,:url,:filename,:status,:position, :type,:MD5,:flagTime,:version,:initFlag,:deleteFlag)"
    ClientDatabase.insert_or_update_database(sql, advertisement)
コード例 #28
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def get_free_mouth_by_type_enable(mouth_param):
    sql = "SELECT * FROM Mouth WHERE  deleteFlag = :deleteFlag AND status = :status " \
          "LIMIT 0,1"
    return ClientDatabase.get_result_set(sql, mouth_param)
コード例 #29
0
def update_upgrade_info_for_deleteflag(param):
    sql = "UPDATE Download SET deleteFlag=1 WHERE id=:id"
    ClientDatabase.insert_or_update_database(sql, param)
コード例 #30
0
ファイル: BoxDao.py プロジェクト: B9527/pyqt_project
def get_free_mouth_by_id(param):
    sql = "SELECT * FROM Mouth WHERE deleteFlag=0 AND id=:id AND status =:status"
    return ClientDatabase.get_result_set(sql, param)