Edit.cshtml 46 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793
  1. @using MySystem.Models;
  2. @{
  3. Products editData = ViewBag.data as Products;
  4. }
  5. @{
  6. string RightInfo = ViewBag.RightInfo as string;
  7. string SysRealRole = ViewBag.SysRealRole as string;
  8. string SysId = ViewBag.SysId as string;
  9. string right = ViewBag.right as string;
  10. string SysUserName = ViewBag.SysUserName as string;
  11. }
  12. <!DOCTYPE html>
  13. <html>
  14. <head>
  15. <meta charset="utf-8">
  16. <title>商品信息(修改)</title>
  17. <meta name="renderer" content="webkit">
  18. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  19. <meta name="viewport"
  20. content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  21. <link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" media="all">
  22. <script src="/admin/js/jquery-1.10.1.min.js"></script>
  23. <script src="/admin/js/LAreaData2.js"></script>
  24. <script src="/admin/js/vue.min.js"></script>
  25. </head>
  26. <body>
  27. <div class="layui-form" lay-filter="layuiadmin-form-useradmin" id="layuiadmin-form-useradmin">
  28. <input type="hidden" name="Id" value="@editData.Id" />
  29. <div class="layui-card">
  30. <div class="layui-card-body">
  31. <div class="layui-tab" lay-filter="mytabbar">
  32. <ul class="layui-tab-title">
  33. <li class="layui-this" lay-id="1">基本信息</li>
  34. <li lay-id="2">商品图集</li>
  35. <li lay-id="3">价格设置</li>
  36. <li lay-id="5">运费设置</li>
  37. @* <li lay-id="6">限时抢购</li> *@
  38. <li lay-id="7">数据</li>
  39. @* <li lay-id="8">宣传标语</li> *@
  40. @* <li lay-id="9">SEO设置</li> *@
  41. </ul>
  42. <div class="layui-tab-content mt20" id="app">
  43. <div class="layui-tab-item layui-show">
  44. @* @{
  45. Dictionary<string, string> KqProductsDic = new MySystem.DictionaryClass().getKqProductBrandDic();
  46. }
  47. <div class="layui-form-item">
  48. <label class="layui-form-label">产品类型</label>
  49. <div class="layui-input-inline">
  50. <select id="MerchantClassId" name="MerchantClassId" lay-search="">
  51. <option value="">全部...</option>
  52. @foreach (string key in KqProductsDic.Keys)
  53. {
  54. <option value="@key" @(editData.MerchantClassId.ToString() == key ? "selected" :
  55. "")>@KqProductsDic[key]</option>
  56. }
  57. </select>
  58. </div>
  59. </div> *@
  60. <div class="layui-form-item">
  61. <label class="layui-form-label">商品类型</label>
  62. <div class="layui-input-inline">
  63. <select id="ProductKind" name="ProductKind" lay-verify="required|">
  64. <option value="">请选择</option>
  65. <option value="1" @(editData.ProductKind == 1 ? "selected=selected" : "")>实物商品
  66. </option>
  67. <option value="2" @(editData.ProductKind == 2 ? "selected=selected" : "")>虚拟商品
  68. </option>
  69. </select>
  70. </div>
  71. </div>
  72. @{
  73. Dictionary<string, string> ColDic = new MySystem.DictionaryClass().getColDic("006");
  74. }
  75. <div class="layui-form-item">
  76. <label class="layui-form-label">分类</label>
  77. <div class="layui-input-block">
  78. <input type="hidden" id="ColId" name="ColId" value="@editData.ColId"
  79. lay-verify="required|" />
  80. <div id="ColIdTransfer" class="demo-transfer"></div>
  81. @{
  82. string ColJson = "[";
  83. }
  84. @foreach (string key in ColDic.Keys)
  85. {
  86. ColJson += "{\"value\": \"" + key + "\", \"title\": \"" + ColDic[key] + "\" },";
  87. }
  88. @{
  89. ColJson = ColJson.TrimEnd(','); ColJson += "]";
  90. }
  91. </div>
  92. </div>
  93. <div class="layui-form-item">
  94. <label class="layui-form-label">商品名称</label>
  95. <div class="layui-input-block">
  96. <input class="layui-input" type="text" id="ProductName" name="ProductName"
  97. value="@editData.ProductName" maxlength="100" lay-verify="required"
  98. autocomplete="off" placeholder="请输入商品名称">
  99. </div>
  100. </div>
  101. <div class="layui-form-item">
  102. <label class="layui-form-label">简介</label>
  103. <div class="layui-input-block">
  104. <input class="layui-input" type="text" id="Details" name="Details"
  105. value="@editData.Details" maxlength="200" lay-verify="" autocomplete="off"
  106. placeholder="请输入简介">
  107. </div>
  108. </div>
  109. <div class="layui-form-item">
  110. <label class="layui-form-label">分享描述</label>
  111. <div class="layui-input-block">
  112. <input class="layui-input" type="text" id="ShareDetail" name="ShareDetail"
  113. value="@editData.ShareDetail" maxlength="200" lay-verify="" autocomplete="off"
  114. placeholder="请输入分享描述">
  115. </div>
  116. </div>
  117. <div class="layui-form-item layui-form-text">
  118. <label class="layui-form-label">内容</label>
  119. <div class="layui-input-block">
  120. <textarea class="layui-textarea" id="Contents" name="Contents" placeholder="请输入内容"
  121. style="width:100%;height:500px;">@(MySystem.OssHelper.Instance.CheckOSSPic(editData.Contents))</textarea>
  122. </div>
  123. </div>
  124. @* <div class="layui-form-item">
  125. <label class="layui-form-label">推荐</label>
  126. <div class="layui-input-block">
  127. <input type="checkbox" id="IsRecommend" name="IsRecommend" value="1"
  128. @(editData.IsRecommend == 1 ? "checked=checked" : "") lay-skin="switch"
  129. lay-filter="switchTest" title="开关">
  130. </div>
  131. </div>
  132. <div class="layui-form-item">
  133. <label class="layui-form-label">有好货</label>
  134. <div class="layui-input-block">
  135. <input type="checkbox" id="IsRecommend2" name="IsRecommend2" value="1"
  136. @(editData.IsRecommend2 == 1 ? "checked=checked" : "") lay-skin="switch"
  137. lay-filter="switchTest" title="开关">
  138. </div>
  139. </div> *@
  140. @* <div class="layui-form-item">
  141. <label class="layui-form-label">上架时间</label>
  142. <div class="layui-input-inline">
  143. <input class="layui-input" type="text" id="PublishDate" name="PublishDate"
  144. value="@(editData.PublishDate == null ? "" : editData.PublishDate.Value.ToString("yyyy-MM-dd
  145. HH:mm:ss"))" lay-verify="" autocomplete="off" placeholder="请输入上架时间">
  146. </div>
  147. </div> *@
  148. <div class="layui-form-item">
  149. <label class="layui-form-label">上架时间</label>
  150. <div class="layui-input-inline">
  151. <input class="layui-input" type="text" id="StartDate" name="StartDate"
  152. value="@(editData.StartDate == null ? "" : editData.StartDate.Value.ToString("yyyy-MM-dd HH:mm:ss"))"
  153. lay-verify="" autocomplete="off" placeholder="请输入上架时间">
  154. </div>
  155. </div>
  156. <div class="layui-form-item">
  157. <label class="layui-form-label">下架时间</label>
  158. <div class="layui-input-inline">
  159. <input class="layui-input" type="text" id="EndDate" name="EndDate"
  160. value="@(editData.EndDate == null ? "" : editData.EndDate.Value.ToString("yyyy-MM-dd HH:mm:ss"))"
  161. lay-verify="" autocomplete="off" placeholder="请输入下架时间">
  162. </div>
  163. </div>
  164. <div class="layui-form-item">
  165. <label class="layui-form-label">起购数量</label>
  166. <div class="layui-input-inline">
  167. <input class="layui-input" type="text" id="StartBuyCount" name="StartBuyCount"
  168. value="@editData.StartBuyCount" maxlength="20" lay-verify="" autocomplete="off"
  169. placeholder="请输入起购数量">
  170. </div>
  171. </div>
  172. <div class="layui-form-item">
  173. <label class="layui-form-label">限购数量</label>
  174. <div class="layui-input-inline">
  175. <input class="layui-input" type="text" id="LimitCount" name="LimitCount"
  176. value="@editData.LimitCount" maxlength="20" lay-verify="" autocomplete="off"
  177. placeholder="请输入限购数量">
  178. </div>
  179. </div>
  180. @* <div class="layui-form-item">
  181. <label class="layui-form-label">首页Banner推荐</label>
  182. <div class="layui-input-block">
  183. <input type="checkbox" id="IsBanner" name="IsBanner" value="1"
  184. @(editData.IsBanner == 1 ? "checked=checked" : "") lay-skin="switch" lay-filter="IsBanner" title="开关">
  185. </div>
  186. </div>
  187. <div class="layui-form-item" id="BannerList" style="display: none;">
  188. <label class="layui-form-label">Banner图片</label>
  189. <div class="layui-input-block">
  190. <div class="layui-upload">
  191. <input type="hidden" id="BannerPhoto" name="BannerPhoto"
  192. value="@editData.BannerPhoto">
  193. <button class="layui-btn" type="button" id="ListPicBtn">选择图片</button>
  194. <div class="layui-inline layui-word-aux">@(new MySystem.PublicFunction().GetUploadHint("ProductsBannerPhoto"))</div>
  195. </div>
  196. <div style="margin-top:10px;" id="BannerPhotoImage">
  197. @if (!string.IsNullOrEmpty(editData.BannerPhoto))
  198. {
  199. <img src="@(MySystem.OssHelper.Instance.SourceHost)@editData.BannerPhoto"
  200. class="layui-upload-img" style="max-width:85px; max-height:85px;"
  201. onclick="showBigPic('@(MySystem.OssHelper.Instance.SourceHost)@editData.BannerPhoto')">
  202. }
  203. </div>
  204. </div>
  205. </div>
  206. <div class="layui-form-item" id="OutLink" style="display: none;">
  207. <label class="layui-form-label">外部连接</label>
  208. <div class="layui-input-block">
  209. <input class="layui-input" type="text" id="LinkUrl" name="LinkUrl"
  210. value="@editData.LinkUrl" maxlength="500" lay-verify="" autocomplete="off"
  211. placeholder="请输入外部连接,可不填">
  212. </div>
  213. </div>
  214. <div class="layui-form-item" id="SortBanner" style="display: none;">
  215. <label class="layui-form-label">Banner排序</label>
  216. <div class="layui-input-block">
  217. <input class="layui-input" type="text" id="BannerSort" name="BannerSort" value="@editData.BannerSort" maxlength="500"
  218. lay-verify="" autocomplete="off" placeholder="请输入Banner排序,可不填">
  219. </div>
  220. </div> *@
  221. @* <div class="layui-form-item layui-form-text">
  222. <label class="layui-form-label">关键词</label>
  223. <div class="layui-input-block">
  224. <textarea class="layui-textarea" id="KeyWord" name="KeyWord" lay-verify=""
  225. placeholder="请输入关键词">@editData.KeyWord</textarea>
  226. </div>
  227. </div> *@
  228. </div>
  229. <div class="layui-tab-item">
  230. <div class="layui-form-item">
  231. <label class="layui-form-label">图集</label>
  232. <div class="layui-input-block">
  233. <div class="layui-upload">
  234. <input type="hidden" id="DetailPicPath" name="DetailPicPath"
  235. value="@editData.DetailPicPath">
  236. <button class="layui-btn" type="button" id="DetailPicPathBtn">选择图片</button>
  237. <div class="layui-inline layui-word-aux"></div>
  238. </div>
  239. <div class="mt10" id="DetailPicPathImage">
  240. @{
  241. string DetailPicPath = editData.DetailPicPath;
  242. }
  243. @if (!string.IsNullOrEmpty(DetailPicPath))
  244. {
  245. string[] DetailPicPathList = DetailPicPath.Split(new string[] { "#cut#" },
  246. StringSplitOptions.None)[0].Split('|');
  247. string[] DetailPicPathTextList = DetailPicPath.Split(new string[] { "#cut#" },
  248. StringSplitOptions.None)[1].Split('|');
  249. for (int i = 0; i < DetailPicPathList.Length; i++)
  250. {
  251. <div
  252. style="float:left; width:285px; height:320px; margin:10px; padding:10px; border:1px solid #cccccc; text-align:center;">
  253. <div style="height:285px;"><img
  254. src="@(MySystem.OssHelper.Instance.SourceHost)@DetailPicPathList[i]"
  255. style="max-width:285px; max-height:285px;"
  256. onclick="showBigPic('@(MySystem.OssHelper.Instance.SourceHost)@DetailPicPathList[i]')" />
  257. </div><input type="text" placeholder="图片说明"
  258. value="@DetailPicPathTextList[i]"
  259. style="width:285px; margin-top:5px; font-size:12px;" /><br><a
  260. href="javascript:;" onclick="movePrev(this,'DetailPicPath')"
  261. style="color:#000; font-size:12px; padding:0px 2px;">左移</a><a
  262. href="javascript:;" onclick="moveNext(this,'DetailPicPath')"
  263. style="color:#000; font-size:12px; padding:0px 2px;">右移</a><a
  264. href="javascript:;" onclick="deletePic(this,'DetailPicPath')"
  265. style="color:#000; font-size:12px; padding:0px 2px;">删除</a><a
  266. href="javascript:;" onclick="setListPhoto('@DetailPicPathList[i]')"
  267. style="color:#000; font-size:12px; padding:0px 2px;">设为缩略图</a>
  268. </div>
  269. }
  270. }
  271. </div>
  272. </div>
  273. </div>
  274. <div class="layui-form-item">
  275. <label class="layui-form-label">缩略图</label>
  276. <div class="layui-input-block">
  277. <div class="layui-upload">
  278. <input type="hidden" id="ListPicPath" name="ListPicPath"
  279. value="@editData.ListPicPath">
  280. </div>
  281. <div class="mt10" id="ListPicPathImage">
  282. <img src="@(MySystem.OssHelper.Instance.SourceHost)@editData.ListPicPath"
  283. class="layui-upload-img" style="max-width:285px; max-height:285px;">
  284. </div>
  285. </div>
  286. </div>
  287. </div>
  288. <div class="layui-tab-item">
  289. @* <div class="layui-form-item">
  290. <label class="layui-form-label">成本价</label>
  291. <div class="layui-input-inline">
  292. <input class="layui-input" type="text" id="CostPrice" name="CostPrice"
  293. value="@editData.CostPrice" maxlength="20" lay-verify="" autocomplete="off"
  294. placeholder="请输入成本价">
  295. </div>
  296. </div>
  297. <div class="layui-form-item">
  298. <label class="layui-form-label">原价</label>
  299. <div class="layui-input-inline">
  300. <input class="layui-input" type="text" id="SourcePrice" name="SourcePrice"
  301. value="@editData.SourcePrice" maxlength="20" lay-verify="required|number|"
  302. autocomplete="off" placeholder="请输入原价">
  303. </div>
  304. </div> *@
  305. <div class="layui-form-item">
  306. <label class="layui-form-label">价格</label>
  307. <div class="layui-input-inline">
  308. <input class="layui-input" type="text" id="Price" name="Price"
  309. value="@editData.Price" maxlength="20" lay-verify="" autocomplete="off"
  310. placeholder="请输入价格">
  311. </div>
  312. </div>
  313. @* <div class="layui-form-item">
  314. <label class="layui-form-label">抵扣积分</label>
  315. <div class="layui-input-inline">
  316. <input class="layui-input" type="text" id="Integral" name="Integral"
  317. value="@editData.Integral" maxlength="20" lay-verify="" autocomplete="off"
  318. placeholder="请输入抵扣积分">
  319. </div>
  320. </div>
  321. <div class="layui-form-item">
  322. <label class="layui-form-label">创客价</label>
  323. <div class="layui-input-inline">
  324. <input class="layui-input" type="text" id="MemberPrice" name="MemberPrice"
  325. value="@editData.MemberPrice" maxlength="20" lay-verify="" autocomplete="off"
  326. placeholder="请输入创客价">
  327. </div>
  328. </div>
  329. <div class="layui-form-item">
  330. <label class="layui-form-label">创客抵扣积分</label>
  331. <div class="layui-input-inline">
  332. <input class="layui-input" type="text" id="UserIntegral" name="UserIntegral"
  333. value="@editData.UserIntegral" maxlength="20" lay-verify="" autocomplete="off"
  334. placeholder="请输入创客抵扣积分">
  335. </div>
  336. </div> *@
  337. </div>
  338. <div class="layui-tab-item">
  339. <div class="layui-form-item">
  340. <div class="layui-inline">
  341. <label class="layui-form-label">运费模板</label>
  342. <div class="layui-input-inline">
  343. <select id="FareTemplateId" name="FareTemplateId" v-model="FareTemplateId"
  344. lay-search="">
  345. <option value="">请选择</option>
  346. <option v-for="item in tempList" :value="item.id">{{item.name}}</option>
  347. </select>
  348. </div>
  349. <div class="layui-form-mid layui-word-aux">
  350. <a href="###" v-on:click="showTemplate">刷新</a>
  351. </div>
  352. <div class="layui-form-mid layui-word-aux">
  353. <a href="###" id="FareTempUrl" lay-href="">模板管理</a>
  354. </div>
  355. </div>
  356. </div>
  357. </div>
  358. @* <div class="layui-tab-item">
  359. <div class="layui-form-item">
  360. <label class="layui-form-label">抢购开关</label>
  361. <div class="layui-input-block">
  362. <input type="checkbox" id="IsLimit" name="IsLimit" value="1" @(editData.IsLimit == 1 ?
  363. "checked=checked" : "") lay-skin="switch" lay-filter="switchTest" title="开关">
  364. </div>
  365. </div>
  366. <div class="layui-form-item">
  367. <label class="layui-form-label">开始时间</label>
  368. <div class="layui-input-inline">
  369. <input class="layui-input" type="text" id="StartDate" name="StartDate"
  370. value="@(editData.StartDate == null ? "" : editData.StartDate.Value.ToString("yyyy-MM-dd
  371. HH:mm:ss"))" lay-verify="" autocomplete="off" placeholder="请输入开始时间">
  372. </div>
  373. </div>
  374. <div class="layui-form-item">
  375. <label class="layui-form-label">结束时间</label>
  376. <div class="layui-input-inline">
  377. <input class="layui-input" type="text" id="EndDate" name="EndDate" value="@(editData.EndDate ==
  378. null ? "" : editData.EndDate.Value.ToString("yyyy-MM-dd HH:mm:ss"))" lay-verify=""
  379. autocomplete="off" placeholder="请输入结束时间">
  380. </div>
  381. </div>
  382. </div> *@
  383. <div class="layui-tab-item">
  384. <div class="layui-form-item">
  385. <label class="layui-form-label">库存</label>
  386. <div class="layui-input-inline">
  387. <input class="layui-input" type="text" id="Stock" name="Stock"
  388. value="@editData.Stock" maxlength="20" lay-verify="" autocomplete="off"
  389. placeholder="请输入库存">
  390. </div>
  391. </div>
  392. <div class="layui-form-item">
  393. <label class="layui-form-label">已购买数</label>
  394. <div class="layui-input-inline">
  395. <input class="layui-input" type="text" id="BuyCount" name="BuyCount"
  396. value="@editData.BuyCount" maxlength="20" lay-verify="required;integer;"
  397. autocomplete="off" placeholder="请输入已购买数">
  398. </div>
  399. </div>
  400. @* <div class="layui-form-item">
  401. <label class="layui-form-label">评价数</label>
  402. <div class="layui-input-inline">
  403. <input class="layui-input" type="text" id="CommentCount" name="CommentCount"
  404. value="@editData.CommentCount" maxlength="20" lay-verify="required|int|"
  405. autocomplete="off" placeholder="请输入评价数">
  406. </div>
  407. </div>
  408. <div class="layui-form-item">
  409. <label class="layui-form-label">好评率</label>
  410. <div class="layui-input-inline">
  411. <input class="layui-input" type="text" id="GoodPercent" name="GoodPercent"
  412. value="@editData.GoodPercent" maxlength="20" lay-verify="required|number|"
  413. autocomplete="off" placeholder="请输入好评率">
  414. </div>
  415. </div> *@
  416. </div>
  417. @* <div class="layui-tab-item">
  418. <div class="layui-form-item">
  419. <label class="layui-form-label">标语1</label>
  420. <div class="layui-input-block">
  421. <input class="layui-input" type="text" id="Title" name="Title"
  422. value="@editData.Title" maxlength="50" autocomplete="off" placeholder="请输入标语1">
  423. </div>
  424. </div>
  425. <div class="layui-form-item">
  426. <label class="layui-form-label">标语2</label>
  427. <div class="layui-input-block">
  428. <input class="layui-input" type="text" id="Title2" name="Title2"
  429. value="@editData.Title2" maxlength="50" autocomplete="off" placeholder="请输入标语2">
  430. </div>
  431. </div>
  432. </div>
  433. <div class="layui-tab-item">
  434. <div class="layui-form-item">
  435. <label class="layui-form-label">网页标题</label>
  436. <div class="layui-input-block">
  437. <input class="layui-input" type="text" id="SeoTitle" name="SeoTitle"
  438. value="@editData.SeoTitle" maxlength="50" autocomplete="off"
  439. placeholder="请输入网页标题">
  440. </div>
  441. </div>
  442. <div class="layui-form-item">
  443. <label class="layui-form-label">网页关键字</label>
  444. <div class="layui-input-block">
  445. <input class="layui-input" type="text" id="SeoKeyword" name="SeoKeyword"
  446. value="@editData.SeoKeyword" maxlength="50" autocomplete="off"
  447. placeholder="请输入网页关键字">
  448. </div>
  449. </div>
  450. <div class="layui-form-item layui-form-text">
  451. <label class="layui-form-label">网页描述</label>
  452. <div class="layui-input-block">
  453. <textarea class="layui-textarea" name="SeoDescription" id="SeoDescription"
  454. placeholder="请输入网页描述">@editData.SeoDescription</textarea>
  455. </div>
  456. </div>
  457. </div> *@
  458. </div>
  459. </div>
  460. <div class="layui-form-item layui-hide">
  461. <input type="button" lay-submit lay-filter="LAY-list-front-submit" id="LAY-list-front-submit"
  462. value="确认">
  463. </div>
  464. </div>
  465. </div>
  466. </div>
  467. <script src="/layuiadmin/layui/layui.js"></script>
  468. <script
  469. src="/other/oss/upload-min@(MySystem.OssHelper.Instance.OssStatus ? "-oss" : "").js?r=@DateTime.Now.ToString("yyyyMMddHHmmss")"></script>
  470. <script src="/other/mybjq/kindeditor-min.js"></script>
  471. <script src="/other/mybjq/lang/zh_CN.js"></script>
  472. <script>
  473. //内容
  474. @(Html.Raw(Library.Control.kindeditorVar("Contents")))
  475. //编辑器
  476. KindEditor.ready(function (K) {
  477. //内容
  478. @(Html.Raw(Library.Control.kindeditor("Contents", 1)))
  479. });
  480. var ids = "";
  481. function getChildren(obj) {
  482. $.each(obj, function (index, value) {
  483. var id = obj[index].id;
  484. ids += id + ",";
  485. var children = obj[index].children;
  486. if (children) {
  487. getChildren(children);
  488. }
  489. });
  490. }
  491. function AreasProvinceInit(tagId, areasVal, form, func) {
  492. for (var i = 0; i < provs_data.length; i++) {
  493. var sel = "";
  494. if (areasVal.indexOf(provs_data[i].text) > -1) {
  495. sel = " selected=selected";
  496. }
  497. $("#" + tagId + "Province").append('<option value="' + provs_data[i].value + '"' + sel + '>' + provs_data[i].text + '</option>');
  498. }
  499. form.render();
  500. func();
  501. }
  502. function AreasProvinceSelected(tagId, areasVal, form, value, func) {
  503. $("#" + tagId + "City").html('<option value="">市</option>');
  504. var list = citys_data[value];
  505. for (var i = 0; i < list.length; i++) {
  506. var sel = "";
  507. if (areasVal.indexOf(list[i].text) > -1) {
  508. sel = " selected=selected";
  509. }
  510. $("#" + tagId + "City").append('<option value="' + list[i].value + '"' + sel + '>' + list[i].text + '</option>');
  511. }
  512. $("#" + tagId + "Area").html('<option value="">县/区</option>');
  513. form.render();
  514. $("#" + tagId + "").val($("#" + tagId + "Province option:selected").text() + "," + $("#" + tagId + "City option:selected").text() + "," + $("#" + tagId + "Area option:selected").text());
  515. func();
  516. }
  517. function AreasCitySelected(tagId, areasVal, form, value, func) {
  518. $("#" + tagId + "Area").html('<option value="">县/区</option>');
  519. var list = dists_data[value];
  520. for (var i = 0; i < list.length; i++) {
  521. var sel = "";
  522. if (areasVal.indexOf(list[i].text) > -1) {
  523. sel = " selected=selected";
  524. }
  525. $("#" + tagId + "Area").append('<option value="' + list[i].value + '"' + sel + '>' + list[i].text + '</option>');
  526. }
  527. form.render();
  528. $("#" + tagId + "").val($("#" + tagId + "Province option:selected").text() + "," + $("#" + tagId + "City option:selected").text() + "," + $("#" + tagId + "Area option:selected").text());
  529. func();
  530. }
  531. function AreasAreaSelected(tagId, form) {
  532. form.render();
  533. $("#" + tagId + "").val($("#" + tagId + "Province option:selected").text() + "," + $("#" + tagId + "City option:selected").text() + "," + $("#" + tagId + "Area option:selected").text());
  534. }
  535. function movePrev(obj, tagId) {
  536. $(obj).parent().prev().insertAfter($(obj).parent());
  537. checkPics(tagId);
  538. }
  539. function moveNext(obj, tagId) {
  540. $(obj).parent().next().insertBefore($(obj).parent());
  541. checkPics(tagId);
  542. }
  543. function deletePic(obj, tagId) {
  544. $(obj).parent().remove();
  545. checkPics(tagId);
  546. }
  547. function checkPics(tagId) {
  548. var pics = "";
  549. var texts = "";
  550. $("#" + tagId + "Image div img").each(function (i) {
  551. pics += $(this).attr("src").replace(osshost, '') + "|";
  552. });
  553. $("#" + tagId + "Image div input").each(function (i) {
  554. texts += $(this).val() + "|";
  555. });
  556. if (pics == "") {
  557. $("#" + tagId).val("");
  558. } else {
  559. pics = pics.substring(0, pics.length - 1);
  560. texts = texts.substring(0, pics.length - 1);
  561. $("#" + tagId).val(pics + "#cut#" + texts);
  562. }
  563. }
  564. function checkBox(tagId) {
  565. var text = "";
  566. $("input[type=checkbox][name=" + tagId + "List]:checked").each(function (i) {
  567. text += $(this).val() + ",";
  568. });
  569. $("#" + tagId).val(text);
  570. }
  571. function showBigPic(picpath) {
  572. parent.layer.open({
  573. type: 1,
  574. title: false,
  575. closeBtn: 0,
  576. shadeClose: true,
  577. area: ['auto', 'auto'],
  578. content: '<img src="' + picpath + '" style="max-width:800px; max-height:800px;" />'
  579. });
  580. }
  581. function setListPhoto(picpath) {
  582. $("#ListPicPath").val(picpath);
  583. $("#ListPicPathImage img").attr("src", osshost + picpath);
  584. }
  585. var tree;
  586. var element;
  587. var form;
  588. var upload;
  589. var MerchantId;
  590. function init_layui() {
  591. layui.config({
  592. base: '/layuiadmin/' //静态资源所在路径
  593. }).extend({
  594. index: 'lib/index' //主入口模块
  595. }).use(['index', 'form', 'upload', 'layedit', 'laydate', 'element', 'croppers', 'transfer', 'tree', 'util'], function () {
  596. var $ = layui.$
  597. , layer = layui.layer
  598. , layedit = layui.layedit
  599. , laydate = layui.laydate
  600. , croppers = layui.croppers
  601. , transfer = layui.transfer
  602. , util = layui.util;
  603. tree = layui.tree;
  604. element = layui.element;
  605. form = layui.form;
  606. upload = layui.upload;
  607. form.on('select(MerchantId)', function (data) {
  608. MerchantId = data.value;
  609. $("#FareTempUrl").attr("lay-href", "/Admin/ProductFareTemp/Index?MerchantId=" + MerchantId + "&right=@right");
  610. $("#MerchantColUrl").attr("lay-href", "/Admin/MerchantCol/Index?MerchantId=" + MerchantId + "&right=@right");
  611. app.MerchantId = MerchantId;
  612. app.showTemplate();
  613. app.showMerchantCol();
  614. });
  615. MerchantId = '@editData.MerchantId';
  616. $("#FareTempUrl").attr("lay-href", "/Admin/ProductFareTemp/Index?MerchantId=" + MerchantId + "&right=@right");
  617. $("#MerchantColUrl").attr("lay-href", "/Admin/MerchantCol/Index?MerchantId=" + MerchantId + "&right=@right");
  618. app.MerchantId = MerchantId;
  619. app.showTemplate();
  620. app.showMerchantCol();
  621. //Hash地址的定位
  622. var layid = location.hash.replace(/^#test=/, '');
  623. element.tabChange('test', layid);
  624. element.on('tab(test)', function (elem) {
  625. location.hash = 'test=' + $(this).attr('lay-id');
  626. });
  627. form.on('switch(IsBanner)', function (data) {
  628. console.log(data);
  629. if (this.checked) {
  630. $('#BannerList').css('display', 'block');
  631. $('#OutLink').css('display', 'block');
  632. $('#SortBanner').css('display', 'block');
  633. } else {
  634. $('#BannerList').css('display', 'none');
  635. $('#OutLink').css('display', 'none');
  636. $('#SortBanner').css('display', 'none');
  637. }
  638. form.render();
  639. });
  640. var IsBanner = '@editData.IsBanner';
  641. if(IsBanner == '1')
  642. {
  643. $('#BannerList').css('display', 'block');
  644. $('#OutLink').css('display', 'block');
  645. $('#SortBanner').css('display', 'block');
  646. }
  647. //日期
  648. laydate.render({
  649. elem: '#StartDate',
  650. type: 'datetime'
  651. });
  652. laydate.render({
  653. elem: '#EndDate',
  654. type: 'datetime'
  655. });
  656. laydate.render({
  657. elem: '#PublishDate',
  658. type: 'datetime'
  659. });
  660. //上传文件
  661. WebUploadJs('DetailPicPathBtn', '@(Library.ConfigurationManager.AppSettings["Database"].ToString())/upload/v2', @(Html.Raw(new MySystem.PublicFunction().GetUploadParam("ProductsDetailPicPath"))), function (filename) {
  662. $('#DetailPicPathImage').append('<div style="float:left; width:285px; height:320px; margin:10px; padding:10px; border:1px solid #cccccc; text-align:center;"><div style="height:285px;"><img src="' + osshost + filename + '" style="max-width:285px; max-height:285px;" onclick="showBigPic(\'' + osshost + filename + '\')" /></div><input type="text" placeholder="图片说明" value="" style="width:285px; margin-top:5px; font-size:12px;" /><br><a href="javascript:;" onclick="movePrev(this,\'DetailPicPath\')" style="color:#000; font-size:12px; padding:0px 2px;">左移</a><a href="javascript:;" onclick="moveNext(this,\'DetailPicPath\')" style="color:#000; font-size:12px; padding:0px 2px;">右移</a><a href="javascript:;" onclick="deletePic(this,\'DetailPicPath\')" style="color:#000; font-size:12px; padding:0px 2px;">删除</a><a href="javascript:;" onclick="setListPhoto(\'' + filename + '\')" style="color:#000; font-size:12px; padding:0px 2px;">设为缩略图</a></div>')
  663. });
  664. WebUploadJs('ListPicBtn', '@(Library.ConfigurationManager.AppSettings["Database"].ToString())/upload/v2', @(Html.Raw(new MySystem.PublicFunction().GetUploadParam("ProductBannerListPic"))), function (filename) {
  665. $('#BannerPhotoImage').html('<img src="' + osshost + filename + '" class="layui-upload-img" style="max-width:85px; max-height:85px;" onclick="showBigPic(\'' + osshost + filename + '\')">')
  666. $('#BannerPhoto').val(filename);
  667. });
  668. //穿梭框
  669. transfer.render({
  670. elem: '#ColIdTransfer'
  671. , data: @Html.Raw(ColJson)
  672. , title: ['待选项', '选中项']
  673. , value: ["@Html.Raw(Library.function.CheckNull(editData.ColId).Replace(",", "\",\""))"]
  674. , showSearch: true
  675. , onchange: function (obj, index) {
  676. if (index == 0) {
  677. var source = $("#ColId").val();
  678. $.each(obj, function (index, value) {
  679. var val = obj[index].value;
  680. if (source != "") {
  681. source += "," + val;
  682. } else {
  683. source += val;
  684. }
  685. });
  686. $("#ColId").val(source);
  687. } else if (index == 1) {
  688. var source = "," + $("#ColId").val() + ",";
  689. $.each(obj, function (index, value) {
  690. var val = obj[index].value;
  691. source = source.replace("," + val + ",", ",");
  692. });
  693. if (source != "") {
  694. if (source == ",") {
  695. source = "";
  696. } else {
  697. source = source.substring(1, source.length - 1);
  698. }
  699. }
  700. $("#ColId").val(source);
  701. }
  702. }
  703. });
  704. //TreeView,比如权限管理
  705. //省市区
  706. });
  707. }
  708. //加载vue
  709. var app = new Vue({
  710. el: '#app',
  711. data() {
  712. return {
  713. tempList: [],
  714. merchantColList: [],
  715. MerchantId: '@editData.MerchantId',
  716. ColId: '@editData.ColId',
  717. FareTemplateId: '@editData.FareTemplateId',
  718. MerchantColId: '@editData.MerchantColId',
  719. };
  720. },
  721. mounted() {
  722. init_layui();
  723. this.showTemplate();
  724. },
  725. methods: {
  726. showTemplate() {
  727. let that = this;
  728. $.ajax({
  729. url: "/Admin/ProductFareTemp/GetTemplate?r=" + Math.random(1),
  730. data: "MerchantId=" + MerchantId,
  731. dataType: "json",
  732. success: function (data) {
  733. that.tempList = data;
  734. setTimeout(function () {
  735. form.render();
  736. }, 1000);
  737. }
  738. });
  739. },
  740. showMerchantCol() {
  741. let that = this;
  742. @* $.ajax({
  743. url: "/Admin/MerchantCol/GetSelect?r=" + Math.random(1),
  744. data: "MerchantId=" + MerchantId,
  745. dataType: "json",
  746. success: function (data) {
  747. that.merchantColList = data;
  748. setTimeout(function () {
  749. form.render();
  750. }, 1000);
  751. }
  752. }); *@
  753. },
  754. }
  755. });
  756. </script>
  757. </body>
  758. </html>