证书生成

该博客介绍了如何通过代码生成证书,当用户通过测试后,筛选合格数据并调用`CreateCertificate`函数插入证书信息。在函数中,首先获取选中的成就ID,然后遍历并检查每个ID,将不存在的数据插入到`CertificateITable`,同时记录新增和已存在的条数。后端控制器方法`InsertCertificate`处理这些请求,进行数据验证和保存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

想要拥有证书,首先得通过测试,只有通过了测试才能拥有证书,所以我们要筛选数据,选取测试合格的人生成证书.

function CreateCertificate() {

            var checkStatus = layuiTable.checkStatus('tabAchievment');

            var selectData = checkStatus.data;

            if (selectData.length == 0) {

                layer.alert("请选择需要生成的证书信息", { icon: 5, offset: '150px' });

                return false;

            }

            var ArrAchievementID = [];

            for (var i = 0; i < selectData.length; i++) {

                var e = new Achievement();

                e.AchievementID = selectData[i].AchievementID;

                ArrAchievementID.push(e);

            }

            $.post("InsertCertificate", { list: ArrAchievementID }, function (msg) {

                if (msg.State == true) {

                    tabAchievmentSearch();

                    调出方法

                    tabCertificateSearch()

                    layer.alert(msg.Text, { icon: 1, offset: '150px', skin: 'layui-layer-molv}', closeBtn: 0 });

                }

                else {

                   提示框

                    layer.alert(msg.Text, { icon: 5, offset: '150px' });

                }

            });

        }

public ActionResult InsertCertificate(List<Achievement> list) {

            ReturnJson msg = new ReturnJson();

            //记录新增成功的条数

            var count = 0;

           //记录已存在的条数

            var ercount = 0;

            try

            {

                foreach (Achievement item in list)

                {

                    int AchievementID = Convert.ToInt32(item.AchievementID);

                    var tb = myModel.CertificateITable.Where(m=>m.AchievementID==AchievementID).ToList();

                    if (tb.Count>0)

                    {

                        ercount++;

                    }

                    else

                    {

                        var listStu = (from tbAchievement in myModel.PW_Achievement

                                       join tbStudent in myModel.PW_Student on tbAchievement.UserID equals tbStudent.UserID

                                       where tbAchievement.AchievementID==AchievementID

                                       select new {

                                           tbStudent.StudentNumber

                                       }).Take(1).ToList();

                        var CertificateNumber=listStu[0].StudentNumber.Trim();

                        Models.CertificateITable cer = new Models.CertificateITable();

                        cer.AchievementID = AchievementID;

                        cer.CertificateNumber = CertificateNumber;

                        cer.IssuanceUnit = Convert.ToString("重庆邮电大学保卫处");

                        cer.IssuanceTime = DateTime.Now;

                        myModel.CertificateITable.Add(cer);

                        if (myModel.SaveChanges()>0)

                        {

                            count++;

                        }

                    }

                }

                msg.State = true;

                msg.Text = "成功新增" + count + "条数据," + "已存在" + ercount + "条数据,新增失败" + (list.Count - count - ercount) + "条数据";

            }

            catch (Exception e)

            {

                Console.WriteLine(e);

                msg.State = false;

                msg.Text = "新增证书过程中出现错误,请尽快查找错误";               

            }

            return Json(msg, JsonRequestBehavior.AllowGet);

        }

        }

 

 

 

 

 

 

                     

 

 

 

 

 

 

 

                     

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值