亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? set_cash.c

?? BC3.1編譯,小交換機計費系統(tǒng).使用Dos做出如此好的界面,少有.
?? C
?? 第 1 頁 / 共 2 頁
字號:
#include <alloc.h>
#include <ctype.h>
#include <fcntl.h>
#include <graphics.h>
#include <io.h>
#include <mem.h>
#include <string.h>

#include <bio.inc>
#include <menu.inc>
#include <key.inc>
#include <g_id.inc>
#include "feedef.h"

#define BK_CLR    7
#define CHR_CLR   0
#define HEAD_CLR  0
#define ITBL_CLR  5

#define BK_COLOR        0       /* specify the background color  */
#define CHAR_COLOR      14      /* specify the characters' color */
#define CURSOR_COLOR    12      /* specify the cursor color      */

#define DRAW_KEY        draw_key(x, y, x+16, y+16, "關(guān)", 7, 0)
#define CHANG_KEY       chang_key1(x, y, x+16, y+16, "開", 12)

/* function  : set cash pledge (ya jin) for every telephone No
 * called by : set_data()
 * date      : 1993.10.18
 */
void set_cash_pledge(UC mode)
{
    UC flag;
    UI pg;
    CASH_PLEDGE   *tbl;
    UC *title = "注意:";
    UC *warn  = "應(yīng)先打開開關(guān)再設(shè)定押金!";

    TABLE_STRUCT  cash_tbl = {115,99,20,18,16,5, {48, 72, 72, 72, 72}, ITBL_CLR};

    if(Cashflg[mode] == 0)         /* do not use cash pledge function      */
    {
	warn_mesg(title, warn);
	return;
    }

    flag = check_maint_cash(mode);
    if(flag == 0)
    {
	message(PHO_FILE_ERR);
	return;
    }

    flag = load_cash_tbl(mode);       /* load cash file to memory */
    Cash_len[mode] = cash_tbl_len(mode);

    clr_DialWin(1);

    set_finger_color(Dsp_clr.fng_clr);
    draw_table(&cash_tbl);        /* draw the table frame */
    disp_cash_head(SET_CASH, mode);     /* display table head   */
    disp_cash_help(SET_CASH, mode);     /* display the help information */

    message_disp(8,"根據(jù)右上方彈出提示窗口提示操作");
    Count = 1;
    tbl = Cash_top[mode];
    disp_cash_tbl(tbl,Count,SET_CASH, mode);

    if(!(Cash_len[mode]%16) && Cash_len[mode])
	 pg = Cash_len[mode]/16;
    else
	 pg = (UI)(Cash_len[mode]/16)+1;
    outf(542,397,11,14,"%2u",pg);

    locate_finger(0,2);
    input_cash_data(mode);
    unload_cash_tbl(mode);
    message_end();

    return;
}

/* function  : check if the telephones in charge.pho are the same as those
 *             in cash data file. If not, add to cash data file automaticly
 * called by : set_cash()
 * input     : mode -- phone pledge or authorized code pledge
 * output    : 0 -- unsuccesful
 *             1 -- successful
 * date      : 1993.11.9
 */
UC check_maint_cash(UC mode)
{
    FILE *fpm, *fpc;
    PHONE_STRUCT  phone;
    AUTHCD_STRUCT auth;
    CASH_PLEDGE *cashe, ctmp={"",0,0,0};
    size_t psize, asize, csize;

    psize = sizeof(PHONE_STRUCT);
    asize = sizeof(AUTHCD_STRUCT);
    csize = sizeof(CASH_PLEDGE);

    /* the phones in charge.pho are not the same as those in cash data file,
     * so refresh cash data file
     */
    message_disp(8,"正在進(jìn)行文件操作, 請稍候...");    /* refreshing, wait */
    load_cash_tbl(mode);
    Cash_len[mode] = cash_tbl_len(mode);

    fpm = fopen(ChargeDataFile[mode],"rb");
    fpc = fopen(CashDataFile[mode],"wb");
    if(mode == PHONE_CASH)
	while(fread(&phone,psize,1,fpm) == 1)
	{
	    cashe = binary_cash(phone.phone_no, mode);
	    if(cashe != NULL)
		fwrite(cashe,csize,1,fpc);
	    else
	    {
		strcpy(ctmp.phone_no,phone.phone_no);
		fwrite(&ctmp,csize,1,fpc);
	    }
	 }
    else /* mode == AUTH_CASH */
	while(fread(&auth,asize,1,fpm) == 1)
	{
	    if(auth.auth_class != UNUSED_AUTH)
	    {
		sprintf(phone.phone_no, "%03d", auth.auth_code);
		cashe = binary_cash(phone.phone_no, mode);
		if(cashe != NULL)
		    fwrite(cashe,csize,1,fpc);
		else
		{
		    strcpy(ctmp.phone_no,phone.phone_no);
		    fwrite(&ctmp,csize,1,fpc);
		}
	     }
	}

    fclose(fpc);
    fclose(fpm);
    unload_cash_tbl(mode);
    message_end();

    return(1);
}

