<기능개선>

1. PMS NO : {5791}
2. (주요)작업내용 
(1) BO/BO.csproj
 - System.Net.Http.Formatting dll 버젼 변경
 - BO/Controllers/ccController.cs exelboard = 작업진행중입니다
 - BO/Controllers/ccController.cs homesemployess = 관리자하위메뉴설정 직원게시판입니다.(추가)
 - BO/Controllers/ccController.cs homer2 = 직원게시판에 게시글등록버튼 컨트롤입니다.(추가)
 - BO/packages.config = 번저변경
 - BO/Views/cc/homer2.cshtml = 직원게시물등록 뷰페이지입니다.
 - BO/Views/cc/homesemployess.cshtml== 직원게시물등록목록 뷰페이지입니다.
 - BO/Views/Shared/_Layout.cshtml = 메뉴(직원게시판)를 추가하였지만 지웠습니다
This commit is contained in:
ksjihd163 2022-04-19 07:51:03 +00:00
parent 8cfa0669b6
commit 73d2c1b5de
6 changed files with 495 additions and 9 deletions

View File

@ -98,8 +98,8 @@
<Reference Include="System.Data" /> <Reference Include="System.Data" />
<Reference Include="System.Data.DataSetExtensions" /> <Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Drawing" /> <Reference Include="System.Drawing" />
<Reference Include="System.Net.Http.Formatting, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> <Reference Include="System.Net.Http.Formatting, Version=5.2.8.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll</HintPath> <HintPath>..\packages\Microsoft.AspNet.WebApi.Client.5.2.8\lib\net45\System.Net.Http.Formatting.dll</HintPath>
</Reference> </Reference>
<Reference Include="System.Web.DynamicData" /> <Reference Include="System.Web.DynamicData" />
<Reference Include="System.Web.Entity" /> <Reference Include="System.Web.Entity" />
@ -698,6 +698,9 @@
<Content Include="Views\user\editinfo.cshtml" /> <Content Include="Views\user\editinfo.cshtml" />
<Content Include="Views\Shared\Partial\ScdScript2.cshtml" /> <Content Include="Views\Shared\Partial\ScdScript2.cshtml" />
<Content Include="Views\Shared\Partial\MobileChk.cshtml" /> <Content Include="Views\Shared\Partial\MobileChk.cshtml" />
<Content Include="Views\cc\homesemployess.cshtml" />
<Content Include="Views\cc\exelboard.cshtml" />
<Content Include="Views\cc\homer2.cshtml" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Folder Include="App_Data\" /> <Folder Include="App_Data\" />

View File

