《威海市国土资源网上交易系统——WCF》项目研发阶段性总结

12 篇文章 0 订阅
9 篇文章 0 订阅


作者: 张国军_Suger
本次任务完成时间:2017年02月20日~2017年06月23日
开发工具与关键技术:Visual Studio 2015、SQL Server 2014 .NET、C/S(C#)、WCF
完成模块功能:后台功能与前台功能

一、项目概述

      简述负责的模块及其功能
本系统的版本是网页版的,我们现在用C#做成桌面版的,功能也和网页版的差不多,但也有些许不同。
      该版本有两种不同的显示方式:
            1、登录前的只能看到登录前的信息。
            2、登陆后方可参与之后的操作。
      我主要资源检索、申购、限时竞价、挂牌结束这几个模块,但由于时间和自己对某些没学过的知识陌生的原因导致自己至今只做了资源检索这个模块,申购这个模块也差最后的打印环节没做,不过我不会的也是思考了很久,自己实在想不出的就会去请教老师或自己上网参考参考然后将老师的或网上的功能代码通过自己的不断调试和改代码来实现自己的项目的功能

(1)、首页:主要用于显示一些公告与指南的相关信息。

(2)、资源检索:主要包括招挂牌信息的查询、结果公示的查询、挂牌资源的查询 这些功能。

模块分支核心模块分支相应的详细信息
招挂拍信息的查询在于动态的生成图片和绑定图片所对应的信息如果输入地块信息时还没到公告期,那么前台交易大厅里显示“已开始”;当到公告起始时间开始,该土地资源自动进入公告期;当挂牌起始时间开始,地块资源自动进入挂牌期。此栏目可以检索挂牌公告期正在挂牌的资源信息。
资源搜索地块交易结束后的相关情况会在该栏目中显示。 包含已成交的,未成交的,终止的资源信息。
资源搜索在于时间的组合模糊查询竞买人可以根据挂牌编号、挂牌时间、成交时间等其它条件检索相应的挂牌资源,搜索功能支持模糊查询,搜索条件可以任意组合。

(3)、申购:主要包括阅读申购规则、填写竞买申请书、选择缴纳保证金银行、获取保证金随机账号。

模块分支核心模块分支相应的详细信息
点击我要申购按钮在于动态的该地块资源相关的信息如果用户对某地块有竞买意向(以“土地交易”为例),那么该用户登录后,直接点击 “土地交易”,进入交易大厅,选择相应地块的“我要申购”按钮提交竞买申请“已成交”、“流拍”状态的地块不能提交竞买申请),此时系统会自动审核您的资格。通过审核即可进入申购页面。若审核不通过,系统会提示“资格审查未通过,不能申购”。
阅读申购规则在于提取申购规则当前用户点击我要申购后,通过审核即可进入申购页面。 竞买者仔细阅读出让规则,如果同意相关条款,点击 “同意”按钮,则进入下一步。如果不同意,点击 “不同意”,返回交易大厅注:为了保证竞买者利益,请认真阅读申购条款
填写竞买申请书在于将相应地块绑定到该竞买申请书的相应位置进入竞买申请书页面,阅读相关信息后,竞买者确认无误后,点击“下一步”按钮,进入下一步。
选择缴纳保证金银行在于绑定相应的资源地块信息本系统目前与威海市商业银行建立接口连接,竞买人可通过威海市商业银行缴纳保证金。竞买人确认申购的地块信息后,点击“确认无误,提交”按钮,进入下一步。
获得保证金随机账号在于绑定相应的资源地块信息,动态生成随机保证金账号,打印出来该申购订单银行系统根据竞买人的申请随机生成唯一的保证金账号(请牢记该账号),竞买人向该账号足额缴纳保证金。在系统自动生成的申购订单中可直接看到随机保证金账号。

(4)、限时竞价:主要包括竞价5分钟倒计时、竞价的资源信息、出价记录的动态查询、竞买人出价。

模块分支核心模块分支相应的详细信息
5分钟倒计时在于判断5分钟内是否有人出价,进入5分钟倒计时时,系统同时伴随有声音提示!该阶段设置报价限时为5分钟,5分钟内任意竞买人提交新的报价,系统都会重新开始5分钟倒计时。任何一次报价提交后的5分钟内,没有竞买人提交新的报价,则限时竞价结束。当系统进入5分钟限时竞价倒计时时,系统会提示(交易进入竞价期,请慎重考虑尽快出价!),系统同时伴随有声音提示;5分钟倒计时快结束时,系统同样也会进行提示(1分钟后竞价将结束,请慎重考虑尽快出价!)。如果到最后一秒钟仍然没有竞买人提交新的报价,限时竞价过程结束。
竞价的资源信息在于绑定相应的资源信息点击☞我要出价☜按钮,阅读出让规则后点击同意,可进入限时竞价页面,即可进行挂牌期出价。同时绑定相应的资源信息。
出价记录的动态查询在于对竞买人的每次报价都要经过数字加密和签名。报价成功的竞买人可以看到新的报价记录闪烁提醒,当前最高价已更新。系统支持快速出价和自定义出价,初次报价为不低于起始价的任意报价,以后的每次报价都在当前最高价的基础上以增加幅度的整数倍递增。竞买人的每次报价都经过了数字加密和签名,可以防止报价信息在网络传输过程中被窃取和竞买人的否认行为。报价成功后,可以看到有新的报价记录闪烁提醒,当前最高价已更新。在出价记录中,所有的竞买者名称都用竞买人的身份编号代替,加入 人头图标的是当前登录用户的出价记录,红T代表其他竞买者的出价记录。

(5)、挂牌结束:主要包括生成成交确认书、打印成交确认书、竞买人竞买成功、该地块未能成交。

模块分支核心模块分支相应的详细信息
生成成交确认书在于根据接受的最高报价判定成交结果系统根据接受的最高报价判定成交结果。系统中均设置底价,最高报价高于或等于底价则竞得,低于底价的均为未中标,转为流拍。资源成交后系统自动生成成交确认书,竞得人可以在☞交易文档☜→☞成交确认书☜栏目里,通过点击竞买号链接查看,竞得人打印成交确认书后方可办理后续手续。
打印成交确认书打印成交确认书打印成交确认书
竞买人竞买成功在于提示和绑定相应的地块信息当竞买人竞买成功时,会看到相应的成交页面。并提示(请于5个工作日内持《成交确认书》、《竞买申请书》及相关资料到威海市国土资源局储备中心办理成交确认手续!) 。当资源地块被其他竞买人竞买成功,系统会显示相应的地块信息的内容。
该地块未能成交在于提示如果该地块未能成交,系统会显示(当前报价未超过低价,流拍!)

网上交易操作流程
网上交易操作流程

二、前台功能实现

(一)、首页界面

首页界面

(二)、登录界面

登录界面登录界面

(三)、资源检索

(1)、招拍挂信息

交易中心对需要交易的土地在网上进行挂牌公告如下图所示。如果输入地块信息时还没到公告期,那么前台交易大厅里显示“已开始”;当到公告起始时间开始,该土地资源自动进入公告期;当挂牌起始时间开始,地块资源自动进入挂牌期。此栏目可以检索挂牌公告期正在挂牌的资源信息。

招拍挂信息

(2)、结果公告

地块交易结束后的相关情况会在☞结果公告☜栏目中显示。包含已成交的,未成交的,终止的资源信息,如下图所示。

结果公告

(3)、资源搜索

竞买人可以根据挂牌编号、挂牌时间、成交时间等其它条件检索相应的挂牌资源,搜索功能支持模糊查询,搜索条件可以任意组合,如下图所示。

资源搜索

(四)、申购

