zoukankan      html  css  js  c++  java
  • WorkSpace

      1 2018.9.26
      2 --往GridControl中添加绑定数据
      3  // 房间费用
      4            DataTable dtRoomInfo = new DataTable();
      5            dtRoomInfo.Columns.Add("v_name", Type.GetType("System.String"));
      6            dtRoomInfo.Columns.Add("t_kt_time", Type.GetType("System.String"));
      7            dtRoomInfo.Columns.Add("v_ktsc", Type.GetType("System.String"));
      8            dtRoomInfo.Columns.Add("v_jfgz_name", Type.GetType("System.String"));
      9            dtRoomInfo.Columns.Add("f_room_money", Type.GetType("System.String"));
     10 
     11            DataRow rowRoomInfo = dtRoomInfo.NewRow();
     12            rowRoomInfo["v_name"] = ddModel.v_czzl_name;
     13            rowRoomInfo["t_kt_time"] = ddModel.t_kaitai_time.ToString("yyyy-MM-dd HH:mm");
     14            decimal hour = decimal.Parse((ddModel.i_jfsc * 1.0 / (60 * 60)).ToString());
     15            rowRoomInfo["v_ktsc"] = ((int)hour).ToString() + "小时" + ((hour - (int)hour) * 60).ToString("0") + "分钟";
     16            rowRoomInfo["v_jfgz_name"] = ddModel.v_jfgz_name;
     17            rowRoomInfo["f_room_money"] = ddModel.f_room_money.ToString();
     18            dtRoomInfo.Rows.Add(rowRoomInfo);
     19            this.gridControlRoomInfo.DataSource = dtRoomInfo;
     20 
     21            //预付款           
     22            DataTable dtYFMoney = new DataTable();
     23            dtYFMoney.Columns.Add("v_fkfs", Type.GetType("System.String"));
     24            dtYFMoney.Columns.Add("t_time", Type.GetType("System.String"));
     25            dtYFMoney.Columns.Add("f_yf_money", Type.GetType("System.String"));
     26            dtYFMoney.Columns.Add("v_operation_name", Type.GetType("System.String"));
     27            dtYFMoney.Columns.Add("v_mark", Type.GetType("System.String"));
     28            DataRow rowYFMoney = dtYFMoney.NewRow();
     29             //支付类型
     30                 switch (ddModel.i_yj_payment_type)
     31                 {
     32                     case 0:
     33                         rowYFMoney["v_fkfs"] = "现金";
     34                         break;
     35                     case 1:
     36                         rowYFMoney["v_fkfs"] = "银行卡";
     37                         break;
     38                     case 2:
     39                         rowYFMoney["v_fkfs"] = "微信";
     40                         break;
     41                     case 3:
     42                         rowYFMoney["v_fkfs"] = "支付宝";
     43                         break;
     44                     default:
     45                         break;
     46                 }
     47                 rowYFMoney["t_time"] = ddModel.t_kaitai_time.ToString("yyyy-MM-dd HH:mm");
     48                 rowYFMoney["f_yf_money"] = ddModel.f_yajin_money.ToString();
     49                 rowYFMoney["v_operation_name"] =ddModel.v_operator_name;
     50                 rowYFMoney["v_mark"] =ddModel.v_mark;
     51                 dtYFMoney.Rows.Add(rowYFMoney);
     52                 this.gridControlYFMoney.DataSource = dtYFMoney;
     53 ------------------------------------------------------------------------------------------------------------
     54 2018.10.15:周一
     55 
     56 -- 返回前5个数据 
     57 SELECT TOP 5 * 
     58 FROM Student;  
     59 
     60 -- 返回前50%的数据 
     61 SELECT TOP 50 PERCENT * 
     62 FROM Student;  
     63 
     64 -- 以"C""P"开头 
     65 SELECT *  
     66 FROM Student
     67  WHERE Subject LIKE '[CP]%';  
     68  
     69 -- 不以"C""P"开头 
     70 SELECT *  
     71 FROM Student 
     72 -- WHERE Subject LIKE '[^CP]%'; 
     73 -- WHERE Subject LIKE '[!CP]%'; //不行
     74 WHERE Subject NOT LIKE '[CP]%';  
     75 
     76 -- 以"A-D"开头 
     77 SELECT * 
     78 FROM Student 
     79 WHERE Subject LIKE '[A-D]%'; 
     80 
     81 --选择科目是java和c#的所有人 
     82  SELECT * 
     83  FROM Student 
     84  WHERE Subject IN ('Java','C#'); 
     85  -- WHERE Subject NOT IN ('Java','C#');  
     86  
     87  --选择范围之间 
     88  SELECT * 
     89  FROM Student 
     90  WHERE StuAge BETWEEN 22 AND 24; 
     91  -- WHERE StuAge NOT BETWEEN 22 AND 24;  
     92   
     93 SELECT * 
     94 FROM Student 
     95 WHERE (StuAge BETWEEN 22 AND 24) AND Subject NOT IN('Java');  
     96  
     97 SELECT *
     98 FROM Student 
     99 WHERE StuName BETWEEN '曹操' AND '关羽' 
    100 ORDER BY StuName;  
    101 
    102 --若有日期的话 
    103 --SELECT * FROM Student WHERE Date BETWEEN #07/04/1996# AND #07/09/1996#;
    104 
    105 -- 连接
    106 --107 SELECT *
    108 FROM Student INNER JOIN UserLogin
    109 ON Student.StuName=UserLogin.UserName;
    110 -- 左外
    111 SELECT *
    112 FROM Student LEFT JOIN UserLogin
    113 ON Student.StuName=UserLogin.UserName;
    114 -- 右外
    115 SELECT *
    116 FROM Student RIGHT JOIN UserLogin
    117 ON Student.StuName=UserLogin.UserName;
    118 -- 自然
    119 SELECT *
    120 FROM Student FULL JOIN UserLogin
    121 ON Student.StuName=UserLogin.UserName;
    122 
    123 -- 自连接
    124 SELECT S.StuName AS NAME1,U.UserName AS NAME2
    125 FROM Student S,UserLogin U
    126 WHERE S.ID =U.ID;
    127 
    128 --组合并去重复
    129 SELECT StuName AS NAME
    130 FROM Student
    131 UNION
    132 SELECT UserName
    133 FROM UserLogin
    134 ORDER BY StuName;
    135 
    136 --组合但未去重复
    137 SELECT StuName AS NAME
    138 FROM Student
    139 UNION ALL
    140 SELECT UserName
    141 FROM UserLogin
    142 ORDER BY StuName;
    143 
    144 --复制表中的数据到另一个新建表
    145 SELECT * 
    146 INTO Student1015
    147 FROM Student;
    148 
    149 -- 复制到另一个数据库//貌似不可行
    150 SELECT * 
    151 INTO Student181015 IN 'Nwind.mdb'
    152 FROM Student;
    153 
    154 --只复制一些列到新表
    155 SELECT StuName,StuAge 
    156 INTO Student1015_1
    157 FROM Student;
    158 
    159 --复制多个表中信息插入新表
    160 SELECT UserLogin.ID,Student.StuName,Student.StuAge 
    161 INTO Student1015_2
    162 FROM Student INNER JOIN  UserLogin
    163 ON Student.StuName=UserLogin.UserName
    164 ORDER BY UserLogin.ID;
    165 
    166 --建一个空表,查询返回时无返回值
    167 SELECT *
    168 INTO newtable
    169 FROM Student
    170 WHERE 1=0;
    171 
    172 --把指定列插入另一个表的指定列
    173 INSERT INTO Student1015_2(ID,StuName,StuAge)
    174 SELECT TOP 3 Student.ID,Student.Subject,Student.StuAge
    175 FROM Student
    176 WHERE Student.Subject='c#';
    177 
    178 --删除表
    179 DROP TABLE Student1015_2;
    180 --只删除表中数据
    181 TRUNCATE TABLE Student1015_2;
    182 
    183 --添加列
    184 ALTER TABLE Student1015_1 
    185 ADD STU15 DATE;
    186 --删除列
    187 ALTER TABLE Student1015_1
    188 DROP COLUMN STU15;
    189 --更改列
    190 ALTER TABLE Student1015_1
    191 ALTER COLUMN STU15 DATETIME;
    192 
    193 --创建视图
    194 GO
    195 CREATE VIEW [MYSTUDENT] AS
    196 SELECT ID,StuName
    197 FROM Student1015
    198 WHERE StuAge=24;
    199 GO
    200 
    201 GO
    202 CREATE VIEW [DYMYSTUDENT] AS
    203 SELECT ID,StuName
    204 FROM Student1015
    205 WHERE StuAge>(SELECT AVG(StuAge) FROM Student1015);
    206 GO
    207 --查询视图
    208 GO
    209 SELECT *
    210 FROM [MYSTUDENT]
    211 GO
    212 --更新视图//貌似不行
    213 GO
    214 CREATE OR REPLACE VIEW [MYSTUDENT] AS
    215 SELECT ID,StuName
    216 FROM Student1015
    217 WHERE StuAge=23;
    218 GO
    219 --删除视图
    220 DROP VIEW [MYSTUDENT];
    221 
    222 --查询时间
    223 SELECT *
    224 FROM Student1015_1
    225 WHERE STU15='2018-10-15';
    226 ----------------------------------------------------------------------------------------------------------------
    227 2018.10.16:周二
    228 --进阶
    229 
    230 --别名
    231 SELECT StuName,StuNum+','+StuClass+','+StuGender+','+StuPhone AS 信息
    232 FROM Student;
    233 
    234 --删除主键约束
    235 ALTER TABLE Student DROP CONSTRAINT PK_Student;
    236 
    237 --创建表并添加唯一性约束
    238 CREATE TABLE Persons(
    239 P_Id int NOT NULL,
    240 LastName varchar(255) NOT NULL,
    241 FirstName varchar(255),
    242 Address varchar(255),
    243 City varchar(255),
    244 CONSTRAINT uc_PersonID UNIQUE (P_Id,LastName)
    245 );
    246 --如果表已被创建添加唯一性约束
    247 ALTER TABLE Student
    248 ADD UNIQUE (ID);
    249 --如果需要命名约束
    250 ALTER TABLE Student
    251 ADD CONSTRAINT uc_Student UNIQUE (ID,StuName)
    252 --删除这个约束
    253 ALTER TABLE Student
    254 DROP CONSTRAINT uc_Student;
    255 
    256 --主键约束
    257 CREATE TABLE Person(
    258 P_Id int NOT NULL,
    259 LastName varchar(255) NOT NULL,
    260 FirstName varchar(255),
    261 Address varchar(255),
    262 City varchar(255),
    263 CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)
    264 );
    265 --在上面的实例中,只有一个主键 PRIMARY KEY(pk_PersonID)。
    266 --然而,pk_PersonID 的值是由两个列(P_Id 和 LastName)组成的。
    267 --如果表已创建
    268 ALTER TABLE Person
    269 ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName);
    270 --删除约束
    271 ALTER TABLE Person
    272 DROP CONSTRAINT pk_PersonID;
    273 
    274 --外键约束
    275 CREATE TABLE Orders(
    276 O_Id int NOT NULL PRIMARY KEY,
    277 OrderNo int NOT NULL,
    278 P_Id int FOREIGN KEY REFERENCES Person(P_Id)
    279 );
    280 
    281 --如需命名 FOREIGN KEY 约束,并定义多个列的 FOREIGN KEY 约束
    282 CREATE TABLE Orders1(
    283 O_Id int NOT NULL,
    284 OrderNo int NOT NULL,
    285 P_Id int,
    286 PRIMARY KEY (O_Id),
    287 CONSTRAINT fk_PerOrders FOREIGN KEY (P_Id)
    288 REFERENCES Person(P_Id)
    289 );
    290 
    291 -- 当表已被创建时
    292 ALTER TABLE Orders
    293 ADD FOREIGN KEY (P_Id)
    294 REFERENCES Persons(P_Id)
    295 -- 如需命名 FOREIGN KEY 约束,并定义多个列的 FOREIGN KEY 约束
    296 ALTER TABLE Orders
    297 ADD CONSTRAINT fk_PerOrders
    298 FOREIGN KEY (P_Id)
    299 REFERENCES Persons(P_Id)
    300 
    301 -- 删除约束
    302 ALTER TABLE Orders
    303 DROP CONSTRAINT fk_PerOrders
    304 
    305 -- 默认约束
    306 
    307 -- 下面的 SQL 在表创建时在 "City" 列上创建 DEFAULT 约束:
    308 CREATE TABLE Persons1016_1(
    309 P_Id int NOT NULL,
    310 LastName varchar(255) NOT NULL,
    311 FirstName varchar(255),
    312 Address varchar(255),
    313 City varchar(255) DEFAULT 'Sandnes'
    314 )
    315 -- 通过使用类似 GETDATE() 这样的函数,DEFAULT 约束也可以用于插入系统值:
    316 CREATE TABLE Orders1016_2(
    317 O_Id int NOT NULL,
    318 OrderNo int NOT NULL,
    319 P_Id int,
    320 OrderDate date DEFAULT GETDATE()
    321 )
    322 
    323 --当表已被创建时,如需在 "City" 列创建 DEFAULT 约束
    324 ALTER TABLE Persons 
    325 ADD CONSTRAINT DF_Persons_City DEFAULT('SANDNES') FOR City
    326 --Persons 为表名
    327 --City 为列名
    328 --DF_Persons_City 为我们创建的默认约束的名称 约束名称一般为:约束类型简称_表名_列名
    329 
    330 --删除
    331 ALTER TABLE Persons1016_1
    332 ALTER COLUMN City DROP DEFAULT;
    333 
    334 --having
    335 SELECT ID,StuName,StuClass,StuPhone,StuAge,SUM(ID+StuAge) AS HE
    336 FROM Student
    337 GROUP BY ID ,StuName,StuClass,StuPhone,StuAge
    338 HAVING StuAge>22;
    339
    2018.10.23-24:周二 周三
    // 复制设置
            private void tzxButtonExCopy_Click(object sender, EventArgs e)
            {
                if (this.currentSelectedCzzlModel==null)
                {
                    MessageBoxFunction.showInfoMessageBox("请选择正确的餐桌进行复制!");
                    return;
                }
                // 弹出选择桌台页面
                SelectTableListForm formSelectTableList = new SelectTableListForm();
                formSelectTableList.ShowDialog();
                //获取到所选择的桌子
                selectCzzlList=formSelectTableList.SelectedTableInfoList;
                //MessageBox.Show(selectCzzlList.Count.ToString());
                if (formSelectTableList.DialogResult != DialogResult.OK)
                {
                    return;
                }
                if (selectCzzlList == null || selectCzzlList.Count == 0)
                {
                    return;
                }
                //把设置复制到所选择的餐桌
                foreach (cy_jczl_czzl_lb item in selectCzzlList)
                {
                    if (this.currentSelectedCzzlModel.pk == item.pk)
                    {
                        continue;
                    }
                    //对某些餐桌上已有设置的菜品进行清空
                    List<cy_jczl_czzl_ktsp> deleteKtspList=TableProfileManager.Instance.getKtspList(item.v_no);
                    foreach (cy_jczl_czzl_ktsp deleteKtspModel in deleteKtspList)
                    {
                        TableProfileManager.Instance.ktspDelete(deleteKtspModel.pk);
                    }
                    //餐桌资料的一些设置进行复制
                    item.i_cwf_type= this.currentSelectedCzzlModel.i_cwf_type;
                    if (item.i_cwf_type == 0)
                    {
                        item.f_cwf_cz_money = this.currentSelectedCzzlModel.f_cwf_cz_money;
                    }
                    else if (item.i_cwf_type == 1)
                    {
                        item.f_cwf_cz_money = this.currentSelectedCzzlModel.f_cwf_cz_money;
                        item.f_cwf_people_money = 0;
                    }
                    else if (item.i_cwf_type == 2)
                    {
                        item.f_cwf_people_money = this.currentSelectedCzzlModel.f_cwf_people_money;
                        item.f_cwf_cz_money = 0;
                    }
                    else
                    {
                        return;
                    }
                    item.i_ktcd = this.currentSelectedCzzlModel.i_ktcd; 
                    item.i_ktsp = this.currentSelectedCzzlModel.i_ktsp;
                    TableProfileManager.Instance.CzzlUpdate(item);
                    //餐桌所选的开台菜品进行复制
                    List<cy_jczl_czzl_ktsp> currentKtspList = TableProfileManager.Instance.getKtspList(this.currentSelectedCzzlModel.v_no);
                    if (currentKtspList == null || currentKtspList.Count == 0)
                    {
                        return;
                    }
                    foreach (cy_jczl_czzl_ktsp currentKtspModel in currentKtspList)
                    {
                        cy_jczl_czzl_ktsp copyKtspModel = new cy_jczl_czzl_ktsp();
                        copyKtspModel.f_amount = currentKtspModel.f_amount;
                        copyKtspModel.f_price = currentKtspModel.f_price;
                        copyKtspModel.f_total_money = currentKtspModel.f_total_money;
                        copyKtspModel.i_dalei_pk = currentKtspModel.i_dalei_pk;
                        copyKtspModel.i_czzl_pk = item.pk;
                        copyKtspModel.i_delete = currentKtspModel.i_delete;
                        copyKtspModel.i_goods_pk = currentKtspModel.i_goods_pk;
                        copyKtspModel.i_status = currentKtspModel.i_status;
                        copyKtspModel.i_operator_pk = item.i_operator_pk;
                        copyKtspModel.i_xiaolei_pk = currentKtspModel.i_xiaolei_pk;
                        copyKtspModel.t_create_time = item.t_create_time;
                        copyKtspModel.v_czzl_no = item.v_no;
                        copyKtspModel.v_dalei_name = currentKtspModel.v_dalei_name;
                        copyKtspModel.v_danwei_name = currentKtspModel.v_danwei_name;
                        copyKtspModel.v_goods_name = currentKtspModel.v_goods_name;
                        copyKtspModel.v_goods_no = currentKtspModel.v_goods_no;
                        copyKtspModel.v_mark = currentKtspModel.v_mark;
                        copyKtspModel.v_specs = currentKtspModel.v_specs;
                        copyKtspModel.v_xiaolei_name = currentKtspModel.v_xiaolei_name;
    
                        TableProfileManager.Instance.ktspAdd(copyKtspModel);
                    }   
                }
                MessageBoxFunction.showInfoMessageBox("批量添加成功!");
                base.Close();
                return;
                
            }
      1 2018.10.27 29-30:周二
      2 1.设置
      3  public partial class CustomShortcutKeyForm : Form
      4     {
      5         // 键入的值
      6         private string strKey = null;
      7         public CustomShortcutKeyForm()
      8         {
      9             InitializeComponent();
     10         }
     11         private void CustomShortcutKeyForm_Load(object sender, EventArgs e)
     12         {
     13             //加载列表
     14             this.loadCustomShortcutKey();
     15         }
     16 
     17         // 加载列表
     18         private void loadCustomShortcutKey()
     19         {
     20             this.dataGridViewShortcutKey.Rows.Clear();
     21 
     22             List<cy_kjjsz> kjjszList = ShortCutKeyManager.Instance.getAllKjjszModelList();
     23             if (kjjszList == null || kjjszList.Count == 0)
     24             {
     25                 return;
     26             }
     27 
     28             int rowIndex = 0;
     29             foreach (cy_kjjsz model in kjjszList)
     30             {
     31                 rowIndex = this.dataGridViewShortcutKey.Rows.Add();
     32 
     33                 this.dataGridViewShortcutKey.Rows[rowIndex].Cells["index"].Value = string.Format("{0}", rowIndex + 1);
     34                 this.dataGridViewShortcutKey.Rows[rowIndex].Cells["functionName"].Value = string.Format("{0:D2}", model.v_name);
     35                 this.dataGridViewShortcutKey.Rows[rowIndex].Cells["keys"].Value = model.v_kjj;
     36                 this.dataGridViewShortcutKey.Rows[rowIndex].Cells["gnmk"].Value = model.v_gnmk_no;
     37             }
     38 
     39             //if (this.currentSelectedIndex < this.dataGridViewShortcutKey.Rows.Count)
     40             //{
     41             //    this.dataGridViewShortcutKey.CurrentCell = this.dataGridViewShortcutKey.Rows[this.currentSelectedIndex].Cells[0];
     42             //}
     43         }
     44          
     45         // 保存
     46         private void tzxRoundedButtonOK_Click(object sender, EventArgs e)
     47         {
     48             int updataNumber=0;
     49             ArrayList keysArrayList =new ArrayList(); 
     50             foreach (DataGridViewRow dr in this.dataGridViewShortcutKey.Rows)
     51             {                
     52                 //修改的快捷键更新数据库
     53                 cy_kjjsz keysModel = ShortCutKeyManager.Instance.getkjjszModelByGnmkNo(dr.Cells["gnmk"].Value.ToString());
     54                 if(keysModel==null)
     55                 {
     56                     return;
     57                 }
     58                 if (keysModel.v_kjj != dr.Cells["keys"].Value.ToString())
     59                 {
     60                     keysModel.v_kjj = dr.Cells["keys"].Value.ToString();
     61                     bool flag = ShortCutKeyManager.Instance.kjjszUpdate(keysModel);
     62                     if(flag==true)
     63                     {
     64                         updataNumber++;
     65                     }
     66                 }    
     67             }
     68             //Program.m_mainFormChineseFoodOnPC.loadToolStripShortCutKeys();
     69             if (updataNumber > 0)
     70             {
     71                 MessageBoxFunction.showInfoMessageBox("快捷键已修改,重启后方可生效!");
     72             }
     73 
     74         }
     75 
     76         // 重置初始值
     77         private void tzxRoundedRecover_Click(object sender, EventArgs e)
     78         {
     79             // 重置数据
     80             this.kjjStartData();
     81         }
     82         // 初始化数据
     83         private void kjjStartData()
     84         {
     85             //删除原来的设置
     86             List<cy_kjjsz> kjjszModelList=ShortCutKeyManager.Instance.getAllKjjszModelList();
     87             //如果不为空,则删除原来的设置
     88             if (kjjszModelList != null)
     89             {
     90                 foreach (cy_kjjsz kjjszModel in kjjszModelList)
     91                 {
     92                     ShortCutKeyManager.Instance.kjjszDelete(kjjszModel.pk);
     93                 }
     94             }
     95             // 如果为空,则将字典中的数据加入
     96             Dictionary<string, string> dicAllToolStripShortCutKeys = ShortCutKeysToolStripManager.getAllToolStripShortCutKeysDictionary();
     97             if (dicAllToolStripShortCutKeys == null || dicAllToolStripShortCutKeys.Count == 0)
     98             {
     99                 return;
    100             }
    101             cy_kjjsz kjjszMode = null;
    102             foreach (string strDicShortCutKeys in dicAllToolStripShortCutKeys.Keys)
    103             {
    104                 kjjszMode = new cy_kjjsz();
    105                 kjjszMode.v_gnmk_no = strDicShortCutKeys;
    106                 kjjszMode.i_operator_pk=LoginManager.Instance.getLoginerEmployeePK();
    107                 kjjszMode.v_operator_name = LoginManager.Instance.getLoginerEmployeeName();
    108                 kjjszMode.v_mac_address=GetSystemInfo.GetMacAddress();
    109                 kjjszMode.v_kjj = ShortCutKeysToolStripManager.getToolStripShortCutKeysByToolStripButtonName(strDicShortCutKeys);
    110                 switch(strDicShortCutKeys)
    111                 {
    112                     case "2-1217,toolStripButtonStartTable":
    113                         kjjszMode.v_name="开台";
    114                         break;
    115                     case "2-1218,toolStripButtonChangeTable":
    116                         kjjszMode.v_name="转台";
    117                         break;
    118                     case "2-1216,toolStripButtonCancelTable":
    119                         kjjszMode.v_name="消台";
    120                         break;
    121                     case "2-1215,ToolStripMenuItemSetUpTable":
    122                         kjjszMode.v_name="搭台";
    123                         break;
    124                     case "2-1214,ToolStripMenuItemCutTable":
    125                         kjjszMode.v_name="拆台";
    126                         break;
    127                     case "2-1213,ToolStripMenuItemCombineTable":
    128                         kjjszMode.v_name="并台";
    129                         break;
    130                     case "2-1212,ToolStripMenuItemAddTable":
    131                         kjjszMode.v_name="加台";
    132                         break;
    133                     case "2-1211,ToolStripMenuItemModifyTableInfo":
    134                         kjjszMode.v_name="修改餐桌信息";
    135                         break;
    136                     case "2-1210,toolStripButtonOrderDishes":
    137                         kjjszMode.v_name="点菜";
    138                         break;
    139                     case "2-1209,toolStripButtonChangeDishes":
    140                         kjjszMode.v_name="换菜";
    141                         break;
    142                     case "2-1208,ToolStripMenuItemPushFood":
    143                         kjjszMode.v_name="催菜";
    144                         break;
    145                     case "2-1201,ToolStripMenuItemReturnDishes":
    146                         kjjszMode.v_name="退菜";
    147                         break;
    148                     case "2-1207,ToolStripMenuItemSuspend":
    149                         kjjszMode.v_name="挂起";
    150                         break;
    151                     case "2-1206,ToolStripMenuItemRouse":
    152                         kjjszMode.v_name="叫起";
    153                         break;
    154                     case "2-1601,toolStripButtonMemberSendCard":
    155                         kjjszMode.v_name="发卡";
    156                         break;
    157                     case "2-1602,toolStripButtonMemberCharge":
    158                         kjjszMode.v_name="充值";
    159                         break;
    160                     case "2-1701,toolStripButtonPrintTotalBills":
    161                         kjjszMode.v_name="打印总单";
    162                         break;
    163                     case "2-1702,toolStripButtonPreprintBills":
    164                         kjjszMode.v_name="预打账单";
    165                         break;
    166                     case "2-1703,toolStripButtonPrintKitchenOrder":
    167                         kjjszMode.v_name="补打厨打单";
    168                         break;
    169                     case "2-1400,toolStripButtonCheckOut":
    170                         kjjszMode.v_name="结账";
    171                         break;
    172                     case "2-1407,toolStripButtonAntiSettlement":
    173                         kjjszMode.v_name="反结账";
    174                         break;
    175                     case "2-1300,toolStripButtonShiftExchange":
    176                         kjjszMode.v_name="交班";
    177                         break;
    178                     case "2-1101,toolStripButtonLogoutSystem":
    179                         kjjszMode.v_name="注销";
    180                         break;
    181                     case "2-1102,toolStripButtonCloseSystem":
    182                         kjjszMode.v_name="退出系统";
    183                         break;
    184                     default:
    185                         break; 
    186                 }
    187                 ShortCutKeyManager.Instance.kjjszAdd(kjjszMode);
    188             }
    189             MessageBoxFunction.showInfoMessageBox("快捷键已重置,重启后方可生效!");         
    190         }
    191 
    192         //单元格编辑停止时判断输入的值
    193         private void dataGridViewShortcutKey_CellEndEdit(object sender, DataGridViewCellEventArgs e)
    194         {
    195             if (strKey==null)
    196             {
    197                 strKey = "";
    198             }
    199             this.dataGridViewShortcutKey.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = strKey;
    200             ////是否输入汉字
    201             //if (this.dataGridViewShortcutKey.CurrentCell.ColumnIndex == 2)
    202             //{
    203             //    string str = this.dataGridViewShortcutKey.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
    204             //    if (Regex.IsMatch(str, @"[u4E00-u9FA5]+$"))
    205             //    {
    206             //        Modules.MessageBoxFunction.showInfoMessageBox("不能输入汉字");
    207             //        this.dataGridViewShortcutKey.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "";
    208             //        strKey = null;
    209             //        return;
    210             //    }       
    211             //}
    212 
    213             //输入是否重复
    214             ArrayList keysArrayList =new ArrayList(); 
    215             foreach (DataGridViewRow dr in this.dataGridViewShortcutKey.Rows)
    216             {                
    217                 //所输入的快捷键是否重复 
    218                 for (int i = 0; i < keysArrayList.Count; i++)
    219                 {
    220                     if (dr.Cells["keys"].Value.ToString() == keysArrayList[i].ToString() && dr.Cells["keys"].Value.ToString() != "")
    221                     {
    222                         MessageBoxFunction.showInfoMessageBox("快捷键不能设置重复!请修改。");
    223                         this.dataGridViewShortcutKey.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "";
    224                         strKey = null;
    225                         return;
    226                     }          
    227                 }
    228                 keysArrayList.Add(dr.Cells["keys"].Value.ToString());
    229                 strKey = null;
    230             }
    231         }
    232 
    233         //键盘键入事件
    234         private void CustomShortcutKeyForm_KeyDown(object sender, KeyEventArgs e)
    235         {
    236             string s = e.KeyValue.ToString();
    237             if (e.KeyValue >= 65 && e.KeyValue <= 90 || e.KeyValue >= 112 && e.KeyValue <= 135)
    238             {
    239                 strKey = Enum.GetName(typeof(Keys), e.KeyValue);
    240             }
    241             else
    242             {
    243                 switch (e.KeyCode)
    244                 {
    245                     case Keys.Decimal:
    246                         strKey = ".";
    247                         break;
    248                     case Keys.Subtract:
    249                         strKey = "-";
    250                         break;
    251                     case Keys.Add:
    252                         strKey = "+";
    253                         break;
    254                     case Keys.OemBackslash:  //斜杠
    255                         strKey = "/";
    256                         break;
    257                     case Keys.Multiply:  //乘号
    258                         strKey = "*";
    259                         break;
    260                     case Keys.Divide:  //除号
    261                         strKey = "/";
    262                         break;
    263                     case Keys.OemOpenBrackets://左括号
    264                         strKey = "[";
    265                         break;
    266                     case Keys.Oem6: //右括号
    267                         strKey = "]";
    268                         break;
    269                     case Keys.Oem1: //分号
    270                         strKey = ";";
    271                         break;
    272                     case Keys.Oem7: //引号
    273                         strKey = "'";
    274                         break;
    275                     case Keys.Oemcomma: //逗号
    276                         strKey = ",";
    277                         break;
    278                     case Keys.OemPeriod: //句号
    279                         strKey = ".";
    280                         break;
    281                     case Keys.Oem5: //反斜杠
    282                         strKey = "\";
    283                         break;
    284                     case Keys.Oemtilde: //波浪号
    285                         strKey = "`";
    286                         break;
    287                     default:
    288                         break;
    289                 }
    290             }
    291         }
    292 
    293         //编辑快捷键时切换为英文输入法
    294         private void dataGridViewShortcutKey_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
    295         {
    296             TextBox dg_innerTextBox;
    297             if (e.Control is TextBox && this.dataGridViewShortcutKey.CurrentCell.ColumnIndex == 2)
    298             {
    299                 dg_innerTextBox = e.Control as TextBox;
    300                 dg_innerTextBox.ImeMode = ImeMode.Close;
    301             }
    302         }
    303 
    304     }
    305 }
    306 2.主界面
    307        /// <summary>
    308         /// 处理所有工具栏按钮的快捷键响应事件
    309         /// </summary>
    310         /// <param name="e"></param>
    311         private void DealAllToolStripButtonKeysEvent(KeyEventArgs e)
    312         {
    313             string strKey = null;
    314             if (e.KeyValue>=65&&e.KeyValue<=90||e.KeyValue>=112&&e.KeyValue<=135)
    315             {
    316                 strKey=Enum.GetName(typeof(Keys), e.KeyValue);
    317             }
    318             else
    319             {
    320                 switch (e.KeyCode)
    321                 {
    322                     case Keys.Decimal:
    323                         strKey = ".";
    324                         break;
    325                     case Keys.Subtract:
    326                         strKey = "-";
    327                         break;
    328                     case Keys.Add:
    329                         strKey = "+";
    330                         break;
    331                     case Keys.OemBackslash:  //斜杠
    332                         strKey = "/";
    333                         break;
    334                     case Keys.Multiply:  //乘号
    335                         strKey = "*";
    336                         break;
    337                     case Keys.Divide:  //除号
    338                         strKey = "/";
    339                         break;
    340                     case Keys.OemOpenBrackets://左括号
    341                         strKey = "[";
    342                         break;
    343                     case Keys.Oem6: //右括号
    344                         strKey = "]";
    345                         break;
    346                     case Keys.Oem1: //分号
    347                         strKey = ";";
    348                         break;
    349                     case Keys.Oem7: //引号
    350                         strKey = "'";
    351                         break;
    352                     case Keys.Oemcomma: //逗号
    353                         strKey = ",";
    354                         break;
    355                     case Keys.OemPeriod: //句号
    356                         strKey = ".";
    357                         break;
    358                     case Keys.Oem5: //反斜杠
    359                         strKey = "\";
    360                         break;
    361                     case Keys.Oemtilde: //波浪号
    362                         strKey = "`";
    363                         break;
    364                     default:
    365                         break;
    366                 }
    367             }
    368             this.responseShortcutKey(strKey);
    369         }
    370 
    371         /// <summary>
    372         /// 响应自定义快捷键的方法
    373         /// </summary>
    374         private void responseShortcutKey(string strShortcutKey)
    375         {
    376             // 先判断按下的快捷键是不是设置好的快捷键
    377             if (!dictionaryKey.ContainsValue(strShortcutKey))
    378             {
    379                 return;
    380             }
    381             object control;
    382             ToolStripButton button; // 按钮
    383             ToolStripDropDownButton toolStripDropDown; // 二级菜单按钮
    384             ToolStripMenuItem toolStripItemCollection; // 二级菜单下的按钮
    385 
    386             for (int i = 0; i < toolStripShortcutButton.Items.Count; i++)
    387             {
    388                 control = toolStripShortcutButton.Items[i];
    389                 string strKey = null;
    390                 if (control is ToolStripButton)
    391                 {
    392                     button = (ToolStripButton)control;
    393                     // 判断是不是对应的按钮
    394                     strKey = string.Format("{0},{1}", (string)button.AccessibleName, (string)button.Name);
    395                     string getKeyStr = dictionaryKey[strKey];
    396                     if (getKeyStr == null)
    397                     {
    398                         return;
    399                     }
    400                     else if (strShortcutKey == getKeyStr)
    401                     {
    402                         button.PerformClick();
    403                         return;
    404                     }
    405 
    406                 }
    407                 // 如果是二级菜单,则去找二级菜单下的按钮
    408                 else if (control is ToolStripDropDownButton)
    409                 {
    410                     toolStripDropDown = (ToolStripDropDownButton)control;
    411                     for (int j = 0; j < toolStripDropDown.DropDownItems.Count; j++)
    412                     {
    413                         if (!(toolStripDropDown.DropDownItems[j] is ToolStripMenuItem))
    414                         {
    415                             continue;
    416                         }
    417                         toolStripItemCollection = (ToolStripMenuItem)toolStripDropDown.DropDownItems[j];
    418 
    419                         if (toolStripItemCollection == null)
    420                         {
    421                             continue;
    422                         }
    423                         // 判断是不是对应的按钮
    424                         strKey = string.Format("{0},{1}", (string)toolStripItemCollection.AccessibleName, (string)toolStripItemCollection.Name);
    425                         string getKeyStr = dictionaryKey[strKey]; ;
    426                         if (getKeyStr == null)
    427                         {
    428                             return;
    429                         }
    430                         if (strShortcutKey == getKeyStr)
    431                         {
    432                             toolStripItemCollection.PerformClick();
    433                             return;
    434                         }
    435                     }
    436                 }
    437             }
    438         }
    439         /// <summary>
    440         /// 加载主界面快捷键显示
    441         /// </summary>
    442         public void loadToolStripShortCutKeys()
    443         {
    444             List<cy_kjjsz> kjjszModelList = ShortCutKeyManager.Instance.getAllKjjszModelList();
    445             if (kjjszModelList == null || kjjszModelList.Count == 0)
    446             {
    447                 dictionaryKey = ShortCutKeysToolStripManager.getAllToolStripShortCutKeysDictionary();
    448                 //加载快捷键字典
    449                 this.loadShortCutKeysDic();
    450                 //写入数据库    
    451                 cy_kjjsz kjjszMode = null;
    452                 foreach (string strDicShortCutKeys in dictionaryKey.Keys)
    453                 {
    454                     kjjszMode = new cy_kjjsz();
    455                     kjjszMode.v_gnmk_no = strDicShortCutKeys;
    456                     kjjszMode.i_operator_pk = LoginManager.Instance.getLoginerEmployeePK();
    457                     kjjszMode.v_operator_name = LoginManager.Instance.getLoginerEmployeeName();
    458                     kjjszMode.v_mac_address = GetSystemInfo.GetMacAddress();
    459                     kjjszMode.v_kjj = ShortCutKeysToolStripManager.getToolStripShortCutKeysByToolStripButtonName(strDicShortCutKeys);
    460                     switch (strDicShortCutKeys)
    461                     {
    462                         case "2-1217,toolStripButtonStartTable":
    463                             kjjszMode.v_name = "开台";
    464                             break;
    465                         case "2-1218,toolStripButtonChangeTable":
    466                             kjjszMode.v_name = "转台";
    467                             break;
    468                         case "2-1216,toolStripButtonCancelTable":
    469                             kjjszMode.v_name = "消台";
    470                             break;
    471                         case "2-1215,ToolStripMenuItemSetUpTable":
    472                             kjjszMode.v_name = "搭台";
    473                             break;
    474                         case "2-1214,ToolStripMenuItemCutTable":
    475                             kjjszMode.v_name = "拆台";
    476                             break;
    477                         case "2-1213,ToolStripMenuItemCombineTable":
    478                             kjjszMode.v_name = "并台";
    479                             break;
    480                         case "2-1212,ToolStripMenuItemAddTable":
    481                             kjjszMode.v_name = "加台";
    482                             break;
    483                         case "2-1211,ToolStripMenuItemModifyTableInfo":
    484                             kjjszMode.v_name = "修改餐桌信息";
    485                             break;
    486                         case "2-1210,toolStripButtonOrderDishes":
    487                             kjjszMode.v_name = "点菜";
    488                             break;
    489                         case "2-1209,toolStripButtonChangeDishes":
    490                             kjjszMode.v_name = "换菜";
    491                             break;
    492                         case "2-1208,ToolStripMenuItemPushFood":
    493                             kjjszMode.v_name = "催菜";
    494                             break;
    495                         case "2-1201,ToolStripMenuItemReturnDishes":
    496                             kjjszMode.v_name = "退菜";
    497                             break;
    498                         case "2-1207,ToolStripMenuItemSuspend":
    499                             kjjszMode.v_name = "挂起";
    500                             break;
    501                         case "2-1206,ToolStripMenuItemRouse":
    502                             kjjszMode.v_name = "叫起";
    503                             break;
    504                         case "2-1601,toolStripButtonMemberSendCard":
    505                             kjjszMode.v_name = "发卡";
    506                             break;
    507                         case "2-1602,toolStripButtonMemberCharge":
    508                             kjjszMode.v_name = "充值";
    509                             break;
    510                         case "2-1701,toolStripButtonPrintTotalBills":
    511                             kjjszMode.v_name = "打印总单";
    512                             break;
    513                         case "2-1702,toolStripButtonPreprintBills":
    514                             kjjszMode.v_name = "预打账单";
    515                             break;
    516                         case "2-1703,toolStripButtonPrintKitchenOrder":
    517                             kjjszMode.v_name = "补打厨打单";
    518                             break;
    519                         case "2-1400,toolStripButtonCheckOut":
    520                             kjjszMode.v_name = "结账";
    521                             break;
    522                         case "2-1407,toolStripButtonAntiSettlement":
    523                             kjjszMode.v_name = "反结账";
    524                             break;
    525                         case "2-1300,toolStripButtonShiftExchange":
    526                             kjjszMode.v_name = "交班";
    527                             break;
    528                         case "2-1101,toolStripButtonLogoutSystem":
    529                             kjjszMode.v_name = "注销";
    530                             break;
    531                         case "2-1102,toolStripButtonCloseSystem":
    532                             kjjszMode.v_name = "退出系统";
    533                             break;
    534                         default:
    535                             break;
    536                     }
    537                     ShortCutKeyManager.Instance.kjjszAdd(kjjszMode);
    538                 }
    539             }
    540             else
    541             {
    542                 foreach (cy_kjjsz item in kjjszModelList)
    543                 {
    544                     dictionaryKey.Add(item.v_gnmk_no, item.v_kjj);
    545                 }
    546                 //加载快捷键字典
    547                 this.loadShortCutKeysDic();
    548             }
    549         }
    550 
    551         //加载快捷键字典
    552         private void loadShortCutKeysDic()
    553         {
    554             if (dictionaryKey == null || dictionaryKey.Count == 0)
    555             {
    556                 return;
    557             }
    558             object control;
    559             ToolStripButton button; // 按钮
    560             ToolStripDropDownButton toolStripDropDown; // 二级菜单按钮
    561             ToolStripMenuItem toolStripItemCollection; // 二级菜单下的按钮
    562             string[] key = new string[2];
    563             foreach (var item in dictionaryKey.Keys)
    564             {
    565                 key = item.Split(',');
    566                 if (key == null || key.Length < 1)
    567                 {
    568                     return;
    569                 }
    570                 for (int i = 0; i < toolStripShortcutButton.Items.Count; i++)
    571                 {
    572                     control = toolStripShortcutButton.Items[i];
    573                     //菜单按钮
    574                     if (control is ToolStripButton)
    575                     {
    576                         button = (ToolStripButton)control;
    577                         // 判断是不是对应的按钮
    578                         if ((string)button.Name == key[1])
    579                         {
    580                             if (dictionaryKey[item] == null || dictionaryKey[item] == "")
    581                             {
    582                                 continue;
    583                             }
    584                             button.Text += "(" + dictionaryKey[item] + ")";
    585                         }
    586                     }
    587                     // 如果是二级菜单,则去找二级菜单下的按钮
    588                     else if (control is ToolStripDropDownButton)
    589                     {
    590                         toolStripDropDown = (ToolStripDropDownButton)control;
    591                         for (int j = 0; j < toolStripDropDown.DropDownItems.Count; j++)
    592                         {
    593                             if (!(toolStripDropDown.DropDownItems[j] is ToolStripMenuItem))
    594                             {
    595                                 continue;
    596                             }
    597                             toolStripItemCollection = (ToolStripMenuItem)toolStripDropDown.DropDownItems[j];
    598 
    599                             if (toolStripItemCollection == null)
    600                             {
    601                                 continue;
    602                             }
    603                             // 判断是不是对应的按钮
    604                             if ((string)toolStripItemCollection.Name == key[1])
    605                             {
    606                                 if (dictionaryKey[item] == null || dictionaryKey[item] == "")
    607                                 {
    608                                     continue;
    609                                 }
    610                                 toolStripItemCollection.Text += "(" + dictionaryKey[item] + ")";
    611                             }
    612                         }
    613                     }
    614 
    615                 }
    616             }
    617             
    618         }
  • 相关阅读:
    [专项]tcp状态机,为什么3次握手(很好)(done)
    Win7系统如何创建计划任务的小技巧(图文)
    Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
    Java项目 使用MyEclipse打包生成jar文件方法
    excel插入柱形图和插入置信值
    关于Virtual Box虚拟机里的系统不能启动的解决方法
    html文件的中文乱码问题与在浏览器中的显示 .
    Windows的计划任务
    不能为虚拟电脑 Fedora1 打开一个新任务.
    bat 通过bat脚本来每隔一段时间运行jar包
  • 原文地址:https://www.cnblogs.com/nullcodeworld/p/9849066.html
Copyright © 2011-2022 走看看