/* function  : load the cash data to memory, and input the cash_pledge
 * called by : set_cash_pledge()
 * output    : 0 -- the file of cash data file does not exist
 *             1 -- successful
 * date      : 1993.10.17
 */
UC load_cash_tbl(UC mode)
{
    FILE        *fp;
    CASH_PLEDGE *tbl;
    UL           ss;
    int          i, num = 0;
    UI		 maxlen;

    if(Cash_top[mode] != NULL) return(1); /*already loaded */

    fp = fopen(CashDataFile[mode],"rb");
    if(fp == NULL)      /* the file does not exist */
	return(0);

    maxlen = (mode == PHONE_CASH)? MAX_USERS:MAX_AUTHCD;
    Cash_top[mode] = (CASH_PLEDGE *)farcalloc(maxlen, sizeof(CASH_PLEDGE));
    if(!Cash_top[mode])
    {
	ss = (UL)(maxlen*sizeof(CASH_PLEDGE));
	exit_scr(1,"Out of memery ERROR: %ld bytes.\n\nGFS system shutdown abnormally.\n\n\n\n",ss);
    }

    tbl = Cash_top[mode];
    while(fread(tbl,sizeof(CASH_PLEDGE),1,fp) == 1)
    {
	tbl++;
	num++;
    }
    fclose(fp);

    for(i=num;i<maxlen;i++)
	(Cash_top[mode]+i)->phone_no[0] = '\0';

    return(1);
}

/* function  : free the memory for the cash pledge table
 * called by : set_cash_pledge()
 * date      : 1993.9.21
 */
void unload_cash_tbl(UC mode)
{
    if( Cash_top[mode] != NULL) {
	farfree(Cash_top[mode]);
	Cash_top[mode] = NULL;
    }
    return;
}

/* function  : transfer the phone no in charge.pho to phone cash data file
 *             or transfer the authority code in charge.aus to aus cash data file
 * called by : set_cash_pledge()
 * output    : 0 -- charge.pho does not exist
 *             1 -- successful
 * date      : 1992.10.17
 */
UC maint_to_cash(UC mode)
{
    FILE         *fps,*fpd;
    PHONE_STRUCT  phone;
    AUTHCD_STRUCT auth;
    CASH_PLEDGE   cashe;
    void 	 *strp;
    size_t        size;

    fps = fopen(ChargeDataFile[mode],"rb");
    if(fps == NULL)
	return(0);
    fpd = fopen(CashDataFile[mode],"wb");

    if(mode == PHONE_CASH)
    {
	strp = &phone;
	size = sizeof(PHONE_STRUCT);
    }
    else
    {
	strp = &auth;
	size = sizeof(AUTHCD_STRUCT);
    }

    while(fread(strp,size,1,fps) == 1)
    {
	if(mode == PHONE_CASH)
	    strcpy(cashe.phone_no,phone.phone_no);
	else
	{
	    if(auth.auth_class == UNUSED_AUTH) continue;
	    sprintf(cashe.phone_no, "%03d", (UI)auth.auth_code);
	}

	cashe.cash = 0;
	cashe.limit = 0;
	fwrite(&cashe,sizeof(CASH_PLEDGE),1,fpd);
    }
    fclose(fpd);
    fclose(fps);

    return(1);
}

/* function  : calculate the length of cash pledge table
 * called by : set_cash_pledge()
 * date      : 1993.10.16
 */
UI cash_tbl_len(UC mode)
{
    CASH_PLEDGE *tbl;
    UI tbllen = 0, maxlen;


    maxlen = (mode == PHONE_CASH)? MAX_USERS:MAX_AUTHCD;

    tbl = Cash_top[mode];

    while(strlen(tbl->phone_no) && tbllen<maxlen)
    {
	tbllen++;
	tbl++;
    }

    return(tbllen);
}