@ -44,6 +44,49 @@ namespace NP.BO.Controllers
} }
return View(vm); return View(vm);
} }
/*덕이 엑셀*/
public ActionResult exelboard()
{
return View();
}
/*덕이 엑셀기록*/
/*덕이...*/
public ActionResult homesemployess(NP.Model.VMCC vm)
{
vm.Boards = InitM<Board>();
var ht = SetHash(vm);
if (SUserInfo.IsSiteAdmin)
{
vm.stringval = SUserInfo.ASNo.ToString();
vm.IsSiteAdmin = SUserInfo.IsSiteAdmin;
}
else
{
vm.Assigns = Dao.Get<Assign>("users.assigns", new System.Collections.Hashtable() { { "issite", 1 } });
}
vm.BMs = Dao.Get<BoardMaster>("board.bms", new System.Collections.Hashtable() { { "asno", vm.stringval }, { "bmposition", 0 }, { "isdefaults", string.IsNullOrEmpty(vm.stringval) ? "0,2" : "3" } });
vm.BMOs = new List<BoardMasterOpening>() { };
if (!string.IsNullOrEmpty(vm.stringval2))
{
vm.BMOs = Dao.Get<BoardMasterOpening>("board.bmos", GetInt(vm.stringval2));
}
ht.Add("bmno", "21");
//ht.Add("opno", vm.stringval3);
//ht.Add("scc", vm.stringval4);
vm.Boards = Dao.Get<Board>("board.bs", ht);
vm.pagetotalcount = GetCount(vm.Boards.FirstOrDefault());
if (vm.Boards.Count() > 0)
{
vm.Boards2 = Dao.Get<Board>("board.bcmt.cnt", new System.Collections.Hashtable() { { "bnos", string.Join(",", vm.Boards.Select(s => s.bno)) } });
foreach (var d in vm.Boards)
{
d.ccount = vm.Boards2.Where(w => w.bno == d.bno).First().ccount;
}
}
return View(vm);
}
/*덕이꺼 끝*/
public ActionResult homes(NP.Model.VMCC vm) public ActionResult homes(NP.Model.VMCC vm)
{ {
vm.Boards = InitM<Board>(); vm.Boards = InitM<Board>();
@ -79,6 +122,72 @@ namespace NP.BO.Controllers
} }
return View(vm); return View(vm);
} }
//이거 숙제라고 하셨사와용
/*public ActionResult cmmasters(NP.Model.VMCM vm)
{
vm.viewidx = 1;
vm.viewname = "cmmasterreg";
vm.listviewname = "cmmasters";
return homes(vm);
}*/
/*덕이 직원게시판 등록*/
public ActionResult homer2(NP.Model.VMCC vm)
{
if (vm.Board != null && vm.Board.pbno != null)
{
vm.Board.isopen = 1;
}
else
{
vm.Board = new Board() { isopen = 1 };
}
if (SUserInfo.IsSiteAdmin)
{
vm.IsSiteAdmin = SUserInfo.IsSiteAdmin;
}
vm.BMs = new List<BoardMaster>() { };
vm.FileList = new List<File>() { };
vm.BMOs = new List<BoardMasterOpening>() { };
vm.BoardCMTs = new List<BoardCMT>() { };
if (vm.longval > 0 && vm.Board.pbno == null)
{
vm.Board = Dao.Get<Board>("board.get", vm.longval).First();
var fgnos = "";
if (vm.Board.fgnothumb != null)
{
fgnos += "," + vm.Board.fgnothumb;
}
if (vm.Board.fgno != null)
{
fgnos += "," + vm.Board.fgno;
}
if (fgnos != "")
{
vm.FileList = GetFiles(fgnos.Substring(1));
}
if (vm.Board.isuseopening == 1)
{
vm.BMOs = Dao.Get<BoardMasterOpening>("board.bmos", vm.Board.bmno);
}
vm.BoardCMTs = Dao.Get<BoardCMT>("board.boardcmts", vm.Board.bno);
}
else
{
vm.BMs = Dao.Get<BoardMaster>("board.bms", new System.Collections.Hashtable() { { "asno", vm.stringval }, { "bmposition", 0 }, { "isdefaults", "0,2,3" } });
}
if (vm.Board.pbno != null)
{
vm.BoardP = Dao.Get<Board>("board.get", vm.Board.pbno.Value).First();
if (vm.Board != null)
{
vm.Board.issecr = vm.BoardP.issecr;
}
}
vm.SCUserName = SUserInfo.UserName;
return View(vm);
}
/*덕이 직원게시판 등록 끝*/
public ActionResult homer(NP.Model.VMCC vm) public ActionResult homer(NP.Model.VMCC vm)
{ {
if (vm.Board != null && vm.Board.pbno != null) if (vm.Board != null && vm.Board.pbno != null)

View File

@ -58,6 +58,10 @@
} }
var maxupsize = 1024000000; var maxupsize = 1024000000;
</script> </script>
@* 하위 덕이에스크립트*@
<script type="text/javascript">
</script>
</head> </head>
<body class="mainbody sitebody"> <body class="mainbody sitebody">
<section class="vbox"> <section class="vbox">
@ -115,13 +119,13 @@
<ul class="nav"> <ul class="nav">
@if (ViewBag.SSUserType == 91) //통합관리자만 @if (ViewBag.SSUserType == 91) //통합관리자만
{ {
<li class="@(ViewBag.IsHome ? "active" : "") depth1 homelink"><a href="/" class="@(ViewBag.IsHome ? "active" : "")"><i class="fa fa-dashboard icon"><b class="bg-danger"></b></i><span>Home</span></a></li> <li class="@(ViewBag.IsHome ? "active" : "") depth1 homelink"><a href="/" class="@(ViewBag.IsHome ? "active" : "")"><i class="fa fa-dashboard icon"><b class="bg-danger"></b></i><span>Home</span></a></li>
} }
@foreach (var m in ((List<NP.Model.Menu>)ViewBag.Menus).Where(w => w.menuurl != "/" && w.menulevel == 1 && w.ishid < 1).ToList()) @foreach (var m in ((List<NP.Model.Menu>)ViewBag.Menus).Where(w => w.menuurl != "/" && w.menulevel == 1 && w.ishid < 1).ToList())
{ {
liindex++; liindex++;
var ms = ((List<NP.Model.Menu>)ViewBag.Menus).Where(w => w.pmenuno == m.menuno && w.ishid < 1).ToList(); var ms = ((List<NP.Model.Menu>)ViewBag.Menus).Where(w => w.pmenuno == m.menuno && w.ishid < 1).ToList();
<li class="depth@(m.menulevel) @(pmenus.Contains("/" + m.menuno + "/") ? "active" : "")"> <li class="depth@(m.menulevel) @(pmenus.Contains("/" + m.menuno + "/") ? "active" : "")">
@*<a href="@((ms.FirstOrDefault()??new NP.Model.Menu() { }).menuurl)" class="@(pmenus.Contains("/" + m.menuno + "/") ? "active" : "")">*@ @*<a href="@((ms.FirstOrDefault()??new NP.Model.Menu() { }).menuurl)" class="@(pmenus.Contains("/" + m.menuno + "/") ? "active" : "")">*@
<a href="#" class="@(pmenus.Contains("/" + m.menuno + "/") ? "active" : "")"> <a href="#" class="@(pmenus.Contains("/" + m.menuno + "/") ? "active" : "")">
<i class="fa fa-@(liindex == 1 ? "bell" : liindex == 2 ? "user" : liindex == 3 ? "users" : liindex == 4 ? "file-text" : liindex == 5 ? "calendar" : liindex == 6 ? "bullhorn" : liindex == 7 ? "wrench" : liindex == 8 ? "krw" : "circle") icon"><b class="bg-dark"></b></i> <i class="fa fa-@(liindex == 1 ? "bell" : liindex == 2 ? "user" : liindex == 3 ? "users" : liindex == 4 ? "file-text" : liindex == 5 ? "calendar" : liindex == 6 ? "bullhorn" : liindex == 7 ? "wrench" : liindex == 8 ? "krw" : "circle") icon"><b class="bg-dark"></b></i>
@ -140,7 +144,9 @@
} }
</ul> </ul>
</li> </li>
} }
</ul> </ul>
<div style="height: 100px;">&nbsp;</div> <div style="height: 100px;">&nbsp;</div>
</nav> </nav>
@ -259,6 +265,6 @@
} }
}); });
</script> </script>
</body> </body>
</html> </html>