如果用户对某地块有竞买意向(以“土地交易”为例),那么该用户登录后,直接点击☞土地交易☜,进入交易大厅,选择相应地块的☞我要申购☜按钮提交竞买申请(“已成交”、“流拍”状态的地块不能提交竞买申请),此时系统会自动审核您的资格。通过审核即可进入申购页面。若审核不通过,系统会提示“资格审查未通过,不能申购”。

申购申购

(1)、阅读申购规则

当前用户点击我要申购后,通过审核即可进入申购页面,如下图所示。
竞买者仔细阅读出让规则,如果同意相关条款,点击☞同意☜按钮,则进入下一步。如果不同意,点击☞不同意☜,返回交易大厅。
注:为了保证竞买者利益,请认真阅读申购条款。

阅读申购规则

(2)、填写竞买申请书

进入竞买申请书页面,如下图所示,阅读相关信息后,竞买者确认无误后,点击☞下一步☜按钮,进入下一步。

填写竞买申请书

(3)、选择交纳保证金银行

本系统目前与威海市商业银行建立接口连接,竞买人可通过威海市商业银行缴纳保证金。竞买人确认申购的地块信息后,点击☞确认无误,提交☜按钮,进入下一步,如下图所示。

选择交纳保证金银行

(4)、获取保证金随机账号

银行系统根据竞买人的申请随机生成唯一的保证金账号(请牢记该账号),竞买人向该账号足额缴纳保证金。在系统自动生成的申购订单中可直接看到随机保证金账号如下图所示)。

获取保证金随机账号获取保证金随机账号获取保证金随机账号

(五)、挂牌出价

竞买者缴纳保证金并确认申购的土地已进入挂牌期后,在土地交易中点击☞我的交易☜,找到申购的地块,如下图所示,点击☞我要出价☜按钮,阅读出让规则后点击同意,可进入下一页面,即可进行挂牌期出价。

挂牌出价挂牌出价挂牌出价挂牌出价挂牌出价挂牌出价

(1)、快速出价

竞买人可以选择不同倍数的出价幅度,点击在这里插入图片描述按钮进行出价。点击在这里插入图片描述按钮后,系统会再次询问,确定后不得撤回(与快速出价类似,如下图所示)。

快速出价

(2)、自定义出价

自定义出价

(3)、更多出价

更多出价更多出价更多出价更多出价更多出价

(六)、限时竞价

该阶段设置报价限时为5分钟,5分钟内任意竞买人提交新的报价,系统都会重新开始5分钟倒计时。任何一次报价提交后的5分钟内,没有竞买人提交新的报价,则限时竞价结束。当系统进入5分钟限时竞价倒计时时,系统会提示(如下左图),系统同时伴随有声音提示;5分钟倒计时快结束时,系统同样也会进行提示(如下右图)。如果到最后一秒钟仍然没有竞买人提交新的报价,限时竞价过程结束。

限时竞价限时竞价

(七)、挂牌结束

系统根据接受的最高报价判定成交结果.系统中均设置底价,最高报价高于或等于底价则竞得,低于底价的均为未中标,转为流拍。资源成交后系统自动生成成交确认书,竞得人可以在☞交易文档☜→☞成交确认书☜栏目里,通过点击竞买号链接查看(如下图所示),竞得人打印成交确认书后方可办理后续手续。

挂牌结束挂牌结束
当竞买人竞买成功时,会看到下图所示页面。
c
当资源地块被其他竞买人竞买成功,系统会显示如下图所示的内容。
v

(八)、公示结果

网上挂牌结束,挂牌结果在网上交易系统公示(如下图所示)。

公示结果

三、后台功能实现

(一)、查询全部资源信息

查询全部资源信息

(二)、新增资源信息

新增资源信息新增资源信息新增资源信息新增资源信息新增资源信息

(三)、修改资源信息

修改资源信息修改资源信息

(四)、删除资源信息

删除资源信息删除资源信息删除资源信息

四、相关业务表和关系

相关业务表和关系

五、经典代码