/* function  : display the head Hanzi for the cash table
 * called by : set_cash_pledge()
 * date      : 1993.9.22
 */
void disp_cash_head(UC opflg, UC mode)
{
    UC *msg[2]={"分機號碼","授權(quán)卡號"};

    if(opflg == SET_CASH)
	outf(225, 76, BK_CLR, BLACK, "押  金  設(shè)  定");     /* No.         */
    else if(opflg == INQ_CASH)
	outf(225, 76, BK_CLR, BLACK, "押  金  查  詢");     /* No.         */
    else
	outf(225, 76, BK_CLR, BLACK, "透  支  報  告");     /* No.         */

    outf(124, 103, BK_CLR, HEAD_CLR, "序號");     /* No.         */
    outf(169, 103, BK_CLR, HEAD_CLR, msg[mode]);  /* phone No or auth code */
    outf(242, 103, BK_CLR, HEAD_CLR, "押金狀態(tài)"); /* cash now    */
    outf(315, 103, BK_CLR, HEAD_CLR, "押金現(xiàn)額"); /* cash now    */
    outf(388, 103, BK_CLR, HEAD_CLR, "押金下限"); /* cash limit  */

    return;
}


/* function  : display the help information for input
 * called by : set_cash_pledge()
 * input     : mode -- SET_CASH or INQ_CASH
 * date      : 1993.9.22
 */
void disp_cash_help(UC opflg, UC mode)
{
    UC *msg[2] = {"F6   分機號定位","F6 授權(quán)卡號定位"};

    hz16_disp(500,103,"單位: 元",0);

    /*** PROMPT: ***/
    draw_back1(480, 122, 625, 357, 11);
    if(opflg == SET_CASH)
    {
	outf(490, 142, 11, 0, "F2   存盤");
	outf(490, 162, 11, 0, msg[mode]);
	outf(490, 182, 11, 0, "F7   頁定位");
	outf(490, 202, 11, 0, "←↓→↑ 移動");
	outf(490, 222, 11, 0, "PgUp  向前翻頁");
	outf(490, 242, 11, 0, "PgDn  向后翻頁");
	outf(490, 262, 11, 0, "Enter 輸入");

	outf(490, 322, 11, 0, "Esc   退出");
    }
    else
    {
	outf(490, 142, 11, 0, msg[mode]);
	outf(490, 162, 11, 0, "F7   頁定位");
	outf(490, 182, 11, 0, "↓↑ 移動");
	outf(490, 202, 11, 0, "PgUp  向前翻頁");
	outf(490, 222, 11, 0, "PgDn  向后翻頁");

	outf(490, 322, 11, 0, "Esc   退出");
    }

    /*** PAGE No. AND TOTAL PAGE ***/
    draw_back1(498, 365, 607, 427, 11);
    outf(518, 377, 11, 14, "第");
    outf(575, 377, 11, 14, "頁");
    outf(518, 397, 11, 14, "共");
    outf(575, 397, 11, 14, "頁");
}

/* function  : display a page of cash table
 * called by : set_cash_pledge(), pgup_cash_tbl(), pgdn_cash_tbl()
 * input     : tbl -- the first item of this page
 *             num -- the xu-hao of the first item of this page
 *             cmode -- SET_CASH or INQ_CASH
 *	       mode -- PHONE_CASH or AUTHCD_CASH
 * date      : 1993.10.16
 */