280
BO/Views/cc/homer2.cshtml Normal file
View File

@ -0,0 +1,280 @@

@{
ViewBag.Title = "homer2";
}
@model NP.Model.VMCC
<div class="row mgclear" id="regbox">
<form id="mform" method="post" enctype="multipart/form-data" class="form-horizontal">
<section class="panel panel-default">
<div class="panel-body">
@if (Model.Board.pbno != null)
{
<div class="form-group">
<label class="col-sm-4 col-md-2 control-label">원본글</label>
<div class="col-sm-8 col-md-10">
<p class="form-control-static">@Model.BoardP.bmname > @(Model.BoardP.opname ?? "-") > @Model.BoardP.subject</p>
</div>
<div class="line line-dashed line-lg pull-in"></div>
<label class="col-sm-4 col-md-2 control-label">내용</label>
<div class="col-sm-8 col-md-10">
@Html.TextAreaFor(m => m.BoardP.contentstext, new { @class = "form-control", @readonly = "readonly", @style = "resize: none; width: 90%; height: 120px; padding: 3px 5px;" })
</div>
</div>
<div class="line line-dashed line-lg pull-in"></div>
}
else
{
<div class="form-group">
<label class="col-sm-4 col-md-2 control-label req">게시판</label>
<div class="col-sm-8 col-md-10">
@if (Model.Board.bno < 1 && Model.Board.pbno == null)
{
@*<select id="Board_bmno" name="Board.bmno" class="form-control disp-init" style="width: auto">
<option value="">-게시판선택</option>
@foreach (var bm in Model.BMs)
{
<option data-bmtype="@bm.bmtype" data-disptype="@bm.disptype" value="@bm.bmno">@bm.bmname@(bm.asname == null ? "" : string.Format(" ({0})", bm.asname)) (@bm.bmcode)</option>
}
</select>*@
<input type="hidden" id="Board_bmno" name="Board.bmno" value="21">
}
else
{
@Html.HiddenFor(m => m.Board.bmno)
@Model.Board.bmname
}
@if (Model.Board.bno < 1 || Model.Board.pbno == null)
{
@Html.Partial("./Partial/Select", Model.BMOs, new ViewDataDictionary { { "special", "reg" }, { "name", "Board.opno" }, { "selected", Model.Board.opno }, { "df", ":-말머리선택" }, { "class", "disp-init" } })
}
</div>
</div>
}
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
<label class="col-sm-4 col-md-2 control-label req" id="lbltitle">@(Model.Board.bno > 0 && Model.Board.disptype == 1? "Question" : "제목")</label>
<div class="col-sm-8 col-md-10">
@Html.TextBoxFor(m => m.Board.subject, new { @class = "form-control ff", @maxlength = "100" })
<div style="@((Model.Board.bno > 0 && Model.Board.bmtype == 2) ||(Model.Board.pbno != null && Model.BoardP.bmtype == 2) ? "display:none":"")" id="hidebm2">
<label><input type="checkbox" name="Board.issecr" value="1" @(Model.Board.issecr == 1 ? "checked" : "") /> 비밀글</label>
@if (Model.Board.pbno == null)
{
<label><input type="checkbox" name="Board.istop" value="1" @(Model.Board.istop == 1 ? "checked" : "") /> 상단고정</label>
}
</div>
</div>
</div>
@*<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
<label class="col-sm-4 col-md-2 control-label">썸네일이미지</label>
<div class="col-sm-8 col-md-10">
@Html.Partial("./Partial/File", Model.FileList.Where(w=>w.fgno == Model.Board.fgnothumb).ToList(), new ViewDataDictionary {
{ "name", "Board.fgnothumb" },{"value", Model.Board.fgnothumb },{ "fname", "fgnothumb"},
{"width", null },{"table", "board" },{ "column", "fgnothumb"},{"filecount", 1 },
{"readmode", 0 },{"hidemode", 1 },
{ "isimage", 1 },{ "imageid", "fgnothumb" },{ "dftsrc", "/img/common/profile_sample.jpg" },
{ "fileext", "" }, { "loginfo",Model.Board.bno+"|9"}
})
<br />
<img id="fgnothumb" src="@(Model.FileList.Where(w=>w.fgno == Model.Board.fgnothumb).Count() > 0 && !string.IsNullOrEmpty(Model.FileList.Where(w=>w.fgno == Model.Board.fgnothumb).First().fileurl) ? string.Format("{0}{1}", Model.Files, Model.FileList.Where(w=>w.fgno == Model.Board.fgnothumb).First().fileurl) : "/img/common/profile_sample.jpg")" style="max-width: 100px; max-height: 50px; border-radius: 5px;" />
</div>
</div>*@
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
<label class="col-sm-4 col-md-2 control-label req" id="lblcontents">@(Model.Board.bno > 0 && Model.Board.disptype == 1 ? "Answer" : "내용")</label>
<div class="col-sm-8 col-md-10">@Html.TextAreaFor(m => m.Board.contents, new { @class = "form-control", @style = "resize: none; width: 90%; height: 120px; padding: 3px 5px;" })</div>
</div>
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
<label class="col-sm-4 col-md-2 control-label">첨부파일</label>
<div class="col-sm-8 col-md-10">
@Html.Partial("./Partial/File", Model.FileList.Where(w => w.fgno == Model.Board.fgno).ToList(), new ViewDataDictionary {
{ "name", "Board.fgno" },{"value", Model.Board.fgno },{ "fname", "fgno"},
{"width", null },{"table", "board" },{ "column", "fgno"},{"filecount", 10 },
{"readmode", 0 },{"hidemode", 0 },
{ "isimage", 0 }, { "fileext", "" }})
</div>
</div>
<div class="line line-dashed line-lg pull-in"></div><div class="form-group">
<label class="col-sm-4 col-md-2 control-label">공개여부</label>
<div class="col-sm-8 col-md-10">@Html.Partial("./Partial/Radio", null, new ViewDataDictionary() { { "valuetext", "1:예;0:아니오" }, { "checked", Model.Board.isopen }, { "name", "Board.isopen" } })</div>
</div>
</div>
</section>
<section id="commentsection" class="panel panel-default" style="@(Model.Board.bno < 1 || Model.Board.isreply == 0 || Model.Board.isopen == 0 ? "display: none;":"")">
<header class="panel-heading"><strong><i class="fa fa-bars"></i> 댓글관리<span class=""></span></strong></header>
<div style="padding: 10px;">
<input id="cmt" class="form-control disp-init cmt" />
<a href="#" class="btn btn-select" style="line-height: 50px; vertical-align: top; padding: 0 7px;" onclick="savecmt()"><i class="fa fa-save"></i> 댓글저장</a>
</div>
<ul id="ulcmt">
@foreach (var c in Model.BoardCMTs)
{
<li data-no="@c.bcno">@c.cnoname | @c.cdtymdhm<br /><input class="form-control disp-init cmt cmtinput" value="@c.ctext" /> <a href="#" class="cmtbtn cmtup"><i class="fa fa-save"></i></a> <a class="cmtbtn cmtdel" href="#"><i class="fa fa-trash-o"></i></a></li>
}
</ul>
</section>
<div class="botfixempty">&nbsp;</div>
<div class="form-group botfix">
@if (Model.Board.bno > 0)
{
if (Model.Board.pbno == null && Model.Board.istop == 0 && Model.Board.bmtype > 0 && Model.Board.ccount < 1 && Model.Board.disptype != 1)
{
<a href="#" class="btn btn-info" onclick="reply();">답글</a>
}
<a href="#" class="btn btn-danger" onclick="del();">삭제</a>
}
<a href="#" class="btn btn-primary" onclick="save();">저장</a>
<a href="homesemployess" class="btn btn-default" onclick="golist();">목록</a>
</div>
@Html.HiddenFor(m => m.longval)
@Html.HiddenFor(m => m.Board.bno)
@Html.HiddenFor(m => m.Board.pbno)
</form>
</div>
<form id="dform" method="post" action="/cc/homes">
<input type="hidden" id="pbno" name="Board.pbno" />
@Html.Partial("./Partial/DForm", Model, new ViewDataDictionary { { "preform", 1 } })
</form>
@section styles{
@Html.Partial("./Partial/Summernotestyle")
<style type="text/css">
#ulcmt {
padding: 10px 20px;
}
#ulcmt li {
border: 1px solid #ddd;
padding: 5px 10px;
margin-bottom: 3px;
}
.cmt {
width: 500px;
height: 50px;
resize: none;
}
.cmtbtn {
font-size: 30px;
line-height: 50px;
margin-top: -30px;
}
</style>
}
@section scriptsHeader{
@Html.Partial("./Partial/FileScript")
@Html.Partial("./Partial/Summernote")
}
@section scripts{
<script>
$(document).ready(function () {
$("#Board_bmno").on("change", function () {
$("#Board_opno option:gt(0)").remove();
sett("lbltitle", "제목");
sett("lblcontents", "내용");
if ($(this).val() != "") {
if ($('option:selected', this).attr('data-disptype') == "1") {
sett("lbltitle", "Question");
sett("lblcontents", "Answer");
}
_binddataid = "Board_opno";
capp("/acommon/boardmasteropeningget", { bmno: $(this).val() }, "binddata");
}
$("#hidebm2").show();
if ($('option:selected', this).attr('data-bmtype') == "2") {
$("#hidebm2").hide();
}
});
$('#Board_contents').summernote({
height: 150,
tabsize: 2,
callbacks: {
onImageUpload: function (files, editor, welEditable) {
var fdata = new FormData();
fdata.append('img', files[0]);
fdata.append('fd', "Editor");
uploadeditorimage(files, this, fdata, "cbeditorupload()");
}
}
});
$("body").on("click", "a.cmtup", function () {
capp("/acommon/boardcmtsave", { bcno: $(this).closest("li").attr("data-no"), ctext: $(this).closest("li").find("input").val() }, "cbcmtup");
});
$("body").on("click", "a.cmtdel", function () {
_cmtdelli = $(this).closest("li");
capp("/acommon/boardcmtsave", { bcno: $(this).closest("li").attr("data-no"), isdel: 1 }, "cbcmtdel");
});
$('input[name="Board.isopen"]').change(function () {
if ($("#Board_isopen1").prop("checked")) {
$("#commentsection").attr("style", "");
} else if ($("#Board_isopen0").prop("checked")) {
$("#commentsection").attr("style", "display: none;");
}
});
});
var _cmtdelli;
function reply() {
setv("pbno", @Model.Board.bno);
$("#dform").attr("action", "/cc/homer2");
bglayer();
submit("dform");
}
function save() {
var cdata = $('#Board_contents').summernote('code');
cdata = cdata == "<p><br></p>" ? "" : cdata;
$("#Board_contents").val(cdata);
if (@(Model.Board.pbno??0) == 0 && check("Board_bmno", null, "게시판을 선택해주세요.")) { }
else if (@(Model.Board.pbno??0) == 0 && $("#Board_opno option").length > 1 && check("Board_opno", null, "말머리를 선택해주세요.")) { }
else if (check("Board_subject", null, "제목을 입력해주세요.")) { }
else if (getBytes(val("Board_contents")) < 1) { $('#Board_contents').summernote('focus'); alert("내용을 입력하세요."); }
else if (confirm("저장하시겠습니까?")) {
capfileform("/acommon/boardsave", "mform", "cbsave");
}
}
function cbsave() {
if (capResult.code == 1000) {
if ('@(Model.Board.bno)' == '0') {
setv("dform_longval", capResult.obj);
}
msgok(1, null, true);
$("#dform").attr("action", "/cc/homer2");
submit("dform", 500);
}
else { msgdev(); }
}
function del() {
if (confirm("삭제하시겠습니까?")) {
capp("/acommon/boarddel", { bno: @Model.Board.bno}, "cbdel");
}
}
function cbdel() {
if (capResult.code == 1000) {
msgok(0, null, true);
$("#dform").attr("action", "/cc/homes");
submit("dform", 500);
}
}
function savecmt() {
if (getBytes(val("cmt")) < 1) {
focus("cmt"); msg("댓글을 입력후 저장해주세요.");
} else {
capp("/acommon/boardcmtsave", {bno: @Model.Board.bno, ctext: val("cmt") }, "cbsavecmt");
}
}
function cbsavecmt() {
if (capResult.code == 1000) {
$("#ulcmt").prepend("<li data-no=\"" + capResult.obj + "\">@(Model.SCUserName) | " + capResult.msg + "<br /><input class=\"form-control disp-init cmt cmtinput\" value=\"" + val("cmt") + "\" /> <a href=\"#\" class=\"cmtbtn cmtup\"><i class=\"fa fa-save\"></i></a> <a href=\"#\" class=\"cmtbtn cmtdel\"><i class=\"fa fa-trash-o\"></i></a></li>");
setv("cmt", "");
msg("저장되었습니다.");
} else { msgdev(); }
}
function cbcmtup() {
if (capResult.code == 1000) {
msg("저장되었습니다.");
}
}
function cbcmtdel() {
if (capResult.code == 1000) {
$(_cmtdelli).remove();
msg("삭제되었습니다.");
}
}
</script>
}

