⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ebcsav.c

📁 这是一个使用 informix esql/c 技术开发的银行程序的部分代码。
💻 C
📖 第 1 页 / 共 3 页
字号:
                        if(flag!=2)
                          {
                            move(16,25);
                            mess((short)71);
                            mess((short)72);
                            mess((short)3);
                            getch();
                            break;
                          }
                        sprintf(s,"/u/ebcsav/bin/work_init %c%c sys%c%c",
                          op_num/10+48,(op_num%10)+48,(month%10)+97,
                          (day%10)+97);
                        system(s);
                        break; 
                      case 2:
                        sprintf(s,"/u/ebcsav/bin/work_begin %c%c sys%c%c",
                          op_num/10+48,(op_num%10)+48,(month%10)+97,
                          (day%10)+97);
                        system(s);
                        get_op(op_num,&op);
                        if((op.priv&0x80)==0)
                          {
                            flag=0;
                            if((op.type&(short)1)==0) num[6]=2;
                            else num[6]=8;
                          }
                    }
                  break;
                case 6:
                  switch (num_c1)
                    {
                      case 1:
                        num_c2=settl_op(num_c2);
                        break; 
                      case 2:
                        sprintf(s,"/u/ebcsav/bin/work_end %c%c sys%c%c",
                          op_num/10+48,(op_num%10)+48,(month%10)+97,
                          (day%10)+97);
                        system(s);
                        flag=2;
                        num[6]=0;
                        break; 
                      case 3:
                        sprintf(s,"/u/ebcsav/bin/settle %c%c sys%c%c",
                          op_num/10+48,(op_num%10)+48,(month%10)+97,
                          (day%10)+97);
                        if(flag==2) system(s);
                        break; 
                      case 4:
                        num_c2=statement(num_c2);
                        m_c=(num_c2==0)?1:2;
                        break; 
                      case 5:
                        sprintf(s,"/u/ebcsav/bin/data_store %c%c sys%c%c",
                          op_num/10+48,(op_num%10)+48,(month%10)+97,
                          (day%10)+97);
                        if(flag==2) system(s);
                        break; 
                      case 6:
                        sprintf(s,"/u/ebcsav/bin/data_copy %c%c sys%c%c",
                          op_num/10+48,(op_num%10)+48,(month%10)+97,
                          (day%10)+97);
                        if(flag==2) system(s);
                        break; 
                      case 7:
                        if(flag==2) adjust_inte();
                        break; 
                      case 8:
                        if(flag==2) add_inte();
                        break; 
                      case 9:
                        sprintf(s,"/u/ebcsav/bin/data_inkey %c%c sys%c%c",
                          op_num/10+48,(op_num%10)+48,(month%10)+97,
                          (day%10)+97);
                        if(flag==2) system(s);
                        break; 
                      case 10:
                        if(flag==2) carry();
                    }
                  break;
                case 7:
                  switch (num_c1)
                    {
                      case 1:
                        num_c2=fix(num_c2);
                        m_c=(num_c2==0)?1:2;
                        break; 
                      case 2:
                        num_c2=demand(num_c2);
                        m_c=(num_c2==0)?1:2;
                        break; 
                      case 3:
                        num_c2=dated(num_c2);
                        m_c=(num_c2==0)?1:2;
                        break; 
                      case 4:
                        break; 
                      case 5:
                        break; 
                      case 6:
                        num_c2=large(num_c2);
                        m_c=(num_c2==0)?1:2;
                        break; 
                      case 7:
                        num_c2=call(num_c2);
                        m_c=(num_c2==0)?1:2;
                        break; 
                      case 8:
                        num_c2=house(num_c2);
                        m_c=(num_c2==0)?1:2;
                    }
              }
            break;
          }
      }
    endwin();
    return;
  }