void disp_cash_tbl(CASH_PLEDGE *tbl, int num, UC cmode, UC mode)
{
    UI i, j;
    UI x, y;
    UI pg;
    UNIT_STRUCT cer_unit;
    UI maxlen;

    maxlen = (mode == PHONE_CASH)? MAX_USERS:MAX_AUTHCD;

    for(i=0; i<16; i++)          /* DISPLAY No. IN THE TABLE */
    {
	 if(num+i > maxlen)
	     break;
	 outf(124, i*19+123, BK_CLR, HEAD_CLR, "%-3u", num+i);
    }

    pg = (UI)(num/16)+1;         /* DISPLAY THIS PAGE No. */
    setfillstyle(1,11);
    bar(534, 393, 575, 377);
    outf(542, 377, 11, 14, "%2u", pg);

    for(i=0; i<16; i++)
    {
	 if(!strlen(tbl->phone_no) || (num+i > maxlen))
	     break;

	 if((cmode == INQ_CASH) || (cmode == INQ_OVCASH))
	 {
	     if(tbl->flag == CASH_ON)
	     {
		 if( tbl->cash < tbl->limit)
		     indicator( 284+4, i*19+123+8, LIGHTRED );
		 else
		     indicator( 284+4, i*19+123+8, LIGHTGREEN );
	     }
	 }
	 for(j=1;j<5;j++)
	 {
	      cer_unit.unit_x = i;
	      cer_unit.unit_y = j;
	      get_certain(&cer_unit);
	      x = cer_unit.dot_sx+8;
	      y = cer_unit.dot_sy+1;

	      switch(j)
	      {
		   case 1:    /* telephone no */
		       if(!strcmp(tbl->phone_no,""))
			   break;
		       outf(x,y,BK_CLR,CHR_CLR,"%-s",tbl->phone_no);
		       break;
		   case 2:    /* cash switch */
		       if(tbl->flag == CASH_ON)
			   CHANG_KEY;
		       else
			   DRAW_KEY;
		       break;
		   case 3:    /* cash preserved now */
		       outf(x,y,BK_CLR,CHR_CLR,"%7.2f",((double)tbl->cash)/100);
		       break;
		   case 4:    /* cash bottom  limit */
			outf(x,y,BK_CLR,CHR_CLR,"%6.2f",((double)tbl->limit)/100);
			break;
		   default:
			break;
	      }    /* END SWITCH */
	 }         /* END FOR2   */

	 tbl++;
    }    /* END FOR1 */

    return;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美专区在线| 欧美一级日韩一级| 国产一区二区不卡老阿姨| 日韩影院免费视频| 日本欧美韩国一区三区| 丝袜国产日韩另类美女| 日韩不卡手机在线v区| 蜜桃精品视频在线| 国产成人午夜片在线观看高清观看| 精品亚洲免费视频| 成人免费视频免费观看| 不卡大黄网站免费看| 99精品一区二区| 成人免费视频网站在线观看| 91在线观看美女| 欧美日韩精品欧美日韩精品一| 欧美一区三区四区| 久久久久久久久免费| 国产精品久久久久久久久久久免费看 | av不卡在线播放| 成人激情综合网站| av一区二区三区黑人| 99综合电影在线视频| 99视频精品在线| 欧美日韩国产天堂| 日韩欧美中文字幕精品| 国产情人综合久久777777| 亚洲视频在线一区观看| 日日夜夜免费精品| 成人午夜视频在线| 欧美日韩精品二区第二页| 精品国产伦一区二区三区免费| 国产欧美日韩另类一区| 一区二区三区四区激情| 麻豆精品一区二区综合av| 成人免费黄色大片| 日韩三级在线观看| 日韩毛片高清在线播放| 蜜芽一区二区三区| 北条麻妃国产九九精品视频| 欧美日韩国产123区| 国产精品网友自拍| 日本aⅴ精品一区二区三区 | 一区二区三区欧美在线观看| 日本aⅴ亚洲精品中文乱码| 99久久夜色精品国产网站| 日韩一区和二区| 亚洲一区二区三区免费视频| 国产一区二区视频在线| 欧美日韩在线观看一区二区| 国产精品素人一区二区| 另类小说欧美激情| 欧美在线一区二区| 国产精品久线在线观看| 国产成人综合亚洲网站| 91麻豆精品国产91久久久久| 亚洲私人黄色宅男| 韩国理伦片一区二区三区在线播放 | 成人开心网精品视频| 欧美精品一区二区在线播放| 亚洲国产精品综合小说图片区| 99国内精品久久| 国产欧美日韩视频在线观看| 久久99精品一区二区三区| 51午夜精品国产| 午夜精品久久久久久久久久久| 成人综合婷婷国产精品久久| 日韩欧美国产电影| 青青国产91久久久久久| 欧美日韩免费观看一区三区| 亚洲精品欧美二区三区中文字幕| 北条麻妃一区二区三区| 国产女人aaa级久久久级| 国产a久久麻豆| 中文在线一区二区| 国产精品夜夜爽| 欧美国产丝袜视频| 成人精品视频一区二区三区| 国产欧美一区二区三区鸳鸯浴 | 国产精品福利一区二区| 福利电影一区二区| 国产欧美精品国产国产专区| 成人综合在线观看| 亚洲男人的天堂av| 欧亚洲嫩模精品一区三区| 亚洲一区二区美女| 91精品国产色综合久久不卡蜜臀| 欧美aaaaaa午夜精品| 日韩女优视频免费观看| 国产一区二区三区免费播放| 国产欧美一区二区三区鸳鸯浴 | 国产目拍亚洲精品99久久精品| 国产福利一区二区三区| 一区在线中文字幕| 欧美在线观看视频在线| 日韩在线观看一区二区| 国产亚洲午夜高清国产拍精品| 国产丶欧美丶日本不卡视频| 中文字幕亚洲一区二区va在线| 色88888久久久久久影院按摩 | 亚洲一区二区在线免费看| 欧美精品在线一区二区| 国产一区二区三区| 亚洲欧美一区二区三区久本道91 | 色婷婷精品大视频在线蜜桃视频| 亚洲精品高清在线| 337p粉嫩大胆噜噜噜噜噜91av| 成人一区二区视频| 亚洲图片欧美视频| 国产亚洲美州欧州综合国| 99久久99久久免费精品蜜臀| 婷婷国产v国产偷v亚洲高清| 欧美www视频| 91国偷自产一区二区三区成为亚洲经典| 亚洲国产精品自拍| 中文字幕欧美日韩一区| 欧美视频自拍偷拍| 国产一区二区三区黄视频| 亚洲一级电影视频| 国产精品欧美一级免费| 欧美日韩色一区| 99国产精品久| 黄页网站大全一区二区| 亚洲综合成人在线视频| 国产亚洲精久久久久久| 欧美一区欧美二区| 在线欧美一区二区| 成人午夜电影小说| 另类小说欧美激情| 亚洲一区二区三区小说| 国产精品二区一区二区aⅴ污介绍| 91精品久久久久久久久99蜜臂| 成人国产精品免费观看动漫| 久久99精品国产麻豆婷婷洗澡| 亚洲第一福利一区| 亚洲黄色小视频| 日韩毛片高清在线播放| 日本一区二区三区国色天香| 精品精品国产高清a毛片牛牛| 欧美日韩精品欧美日韩精品一| 91在线视频官网| 成人毛片老司机大片| 国产99久久久国产精品潘金 | 色婷婷国产精品综合在线观看| 精品亚洲porn| 老司机精品视频在线| 日韩中文字幕不卡| 日本不卡高清视频| 婷婷成人激情在线网| 亚洲一卡二卡三卡四卡五卡| 亚洲六月丁香色婷婷综合久久| 国产欧美一区二区三区鸳鸯浴| 久久久久久亚洲综合| 久久先锋影音av鲁色资源网| 精品国产91乱码一区二区三区| 9191成人精品久久| 日韩精品中文字幕一区 | 97se亚洲国产综合自在线| 粉嫩高潮美女一区二区三区| 国产精品影视天天线| 成人性生交大片免费 | 亚洲成av人片| 亚洲福利一区二区三区| 午夜电影网亚洲视频| 日韩精品国产欧美| 国内精品国产成人国产三级粉色| 久久9热精品视频| 国产大陆亚洲精品国产| 91老师片黄在线观看| 欧美在线观看一区二区| 欧美日高清视频| 国产亚洲精品aa| 亚洲精品写真福利| 蜜桃av一区二区在线观看| 国产激情视频一区二区三区欧美 | 午夜视频在线观看一区二区| 丝袜亚洲另类欧美| 国产精品一区二区免费不卡| av在线不卡网| 欧美日韩精品一区二区三区四区| 日韩三级高清在线| 国产精品久久久久久户外露出| 一区二区三区四区蜜桃| 久久精品国产一区二区三区免费看| 狠狠狠色丁香婷婷综合激情| 99精品国产热久久91蜜凸| 欧美猛男男办公室激情| 国产精品欧美久久久久无广告 | 中文字幕一区二区三区四区不卡 | 久久国内精品视频| 99久久精品免费精品国产| 欧美军同video69gay| 欧美韩日一区二区三区| 亚洲福利视频三区| 粉嫩一区二区三区性色av| 欧美一区二区国产| 国产精品久久久久一区二区三区| 午夜视频在线观看一区二区三区 | 偷拍自拍另类欧美| 成人av电影在线播放|