ソースを参照

add 新增会员管理 营销管理

bzd_lxf 6 ヶ月 前
コミット
31c8211dca
100 ファイル変更8759 行追加86 行削除
  1. 158 0
      health-admin/src/main/java/com/bzd/web/controller/hygl/SHyglEquitiesController.java
  2. 158 0
      health-admin/src/main/java/com/bzd/web/controller/hygl/SHyglMembertagController.java
  3. 158 0
      health-admin/src/main/java/com/bzd/web/controller/hygl/jf/SHyglJfglMemberpointsinfoController.java
  4. 158 0
      health-admin/src/main/java/com/bzd/web/controller/hygl/jf/SHyglJfglOrderinfoController.java
  5. 158 0
      health-admin/src/main/java/com/bzd/web/controller/hygl/jf/SHyglJfglPointAdjustmentController.java
  6. 158 0
      health-admin/src/main/java/com/bzd/web/controller/hygl/yx/SHyglHyyxMouldmessageController.java
  7. 158 0
      health-admin/src/main/java/com/bzd/web/controller/hygl/yx/SHyglHyyxPeoplemanagementController.java
  8. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbInventoryvariationController.java
  9. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbJxcspmxStoreinventorychangesController.java
  10. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbMaintenanceorderitemsController.java
  11. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbProductinspectionController.java
  12. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbQdjlCleaningitemsController.java
  13. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbQualityreportitemsController.java
  14. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbReceiptorderitemsController.java
  15. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbRefillingitemsController.java
  16. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbRequisitionorderitemsController.java
  17. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbRetailsalesController.java
  18. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbReturnorderitemsController.java
  19. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbSalesanddispensingController.java
  20. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbStoreinventorycostController.java
  21. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkArrivalinfoController.java
  22. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkCkReceiptinfoController.java
  23. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDcddStorepurchaseorderController.java
  24. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDcshStorepurchasereceiptController.java
  25. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDcshStorepurchaserequestController.java
  26. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDcthStorereturnorderController.java
  27. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDzysDeliveryorderController.java
  28. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDzysEmployeesignaturestatusController.java
  29. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkMdqhRequisitionapplicationController.java
  30. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkMdqhdRequisitionorderController.java
  31. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkMdshReceiptdocumentController.java
  32. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkOutinfoController.java
  33. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkThReturnController.java
  34. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkThshReturndocumentController.java
  35. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkWeeklyrequisitionstatsController.java
  36. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkYsrkCheckinController.java
  37. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnAdjustmentdocumentController.java
  38. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnClyhStoremaintenancesheetController.java
  39. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnKqydStoreorderdetailsController.java
  40. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnKyspStoredocumentController.java
  41. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnLskcStoreproductinventoryController.java
  42. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnMdkcStoreproductstockController.java
  43. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnPdrwInventorytaskController.java
  44. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnQdjlCleaningitemsController.java
  45. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnQdjllClearancesheetController.java
  46. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnRefillsheetController.java
  47. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnStoragelocationController.java
  48. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnStoreinventorystatsController.java
  49. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnTransferzonedocumentController.java
  50. 2 2
      health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnZxyjStorestaleproductsController.java
  51. 158 0
      health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglCzkCzkglValueaddedcardController.java
  52. 158 0
      health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglCzkCzkxfTransactionrecordController.java
  53. 158 0
      health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglKjglHxjlRecordController.java
  54. 158 0
      health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglPosterinfoController.java
  55. 158 0
      health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglPromotioninfoController.java
  56. 158 0
      health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglZhspCombinationproductController.java
  57. 153 0
      health-admin/src/main/resources/templates/hygl/SHyglEquitiesAdd.html
  58. 138 0
      health-admin/src/main/resources/templates/hygl/SHyglEquitiesEdit.html
  59. 245 0
      health-admin/src/main/resources/templates/hygl/SHyglEquitiesList.html
  60. 129 0
      health-admin/src/main/resources/templates/hygl/SHyglEquitiesPageEdit.html
  61. 113 0
      health-admin/src/main/resources/templates/hygl/SHyglMembertagAdd.html
  62. 108 0
      health-admin/src/main/resources/templates/hygl/SHyglMembertagEdit.html
  63. 225 0
      health-admin/src/main/resources/templates/hygl/SHyglMembertagList.html
  64. 99 0
      health-admin/src/main/resources/templates/hygl/SHyglMembertagPageEdit.html
  65. 113 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglMemberpointsinfoAdd.html
  66. 108 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglMemberpointsinfoEdit.html
  67. 225 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglMemberpointsinfoList.html
  68. 99 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglMemberpointsinfoPageEdit.html
  69. 201 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglOrderinfoAdd.html
  70. 174 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglOrderinfoEdit.html
  71. 269 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglOrderinfoList.html
  72. 165 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglOrderinfoPageEdit.html
  73. 153 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglPointAdjustmentAdd.html
  74. 138 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglPointAdjustmentEdit.html
  75. 245 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglPointAdjustmentList.html
  76. 129 0
      health-admin/src/main/resources/templates/hygl/jf/SHyglJfglPointAdjustmentPageEdit.html
  77. 113 0
      health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxMouldmessageAdd.html
  78. 108 0
      health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxMouldmessageEdit.html
  79. 225 0
      health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxMouldmessageList.html
  80. 99 0
      health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxMouldmessagePageEdit.html
  81. 121 0
      health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxPeoplemanagementAdd.html
  82. 114 0
      health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxPeoplemanagementEdit.html
  83. 229 0
      health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxPeoplemanagementList.html
  84. 105 0
      health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxPeoplemanagementPageEdit.html
  85. 97 0
      health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkglValueaddedcardAdd.html
  86. 96 0
      health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkglValueaddedcardEdit.html
  87. 217 0
      health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkglValueaddedcardList.html
  88. 87 0
      health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkglValueaddedcardPageEdit.html
  89. 105 0
      health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkxfTransactionrecordAdd.html
  90. 102 0
      health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkxfTransactionrecordEdit.html
  91. 221 0
      health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkxfTransactionrecordList.html
  92. 93 0
      health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkxfTransactionrecordPageEdit.html
  93. 209 0
      health-admin/src/main/resources/templates/yxgl/SYxglKjglHxjlRecordAdd.html
  94. 180 0
      health-admin/src/main/resources/templates/yxgl/SYxglKjglHxjlRecordEdit.html
  95. 273 0
      health-admin/src/main/resources/templates/yxgl/SYxglKjglHxjlRecordList.html
  96. 171 0
      health-admin/src/main/resources/templates/yxgl/SYxglKjglHxjlRecordPageEdit.html
  97. 73 0
      health-admin/src/main/resources/templates/yxgl/SYxglPosterinfoAdd.html
  98. 78 0
      health-admin/src/main/resources/templates/yxgl/SYxglPosterinfoEdit.html
  99. 205 0
      health-admin/src/main/resources/templates/yxgl/SYxglPosterinfoList.html
  100. 69 0
      health-admin/src/main/resources/templates/yxgl/SYxglPosterinfoPageEdit.html

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/hygl/SHyglEquitiesController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.hygl;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.hygl.SHyglEquitiesService;
+
+import java.util.List;
+
+/**
+*
+* 权益管理 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "hygl/shyglequities")
+public class SHyglEquitiesController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "hygl/";
+
+    @Autowired
+    private SHyglEquitiesService sHyglEquitiesService;
+
+    /**
+    * 权益管理 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:hygl:view")
+    @GetMapping("/sHyglEquitiesAdd")
+    public String add() {
+        return prefix + "/SHyglEquitiesAdd";
+    }
+
+    /**
+    * 权益管理 新增
+    *
+    * @return
+    */
+    @Log(title = "权益管理新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sHyglEquitiesAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sHyglEquitiesService.addSHyglEquities(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 权益管理 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:hygl:view")
+    @GetMapping("/sHyglEquitiesView")
+    public String shyglequitiesListView() {
+        return prefix + "/SHyglEquitiesList";
+    }
+
+    /**
+    * 权益管理 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:hygl:sHyglEquitiesList")
+    @PostMapping("/sHyglEquitiesList")
+    @ResponseBody
+    public TableDataInfo shyglequitiesList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sHyglEquitiesService.findSHyglEquitiesList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 权益管理 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:hygl:remove")
+    @Log(title = "权益管理删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sHyglEquitiesRemove")
+    @ResponseBody
+    public AjaxResult shyglequitiesRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sHyglEquitiesService.SHyglEquitiesRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 权益管理 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:hygl:edit")
+    @GetMapping("/sHyglEquitiesEdit/{id}")
+    public String shyglequitiesView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sHyglEquitiesService.findSHyglEquitiesList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/shyglequitiesPageEdit";
+        }
+        return prefix+ "/shyglequitiesEdit";
+    }
+
+    /**
+    * 权益管理保存修改的数据
+    */
+    @RequiresPermissions("hygl:hygl:edit")
+    @Log(title = "权益管理修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sHyglEquitiesEdit")
+    @ResponseBody
+    public AjaxResult shyglequitiesEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sHyglEquitiesService.updateSHyglEquities(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表shyglequities with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表shyglequities with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/hygl/SHyglMembertagController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.hygl;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.hygl.SHyglMembertagService;
+
+import java.util.List;
+
+/**
+*
+* 会员标签表 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "hygl/shyglmembertag")
+public class SHyglMembertagController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "hygl/";
+
+    @Autowired
+    private SHyglMembertagService sHyglMembertagService;
+
+    /**
+    * 会员标签表 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:hygl:view")
+    @GetMapping("/sHyglMembertagAdd")
+    public String add() {
+        return prefix + "/SHyglMembertagAdd";
+    }
+
+    /**
+    * 会员标签表 新增
+    *
+    * @return
+    */
+    @Log(title = "会员标签表新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sHyglMembertagAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sHyglMembertagService.addSHyglMembertag(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 会员标签表 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:hygl:view")
+    @GetMapping("/sHyglMembertagView")
+    public String shyglmembertagListView() {
+        return prefix + "/SHyglMembertagList";
+    }
+
+    /**
+    * 会员标签表 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:hygl:sHyglMembertagList")
+    @PostMapping("/sHyglMembertagList")
+    @ResponseBody
+    public TableDataInfo shyglmembertagList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sHyglMembertagService.findSHyglMembertagList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 会员标签表 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:hygl:remove")
+    @Log(title = "会员标签表删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sHyglMembertagRemove")
+    @ResponseBody
+    public AjaxResult shyglmembertagRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sHyglMembertagService.SHyglMembertagRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 会员标签表 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:hygl:edit")
+    @GetMapping("/sHyglMembertagEdit/{id}")
+    public String shyglmembertagView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sHyglMembertagService.findSHyglMembertagList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/shyglmembertagPageEdit";
+        }
+        return prefix+ "/shyglmembertagEdit";
+    }
+
+    /**
+    * 会员标签表保存修改的数据
+    */
+    @RequiresPermissions("hygl:hygl:edit")
+    @Log(title = "会员标签表修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sHyglMembertagEdit")
+    @ResponseBody
+    public AjaxResult shyglmembertagEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sHyglMembertagService.updateSHyglMembertag(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表shyglmembertag with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表shyglmembertag with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/hygl/jf/SHyglJfglMemberpointsinfoController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.hygl.jf;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.hygl.jf.SHyglJfglMemberpointsinfoService;
+
+import java.util.List;
+
+/**
+*
+* 积分记录表 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "hygl/shygljfglmemberpointsinfo")
+public class SHyglJfglMemberpointsinfoController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "hygl/jf";
+
+    @Autowired
+    private SHyglJfglMemberpointsinfoService sHyglJfglMemberpointsinfoService;
+
+    /**
+    * 积分记录表 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:jf:view")
+    @GetMapping("/sHyglJfglMemberpointsinfoAdd")
+    public String add() {
+        return prefix + "/SHyglJfglMemberpointsinfoAdd";
+    }
+
+    /**
+    * 积分记录表 新增
+    *
+    * @return
+    */
+    @Log(title = "积分记录表新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sHyglJfglMemberpointsinfoAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sHyglJfglMemberpointsinfoService.addSHyglJfglMemberpointsinfo(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 积分记录表 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:jf:view")
+    @GetMapping("/sHyglJfglMemberpointsinfoView")
+    public String shygljfglmemberpointsinfoListView() {
+        return prefix + "/SHyglJfglMemberpointsinfoList";
+    }
+
+    /**
+    * 积分记录表 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:jf:sHyglJfglMemberpointsinfoList")
+    @PostMapping("/sHyglJfglMemberpointsinfoList")
+    @ResponseBody
+    public TableDataInfo shygljfglmemberpointsinfoList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sHyglJfglMemberpointsinfoService.findSHyglJfglMemberpointsinfoList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 积分记录表 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:jf:remove")
+    @Log(title = "积分记录表删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sHyglJfglMemberpointsinfoRemove")
+    @ResponseBody
+    public AjaxResult shygljfglmemberpointsinfoRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sHyglJfglMemberpointsinfoService.SHyglJfglMemberpointsinfoRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 积分记录表 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:jf:edit")
+    @GetMapping("/sHyglJfglMemberpointsinfoEdit/{id}")
+    public String shygljfglmemberpointsinfoView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sHyglJfglMemberpointsinfoService.findSHyglJfglMemberpointsinfoList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/shygljfglmemberpointsinfoPageEdit";
+        }
+        return prefix+ "/shygljfglmemberpointsinfoEdit";
+    }
+
+    /**
+    * 积分记录表保存修改的数据
+    */
+    @RequiresPermissions("hygl:jf:edit")
+    @Log(title = "积分记录表修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sHyglJfglMemberpointsinfoEdit")
+    @ResponseBody
+    public AjaxResult shygljfglmemberpointsinfoEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sHyglJfglMemberpointsinfoService.updateSHyglJfglMemberpointsinfo(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表shygljfglmemberpointsinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表shygljfglmemberpointsinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/hygl/jf/SHyglJfglOrderinfoController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.hygl.jf;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.hygl.jf.SHyglJfglOrderinfoService;
+
+import java.util.List;
+
+/**
+*
+* 兑换记录表 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "hygl/shygljfglorderinfo")
+public class SHyglJfglOrderinfoController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "hygl/jf";
+
+    @Autowired
+    private SHyglJfglOrderinfoService sHyglJfglOrderinfoService;
+
+    /**
+    * 兑换记录表 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:jf:view")
+    @GetMapping("/sHyglJfglOrderinfoAdd")
+    public String add() {
+        return prefix + "/SHyglJfglOrderinfoAdd";
+    }
+
+    /**
+    * 兑换记录表 新增
+    *
+    * @return
+    */
+    @Log(title = "兑换记录表新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sHyglJfglOrderinfoAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sHyglJfglOrderinfoService.addSHyglJfglOrderinfo(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 兑换记录表 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:jf:view")
+    @GetMapping("/sHyglJfglOrderinfoView")
+    public String shygljfglorderinfoListView() {
+        return prefix + "/SHyglJfglOrderinfoList";
+    }
+
+    /**
+    * 兑换记录表 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:jf:sHyglJfglOrderinfoList")
+    @PostMapping("/sHyglJfglOrderinfoList")
+    @ResponseBody
+    public TableDataInfo shygljfglorderinfoList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sHyglJfglOrderinfoService.findSHyglJfglOrderinfoList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 兑换记录表 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:jf:remove")
+    @Log(title = "兑换记录表删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sHyglJfglOrderinfoRemove")
+    @ResponseBody
+    public AjaxResult shygljfglorderinfoRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sHyglJfglOrderinfoService.SHyglJfglOrderinfoRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 兑换记录表 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:jf:edit")
+    @GetMapping("/sHyglJfglOrderinfoEdit/{id}")
+    public String shygljfglorderinfoView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sHyglJfglOrderinfoService.findSHyglJfglOrderinfoList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/shygljfglorderinfoPageEdit";
+        }
+        return prefix+ "/shygljfglorderinfoEdit";
+    }
+
+    /**
+    * 兑换记录表保存修改的数据
+    */
+    @RequiresPermissions("hygl:jf:edit")
+    @Log(title = "兑换记录表修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sHyglJfglOrderinfoEdit")
+    @ResponseBody
+    public AjaxResult shygljfglorderinfoEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sHyglJfglOrderinfoService.updateSHyglJfglOrderinfo(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表shygljfglorderinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表shygljfglorderinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/hygl/jf/SHyglJfglPointAdjustmentController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.hygl.jf;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.hygl.jf.SHyglJfglPointAdjustmentService;
+
+import java.util.List;
+
+/**
+*
+* 积分调整表 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "hygl/shygljfglpointadjustment")
+public class SHyglJfglPointAdjustmentController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "hygl/jf";
+
+    @Autowired
+    private SHyglJfglPointAdjustmentService sHyglJfglPointAdjustmentService;
+
+    /**
+    * 积分调整表 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:jf:view")
+    @GetMapping("/sHyglJfglPointAdjustmentAdd")
+    public String add() {
+        return prefix + "/SHyglJfglPointAdjustmentAdd";
+    }
+
+    /**
+    * 积分调整表 新增
+    *
+    * @return
+    */
+    @Log(title = "积分调整表新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sHyglJfglPointAdjustmentAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sHyglJfglPointAdjustmentService.addSHyglJfglPointAdjustment(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 积分调整表 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:jf:view")
+    @GetMapping("/sHyglJfglPointAdjustmentView")
+    public String shygljfglpointadjustmentListView() {
+        return prefix + "/SHyglJfglPointAdjustmentList";
+    }
+
+    /**
+    * 积分调整表 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:jf:sHyglJfglPointAdjustmentList")
+    @PostMapping("/sHyglJfglPointAdjustmentList")
+    @ResponseBody
+    public TableDataInfo shygljfglpointadjustmentList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sHyglJfglPointAdjustmentService.findSHyglJfglPointAdjustmentList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 积分调整表 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:jf:remove")
+    @Log(title = "积分调整表删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sHyglJfglPointAdjustmentRemove")
+    @ResponseBody
+    public AjaxResult shygljfglpointadjustmentRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sHyglJfglPointAdjustmentService.SHyglJfglPointAdjustmentRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 积分调整表 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:jf:edit")
+    @GetMapping("/sHyglJfglPointAdjustmentEdit/{id}")
+    public String shygljfglpointadjustmentView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sHyglJfglPointAdjustmentService.findSHyglJfglPointAdjustmentList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/shygljfglpointadjustmentPageEdit";
+        }
+        return prefix+ "/shygljfglpointadjustmentEdit";
+    }
+
+    /**
+    * 积分调整表保存修改的数据
+    */
+    @RequiresPermissions("hygl:jf:edit")
+    @Log(title = "积分调整表修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sHyglJfglPointAdjustmentEdit")
+    @ResponseBody
+    public AjaxResult shygljfglpointadjustmentEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sHyglJfglPointAdjustmentService.updateSHyglJfglPointAdjustment(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表shygljfglpointadjustment with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表shygljfglpointadjustment with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/hygl/yx/SHyglHyyxMouldmessageController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.hygl.yx;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.hygl.yx.SHyglHyyxMouldmessageService;
+
+import java.util.List;
+
+/**
+*
+* 模版文案管理表(模版管理) 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "hygl/shyglhyyxmouldmessage")
+public class SHyglHyyxMouldmessageController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "hygl/yx";
+
+    @Autowired
+    private SHyglHyyxMouldmessageService sHyglHyyxMouldmessageService;
+
+    /**
+    * 模版文案管理表(模版管理) 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:yx:view")
+    @GetMapping("/sHyglHyyxMouldmessageAdd")
+    public String add() {
+        return prefix + "/SHyglHyyxMouldmessageAdd";
+    }
+
+    /**
+    * 模版文案管理表(模版管理) 新增
+    *
+    * @return
+    */
+    @Log(title = "模版文案管理表(模版管理)新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sHyglHyyxMouldmessageAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sHyglHyyxMouldmessageService.addSHyglHyyxMouldmessage(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 模版文案管理表(模版管理) 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:yx:view")
+    @GetMapping("/sHyglHyyxMouldmessageView")
+    public String shyglhyyxmouldmessageListView() {
+        return prefix + "/SHyglHyyxMouldmessageList";
+    }
+
+    /**
+    * 模版文案管理表(模版管理) 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:yx:sHyglHyyxMouldmessageList")
+    @PostMapping("/sHyglHyyxMouldmessageList")
+    @ResponseBody
+    public TableDataInfo shyglhyyxmouldmessageList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sHyglHyyxMouldmessageService.findSHyglHyyxMouldmessageList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 模版文案管理表(模版管理) 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:yx:remove")
+    @Log(title = "模版文案管理表(模版管理)删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sHyglHyyxMouldmessageRemove")
+    @ResponseBody
+    public AjaxResult shyglhyyxmouldmessageRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sHyglHyyxMouldmessageService.SHyglHyyxMouldmessageRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 模版文案管理表(模版管理) 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:yx:edit")
+    @GetMapping("/sHyglHyyxMouldmessageEdit/{id}")
+    public String shyglhyyxmouldmessageView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sHyglHyyxMouldmessageService.findSHyglHyyxMouldmessageList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/shyglhyyxmouldmessagePageEdit";
+        }
+        return prefix+ "/shyglhyyxmouldmessageEdit";
+    }
+
+    /**
+    * 模版文案管理表(模版管理)保存修改的数据
+    */
+    @RequiresPermissions("hygl:yx:edit")
+    @Log(title = "模版文案管理表(模版管理)修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sHyglHyyxMouldmessageEdit")
+    @ResponseBody
+    public AjaxResult shyglhyyxmouldmessageEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sHyglHyyxMouldmessageService.updateSHyglHyyxMouldmessage(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表shyglhyyxmouldmessage with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表shyglhyyxmouldmessage with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/hygl/yx/SHyglHyyxPeoplemanagementController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.hygl.yx;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.hygl.yx.SHyglHyyxPeoplemanagementService;
+
+import java.util.List;
+
+/**
+*
+* 人群管理表(精准营销) 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "hygl/shyglhyyxpeoplemanagement")
+public class SHyglHyyxPeoplemanagementController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "hygl/yx";
+
+    @Autowired
+    private SHyglHyyxPeoplemanagementService sHyglHyyxPeoplemanagementService;
+
+    /**
+    * 人群管理表(精准营销) 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:yx:view")
+    @GetMapping("/sHyglHyyxPeoplemanagementAdd")
+    public String add() {
+        return prefix + "/SHyglHyyxPeoplemanagementAdd";
+    }
+
+    /**
+    * 人群管理表(精准营销) 新增
+    *
+    * @return
+    */
+    @Log(title = "人群管理表(精准营销)新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sHyglHyyxPeoplemanagementAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sHyglHyyxPeoplemanagementService.addSHyglHyyxPeoplemanagement(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 人群管理表(精准营销) 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("hygl:yx:view")
+    @GetMapping("/sHyglHyyxPeoplemanagementView")
+    public String shyglhyyxpeoplemanagementListView() {
+        return prefix + "/SHyglHyyxPeoplemanagementList";
+    }
+
+    /**
+    * 人群管理表(精准营销) 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:yx:sHyglHyyxPeoplemanagementList")
+    @PostMapping("/sHyglHyyxPeoplemanagementList")
+    @ResponseBody
+    public TableDataInfo shyglhyyxpeoplemanagementList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sHyglHyyxPeoplemanagementService.findSHyglHyyxPeoplemanagementList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 人群管理表(精准营销) 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:yx:remove")
+    @Log(title = "人群管理表(精准营销)删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sHyglHyyxPeoplemanagementRemove")
+    @ResponseBody
+    public AjaxResult shyglhyyxpeoplemanagementRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sHyglHyyxPeoplemanagementService.SHyglHyyxPeoplemanagementRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 人群管理表(精准营销) 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("hygl:yx:edit")
+    @GetMapping("/sHyglHyyxPeoplemanagementEdit/{id}")
+    public String shyglhyyxpeoplemanagementView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sHyglHyyxPeoplemanagementService.findSHyglHyyxPeoplemanagementList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/shyglhyyxpeoplemanagementPageEdit";
+        }
+        return prefix+ "/shyglhyyxpeoplemanagementEdit";
+    }
+
+    /**
+    * 人群管理表(精准营销)保存修改的数据
+    */
+    @RequiresPermissions("hygl:yx:edit")
+    @Log(title = "人群管理表(精准营销)修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sHyglHyyxPeoplemanagementEdit")
+    @ResponseBody
+    public AjaxResult shyglhyyxpeoplemanagementEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sHyglHyyxPeoplemanagementService.updateSHyglHyyxPeoplemanagement(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表shyglhyyxpeoplemanagement with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表shyglhyyxpeoplemanagement with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbInventoryvariationController.java

@@ -37,7 +37,7 @@ public class SKcBbInventoryvariationController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbInventoryvariationAdd")
     public String add() {
         return prefix + "/SKcBbInventoryvariationAdd";
@@ -72,7 +72,7 @@ public class SKcBbInventoryvariationController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbInventoryvariationView")
     public String skcbbinventoryvariationListView() {
         return prefix + "/SKcBbInventoryvariationList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbJxcspmxStoreinventorychangesController.java

@@ -37,7 +37,7 @@ public class SKcBbJxcspmxStoreinventorychangesController extends BaseController
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbJxcspmxStoreinventorychangesAdd")
     public String add() {
         return prefix + "/SKcBbJxcspmxStoreinventorychangesAdd";
@@ -72,7 +72,7 @@ public class SKcBbJxcspmxStoreinventorychangesController extends BaseController
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbJxcspmxStoreinventorychangesView")
     public String skcbbjxcspmxstoreinventorychangesListView() {
         return prefix + "/SKcBbJxcspmxStoreinventorychangesList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbMaintenanceorderitemsController.java

@@ -37,7 +37,7 @@ public class SKcBbMaintenanceorderitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbMaintenanceorderitemsAdd")
     public String add() {
         return prefix + "/SKcBbMaintenanceorderitemsAdd";
@@ -72,7 +72,7 @@ public class SKcBbMaintenanceorderitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbMaintenanceorderitemsView")
     public String skcbbmaintenanceorderitemsListView() {
         return prefix + "/SKcBbMaintenanceorderitemsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbProductinspectionController.java

@@ -37,7 +37,7 @@ public class SKcBbProductinspectionController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbProductinspectionAdd")
     public String add() {
         return prefix + "/SKcBbProductinspectionAdd";
@@ -72,7 +72,7 @@ public class SKcBbProductinspectionController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbProductinspectionView")
     public String skcbbproductinspectionListView() {
         return prefix + "/SKcBbProductinspectionList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbQdjlCleaningitemsController.java

@@ -37,7 +37,7 @@ public class SKcBbQdjlCleaningitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbQdjlCleaningitemsAdd")
     public String add() {
         return prefix + "/SKcBbQdjlCleaningitemsAdd";
@@ -72,7 +72,7 @@ public class SKcBbQdjlCleaningitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbQdjlCleaningitemsView")
     public String skcbbqdjlcleaningitemsListView() {
         return prefix + "/SKcBbQdjlCleaningitemsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbQualityreportitemsController.java

@@ -37,7 +37,7 @@ public class SKcBbQualityreportitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbQualityreportitemsAdd")
     public String add() {
         return prefix + "/SKcBbQualityreportitemsAdd";
@@ -72,7 +72,7 @@ public class SKcBbQualityreportitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbQualityreportitemsView")
     public String skcbbqualityreportitemsListView() {
         return prefix + "/SKcBbQualityreportitemsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbReceiptorderitemsController.java

@@ -37,7 +37,7 @@ public class SKcBbReceiptorderitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbReceiptorderitemsAdd")
     public String add() {
         return prefix + "/SKcBbReceiptorderitemsAdd";
@@ -72,7 +72,7 @@ public class SKcBbReceiptorderitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbReceiptorderitemsView")
     public String skcbbreceiptorderitemsListView() {
         return prefix + "/SKcBbReceiptorderitemsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbRefillingitemsController.java

@@ -37,7 +37,7 @@ public class SKcBbRefillingitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbRefillingitemsAdd")
     public String add() {
         return prefix + "/SKcBbRefillingitemsAdd";
@@ -72,7 +72,7 @@ public class SKcBbRefillingitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbRefillingitemsView")
     public String skcbbrefillingitemsListView() {
         return prefix + "/SKcBbRefillingitemsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbRequisitionorderitemsController.java

@@ -37,7 +37,7 @@ public class SKcBbRequisitionorderitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbRequisitionorderitemsAdd")
     public String add() {
         return prefix + "/SKcBbRequisitionorderitemsAdd";
@@ -72,7 +72,7 @@ public class SKcBbRequisitionorderitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbRequisitionorderitemsView")
     public String skcbbrequisitionorderitemsListView() {
         return prefix + "/SKcBbRequisitionorderitemsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbRetailsalesController.java

@@ -37,7 +37,7 @@ public class SKcBbRetailsalesController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbRetailsalesAdd")
     public String add() {
         return prefix + "/SKcBbRetailsalesAdd";
@@ -72,7 +72,7 @@ public class SKcBbRetailsalesController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbRetailsalesView")
     public String skcbbretailsalesListView() {
         return prefix + "/SKcBbRetailsalesList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbReturnorderitemsController.java

@@ -37,7 +37,7 @@ public class SKcBbReturnorderitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbReturnorderitemsAdd")
     public String add() {
         return prefix + "/SKcBbReturnorderitemsAdd";
@@ -72,7 +72,7 @@ public class SKcBbReturnorderitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbReturnorderitemsView")
     public String skcbbreturnorderitemsListView() {
         return prefix + "/SKcBbReturnorderitemsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbSalesanddispensingController.java

@@ -37,7 +37,7 @@ public class SKcBbSalesanddispensingController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbSalesanddispensingAdd")
     public String add() {
         return prefix + "/SKcBbSalesanddispensingAdd";
@@ -72,7 +72,7 @@ public class SKcBbSalesanddispensingController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbSalesanddispensingView")
     public String skcbbsalesanddispensingListView() {
         return prefix + "/SKcBbSalesanddispensingList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/bb/SKcBbStoreinventorycostController.java

@@ -37,7 +37,7 @@ public class SKcBbStoreinventorycostController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbStoreinventorycostAdd")
     public String add() {
         return prefix + "/SKcBbStoreinventorycostAdd";
@@ -72,7 +72,7 @@ public class SKcBbStoreinventorycostController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:bb::view")
+    @RequiresPermissions("kc:bb:view")
     @GetMapping("/sKcBbStoreinventorycostView")
     public String skcbbstoreinventorycostListView() {
         return prefix + "/SKcBbStoreinventorycostList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkArrivalinfoController.java

@@ -37,7 +37,7 @@ public class SKcCrkArrivalinfoController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkArrivalinfoAdd")
     public String add() {
         return prefix + "/SKcCrkArrivalinfoAdd";
@@ -72,7 +72,7 @@ public class SKcCrkArrivalinfoController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkArrivalinfoView")
     public String skccrkarrivalinfoListView() {
         return prefix + "/SKcCrkArrivalinfoList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkCkReceiptinfoController.java

@@ -37,7 +37,7 @@ public class SKcCrkCkReceiptinfoController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkCkReceiptinfoAdd")
     public String add() {
         return prefix + "/SKcCrkCkReceiptinfoAdd";
@@ -72,7 +72,7 @@ public class SKcCrkCkReceiptinfoController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkCkReceiptinfoView")
     public String skccrkckreceiptinfoListView() {
         return prefix + "/SKcCrkCkReceiptinfoList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDcddStorepurchaseorderController.java

@@ -37,7 +37,7 @@ public class SKcCrkDcddStorepurchaseorderController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDcddStorepurchaseorderAdd")
     public String add() {
         return prefix + "/SKcCrkDcddStorepurchaseorderAdd";
@@ -72,7 +72,7 @@ public class SKcCrkDcddStorepurchaseorderController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDcddStorepurchaseorderView")
     public String skccrkdcddstorepurchaseorderListView() {
         return prefix + "/SKcCrkDcddStorepurchaseorderList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDcshStorepurchasereceiptController.java

@@ -37,7 +37,7 @@ public class SKcCrkDcshStorepurchasereceiptController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDcshStorepurchasereceiptAdd")
     public String add() {
         return prefix + "/SKcCrkDcshStorepurchasereceiptAdd";
@@ -72,7 +72,7 @@ public class SKcCrkDcshStorepurchasereceiptController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDcshStorepurchasereceiptView")
     public String skccrkdcshstorepurchasereceiptListView() {
         return prefix + "/SKcCrkDcshStorepurchasereceiptList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDcshStorepurchaserequestController.java

@@ -37,7 +37,7 @@ public class SKcCrkDcshStorepurchaserequestController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDcshStorepurchaserequestAdd")
     public String add() {
         return prefix + "/SKcCrkDcshStorepurchaserequestAdd";
@@ -72,7 +72,7 @@ public class SKcCrkDcshStorepurchaserequestController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDcshStorepurchaserequestView")
     public String skccrkdcshstorepurchaserequestListView() {
         return prefix + "/SKcCrkDcshStorepurchaserequestList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDcthStorereturnorderController.java

@@ -37,7 +37,7 @@ public class SKcCrkDcthStorereturnorderController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDcthStorereturnorderAdd")
     public String add() {
         return prefix + "/SKcCrkDcthStorereturnorderAdd";
@@ -72,7 +72,7 @@ public class SKcCrkDcthStorereturnorderController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDcthStorereturnorderView")
     public String skccrkdcthstorereturnorderListView() {
         return prefix + "/SKcCrkDcthStorereturnorderList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDzysDeliveryorderController.java

@@ -37,7 +37,7 @@ public class SKcCrkDzysDeliveryorderController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDzysDeliveryorderAdd")
     public String add() {
         return prefix + "/SKcCrkDzysDeliveryorderAdd";
@@ -72,7 +72,7 @@ public class SKcCrkDzysDeliveryorderController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDzysDeliveryorderView")
     public String skccrkdzysdeliveryorderListView() {
         return prefix + "/SKcCrkDzysDeliveryorderList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkDzysEmployeesignaturestatusController.java

@@ -37,7 +37,7 @@ public class SKcCrkDzysEmployeesignaturestatusController extends BaseController
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDzysEmployeesignaturestatusAdd")
     public String add() {
         return prefix + "/SKcCrkDzysEmployeesignaturestatusAdd";
@@ -72,7 +72,7 @@ public class SKcCrkDzysEmployeesignaturestatusController extends BaseController
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkDzysEmployeesignaturestatusView")
     public String skccrkdzysemployeesignaturestatusListView() {
         return prefix + "/SKcCrkDzysEmployeesignaturestatusList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkMdqhRequisitionapplicationController.java

@@ -37,7 +37,7 @@ public class SKcCrkMdqhRequisitionapplicationController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkMdqhRequisitionapplicationAdd")
     public String add() {
         return prefix + "/SKcCrkMdqhRequisitionapplicationAdd";
@@ -72,7 +72,7 @@ public class SKcCrkMdqhRequisitionapplicationController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkMdqhRequisitionapplicationView")
     public String skccrkmdqhrequisitionapplicationListView() {
         return prefix + "/SKcCrkMdqhRequisitionapplicationList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkMdqhdRequisitionorderController.java

@@ -37,7 +37,7 @@ public class SKcCrkMdqhdRequisitionorderController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkMdqhdRequisitionorderAdd")
     public String add() {
         return prefix + "/SKcCrkMdqhdRequisitionorderAdd";
@@ -72,7 +72,7 @@ public class SKcCrkMdqhdRequisitionorderController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkMdqhdRequisitionorderView")
     public String skccrkmdqhdrequisitionorderListView() {
         return prefix + "/SKcCrkMdqhdRequisitionorderList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkMdshReceiptdocumentController.java

@@ -37,7 +37,7 @@ public class SKcCrkMdshReceiptdocumentController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkMdshReceiptdocumentAdd")
     public String add() {
         return prefix + "/SKcCrkMdshReceiptdocumentAdd";
@@ -72,7 +72,7 @@ public class SKcCrkMdshReceiptdocumentController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkMdshReceiptdocumentView")
     public String skccrkmdshreceiptdocumentListView() {
         return prefix + "/SKcCrkMdshReceiptdocumentList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkOutinfoController.java

@@ -37,7 +37,7 @@ public class SKcCrkOutinfoController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkOutinfoAdd")
     public String add() {
         return prefix + "/SKcCrkOutinfoAdd";
@@ -72,7 +72,7 @@ public class SKcCrkOutinfoController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkOutinfoView")
     public String skccrkoutinfoListView() {
         return prefix + "/SKcCrkOutinfoList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkThReturnController.java

@@ -37,7 +37,7 @@ public class SKcCrkThReturnController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkThReturnAdd")
     public String add() {
         return prefix + "/SKcCrkThReturnAdd";
@@ -72,7 +72,7 @@ public class SKcCrkThReturnController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkThReturnView")
     public String skccrkthreturnListView() {
         return prefix + "/SKcCrkThReturnList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkThshReturndocumentController.java

@@ -37,7 +37,7 @@ public class SKcCrkThshReturndocumentController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkThshReturndocumentAdd")
     public String add() {
         return prefix + "/SKcCrkThshReturndocumentAdd";
@@ -72,7 +72,7 @@ public class SKcCrkThshReturndocumentController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkThshReturndocumentView")
     public String skccrkthshreturndocumentListView() {
         return prefix + "/SKcCrkThshReturndocumentList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkWeeklyrequisitionstatsController.java

@@ -37,7 +37,7 @@ public class SKcCrkWeeklyrequisitionstatsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkWeeklyrequisitionstatsAdd")
     public String add() {
         return prefix + "/SKcCrkWeeklyrequisitionstatsAdd";
@@ -72,7 +72,7 @@ public class SKcCrkWeeklyrequisitionstatsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkWeeklyrequisitionstatsView")
     public String skccrkweeklyrequisitionstatsListView() {
         return prefix + "/SKcCrkWeeklyrequisitionstatsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/crk/SKcCrkYsrkCheckinController.java

@@ -37,7 +37,7 @@ public class SKcCrkYsrkCheckinController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkYsrkCheckinAdd")
     public String add() {
         return prefix + "/SKcCrkYsrkCheckinAdd";
@@ -72,7 +72,7 @@ public class SKcCrkYsrkCheckinController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:crk::view")
+    @RequiresPermissions("kc:crk:view")
     @GetMapping("/sKcCrkYsrkCheckinView")
     public String skccrkysrkcheckinListView() {
         return prefix + "/SKcCrkYsrkCheckinList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnAdjustmentdocumentController.java

@@ -37,7 +37,7 @@ public class SKcKnAdjustmentdocumentController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnAdjustmentdocumentAdd")
     public String add() {
         return prefix + "/SKcKnAdjustmentdocumentAdd";
@@ -72,7 +72,7 @@ public class SKcKnAdjustmentdocumentController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnAdjustmentdocumentView")
     public String skcknadjustmentdocumentListView() {
         return prefix + "/SKcKnAdjustmentdocumentList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnClyhStoremaintenancesheetController.java

@@ -37,7 +37,7 @@ public class SKcKnClyhStoremaintenancesheetController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnClyhStoremaintenancesheetAdd")
     public String add() {
         return prefix + "/SKcKnClyhStoremaintenancesheetAdd";
@@ -72,7 +72,7 @@ public class SKcKnClyhStoremaintenancesheetController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnClyhStoremaintenancesheetView")
     public String skcknclyhstoremaintenancesheetListView() {
         return prefix + "/SKcKnClyhStoremaintenancesheetList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnKqydStoreorderdetailsController.java

@@ -37,7 +37,7 @@ public class SKcKnKqydStoreorderdetailsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnKqydStoreorderdetailsAdd")
     public String add() {
         return prefix + "/SKcKnKqydStoreorderdetailsAdd";
@@ -72,7 +72,7 @@ public class SKcKnKqydStoreorderdetailsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnKqydStoreorderdetailsView")
     public String skcknkqydstoreorderdetailsListView() {
         return prefix + "/SKcKnKqydStoreorderdetailsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnKyspStoredocumentController.java

@@ -37,7 +37,7 @@ public class SKcKnKyspStoredocumentController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnKyspStoredocumentAdd")
     public String add() {
         return prefix + "/SKcKnKyspStoredocumentAdd";
@@ -72,7 +72,7 @@ public class SKcKnKyspStoredocumentController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnKyspStoredocumentView")
     public String skcknkyspstoredocumentListView() {
         return prefix + "/SKcKnKyspStoredocumentList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnLskcStoreproductinventoryController.java

@@ -37,7 +37,7 @@ public class SKcKnLskcStoreproductinventoryController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnLskcStoreproductinventoryAdd")
     public String add() {
         return prefix + "/SKcKnLskcStoreproductinventoryAdd";
@@ -72,7 +72,7 @@ public class SKcKnLskcStoreproductinventoryController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnLskcStoreproductinventoryView")
     public String skcknlskcstoreproductinventoryListView() {
         return prefix + "/SKcKnLskcStoreproductinventoryList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnMdkcStoreproductstockController.java

@@ -37,7 +37,7 @@ public class SKcKnMdkcStoreproductstockController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnMdkcStoreproductstockAdd")
     public String add() {
         return prefix + "/SKcKnMdkcStoreproductstockAdd";
@@ -72,7 +72,7 @@ public class SKcKnMdkcStoreproductstockController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnMdkcStoreproductstockView")
     public String skcknmdkcstoreproductstockListView() {
         return prefix + "/SKcKnMdkcStoreproductstockList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnPdrwInventorytaskController.java

@@ -37,7 +37,7 @@ public class SKcKnPdrwInventorytaskController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnPdrwInventorytaskAdd")
     public String add() {
         return prefix + "/SKcKnPdrwInventorytaskAdd";
@@ -72,7 +72,7 @@ public class SKcKnPdrwInventorytaskController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnPdrwInventorytaskView")
     public String skcknpdrwinventorytaskListView() {
         return prefix + "/SKcKnPdrwInventorytaskList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnQdjlCleaningitemsController.java

@@ -37,7 +37,7 @@ public class SKcKnQdjlCleaningitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnQdjlCleaningitemsAdd")
     public String add() {
         return prefix + "/SKcKnQdjlCleaningitemsAdd";
@@ -72,7 +72,7 @@ public class SKcKnQdjlCleaningitemsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnQdjlCleaningitemsView")
     public String skcknqdjlcleaningitemsListView() {
         return prefix + "/SKcKnQdjlCleaningitemsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnQdjllClearancesheetController.java

@@ -37,7 +37,7 @@ public class SKcKnQdjllClearancesheetController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnQdjllClearancesheetAdd")
     public String add() {
         return prefix + "/SKcKnQdjllClearancesheetAdd";
@@ -72,7 +72,7 @@ public class SKcKnQdjllClearancesheetController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnQdjllClearancesheetView")
     public String skcknqdjllclearancesheetListView() {
         return prefix + "/SKcKnQdjllClearancesheetList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnRefillsheetController.java

@@ -37,7 +37,7 @@ public class SKcKnRefillsheetController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnRefillsheetAdd")
     public String add() {
         return prefix + "/SKcKnRefillsheetAdd";
@@ -72,7 +72,7 @@ public class SKcKnRefillsheetController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnRefillsheetView")
     public String skcknrefillsheetListView() {
         return prefix + "/SKcKnRefillsheetList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnStoragelocationController.java

@@ -37,7 +37,7 @@ public class SKcKnStoragelocationController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnStoragelocationAdd")
     public String add() {
         return prefix + "/SKcKnStoragelocationAdd";
@@ -72,7 +72,7 @@ public class SKcKnStoragelocationController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnStoragelocationView")
     public String skcknstoragelocationListView() {
         return prefix + "/SKcKnStoragelocationList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnStoreinventorystatsController.java

@@ -37,7 +37,7 @@ public class SKcKnStoreinventorystatsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnStoreinventorystatsAdd")
     public String add() {
         return prefix + "/SKcKnStoreinventorystatsAdd";
@@ -72,7 +72,7 @@ public class SKcKnStoreinventorystatsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnStoreinventorystatsView")
     public String skcknstoreinventorystatsListView() {
         return prefix + "/SKcKnStoreinventorystatsList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnTransferzonedocumentController.java

@@ -37,7 +37,7 @@ public class SKcKnTransferzonedocumentController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnTransferzonedocumentAdd")
     public String add() {
         return prefix + "/SKcKnTransferzonedocumentAdd";
@@ -72,7 +72,7 @@ public class SKcKnTransferzonedocumentController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnTransferzonedocumentView")
     public String skckntransferzonedocumentListView() {
         return prefix + "/SKcKnTransferzonedocumentList";

+ 2 - 2
health-admin/src/main/java/com/bzd/web/controller/kc/kn/SKcKnZxyjStorestaleproductsController.java

@@ -37,7 +37,7 @@ public class SKcKnZxyjStorestaleproductsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnZxyjStorestaleproductsAdd")
     public String add() {
         return prefix + "/SKcKnZxyjStorestaleproductsAdd";
@@ -72,7 +72,7 @@ public class SKcKnZxyjStorestaleproductsController extends BaseController {
     *
     * @return
     */
-    @RequiresPermissions("kc:kn::view")
+    @RequiresPermissions("kc:kn:view")
     @GetMapping("/sKcKnZxyjStorestaleproductsView")
     public String skcknzxyjstorestaleproductsListView() {
         return prefix + "/SKcKnZxyjStorestaleproductsList";

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglCzkCzkglValueaddedcardController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.yxgl;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.yxgl.SYxglCzkCzkglValueaddedcardService;
+
+import java.util.List;
+
+/**
+*
+* 储值卡信息表 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "yxgl/syxglczkczkglvalueaddedcard")
+public class SYxglCzkCzkglValueaddedcardController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "yxgl";
+
+    @Autowired
+    private SYxglCzkCzkglValueaddedcardService sYxglCzkCzkglValueaddedcardService;
+
+    /**
+    * 储值卡信息表 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglCzkCzkglValueaddedcardAdd")
+    public String add() {
+        return prefix + "/SYxglCzkCzkglValueaddedcardAdd";
+    }
+
+    /**
+    * 储值卡信息表 新增
+    *
+    * @return
+    */
+    @Log(title = "储值卡信息表新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sYxglCzkCzkglValueaddedcardAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sYxglCzkCzkglValueaddedcardService.addSYxglCzkCzkglValueaddedcard(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 储值卡信息表 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglCzkCzkglValueaddedcardView")
+    public String syxglczkczkglvalueaddedcardListView() {
+        return prefix + "/SYxglCzkCzkglValueaddedcardList";
+    }
+
+    /**
+    * 储值卡信息表 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:sYxglCzkCzkglValueaddedcardList")
+    @PostMapping("/sYxglCzkCzkglValueaddedcardList")
+    @ResponseBody
+    public TableDataInfo syxglczkczkglvalueaddedcardList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sYxglCzkCzkglValueaddedcardService.findSYxglCzkCzkglValueaddedcardList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 储值卡信息表 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:remove")
+    @Log(title = "储值卡信息表删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sYxglCzkCzkglValueaddedcardRemove")
+    @ResponseBody
+    public AjaxResult syxglczkczkglvalueaddedcardRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sYxglCzkCzkglValueaddedcardService.SYxglCzkCzkglValueaddedcardRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 储值卡信息表 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @GetMapping("/sYxglCzkCzkglValueaddedcardEdit/{id}")
+    public String syxglczkczkglvalueaddedcardView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sYxglCzkCzkglValueaddedcardService.findSYxglCzkCzkglValueaddedcardList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/syxglczkczkglvalueaddedcardPageEdit";
+        }
+        return prefix+ "/syxglczkczkglvalueaddedcardEdit";
+    }
+
+    /**
+    * 储值卡信息表保存修改的数据
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @Log(title = "储值卡信息表修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sYxglCzkCzkglValueaddedcardEdit")
+    @ResponseBody
+    public AjaxResult syxglczkczkglvalueaddedcardEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sYxglCzkCzkglValueaddedcardService.updateSYxglCzkCzkglValueaddedcard(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表syxglczkczkglvalueaddedcard with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表syxglczkczkglvalueaddedcard with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglCzkCzkxfTransactionrecordController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.yxgl;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.yxgl.SYxglCzkCzkxfTransactionrecordService;
+
+import java.util.List;
+
+/**
+*
+* 储值卡交易记录表 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "yxgl/syxglczkczkxftransactionrecord")
+public class SYxglCzkCzkxfTransactionrecordController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "yxgl";
+
+    @Autowired
+    private SYxglCzkCzkxfTransactionrecordService sYxglCzkCzkxfTransactionrecordService;
+
+    /**
+    * 储值卡交易记录表 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglCzkCzkxfTransactionrecordAdd")
+    public String add() {
+        return prefix + "/SYxglCzkCzkxfTransactionrecordAdd";
+    }
+
+    /**
+    * 储值卡交易记录表 新增
+    *
+    * @return
+    */
+    @Log(title = "储值卡交易记录表新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sYxglCzkCzkxfTransactionrecordAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sYxglCzkCzkxfTransactionrecordService.addSYxglCzkCzkxfTransactionrecord(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 储值卡交易记录表 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglCzkCzkxfTransactionrecordView")
+    public String syxglczkczkxftransactionrecordListView() {
+        return prefix + "/SYxglCzkCzkxfTransactionrecordList";
+    }
+
+    /**
+    * 储值卡交易记录表 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:sYxglCzkCzkxfTransactionrecordList")
+    @PostMapping("/sYxglCzkCzkxfTransactionrecordList")
+    @ResponseBody
+    public TableDataInfo syxglczkczkxftransactionrecordList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sYxglCzkCzkxfTransactionrecordService.findSYxglCzkCzkxfTransactionrecordList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 储值卡交易记录表 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:remove")
+    @Log(title = "储值卡交易记录表删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sYxglCzkCzkxfTransactionrecordRemove")
+    @ResponseBody
+    public AjaxResult syxglczkczkxftransactionrecordRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sYxglCzkCzkxfTransactionrecordService.SYxglCzkCzkxfTransactionrecordRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 储值卡交易记录表 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @GetMapping("/sYxglCzkCzkxfTransactionrecordEdit/{id}")
+    public String syxglczkczkxftransactionrecordView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sYxglCzkCzkxfTransactionrecordService.findSYxglCzkCzkxfTransactionrecordList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/syxglczkczkxftransactionrecordPageEdit";
+        }
+        return prefix+ "/syxglczkczkxftransactionrecordEdit";
+    }
+
+    /**
+    * 储值卡交易记录表保存修改的数据
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @Log(title = "储值卡交易记录表修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sYxglCzkCzkxfTransactionrecordEdit")
+    @ResponseBody
+    public AjaxResult syxglczkczkxftransactionrecordEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sYxglCzkCzkxfTransactionrecordService.updateSYxglCzkCzkxfTransactionrecord(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表syxglczkczkxftransactionrecord with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表syxglczkczkxftransactionrecord with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglKjglHxjlRecordController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.yxgl;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.yxgl.SYxglKjglHxjlRecordService;
+
+import java.util.List;
+
+/**
+*
+* 领取核销记录 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "yxgl/syxglkjglhxjlrecord")
+public class SYxglKjglHxjlRecordController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "yxgl";
+
+    @Autowired
+    private SYxglKjglHxjlRecordService sYxglKjglHxjlRecordService;
+
+    /**
+    * 领取核销记录 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglKjglHxjlRecordAdd")
+    public String add() {
+        return prefix + "/SYxglKjglHxjlRecordAdd";
+    }
+
+    /**
+    * 领取核销记录 新增
+    *
+    * @return
+    */
+    @Log(title = "领取核销记录新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sYxglKjglHxjlRecordAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sYxglKjglHxjlRecordService.addSYxglKjglHxjlRecord(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 领取核销记录 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglKjglHxjlRecordView")
+    public String syxglkjglhxjlrecordListView() {
+        return prefix + "/SYxglKjglHxjlRecordList";
+    }
+
+    /**
+    * 领取核销记录 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:sYxglKjglHxjlRecordList")
+    @PostMapping("/sYxglKjglHxjlRecordList")
+    @ResponseBody
+    public TableDataInfo syxglkjglhxjlrecordList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sYxglKjglHxjlRecordService.findSYxglKjglHxjlRecordList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 领取核销记录 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:remove")
+    @Log(title = "领取核销记录删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sYxglKjglHxjlRecordRemove")
+    @ResponseBody
+    public AjaxResult syxglkjglhxjlrecordRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sYxglKjglHxjlRecordService.SYxglKjglHxjlRecordRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 领取核销记录 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @GetMapping("/sYxglKjglHxjlRecordEdit/{id}")
+    public String syxglkjglhxjlrecordView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sYxglKjglHxjlRecordService.findSYxglKjglHxjlRecordList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/syxglkjglhxjlrecordPageEdit";
+        }
+        return prefix+ "/syxglkjglhxjlrecordEdit";
+    }
+
+    /**
+    * 领取核销记录保存修改的数据
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @Log(title = "领取核销记录修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sYxglKjglHxjlRecordEdit")
+    @ResponseBody
+    public AjaxResult syxglkjglhxjlrecordEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sYxglKjglHxjlRecordService.updateSYxglKjglHxjlRecord(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表syxglkjglhxjlrecord with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表syxglkjglhxjlrecord with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglPosterinfoController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.yxgl;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.yxgl.SYxglPosterinfoService;
+
+import java.util.List;
+
+/**
+*
+* 海报信息表 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "yxgl/syxglposterinfo")
+public class SYxglPosterinfoController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "yxgl";
+
+    @Autowired
+    private SYxglPosterinfoService sYxglPosterinfoService;
+
+    /**
+    * 海报信息表 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglPosterinfoAdd")
+    public String add() {
+        return prefix + "/SYxglPosterinfoAdd";
+    }
+
+    /**
+    * 海报信息表 新增
+    *
+    * @return
+    */
+    @Log(title = "海报信息表新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sYxglPosterinfoAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sYxglPosterinfoService.addSYxglPosterinfo(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 海报信息表 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglPosterinfoView")
+    public String syxglposterinfoListView() {
+        return prefix + "/SYxglPosterinfoList";
+    }
+
+    /**
+    * 海报信息表 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:sYxglPosterinfoList")
+    @PostMapping("/sYxglPosterinfoList")
+    @ResponseBody
+    public TableDataInfo syxglposterinfoList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sYxglPosterinfoService.findSYxglPosterinfoList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 海报信息表 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:remove")
+    @Log(title = "海报信息表删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sYxglPosterinfoRemove")
+    @ResponseBody
+    public AjaxResult syxglposterinfoRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sYxglPosterinfoService.SYxglPosterinfoRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 海报信息表 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @GetMapping("/sYxglPosterinfoEdit/{id}")
+    public String syxglposterinfoView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sYxglPosterinfoService.findSYxglPosterinfoList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/syxglposterinfoPageEdit";
+        }
+        return prefix+ "/syxglposterinfoEdit";
+    }
+
+    /**
+    * 海报信息表保存修改的数据
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @Log(title = "海报信息表修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sYxglPosterinfoEdit")
+    @ResponseBody
+    public AjaxResult syxglposterinfoEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sYxglPosterinfoService.updateSYxglPosterinfo(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表syxglposterinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表syxglposterinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglPromotioninfoController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.yxgl;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.yxgl.SYxglPromotioninfoService;
+
+import java.util.List;
+
+/**
+*
+* 促销列表 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "yxgl/syxglpromotioninfo")
+public class SYxglPromotioninfoController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "yxgl";
+
+    @Autowired
+    private SYxglPromotioninfoService sYxglPromotioninfoService;
+
+    /**
+    * 促销列表 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglPromotioninfoAdd")
+    public String add() {
+        return prefix + "/SYxglPromotioninfoAdd";
+    }
+
+    /**
+    * 促销列表 新增
+    *
+    * @return
+    */
+    @Log(title = "促销列表新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sYxglPromotioninfoAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sYxglPromotioninfoService.addSYxglPromotioninfo(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 促销列表 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglPromotioninfoView")
+    public String syxglpromotioninfoListView() {
+        return prefix + "/SYxglPromotioninfoList";
+    }
+
+    /**
+    * 促销列表 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:sYxglPromotioninfoList")
+    @PostMapping("/sYxglPromotioninfoList")
+    @ResponseBody
+    public TableDataInfo syxglpromotioninfoList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sYxglPromotioninfoService.findSYxglPromotioninfoList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 促销列表 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:remove")
+    @Log(title = "促销列表删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sYxglPromotioninfoRemove")
+    @ResponseBody
+    public AjaxResult syxglpromotioninfoRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sYxglPromotioninfoService.SYxglPromotioninfoRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 促销列表 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @GetMapping("/sYxglPromotioninfoEdit/{id}")
+    public String syxglpromotioninfoView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sYxglPromotioninfoService.findSYxglPromotioninfoList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/syxglpromotioninfoPageEdit";
+        }
+        return prefix+ "/syxglpromotioninfoEdit";
+    }
+
+    /**
+    * 促销列表保存修改的数据
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @Log(title = "促销列表修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sYxglPromotioninfoEdit")
+    @ResponseBody
+    public AjaxResult syxglpromotioninfoEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sYxglPromotioninfoService.updateSYxglPromotioninfo(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表syxglpromotioninfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表syxglpromotioninfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 158 - 0
health-admin/src/main/java/com/bzd/web/controller/yxgl/SYxglZhspCombinationproductController.java

@@ -0,0 +1,158 @@
+package com.bzd.web.controller.yxgl;
+
+import com.bzd.common.annotation.Log;
+import com.bzd.common.config.dao.PageData;
+import com.bzd.common.core.controller.BaseController;
+import com.bzd.common.core.domain.AjaxResult;
+import com.bzd.common.core.page.TableDataInfo;
+import com.bzd.common.enums.BusinessType;
+import com.bzd.system.service.PharmaceuticalService;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+import com.bzd.system.service.yxgl.SYxglZhspCombinationproductService;
+
+import java.util.List;
+
+/**
+*
+* 组合商品信息表 前端控制器Controller
+* @author LiXiangFei
+* @since 2024-10-15
+*/
+@Controller
+@RequestMapping(value = "yxgl/syxglzhspcombinationproduct")
+public class SYxglZhspCombinationproductController extends BaseController {
+
+    // 页面跳转前缀
+    private String prefix = "yxgl";
+
+    @Autowired
+    private SYxglZhspCombinationproductService sYxglZhspCombinationproductService;
+
+    /**
+    * 组合商品信息表 新增页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglZhspCombinationproductAdd")
+    public String add() {
+        return prefix + "/SYxglZhspCombinationproductAdd";
+    }
+
+    /**
+    * 组合商品信息表 新增
+    *
+    * @return
+    */
+    @Log(title = "组合商品信息表新增", businessType = BusinessType.INSERT)
+    @PostMapping("/sYxglZhspCombinationproductAdd")
+    @ResponseBody
+    public AjaxResult addSave() throws Exception {
+        PageData pd = this.getPageData();
+        try {
+            Integer result = sYxglZhspCombinationproductService.addSYxglZhspCombinationproduct(pd);
+            if (result == 1) {
+                return AjaxResult.success("新增成功");
+            } else {
+                logger.error("Failed to update 表skccrkckreceiptinfo with ID: {}", pd.get("id"));
+                return AjaxResult.error("新增失败");
+            }
+        } catch (Exception e) {
+            logger.error("Error occurred while updating 表skccrkckreceiptinfo with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+
+    /**
+    * 组合商品信息表 查询页面跳转
+    *
+    * @return
+    */
+    @RequiresPermissions("yxgl:yx:view")
+    @GetMapping("/sYxglZhspCombinationproductView")
+    public String syxglzhspcombinationproductListView() {
+        return prefix + "/SYxglZhspCombinationproductList";
+    }
+
+    /**
+    * 组合商品信息表 数据查询
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:sYxglZhspCombinationproductList")
+    @PostMapping("/sYxglZhspCombinationproductList")
+    @ResponseBody
+    public TableDataInfo syxglzhspcombinationproductList() throws Exception {
+    PageData pd = this.getPageData();
+    startPage();
+    List<PageData> pageData = sYxglZhspCombinationproductService.findSYxglZhspCombinationproductList(pd);
+        return getDataTable(pageData);
+    }
+
+    /**
+    * 组合商品信息表 数据删除 根据id
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:remove")
+    @Log(title = "组合商品信息表删除", businessType = BusinessType.DELETE)
+    @PostMapping("/sYxglZhspCombinationproductRemove")
+    @ResponseBody
+    public AjaxResult syxglzhspcombinationproductRemove() throws Exception {
+        PageData pd = this.getPageData();
+        Integer integer = sYxglZhspCombinationproductService.SYxglZhspCombinationproductRemove(pd);
+        return toAjax(integer);
+    }
+
+    /**
+    * 组合商品信息表 数据修改
+    *
+    * @return
+    * @throws Exception
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @GetMapping("/sYxglZhspCombinationproductEdit/{id}")
+    public String syxglzhspcombinationproductView(@PathVariable("id") Long id, ModelMap mmap) throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("id", id);
+        PageData pageData = sYxglZhspCombinationproductService.findSYxglZhspCombinationproductList(pd).get(0);
+        mmap.putAll(pageData);
+        if(null!=pd.getString("status")){
+            return prefix+ "/syxglzhspcombinationproductPageEdit";
+        }
+        return prefix+ "/syxglzhspcombinationproductEdit";
+    }
+
+    /**
+    * 组合商品信息表保存修改的数据
+    */
+    @RequiresPermissions("yxgl:yx:edit")
+    @Log(title = "组合商品信息表修改", businessType = BusinessType.UPDATE)
+    @PostMapping("/sYxglZhspCombinationproductEdit")
+    @ResponseBody
+    public AjaxResult syxglzhspcombinationproductEditSave() throws Exception {
+        PageData pd = this.getPageData();
+        pd.put("up", "up");
+        try {
+            Integer updateResult = sYxglZhspCombinationproductService.updateSYxglZhspCombinationproduct(pd);
+            if (updateResult == 1) {
+                // 成功更新
+                return AjaxResult.success("修改成功");
+            } else {
+                // 更新失败
+                logger.error("Failed to update 表syxglzhspcombinationproduct with ID: {}", pd.get("id"));
+                return AjaxResult.error("修改失败");
+            }
+        } catch (Exception e) {
+            // 异常处理
+            logger.error("Error occurred while updating 表syxglzhspcombinationproduct with ID: {}, Exception: {}", pd.get("id"), e.getMessage(), e);
+            return AjaxResult.error("系统异常:" + e.getMessage());
+        }
+    }
+}

+ 153 - 0
health-admin/src/main/resources/templates/hygl/SHyglEquitiesAdd.html

@@ -0,0 +1,153 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('权益管理新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">权益的唯一标识符:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="benefitUniqueIdentifier" id="benefitUniqueIdentifier" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">权益的名称:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="benefitName" id="benefitName" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">权益的描述:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="benefitDescription" id="benefitDescription" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">权益的用途:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="benefitPurpose" id="benefitPurpose" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">权益的类型:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="benefitType" id="benefitType" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">权益的状态:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="benefitStatus" id="benefitStatus" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">权益的详细说明:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="benefitDetails" id="benefitDetails" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">总库存:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="totalStock" id="totalStock" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">剩余库存:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="remainingStock" id="remainingStock" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">审核状态:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="auditStatus" id="auditStatus" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">创建人的用户名:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="createdByUsername" id="createdByUsername" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">生成时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="creationTime" id="creationTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">操作记录:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="operationLog" id="operationLog" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var benefitUniqueIdentifier = $("input[name='benefitUniqueIdentifier']").val();
+           var benefitName = $("input[name='benefitName']").val();
+           var benefitDescription = $("input[name='benefitDescription']").val();
+           var benefitPurpose = $("input[name='benefitPurpose']").val();
+           var benefitType = $("input[name='benefitType']").val();
+           var benefitStatus = $("input[name='benefitStatus']").val();
+           var benefitDetails = $("input[name='benefitDetails']").val();
+           var totalStock = $("input[name='totalStock']").val();
+           var remainingStock = $("input[name='remainingStock']").val();
+           var auditStatus = $("input[name='auditStatus']").val();
+           var createdByUsername = $("input[name='createdByUsername']").val();
+           var creationTime = $("input[name='creationTime']").val();
+           var operationLog = $("input[name='operationLog']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shyglequities/sHyglEquitiesAdd",
+            data : {
+                "benefitUniqueIdentifier": benefitUniqueIdentifier,
+                "benefitName": benefitName,
+                "benefitDescription": benefitDescription,
+                "benefitPurpose": benefitPurpose,
+                "benefitType": benefitType,
+                "benefitStatus": benefitStatus,
+                "benefitDetails": benefitDetails,
+                "totalStock": totalStock,
+                "remainingStock": remainingStock,
+                "auditStatus": auditStatus,
+                "createdByUsername": createdByUsername,
+                "creationTime": creationTime,
+                "operationLog": operationLog,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 138 - 0
health-admin/src/main/resources/templates/hygl/SHyglEquitiesEdit.html

@@ -0,0 +1,138 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('权益管理修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglEquities-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">权益的唯一标识符:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitUniqueIdentifier" placeholder="权益的唯一标识符" th:value="${benefitUniqueIdentifier}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitName" placeholder="权益的名称" th:value="${benefitName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的描述:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitDescription" placeholder="权益的描述" th:value="${benefitDescription}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的用途:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitPurpose" placeholder="权益的用途" th:value="${benefitPurpose}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitType" placeholder="权益的类型" th:value="${benefitType}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitStatus" placeholder="权益的状态" th:value="${benefitStatus}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的详细说明:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitDetails" placeholder="权益的详细说明" th:value="${benefitDetails}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">总库存:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="totalStock" placeholder="总库存" th:value="${totalStock}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">剩余库存:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="remainingStock" placeholder="剩余库存" th:value="${remainingStock}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">审核状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="auditStatus" placeholder="审核状态" th:value="${auditStatus}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建人的用户名:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="createdByUsername" placeholder="创建人的用户名" th:value="${createdByUsername}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">生成时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="creationTime" placeholder="生成时间" th:value="${creationTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">操作记录:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="operationLog" placeholder="操作记录" th:value="${operationLog}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SHyglEquities-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shyglequities/sHyglEquitiesEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 245 - 0
health-admin/src/main/resources/templates/hygl/SHyglEquitiesList.html

@@ -0,0 +1,245 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('权益管理')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SHyglEquities-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                权益的唯一标识符:<input type="text" class="styled-input" name="benefitUniqueIdentifier" autocomplete="off"/>
+                            </li>
+                            <li>
+                                权益的名称:<input type="text" class="styled-input" name="benefitName" autocomplete="off"/>
+                            </li>
+                            <li>
+                                权益的描述:<input type="text" class="styled-input" name="benefitDescription" autocomplete="off"/>
+                            </li>
+                            <li>
+                                权益的用途:<input type="text" class="styled-input" name="benefitPurpose" autocomplete="off"/>
+                            </li>
+                            <li>
+                                权益的类型:<input type="text" class="styled-input" name="benefitType" autocomplete="off"/>
+                            </li>
+                            <li>
+                                权益的状态:<input type="text" class="styled-input" name="benefitStatus" autocomplete="off"/>
+                            </li>
+                            <li>
+                                权益的详细说明:<input type="text" class="styled-input" name="benefitDetails" autocomplete="off"/>
+                            </li>
+                            <li>
+                                总库存:<input type="text" class="styled-input" name="totalStock" autocomplete="off"/>
+                            </li>
+                            <li>
+                                剩余库存:<input type="text" class="styled-input" name="remainingStock" autocomplete="off"/>
+                            </li>
+                            <li>
+                                审核状态:<input type="text" class="styled-input" name="auditStatus" autocomplete="off"/>
+                            </li>
+                            <li>
+                                创建人的用户名:<input type="text" class="styled-input" name="createdByUsername" autocomplete="off"/>
+                            </li>
+                            <li>
+                                生成时间:<input type="text" class="styled-input" name="creationTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                操作记录:<input type="text" class="styled-input" name="operationLog" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "hygl/shyglequities";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sHyglEquitiesList",
+            viewUrl: prefix + "/sHyglEquitiesView/{id}",
+            createUrl: prefix + "/sHyglEquitiesAdd",
+            updateUrl: prefix + "/sHyglEquitiesEdit/{id}",
+            removeUrl: prefix + "/sHyglEquitiesRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "权益管理",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'benefitUniqueIdentifier', title: '权益的唯一标识符', align: 'center' },
+                    { field: 'benefitName', title: '权益的名称', align: 'center' },
+                    { field: 'benefitDescription', title: '权益的描述', align: 'center' },
+                    { field: 'benefitPurpose', title: '权益的用途', align: 'center' },
+                    { field: 'benefitType', title: '权益的类型', align: 'center' },
+                    { field: 'benefitStatus', title: '权益的状态', align: 'center' },
+                    { field: 'benefitDetails', title: '权益的详细说明', align: 'center' },
+                    { field: 'totalStock', title: '总库存', align: 'center' },
+                    { field: 'remainingStock', title: '剩余库存', align: 'center' },
+                    { field: 'auditStatus', title: '审核状态', align: 'center' },
+                    { field: 'createdByUsername', title: '创建人的用户名', align: 'center' },
+                    { field: 'creationTime', title: '生成时间', align: 'center' },
+                    { field: 'operationLog', title: '操作记录', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SHyglEquities-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SHyglEquities-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 129 - 0
health-admin/src/main/resources/templates/hygl/SHyglEquitiesPageEdit.html

@@ -0,0 +1,129 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('权益管理修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglEquities-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">权益的唯一标识符:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitUniqueIdentifier" placeholder="权益的唯一标识符" th:value="${benefitUniqueIdentifier}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitName" placeholder="权益的名称" th:value="${benefitName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的描述:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitDescription" placeholder="权益的描述" th:value="${benefitDescription}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的用途:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitPurpose" placeholder="权益的用途" th:value="${benefitPurpose}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitType" placeholder="权益的类型" th:value="${benefitType}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitStatus" placeholder="权益的状态" th:value="${benefitStatus}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">权益的详细说明:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="benefitDetails" placeholder="权益的详细说明" th:value="${benefitDetails}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">总库存:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="totalStock" placeholder="总库存" th:value="${totalStock}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">剩余库存:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="remainingStock" placeholder="剩余库存" th:value="${remainingStock}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">审核状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="auditStatus" placeholder="审核状态" th:value="${auditStatus}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建人的用户名:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="createdByUsername" placeholder="创建人的用户名" th:value="${createdByUsername}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">生成时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="creationTime" placeholder="生成时间" th:value="${creationTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">操作记录:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="operationLog" placeholder="操作记录" th:value="${operationLog}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "hygl/shyglequities";
+        if ($.validate.form()) {
+            var data = $("#form-SHyglEquities-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sHyglEquitiesEdit", data);
+        }
+    }
+</script>

+ 113 - 0
health-admin/src/main/resources/templates/hygl/SHyglMembertagAdd.html

@@ -0,0 +1,113 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('会员标签表新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">疾病名称:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="diseaseName" id="diseaseName" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">会员数量:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="memberCount" id="memberCount" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">占比:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="proportion" id="proportion" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">创建时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="createTime" id="createTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">创建人:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="creator" id="creator" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">更新时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="updateTime" id="updateTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">状态:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="status" id="status" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">删除标记(0: 未删除, 1: 已删除):</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="deleteFlag" id="deleteFlag" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var diseaseName = $("input[name='diseaseName']").val();
+           var memberCount = $("input[name='memberCount']").val();
+           var proportion = $("input[name='proportion']").val();
+           var createTime = $("input[name='createTime']").val();
+           var creator = $("input[name='creator']").val();
+           var updateTime = $("input[name='updateTime']").val();
+           var status = $("input[name='status']").val();
+           var deleteFlag = $("input[name='deleteFlag']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shyglmembertag/sHyglMembertagAdd",
+            data : {
+                "diseaseName": diseaseName,
+                "memberCount": memberCount,
+                "proportion": proportion,
+                "createTime": createTime,
+                "creator": creator,
+                "updateTime": updateTime,
+                "status": status,
+                "deleteFlag": deleteFlag,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 108 - 0
health-admin/src/main/resources/templates/hygl/SHyglMembertagEdit.html

@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('会员标签表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglMembertag-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">疾病名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="diseaseName" placeholder="疾病名称" th:value="${diseaseName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员数量:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberCount" placeholder="会员数量" th:value="${memberCount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">占比:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="proportion" placeholder="占比" th:value="${proportion}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="createTime" placeholder="创建时间" th:value="${createTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="creator" placeholder="创建人" th:value="${creator}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">更新时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="updateTime" placeholder="更新时间" th:value="${updateTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="status" placeholder="状态" th:value="${status}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">删除标记(0: 未删除, 1: 已删除):</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="deleteFlag" placeholder="删除标记(0: 未删除, 1: 已删除)" th:value="${deleteFlag}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SHyglMembertag-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shyglmembertag/sHyglMembertagEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 225 - 0
health-admin/src/main/resources/templates/hygl/SHyglMembertagList.html

@@ -0,0 +1,225 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('会员标签表')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SHyglMembertag-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                疾病名称:<input type="text" class="styled-input" name="diseaseName" autocomplete="off"/>
+                            </li>
+                            <li>
+                                会员数量:<input type="text" class="styled-input" name="memberCount" autocomplete="off"/>
+                            </li>
+                            <li>
+                                占比:<input type="text" class="styled-input" name="proportion" autocomplete="off"/>
+                            </li>
+                            <li>
+                                创建时间:<input type="text" class="styled-input" name="createTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                创建人:<input type="text" class="styled-input" name="creator" autocomplete="off"/>
+                            </li>
+                            <li>
+                                更新时间:<input type="text" class="styled-input" name="updateTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                状态:<input type="text" class="styled-input" name="status" autocomplete="off"/>
+                            </li>
+                            <li>
+                                删除标记(0: 未删除, 1: 已删除):<input type="text" class="styled-input" name="deleteFlag" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "hygl/shyglmembertag";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sHyglMembertagList",
+            viewUrl: prefix + "/sHyglMembertagView/{id}",
+            createUrl: prefix + "/sHyglMembertagAdd",
+            updateUrl: prefix + "/sHyglMembertagEdit/{id}",
+            removeUrl: prefix + "/sHyglMembertagRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "会员标签表",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'diseaseName', title: '疾病名称', align: 'center' },
+                    { field: 'memberCount', title: '会员数量', align: 'center' },
+                    { field: 'proportion', title: '占比', align: 'center' },
+                    { field: 'createTime', title: '创建时间', align: 'center' },
+                    { field: 'creator', title: '创建人', align: 'center' },
+                    { field: 'updateTime', title: '更新时间', align: 'center' },
+                    { field: 'status', title: '状态', align: 'center' },
+                    { field: 'deleteFlag', title: '删除标记(0: 未删除, 1: 已删除)', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SHyglMembertag-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SHyglMembertag-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 99 - 0
health-admin/src/main/resources/templates/hygl/SHyglMembertagPageEdit.html

@@ -0,0 +1,99 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('会员标签表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglMembertag-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">疾病名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="diseaseName" placeholder="疾病名称" th:value="${diseaseName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员数量:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberCount" placeholder="会员数量" th:value="${memberCount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">占比:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="proportion" placeholder="占比" th:value="${proportion}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="createTime" placeholder="创建时间" th:value="${createTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="creator" placeholder="创建人" th:value="${creator}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">更新时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="updateTime" placeholder="更新时间" th:value="${updateTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="status" placeholder="状态" th:value="${status}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">删除标记(0: 未删除, 1: 已删除):</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="deleteFlag" placeholder="删除标记(0: 未删除, 1: 已删除)" th:value="${deleteFlag}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "hygl/shyglmembertag";
+        if ($.validate.form()) {
+            var data = $("#form-SHyglMembertag-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sHyglMembertagEdit", data);
+        }
+    }
+</script>

+ 113 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglMemberpointsinfoAdd.html

@@ -0,0 +1,113 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('积分记录表新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">会员卡号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="memberCardNo" id="memberCardNo" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">会员姓名:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="memberName" id="memberName" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">手机号码:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="phoneNumber" id="phoneNumber" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">领取门店:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="pickupStore" id="pickupStore" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">剩余积分:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="remainingPoints" id="remainingPoints" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">积分调整:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="pointsAdjustment" id="pointsAdjustment" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">积分调整原因:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="pointsAdjustmentReason" id="pointsAdjustmentReason" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">积分变动时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="pointsChangeTime" id="pointsChangeTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var memberCardNo = $("input[name='memberCardNo']").val();
+           var memberName = $("input[name='memberName']").val();
+           var phoneNumber = $("input[name='phoneNumber']").val();
+           var pickupStore = $("input[name='pickupStore']").val();
+           var remainingPoints = $("input[name='remainingPoints']").val();
+           var pointsAdjustment = $("input[name='pointsAdjustment']").val();
+           var pointsAdjustmentReason = $("input[name='pointsAdjustmentReason']").val();
+           var pointsChangeTime = $("input[name='pointsChangeTime']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shygljfglmemberpointsinfo/sHyglJfglMemberpointsinfoAdd",
+            data : {
+                "memberCardNo": memberCardNo,
+                "memberName": memberName,
+                "phoneNumber": phoneNumber,
+                "pickupStore": pickupStore,
+                "remainingPoints": remainingPoints,
+                "pointsAdjustment": pointsAdjustment,
+                "pointsAdjustmentReason": pointsAdjustmentReason,
+                "pointsChangeTime": pointsChangeTime,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 108 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglMemberpointsinfoEdit.html

@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('积分记录表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglJfglMemberpointsinfo-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">会员卡号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberCardNo" placeholder="会员卡号" th:value="${memberCardNo}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员姓名:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberName" placeholder="会员姓名" th:value="${memberName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">手机号码:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="phoneNumber" placeholder="手机号码" th:value="${phoneNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">领取门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pickupStore" placeholder="领取门店" th:value="${pickupStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">剩余积分:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="remainingPoints" placeholder="剩余积分" th:value="${remainingPoints}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">积分调整:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pointsAdjustment" placeholder="积分调整" th:value="${pointsAdjustment}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">积分调整原因:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pointsAdjustmentReason" placeholder="积分调整原因" th:value="${pointsAdjustmentReason}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">积分变动时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pointsChangeTime" placeholder="积分变动时间" th:value="${pointsChangeTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SHyglJfglMemberpointsinfo-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shygljfglmemberpointsinfo/sHyglJfglMemberpointsinfoEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 225 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglMemberpointsinfoList.html

@@ -0,0 +1,225 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('积分记录表')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SHyglJfglMemberpointsinfo-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                会员卡号:<input type="text" class="styled-input" name="memberCardNo" autocomplete="off"/>
+                            </li>
+                            <li>
+                                会员姓名:<input type="text" class="styled-input" name="memberName" autocomplete="off"/>
+                            </li>
+                            <li>
+                                手机号码:<input type="text" class="styled-input" name="phoneNumber" autocomplete="off"/>
+                            </li>
+                            <li>
+                                领取门店:<input type="text" class="styled-input" name="pickupStore" autocomplete="off"/>
+                            </li>
+                            <li>
+                                剩余积分:<input type="text" class="styled-input" name="remainingPoints" autocomplete="off"/>
+                            </li>
+                            <li>
+                                积分调整:<input type="text" class="styled-input" name="pointsAdjustment" autocomplete="off"/>
+                            </li>
+                            <li>
+                                积分调整原因:<input type="text" class="styled-input" name="pointsAdjustmentReason" autocomplete="off"/>
+                            </li>
+                            <li>
+                                积分变动时间:<input type="text" class="styled-input" name="pointsChangeTime" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "hygl/shygljfglmemberpointsinfo";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sHyglJfglMemberpointsinfoList",
+            viewUrl: prefix + "/sHyglJfglMemberpointsinfoView/{id}",
+            createUrl: prefix + "/sHyglJfglMemberpointsinfoAdd",
+            updateUrl: prefix + "/sHyglJfglMemberpointsinfoEdit/{id}",
+            removeUrl: prefix + "/sHyglJfglMemberpointsinfoRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "积分记录表",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'memberCardNo', title: '会员卡号', align: 'center' },
+                    { field: 'memberName', title: '会员姓名', align: 'center' },
+                    { field: 'phoneNumber', title: '手机号码', align: 'center' },
+                    { field: 'pickupStore', title: '领取门店', align: 'center' },
+                    { field: 'remainingPoints', title: '剩余积分', align: 'center' },
+                    { field: 'pointsAdjustment', title: '积分调整', align: 'center' },
+                    { field: 'pointsAdjustmentReason', title: '积分调整原因', align: 'center' },
+                    { field: 'pointsChangeTime', title: '积分变动时间', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SHyglJfglMemberpointsinfo-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SHyglJfglMemberpointsinfo-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 99 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglMemberpointsinfoPageEdit.html

@@ -0,0 +1,99 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('积分记录表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglJfglMemberpointsinfo-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">会员卡号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberCardNo" placeholder="会员卡号" th:value="${memberCardNo}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员姓名:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberName" placeholder="会员姓名" th:value="${memberName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">手机号码:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="phoneNumber" placeholder="手机号码" th:value="${phoneNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">领取门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pickupStore" placeholder="领取门店" th:value="${pickupStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">剩余积分:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="remainingPoints" placeholder="剩余积分" th:value="${remainingPoints}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">积分调整:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pointsAdjustment" placeholder="积分调整" th:value="${pointsAdjustment}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">积分调整原因:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pointsAdjustmentReason" placeholder="积分调整原因" th:value="${pointsAdjustmentReason}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">积分变动时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pointsChangeTime" placeholder="积分变动时间" th:value="${pointsChangeTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "hygl/shygljfglmemberpointsinfo";
+        if ($.validate.form()) {
+            var data = $("#form-SHyglJfglMemberpointsinfo-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sHyglJfglMemberpointsinfoEdit", data);
+        }
+    }
+</script>

+ 201 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglOrderinfoAdd.html

@@ -0,0 +1,201 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('兑换记录表新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">订单ID:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="orderID" id="orderID" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">商品名:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="productName" id="productName" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">商品类型:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="productType" id="productType" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">订单总价:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="orderTotalPrice" id="orderTotalPrice" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">外部积分支付:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="externalPointsPaid" id="externalPointsPaid" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">是否特价订单:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="isPromotionOrder" id="isPromotionOrder" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">兑换数量:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="redemptionQuantity" id="redemptionQuantity" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">兑换渠道:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="redemptionChannel" id="redemptionChannel" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">支付方式:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="paymentMethod" id="paymentMethod" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">兑换状态:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="redemptionStatus" id="redemptionStatus" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">下单时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="orderTime" id="orderTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">会员手机号/卡号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="memberPhoneOrCardNo" id="memberPhoneOrCardNo" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">用户身份:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="userRole" id="userRole" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">自提/兑换门店:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="pickupOrRedemptionStore" id="pickupOrRedemptionStore" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">推荐兑换员工:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="recommendingEmployee" id="recommendingEmployee" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">推荐兑换门店:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="recommendingStore" id="recommendingStore" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">核销门店:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="verificationStore" id="verificationStore" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">核销人:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="verifiedBy" id="verifiedBy" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">核销时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="verificationTime" id="verificationTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var orderID = $("input[name='orderID']").val();
+           var productName = $("input[name='productName']").val();
+           var productType = $("input[name='productType']").val();
+           var orderTotalPrice = $("input[name='orderTotalPrice']").val();
+           var externalPointsPaid = $("input[name='externalPointsPaid']").val();
+           var isPromotionOrder = $("input[name='isPromotionOrder']").val();
+           var redemptionQuantity = $("input[name='redemptionQuantity']").val();
+           var redemptionChannel = $("input[name='redemptionChannel']").val();
+           var paymentMethod = $("input[name='paymentMethod']").val();
+           var redemptionStatus = $("input[name='redemptionStatus']").val();
+           var orderTime = $("input[name='orderTime']").val();
+           var memberPhoneOrCardNo = $("input[name='memberPhoneOrCardNo']").val();
+           var userRole = $("input[name='userRole']").val();
+           var pickupOrRedemptionStore = $("input[name='pickupOrRedemptionStore']").val();
+           var recommendingEmployee = $("input[name='recommendingEmployee']").val();
+           var recommendingStore = $("input[name='recommendingStore']").val();
+           var verificationStore = $("input[name='verificationStore']").val();
+           var verifiedBy = $("input[name='verifiedBy']").val();
+           var verificationTime = $("input[name='verificationTime']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shygljfglorderinfo/sHyglJfglOrderinfoAdd",
+            data : {
+                "orderID": orderID,
+                "productName": productName,
+                "productType": productType,
+                "orderTotalPrice": orderTotalPrice,
+                "externalPointsPaid": externalPointsPaid,
+                "isPromotionOrder": isPromotionOrder,
+                "redemptionQuantity": redemptionQuantity,
+                "redemptionChannel": redemptionChannel,
+                "paymentMethod": paymentMethod,
+                "redemptionStatus": redemptionStatus,
+                "orderTime": orderTime,
+                "memberPhoneOrCardNo": memberPhoneOrCardNo,
+                "userRole": userRole,
+                "pickupOrRedemptionStore": pickupOrRedemptionStore,
+                "recommendingEmployee": recommendingEmployee,
+                "recommendingStore": recommendingStore,
+                "verificationStore": verificationStore,
+                "verifiedBy": verifiedBy,
+                "verificationTime": verificationTime,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 174 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglOrderinfoEdit.html

@@ -0,0 +1,174 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('兑换记录表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglJfglOrderinfo-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">订单ID:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="orderID" placeholder="订单ID" th:value="${orderID}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">商品名:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="productName" placeholder="商品名" th:value="${productName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">商品类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="productType" placeholder="商品类型" th:value="${productType}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">订单总价:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="orderTotalPrice" placeholder="订单总价" th:value="${orderTotalPrice}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">外部积分支付:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="externalPointsPaid" placeholder="外部积分支付" th:value="${externalPointsPaid}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">是否特价订单:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="isPromotionOrder" placeholder="是否特价订单" th:value="${isPromotionOrder}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">兑换数量:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionQuantity" placeholder="兑换数量" th:value="${redemptionQuantity}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">兑换渠道:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionChannel" placeholder="兑换渠道" th:value="${redemptionChannel}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">支付方式:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="paymentMethod" placeholder="支付方式" th:value="${paymentMethod}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">兑换状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionStatus" placeholder="兑换状态" th:value="${redemptionStatus}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">下单时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="orderTime" placeholder="下单时间" th:value="${orderTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员手机号/卡号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberPhoneOrCardNo" placeholder="会员手机号/卡号" th:value="${memberPhoneOrCardNo}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">用户身份:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="userRole" placeholder="用户身份" th:value="${userRole}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">自提/兑换门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pickupOrRedemptionStore" placeholder="自提/兑换门店" th:value="${pickupOrRedemptionStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">推荐兑换员工:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="recommendingEmployee" placeholder="推荐兑换员工" th:value="${recommendingEmployee}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">推荐兑换门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="recommendingStore" placeholder="推荐兑换门店" th:value="${recommendingStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="verificationStore" placeholder="核销门店" th:value="${verificationStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="verifiedBy" placeholder="核销人" th:value="${verifiedBy}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="verificationTime" placeholder="核销时间" th:value="${verificationTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SHyglJfglOrderinfo-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shygljfglorderinfo/sHyglJfglOrderinfoEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 269 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglOrderinfoList.html

@@ -0,0 +1,269 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('兑换记录表')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SHyglJfglOrderinfo-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                订单ID:<input type="text" class="styled-input" name="orderID" autocomplete="off"/>
+                            </li>
+                            <li>
+                                商品名:<input type="text" class="styled-input" name="productName" autocomplete="off"/>
+                            </li>
+                            <li>
+                                商品类型:<input type="text" class="styled-input" name="productType" autocomplete="off"/>
+                            </li>
+                            <li>
+                                订单总价:<input type="text" class="styled-input" name="orderTotalPrice" autocomplete="off"/>
+                            </li>
+                            <li>
+                                外部积分支付:<input type="text" class="styled-input" name="externalPointsPaid" autocomplete="off"/>
+                            </li>
+                            <li>
+                                是否特价订单:<input type="text" class="styled-input" name="isPromotionOrder" autocomplete="off"/>
+                            </li>
+                            <li>
+                                兑换数量:<input type="text" class="styled-input" name="redemptionQuantity" autocomplete="off"/>
+                            </li>
+                            <li>
+                                兑换渠道:<input type="text" class="styled-input" name="redemptionChannel" autocomplete="off"/>
+                            </li>
+                            <li>
+                                支付方式:<input type="text" class="styled-input" name="paymentMethod" autocomplete="off"/>
+                            </li>
+                            <li>
+                                兑换状态:<input type="text" class="styled-input" name="redemptionStatus" autocomplete="off"/>
+                            </li>
+                            <li>
+                                下单时间:<input type="text" class="styled-input" name="orderTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                会员手机号/卡号:<input type="text" class="styled-input" name="memberPhoneOrCardNo" autocomplete="off"/>
+                            </li>
+                            <li>
+                                用户身份:<input type="text" class="styled-input" name="userRole" autocomplete="off"/>
+                            </li>
+                            <li>
+                                自提/兑换门店:<input type="text" class="styled-input" name="pickupOrRedemptionStore" autocomplete="off"/>
+                            </li>
+                            <li>
+                                推荐兑换员工:<input type="text" class="styled-input" name="recommendingEmployee" autocomplete="off"/>
+                            </li>
+                            <li>
+                                推荐兑换门店:<input type="text" class="styled-input" name="recommendingStore" autocomplete="off"/>
+                            </li>
+                            <li>
+                                核销门店:<input type="text" class="styled-input" name="verificationStore" autocomplete="off"/>
+                            </li>
+                            <li>
+                                核销人:<input type="text" class="styled-input" name="verifiedBy" autocomplete="off"/>
+                            </li>
+                            <li>
+                                核销时间:<input type="text" class="styled-input" name="verificationTime" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "hygl/shygljfglorderinfo";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sHyglJfglOrderinfoList",
+            viewUrl: prefix + "/sHyglJfglOrderinfoView/{id}",
+            createUrl: prefix + "/sHyglJfglOrderinfoAdd",
+            updateUrl: prefix + "/sHyglJfglOrderinfoEdit/{id}",
+            removeUrl: prefix + "/sHyglJfglOrderinfoRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "兑换记录表",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'orderID', title: '订单ID', align: 'center' },
+                    { field: 'productName', title: '商品名', align: 'center' },
+                    { field: 'productType', title: '商品类型', align: 'center' },
+                    { field: 'orderTotalPrice', title: '订单总价', align: 'center' },
+                    { field: 'externalPointsPaid', title: '外部积分支付', align: 'center' },
+                    { field: 'isPromotionOrder', title: '是否特价订单', align: 'center' },
+                    { field: 'redemptionQuantity', title: '兑换数量', align: 'center' },
+                    { field: 'redemptionChannel', title: '兑换渠道', align: 'center' },
+                    { field: 'paymentMethod', title: '支付方式', align: 'center' },
+                    { field: 'redemptionStatus', title: '兑换状态', align: 'center' },
+                    { field: 'orderTime', title: '下单时间', align: 'center' },
+                    { field: 'memberPhoneOrCardNo', title: '会员手机号/卡号', align: 'center' },
+                    { field: 'userRole', title: '用户身份', align: 'center' },
+                    { field: 'pickupOrRedemptionStore', title: '自提/兑换门店', align: 'center' },
+                    { field: 'recommendingEmployee', title: '推荐兑换员工', align: 'center' },
+                    { field: 'recommendingStore', title: '推荐兑换门店', align: 'center' },
+                    { field: 'verificationStore', title: '核销门店', align: 'center' },
+                    { field: 'verifiedBy', title: '核销人', align: 'center' },
+                    { field: 'verificationTime', title: '核销时间', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SHyglJfglOrderinfo-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SHyglJfglOrderinfo-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 165 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglOrderinfoPageEdit.html

@@ -0,0 +1,165 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('兑换记录表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglJfglOrderinfo-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">订单ID:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="orderID" placeholder="订单ID" th:value="${orderID}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">商品名:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="productName" placeholder="商品名" th:value="${productName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">商品类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="productType" placeholder="商品类型" th:value="${productType}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">订单总价:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="orderTotalPrice" placeholder="订单总价" th:value="${orderTotalPrice}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">外部积分支付:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="externalPointsPaid" placeholder="外部积分支付" th:value="${externalPointsPaid}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">是否特价订单:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="isPromotionOrder" placeholder="是否特价订单" th:value="${isPromotionOrder}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">兑换数量:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionQuantity" placeholder="兑换数量" th:value="${redemptionQuantity}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">兑换渠道:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionChannel" placeholder="兑换渠道" th:value="${redemptionChannel}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">支付方式:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="paymentMethod" placeholder="支付方式" th:value="${paymentMethod}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">兑换状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionStatus" placeholder="兑换状态" th:value="${redemptionStatus}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">下单时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="orderTime" placeholder="下单时间" th:value="${orderTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员手机号/卡号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberPhoneOrCardNo" placeholder="会员手机号/卡号" th:value="${memberPhoneOrCardNo}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">用户身份:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="userRole" placeholder="用户身份" th:value="${userRole}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">自提/兑换门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pickupOrRedemptionStore" placeholder="自提/兑换门店" th:value="${pickupOrRedemptionStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">推荐兑换员工:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="recommendingEmployee" placeholder="推荐兑换员工" th:value="${recommendingEmployee}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">推荐兑换门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="recommendingStore" placeholder="推荐兑换门店" th:value="${recommendingStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="verificationStore" placeholder="核销门店" th:value="${verificationStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="verifiedBy" placeholder="核销人" th:value="${verifiedBy}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="verificationTime" placeholder="核销时间" th:value="${verificationTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "hygl/shygljfglorderinfo";
+        if ($.validate.form()) {
+            var data = $("#form-SHyglJfglOrderinfo-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sHyglJfglOrderinfoEdit", data);
+        }
+    }
+</script>

+ 153 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglPointAdjustmentAdd.html

@@ -0,0 +1,153 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('积分调整表新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">申请单编号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="applicationNumber" id="applicationNumber" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">调整数量:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="adjustmentQuantity" id="adjustmentQuantity" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">申请人:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="applicant" id="applicant" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">申请时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="applicationTime" id="applicationTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">审批人:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="approver" id="approver" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">审批时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="approvalTime" id="approvalTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">审批状态:待审核,审核通过,驳回:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="approvalStatus" id="approvalStatus" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">会员卡号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="memberCardNumber" id="memberCardNumber" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">会员手机号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="memberPhone" id="memberPhone" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">会员姓名:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="memberName" id="memberName" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">积分调整:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="pointsAdjusted" id="pointsAdjusted" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">调整原因:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="adjustmentReason" id="adjustmentReason" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">调整单类型:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="adjustmentType" id="adjustmentType" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var applicationNumber = $("input[name='applicationNumber']").val();
+           var adjustmentQuantity = $("input[name='adjustmentQuantity']").val();
+           var applicant = $("input[name='applicant']").val();
+           var applicationTime = $("input[name='applicationTime']").val();
+           var approver = $("input[name='approver']").val();
+           var approvalTime = $("input[name='approvalTime']").val();
+           var approvalStatus = $("input[name='approvalStatus']").val();
+           var memberCardNumber = $("input[name='memberCardNumber']").val();
+           var memberPhone = $("input[name='memberPhone']").val();
+           var memberName = $("input[name='memberName']").val();
+           var pointsAdjusted = $("input[name='pointsAdjusted']").val();
+           var adjustmentReason = $("input[name='adjustmentReason']").val();
+           var adjustmentType = $("input[name='adjustmentType']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shygljfglpointadjustment/sHyglJfglPointAdjustmentAdd",
+            data : {
+                "applicationNumber": applicationNumber,
+                "adjustmentQuantity": adjustmentQuantity,
+                "applicant": applicant,
+                "applicationTime": applicationTime,
+                "approver": approver,
+                "approvalTime": approvalTime,
+                "approvalStatus": approvalStatus,
+                "memberCardNumber": memberCardNumber,
+                "memberPhone": memberPhone,
+                "memberName": memberName,
+                "pointsAdjusted": pointsAdjusted,
+                "adjustmentReason": adjustmentReason,
+                "adjustmentType": adjustmentType,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 138 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglPointAdjustmentEdit.html

@@ -0,0 +1,138 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('积分调整表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglJfglPointAdjustment-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">申请单编号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="applicationNumber" placeholder="申请单编号" th:value="${applicationNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">调整数量:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="adjustmentQuantity" placeholder="调整数量" th:value="${adjustmentQuantity}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">申请人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="applicant" placeholder="申请人" th:value="${applicant}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">申请时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="applicationTime" placeholder="申请时间" th:value="${applicationTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">审批人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="approver" placeholder="审批人" th:value="${approver}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">审批时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="approvalTime" placeholder="审批时间" th:value="${approvalTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">审批状态:待审核,审核通过,驳回:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="approvalStatus" placeholder="审批状态:待审核,审核通过,驳回" th:value="${approvalStatus}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员卡号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberCardNumber" placeholder="会员卡号" th:value="${memberCardNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员手机号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberPhone" placeholder="会员手机号" th:value="${memberPhone}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员姓名:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberName" placeholder="会员姓名" th:value="${memberName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">积分调整:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pointsAdjusted" placeholder="积分调整" th:value="${pointsAdjusted}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">调整原因:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="adjustmentReason" placeholder="调整原因" th:value="${adjustmentReason}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">调整单类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="adjustmentType" placeholder="调整单类型" th:value="${adjustmentType}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SHyglJfglPointAdjustment-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shygljfglpointadjustment/sHyglJfglPointAdjustmentEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 245 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglPointAdjustmentList.html

@@ -0,0 +1,245 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('积分调整表')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SHyglJfglPointAdjustment-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                申请单编号:<input type="text" class="styled-input" name="applicationNumber" autocomplete="off"/>
+                            </li>
+                            <li>
+                                调整数量:<input type="text" class="styled-input" name="adjustmentQuantity" autocomplete="off"/>
+                            </li>
+                            <li>
+                                申请人:<input type="text" class="styled-input" name="applicant" autocomplete="off"/>
+                            </li>
+                            <li>
+                                申请时间:<input type="text" class="styled-input" name="applicationTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                审批人:<input type="text" class="styled-input" name="approver" autocomplete="off"/>
+                            </li>
+                            <li>
+                                审批时间:<input type="text" class="styled-input" name="approvalTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                审批状态:待审核,审核通过,驳回:<input type="text" class="styled-input" name="approvalStatus" autocomplete="off"/>
+                            </li>
+                            <li>
+                                会员卡号:<input type="text" class="styled-input" name="memberCardNumber" autocomplete="off"/>
+                            </li>
+                            <li>
+                                会员手机号:<input type="text" class="styled-input" name="memberPhone" autocomplete="off"/>
+                            </li>
+                            <li>
+                                会员姓名:<input type="text" class="styled-input" name="memberName" autocomplete="off"/>
+                            </li>
+                            <li>
+                                积分调整:<input type="text" class="styled-input" name="pointsAdjusted" autocomplete="off"/>
+                            </li>
+                            <li>
+                                调整原因:<input type="text" class="styled-input" name="adjustmentReason" autocomplete="off"/>
+                            </li>
+                            <li>
+                                调整单类型:<input type="text" class="styled-input" name="adjustmentType" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "hygl/shygljfglpointadjustment";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sHyglJfglPointAdjustmentList",
+            viewUrl: prefix + "/sHyglJfglPointAdjustmentView/{id}",
+            createUrl: prefix + "/sHyglJfglPointAdjustmentAdd",
+            updateUrl: prefix + "/sHyglJfglPointAdjustmentEdit/{id}",
+            removeUrl: prefix + "/sHyglJfglPointAdjustmentRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "积分调整表",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'applicationNumber', title: '申请单编号', align: 'center' },
+                    { field: 'adjustmentQuantity', title: '调整数量', align: 'center' },
+                    { field: 'applicant', title: '申请人', align: 'center' },
+                    { field: 'applicationTime', title: '申请时间', align: 'center' },
+                    { field: 'approver', title: '审批人', align: 'center' },
+                    { field: 'approvalTime', title: '审批时间', align: 'center' },
+                    { field: 'approvalStatus', title: '审批状态:待审核,审核通过,驳回', align: 'center' },
+                    { field: 'memberCardNumber', title: '会员卡号', align: 'center' },
+                    { field: 'memberPhone', title: '会员手机号', align: 'center' },
+                    { field: 'memberName', title: '会员姓名', align: 'center' },
+                    { field: 'pointsAdjusted', title: '积分调整', align: 'center' },
+                    { field: 'adjustmentReason', title: '调整原因', align: 'center' },
+                    { field: 'adjustmentType', title: '调整单类型', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SHyglJfglPointAdjustment-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SHyglJfglPointAdjustment-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 129 - 0
health-admin/src/main/resources/templates/hygl/jf/SHyglJfglPointAdjustmentPageEdit.html

@@ -0,0 +1,129 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('积分调整表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglJfglPointAdjustment-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">申请单编号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="applicationNumber" placeholder="申请单编号" th:value="${applicationNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">调整数量:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="adjustmentQuantity" placeholder="调整数量" th:value="${adjustmentQuantity}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">申请人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="applicant" placeholder="申请人" th:value="${applicant}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">申请时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="applicationTime" placeholder="申请时间" th:value="${applicationTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">审批人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="approver" placeholder="审批人" th:value="${approver}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">审批时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="approvalTime" placeholder="审批时间" th:value="${approvalTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">审批状态:待审核,审核通过,驳回:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="approvalStatus" placeholder="审批状态:待审核,审核通过,驳回" th:value="${approvalStatus}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员卡号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberCardNumber" placeholder="会员卡号" th:value="${memberCardNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员手机号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberPhone" placeholder="会员手机号" th:value="${memberPhone}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">会员姓名:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="memberName" placeholder="会员姓名" th:value="${memberName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">积分调整:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="pointsAdjusted" placeholder="积分调整" th:value="${pointsAdjusted}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">调整原因:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="adjustmentReason" placeholder="调整原因" th:value="${adjustmentReason}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">调整单类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="adjustmentType" placeholder="调整单类型" th:value="${adjustmentType}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "hygl/shygljfglpointadjustment";
+        if ($.validate.form()) {
+            var data = $("#form-SHyglJfglPointAdjustment-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sHyglJfglPointAdjustmentEdit", data);
+        }
+    }
+</script>

+ 113 - 0
health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxMouldmessageAdd.html

@@ -0,0 +1,113 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('模版文案管理表(模版管理)新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">短信名称:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="smsName" id="smsName" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">短信平台:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="smsPlatform" id="smsPlatform" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">三方模版ID:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="thirdPartyTemplateId" id="thirdPartyTemplateId" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">模板类型:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="templateType" id="templateType" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">状态:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="status" id="status" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">创建时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="createTime" id="createTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">短信内容:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="smsContent" id="smsContent" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">短信变量:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="smsVariables" id="smsVariables" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var smsName = $("input[name='smsName']").val();
+           var smsPlatform = $("input[name='smsPlatform']").val();
+           var thirdPartyTemplateId = $("input[name='thirdPartyTemplateId']").val();
+           var templateType = $("input[name='templateType']").val();
+           var status = $("input[name='status']").val();
+           var createTime = $("input[name='createTime']").val();
+           var smsContent = $("input[name='smsContent']").val();
+           var smsVariables = $("input[name='smsVariables']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shyglhyyxmouldmessage/sHyglHyyxMouldmessageAdd",
+            data : {
+                "smsName": smsName,
+                "smsPlatform": smsPlatform,
+                "thirdPartyTemplateId": thirdPartyTemplateId,
+                "templateType": templateType,
+                "status": status,
+                "createTime": createTime,
+                "smsContent": smsContent,
+                "smsVariables": smsVariables,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 108 - 0
health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxMouldmessageEdit.html

@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('模版文案管理表(模版管理)修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglHyyxMouldmessage-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">短信名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="smsName" placeholder="短信名称" th:value="${smsName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">短信平台:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="smsPlatform" placeholder="短信平台" th:value="${smsPlatform}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">三方模版ID:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="thirdPartyTemplateId" placeholder="三方模版ID" th:value="${thirdPartyTemplateId}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">模板类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="templateType" placeholder="模板类型" th:value="${templateType}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="status" placeholder="状态" th:value="${status}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="createTime" placeholder="创建时间" th:value="${createTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">短信内容:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="smsContent" placeholder="短信内容" th:value="${smsContent}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">短信变量:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="smsVariables" placeholder="短信变量" th:value="${smsVariables}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SHyglHyyxMouldmessage-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shyglhyyxmouldmessage/sHyglHyyxMouldmessageEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 225 - 0
health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxMouldmessageList.html

@@ -0,0 +1,225 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('模版文案管理表(模版管理)')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SHyglHyyxMouldmessage-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                短信名称:<input type="text" class="styled-input" name="smsName" autocomplete="off"/>
+                            </li>
+                            <li>
+                                短信平台:<input type="text" class="styled-input" name="smsPlatform" autocomplete="off"/>
+                            </li>
+                            <li>
+                                三方模版ID:<input type="text" class="styled-input" name="thirdPartyTemplateId" autocomplete="off"/>
+                            </li>
+                            <li>
+                                模板类型:<input type="text" class="styled-input" name="templateType" autocomplete="off"/>
+                            </li>
+                            <li>
+                                状态:<input type="text" class="styled-input" name="status" autocomplete="off"/>
+                            </li>
+                            <li>
+                                创建时间:<input type="text" class="styled-input" name="createTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                短信内容:<input type="text" class="styled-input" name="smsContent" autocomplete="off"/>
+                            </li>
+                            <li>
+                                短信变量:<input type="text" class="styled-input" name="smsVariables" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "hygl/shyglhyyxmouldmessage";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sHyglHyyxMouldmessageList",
+            viewUrl: prefix + "/sHyglHyyxMouldmessageView/{id}",
+            createUrl: prefix + "/sHyglHyyxMouldmessageAdd",
+            updateUrl: prefix + "/sHyglHyyxMouldmessageEdit/{id}",
+            removeUrl: prefix + "/sHyglHyyxMouldmessageRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "模版文案管理表(模版管理)",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'smsName', title: '短信名称', align: 'center' },
+                    { field: 'smsPlatform', title: '短信平台', align: 'center' },
+                    { field: 'thirdPartyTemplateId', title: '三方模版ID', align: 'center' },
+                    { field: 'templateType', title: '模板类型', align: 'center' },
+                    { field: 'status', title: '状态', align: 'center' },
+                    { field: 'createTime', title: '创建时间', align: 'center' },
+                    { field: 'smsContent', title: '短信内容', align: 'center' },
+                    { field: 'smsVariables', title: '短信变量', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SHyglHyyxMouldmessage-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SHyglHyyxMouldmessage-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 99 - 0
health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxMouldmessagePageEdit.html

@@ -0,0 +1,99 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('模版文案管理表(模版管理)修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglHyyxMouldmessage-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">短信名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="smsName" placeholder="短信名称" th:value="${smsName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">短信平台:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="smsPlatform" placeholder="短信平台" th:value="${smsPlatform}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">三方模版ID:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="thirdPartyTemplateId" placeholder="三方模版ID" th:value="${thirdPartyTemplateId}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">模板类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="templateType" placeholder="模板类型" th:value="${templateType}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="status" placeholder="状态" th:value="${status}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="createTime" placeholder="创建时间" th:value="${createTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">短信内容:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="smsContent" placeholder="短信内容" th:value="${smsContent}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">短信变量:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="smsVariables" placeholder="短信变量" th:value="${smsVariables}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "hygl/shyglhyyxmouldmessage";
+        if ($.validate.form()) {
+            var data = $("#form-SHyglHyyxMouldmessage-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sHyglHyyxMouldmessageEdit", data);
+        }
+    }
+</script>

+ 121 - 0
health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxPeoplemanagementAdd.html

@@ -0,0 +1,121 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('人群管理表(精准营销)新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">人群名称:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="peopleName" id="peopleName" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">人群定义:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="peopleDefinition" id="peopleDefinition" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">总人数:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="totalPeopleCount" id="totalPeopleCount" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">成功人数:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="successPeopleCount" id="successPeopleCount" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">失败人数:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="failurePeopleCount" id="failurePeopleCount" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">更新方式:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="updateMethod" id="updateMethod" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">更新时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="updateTime" id="updateTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">创建时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="createTime" id="createTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">创建人:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="creator" id="creator" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var peopleName = $("input[name='peopleName']").val();
+           var peopleDefinition = $("input[name='peopleDefinition']").val();
+           var totalPeopleCount = $("input[name='totalPeopleCount']").val();
+           var successPeopleCount = $("input[name='successPeopleCount']").val();
+           var failurePeopleCount = $("input[name='failurePeopleCount']").val();
+           var updateMethod = $("input[name='updateMethod']").val();
+           var updateTime = $("input[name='updateTime']").val();
+           var createTime = $("input[name='createTime']").val();
+           var creator = $("input[name='creator']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shyglhyyxpeoplemanagement/sHyglHyyxPeoplemanagementAdd",
+            data : {
+                "peopleName": peopleName,
+                "peopleDefinition": peopleDefinition,
+                "totalPeopleCount": totalPeopleCount,
+                "successPeopleCount": successPeopleCount,
+                "failurePeopleCount": failurePeopleCount,
+                "updateMethod": updateMethod,
+                "updateTime": updateTime,
+                "createTime": createTime,
+                "creator": creator,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 114 - 0
health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxPeoplemanagementEdit.html

@@ -0,0 +1,114 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('人群管理表(精准营销)修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglHyyxPeoplemanagement-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">人群名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="peopleName" placeholder="人群名称" th:value="${peopleName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">人群定义:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="peopleDefinition" placeholder="人群定义" th:value="${peopleDefinition}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">总人数:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="totalPeopleCount" placeholder="总人数" th:value="${totalPeopleCount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">成功人数:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="successPeopleCount" placeholder="成功人数" th:value="${successPeopleCount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">失败人数:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="failurePeopleCount" placeholder="失败人数" th:value="${failurePeopleCount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">更新方式:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="updateMethod" placeholder="更新方式" th:value="${updateMethod}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">更新时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="updateTime" placeholder="更新时间" th:value="${updateTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="createTime" placeholder="创建时间" th:value="${createTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="creator" placeholder="创建人" th:value="${creator}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SHyglHyyxPeoplemanagement-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "hygl/shyglhyyxpeoplemanagement/sHyglHyyxPeoplemanagementEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 229 - 0
health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxPeoplemanagementList.html

@@ -0,0 +1,229 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('人群管理表(精准营销)')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SHyglHyyxPeoplemanagement-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                人群名称:<input type="text" class="styled-input" name="peopleName" autocomplete="off"/>
+                            </li>
+                            <li>
+                                人群定义:<input type="text" class="styled-input" name="peopleDefinition" autocomplete="off"/>
+                            </li>
+                            <li>
+                                总人数:<input type="text" class="styled-input" name="totalPeopleCount" autocomplete="off"/>
+                            </li>
+                            <li>
+                                成功人数:<input type="text" class="styled-input" name="successPeopleCount" autocomplete="off"/>
+                            </li>
+                            <li>
+                                失败人数:<input type="text" class="styled-input" name="failurePeopleCount" autocomplete="off"/>
+                            </li>
+                            <li>
+                                更新方式:<input type="text" class="styled-input" name="updateMethod" autocomplete="off"/>
+                            </li>
+                            <li>
+                                更新时间:<input type="text" class="styled-input" name="updateTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                创建时间:<input type="text" class="styled-input" name="createTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                创建人:<input type="text" class="styled-input" name="creator" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "hygl/shyglhyyxpeoplemanagement";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sHyglHyyxPeoplemanagementList",
+            viewUrl: prefix + "/sHyglHyyxPeoplemanagementView/{id}",
+            createUrl: prefix + "/sHyglHyyxPeoplemanagementAdd",
+            updateUrl: prefix + "/sHyglHyyxPeoplemanagementEdit/{id}",
+            removeUrl: prefix + "/sHyglHyyxPeoplemanagementRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "人群管理表(精准营销)",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'peopleName', title: '人群名称', align: 'center' },
+                    { field: 'peopleDefinition', title: '人群定义', align: 'center' },
+                    { field: 'totalPeopleCount', title: '总人数', align: 'center' },
+                    { field: 'successPeopleCount', title: '成功人数', align: 'center' },
+                    { field: 'failurePeopleCount', title: '失败人数', align: 'center' },
+                    { field: 'updateMethod', title: '更新方式', align: 'center' },
+                    { field: 'updateTime', title: '更新时间', align: 'center' },
+                    { field: 'createTime', title: '创建时间', align: 'center' },
+                    { field: 'creator', title: '创建人', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SHyglHyyxPeoplemanagement-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SHyglHyyxPeoplemanagement-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 105 - 0
health-admin/src/main/resources/templates/hygl/yx/SHyglHyyxPeoplemanagementPageEdit.html

@@ -0,0 +1,105 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('人群管理表(精准营销)修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SHyglHyyxPeoplemanagement-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">人群名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="peopleName" placeholder="人群名称" th:value="${peopleName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">人群定义:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="peopleDefinition" placeholder="人群定义" th:value="${peopleDefinition}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">总人数:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="totalPeopleCount" placeholder="总人数" th:value="${totalPeopleCount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">成功人数:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="successPeopleCount" placeholder="成功人数" th:value="${successPeopleCount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">失败人数:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="failurePeopleCount" placeholder="失败人数" th:value="${failurePeopleCount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">更新方式:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="updateMethod" placeholder="更新方式" th:value="${updateMethod}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">更新时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="updateTime" placeholder="更新时间" th:value="${updateTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="createTime" placeholder="创建时间" th:value="${createTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="creator" placeholder="创建人" th:value="${creator}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "hygl/shyglhyyxpeoplemanagement";
+        if ($.validate.form()) {
+            var data = $("#form-SHyglHyyxPeoplemanagement-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sHyglHyyxPeoplemanagementEdit", data);
+        }
+    }
+</script>

+ 97 - 0
health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkglValueaddedcardAdd.html

@@ -0,0 +1,97 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('储值卡信息表新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">开卡手机号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="openCardPhone" id="openCardPhone" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">储值卡类型:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="cardType" id="cardType" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">状态:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="status" id="status" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">余额/元:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="balance" id="balance" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">最后交易时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="lastTransactionTime" id="lastTransactionTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">有效期至:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="validUntil" id="validUntil" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var openCardPhone = $("input[name='openCardPhone']").val();
+           var cardType = $("input[name='cardType']").val();
+           var status = $("input[name='status']").val();
+           var balance = $("input[name='balance']").val();
+           var lastTransactionTime = $("input[name='lastTransactionTime']").val();
+           var validUntil = $("input[name='validUntil']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "yxgl/syxglczkczkglvalueaddedcard/sYxglCzkCzkglValueaddedcardAdd",
+            data : {
+                "openCardPhone": openCardPhone,
+                "cardType": cardType,
+                "status": status,
+                "balance": balance,
+                "lastTransactionTime": lastTransactionTime,
+                "validUntil": validUntil,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 96 - 0
health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkglValueaddedcardEdit.html

@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('储值卡信息表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SYxglCzkCzkglValueaddedcard-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">开卡手机号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="openCardPhone" placeholder="开卡手机号" th:value="${openCardPhone}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">储值卡类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="cardType" placeholder="储值卡类型" th:value="${cardType}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="status" placeholder="状态" th:value="${status}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">余额/元:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="balance" placeholder="余额/元" th:value="${balance}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">最后交易时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="lastTransactionTime" placeholder="最后交易时间" th:value="${lastTransactionTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">有效期至:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="validUntil" placeholder="有效期至" th:value="${validUntil}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SYxglCzkCzkglValueaddedcard-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "yxgl/syxglczkczkglvalueaddedcard/sYxglCzkCzkglValueaddedcardEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 217 - 0
health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkglValueaddedcardList.html

@@ -0,0 +1,217 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('储值卡信息表')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SYxglCzkCzkglValueaddedcard-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                开卡手机号:<input type="text" class="styled-input" name="openCardPhone" autocomplete="off"/>
+                            </li>
+                            <li>
+                                储值卡类型:<input type="text" class="styled-input" name="cardType" autocomplete="off"/>
+                            </li>
+                            <li>
+                                状态:<input type="text" class="styled-input" name="status" autocomplete="off"/>
+                            </li>
+                            <li>
+                                余额/元:<input type="text" class="styled-input" name="balance" autocomplete="off"/>
+                            </li>
+                            <li>
+                                最后交易时间:<input type="text" class="styled-input" name="lastTransactionTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                有效期至:<input type="text" class="styled-input" name="validUntil" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "yxgl/syxglczkczkglvalueaddedcard";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sYxglCzkCzkglValueaddedcardList",
+            viewUrl: prefix + "/sYxglCzkCzkglValueaddedcardView/{id}",
+            createUrl: prefix + "/sYxglCzkCzkglValueaddedcardAdd",
+            updateUrl: prefix + "/sYxglCzkCzkglValueaddedcardEdit/{id}",
+            removeUrl: prefix + "/sYxglCzkCzkglValueaddedcardRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "储值卡信息表",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'openCardPhone', title: '开卡手机号', align: 'center' },
+                    { field: 'cardType', title: '储值卡类型', align: 'center' },
+                    { field: 'status', title: '状态', align: 'center' },
+                    { field: 'balance', title: '余额/元', align: 'center' },
+                    { field: 'lastTransactionTime', title: '最后交易时间', align: 'center' },
+                    { field: 'validUntil', title: '有效期至', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SYxglCzkCzkglValueaddedcard-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SYxglCzkCzkglValueaddedcard-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 87 - 0
health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkglValueaddedcardPageEdit.html

@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('储值卡信息表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SYxglCzkCzkglValueaddedcard-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">开卡手机号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="openCardPhone" placeholder="开卡手机号" th:value="${openCardPhone}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">储值卡类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="cardType" placeholder="储值卡类型" th:value="${cardType}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="status" placeholder="状态" th:value="${status}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">余额/元:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="balance" placeholder="余额/元" th:value="${balance}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">最后交易时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="lastTransactionTime" placeholder="最后交易时间" th:value="${lastTransactionTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">有效期至:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="validUntil" placeholder="有效期至" th:value="${validUntil}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "yxgl/syxglczkczkglvalueaddedcard";
+        if ($.validate.form()) {
+            var data = $("#form-SYxglCzkCzkglValueaddedcard-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sYxglCzkCzkglValueaddedcardEdit", data);
+        }
+    }
+</script>

+ 105 - 0
health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkxfTransactionrecordAdd.html

@@ -0,0 +1,105 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('储值卡交易记录表新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">交易时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="transactionTime" id="transactionTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">交易门店:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="transactionStore" id="transactionStore" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">储值卡号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="cardNumber" id="cardNumber" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">订单号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="orderNumber" id="orderNumber" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">付款金额/元:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="paymentAmount" id="paymentAmount" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">充值金额/元:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="rechargeAmount" id="rechargeAmount" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">营业员:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="cashier" id="cashier" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var transactionTime = $("input[name='transactionTime']").val();
+           var transactionStore = $("input[name='transactionStore']").val();
+           var cardNumber = $("input[name='cardNumber']").val();
+           var orderNumber = $("input[name='orderNumber']").val();
+           var paymentAmount = $("input[name='paymentAmount']").val();
+           var rechargeAmount = $("input[name='rechargeAmount']").val();
+           var cashier = $("input[name='cashier']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "yxgl/syxglczkczkxftransactionrecord/sYxglCzkCzkxfTransactionrecordAdd",
+            data : {
+                "transactionTime": transactionTime,
+                "transactionStore": transactionStore,
+                "cardNumber": cardNumber,
+                "orderNumber": orderNumber,
+                "paymentAmount": paymentAmount,
+                "rechargeAmount": rechargeAmount,
+                "cashier": cashier,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 102 - 0
health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkxfTransactionrecordEdit.html

@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('储值卡交易记录表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SYxglCzkCzkxfTransactionrecord-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">交易时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="transactionTime" placeholder="交易时间" th:value="${transactionTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">交易门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="transactionStore" placeholder="交易门店" th:value="${transactionStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">储值卡号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="cardNumber" placeholder="储值卡号" th:value="${cardNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">订单号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="orderNumber" placeholder="订单号" th:value="${orderNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">付款金额/元:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="paymentAmount" placeholder="付款金额/元" th:value="${paymentAmount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">充值金额/元:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="rechargeAmount" placeholder="充值金额/元" th:value="${rechargeAmount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">营业员:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="cashier" placeholder="营业员" th:value="${cashier}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SYxglCzkCzkxfTransactionrecord-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "yxgl/syxglczkczkxftransactionrecord/sYxglCzkCzkxfTransactionrecordEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 221 - 0
health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkxfTransactionrecordList.html

@@ -0,0 +1,221 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('储值卡交易记录表')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SYxglCzkCzkxfTransactionrecord-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                交易时间:<input type="text" class="styled-input" name="transactionTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                交易门店:<input type="text" class="styled-input" name="transactionStore" autocomplete="off"/>
+                            </li>
+                            <li>
+                                储值卡号:<input type="text" class="styled-input" name="cardNumber" autocomplete="off"/>
+                            </li>
+                            <li>
+                                订单号:<input type="text" class="styled-input" name="orderNumber" autocomplete="off"/>
+                            </li>
+                            <li>
+                                付款金额/元:<input type="text" class="styled-input" name="paymentAmount" autocomplete="off"/>
+                            </li>
+                            <li>
+                                充值金额/元:<input type="text" class="styled-input" name="rechargeAmount" autocomplete="off"/>
+                            </li>
+                            <li>
+                                营业员:<input type="text" class="styled-input" name="cashier" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "yxgl/syxglczkczkxftransactionrecord";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sYxglCzkCzkxfTransactionrecordList",
+            viewUrl: prefix + "/sYxglCzkCzkxfTransactionrecordView/{id}",
+            createUrl: prefix + "/sYxglCzkCzkxfTransactionrecordAdd",
+            updateUrl: prefix + "/sYxglCzkCzkxfTransactionrecordEdit/{id}",
+            removeUrl: prefix + "/sYxglCzkCzkxfTransactionrecordRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "储值卡交易记录表",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'transactionTime', title: '交易时间', align: 'center' },
+                    { field: 'transactionStore', title: '交易门店', align: 'center' },
+                    { field: 'cardNumber', title: '储值卡号', align: 'center' },
+                    { field: 'orderNumber', title: '订单号', align: 'center' },
+                    { field: 'paymentAmount', title: '付款金额/元', align: 'center' },
+                    { field: 'rechargeAmount', title: '充值金额/元', align: 'center' },
+                    { field: 'cashier', title: '营业员', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SYxglCzkCzkxfTransactionrecord-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SYxglCzkCzkxfTransactionrecord-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 93 - 0
health-admin/src/main/resources/templates/yxgl/SYxglCzkCzkxfTransactionrecordPageEdit.html

@@ -0,0 +1,93 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('储值卡交易记录表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SYxglCzkCzkxfTransactionrecord-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">交易时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="transactionTime" placeholder="交易时间" th:value="${transactionTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">交易门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="transactionStore" placeholder="交易门店" th:value="${transactionStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">储值卡号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="cardNumber" placeholder="储值卡号" th:value="${cardNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">订单号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="orderNumber" placeholder="订单号" th:value="${orderNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">付款金额/元:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="paymentAmount" placeholder="付款金额/元" th:value="${paymentAmount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">充值金额/元:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="rechargeAmount" placeholder="充值金额/元" th:value="${rechargeAmount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">营业员:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="cashier" placeholder="营业员" th:value="${cashier}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "yxgl/syxglczkczkxftransactionrecord";
+        if ($.validate.form()) {
+            var data = $("#form-SYxglCzkCzkxfTransactionrecord-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sYxglCzkCzkxfTransactionrecordEdit", data);
+        }
+    }
+</script>

+ 209 - 0
health-admin/src/main/resources/templates/yxgl/SYxglKjglHxjlRecordAdd.html

@@ -0,0 +1,209 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('领取核销记录新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">优惠券名称:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="couponName" id="couponName" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">优惠券编号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="couponNumber" id="couponNumber" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">优惠券面值:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="faceValue" id="faceValue" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">抵扣金额:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="deductionAmount" id="deductionAmount" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">优惠券类型:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="type" id="type" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">折扣率:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="discountRate" id="discountRate" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">领券时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="getTime" id="getTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">领取门店:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="issuingStore" id="issuingStore" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">领取门店MDM编码:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="issuingStoreMDMCode" id="issuingStoreMDMCode" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">核销时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="redemptionTime" id="redemptionTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">核销状态:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="redemptionStatus" id="redemptionStatus" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">核销门店:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="redeemingStore" id="redeemingStore" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">核销门店MDM编码:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="redeemingStoreMDMCode" id="redeemingStoreMDMCode" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">核销门店所在区域:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="storeRegion" id="storeRegion" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">核销人:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="redemptionUser" id="redemptionUser" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">ERP会员卡号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="erpMemberCardNo" id="erpMemberCardNo" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">使用人:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="usedBy" id="usedBy" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">手机号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="phoneNumber" id="phoneNumber" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">订单号:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="orderNo" id="orderNo" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">是否领销一致:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="sameStoreRedemption" id="sameStoreRedemption" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var couponName = $("input[name='couponName']").val();
+           var couponNumber = $("input[name='couponNumber']").val();
+           var faceValue = $("input[name='faceValue']").val();
+           var deductionAmount = $("input[name='deductionAmount']").val();
+           var type = $("input[name='type']").val();
+           var discountRate = $("input[name='discountRate']").val();
+           var getTime = $("input[name='getTime']").val();
+           var issuingStore = $("input[name='issuingStore']").val();
+           var issuingStoreMDMCode = $("input[name='issuingStoreMDMCode']").val();
+           var redemptionTime = $("input[name='redemptionTime']").val();
+           var redemptionStatus = $("input[name='redemptionStatus']").val();
+           var redeemingStore = $("input[name='redeemingStore']").val();
+           var redeemingStoreMDMCode = $("input[name='redeemingStoreMDMCode']").val();
+           var storeRegion = $("input[name='storeRegion']").val();
+           var redemptionUser = $("input[name='redemptionUser']").val();
+           var erpMemberCardNo = $("input[name='erpMemberCardNo']").val();
+           var usedBy = $("input[name='usedBy']").val();
+           var phoneNumber = $("input[name='phoneNumber']").val();
+           var orderNo = $("input[name='orderNo']").val();
+           var sameStoreRedemption = $("input[name='sameStoreRedemption']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "yxgl/syxglkjglhxjlrecord/sYxglKjglHxjlRecordAdd",
+            data : {
+                "couponName": couponName,
+                "couponNumber": couponNumber,
+                "faceValue": faceValue,
+                "deductionAmount": deductionAmount,
+                "type": type,
+                "discountRate": discountRate,
+                "getTime": getTime,
+                "issuingStore": issuingStore,
+                "issuingStoreMDMCode": issuingStoreMDMCode,
+                "redemptionTime": redemptionTime,
+                "redemptionStatus": redemptionStatus,
+                "redeemingStore": redeemingStore,
+                "redeemingStoreMDMCode": redeemingStoreMDMCode,
+                "storeRegion": storeRegion,
+                "redemptionUser": redemptionUser,
+                "erpMemberCardNo": erpMemberCardNo,
+                "usedBy": usedBy,
+                "phoneNumber": phoneNumber,
+                "orderNo": orderNo,
+                "sameStoreRedemption": sameStoreRedemption,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 180 - 0
health-admin/src/main/resources/templates/yxgl/SYxglKjglHxjlRecordEdit.html

@@ -0,0 +1,180 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('领取核销记录修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SYxglKjglHxjlRecord-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">优惠券名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="couponName" placeholder="优惠券名称" th:value="${couponName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">优惠券编号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="couponNumber" placeholder="优惠券编号" th:value="${couponNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">优惠券面值:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="faceValue" placeholder="优惠券面值" th:value="${faceValue}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">抵扣金额:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="deductionAmount" placeholder="抵扣金额" th:value="${deductionAmount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">优惠券类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="type" placeholder="优惠券类型" th:value="${type}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">折扣率:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="discountRate" placeholder="折扣率" th:value="${discountRate}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">领券时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="getTime" placeholder="领券时间" th:value="${getTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">领取门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="issuingStore" placeholder="领取门店" th:value="${issuingStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">领取门店MDM编码:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="issuingStoreMDMCode" placeholder="领取门店MDM编码" th:value="${issuingStoreMDMCode}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionTime" placeholder="核销时间" th:value="${redemptionTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionStatus" placeholder="核销状态" th:value="${redemptionStatus}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redeemingStore" placeholder="核销门店" th:value="${redeemingStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销门店MDM编码:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redeemingStoreMDMCode" placeholder="核销门店MDM编码" th:value="${redeemingStoreMDMCode}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销门店所在区域:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="storeRegion" placeholder="核销门店所在区域" th:value="${storeRegion}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionUser" placeholder="核销人" th:value="${redemptionUser}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">ERP会员卡号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="erpMemberCardNo" placeholder="ERP会员卡号" th:value="${erpMemberCardNo}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">使用人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="usedBy" placeholder="使用人" th:value="${usedBy}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">手机号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="phoneNumber" placeholder="手机号" th:value="${phoneNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">订单号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="orderNo" placeholder="订单号" th:value="${orderNo}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">是否领销一致:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="sameStoreRedemption" placeholder="是否领销一致" th:value="${sameStoreRedemption}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SYxglKjglHxjlRecord-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "yxgl/syxglkjglhxjlrecord/sYxglKjglHxjlRecordEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 273 - 0
health-admin/src/main/resources/templates/yxgl/SYxglKjglHxjlRecordList.html

@@ -0,0 +1,273 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('领取核销记录')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SYxglKjglHxjlRecord-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                优惠券名称:<input type="text" class="styled-input" name="couponName" autocomplete="off"/>
+                            </li>
+                            <li>
+                                优惠券编号:<input type="text" class="styled-input" name="couponNumber" autocomplete="off"/>
+                            </li>
+                            <li>
+                                优惠券面值:<input type="text" class="styled-input" name="faceValue" autocomplete="off"/>
+                            </li>
+                            <li>
+                                抵扣金额:<input type="text" class="styled-input" name="deductionAmount" autocomplete="off"/>
+                            </li>
+                            <li>
+                                优惠券类型:<input type="text" class="styled-input" name="type" autocomplete="off"/>
+                            </li>
+                            <li>
+                                折扣率:<input type="text" class="styled-input" name="discountRate" autocomplete="off"/>
+                            </li>
+                            <li>
+                                领券时间:<input type="text" class="styled-input" name="getTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                领取门店:<input type="text" class="styled-input" name="issuingStore" autocomplete="off"/>
+                            </li>
+                            <li>
+                                领取门店MDM编码:<input type="text" class="styled-input" name="issuingStoreMDMCode" autocomplete="off"/>
+                            </li>
+                            <li>
+                                核销时间:<input type="text" class="styled-input" name="redemptionTime" autocomplete="off"/>
+                            </li>
+                            <li>
+                                核销状态:<input type="text" class="styled-input" name="redemptionStatus" autocomplete="off"/>
+                            </li>
+                            <li>
+                                核销门店:<input type="text" class="styled-input" name="redeemingStore" autocomplete="off"/>
+                            </li>
+                            <li>
+                                核销门店MDM编码:<input type="text" class="styled-input" name="redeemingStoreMDMCode" autocomplete="off"/>
+                            </li>
+                            <li>
+                                核销门店所在区域:<input type="text" class="styled-input" name="storeRegion" autocomplete="off"/>
+                            </li>
+                            <li>
+                                核销人:<input type="text" class="styled-input" name="redemptionUser" autocomplete="off"/>
+                            </li>
+                            <li>
+                                ERP会员卡号:<input type="text" class="styled-input" name="erpMemberCardNo" autocomplete="off"/>
+                            </li>
+                            <li>
+                                使用人:<input type="text" class="styled-input" name="usedBy" autocomplete="off"/>
+                            </li>
+                            <li>
+                                手机号:<input type="text" class="styled-input" name="phoneNumber" autocomplete="off"/>
+                            </li>
+                            <li>
+                                订单号:<input type="text" class="styled-input" name="orderNo" autocomplete="off"/>
+                            </li>
+                            <li>
+                                是否领销一致:<input type="text" class="styled-input" name="sameStoreRedemption" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "yxgl/syxglkjglhxjlrecord";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sYxglKjglHxjlRecordList",
+            viewUrl: prefix + "/sYxglKjglHxjlRecordView/{id}",
+            createUrl: prefix + "/sYxglKjglHxjlRecordAdd",
+            updateUrl: prefix + "/sYxglKjglHxjlRecordEdit/{id}",
+            removeUrl: prefix + "/sYxglKjglHxjlRecordRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "领取核销记录",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'couponName', title: '优惠券名称', align: 'center' },
+                    { field: 'couponNumber', title: '优惠券编号', align: 'center' },
+                    { field: 'faceValue', title: '优惠券面值', align: 'center' },
+                    { field: 'deductionAmount', title: '抵扣金额', align: 'center' },
+                    { field: 'type', title: '优惠券类型', align: 'center' },
+                    { field: 'discountRate', title: '折扣率', align: 'center' },
+                    { field: 'getTime', title: '领券时间', align: 'center' },
+                    { field: 'issuingStore', title: '领取门店', align: 'center' },
+                    { field: 'issuingStoreMDMCode', title: '领取门店MDM编码', align: 'center' },
+                    { field: 'redemptionTime', title: '核销时间', align: 'center' },
+                    { field: 'redemptionStatus', title: '核销状态', align: 'center' },
+                    { field: 'redeemingStore', title: '核销门店', align: 'center' },
+                    { field: 'redeemingStoreMDMCode', title: '核销门店MDM编码', align: 'center' },
+                    { field: 'storeRegion', title: '核销门店所在区域', align: 'center' },
+                    { field: 'redemptionUser', title: '核销人', align: 'center' },
+                    { field: 'erpMemberCardNo', title: 'ERP会员卡号', align: 'center' },
+                    { field: 'usedBy', title: '使用人', align: 'center' },
+                    { field: 'phoneNumber', title: '手机号', align: 'center' },
+                    { field: 'orderNo', title: '订单号', align: 'center' },
+                    { field: 'sameStoreRedemption', title: '是否领销一致', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SYxglKjglHxjlRecord-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SYxglKjglHxjlRecord-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 171 - 0
health-admin/src/main/resources/templates/yxgl/SYxglKjglHxjlRecordPageEdit.html

@@ -0,0 +1,171 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('领取核销记录修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SYxglKjglHxjlRecord-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">优惠券名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="couponName" placeholder="优惠券名称" th:value="${couponName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">优惠券编号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="couponNumber" placeholder="优惠券编号" th:value="${couponNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">优惠券面值:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="faceValue" placeholder="优惠券面值" th:value="${faceValue}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">抵扣金额:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="deductionAmount" placeholder="抵扣金额" th:value="${deductionAmount}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">优惠券类型:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="type" placeholder="优惠券类型" th:value="${type}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">折扣率:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="discountRate" placeholder="折扣率" th:value="${discountRate}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">领券时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="getTime" placeholder="领券时间" th:value="${getTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">领取门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="issuingStore" placeholder="领取门店" th:value="${issuingStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">领取门店MDM编码:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="issuingStoreMDMCode" placeholder="领取门店MDM编码" th:value="${issuingStoreMDMCode}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionTime" placeholder="核销时间" th:value="${redemptionTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionStatus" placeholder="核销状态" th:value="${redemptionStatus}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销门店:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redeemingStore" placeholder="核销门店" th:value="${redeemingStore}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销门店MDM编码:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redeemingStoreMDMCode" placeholder="核销门店MDM编码" th:value="${redeemingStoreMDMCode}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销门店所在区域:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="storeRegion" placeholder="核销门店所在区域" th:value="${storeRegion}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">核销人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="redemptionUser" placeholder="核销人" th:value="${redemptionUser}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">ERP会员卡号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="erpMemberCardNo" placeholder="ERP会员卡号" th:value="${erpMemberCardNo}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">使用人:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="usedBy" placeholder="使用人" th:value="${usedBy}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">手机号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="phoneNumber" placeholder="手机号" th:value="${phoneNumber}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">订单号:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="orderNo" placeholder="订单号" th:value="${orderNo}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">是否领销一致:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="sameStoreRedemption" placeholder="是否领销一致" th:value="${sameStoreRedemption}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "yxgl/syxglkjglhxjlrecord";
+        if ($.validate.form()) {
+            var data = $("#form-SYxglKjglHxjlRecord-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sYxglKjglHxjlRecordEdit", data);
+        }
+    }
+</script>

+ 73 - 0
health-admin/src/main/resources/templates/yxgl/SYxglPosterinfoAdd.html

@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('海报信息表新增')" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<body class="white-bg">
+<div class="wrapper wrapper-content animated fadeInRight ibox-content">
+    <form class="form-horizontal m" id="form-role-add">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                            <label class="col-sm-3 control-label">海报名称:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="posterName" id="posterName" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">状态:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="status" id="status" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                            <label class="col-sm-3 control-label">创建时间:</label>
+                            <div class="col-sm-3">
+                                <div class="input-group">
+                                    <input name="createTime" id="createTime" class="styled-input" type="text" maxlength="255" >
+                                </div>
+                            </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: ztree-js" />
+<script type="text/javascript">
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            add();
+        }
+    }
+
+    function add() {
+           var posterName = $("input[name='posterName']").val();
+           var status = $("input[name='status']").val();
+           var createTime = $("input[name='createTime']").val();
+
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "yxgl/syxglposterinfo/sYxglPosterinfoAdd",
+            data : {
+                "posterName": posterName,
+                "status": status,
+                "createTime": createTime,
+            },
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+</script>
+</body>
+</html>

+ 78 - 0
health-admin/src/main/resources/templates/yxgl/SYxglPosterinfoEdit.html

@@ -0,0 +1,78 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('海报信息表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SYxglPosterinfo-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">海报名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="posterName" placeholder="海报名称" th:value="${posterName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="status" placeholder="状态" th:value="${status}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="createTime" placeholder="创建时间" th:value="${createTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <!--<button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>-->
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function edit() {
+        var data = $("#form-SYxglPosterinfo-edit").serializeArray();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : ctx + "yxgl/syxglposterinfo/sYxglPosterinfoEdit",
+            data : data,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.successCallback(data);
+            }
+        });
+    }
+
+    function submitHandler() {
+        if ($.validate.form()) {
+            edit();
+        }
+    }
+</script>

+ 205 - 0
health-admin/src/main/resources/templates/yxgl/SYxglPosterinfoList.html

@@ -0,0 +1,205 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <meta charset="UTF-8">
+    <meta name="format-detection" content="telephone=no">
+    <th:block th:include="include :: header('海报信息表')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+</head>
+<style>
+    /* 设置 ul 的基本样式 */
+    ul {
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(5, 1fr); /* 设置三列 */
+    }
+    ul-list ul{
+        list-style-type: none; /* 去掉项目符号 */
+        padding: 0; /* 去掉默认的内边距 */
+        display: grid; /* 使用网格布局 */
+        grid-template-columns: repeat(4, 1fr); /* 设置三列 */
+    }
+    ul-list ul li{
+        /*padding: 10px;*/ /* 内边距 */
+        text-align: left; /* 文本居中 */
+    }
+
+    /* 设置 li 的基本样式 */
+    li {
+        /*background-color: lightblue; *//* 背景颜色 */
+        /*padding: 1px; !* 内边距 *!*/
+        text-align: right; /* 文本居中 */
+    }
+</style>
+
+<body class="gray-bg">
+<div class="ui-layout-center">
+    <div class="container-div">
+        <div class="row">
+            <div class="col-sm-12 search-collapse" >
+                <form id="SYxglPosterinfo-form">
+                    <input type="hidden" id="deptId" name="deptId">
+                    <input type="hidden" id="parentId" name="parentId">
+                    <div class="select-list" >
+                        <ul>
+                            <li>
+                                海报名称:<input type="text" class="styled-input" name="posterName" autocomplete="off"/>
+                            </li>
+                            <li>
+                                状态:<input type="text" class="styled-input" name="status" autocomplete="off"/>
+                            </li>
+                            <li>
+                                创建时间:<input type="text" class="styled-input" name="createTime" autocomplete="off"/>
+                            </li>
+                            <li style="text-align: center">
+                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
+                                <a class="btn btn-warning btn-rounded btn-sm" onclick="resetPre()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
+                            </li>
+                        </ul>
+                    </div>
+
+                </form>
+            </div>
+
+            <div class="btn-group-sm" id="toolbar" role="group">
+                <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:user:add">
+                    <i class="fa fa-plus"></i> 新增
+                </a>
+                 <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:user:edit">
+                    <i class="fa fa-edit"></i> 修改
+                </a>
+                <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:user:remove">
+                    <i class="fa fa-remove"></i> 删除
+                </a>
+                <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="system:user:import">
+                    <i class="fa fa-upload"></i> 导入
+                </a>
+                <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:user:export">
+                    <i class="fa fa-download"></i> 导出
+                </a>
+            </div>
+
+            <div class="col-sm-12 select-table table-striped">
+                <table id="bootstrap-table"></table>
+            </div>
+        </div>
+    </div>
+</div>
+
+<th:block th:include="include :: footer" />
+<th:block th:include="include :: layout-latest-js" />
+<th:block th:include="include :: ztree-js" />
+<script th:inline="javascript">
+    var editFlag = [[${@permission.hasPermi('dtp:pmService:edit')}]];
+    var removeFlag = [[${@permission.hasPermi('dtp:pmService:remove')}]];
+    var prefix = ctx + "yxgl/syxglposterinfo";
+    $(function() {
+        var panehHidden = false;
+        if ($(this).width() < 1590) {
+            panehHidden = true;
+        }
+        $('body').layout({ initClosed: panehHidden, west__size: 185, resizeWithWindow: false });
+        // 回到顶部绑定
+        if ($.fn.toTop !== undefined) {
+            var opt = {
+                win:$('.ui-layout-center'),
+                doc:$('.ui-layout-center')
+            };
+            $('#scroll-up').toTop(opt);
+        }
+        queryArchivesList();
+    });
+
+    function queryArchivesList() {
+        var options = {
+            url: prefix + "/sYxglPosterinfoList",
+            viewUrl: prefix + "/sYxglPosterinfoView/{id}",
+            createUrl: prefix + "/sYxglPosterinfoAdd",
+            updateUrl: prefix + "/sYxglPosterinfoEdit/{id}",
+            removeUrl: prefix + "/sYxglPosterinfoRemove",
+            /*exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",*/
+            sortName: "id",
+            sortOrder: "asc",
+            modalName: "海报信息表",
+            fitColumns: true,
+            striped: true,
+            autoRowHeight: true,
+            rowNumbers: true,
+            showFooter:true,  //是否显示表格底部区域。
+            clickToSelect: true, //是否启用点击行时选中整行的功能。
+            singleSelect: true, //是否仅允许选择一行
+            columns: [{
+                checkbox: true
+            },
+                { field: 'id', title: '主键', align: 'center' ,visible:false},
+                    { field: 'posterName', title: '海报名称', align: 'center' },
+                    { field: 'status', title: '状态', align: 'center' },
+                    { field: 'createTime', title: '创建时间', align: 'center' },
+
+                {
+                    title: '操作',
+                    align: 'center',
+                    formatter: function(value, row, index) {
+                        if (row.serviceId != 1) {
+                            var actions = [];
+                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="edit_page(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a> ');
+                            var more = [];
+                            /*more.push("<a class='btn btn-default btn-xs " + resetPwdFlag + "' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
+                            more.push("<a class='btn btn-default btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
+                            actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');*/
+                            return actions.join('');
+                        } else {
+                            return "";
+                        }
+                    }
+                }]
+        };
+        $.table.init(options);
+    }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#SYxglPosterinfo-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+        var resetButton = document.getElementById('SYxglPosterinfo-form');
+        resetButton.addEventListener('click', function() {
+            _refresh();
+        });
+    }
+    function edit_page(id){
+        table.set();
+        var url = "/404.html";
+        if ($.common.isNotEmpty(id)) {
+            url = table.options.updateUrl.replace("{id}", id);
+        } else {
+            var id = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId);
+            if (id.length == 0) {
+                $.modal.alertWarning("请至少选择一条记录");
+                return;
+            }
+            url = table.options.updateUrl.replace("{id}", id);
+        }
+        $.modal.openTab("修改" + table.options.modalName, url + "?status=1" );
+    }
+
+    /* 用户状态显示 */
+    function statusTools(row) {
+        if (row.status == 1) {
+            return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.userId + '\')"></i> ';
+        } else {
+            return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.userId + '\')"></i> ';
+        }
+    }
+</script>
+</body>
+
+</html>

+ 69 - 0
health-admin/src/main/resources/templates/yxgl/SYxglPosterinfoPageEdit.html

@@ -0,0 +1,69 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
+<head>
+    <th:block th:include="include :: header('海报信息表修改')" />
+</head>
+<style>
+
+</style>
+<script>
+
+</script>
+<body>
+<div class="ui-layout-center">
+    <form class="form-horizontal" id="form-SYxglPosterinfo-edit" th:object="${user}">
+        <h4 class="form-header h4">基本信息</h4>
+        <input type="hidden" id="id" name="id" th:value="${id}">
+        <div class="row">
+            <div class="col-sm-12">
+                <div class="form-group">
+                    <!--is-required 增加星号 显示为必填-->
+                    <label class="col-sm-1 control-label">海报名称:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="posterName" placeholder="海报名称" th:value="${posterName}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">状态:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="status" placeholder="状态" th:value="${status}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                    <label class="col-sm-1 control-label">创建时间:</label>
+                    <div class="col-sm-2">
+                        <div class="input-group">
+                            <input name="createTime" placeholder="创建时间" th:value="${createTime}" class="styled-input" type="text" maxlength="255" required>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+    </form>
+</div>
+<div class="main-content">
+    <div class="col-sm-offset-5 col-sm-10">
+        <button type="button" class="btn btn-sm btn-primary" onclick="submitHandler()"><i class="fa fa-check"></i>保 存</button>&nbsp;
+        <button type="button" class="btn btn-sm btn-danger" onclick="closeItem()"><i class="fa fa-reply-all"></i>关 闭 </button>
+    </div>
+</div>
+<th:block th:include="include :: footer" />
+</body>
+</html>
+
+<script>
+    function submitHandler() {
+        var prefix = ctx + "yxgl/syxglposterinfo";
+        if ($.validate.form()) {
+            var data = $("#form-SYxglPosterinfo-edit").serializeArray();
+            /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;
+            var roleIds = $.form.selectCheckeds("role");
+            var postIds = $.form.selectSelects("post");
+            data.push({"name": "status", "value": status});
+            data.push({"name": "roleIds", "value": roleIds});
+            data.push({"name": "postIds", "value": postIds});*/
+            $.operate.saveTab(prefix + "/sYxglPosterinfoEdit", data);
+        }
+    }
+</script>

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません