some fix, string compression, ui fix
This commit is contained in:
parent
87840349db
commit
d2bc1575e6
@ -73,13 +73,15 @@ void * show_item(void * ddb,int index){
|
||||
|
||||
void print_page(void * ddb, int cur, int end,struct Map* map){
|
||||
struct inventory db = *((struct inventory*)ddb);
|
||||
printf("%-5s%-15s%-15s%-10s%-10s%-10s%-10s\n","No.","Product","Brand","Category","Price","Stock","Barcode");
|
||||
for (int i = cur; i < end; i++)
|
||||
{
|
||||
if(map != NULL){
|
||||
printf("%d item %d: %s\n", i + 9,i, db.row[map[i].key].product);
|
||||
int index = map[i].key;
|
||||
printf("%-5d%-15s%-15s%-10s%-10.2lf%-10d%-10ld\n",i+9,StringCompression(db.row[index].product,13),StringCompression(db.row[index].brand,13),StringCompression(db.row[index].category,8),db.row[index].price,db.row[index].stock,db.row[index].barcode);
|
||||
}
|
||||
else{
|
||||
printf("%d item %d: %s\n", i + 9,i, db.row[i].product);
|
||||
printf("%-5d%-15s%-15s%-10s%-10.2lf%-10d%-10ld\n",i+9,StringCompression(db.row[i].product,13),StringCompression(db.row[i].brand,13),StringCompression(db.row[i].category,8),db.row[i].price,db.row[i].stock,db.row[i].barcode);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -318,7 +318,7 @@ struct cart* scan_barcode(struct cart* cart,struct inventory db){
|
||||
|
||||
|
||||
long prompt_barcode(){
|
||||
printf("Please scan the qr code(or input the barcode ) ");
|
||||
printf("Please scan the qr code(or input the barcode) ");
|
||||
long barcode;
|
||||
fflush_stdin();
|
||||
scanf("%ld", &barcode);
|
||||
@ -369,6 +369,7 @@ struct cart* list_cart(struct cart* cart){
|
||||
printf("<------------------------>\n");
|
||||
|
||||
printf("\n%d CHECKOUT\n",i);
|
||||
printf("Clear Cart\n",i+1);
|
||||
}
|
||||
do{
|
||||
printf("input the corresponding value for more action\n>");
|
||||
@ -378,9 +379,11 @@ struct cart* list_cart(struct cart* cart){
|
||||
cart = cart_control(cart,choice);
|
||||
}else if(choice == i && cart != NULL){
|
||||
cart = checkout(cart);
|
||||
|
||||
}else if(choice == i+1 && cart != NULL){
|
||||
cart = NULL;
|
||||
printf("Cart cleared\n");
|
||||
}
|
||||
}while(choice <0 || choice > i);
|
||||
}while(choice <0 || choice > i+1);
|
||||
}while(choice != 0);
|
||||
return cart;
|
||||
}
|
||||
|
@ -62,13 +62,13 @@ void print_role(struct linkedlist* list,int cur,int end,struct Map* map){
|
||||
for(int i = cur; i < end; i++){
|
||||
list = getLinkedList(list,i);
|
||||
char* name = list->data;
|
||||
printf("%-10d%-10s%-10s\n",i-cur + 5,name,is_admin(name)?"T":"F");
|
||||
printf("%-10d%-10s%-10s\n",i-cur + 5,StringCompression(name,8),is_admin(name)?"T":"F");
|
||||
}
|
||||
}else{
|
||||
for(int i = cur; i < end; i++){
|
||||
list = getLinkedList(list,map[i].key);
|
||||
char* name = list->data;
|
||||
printf("%-10d%-10s%-10s\n",i-cur + 5,name,is_admin(name)?"T":"F");
|
||||
printf("%-10d%-10s%-10s\n",i-cur + 5,StringCompression(name,8),is_admin(name)?"T":"F");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -146,11 +146,11 @@ void print_user(void * ddb, int cur, int end,struct Map* map){
|
||||
if(map == NULL){
|
||||
bool isadmin = is_admin(db.row[i].role);
|
||||
// printf("isadmin%s\n",db.row[i].id);
|
||||
printf("%-5d%-20s%-10ld%-10s%-10c\n",i+7,db.row[i].name,db.row[i].id,db.row[i].role,isadmin?'Y':'N');
|
||||
printf("%-5d%-20s%-10ld%-10s%-10c\n",i+7,StringCompression(db.row[i].name,18),db.row[i].id,StringCompression(db.row[i].role,8),isadmin?'Y':'N');
|
||||
}else{
|
||||
int index = map[i].key;
|
||||
bool isadmin = is_admin(db.row[index].role);
|
||||
printf("%-5d%-20s%-10ld%-10s%-10c\n",i+7,db.row[index].name,db.row[index].id,db.row[index].role,isadmin?'Y':'N');
|
||||
printf("%-5d%-20s%-10ld%-10s%-10c\n",i+7,StringCompression(db.row[index].name,18),db.row[index].id,StringCompression(db.row[index].role,8),isadmin?'Y':'N');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
10
utils.h
10
utils.h
@ -182,6 +182,16 @@ void lister(void * db,struct Map* map, int row,char * lister_name,char * SortIte
|
||||
}while(choice != 0);
|
||||
return;
|
||||
}
|
||||
//Size to be compressed to, > 3(...), should be some larger number else seeing nothing
|
||||
char * StringCompression(char * str, int size){
|
||||
if(strlen(str) > size){
|
||||
str[size-3] = '.';
|
||||
str[size-2] = '.';
|
||||
str[size-1] = '.';
|
||||
str[size] = '\0';
|
||||
}
|
||||
return str;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user