精华内容
下载资源
问答
  • 银联POS刷卡机3D模型

    2021-07-15 02:31:24
    银联POS刷卡机3D模型适用于刷卡POS机模型设计。
  • POS刷卡机的类结构示意图 cardpackage包 Card类 package cardpackage; public abstract class Card { String type; float amount; public Card() { } public Card(String type) { this.type = type; } ...

    实现效果

    在这里插入图片描述

    POS刷卡机的类结构示意图

    在这里插入图片描述

    cardpackage包

    Card类

    package cardpackage;
    
    
    public abstract class Card {
        String type;
        float amount;
    
        public Card() {
        }
    
        public Card(String type) {
            this.type = type;
        }
    
        public Card(String type, float amount) {
            this.type = type;
            this.amount = amount;
        }
    
        public String getType() {
            return type;
        }
    
        public void setType(String type) {
            this.type = type;
        }
    
        public float getAmount() {
            return amount;
        }
    
        public void setAmount(float amount) {
            this.amount = amount;
        }
        public abstract float shouldPay(float totalPrice);
        public boolean consume(float totalPrice){
            if(this.amount>=this.shouldPay(totalPrice)){
                this.amount=this.amount-this.shouldPay(totalPrice);
                return true;
            }else{
                return false;
            }
        }
    }
    
    

    MemberCard类

    package cardpackage;
    
    
    public class MemberCard extends Card{
    
        public MemberCard() {
            this.type="MemberCard";
        }
    
        public MemberCard(String type, float amount) {
            super(type, amount);
        }
    
        @Override
        public float shouldPay(float totalPrice) {
            return totalPrice*0.9f;
        }
        
    }
    
    

    SuperVIPCard类

    package cardpackage;
    
    
    public class SuperVIPCard extends Card{
    
        public SuperVIPCard() {
        }
    
        public SuperVIPCard(String type, float amount) {
            super(type, amount);
        }
    
        @Override
        public float shouldPay(float totalPrice) {
            return totalPrice*0.5f;
        }
        
    }
    
    

    VIPCard类

    package cardpackage;
    
    
    public class VIPCard extends Card{
    
        public VIPCard() {
            this.type="VIPCard";
        }
    
        public VIPCard(String type, float amount) {
            super(type, amount);
        }
        
    
        @Override
        public float shouldPay(float totalPrice) {
            return totalPrice*0.7f;
        }
        
    }
    
    

    membercarddemoapp包

    Test类

    package membercarddemoapp;
    
    
    import cardpackage.*;
    
    
    public class Test {
        public static MemberCard memberCard=new MemberCard("会员卡",500);
        public static VIPCard  vIPCard=new VIPCard("VIP卡",1000);
        public static SuperVIPCard superVIPCard=new SuperVIPCard("超级VIP卡",2000);
    }
    
    

    pospackage包

    POS类

    package pospackage;
    
    import cardpackage.Card;
    
    public class POS {
        public static boolean slide(Card card, float totalPrice){
            return card.consume(totalPrice);
        }
    }
    
    

    POSJFrame,窗体

    /*
     * To change this license header, choose License Headers in Project Properties.
     * To change this template file, choose Tools | Templates
     * and open the template in the editor.
     */
    package pospackage;
    
    import membercarddemoapp.Test;
    import cardpackage.Card;
    
    /**
     *
     * @author DELL
     */
    public class POSJFrame extends javax.swing.JFrame {
    
        private Card card;
        /**
         * Creates new form POSJFrame
         */
        public POSJFrame() {
            initComponents();
        }
    
        /**
         * This method is called from within the constructor to initialize the form.
         * WARNING: Do NOT modify this code. The content of this method is always
         * regenerated by the Form Editor.
         */
        @SuppressWarnings("unchecked")
        // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
        private void initComponents() {
    
            buttonGroup1 = new javax.swing.ButtonGroup();
            jLabel1 = new javax.swing.JLabel();
            jLabel2 = new javax.swing.JLabel();
            jTextField1 = new javax.swing.JTextField();
            jTextField2 = new javax.swing.JTextField();
            jRadioButton1 = new javax.swing.JRadioButton();
            jRadioButton2 = new javax.swing.JRadioButton();
            jRadioButton3 = new javax.swing.JRadioButton();
            jButton1 = new javax.swing.JButton();
            jLabelType = new javax.swing.JLabel();
            jLabelResult = new javax.swing.JLabel();
            jLabelAmount = new javax.swing.JLabel();
    
            setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    
            jLabel1.setText("消费的总金额:");
    
            jLabel2.setText("消费的应付金额:");
    
            jTextField1.setText("100");
    
            buttonGroup1.add(jRadioButton1);
            jRadioButton1.setText("MemberCard");
            jRadioButton1.addChangeListener(new javax.swing.event.ChangeListener() {
                public void stateChanged(javax.swing.event.ChangeEvent evt) {
                    jRadioButton1StateChanged(evt);
                }
            });
    
            buttonGroup1.add(jRadioButton2);
            jRadioButton2.setText("VIPCard");
            jRadioButton2.addItemListener(new java.awt.event.ItemListener() {
                public void itemStateChanged(java.awt.event.ItemEvent evt) {
                    jRadioButton2ItemStateChanged(evt);
                }
            });
    
            buttonGroup1.add(jRadioButton3);
            jRadioButton3.setText("SuperVIPCard");
            jRadioButton3.addItemListener(new java.awt.event.ItemListener() {
                public void itemStateChanged(java.awt.event.ItemEvent evt) {
                    jRadioButton3ItemStateChanged(evt);
                }
            });
    
            jButton1.setText("刷卡消费");
            jButton1.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    jButton1ActionPerformed(evt);
                }
            });
    
            jLabelType.setText("卡类型");
    
            jLabelResult.setText("刷卡的结果");
    
            jLabelAmount.setText("当前余额");
    
            javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
            getContentPane().setLayout(layout);
            layout.setHorizontalGroup(
                layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addGap(57, 57, 57)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jLabel1)
                                .addComponent(jLabel2))
                            .addGap(47, 47, 47)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                .addComponent(jTextField1)
                                .addComponent(jTextField2, javax.swing.GroupLayout.DEFAULT_SIZE, 138, Short.MAX_VALUE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 59, Short.MAX_VALUE)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jRadioButton3)
                                .addComponent(jRadioButton2)
                                .addComponent(jRadioButton1)))
                        .addGroup(layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jLabelResult)
                                .addComponent(jButton1))
                            .addGap(75, 75, 75)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jLabelType)
                                .addComponent(jLabelAmount))
                            .addGap(0, 0, Short.MAX_VALUE)))
                    .addContainerGap())
            );
            layout.setVerticalGroup(
                layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addGap(58, 58, 58)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(jLabel1)
                        .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(jRadioButton1))
                    .addGap(18, 18, 18)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(jLabel2)
                        .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(jRadioButton2))
                    .addGap(18, 18, 18)
                    .addComponent(jRadioButton3)
                    .addGap(37, 37, 37)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(jButton1)
                        .addComponent(jLabelType))
                    .addGap(35, 35, 35)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(jLabelResult)
                        .addComponent(jLabelAmount))
                    .addContainerGap(46, Short.MAX_VALUE))
            );
    
            pack();
        }// </editor-fold>                        
    
        private void jRadioButton1StateChanged(javax.swing.event.ChangeEvent evt) {                                           
            // TODO add your handling code here:
            card=Test.memberCard;
        }                                          
    
        private void jRadioButton2ItemStateChanged(java.awt.event.ItemEvent evt) {                                               
            // TODO add your handling code here:
            card=Test.vIPCard;
        }                                              
    
        private void jRadioButton3ItemStateChanged(java.awt.event.ItemEvent evt) {                                               
            // TODO add your handling code here:
            card=Test.superVIPCard;
        }                                              
    
        private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
            // TODO add your handling code here:
            float totalPrice=Float.parseFloat(this.jTextField1.getText().trim());
            boolean result=POS.slide(card, totalPrice);
            this.jTextField2.setText(card.shouldPay(totalPrice)+"");
            this.jLabelType.setText(card.getType());
            this.jLabelAmount.setText(card.getAmount()+"");
            if(result){
                this.jLabelResult.setText("消费成功");
            }else{
                this.jLabelResult.setText("余额不足,消费失败");
            }
        }                                        
    
        /**
         * @param args the command line arguments
         */
        public static void main(String args[]) {
            /* Set the Nimbus look and feel */
            //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
            /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
             * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
             */
            try {
                for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                    if ("Nimbus".equals(info.getName())) {
                        javax.swing.UIManager.setLookAndFeel(info.getClassName());
                        break;
                    }
                }
            } catch (ClassNotFoundException ex) {
                java.util.logging.Logger.getLogger(POSJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
            } catch (InstantiationException ex) {
                java.util.logging.Logger.getLogger(POSJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
            } catch (IllegalAccessException ex) {
                java.util.logging.Logger.getLogger(POSJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
            } catch (javax.swing.UnsupportedLookAndFeelException ex) {
                java.util.logging.Logger.getLogger(POSJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
            }
            //</editor-fold>
    
            /* Create and display the form */
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    new POSJFrame().setVisible(true);
                }
            });
        }
    
        // Variables declaration - do not modify                     
        private javax.swing.ButtonGroup buttonGroup1;
        private javax.swing.JButton jButton1;
        private javax.swing.JLabel jLabel1;
        private javax.swing.JLabel jLabel2;
        private javax.swing.JLabel jLabelAmount;
        private javax.swing.JLabel jLabelResult;
        private javax.swing.JLabel jLabelType;
        private javax.swing.JRadioButton jRadioButton1;
        private javax.swing.JRadioButton jRadioButton2;
        private javax.swing.JRadioButton jRadioButton3;
        private javax.swing.JTextField jTextField1;
        private javax.swing.JTextField jTextField2;
        // End of variables declaration                   
    }
    
    
    展开全文
  • 环境要求:PHP(5.2-5.6),MYSQL(5.X)
  • 刷卡器阅读芯片是POS机主要功能的承担者,对其Android驱动程序的研究,有助于POS机在Android平台上的发展。  MagTek刷卡器阅读芯片21006450应用广泛,对于它的研究将有助于刷卡器阅读芯片驱动程序在实际的应用。...
  • pos刷卡小票

    2015-05-10 15:20:44
    打印方便,适用于任何商家,打印pos好帮手。非常好
  • 通过互联网POS机,打通线上商城和线下结合体验,实现互联网销售POS机POS机招商加盟,对于传统门店而言,实现O2O资源整合,深化线上线下间的协同关系至关重要。 一个POS机的网站优势在于实现到店、提货、满足顾客的...

    简介:

    织梦dedecms内核自适应移动POS机卡机招商加盟企业网站源码
    通过互联网POS机,打通线上商城和线下结合体验,实现互联网销售POS机及POS机招商加盟,对于传统门店而言,实现O2O资源整合,深化线上线下间的协同关系至关重要。
    一个POS机的网站优势在于实现到店、提货、满足顾客的多种线上体验网站需求,彻底提升商家的 线下服务效率和能力。
    POS机移动卡机网站模板采用自适应结构,兼容性强, 后台提供各种文档发布功能,适用于数码企业建站和电子相关企业网站。
    环境要求:PHP(5.2-5.6),MYSQL(5.X)
    源码功能:
    1:自适应结构
    2:代码整洁利于SEO
    3:全新蓝色后台风格
    4:完整安装教程


    网盘下载地址:

    http://kekewangLuo.cc/t4Gj4cEya120


    图片:


    展开全文
  • 原标题:pos机刷卡一直在连接是怎么回事pos机刷卡一直在连接是怎么回事现在小伙伴们使用的机器大多都是无线的机器,那么在使用的过程肯定也是遇到一些小问题,前几天一个博友提问卡卡哥说机器前几天还使用的...

    原标题:pos机刷卡一直在连接中是怎么回事

    pos机刷卡一直在连接中是怎么回事现在小伙伴们使用的机器大多都是无线的机器,那么在使用的过程中肯定也是遇到一些小问题,前几天一个博友提问卡卡哥说机器前几天还使用的好好的,这里天签到的时候pos机一直显示正在呼叫,这个是怎么回事

    a94ad1e350b7139906e1a4ad78b0c238.png

    今天卡卡哥就跟大家一起来分析下造成这个原因的有哪些?

    首先我们想到的时候这个pos机一直显示正在呼叫,那么肯定意思就是在签到还是在刷卡的时候造成这个原因的?第一个比较常见的问题那么是流量卡没有流量啦导致机器连接不到银联中心,一直在不断循环的连接,解决的方法也是比较简单,直接换张流量卡即可,前几天卡卡哥也有写到一篇文章pos机无法签到的原因,pos机签到不了怎么办,大家可以去看看。

    5d88bcb7f9053ce6de80f4c5e5b8f600.png

    当然如果你说你不知道流量卡怎么还怎么办?这个也比较简单,卡卡哥也有写到这类的文章,pos机不知道流量卡怎么还可以看看这个,一看就知道不看那是永远不知道的。

    第二个情况,是机器原因导致,比如今天坏了,等等情况,那么排除这类的情况也是比较的简单,首先我们换了流量卡以后还是在连接中,那么没有什么理由想的就是机器问题导致

    第三种情况,机器终端被解绑,那么很好解决,你在签到的时候会显示无效终端,或者终端未登记,这个时候我们就要联系给我办理机器的小伙伴了,问问是什么情况导致机器终端被解绑了。

    流量卡没有流量了我们需要更换专业的流量卡,那么怎么找靠谱的流量卡啦?其实很简单只要找到卡卡哥的博客就可以了,pos机的那些事博客也是可以的返回搜狐,查看更多

    责任编辑:

    展开全文
  • 新大陆me30驱动是专为新大陆me30pos机打造的驱动程序,有了它以后,用户就可以非常便捷的让pos机和电脑进行正常的连接,轻松的完成日常的打印工作,欢迎有需要的朋友下载使用!官方介绍新大陆ME30外型小巧,自带密码...
  • Java applet POS机刷卡全套源码

    热门讨论 2013-05-29 17:08:17
    java连接POS机刷卡的applet程序源码,也是我公司现在在用的源码,整合后共享出来,支持串口连接POS机及通过加载dll动态库连接pos机
  • 刷卡器阅读芯片是POS机主要功能的承担者,对其Android驱动程序的研究,有助于POS机在Android平台上的发展。  MagTek刷卡器阅读芯片21006450应用广泛,对于它的研究将有助于刷卡器阅读芯片驱动程序在实际的应用。...
  • 基于posinf.dll 与POS机通讯程序,C#对接POS机如果需要可以试试。
  • POS机收款 支持支付宝 微信 刷卡 公司项目用
  • 新大陆pos机驱动是一款非常实用的pos机usb驱动程序,适合购买了该品牌pos机的用户进行使用,用户安装好驱动程序以后,就可以非常便捷的让pos机进行正常的使用了,欢迎有需要的朋友下载使用!官方介绍新大陆科技集团...
  • pos机怎么刷卡?使用POS机刷卡首先需要开机然后根据需要按功能键。如果您想消费请按消费键然后插入需要刷卡的银行卡或银行卡号。看到卡号正确后按“确认”;最后一步是输入你要刷的金额。具体步骤如下:1、开机长按...

    pos机怎么刷卡?使用POS机刷卡首先需要开机然后根据需要按功能键。如果您想消费请按消费键然后插入需要刷卡的银行卡或银行卡号。看到卡号正确后按“确认”;最后一步是输入你要刷的金额。

    具体步骤如下:

    1、开机长按“取消”按钮开机有些POS机会因为安全原因而有账号和密码如果有可以登录;

    2、按下“取消”按钮后开机成功在POS屏幕显示下方第一行的最右侧有一个“功能”按钮按下功能键;

    3、按下功能键并选择“1、消费”键;

    4、选择“1、消费”后会弹出消费提示:“请刷卡或插入IC卡或手动输入卡号”。如果你的卡上有芯片你可以插入卡。没带的话可以直接插入卡槽。刷卡就行;

    5、刷卡后会出现你的卡号检查完毕后按“确认”按钮;

    6、按下“确认”按钮后系统会提示“请输入金额”;

    7、进入后POS会提示你“请输入密码”你给刷卡的人让他输入密码;

    8、输入后按“确认”键。此时将打印两份供客户消费的卡清单其中一份由商户签字另一份根联卡将保存起来供刷卡人使用。

    pos机怎么刷卡了解后POS机应该怎么选?

    机器选择的三个标准:

    1、资金安全。

    您使用的机器品牌必须有央行颁发的支付许可证你可以让给你机器的人去给你出示支付牌照图片也可以去百度在银行官网的支付营业执照信息公告上搜索如果没有名字或者不一致就不要用。

    2、提额养卡。

    要想达到这个目的一定不能用“跳码”机和“假商家”机使用这样的机器不仅不会提高额度还会降低额度甚至封卡。你在银行的风险控制之下你需要的是当地优质的真商家有积分到货快。所谓跳码是指区号和MCC码例如北京的区号是1000如果是其他就是跳转区。还有就是假商家的问题如果你在企业搜索中输入商家的名字你可以发现它是一个真正的商家否则它就是一个虚假的商家即使它是一个真正的商家一些商家已经被银行列入黑名单没有信用消费。

    3、费率便宜。

    事实上费率的问题相当尴尬通常来说追求低费率是第一位的。费率越低越有吸引力当然不是所有低费率的机器都不好。有句话叫:外行看费率内行看商家。如果满足前两点的要求费率便宜就更好了。

    上述是关于pos机怎么刷卡的介绍还可以了解刷卡成功但是钱没到账希望对您有所帮助。

    刷卡(6)步骤(16)怎么选(10)pos机(3)

    展开全文
  • JavaPOS

    2021-03-15 14:01:47
    摘要:UnifiedPOS和其衍生的JavaPOS标准,对收款的硬件设备进行了规范。利用JUnit单元测试工具对嵌入式JavaPOS系统的设备接口进行了白盒测试,分析了市场主流收款的不足,给出了嵌入式收款的测试方法和测试...
  • 刷卡机驱动

    2013-04-17 07:49:06
    刷卡机 读卡器 驱动
  • POS机刷卡

    2013-05-12 19:12:54
    POS机刷卡操作 POS机刷卡操作 一、 班前准备 1、 检查电话线水晶头与POS机接触情况。 2、 签到,进入“菜单→签到→输入工号:01,密码:0000” 二、 班操作 1、 储蓄卡与信用卡的区别:储蓄卡又称借记卡,该卡为...
  • 这是基于银行POS机的简单实现,通过IDEA开发工具写的,支持一些简单功能,没有交互界面,采用迭代式软件开发
  • 超市POS机管理系统.zip

    2020-06-28 20:28:18
    这就导致信息不断增多,而超市pos机管理是一项琐碎、复杂而又十分细致的工作, 例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高超市pos机管理的效率,也是超市的...
  • 在此普及一下知识整个刷卡的交易过程是:pos机刷卡——数据到银联中心——发卡行——返回银联中心——返回pos机出票这是一个完整的流程。如果中间任何一个环节的通讯数据出错,交易就是不成功的pos也会不出票!为什么...
  • 学校实训毕业商用项目-刷卡机手机POS机类网站织梦模板.zip
  • 行业分类-物理装置-一种POS机刷卡装置.zip
  • POS机刷卡故障解决方案.xlsPOS联系人POS故障分类统计POS故障记录培训内容故障分类开机故障故障描述在线排查线下排查后台对应的POS交易日志故障解决是否存在日志描述1、开机后屏幕不亮3、开机后无法进入正常界面1、...
  • pos密码错误_POS机常见故障代码解释

    千次阅读 2021-08-02 05:19:23
    文章导读:在使用pos机的时候我们需要输入密码,那么这个密码是有哪些啦?在签到的时候我们需要输入密码,在刷卡金额不对的是我们撤销需要输入密码,那么这些密码是多少啦?在使用pos机的时候我们需要输入密码,那么...
  • PSO行业专业词汇
  • 随着信用卡普及度越来越大,办理个人POS机的用户也越来越多,未来人手一台POS机成为可能,但是人们在使用过程总会遇到一些这样那样的问题,下面聚金科技小编以银联POS机为例,整理一份POS机刷卡问题汇总及解决方法...
  • POS机很常见于日常生活的店铺收付款,为了现代支付的需要POS机已经研发出适应各种方式的付款,比如支付宝、微信扫码收款,银行卡、借记卡刷卡收款等,简直是既方便又实用。POS机刷卡的使用方法:首先确保POS机...
  • 刷卡机POS机调试模式:清零+7
  • POS机应答码大全

    2016-04-27 15:12:41
    POS机应答码大全

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,815
精华内容 1,126
关键字:

中pos刷卡机