YNICTE/FO/Controllers/CourseController.cs

1145 lines
53 KiB
C#
Raw Normal View History

2020-10-12 14:39:23 +09:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using NP.Model;
using NP.Base;
2020-11-06 11:20:26 +09:00
using System.Collections;
2020-11-16 17:42:59 +09:00
using XPayClientNet;
2020-10-12 14:39:23 +09:00
namespace NP.FO.Controllers
{
public class CourseController : FOOpenBaseController
{
public ActionResult PayCover(VMPay vm)
{
if (string.IsNullOrEmpty(vm.items))
{
return Redirect("/Course/Covers");
}
vm.viewname4 = vm.viewname4 ?? (GetConfig("fronturl") + "/Course/CoverPayReturn");
vm.viewname6 = vm.viewname6 ?? (GetConfig("pginfomobile").Split('|')[0] + "/Course/CoverPayReturn");
foreach (var d in vm.items.Split(';'))
{
var dd = d.Split(':');
if (dd[0] == "0")
{
vm.previewname = "/CoverDetail?cmno=" + dd[1];
break;
}
}
//vm.previewname = vm.previewname ?? "/Course/Ons";
base.PayAll(vm);
return View("Pay", vm);
}
public ActionResult BookPayReturn(VMPay vm)
{
return PayReturn(vm);
}
public ActionResult PayBook(VMPay vm)
{
if (string.IsNullOrEmpty(vm.items))
{
return Redirect("/Course/Books");
}
vm.viewname4 = vm.viewname4 ?? (GetConfig("fronturl") + "/Course/BookPayReturn");
vm.viewname6 = vm.viewname6 ?? (GetConfig("pginfomobile").Split('|')[0] + "/Course/BookPayReturn");
foreach (var d in vm.items.Split(';'))
{
var dd = d.Split(':');
if (dd[0] == "2")
{
vm.previewname = "/Book?bkno=" + dd[1];
break;
}
}
//vm.previewname = vm.previewname ?? "/Course/Offs";
base.PayAll(vm);
return View("Pay", vm);
}
public ActionResult BookBuy(VMCourse vm)
{
if (vm.bkno < 1) { return Redirect("/"); }
vm.previewname = "/Course/Books";
vm.Book = Dao.Get<Book>("cm.books", new System.Collections.Hashtable() { { "bkno", vm.bkno } }).First();
return View(vm);
}
public ActionResult Book(int bkno)
{
var b = Dao.Get<Book>("cm.books", new System.Collections.Hashtable() { { "bkno", bkno }, { "isdetail", 1 } }).FirstOrDefault();
if (b == null)
{
return Redirect("/Course/Books");
}
b.Files = new List<File>() { };
if (b.fgno != null)
{
b.Files = GetFiles(b.fgno.Value);
}
ViewBag.Files = (new NP.Model.VMBase()).Files;
return View(b);
}
public ActionResult Books(VMCourse vm)
{
var ht = SetHash(vm);
ht.Add("isuse", 1);
vm.Books = Dao.Get<Book>("cm.books", ht);
vm.pagetotalcount = GetCount(vm.Books.FirstOrDefault());
return View(vm);
}
public ActionResult Exam(VMCourse vm)
{
vm.Exam = Dao.Get<Exam>("exam.exams", new System.Collections.Hashtable() { { "userno", SUserInfo.UserNo }, { "exno", vm.exno } }).FirstOrDefault();
if (vm.Exam == null) { return Redirect("/Course/Exams"); }
vm.FileList = new List<File>();
if (vm.Exam.fgno != null) {
vm.FileList = GetFiles(vm.Exam.fgno.Value);
}
return View(vm);
}
public ActionResult Exams()
{
return View(Dao.Get<Exam>("exam.exams", new System.Collections.Hashtable() { { "userno", SUserInfo.UserNo },{"isopen",1 } }));
}
public ActionResult CertPayReturn(VMPay vm)
{
return View(Dao.Get<Lect>("pay.paylect.get", vm.Pay.payno).First());
}
public ActionResult CertDetail(VMCourse vm)
{
if (vm.cmno < 1)
{
return Redirect("/Course/Certs");
}
vm.previewname = vm.previewname ?? "/Course/Certs";
vm.CM = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "cmno", vm.cmno }, { "userno", SUserInfo.UserNo }, { "contents", vm.Contents } }).First();
vm.CMEV = Dao.Get<CMEV>("cm.cmev", new System.Collections.Hashtable() { { "cmno", vm.CM.cmno } }).First();
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", vm.cmno.ToString());
vm.CMPRs = Dao.Get<CMPR>("cm.cmprs", new System.Collections.Hashtable() { { "cmno", vm.CM.cmno }, { "usertype", 11 } });
if (vm.CM.fgnocm != null)
{
vm.FileList = GetFiles(vm.CM.fgnocm.Value);
}
return View("CertDetail", vm);
}
public ActionResult CertBuy(VMCourse vm)
{
if (vm.cmno < 1) { return Redirect("/"); }
vm.CM = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "cmno", vm.cmno }, { "userno", SUserInfo.UserNo }, { "contents", vm.Contents } }).First();
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", vm.cmno.ToString());
vm.User = Dao.Get<Users>("users.users", new System.Collections.Hashtable() { { "userno", SUserInfo.UserNo } }).First();
vm.ComCodes = GetComCodes("jobposition,job", true);
for (int i = vm.ComCodes.Count() - 1; i > -1; i--)
{
if (vm.ComCodes[i].isuse == 0 && (vm.ComCodes[i].cgroup != "jobposition" || (vm.ComCodes[i].cgroup == "jobposition" && vm.ComCodes[i].refcode != "9")))
{
vm.ComCodes.RemoveAt(i);
}
}
return View(vm);
}
public ActionResult Certs(VMCourse vm)
{
vm.cgcode = TestCode1;
vm.pcgcode = vm.pcgcode ?? TestCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cgcode", vm.cgcode }, { "userno", SUserInfo.UserNo }, { "isrequestable", 1 }/*, { "year", DateTime.Now.Year }*/, { "orderby", "a.retime desc" }, { "contents", vm.Contents } });
if (vm.CMs.Count() > 0)
{
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", string.Join(",", vm.CMs.Select(s => s.cmno)));
}
return View(vm);
}
public ActionResult Covers(VMCourse vm)
{
vm.cgcode = TestCode3;
vm.pcgcode = vm.pcgcode ?? TestCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cgcode", vm.cgcode }, { "userno", SUserInfo.UserNo }, { "isrequestable", 1 }/*, { "year", DateTime.Now.Year }*/, { "orderby", "a.retime desc" }, { "contents", vm.Contents } });
if (vm.CMs.Count() > 0)
{
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", string.Join(",", vm.CMs.Select(s => s.cmno)));
}
return View(vm);
}
public ActionResult CoverDetail(VMCourse vm)
{
if (vm.cmno < 1)
{
return Redirect("/Course/Covers");
}
vm.previewname = vm.previewname ?? "/Course/Covers";
vm.CM = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "cmno", vm.cmno }, { "userno", SUserInfo.UserNo }, { "contents", vm.Contents } }).First();
vm.CMEV = Dao.Get<CMEV>("cm.cmev", new System.Collections.Hashtable() { { "cmno", vm.CM.cmno } }).First();
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", vm.cmno.ToString());
vm.CMPRs = Dao.Get<CMPR>("cm.cmprs", new System.Collections.Hashtable() { { "cmno", vm.CM.cmno }, { "usertype", 11 } });
if (vm.CM.fgnocm != null)
{
vm.FileList = GetFiles(vm.CM.fgnocm.Value);
}
return View(vm);
}
public ActionResult CoverBuy(VMCourse vm)
{
if (vm.cmno < 1) { return Redirect("/"); }
vm.CM = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "cmno", vm.cmno }, { "userno", SUserInfo.UserNo }, { "contents", vm.Contents } }).First();
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", vm.cmno.ToString());
vm.User = Dao.Get<Users>("users.users", new System.Collections.Hashtable() { { "userno", SUserInfo.UserNo } }).First();
vm.ComCodes = GetComCodes("jobposition,job", true);
for (int i = vm.ComCodes.Count() - 1; i > -1; i--)
{
if (vm.ComCodes[i].isuse == 0 && (vm.ComCodes[i].cgroup != "jobposition" || (vm.ComCodes[i].cgroup == "jobposition" && vm.ComCodes[i].refcode != "9")))
{
vm.ComCodes.RemoveAt(i);
}
}
return View(vm);
}
public ActionResult PayOnBase(VMPay vm)
{
vm.viewname3 = "Base";
vm.previewname = vm.previewname ?? "/Course/OnBases";
vm.viewname4 = GetConfig("fronturl") + "/Course/OnBasePayReturn";
base.PayAll(vm);
return PayOn(vm);
}
public ActionResult PayOnCollege(VMPay vm)
{
vm.viewname3 = "College";
vm.previewname = vm.previewname ?? "/Course/OnColleges";
vm.viewname4 = GetConfig("fronturl") + "/Course/OnCollegePayReturn";
base.PayAll(vm);
return PayOn(vm);
}
public ActionResult PayOn(VMPay vm)
{
vm.viewname4 = vm.viewname4 ?? (GetConfig("fronturl") + "/Course/OnPayReturn");
vm.viewname6 = vm.viewname6 ?? (GetConfig("pginfomobile").Split('|')[0] + "/Course/OnPayReturn");
foreach (var d in vm.items.Split(';'))
{
var dd = d.Split(':');
if (dd[0] == "0")
{
vm.previewname = "/OnDetail?cmno=" + dd[1];
break;
}
}
//vm.previewname = vm.previewname ?? "/Course/Ons";
base.PayAll(vm);
return View("Pay", vm);
}
public ActionResult OnBuyCollege(VMCourse vm)
{
if (vm.cmno < 1) { return Redirect("/"); }
vm.viewname3 = "College";
vm.previewname = vm.previewname ?? "/Course/OnColleges";
POnBuy(vm);
return View("OnBuy", vm);
}
public ActionResult OnBuyBase(VMCourse vm)
{
if (vm.cmno < 1) { return Redirect("/"); }
vm.viewname3 = "Base";
vm.previewname = vm.previewname ?? "/Course/OnBases";
POnBuy(vm);
return View("OnBuy", vm);
}
public ActionResult OnBuy(VMCourse vm)
{
if (vm.cmno < 1) { return Redirect("/"); }
POnBuy(vm);
return View("OnBuy", vm);
}
private void POnBuy(VMCourse vm)
{
vm.viewname3 = vm.viewname3 ?? "";
vm.previewname = "/Course/Ons";
vm.CM = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "cmno", vm.cmno }, { "userno", SUserInfo.UserNo }, { "contents", vm.Contents } }).First();
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", vm.cmno.ToString());
vm.User = Dao.Get<Users>("users.users", new System.Collections.Hashtable() { { "userno", SUserInfo.UserNo } }).First();
vm.ComCodes = GetComCodes("jobposition,job", true);
for (int i = vm.ComCodes.Count() - 1; i > -1; i--)
{
if (vm.ComCodes[i].isuse == 0 && (vm.ComCodes[i].cgroup != "jobposition" || (vm.ComCodes[i].cgroup == "jobposition" && vm.ComCodes[i].refcode != "9")))
{
vm.ComCodes.RemoveAt(i);
}
}
}
public ActionResult Offs(VMCourse vm)
{
vm.pcgcode = vm.pcgcode ?? OffCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cgcode", vm.cgcode }, { "userno", SUserInfo.UserNo }, { "year", DateTime.Now.Year }, { "contents", vm.Contents } });
vm.viewname = vm.viewname ?? "OffList";
vm.viewname2 = vm.viewname2 ?? "OffSearch";
vm.viewname3 = "";
vm.previewname = "/Course/Offs?cname=" + (vm.cname ?? "");
return View("Offs", vm);
}
public ActionResult OffDetail(VMCourse vm)
{
if (vm.cmno < 1)
{
return Redirect("/Course/Offs");
}
//else if (Response.IsRequestBeingRedirected)
//{
// return RedirectToAction("OffDetail", new { cmno = vm.cmno });
//}
vm.viewname3 = vm.viewname3 ?? "";
vm.previewname = vm.previewname ?? "/Course/Offs";
vm.CM = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "cmno", vm.cmno }, { "userno", SUserInfo.UserNo }, { "contents", vm.Contents } }).First();
vm.CMEV = Dao.Get<CMEV>("cm.cmev", new System.Collections.Hashtable() { { "cmno", vm.CM.cmno } }).First();
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", vm.cmno.ToString());
vm.CMPRs = Dao.Get<CMPR>("cm.cmprs", new System.Collections.Hashtable() { { "cmno", vm.CM.cmno }, { "usertype", 11 } });
if (vm.CM.fgnocm != null)
{
vm.FileList = GetFiles(vm.CM.fgnocm.Value);
}
return View("OffDetail", vm);
}
public ActionResult OffBuy(VMCourse vm)
{
if (vm.cmno < 1) { return Redirect("/"); }
POffBuy(vm);
return View("OffBuy", vm);
}
public ActionResult OnDetailCollege(VMCourse vm)
{
if (vm.cmno < 1) { return Redirect("/Course/OnColleges"); }
vm.viewname3 = "College";
vm.previewname = vm.previewname ?? "/Course/OnColleges";
return OnDetail(vm);
}
public ActionResult OnDetailBase(VMCourse vm)
{
if (vm.cmno < 1){return Redirect("/Course/OnBases");}
vm.viewname3 = "Base";
vm.previewname = vm.previewname ?? "/Course/OnBases";
return OnDetail(vm);
}
public ActionResult OnDetail(VMCourse vm)
{
if (vm.cmno < 1)
{
return Redirect("/Course/Ons");
}
vm.CM = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "cmno", vm.cmno }, { "userno", SUserInfo.UserNo }, {"contents", vm.Contents } }).FirstOrDefault();
if (vm.CM == null)
{
return Redirect("/Course/Ons");
}
vm.CMEV = Dao.Get<CMEV>("cm.cmev", new System.Collections.Hashtable() { { "cmno", vm.CM.cmno } }).First();
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", vm.cmno.ToString());
vm.CMPRs = Dao.Get<CMPR>("cm.cmprs", new System.Collections.Hashtable() { { "cmno", vm.CM.cmno }, { "usertype", 11 } });
if (vm.CM.fgnocm != null)
{
vm.FileList = GetFiles(vm.CM.fgnocm.Value);
}
Thumbs(vm, true, true);
return View("OnDetail", vm);
}
public ActionResult OnColleges(VMCourse vm)
{
vm.cgcode = OnCode1;
vm.pcgcode = vm.pcgcode ?? OnCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cgcode", vm.cgcode }, { "cnamelike", vm.cname }, { "userno", SUserInfo.UserNo }, { "isrequestable", 1 }/*, { "year", DateTime.Now.Year }*/, { "orderby", "a.retime desc" }, { "contents", vm.Contents } });
if (vm.CMs.Count() > 0)
{
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", string.Join(",", vm.CMs.Select(s => s.cmno)));
Thumbs(vm, false, true);
}
vm.viewname = "OnSearch";
vm.viewname2 = "OnColleges";
vm.viewname3 = "College";
vm.previewname = "/Course/OnColleges?cname=" + (vm.cname ?? "");
return View("Ons", vm);
}
public ActionResult OnBases(VMCourse vm)
{
vm.cgcode = OnCode2;
vm.pcgcode = vm.pcgcode ?? OnCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cgcode", vm.cgcode }, { "cnamelike", vm.cname }, { "userno", SUserInfo.UserNo }, { "isrequestable", 1 }/*, { "year", DateTime.Now.Year }*/, { "orderby", "a.retime desc" }, { "contents", vm.Contents } });
if (vm.CMs.Count() > 0)
{
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", string.Join(",", vm.CMs.Select(s => s.cmno)));
Thumbs(vm, false, true);
}
vm.viewname = "OnSearch";
vm.viewname2 = "OnBases";
vm.viewname3 = "Base";
vm.previewname = "/Course/OnBases?cname=" + (vm.cname ?? "");
return View("Ons", vm);
}
public ActionResult OnSearch(VMCourse vm)
{
vm.pcgcode = vm.pcgcode ?? OnCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cnamelike", vm.cname }, { "userno", SUserInfo.UserNo }, { "isrequestable", 1 }/*, { "year", DateTime.Now.Year }*/, { "orderby", "a.retime,a.cname" }, { "contents", vm.Contents } });
if (vm.CMs.Count() > 0)
{
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", string.Join(",", vm.CMs.Select(s => s.cmno)));
Thumbs(vm, false, true);
}
vm.viewname = vm.viewname2 = "OnSearch";
vm.previewname = "/Course/OnSearch?cname=" + (vm.cname ?? "");
return View("Ons", vm);
}
public ActionResult Ons(VMCourse vm)
{
vm.viewname = vm.viewname ?? "OnList";
vm.viewname2 = vm.viewname2 ?? "OnSearch";
vm.pcgcode = vm.pcgcode ?? OnCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cgcode", vm.cgcode }, { "userno", SUserInfo.UserNo }/*, { "year", DateTime.Now.Year }*/,{ "orderby", "a.retime desc"},{ "isrequestable",1 }, { "contents", vm.Contents } });
ViewBag.OnCode1 = OnCode1;
Thumbs(vm);
return View(vm);
}
private void Thumbs(VMCourse vm, bool iscm = false, bool isbig = false)
{
if (iscm)
{
vm.CM.isbig = isbig?1:0;
}
else
{
foreach(var d in vm.CMs)
{
d.isbig = isbig ? 1 : 0;
}
}
//if (iscm && !string.IsNullOrEmpty(vm.CM.tasteurl))
//{
// var d = vm.CM;
// //Thumbnail 확인
// if (!System.IO.File.Exists(Server.MapPath(vm.Thumbnails + "/" + d.cmno + ".jpg")))
// {
// if (!System.IO.Directory.Exists(Server.MapPath(vm.Files + vm.Thumbnails)))
// {
// System.IO.Directory.CreateDirectory(Server.MapPath(vm.Files + vm.Thumbnails + "/"));
// }
// String thumbargs = "-i " + Server.MapPath(vm.Contents + d.tasteurl) + " -vframes 1 -ss 00:00:07 -s 150x150 " + Server.MapPath(vm.Thumbnails + "/" + d.cmno + ".jpg");
// System.Diagnostics.Process thumbproc = new System.Diagnostics.Process();
// thumbproc = new System.Diagnostics.Process();
// thumbproc.StartInfo.FileName = GetConfig("thumbnailexe");
// thumbproc.StartInfo.Arguments = thumbargs;
// thumbproc.StartInfo.UseShellExecute = false;
// thumbproc.StartInfo.CreateNoWindow = false;
// thumbproc.StartInfo.RedirectStandardOutput = false;
// try
// {
// thumbproc.Start();
// d.tasteurl = vm.Thumbnails + "/" + d.cmno + ".jpg";
// }
// catch (Exception ex)
// {
// SetError("ffmpeg: " + ex.Message);
// d.tasteurl = isbig ? "/img/online/fair_sample01.jpg" : "/img/main/main_edu_thumb01.jpg";
// }
// thumbproc.WaitForExit();
// thumbproc.Close();
// //_repository.CreateUniqueFullPath(_path);
// }
// else
// {
// d.tasteurl = vm.Thumbnails + "/" + d.cmno + ".jpg";
// }
//}
//else if (!iscm)
//{
// foreach (var d in vm.CMs.Where(w => !string.IsNullOrEmpty(w.tasteurl)))
// {
// //Thumbnail 확인
// if (!System.IO.File.Exists(Server.MapPath(vm.Thumbnails + "/" + d.cmno + ".jpg")))
// {
// if (!System.IO.Directory.Exists(Server.MapPath(vm.Files + vm.Thumbnails)))
// {
// System.IO.Directory.CreateDirectory(Server.MapPath(vm.Files + vm.Thumbnails + "/"));
// }
// String thumbargs = "-i " + Server.MapPath(vm.Contents + d.tasteurl) + " -vframes 1 -ss 00:00:07 -s 150x150 " + Server.MapPath(vm.Thumbnails + "/" + d.cmno + ".jpg");
// System.Diagnostics.Process thumbproc = new System.Diagnostics.Process();
// thumbproc = new System.Diagnostics.Process();
// thumbproc.StartInfo.FileName = GetConfig("thumbnailexe");
// thumbproc.StartInfo.Arguments = thumbargs;
// thumbproc.StartInfo.UseShellExecute = false;
// thumbproc.StartInfo.CreateNoWindow = false;
// thumbproc.StartInfo.RedirectStandardOutput = false;
// try
// {
// thumbproc.Start();
// d.tasteurl = vm.Thumbnails + "/" + d.cmno + ".jpg";
// }
// catch (Exception ex)
// {
// SetError("ffmpeg: " + ex.Message);
// d.tasteurl = "/img/main/main_edu_thumb01.jpg";
// }
// thumbproc.WaitForExit();
// thumbproc.Close();
// //_repository.CreateUniqueFullPath(_path);
// }
// else
// {
// d.tasteurl = vm.Thumbnails + "/" + d.cmno + ".jpg";
// }
// }
//}
}
public ActionResult OffColleges(VMCourse vm)
{
vm.cgcode = OffCode1;
vm.pcgcode = vm.pcgcode ?? OffCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cgcode", vm.cgcode }, { "cnamelike", vm.cname }, { "userno", SUserInfo.UserNo }, { "isrequestable", 1 }/*, { "year", DateTime.Now.Year }*/, { "orderby", "a.retime desc" }, { "contents", vm.Contents } });
if (vm.CMs.Count() > 0)
{
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", string.Join(",", vm.CMs.Select(s => s.cmno)));
}
vm.viewname = "OffSearch";
vm.viewname2 = "OffColleges";
vm.viewname3 = "College";
vm.previewname = "/Course/OffColleges?cname=" + (vm.cname??"");
return View("Offs", vm);
}
public ActionResult OffTotals(VMCourse vm)
{
vm.cgcode = OffCode2;
vm.pcgcode = vm.pcgcode ?? OffCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cgcode", vm.cgcode }, { "cnamelike", vm.cname }, { "userno", SUserInfo.UserNo }, { "isrequestable", 1 }/*, { "year", DateTime.Now.Year }*/, { "orderby", "a.retime desc" }, { "contents", vm.Contents } });
if (vm.CMs.Count() > 0)
{
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", string.Join(",", vm.CMs.Select(s => s.cmno)));
}
vm.viewname = "OffSearch";
vm.viewname2 = "OffTotals";
vm.viewname3 = "Total";
vm.previewname = "/Course/OffTotals?cname=" + (vm.cname ?? "");
return View("Offs", vm);
}
public ActionResult OffSpecials(VMCourse vm)
{
vm.cgcode = OffCode3;
vm.pcgcode = vm.pcgcode ?? OffCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cgcode", vm.cgcode }, { "cnamelike", vm.cname }, { "userno", SUserInfo.UserNo }, { "isrequestable", 1 }/*, { "year", DateTime.Now.Year }*/, { "orderby", "a.retime desc" }, { "contents", vm.Contents } });
if (vm.CMs.Count() > 0)
{
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", string.Join(",", vm.CMs.Select(s => s.cmno)));
}
vm.viewname = "OffSearch";
vm.viewname2 = "OffSpecials";
vm.viewname3 = "Special";
vm.previewname = "/Course/OffSpecials?cname=" + (vm.cname ?? "");
return View("Offs", vm);
}
public ActionResult OffSearch(VMCourse vm)
{
vm.pcgcode = vm.pcgcode ?? OffCode;
vm.CMs = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "pcgcode", vm.pcgcode }, { "cnamelike", vm.cname },{"userno",SUserInfo.UserNo },{"isrequestable",1 }/*, { "year", DateTime.Now.Year }*/,{"orderby","a.retime,a.cname" }, { "contents", vm.Contents } });
if (vm.CMs.Count() > 0)
{
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", string.Join(",", vm.CMs.Select(s=>s.cmno)));
}
vm.viewname = vm.viewname2 = "OffSearch";
vm.previewname = "/Course/OffSearch?cname=" + (vm.cname??"");
return View("Offs", vm);
}
public ActionResult CCOn1(VMCourse vm)
{
vm.viewname = vm.viewname ?? "EduBOn1";
return View(vm);
}
public ActionResult CC1(VMCourse vm)
{
vm.viewname = vm.viewname ?? "EduB1";
return View(vm);
}
public ActionResult CC2(VMCourse vm)
{
vm.viewname = vm.viewname ?? "EduB2";
return View(vm);
}
public ActionResult CC3(VMCourse vm)
{
vm.viewname = vm.viewname ?? "EduB3";
return View(vm);
}
public ActionResult EduBOn1(VMCourse vm)
{
vm.EduB2B = new EduB2B() { etype = 1 };
return EduB2B(vm);
}
public ActionResult EduB1(VMCourse vm)
{
vm.EduB2B = new EduB2B() { etype = 2 };
return EduB2B(vm);
}
public ActionResult EduB2(VMCourse vm)
{
vm.EduB2B = new EduB2B() { etype = 0 };
vm.FileList = new List<File>() { };
return EduB2B(vm);
}
public ActionResult EduB3(VMCourse vm)
{
vm.EduB2B = new EduB2B() { etype = 3 };
return EduB2B(vm);
}
public ActionResult EduB2B(VMCourse vm)
{
vm.User = Dao.Get<Users>("users.users", new System.Collections.Hashtable() { { "userno", SUserInfo.UserNo } }).First();
if (vm.User.asno != null)
{
var am = Dao.Get<AssignMan>("users.assignmans", new System.Collections.Hashtable() { { "asno", vm.User.asno.Value } }).Where(w => w.mtype == 1).FirstOrDefault();
if (am != null)
{
vm.User.asmanname = am.mname;
vm.User.email = am.email;
}
}
return View("EduB2B", vm);
}
public ActionResult OffDetailCollege(VMCourse vm)
{
if (vm.cmno < 1)
{
return Redirect("/Course/OffColleges");
}
vm.viewname3 = "College";
vm.previewname = vm.previewname ?? "/Course/OffColleges";
return OffDetail(vm);
}
public ActionResult OffDetailTotal(VMCourse vm)
{
if (vm.cmno < 1)
{
return Redirect("/Course/OffTotals");
}
vm.viewname3 = "Total";
vm.previewname = vm.previewname ?? "/Course/OffTotals";
return OffDetail(vm);
}
public ActionResult OffDetailSpecial(VMCourse vm)
{
if (vm.cmno < 1)
{
return Redirect("/Course/OffSpecials");
}
vm.viewname3 = "Special";
vm.previewname = vm.previewname ?? "/Course/OffSpecials";
return OffDetail(vm);
}
public ActionResult OffBuyCollege(VMCourse vm)
{
if (vm.cmno < 1) { return Redirect("/"); }
vm.viewname3 = "College";
vm.previewname = vm.previewname ?? "/Course/OffColleges";
POffBuy(vm);
return View("OffBuy", vm);
}
public ActionResult OffBuyTotal(VMCourse vm)
{
if (vm.cmno < 1) { return Redirect("/"); }
vm.viewname3 = "Total";
vm.previewname = vm.previewname ?? "/Course/OffTotals";
POffBuy(vm);
return View("OffBuy", vm);
}
public ActionResult OffBuySpecial(VMCourse vm)
{
if (vm.cmno < 1) { return Redirect("/"); }
vm.viewname3 = "Special";
vm.previewname = vm.previewname ?? "/Course/OffSpecials";
POffBuy(vm);
return View("OffBuy", vm);
}
private void POffBuy(VMCourse vm)
{
vm.viewname3 = vm.viewname3 ?? "";
vm.previewname = "/Course/Offs";
vm.CM = Dao.Get<CM>("cm.cms.forbuy", new System.Collections.Hashtable() { { "cmno", vm.cmno }, { "userno", SUserInfo.UserNo }, { "contents", vm.Contents } }).First();
vm.CMBooks = Dao.Get<Book>("cm.cmbooks", vm.cmno.ToString());
vm.User = Dao.Get<Users>("users.users", new System.Collections.Hashtable() { { "userno", SUserInfo.UserNo } }).First();
vm.ComCodes = GetComCodes("jobposition,job", true);
for (int i = vm.ComCodes.Count() - 1; i > -1; i--)
{
if (vm.ComCodes[i].isuse == 0 && (vm.ComCodes[i].cgroup != "jobposition" || (vm.ComCodes[i].cgroup == "jobposition" && vm.ComCodes[i].refcode != "9")))
{
vm.ComCodes.RemoveAt(i);
}
}
}
public ActionResult PayOffCollege(VMPay vm)
{
vm.viewname3 = "College";
vm.previewname = "/Course/OffColleges";
vm.viewname4 = GetConfig("fronturl") + "/Course/OffCollegePayReturn";
base.PayAll(vm);
return PayOff(vm);
}
public ActionResult PayOffTotal(VMPay vm)
{
vm.viewname3 = "Total";
vm.previewname = vm.previewname ?? "/Course/OffTotals";
vm.viewname4 = GetConfig("fronturl") + "/Course/OffTotalPayReturn";
base.PayAll(vm);
return PayOff(vm);
}
public ActionResult PayOffSpecial(VMPay vm)
{
vm.viewname3 = "Special";
vm.previewname = vm.previewname ?? "/Course/OffSpecials";
vm.viewname4 = GetConfig("fronturl") + "/Course/OffDetailPayReturn";
base.PayAll(vm);
return PayOff(vm);
}
public ActionResult PayOff(VMPay vm)
{
if (string.IsNullOrEmpty(vm.items) && !vm.ispayexam && !(vm.ispaycert && vm.payno > 0) && !vm.ispaycart)
{
return Redirect("/Course/Offs");
}
vm.viewname4 = vm.viewname4 ?? (GetConfig("fronturl") + "/Course/OffPayReturn");
vm.viewname6 = vm.viewname6 ?? (GetConfig("pginfomobile").Split('|')[0] + "/Course/OffPayReturn");
foreach (var d in vm.items.Split(';'))
{
var dd = d.Split(':');
if (dd[0] == "0")
{
vm.previewname = "/OffDetail?cmno=" + dd[1];
break;
}
}
//vm.previewname = vm.previewname ?? "/Course/Offs";
base.PayAll(vm);
return View("Pay",vm);
}
public ActionResult OffPayReturn(VMPay vm)
{
return PayReturn(vm);
}
public ActionResult OffCollegePayReturn(VMPay vm)
{
return PayReturn(vm);
}
public ActionResult OffTotalPayReturn(VMPay vm)
{
return PayReturn(vm);
}
public ActionResult OffSpecialPayReturn(VMPay vm)
{
return PayReturn(vm);
}
public ActionResult PayClose(VMPay vm)
{
vm.pginfo = GetConfig("pginfo");
return View(vm);
}
public ActionResult OnPayReturn(VMPay vm)
{
return PayReturn(vm);
}
public ActionResult OnCollegePayReturn(VMPay vm)
{
return PayReturn(vm);
}
public ActionResult OnBasePayReturn(VMPay vm)
{
return PayReturn(vm);
}
public ActionResult CoverPayReturn(VMPay vm)
{
return PayReturn(vm);
}
2020-10-30 17:30:09 +09:00
public ActionResult SmartSearch(VMCourse vm)
{
2020-12-07 13:52:37 +09:00
vm.ComCodes = GetComCodes("typeman,typejob,studyplace");
2020-10-30 17:30:09 +09:00
vm.CMsEtc = Dao.Get<CM>("cm.cgetc", new System.Collections.Hashtable() { { "cgcode", "2" } });//cgcode = 기타교육 // 기타교육 cgcode 바뀌면 파라미터도 변경해야함
2020-11-05 17:02:05 +09:00
2020-11-04 17:04:10 +09:00
if (vm.stringval == "0" || string.IsNullOrEmpty(vm.stringval))
{
vm.CMs = Dao.Get<CM>("cm.cms", new System.Collections.Hashtable() { { "ismaster", "1" }, { "cshape", vm.stringval2 }, { "typeman", vm.stringval3 }, { "typeedu", vm.stringval4 }, { "typegrade", vm.stringval5 }, { "typejob", vm.stringval6 } });
}
else if (vm.stringval == "1")
{
2020-11-06 18:41:15 +09:00
vm.CMs = Dao.Get<CM>("cm.cms", new System.Collections.Hashtable() { { "ismaster", "1" }, { "cshape", vm.stringval2 }, { "cgno", vm.stringval3 } });
2020-11-04 17:04:10 +09:00
}
2020-12-07 15:00:12 +09:00
vm.ComCodes2 = GetComCodes("typeman");
vm.ComCodes3 = GetComCodes("typeedu");
vm.ComCodes4 = GetComCodes("typegrade");
2020-12-07 13:52:37 +09:00
2020-12-07 15:00:12 +09:00
var typeman03 = vm.ComCodes2.Where(x => x.refcode == "03").FirstOrDefault() != null ? vm.ComCodes2.Where(x => x.refcode == "03").FirstOrDefault() : null;
var typeedu07 = vm.ComCodes3.Where(x => x.refcode == "07").FirstOrDefault() != null ? vm.ComCodes3.Where(x => x.refcode == "07").FirstOrDefault() : null;
if (vm.stringval3 == typeman03.ccode.ToString()) //기술인분류-발주청기술인일때 최초교육만 노출 //refcode = 03 =발주청기술인
2020-12-07 13:52:37 +09:00
{
2020-12-07 15:00:12 +09:00
vm.ComCodes3 = GetComCodes("typeedu").Where(x => x.refcode == "02").ToList(); //refcode = 02 = 최초교육
2020-12-07 13:52:37 +09:00
}
2020-12-07 15:00:12 +09:00
if (vm.stringval4 == typeedu07.ccode.ToString()) //교육목적-승급교육일땐 초급등급 삭제
2020-12-07 13:52:37 +09:00
{
2020-12-07 15:00:12 +09:00
vm.ComCodes4 = GetComCodes("typegrade").Where(x => x.refcode != "01").ToList(); //refcode = 01 = 초급교육
2020-12-07 13:52:37 +09:00
}
2020-10-30 17:30:09 +09:00
return View(vm);
}
2020-11-02 16:59:33 +09:00
public ActionResult ApplyEdu(VMCourse vm)
{
2020-11-06 18:04:55 +09:00
2020-11-05 17:02:05 +09:00
vm.CM = Dao.Get<CM>("cm.cms", new System.Collections.Hashtable() { { "cmno", vm.cmno } }).FirstOrDefault();
vm.CM.applicableCM = (vm.CM.quota - vm.CM.lectcnt <= 0) ? "대기접수" : "정상접수";
vm.CMInningscds = Dao.Get<CMinningscd>("cm.cminningscds.applyedu", new System.Collections.Hashtable() { { "cmno", vm.cmno },{"month", (vm.scdMonth == null)? DateTime.Now.Year : vm.scdMonth } });
foreach (var item in vm.CMInningscds)
{
item.scdInfoSummary = string.Format("[{0}] {1}",item.studyplacename, item.estart.ToString("yyyy년 MM월 dd일 ddd요일 HH:mm"));
}
2020-11-06 11:20:26 +09:00
vm.Assign = Dao.Get<Assign>("cm.assign.applyedu", new Hashtable() { { "userno", SUserInfo.UserNo } }).FirstOrDefault();
if (!string.IsNullOrEmpty(vm.Assign.MphoneFormat) && vm.Assign.MphoneFormat.IndexOf("-") >= 0)
{
string[] mphoneArr = vm.Assign.MphoneFormat.Split('-');
vm.Assign.mphone1 = mphoneArr.Length > 0 ? mphoneArr[0] : string.Empty;
vm.Assign.mphone2 = mphoneArr.Length > 1 ? mphoneArr[1] : string.Empty;
vm.Assign.mphone3 = mphoneArr.Length > 2 ? mphoneArr[2] : string.Empty;
}
if (!string.IsNullOrEmpty(vm.Assign.taxemail) && vm.Assign.taxemail.IndexOf("@") >= 0)
{
string[] taxemailArr = vm.Assign.taxemail.Split('@');
vm.Assign.taxemail1 = taxemailArr.Length > 0 ? taxemailArr[0] : string.Empty;
vm.Assign.taxemail2 = taxemailArr.Length > 1 ? taxemailArr[1] : string.Empty;
}
2020-11-06 18:04:55 +09:00
vm.FileList = new List<File>() { };
if (vm.Assign.fgnobno != null)
{
vm.FileList = GetFiles(vm.Assign.fgnobno.Value);
}
2020-11-06 11:20:26 +09:00
vm.User = Dao.Get<Users>("cm.user.applyedu", new Hashtable() { { "userno", SUserInfo.UserNo } }).FirstOrDefault();
if (!string.IsNullOrEmpty(vm.User.MobileFormat) && vm.User.MobileFormat.IndexOf("-") >= 0)
{
string[] mobileArr = vm.User.MobileFormat.Split('-');
vm.User.mobile1 = mobileArr.Length > 0 ? mobileArr[0] : string.Empty;
vm.User.mobile2 = mobileArr.Length > 1 ? mobileArr[1] : string.Empty;
vm.User.mobile3 = mobileArr.Length > 2 ? mobileArr[2] : string.Empty;
}
2020-11-06 18:04:55 +09:00
if (!string.IsNullOrEmpty(vm.User.userpno))
2020-11-06 11:20:26 +09:00
{
2020-11-06 18:04:55 +09:00
vm.User.userpno = vm.User.userpno.Replace("-","");
if (vm.User.userpno.Length == 13)
{
string userpnoString = string.Format("{0}-{1}", vm.User.userpno.Substring(0, 6), vm.User.userpno.Substring(6, 7));
string[] userpnoArr = userpnoString.Split('-');
vm.User.userpno1 = userpnoArr.Length > 0 ? userpnoArr[0] : string.Empty;
vm.User.userpno2 = userpnoArr.Length > 1 ? userpnoArr[1] : string.Empty;
}
2020-11-06 11:20:26 +09:00
}
if (!string.IsNullOrEmpty(vm.User.email) && vm.User.email.IndexOf("@") >= 0)
{
string[] emailArr = vm.User.email.Split('@');
vm.User.email1 = emailArr.Length > 0 ? emailArr[0] : string.Empty;
vm.User.email2 = emailArr.Length > 1 ? emailArr[1] : string.Empty;
}
2020-11-02 16:59:33 +09:00
return View(vm);
}
2020-11-12 16:28:05 +09:00
public ActionResult ApplyPay(VMCourse vm)
2020-11-02 16:59:33 +09:00
{
2020-11-26 13:49:56 +09:00
if (vm.payno > 0)
2020-11-12 16:28:05 +09:00
{
2020-11-26 13:49:56 +09:00
//신청대기 => 승인 => 결제진입
//유효성 검증
vm.PPLog = Dao.Get<PPLog>("pay.pplogs.bypay", new Hashtable() { { "payno", vm.payno }, { "userno", SUserInfo.UserNo } }).FirstOrDefault();
if (vm.PPLog == null || vm.PPLog.pstatus != 21)
{
return Redirect("/");
}
vm.pplno = vm.PPLog.pplno;
vm.cmno = vm.PPLog.cmno;
2020-11-12 16:28:05 +09:00
}
2020-11-26 13:49:56 +09:00
else
2020-11-12 16:28:05 +09:00
{
2020-11-26 13:49:56 +09:00
if (vm.pplno < 1)
2020-11-12 16:28:05 +09:00
{
2020-11-26 13:49:56 +09:00
return Redirect("/");
}
vm.PPLog = Dao.Get<PPLog>("pay.pplogs", new Hashtable() { { "pplno", vm.pplno }, { "userno", SUserInfo.UserNo } }).FirstOrDefault();
if (vm.PPLog == null)
2020-11-24 17:34:18 +09:00
{
2020-11-26 13:49:56 +09:00
return Redirect("/");
2020-11-24 17:34:18 +09:00
}
2020-11-26 13:49:56 +09:00
else if (vm.PPLog.payno > 0 && vm.PPLog.pstatus > 0)
2020-11-12 16:28:05 +09:00
{
2020-11-26 13:49:56 +09:00
//새로고침?
return RedirectPermanent("/Course/ApplyComplete?payno=" + vm.PPLog.payno);
}
if (vm.PPLog.isready == 1)
2020-11-12 16:28:05 +09:00
{
2020-11-26 13:49:56 +09:00
//대기접수로 결제 및 신청데이터 생성
var payitems = new List<PayItem>() { };
var uip = GetUserIP();
payitems.Add(new PayItem()
{
itemno = vm.PPLog.cmno,
userno = SUserInfo.UserNo,
status = 6,
pstatus = 55,
pcnt = 1,
payamt = 0,
isrebate = vm.PPLog.isrebate ?? 0,
rbank = vm.PPLog.rbankname,
rbankaccnum = vm.PPLog.rbankacc,
tbankuser = vm.PPLog.rbankowner,
isready = 1,
cmisno = vm.PPLog.cmisno,
uno = SUserInfo.UserNo,
uip = uip
});
//정가확인
var cms = Dao.Get<CM>("cm.cms.forpay", new Hashtable() { { "userno", SUserInfo.UserNo }, { "cmno", vm.PPLog.cmno } });
if (cms.First().lectnocheck > 0)
{
return RedirectPermanent("/?isalreadyreq=1");
}
var pi = payitems.First();
pi.orgamt = cms.Where(w => w.cmno == pi.itemno).First().fee;
var pay = new Pay()
{
pplno = vm.pplno,
ptype = 0,
userno = SUserInfo.UserNo,
pstatus = 55,
rstatus = 0,
refunding = 0,
orgamt = cms.Sum(s => s.fee),
//isinmoney = 1,
payamt = payitems.Sum(s => s.payamt),
PIs = payitems,
cmnos = string.Join(",", payitems.Select(s => s.itemno)),
uno = SUserInfo.UserNo,
uip = GetUserIP()
};
Dao.SavePay(pay, true);
if (pay.payno > 0)
{
return RedirectPermanent("/Course/ApplyComplete?payno=" + pay.payno);
}
return Redirect("/");
2020-11-12 16:28:05 +09:00
}
}
2020-11-16 17:42:59 +09:00
vm.CM = Dao.Get<CM>("cm.cms", new System.Collections.Hashtable() { { "cmno", vm.PPLog.cmno } }).First();
vm.User = Dao.Get<Users>("users.users", new System.Collections.Hashtable() { { "userno", SUserInfo.UserNo } }).First();
2020-11-24 17:34:18 +09:00
vm.viewname4 = "/Course/OnPayReturn";
2020-11-12 16:28:05 +09:00
return View(vm);
}
2020-11-24 17:34:18 +09:00
public ActionResult ApplyComplete(VMPay vm)
2020-11-12 16:28:05 +09:00
{
if (vm.payno < 1)
2020-11-06 14:20:19 +09:00
{
2020-11-12 16:28:05 +09:00
return Redirect("/");
2020-11-06 14:20:19 +09:00
}
2020-11-12 16:28:05 +09:00
vm.PayItem = Dao.Get<PayItem>("pay.payresult", new Hashtable() { { "payno", vm.payno }, { "userno", SUserInfo.UserNo } }).First();
vm.CM = Dao.Get<CM>("cm.cms", new System.Collections.Hashtable() { { "cmno", vm.PayItem.itemno } }).FirstOrDefault();
2020-11-24 17:34:18 +09:00
vm.Pay = Dao.Get<Pay>("pay.pay", new System.Collections.Hashtable() { { "payno", vm.payno }, { "userno", SUserInfo.UserNo } }).FirstOrDefault();
if (vm.Pay.isready == 1)
{
vm.Pay.ccount = Dao.Get<int?>("pay.lectready", vm.CM.cmno).FirstOrDefault() ?? 1;
}
vm.Pay.payresult = "1:결제완료";
2020-11-16 17:42:59 +09:00
return View(vm);
}
public ActionResult XpayREQ(VMPay vm)
{
ViewBag.ismain = true;
string configPath = GetConfig("lgdacomConfigPath");
string CST_PLATFORM = GetConfig("CST_PLATFORM");
string CST_MID = GetConfig("CST_MID");
string LGD_MID = (("test".Equals(CST_PLATFORM.Trim())) ? "t" : "") + CST_MID;
string LGD_TIMESTAMP = "";
string LGD_HASHDATA = "";
string LGD_OID = Request["LGD_OID"];
string LGD_AMOUNT = Request["LGD_AMOUNT"];
vm.payParams = new Hashtable();
vm.payParams.Add("CST_PLATFORM", CST_PLATFORM);
vm.payParams.Add("CST_MID", CST_MID);
vm.payParams.Add("LGD_MID", LGD_MID);
vm.payParams.Add("LGD_OID", LGD_OID);
vm.payParams.Add("LGD_BUYER", Request["LGD_BUYER"]);
vm.payParams.Add("LGD_PRODUCTINFO", Request["LGD_PRODUCTINFO"]);
vm.payParams.Add("LGD_AMOUNT", LGD_AMOUNT);
vm.payParams.Add("LGD_BUYEREMAIL", Request["LGD_BUYEREMAIL"]);
vm.payParams.Add("LGD_RETURNURL", (GetConfig("fronturl") + "/Course/XpayReturnURL"));
vm.payParams.Add("LGD_ENCODING", GetConfig("LGD_ENCODING"));
vm.payParams.Add("LGD_ENCODING_NOTEURL", GetConfig("LGD_ENCODING"));
vm.payParams.Add("LGD_ENCODING_RETURNURL", GetConfig("LGD_ENCODING"));
vm.payParams.Add("LGD_BACKBTN_YN", GetConfig("LGD_BACKBTN_YN"));
vm.payParams.Add("LGD_CASNOTEURL", GetConfig("LGD_CASNOTEURL"));
vm.payParams.Add("LGD_AUTOFILLYN_BUYER", GetConfig("LGD_AUTOFILLYN_BUYER"));
vm.payParams.Add("LGD_ESCROW_USEYN", GetConfig("LGD_ESCROW_USEYN"));
2020-11-24 17:34:18 +09:00
2020-11-16 17:42:59 +09:00
vm.payParams.Add("LGD_DOMAIN_URL", "xpayvvip");
vm.payParams.Add("LGD_CUSTOM_PROCESSTYPE", "TWOTR");
2020-11-24 17:34:18 +09:00
//vm.payParams.Add("LGD_CASHRECEIPTYN", GetConfig("LGD_CASHRECEIPTYN"));
vm.payParams.Add("LGD_CASHRECEIPTYN", "N");
2020-11-16 17:42:59 +09:00
if (Request["ptype"] == "3")
{
2020-11-24 17:34:18 +09:00
if (Request["iscashrct"] == "1")
{
vm.payParams["LGD_CASHRECEIPTYN"] = "Y";
vm.payParams.Add("LGD_DEFAULTCASHRECEIPTUSE", "1");
vm.payParams.Add("LGD_CASHRECEIPTUSE", "1");
vm.payParams.Add("LGD_CASHRECEIPTNUM", "1");
vm.payParams.Add("LGD_CASHCARDNUM", Request["cashrcthp"]);
}
2020-11-16 17:42:59 +09:00
vm.payParams.Add("LGD_CLOSEDATE", Request["LGD_CLOSEDATE"]);
}
String OSTYPE = Request["LGD_OSTYPE_CHECK"];
vm.payParams.Add("LGD_OSTYPE_CHECK", OSTYPE);
vm.payParams.Add("LGD_CUSTOM_SWITCHINGTYPE", Request["LGD_CUSTOM_SWITCHINGTYPE"]);
vm.payParams.Add("LGD_VERSION", Request["LGD_VERSION"]);
vm.payParams.Add("LGD_CUSTOM_SKIN", Request["LGD_CUSTOM_SKIN"]);
if (OSTYPE == "P")
{
vm.payParams.Add("LGD_WINDOW_TYPE", Request["LGD_WINDOW_TYPE"]);
vm.payParams.Add("LGD_CUSTOM_USABLEPAY", Request["LGD_CUSTOM_USABLEPAY"]);
}
else if (OSTYPE == "M")
{
vm.payParams.Add("CST_WINDOW_TYPE", Request["CST_WINDOW_TYPE"]);
vm.payParams.Add("LGD_PCVIEWYN", Request["LGD_PCVIEWYN"]);
vm.payParams.Add("LGD_CUSTOM_FIRSTPAY", Request["LGD_CUSTOM_FIRSTPAY"]);
//iOS 연동시 필수
vm.payParams.Add("LGD_MPILOTTEAPPCARDWAPURL", ""); //iOS 롯데앱카드 스키마 등록
/*
****************************************************
* ISP(/BC) - BEGIN
****************************************************
*/
vm.payParams.Add("LGD_KVPMISPWAPURL", "");
vm.payParams.Add("LGD_KVPMISPCANCELURL", "");
/*
****************************************************
* ISP(/BC) - END
****************************************************
*/
/*
****************************************************
* - BEGIN
****************************************************
*/
vm.payParams.Add("LGD_MTRANSFERWAPURL", "");
vm.payParams.Add("LGD_MTRANSFERCANCELURL", "");
/*
****************************************************
* - END
****************************************************
*/
/*
****************************************************
* OS별 ISP(/),
****************************************************
- : A ()
- iOS: N
- iOS일 , N으로
*/
vm.payParams.Add("LGD_KVPMISPAUTOAPPYN", Request["LGD_KVPMISPAUTOAPPYN"]);
vm.payParams.Add("LGD_MTRANSFERAUTOAPPYN", Request["LGD_MTRANSFERAUTOAPPYN"]);
}
// (1) XpayClient의 사용을 위한 xpay 객체 생성
XPayClient xpay = new XPayClient();
// (2) Init: XPayClient 초기화(환경설정 파일 로드)
// configPath: 설정파일
// CST_PLATFORM: - test, service 값에 따라 lgdacom.conf의 test_url(test) 또는 url(srvice) 사용
// - test, service 값에 따라 테스트용 또는 서비스용 아이디 생성
xpay.Init(configPath, CST_PLATFORM);
/*
*************************************************
* 2. MD5 ( ) - BEGIN
*
* MD5 .
*************************************************
*/
try
{
// (3) Init_TX: 메모리에 mall.conf, lgdacom.conf 할당 및 트랜잭션의 고유한 키 TXID 생성
xpay.Init_TX(LGD_MID);
LGD_TIMESTAMP = xpay.GetTimeStamp();
LGD_HASHDATA = xpay.GetHashData(LGD_MID, LGD_OID, LGD_AMOUNT, LGD_TIMESTAMP);
}
catch (Exception err)
{
//LGD_HASHDATA 추출 오류
SetError(err.Message);
return null;
}
/*
*************************************************
* 2. MD5 ( ) - END
*************************************************
*/
vm.payParams.Add("LGD_TIMESTAMP", LGD_TIMESTAMP);
vm.payParams.Add("LGD_HASHDATA", LGD_HASHDATA);
//수정 불가 ( 인증 후 자동 셋팅 )
vm.payParams.Add("LGD_RESPCODE", "");
vm.payParams.Add("LGD_RESPMSG", "");
vm.payParams.Add("LGD_PAYKEY", "");
//nptech 추가 파라미터
vm.payParams.Add("items", Request["items"]);
2020-11-24 17:34:18 +09:00
vm.payParams.Add("pplno", Request["pplno"]);
2020-11-16 17:42:59 +09:00
vm.payParams.Add("rsMsg", "");
Session.Add("PAYREQ_MAP", vm.payParams);
return View(vm);
}
public ActionResult XpayReturnURL(VMPay vm)
{
ViewBag.ismain = true;
String LGD_RESPCODE = Request["LGD_RESPCODE"];
String LGD_RESPMSG = Request["LGD_RESPMSG"];
//S053 사용자가 결제를 취소했습니다.
vm.payParams = new Hashtable();
vm.payParams = (Hashtable)Session["PAYREQ_MAP"];
vm.payParams.Remove("LGD_RESPCODE");
vm.payParams.Remove("LGD_RESPMSG");
vm.payParams.Add("LGD_RESPCODE", LGD_RESPCODE);
vm.payParams.Add("LGD_RESPMSG", LGD_RESPMSG);
if (LGD_RESPCODE == "0000")
{
vm.payParams.Remove("LGD_PAYKEY");
vm.payParams.Add("LGD_PAYKEY", Request["LGD_PAYKEY"]);
}
else
{
vm.payParams.Remove("rsMsg");
vm.payParams.Add("rsMsg", "[" + LGD_RESPCODE + "]" + LGD_RESPMSG);
SetError("[" + LGD_RESPCODE + "]" + LGD_RESPMSG);
}
2020-11-02 16:59:33 +09:00
return View(vm);
}
2020-11-04 17:04:10 +09:00
2020-10-12 14:39:23 +09:00
}
}