update new code
parent
572e7ec1b7
commit
661bb705ae
|
|
@ -56,6 +56,188 @@ namespace Journeys_WantHome.Controllers
|
||||||
this._httpContextAccessor = httpContextAccessor;
|
this._httpContextAccessor = httpContextAccessor;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Route("kolProjectAddEditDelGet")]
|
||||||
|
public ActionResult KolProjectAddEditDelGet(IFormCollection obj) {
|
||||||
|
kolProjectResult ret = new kolProjectResult();
|
||||||
|
authToken token = new authToken(this._httpContextAccessor);
|
||||||
|
if (token.user_isLogin == false)
|
||||||
|
{
|
||||||
|
HttpContext.Response.Cookies.Delete("token_key");
|
||||||
|
ret.ret = "no";
|
||||||
|
ret.err_code = "99999";
|
||||||
|
ret.message = "非登入狀態!";
|
||||||
|
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||||
|
}
|
||||||
|
|
||||||
|
string method = obj["method"].ToString();
|
||||||
|
string project_uid = obj["project_uid"].ToString();
|
||||||
|
string kol_uid = obj["kol_uid"].ToString();
|
||||||
|
string kolProject_uid = obj["kolProject_uid"].ToString();
|
||||||
|
string cooperateTypeStr = obj["cooperateTypeStr"].ToString().TrimEnd(',');
|
||||||
|
string kolProjectPriceArrayJson = obj["kolProjectPriceArrayJson"].ToString().TrimEnd(',');
|
||||||
|
string kolProject_isExec = obj["kolProject_isExec"].ToString();
|
||||||
|
string kolProject_noExecReason = obj["kolProject_noExecReason"].ToString();
|
||||||
|
string kolProjectEvaluateStr = obj["kolProjectEvaluateStr"].ToString().TrimEnd(',');
|
||||||
|
string kolProjectLinkArrayJson = obj["kolProjectLinkArrayJson"].ToString().TrimEnd(',');
|
||||||
|
string kolProjectImageArrayJson = obj["kolProjectImageArrayJson"].ToString().TrimEnd(',');
|
||||||
|
string kolProject_memo = obj["kolProject_memo"].ToString();
|
||||||
|
|
||||||
|
if (method == "add") {
|
||||||
|
kolProject_uid = "kp_" + GlobalClass.CreateRandomCode(16);
|
||||||
|
|
||||||
|
kolProject kp = new kolProject();
|
||||||
|
|
||||||
|
kp.kolProject_uid = kolProject_uid;
|
||||||
|
kp.kol_uid = kol_uid;
|
||||||
|
kp.project_uid = project_uid;
|
||||||
|
kp.kolProject_isExec = kolProject_isExec;
|
||||||
|
kp.kolProject_noExecReason = kolProject_noExecReason;
|
||||||
|
kp.kolProject_memo = kolProject_memo;
|
||||||
|
kp.user_uid = token.user_id;
|
||||||
|
kp.user_name = token.user_name;
|
||||||
|
kp.kolProject_createdate = DateTime.Now;
|
||||||
|
kp.kolProject_modifydate = DateTime.Now;
|
||||||
|
|
||||||
|
string[] cooperateTypeArr = cooperateTypeStr.Split(',');
|
||||||
|
string[] kolProjectEvaluateArr = kolProjectEvaluateStr.Split(',');
|
||||||
|
|
||||||
|
List<kolCooperateType> kolCooperateTypes = new List<kolCooperateType>();
|
||||||
|
List<kolProjectEvaluate> kolProjectEvaluates = new List<kolProjectEvaluate>();
|
||||||
|
|
||||||
|
foreach (string cooperate in cooperateTypeArr)
|
||||||
|
{
|
||||||
|
kolCooperateType kct = new kolCooperateType();
|
||||||
|
kct.kolCooperateType_uid = "kct_" + GlobalClass.CreateRandomCode(16);
|
||||||
|
kct.project_uid = project_uid;
|
||||||
|
kct.kol_uid = kol_uid;
|
||||||
|
kct.option_uid = "cooperateType";
|
||||||
|
kct.optionItem_uid = cooperate;
|
||||||
|
kct.kolProject_uid = kolProject_uid;
|
||||||
|
|
||||||
|
kolCooperateTypes.Add(kct);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (string evaluate in kolProjectEvaluateArr)
|
||||||
|
{
|
||||||
|
if (evaluate != "") {
|
||||||
|
kolProjectEvaluate kpe = new kolProjectEvaluate();
|
||||||
|
kpe.kol_uid = kol_uid;
|
||||||
|
kpe.project_uid = project_uid;
|
||||||
|
kpe.kolProject_uid = kolProject_uid;
|
||||||
|
kpe.kolProjectEvaluate_text = evaluate;
|
||||||
|
|
||||||
|
kolProjectEvaluates.Add(kpe);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
dynamic kolProjectPriceJsonObj;
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
kolProjectPriceJsonObj = JsonConvert.DeserializeObject(kolProjectPriceArrayJson);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ret.ret = "no";
|
||||||
|
ret.err_code = "0003";
|
||||||
|
ret.message = "kolProjectPrice json error" + ex.Message;
|
||||||
|
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||||
|
}
|
||||||
|
|
||||||
|
List<kolProjectPrice> kolProjectPrices = new List<kolProjectPrice>();
|
||||||
|
|
||||||
|
foreach (dynamic item in kolProjectPriceJsonObj) {
|
||||||
|
kolProjectPrice kpp = new kolProjectPrice();
|
||||||
|
kpp.kolProjectPrice_uid = "kpp_" + GlobalClass.CreateRandomCode(16);
|
||||||
|
kpp.kolProject_uid = kolProject_uid;
|
||||||
|
kpp.optionItem_uid = item.optionItem_uid;
|
||||||
|
kpp.mediaItem_uid = item.mediaItem_uid;
|
||||||
|
kpp.kolProjectPrice_other = item.kolProjectPrice_other;
|
||||||
|
kpp.kolProjectPrice_num = item.kolProjectPrice_num;
|
||||||
|
kpp.kolProjectPrice_cost = item.kolProjectPrice_cost;
|
||||||
|
kpp.kolProjectPrice_date = item.kolProjectPrice_date;
|
||||||
|
kpp.kolProjectPrice_createdate = DateTime.Now;
|
||||||
|
kpp.kolProjectPrice_modifydate = DateTime.Now;
|
||||||
|
|
||||||
|
kolProjectPrices.Add(kpp);
|
||||||
|
}
|
||||||
|
|
||||||
|
dynamic kolProjectLinkJsonObj;
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
kolProjectLinkJsonObj = JsonConvert.DeserializeObject(kolProjectLinkArrayJson);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ret.ret = "no";
|
||||||
|
ret.err_code = "0003";
|
||||||
|
ret.message = "kolProjectPrice json error" + ex.Message;
|
||||||
|
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||||
|
}
|
||||||
|
|
||||||
|
List<kolProjectLink> kolProjectLinks = new List<kolProjectLink>();
|
||||||
|
|
||||||
|
foreach (dynamic item in kolProjectLinkJsonObj) {
|
||||||
|
kolProjectLink kpl = new kolProjectLink();
|
||||||
|
kpl.kolProjectLink_uid = "kpl_" + GlobalClass.CreateRandomCode(16);
|
||||||
|
kpl.kolProject_uid = kolProject_uid;
|
||||||
|
kpl.kolProjectLink_url = item.kolProjectLink_url;
|
||||||
|
kpl.kolProjectLink_text = item.kolProjectLink_text;
|
||||||
|
kpl.kolProjectLink_createdate = DateTime.Now;
|
||||||
|
|
||||||
|
kolProjectLinks.Add(kpl);
|
||||||
|
}
|
||||||
|
|
||||||
|
dynamic kolProjectImageJsonObj;
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
kolProjectImageJsonObj = JsonConvert.DeserializeObject(kolProjectImageArrayJson);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
ret.ret = "no";
|
||||||
|
ret.err_code = "0003";
|
||||||
|
ret.message = "kolProjectImage json error" + ex.Message;
|
||||||
|
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||||
|
}
|
||||||
|
|
||||||
|
List<kolProjectImage> kolProjectImages = new List<kolProjectImage>();
|
||||||
|
|
||||||
|
foreach (dynamic item in kolProjectImageJsonObj) {
|
||||||
|
kolProjectImage kpi = new kolProjectImage();
|
||||||
|
kpi.kolProjectImage_uid = "kpi_" + GlobalClass.CreateRandomCode(16);
|
||||||
|
kpi.kolProjectImage_photo = item.kolProjectImage_photo;
|
||||||
|
kpi.kolProjectImage_desc = item.kolProjectImage_desc;
|
||||||
|
kpi.kolProject_uid = kolProject_uid;
|
||||||
|
kpi.kolProjectImage_createdate = DateTime.Now;
|
||||||
|
|
||||||
|
kolProjectImages.Add(kpi);
|
||||||
|
}
|
||||||
|
|
||||||
|
conn.Insert(kp);
|
||||||
|
conn.Insert(kolCooperateTypes);
|
||||||
|
conn.Insert(kolProjectEvaluates);
|
||||||
|
conn.Insert(kolProjectPrices);
|
||||||
|
conn.Insert(kolProjectLinks);
|
||||||
|
conn.Insert(kolProjectImages);
|
||||||
|
|
||||||
|
ret.data.kolProject = kp;
|
||||||
|
ret.data.kolProjectEvaluates = kolProjectEvaluates;
|
||||||
|
ret.data.kolProjectPrices = kolProjectPrices;
|
||||||
|
ret.data.kolProjectLinks = kolProjectLinks;
|
||||||
|
ret.data.kolProjectImages = kolProjectImages;
|
||||||
|
ret.data.kolCooperateTypes = kolCooperateTypes;
|
||||||
|
ret.data.project = conn.QueryFirst<project>("select * from project where project_uid = @project_uid ", new { project_uid = kp.project_uid });
|
||||||
|
ret.ret = "yes";
|
||||||
|
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||||
|
}
|
||||||
|
|
||||||
[Route("mediaSpecList")]
|
[Route("mediaSpecList")]
|
||||||
public ActionResult MediaSpecList(IFormCollection obj) {
|
public ActionResult MediaSpecList(IFormCollection obj) {
|
||||||
mediaSpecListResult ret = new mediaSpecListResult();
|
mediaSpecListResult ret = new mediaSpecListResult();
|
||||||
|
|
@ -1022,6 +1204,15 @@ namespace Journeys_WantHome.Controllers
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class kolProjectResult
|
||||||
|
{
|
||||||
|
public string ret { get; set; } = "no";
|
||||||
|
public string err_code { get; set; } = "0000";
|
||||||
|
public string message { get; set; } = "";
|
||||||
|
|
||||||
|
public kolProjectDetail data { get; set; } = new kolProjectDetail();
|
||||||
|
}
|
||||||
|
|
||||||
public class mediaSpecListResult {
|
public class mediaSpecListResult {
|
||||||
public string ret { get; set; } = "no";
|
public string ret { get; set; } = "no";
|
||||||
public string err_code { get; set; } = "0000";
|
public string err_code { get; set; } = "0000";
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,19 @@ using Newtonsoft.Json.Linq;
|
||||||
|
|
||||||
public class DbTableClass
|
public class DbTableClass
|
||||||
{
|
{
|
||||||
|
[Table("kolProjectEvaluate")]
|
||||||
|
public class kolProjectEvaluate
|
||||||
|
{
|
||||||
|
[JsonIgnore]
|
||||||
|
[Key]
|
||||||
|
public int kolProjectEvaluate_sn { get; set; }
|
||||||
|
public string kol_uid { get; set; } = "";
|
||||||
|
public string project_uid { get; set; } = "";
|
||||||
|
public string kolProject_uid { get; set; } = "";
|
||||||
|
public string kolProjectEvaluate_text { get; set; } = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
[Table("kolProjectPrice")]
|
[Table("kolProjectPrice")]
|
||||||
public class kolProjectPrice
|
public class kolProjectPrice
|
||||||
{
|
{
|
||||||
|
|
@ -249,6 +262,8 @@ public class DbTableClass
|
||||||
|
|
||||||
public string project_uid { get; set; } = "";
|
public string project_uid { get; set; } = "";
|
||||||
|
|
||||||
|
public string kolProject_uid { get; set; } = "";
|
||||||
|
|
||||||
public string option_uid { get; set; } = "";
|
public string option_uid { get; set; } = "";
|
||||||
|
|
||||||
public string optionItem_uid { get; set; } = "";
|
public string optionItem_uid { get; set; } = "";
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,37 @@
|
||||||
|
using Dapper;
|
||||||
|
using Dapper.Contrib.Extensions;
|
||||||
|
using NPOI.SS.Formula.Functions;
|
||||||
|
using System.Data.SqlClient;
|
||||||
|
using static DbTableClass;
|
||||||
|
|
||||||
|
public class kolProjectDetail
|
||||||
|
{
|
||||||
|
DbConn dbConn = new DbConn();
|
||||||
|
SqlConnection conn = new SqlConnection(GlobalClass.appsettings("ConnectionStrings:SQLConnectionString"));
|
||||||
|
|
||||||
|
public kolProject kolProject = new kolProject();
|
||||||
|
public List<kolProjectImage> kolProjectImages = new List<kolProjectImage>();
|
||||||
|
public List<kolProjectLink> kolProjectLinks = new List<kolProjectLink>();
|
||||||
|
public List<kolProjectPrice> kolProjectPrices = new List<kolProjectPrice>();
|
||||||
|
public List<kolProjectEvaluate> kolProjectEvaluates = new List<kolProjectEvaluate>();
|
||||||
|
public List<kolCooperateType> kolCooperateTypes = new List<kolCooperateType>();
|
||||||
|
public project project = new project();
|
||||||
|
|
||||||
|
public kolProjectDetail()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public kolProjectDetail(string kolProject_uid) {
|
||||||
|
kolProject = conn.QueryFirst("select * from kolProject where kolProject_uid = @kolProject_uid", new { kolProject_uid = kolProject_uid });
|
||||||
|
|
||||||
|
kolProjectImages = conn.Query<kolProjectImage>("select * from kolProjectImages where kolProject_uid = @kolProject_uid", new { kolProject_uid = kolProject_uid }).ToList();
|
||||||
|
kolProjectLinks = conn.Query<kolProjectLink>("select * from kolProjectLink where kolProject_uid = @kolProject_uid", new { kolProject_uid = kolProject_uid }).ToList();
|
||||||
|
kolProjectPrices = conn.Query<kolProjectPrice>("select * from kolProjectPrice where kolProject_uid = @kolProject_uid", new { kolProject_uid = kolProject_uid }).ToList();
|
||||||
|
kolProjectEvaluates = conn.Query<kolProjectEvaluate>("select * from kolProjectEvaluate where kolProject_uid = @kolProject_uid", new { kolProject_uid = kolProject_uid }).ToList();
|
||||||
|
kolCooperateTypes = conn.Query<kolCooperateType>("select * from kolCooperateType where kolProject_uid = @kolProject_uid", new { kolProject_uid = kolProject_uid }).ToList();
|
||||||
|
|
||||||
|
project = conn.QueryFirst<project>("select * from project where project_uid = @project_uid ", new { project_uid = kolProject.project_uid });
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -315,8 +315,8 @@
|
||||||
</div><!-- /.modal-header -->
|
</div><!-- /.modal-header -->
|
||||||
<!-- .modal-body -->
|
<!-- .modal-body -->
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<input type="hidden" id="method" />
|
|
||||||
<input type="hidden" id="kol_uid" />
|
<input type="hidden" id="kolProject_kol_uid" />
|
||||||
<!-- .page-section -->
|
<!-- .page-section -->
|
||||||
<div class="page-section">
|
<div class="page-section">
|
||||||
<button type="button" id="kolProjectNewBtn" class="btn btn-primary btn-floated position-absolute" title="Add new client"><i class="fa fa-plus"></i></button>
|
<button type="button" id="kolProjectNewBtn" class="btn btn-primary btn-floated position-absolute" title="Add new client"><i class="fa fa-plus"></i></button>
|
||||||
|
|
@ -325,7 +325,7 @@
|
||||||
<!-- .card-body -->
|
<!-- .card-body -->
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<!-- .table -->
|
<!-- .table -->
|
||||||
<table id="dt-responsive" class="table dt-responsive nowrap w-100">
|
<table id="dt-responsive-kolProject" class="table dt-responsive nowrap w-100">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th> 專案名稱 </th>
|
<th> 專案名稱 </th>
|
||||||
|
|
@ -350,6 +350,8 @@
|
||||||
</div><!-- /.modal-dialog -->
|
</div><!-- /.modal-dialog -->
|
||||||
</div>
|
</div>
|
||||||
</form><!-- /.modal -->
|
</form><!-- /.modal -->
|
||||||
|
|
||||||
|
|
||||||
<!-- .modal -->
|
<!-- .modal -->
|
||||||
<form id="clientNewKolProjectForm" name="clientNewKolProjectForm">
|
<form id="clientNewKolProjectForm" name="clientNewKolProjectForm">
|
||||||
<div class="modal fade" id="clientNewKolProjectModal" tabindex="-1" role="dialog" aria-labelledby="clientNewKolProjectLabel" data-backdrop="static"
|
<div class="modal fade" id="clientNewKolProjectModal" tabindex="-1" role="dialog" aria-labelledby="clientNewKolProjectLabel" data-backdrop="static"
|
||||||
|
|
@ -446,13 +448,13 @@
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<h2 class="card-title">確認合作</h2>
|
<h2 class="card-title">確認合作</h2>
|
||||||
<div class="custom-control custom-radio mb-1">
|
<div class="custom-control custom-radio mb-1">
|
||||||
<input type="radio" class="custom-control-input" name="rdGroup3" id="rd7"> <label class="custom-control-label" for="rd7">是</label>
|
<input type="radio" class="custom-control-input" name="kolProject_isExec" id="rd7" value="Y"> <label class="custom-control-label" for="rd7">是</label>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="custom-control custom-radio mb-1">
|
<div class="custom-control custom-radio mb-1">
|
||||||
<input type="radio" class="custom-control-input" name="rdGroup3" id="rd8" checked> <label class="custom-control-label" for="rd8">否</label>
|
<input type="radio" class="custom-control-input" name="kolProject_isExec" id="rd8" value="N" checked> <label class="custom-control-label" for="rd8">否</label>
|
||||||
<div class="custom-control-hint mt-1">
|
<div class="custom-control-hint mt-1">
|
||||||
<input type="text" class="form-control" placeholder="原因(選填)">
|
<input id="kolProject_noExecReason" type="text" class="form-control" placeholder="原因(選填)">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div><!-- /.form-group -->
|
</div><!-- /.form-group -->
|
||||||
|
|
@ -462,25 +464,25 @@
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<h2 class="card-title">評價</h2>
|
<h2 class="card-title">評價</h2>
|
||||||
<div class="custom-control custom-control-inline custom-checkbox">
|
<div class="custom-control custom-control-inline custom-checkbox">
|
||||||
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb1"> <label class="custom-control-label" for="ckb1">好溝通</label>
|
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb1" value="好溝通"> <label class="custom-control-label" for="ckb1">好溝通</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="custom-control custom-control-inline custom-checkbox">
|
<div class="custom-control custom-control-inline custom-checkbox">
|
||||||
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb2"> <label class="custom-control-label" for="ckb2">準時</label>
|
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb2" value="準時"> <label class="custom-control-label" for="ckb2">準時</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="custom-control custom-control-inline custom-checkbox">
|
<div class="custom-control custom-control-inline custom-checkbox">
|
||||||
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb3"> <label class="custom-control-label" for="ckb3">品質好</label>
|
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb3" value="品質好"> <label class="custom-control-label" for="ckb3">品質好</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="custom-control custom-control-inline custom-checkbox">
|
<div class="custom-control custom-control-inline custom-checkbox">
|
||||||
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb4"> <label class="custom-control-label" for="ckb4">CP質高</label>
|
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb4" value="CP質高"> <label class="custom-control-label" for="ckb4">CP質高</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="custom-control custom-control-inline custom-checkbox">
|
<div class="custom-control custom-control-inline custom-checkbox">
|
||||||
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb5"> <label class="custom-control-label" for="ckb5">有雷</label>
|
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb5" value="有雷"> <label class="custom-control-label" for="ckb5">有雷</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="custom-control custom-control-inline custom-checkbox">
|
<div class="custom-control custom-control-inline custom-checkbox">
|
||||||
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb6"> <label class="custom-control-label" for="ckb6">有大雷</label>
|
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb6" value="有大雷"> <label class="custom-control-label" for="ckb6">有大雷</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="custom-control custom-control-inline custom-checkbox">
|
<div class="custom-control custom-control-inline custom-checkbox">
|
||||||
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb7"> <label class="custom-control-label" for="ckb7">有遲交狀況</label>
|
<input type="checkbox" name="quility[]" class="custom-control-input" id="ckb7" value="有遲交狀況"> <label class="custom-control-label" for="ckb7">有遲交狀況</label>
|
||||||
</div>
|
</div>
|
||||||
</div><!-- /.form-group -->
|
</div><!-- /.form-group -->
|
||||||
<div class="card-footer"> </div>
|
<div class="card-footer"> </div>
|
||||||
|
|
@ -552,11 +554,13 @@
|
||||||
</div><!-- /.modal-body -->
|
</div><!-- /.modal-body -->
|
||||||
<!-- .modal-footer -->
|
<!-- .modal-footer -->
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" id="kolSaveBtn" class="btn btn-primary">儲存</button> <button id="closeBtn" type="button" class="btn btn-light" data-dismiss="modal">關閉</button>
|
<button type="button" id="kolProjectSaveBtn" class="btn btn-primary">儲存</button> <button id="closeBtn" type="button" class="btn btn-light" data-dismiss="modal">關閉</button>
|
||||||
</div><!-- /.modal-footer -->
|
</div><!-- /.modal-footer -->
|
||||||
</div><!-- /.modal-content -->
|
</div><!-- /.modal-content -->
|
||||||
</div><!-- /.modal-dialog -->
|
</div><!-- /.modal-dialog -->
|
||||||
</div>
|
</div>
|
||||||
|
</<div>
|
||||||
|
</div>
|
||||||
</form><!-- /.modal -->
|
</form><!-- /.modal -->
|
||||||
<!-- .modal -->
|
<!-- .modal -->
|
||||||
<form id="clientKolProjectMediaPriceEditForm" name="clientKolProjectMediaPriceEditForm">
|
<form id="clientKolProjectMediaPriceEditForm" name="clientKolProjectMediaPriceEditForm">
|
||||||
|
|
|
||||||
|
|
@ -131,6 +131,7 @@ function clearChildren(element) {
|
||||||
switch (e.type) {
|
switch (e.type) {
|
||||||
case "radio":
|
case "radio":
|
||||||
case "checkbox": break;
|
case "checkbox": break;
|
||||||
|
case "hidden": break;
|
||||||
case "button":
|
case "button":
|
||||||
case "submit":
|
case "submit":
|
||||||
case "text": e.value = ''; break;
|
case "text": e.value = ''; break;
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,10 @@ var mainPos;
|
||||||
var specTr;
|
var specTr;
|
||||||
var linkTr;
|
var linkTr;
|
||||||
var photoTr;
|
var photoTr;
|
||||||
|
|
||||||
|
var kolProjectTable;
|
||||||
|
var kolProjectRowID;
|
||||||
|
var kolProjectPos;
|
||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
delMedia = '';
|
delMedia = '';
|
||||||
loadTagsInput();
|
loadTagsInput();
|
||||||
|
|
@ -273,6 +277,139 @@ $(document).ready(function () {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
//專案合作狀況儲存
|
||||||
|
$('#kolProjectSaveBtn').on('click', function () {
|
||||||
|
var project_year = $('#project_year').val();
|
||||||
|
var project_month = $('#project_month').val();
|
||||||
|
var project_uid = $('#project_select').val();
|
||||||
|
var kol_uid = $('#kolProject_kol_uid').val();
|
||||||
|
var kolProject_uid = $('#kolProject_uid').val();
|
||||||
|
var method = $('#kolProject_method').val();
|
||||||
|
var cooperateTypeStr = "";
|
||||||
|
var kolProjectPriceArray = [];
|
||||||
|
var kolProject_isExec = $("input[type='radio'][name='kolProject_isExec']:checked").val();
|
||||||
|
var kolProject_noExecReason = '';
|
||||||
|
var kolProjectEvaluateStr = '';
|
||||||
|
var kolProjectLinkArray = [];
|
||||||
|
var kolProjectImageArray = [];
|
||||||
|
var kolProject_memo = $('#kolProject_memo').val();
|
||||||
|
|
||||||
|
if (kolProject_isExec == 'N') {
|
||||||
|
kolProject_noExecReason = $('#kolProject_noExecReason').val();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$.each($('input[name="cooperateType[]"]:checked'), function () {
|
||||||
|
cooperateTypeStr = cooperateTypeStr + $(this).val() + ",";
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#price_table tbody tr').each(function () {
|
||||||
|
var item = {
|
||||||
|
optionItem_uid: $(this).find('td').eq(6).text().trim(),
|
||||||
|
mediaItem_uid: $(this).find('td').eq(7).text().trim(),
|
||||||
|
kolProjectPrice_other: $(this).find('td').eq(5).text().trim(),
|
||||||
|
kolProjectPrice_num: $(this).find('td').eq(2).text().trim(),
|
||||||
|
kolProjectPrice_cost: RemoveComma($(this).find('td').eq(3).text().trim()),
|
||||||
|
kolProjectPrice_date: $(this).find('td').eq(4).text().trim()
|
||||||
|
}
|
||||||
|
|
||||||
|
kolProjectPriceArray.push(item);
|
||||||
|
});
|
||||||
|
|
||||||
|
$.each($('input[name="quility[]"]:checked'), function () {
|
||||||
|
kolProjectEvaluateStr = kolProjectEvaluateStr + $(this).val() + ",";
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#link_table tbody tr').each(function () {
|
||||||
|
var item = {
|
||||||
|
kolProjectLink_url: $(this).find('td').eq(1).text().trim(),
|
||||||
|
kolProjectLink_text: $(this).find('td').eq(2).text().trim()
|
||||||
|
}
|
||||||
|
|
||||||
|
kolProjectLinkArray.push(item);
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#cut_table tbody tr').each(function () {
|
||||||
|
var tmpphoto_path = $(this).find('td').eq(0).find('img').prop('src').trim();
|
||||||
|
tmpphoto_path = tmpphoto_path.replace(origin, '');
|
||||||
|
|
||||||
|
var item = {
|
||||||
|
kolProjectImage_photo: tmpphoto_path,
|
||||||
|
kolProjectImage_desc: $(this).find('td').eq(1).text().trim()
|
||||||
|
}
|
||||||
|
|
||||||
|
kolProjectImageArray.push(item);
|
||||||
|
});
|
||||||
|
|
||||||
|
var kolProjectPriceArrayJson = JSON.stringify(kolProjectPriceArray);
|
||||||
|
var kolProjectLinkArrayJson = JSON.stringify(kolProjectLinkArray);
|
||||||
|
var kolProjectImageArrayJson = JSON.stringify(kolProjectImageArray);
|
||||||
|
|
||||||
|
var err_msg = "";
|
||||||
|
|
||||||
|
if (project_uid == "") {
|
||||||
|
err_msg += "請選擇合作的專案!\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (cooperateTypeStr == "") {
|
||||||
|
err_msg += "請勾選合作刑式!\n";
|
||||||
|
}
|
||||||
|
if (kolProjectPriceArray.length == 0) {
|
||||||
|
err_msg += "請填寫至少一項報價!\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (err_msg != "") {
|
||||||
|
alert(err_msg);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var formData = {
|
||||||
|
method: method,
|
||||||
|
project_uid: project_uid,
|
||||||
|
kol_uid: kol_uid,
|
||||||
|
kolProject_uid: kolProject_uid,
|
||||||
|
cooperateTypeStr: cooperateTypeStr,
|
||||||
|
kolProjectPriceArrayJson: kolProjectPriceArrayJson,
|
||||||
|
kolProject_isExec: kolProject_isExec,
|
||||||
|
kolProject_noExecReason: kolProject_noExecReason,
|
||||||
|
kolProjectEvaluateStr: kolProjectEvaluateStr,
|
||||||
|
kolProjectLinkArrayJson: kolProjectLinkArrayJson,
|
||||||
|
kolProjectImageArrayJson: kolProjectImageArrayJson,
|
||||||
|
kolProject_memo: kolProject_memo
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "/Api/KolProjectAddEditDelGet",
|
||||||
|
type: "post",
|
||||||
|
data: formData,
|
||||||
|
success: function (data, textStatus, jqXHR) {
|
||||||
|
var obj = data.kol;
|
||||||
|
if (data.ret == "yes") {
|
||||||
|
|
||||||
|
if (method == "add") {
|
||||||
|
kolProjectTable.fnAddData(obj);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (method == "edit") {
|
||||||
|
kolProjectTable.fnUpdate(obj, mainPos);
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#clientNewKolProjectModal').modal('toggle');
|
||||||
|
} else {
|
||||||
|
alert(data.message);
|
||||||
|
|
||||||
|
if (data.err_code == "99999") {
|
||||||
|
location.href = "/Root/Login";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function (jqXHR, textStatus, errorThrown) {
|
||||||
|
alert('網路或伺服器發生錯誤,請稍後重試!');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
//截圖儲存
|
//截圖儲存
|
||||||
$('#clientCutPhotoSaveBtn').on('click', function () {
|
$('#clientCutPhotoSaveBtn').on('click', function () {
|
||||||
var method = $('#photo_method').val();
|
var method = $('#photo_method').val();
|
||||||
|
|
@ -953,7 +1090,7 @@ function buttonClick2(obj) {
|
||||||
mainPos = mainTable.fnGetPosition($('#' + uid)[0]);
|
mainPos = mainTable.fnGetPosition($('#' + uid)[0]);
|
||||||
|
|
||||||
if (type == "case") {
|
if (type == "case") {
|
||||||
//$('#kol_uid').val(uid);
|
$('#kolProject_kol_uid').val(uid);
|
||||||
$('#clientProjectModal').modal('toggle');
|
$('#clientProjectModal').modal('toggle');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1422,6 +1559,10 @@ function clearKolProjectTable() {
|
||||||
$.each(trList, function (index, item) {
|
$.each(trList, function (index, item) {
|
||||||
$(item).remove();
|
$(item).remove();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("input[type=checkbox]").each(function (index, checkbox) {
|
||||||
|
checkbox.checked = false;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function initSubPhotoUpload() {
|
function initSubPhotoUpload() {
|
||||||
|
|
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 7.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 7.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 7.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 165 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 7.3 KiB |
Loading…
Reference in New Issue