Esempio n. 1
0
//---(*)---Zuskin---20/02/2012---
//void WareCatalog::updateSaleRestrictionByTime(const string& start_time, const string& count_time) {
void WareCatalog::updateSaleRestrictionByTime(const string& start_time, const string& count_time, int id) {
    //ResultSet rs = RDBOperation::getInstance()->getFromTable("sale_time_limit", EmptyObjectFilter(""));
    ResultSet rs = RDBOperation::getInstance()->getFromTable("sale_time_limit", ObjectFilterById(id, "TaxRateGr")); // TaxRateGr because of id field name = 'id'
    //printf("rs.getCountRecord()= %d\n", rs.getCountRecord());
    if ( rs.getCountRecord() > 0 ) {
        //printf("updating record with id=%d\n", id);
        RDBUpdateExpression rdb_expr;
        rdb_expr.addField("start_time", start_time);
        rdb_expr.addField("count_time", count_time);
        //---(+)---
        rdb_expr.where_filter.addWhereCondition("id", "=", id);
        //---------
        
        RDBOperation::getInstance()->updateToDB("sale_time_limit", rdb_expr);
    } else {
        //printf("inserting record with id=%d\n", id);
        RDBInsertExpression rdb_expr;
        rdb_expr.addField("start_time", start_time);
        rdb_expr.addField("count_time", count_time);
        //---(+)---
        rdb_expr.addField("id", id);
        //---------
        RDBOperation::getInstance()->insertToDB("sale_time_limit", rdb_expr);
    }
    
}