文本框只限数字:
文本框只限数字

#region 只限数字
private void txtChuRangMianJi_KeyPress(object sender, KeyPressEventArgs e)
{
    if ((Keys)e.KeyChar >= Keys.D0 && (Keys)e.KeyChar <= Keys.D9 ||
        (Keys)e.KeyChar == Keys.Back || (Keys)e.KeyChar == Keys.Enter
        || (Keys)e.KeyChar == (Keys)46)
    {
    }
    else
    {
        e.Handled = true;
    }
}
#endregion 

给DGV加序号+去空格:
给DGV加序号+去空格

#region DGV加序号+去所有空格
private void dgvDiKuaiChengJiaoJiLu_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
    //给DGV添加序号
    DataGridViewRow CurrentRow = this.dgvDiKuaiChengJiaoJiLu.Rows[e.RowIndex];
    CurrentRow.HeaderCell.Value = Convert.ToString(e.RowIndex + 1);
    //去除DGV中所有的空格
    if (e.Value is string)
    {
        e.Value = e.Value.ToString().Trim();
    }
}
#endregion

Esc按钮退出窗体:
Esc按钮退出窗体

#region Esc按钮退出窗体
protected override bool ProcessCmdKey(ref System.Windows.Forms.Message msg, System.Windows.Forms.Keys keyData)
{
    int WM_KEYDOWN = 256;
    int WM_SYSKEYDOWN = 260;
    if (msg.Msg == WM_KEYDOWN | msg.Msg == WM_SYSKEYDOWN)
    {
        switch (keyData)
        {
            case Keys.Escape:
                this.Close();//esc关闭窗体 
                break;
        }
    }
    return false;
}
#endregion

回车键登录:
回车键登录

#region 回车键登录
private void txtShuZiZhengShuMiMa_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        btnLogin_Click(null, null);
    }
}
#endregion

六、开发总结

        初步接触 .NET、C/S(C#)、WCF时是其实是一个比较陌生的,因为我们还没有真正了解到他的真实用途,只是知道他是WCF的桌面程序。
        因为该项目原是网页版的,而我们需要利用所学知识(.NET、C#)来做成WCF桌面版程序,起初不了解,因为不了解,所以对他更加的感兴趣,更加想深入了解一下其中的奥妙。其实也是事与愿违,因为在这次开发项目的过程遇到了很多问题,其实问题也不是什么大问题,都是想更加的去完善项目程序。
        一开始遇到的问题是如何在背景添加动态的背景,开始也是各种的查资料,上网查资料其实也是在开发过程中的一个辅助工具而已,绝大多数还是需要我们不断地去摸索尝试测试才会达到我们最终所需要的结果。当然,这也只是作为一个参考而已。
        开发过程遇到过一个特别的问题,那就是盖章问题,如何在我的WCF桌面程序里面盖章,其实自己想过尝试后觉得不行后就去请教老师,请教后老师也有告诉我解决方法,古语有云:“师父领进门修行在个人”,帮助我们的方法就是我们把我们想要的思路想法说出来,然后通过老师的方法帮助我们去通过我们自己的想法来去不断的调试和尝试来达到我们最终的结果。后来我通过在生成结果公示列表时在其中添加一张贴图来实现这个功能,其实一开始我想到的是在其中添加背景图,但是原本就有一张背景图了,如果再在其中添加一张背景图的话,那么最终的结果不会实现我想要的结果,因为这样,要么就是只显示原背景图,另一张盖章图没有显示,要么就是只显示盖章图,而没有显示背景图,因为其中一张图片会覆盖掉另一张图。最终也是做了很多次调试才能实现这个功能。因为我坚信一句话:“只要有恒心铁棒磨成针”。最终的胜利都是留给有准备,努力的人的。因此要相信自己能行。

注:此项目为本人用刚学完的知识做的一个实训项目,有待改进。只是为了学习与实训,如有雷同纯属巧合。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张国军_Suger

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值