void adjust_inte()
  {
    static char *title[3]={"0.  返  回  ","1.  人民币  ","2.  外  币  "};
    static char *remind[3]={"  返回主选择单  ",
      "  利率调整时, 将人民币活期和零存整取储蓄的累计利息按新的利率折算  ",
      "  利率调整时, 将外币活期储蓄的累计利息按新的利率折算  "};
    static short menu_row[3]={6,7,8},menu_col[3]={45,45,45};
    short num_c;
    block(5,43,5,16);
    num_c=0;
    num_c=menu(title,remind,menu_row,menu_col,2,num_c);
    num_c=menusel(title,remind,menu_row,menu_col,2,num_c,0);
    switch(num_c)
      {
        case 0:
          return;
        case 1:
          sprintf(s,"/u/ebcsav/bin/inte_r_adj %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 2:
          sprintf(s,"/u/ebcsav/bin/inte_f_adj %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
      }
  }

void add_inte()
  {
    static char *title[3]={"0.  返  回  ","1.  人民币  ","2.  外  币  "};
    static char *remind[3]={"  返回主选择单  ",
      "  在计息日, 将人民币活期储蓄的累计利息计入本金  ",
      "  在计息日, 将外币活期储蓄的累计利息计入本金  "};
    static short menu_row[3]={6,7,8},menu_col[3]={45,45,45};
    short num_c;
    block(5,43,5,16);
    num_c=0;
    num_c=menu(title,remind,menu_row,menu_col,2,num_c);
    num_c=menusel(title,remind,menu_row,menu_col,2,num_c,0);
    switch(num_c)
      {
        case 0:
          return;
        case 1:
          sprintf(s,"/u/ebcsav/bin/inte_r_add %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 2:
          sprintf(s,"/u/ebcsav/bin/inte_f_add %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
      }
  }

void carry()
  {
    static char *title[4]={"0.  返  回  ","1.  月  末  ","2.  季  末  ",
      "3.  年  末  "};
    static char *remind[4]={"  返回主选择单  ",
      "  将原本月末余额结转为上月末余额, 并将当前余额计为新的本月末余额  ",
      "  将原本季末余额结转为上季末余额, 并将当前余额计为新的本季末余额  ",
      "  将原本年末余额结转为上年末余额, 并将当前余额计为新的本年末余额  "};
    static short menu_row[4]={9,10,11,12},
      menu_col[4]={46,46,46,46};
    short num_c;
    block(8,44,6,16);
    num_c=0;
    num_c=menu(title,remind,menu_row,menu_col,3,num_c);
    num_c=menusel(title,remind,menu_row,menu_col,3,num_c,0);
    switch(num_c)
      {
        case 0:
          return;
        case 1:
          sprintf(s,"/u/ebcsav/bin/carry_m %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 2:
          sprintf(s,"/u/ebcsav/bin/carry_q %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 3:
          sprintf(s,"/u/ebcsav/bin/carry_y %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
      }
  }


void query()
  {
    static char *title[4]={"0.  返  回  ","1.  帐  户  ","2.  流  水  ",
      "3.  明  细  "};
    static char *remind[4]={"  返回主选择单  ","  查询帐户信息  ",
      "  查询流水帐信息  ","  查询明细帐信息  "};
    static short menu_row[4]={6,7,8,9},
      menu_col[4]={26,26,26,26};
    short num_c;
    block(5,24,6,16);
    num_c=0;
    num_c=menu(title,remind,menu_row,menu_col,3,num_c);
    num_c=menusel(title,remind,menu_row,menu_col,3,num_c,0);
    switch(num_c)
      {
        case 0:
          return;
        case 1:
          sprintf(s,"/u/ebcsav/bin/query_acc %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 2:
          sprintf(s,"/u/ebcsav/bin/query_blot %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 3:
          sprintf(s,"/u/ebcsav/bin/query_sch %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
      }
  }

void data_in()
  {
    static char *title[6]={"0.  返  回  ","1. 双整手工 ","2. 活期手工 ",
      "3. 零整手工 ","4. 大额手工 ","5. 通知手工 "};
    static char *remind[6]={"  返回主选择单  ",
      "  将手工活期储蓄数据输入本系统  ",
      "  将手工整存整取储蓄数据输入本系统  ",
      "  将手工零存整取储蓄数据输入本系统  ",
      "  将手工大额储蓄数据输入本系统  ","  将手工通知存款数据输入本系统  "};
    static short menu_row[6]={6,7,8,9,10,11},menu_col[6]={26,26,26,26,26,26};
    short num_c;
    block(5,24,8,16);
    num_c=0;
    num_c=menu(title,remind,menu_row,menu_col,5,num_c);
    num_c=menusel(title,remind,menu_row,menu_col,5,num_c,0);
    switch(num_c)
      {
        case 0:
          return;
        case 1:
          sprintf(s,"/u/ebcsav/bin/hand_fix %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 2:
          sprintf(s,"/u/ebcsav/bin/hand_dem %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 3:
          sprintf(s,"/u/ebcsav/bin/hand_dated %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 4:
          sprintf(s,"/u/ebcsav/bin/hand_large %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 5:
          sprintf(s,"/u/ebcsav/bin/hand_call %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
      }
  }

void abate()
  {
    static char *title[8]={"0.  返  回  ","1. 整存整取 ","2.  活  期  ",
      "3. 零存整取 ","4. 存本取息 ","5. 定活两便 ","6.  大  额  ",
      "7. 通知存款 "};
    static char *remind[8]={"  返回主选择单  ","  冲销整存整取交易  ",
      "  冲销活期储蓄交易  ","  冲销零存整取交易  ","  冲销存本取息交易  ",
      "  冲销定活两便交易  ","  冲销大额储蓄交易  ","  冲销通知存款交易  "};
    static short menu_row[8]={7,8,9,10,11,12,13,14},
      menu_col[8]={29,29,29,29,29,29,29,29};
    short num_c;
    block(6,27,10,16);
    num_c=0;
    num_c=menu(title,remind,menu_row,menu_col,7,num_c);
    num_c=menusel(title,remind,menu_row,menu_col,7,num_c,0);
    switch(num_c)
      {
        case 0:
          return;
        case 1:
          sprintf(s,"/u/ebcsav/bin/ab_fix %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 2:
          sprintf(s,"/u/ebcsav/bin/ab_demand %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 3:
          sprintf(s,"/u/ebcsav/bin/ab_dated %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 4:
          break;
        case 5:
          break;
        case 6:
          sprintf(s,"/u/ebcsav/bin/ab_large %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 7:
          sprintf(s,"/u/ebcsav/bin/ab_call %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
      }
  }

void change()
  {
    static char *title[8]={"0.  返  回  ","1. 整存整取 ","2.  活  期  ",
      "3. 零存整取 ","4. 存本取息 ","5. 定活两便 ","6.  大  额  ",
      "7. 通知存款 "};
    static char *remind[8]={"  返回主选择单  ",
      "  对整存整取帐户信息做重要修改  ","  对活期储蓄帐户信息做重要修改  ",
      "  对零存整取帐户信息做重要修改  ","  对存本取息帐户信息做重要修改  ",
      "  对定活两便帐户信息做重要修改  ","  对大额储蓄帐户信息做重要修改  ",
      "  对通知存款帐户信息做重要修改  "};
    static short menu_row[8]={7,8,9,10,11,12,13,14},
      menu_col[8]={20,20,20,20,20,20,20,20};
    short num_c;
    block(6,18,10,16);
    num_c=0;
    num_c=menu(title,remind,menu_row,menu_col,7,num_c);
    num_c=menusel(title,remind,menu_row,menu_col,7,num_c,0);
    switch(num_c)
      {
        case 0:
          return;
        case 1:
          sprintf(s,"/u/ebcsav/bin/change_fix %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 2:
          sprintf(s,"/u/ebcsav/bin/change_dem %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 3:
          sprintf(s,"/u/ebcsav/bin/change_dat %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 4:
          break;
        case 5:
          break;
        case 6:
          sprintf(s,"/u/ebcsav/bin/change_lar %c%c sys%c%c",
            op_num/10+48,(op_num%10)+48,(month%10)+97,(day%10)+97);
          system(s);
          break;
        case 7:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -