//通过读数据库获取会员卡
        private bool get_member_by_db()
        {
            if (phone.Text != "")
                m_Member = dao.get_CardInfo("CI_Telephone='" + phone.Text + "'");
            //m_Member = db.CardInfo.FirstOrDefault(x => x.CI_Telephone == phone.Text);
            else if (name.Text != "")
            {
                var members = dao.get_CardInfos("CI_Name='" + name.Text + "'");
                //var members = db.CardInfo.Where(x => x.CI_Name == name.Text);
                if (members.Count() != 1)
                {
                    BathClass.printErrorMsg("名称不唯一或者不存在!");
                    return false;
                }
                m_Member = members.FirstOrDefault();
            }
            else if (old_id.Text != "")
                m_Member = dao.get_CardInfo("CI_CardNo='" + old_id.Text+"'");
                //m_Member = db.CardInfo.FirstOrDefault(x => x.CI_CardNo == old_id.Text);

            if (m_Member == null)
            {
                BathClass.printErrorMsg("该会员卡不在本店登记!");
                return false;
            }
            if (m_Member.state == null || m_Member.state == "在用")
                return true;
            else
            {
                BathClass.printErrorMsg("该会员卡状态为" + m_Member.state + ",不能补卡!");
                return false;
            }
        }
 //会员打折
 private void btnDiscount_Click(object sender, EventArgs e)
 {
     //BathClass.sendMessageToCamera(db, m_Seats[0].systemId);
     var id = string.Join("|", m_Seats.Select(x => x.systemId).ToArray());
     MemberPromotionForm memberPromotionForm = new MemberPromotionForm(m_Seats, id);
     memberPromotionForm.ShowDialog();
     m_Member = memberPromotionForm.m_member;
     this.Close();
 }
 //构造函数
 public MemberFingerForm(CCardInfo member)
 {
     InitializeComponent();
     try
     {
         dao = new DAO(LogIn.connectionString);
         m_member = member;
     }
     catch (System.Exception e)
     {
         BathClass.printErrorMsg(e.Message);
     }
 }
Example #4
0
        //构造函数
        public PayForm(List<CSeat> _seats, Dictionary<Int64, bool> orders, 
            CCardInfo member, double discount_money, double money)
        {
            //seat_keeps = seats;
            m_orders = orders;
            m_wipe_limit = MConvert<int>.ToTypeOrDefault(LogIn.options.抹零限制, 0);

            m_Seats = _seats;
            //m_Seats.AddRange(db.Seat.Where(x => seats.Keys.Contains(x.text)));
            m_promotion_Member = member;
            m_discount_money = discount_money;
            m_money = money;
            InitializeComponent();
        }
        //会员打折
        private void memberTool_Click(object sender, EventArgs e)
        {
            double money_pre = Convert.ToDouble(moneyPayable.Text);
            MemberPromotionOptionForm memberPromotionOptionForm = new MemberPromotionOptionForm(m_Seats);
            if (memberPromotionOptionForm.ShowDialog() != DialogResult.OK)
                return;

            //var dc = new BathDBDataContext(LogIn.connectionString);
            m_Member = memberPromotionOptionForm.m_Member;

            dgvExpense_show();
            double money = Convert.ToDouble(moneyPayable.Text);
            moneyPayable.Text = money.ToString();
            discount_money = money_pre - money;
        }
        //获取会员卡
        private void get_member()
        {
            string card_data = "";
            string company_code = LogIn.options.companyCode;

            bool st = false;
            if (cardType == "SLE4442")
                st = ICCard.read_data_4442(company_code, ref card_data);
            else if (cardType == "M1")
                st = ICCard.read_data_M1(company_code, ref card_data);
            else if (cardType == "CT")
            {
                card_data = id.Text;
                st = true;
            }
            if (!st)
                return;

            //card_data = "103051";
            id.Text = card_data;
            m_member = dao.get_CardInfo("CI_CardNo='" + id.Text + "'");
            //m_member = db.CardInfo.FirstOrDefault(x => x.CI_CardNo == id.Text);
            if (m_member == null)
            {
                BathClass.printErrorMsg("非本公司卡!");
                return;
            }

            var t = dao.get_MemberType("id=" + m_member.CI_CardTypeNo);
            //var t = db.MemberType.FirstOrDefault(x => x.id == m_member.CI_CardTypeNo);
            if (t != null)
                type.Text = t.name;

            balance.Text = dao.get_member_balance(id.Text).ToString();
            //balance.Text = BathClass.get_member_balance(db, card_data).ToString();

            if (m_member.state == "入库")
                btnOk.Text = "激活";

            if (m_member.state == "在用")
                btnOk.Text = "退卡";
        }
Example #7
0
        //获取会员卡
        private void get_member()
        {
            string card_data = "";
            string company_code = LogIn.options.companyCode;

            bool st = false;
            //var cardType = db.MemberSetting.FirstOrDefault().cardType;
            if (cardType == "SLE4442")
                st = ICCard.read_data_4442(company_code, ref card_data);
            else if (cardType == "M1")
                st = ICCard.read_data_M1(company_code, ref card_data);
            else if (cardType == "CT")
            {
                card_data = id.Text;
                st = true;
            }
            if (!st)
                return;

            //card_data = "0000117";
            id.Text = card_data;
            m_member = dao.get_CardInfo("CI_CardNo='" + id.Text + "'");
            //m_member = db.CardInfo.FirstOrDefault(x => x.CI_CardNo == id.Text);
            if (m_member == null)
            {
                BathClass.printErrorMsg("非本公司卡!");
                return;
            }
            name.Text = m_member.CI_Name;
            var t = dao.get_MemberType("id=" + m_member.CI_CardTypeNo);
            //var t = db.MemberType.FirstOrDefault(x => x.id == m_member.CI_CardTypeNo);
            if (t != null)
                type.Text = t.name;

            var cc = dao.get_CardCharges("CC_CardNo='" + m_member.CI_CardNo + "'");
            //var cc = db.CardCharge.Where(x => x.CC_CardNo == m_member.CI_CardNo);
            int debit = MConvert<int>.ToTypeOrDefault(cc.Sum(x => x.CC_DebitSum), 0);
            int lend = MConvert<int>.ToTypeOrDefault(cc.Sum(x => x.CC_LenderSum), 0);
            balance.Text = (debit - lend).ToString();

            var c = MConvert<int>.ToTypeOrDefault(m_member.CI_CreditsUsed, 0);
            var cu = MConvert<int>.ToTypeOrDefault(MemberForm.memberSetting.money, 0);
            int cs = (int)(lend / cu - c);
            credits.Text = cs.ToString();
            btnOk.Text = "充值";
        }
Example #8
0
        //通过读卡获取会员卡
        private void get_member_by_card()
        {
            string card_data = "";
            string company_code = LogIn.options.companyCode;

            bool st = false;
            var cardType = MemberForm.memberSetting.cardType;
            if (cardType == "SLE4442")
                st = ICCard.read_data_4442(company_code, ref card_data);
            else if (cardType == "M1")
                st = ICCard.read_data_M1(company_code, ref card_data);

            if (!st)
                return;

            m_member = dao.get_CardInfo("CI_CardNo='" + card_data + "'");
            //m_member = db.CardInfo.FirstOrDefault(x => x.CI_CardNo == card_data);
            if (m_member == null)
                return;

            set_member();
        }
Example #9
0
 //读会员卡
 private void btnOk_Click(object sender, EventArgs e)
 {
     if (btnOk.Text == "读卡")
     {
         m_member = null;
         get_member();
         //if (m_member == null)
         //{
         //    BathClass.printErrorMsg("输入卡不存在");
         //}
     }
     else if (btnOk.Text == "重置")
     {
         reset_form();
     }
 }
Example #10
0
        //添加储值卡
        private void btnAdd_Click(object sender, EventArgs e)
        {
            double paid_money = get_paid_money();
            if (paid_money >= m_money)
            {
                BathClass.printErrorMsg("刷卡金额已经足够!");
                return;
            }

            if (id.Text != "")
            {
                m_member = dao.get_CardInfo("CI_CardNo='" + id.Text + "'");
            }
            else
            {
                string card_data = "";
                string company_code = LogIn.options.companyCode;

                bool st = false;
                var cardType = memberSetting.cardType;
                if (cardType == "SLE4442")
                    st = ICCard.read_data_4442(company_code, ref card_data);
                else if (cardType == "M1")
                    st = ICCard.read_data_M1(company_code, ref card_data);
                if (!st)
                    return;

                m_member = dao.get_CardInfo("CI_CardNo='" + card_data + "'");
            }

            if (m_member == null)
            {
                BathClass.printErrorMsg("非本公司卡!");
                return;
            }
            if (m_member.state == "挂失")
            {
                BathClass.printErrorMsg("卡已挂失,无法使用!");
                return;
            }
            if (m_member.state == "入库")
            {
                BathClass.printErrorMsg("卡已入库,但未激活,无法使用!");
                return;
            }
            if (m_member.state == "停用")
            {
                BathClass.printErrorMsg("卡已停用,无法使用!,新卡卡号为:" + m_member.CI_Special1 + ",补卡时间为:" +
                        m_member.CI_SpecialDate1.Value.ToString("yyyy-MM-dd HH:mm"));
                return;
            }

            string memberType = "";
            var t = dao.get_MemberType("id=" + m_member.CI_CardTypeNo);
            if (t != null)
                memberType = t.name;
            if (t != null && MConvert<bool>.ToTypeOrDefault(t.userOneTimeOneDay, false) &&
                    dao.exist_instance("CardCharge", "datediff(day,CC_InputDate,getdate())=0 and cc_itemExplain!='售卡收' and cc_cardno='" + m_member.CI_CardNo + "'"))
            {
                BathClass.printErrorMsg("此卡被限定一天只能使用一次,今天已经使用过!");
                return;
            }
            if (t != null && MConvert<bool>.ToTypeOrDefault(t.LimitedTimesPerMonth, false) &&
                    dao.get_memberCard_useTimes_this_month(m_member.CI_CardNo) >= t.TimesPerMonth)
            {
                BathClass.printErrorMsg("此卡被限定每月只能使用" + t.TimesPerMonth + "次,本月已达额度!");
                return;
            }
            if (m_memberList.Keys.Contains(m_member.CI_CardNo))
            {
                BathClass.printErrorMsg("已经添加卡号为" + m_member.CI_CardNo + "的会员卡,不能重复添加!");
                return;
            }

            if (m_use_finger_pwd)
            {
                var form = new MemberFingerForm(m_member);
                form.ShowDialog();

                if (!form.verified)
                {
                    BathClass.printErrorMsg("验证指纹失败!");
                    return;
                }
            }

            var cc = dao.get_CardCharges("CC_CardNo='" + m_member.CI_CardNo + "'");
            double debit = MConvert<int>.ToTypeOrDefault(cc.Sum(x => x.CC_DebitSum), 0);
            double lend = MConvert<int>.ToTypeOrDefault(cc.Sum(x => x.CC_LenderSum), 0);
            double balance = debit - lend;

            var c = MConvert<int>.ToTypeOrDefault(m_member.CI_CreditsUsed, 0);
            var cu = memberSetting.money.Value;
            int cs = (int)(lend / cu - c);

            double hasto_money = 0;
            if (balance <= m_money - paid_money)
                hasto_money = balance;
            else
                hasto_money = m_money - paid_money;

            m_memberList[m_member.CI_CardNo] = hasto_money;
            dgv.Rows.Add(m_member.CI_CardNo, m_member.CI_Name, m_member.CI_Telephone, memberType, balance, cs, hasto_money);

            id.Text = "";
        }
Example #11
0
        public List<CCardInfo> get_CardInfos(string state_str)
        {
            List<CCardInfo> cardInfos = new List<CCardInfo>();
            SqlConnection sqlCn = null;
            string cmd_str = "";

            try
            {
                sqlCn = new SqlConnection(_con_str);
                sqlCn.Open();

                cmd_str = "Select * from [CardInfo]";
                if (state_str != null && state_str != "")
                    cmd_str += "where (" + state_str + ")";
                SqlCommand cmdSelect = new SqlCommand(cmd_str, sqlCn);
                using (SqlDataReader dr = cmdSelect.ExecuteReader())
                {
                    while (dr.Read())
                    {
                        var cardInfo = new CCardInfo();

                        cardInfo.CI_CardNo = dr["CI_CardNo"].ToString();
                        cardInfo.CI_CardTypeNo = ToInt(dr["CI_CardTypeNo"]);
                        cardInfo.CI_Name = dr["CI_Name"].ToString();
                        cardInfo.CI_Sexno = dr["CI_Sexno"].ToString();
                        cardInfo.CI_Address = dr["CI_Address"].ToString();
                        cardInfo.CI_Telephone = dr["CI_Telephone"].ToString();
                        cardInfo.CI_Remark = dr["CI_Remark"].ToString();
                        cardInfo.CI_SendCardDate = ToDateTime(dr["CI_SendCardDate"]);
                        cardInfo.CI_SendCardOperator = dr["CI_SendCardOperator"].ToString();
                        cardInfo.CI_CreditsUsed = ToInt(dr["CI_CreditsUsed"]);
                        cardInfo.birthday = ToDateTime(dr["birthday"]);
                        cardInfo.state = dr["state"].ToString();

                        cardInfos.Add(cardInfo);
                    }
                }

            }
            catch (System.Exception e)
            {
                IOUtil.insert_file(DateTime.Now.ToString() + "=" + cmd_str);
                BathClass.printErrorMsg(e.Message);
            }
            finally
            {
                close_connection(sqlCn);
            }

            return cardInfos;
        }
Example #12
0
        public CCardInfo get_CardInfo(string cmd_str)
        {
            CCardInfo cardInfo = null;
            SqlConnection sqlCn = null;

            try
            {
                sqlCn = new SqlConnection(_con_str);
                sqlCn.Open();

                cmd_str = "Select * from [CardInfo] where (" + cmd_str + ")";
                SqlCommand cmdSelect = new SqlCommand(cmd_str, sqlCn);
                using (SqlDataReader dr = cmdSelect.ExecuteReader())
                {
                    while (dr.Read())
                    {
                        cardInfo = new CCardInfo();

                        cardInfo.CI_CardNo = dr["CI_CardNo"].ToString();
                        cardInfo.CI_CardTypeNo = ToInt(dr["CI_CardTypeNo"]);
                        cardInfo.CI_Name = dr["CI_Name"].ToString();
                        cardInfo.CI_Sexno = dr["CI_Sexno"].ToString();
                        cardInfo.CI_Address = dr["CI_Address"].ToString();
                        cardInfo.CI_Telephone = dr["CI_Telephone"].ToString();
                        cardInfo.CI_Remark = dr["CI_Remark"].ToString();
                        cardInfo.CI_SendCardDate = ToDateTime(dr["CI_SendCardDate"]);
                        cardInfo.CI_SendCardOperator = dr["CI_SendCardOperator"].ToString();
                        cardInfo.CI_CreditsUsed = ToInt(dr["CI_CreditsUsed"]);
                        cardInfo.birthday = ToDateTime(dr["birthday"]);
                        cardInfo.state = ToString(dr["state"]);
                        cardInfo.CI_Special1 = dr["CI_Special1"].ToString();
                        cardInfo.CI_SpecialDate1 = ToDateTime(dr["CI_SpecialDate1"]);
                        cardInfo.CI_Password = ToString(dr["CI_Password"]);

                        break;
                    }
                }

            }
            catch (System.Exception e)
            {
                IOUtil.insert_file("method=get_CardInfo,time=" + DateTime.Now.ToString() + ",cmd_str=" + cmd_str);
                BathClass.printErrorMsg(e.Message);
            }
            finally
            {
                close_connection(sqlCn);
            }

            return cardInfo;
        }
        //获取会员卡
        private void get_member()
        {
            string card_data = "";
            string company_code = LogIn.options.companyCode;

            bool st = false;
            if (cardType == "SLE4442")
                st = ICCard.read_data_4442(company_code, ref card_data);
            else if (cardType == "M1")
                st = ICCard.read_data_M1(company_code, ref card_data);
            else if (cardType == "CT")
            {
                card_data = id.Text;
                st = true;
            }
            if (!st)
                return;

            //card_data = "000000";
            m_member = dao.get_CardInfo("CI_CardNo='" + card_data + "'");
            if (m_member == null)
            {
                BathClass.printErrorMsg("非本公司卡!");
                return;
            }

            id.Text = m_member.CI_CardNo;
            name.Text = m_member.CI_Name;
            phone.Text = m_member.CI_Telephone;

            cmemberType = dao.get_MemberType("id='" + m_member.CI_CardTypeNo + "'");
            if (memberType != null)
                memberType.Text = cmemberType.name;

            var cc = dao.get_CardCharges("CC_CardNo='" + m_member.CI_CardNo + "'");
            double debit = MConvert<int>.ToTypeOrDefault(cc.Sum(x => x.CC_DebitSum), 0);
            double lend = MConvert<int>.ToTypeOrDefault(cc.Sum(x => x.CC_LenderSum), 0);
            balance.Text = (debit - lend).ToString();

            var c = MConvert<int>.ToTypeOrDefault(m_member.CI_CreditsUsed, 0);
            var cu = MConvert<int>.ToTypeOrDefault(memberSetting.money, 0);
            int cs = (int)(lend / cu - c);
            credits.Text = cs.ToString();
            btnOk.Text = "会员打折";
        }