View File

@ -0,0 +1,88 @@
@model NP.Model.VMCC
<form id="mform" method="post">
<section class="panel panel-default clearfix devsearch" data-cleartbody="tbody1">
@Html.Partial("./Partial/SearchCaption")
<div class="step-content">
<div class="step-pane active form-inline">
<div class="form-group">
@Html.Partial("./Partial/Select", Model.BMOs, new ViewDataDictionary { { "name", "stringval3" }, { "selected", Model.stringval3 }, { "df", ":-말머리선택" } })
@Html.Partial("./Partial/Text", Model.stringval4, Helpers.DicText(new NP.Model.TextDic() { Name = "stringval4", Value = Model.stringval4, PH = "제목/작성자/내용으로 검색", CssClass = "ff" }))
@Html.Partial("./Partial/Button", new NP.Model.Button() { Special = "search" })
</div>
</div>
</div>
</section>
<div class="tar buttonbox">
@Html.Partial("./Partial/pagerow", new ViewDataDictionary { { "tbodyid", "tbody1" }, { "searchmethod", "submit()" }, { "pagesize", Model.pagerowcount } })
<a href="homer2" onclick="javascript:reg(0);" class="btn btn-s-xs btn-info">게시글 등록</a>
</div>
<section class="panel panel-default">
<div class="table-responsive" id="excel1">
<table class="table table-striped b-t b-light">
<thead>
<tr>
<th width="20">No</th>
<th>게시판명</th>
<th>고객사</th>
<th>말머리</th>
<th>제목</th>
<th>등록일</th>
<th>작성자</th>
<th>조회</th>
</tr>
</thead>
<tbody class="data" id="tbody1">
@foreach (var item in Model.Boards)
{
<tr>
<td>@item.rnorvt</td>
<td>@item.bmname</td>
<td>@item.asname</td>
<td>@item.opname</td>
<td class="link" style="@(item.pbno == null ? "":"padding-left: 30px;")"><a href="#" onclick="reg(@item.bno)">@Html.Raw(item.pbno == null ? "" : "<i class=\"fa fa-mail-forward\"></i>")@Html.Raw(item.istop == 1 ? "<i class=\"fa fa-bullhorn\"></i>" : "")@(item.subject)@(item.ccount > 0 ? string.Format("({0})", item.ccount.ToString("#,0")) : "")@Html.Raw(item.issecr == 1 ? "<i class=\"fa fa-lock\"></i>" : "")</a></td>
<td>@item.cdtymd</td>
<td>@(string.Format("{0}({1})",item.cnoname,item.cnoid))</td>
<td>@item.rcount.ToString("#,0")</td>
</tr>
}
</tbody>
</table>
</div>
@Html.Pager((int)Model.pagenum, 10, Model.pagerowcount, Model.pagetotalcount)
</section>
</form>
<form id="dform" method="post" action="/cc/bmr">
@Html.Partial("./Partial/dform", Model, new ViewDataDictionary { { "preform", 1 } })
</form>
@*인덕 팝업 작업 시작@**@
<script type="text/javascript">
</script>
@*인덕 팝업 작업 종료@**@
@section scripts{
<script>
$(document).ready(function () {
$("#stringval").on("change", function () {
$("#stringval2 option:gt(0)").remove();
$("#stringval3 option:gt(0)").remove();
capp("/acommon/boardmasterget", { asno: $(this).val(), bmposition: 0 }, "cbget0");
});
$("#stringval2").on("change", function () {
$("#stringval3 option:gt(0)").remove();
if ($(this).val() != "") {
capp("/acommon/boardmasteropeningget", { bmno: $(this).val() }, "cbget1");
}
});
});
function cbget0() {
binddata("stringval2", capResult.obj);
}
function cbget1() {
binddata("stringval3", capResult.obj);
}
function reg(no) {
setv("dform_longval", no);
$("#dform").attr("action", "/cc/homer").submit();
}
</script>
}

View File

@ -21,7 +21,7 @@
<package id="Microsoft.AspNet.Web.Optimization" version="1.1.3" targetFramework="net461" /> <package id="Microsoft.AspNet.Web.Optimization" version="1.1.3" targetFramework="net461" />
<package id="Microsoft.AspNet.Web.Optimization.ko" version="1.1.3" targetFramework="net461" /> <package id="Microsoft.AspNet.Web.Optimization.ko" version="1.1.3" targetFramework="net461" />
<package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net45" /> <package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net45" /> <package id="Microsoft.AspNet.WebApi.Client" version="5.2.8" targetFramework="net46" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net45" /> <package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net45" /> <package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net461" /> <package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net461" />