Browse Source

new 配送打印,配送单据打印 ,DTP处方登记概览

wangshuangpan 5 months ago
parent
commit
3924ad326b

+ 6 - 3
health-admin/src/main/java/com/bzd/web/controller/DTP/ColdDistributionController.java

@@ -23,17 +23,17 @@ import java.util.List;
 @RequestMapping("/dtp/cold")
 public class ColdDistributionController extends BaseController {
     private String prefix = "dtp/cold";
-
     @Autowired
     private DTPService dtpService;
 
 
     @RequiresPermissions("dtp:cold:view")
     @GetMapping()
-    public String recipe()
+    public String cold()
     {
         return prefix + "/cold";
     }
+
     /**
      *
      * 冷链配送订单查询
@@ -100,7 +100,7 @@ public class ColdDistributionController extends BaseController {
      * 保存訂單修改信息
      */
     @RequiresPermissions("dtp:cold:edit")
-    @Log(title = "处方登记管理", businessType = BusinessType.UPDATE)
+    @Log(title = "冷链配送订单管理", businessType = BusinessType.UPDATE)
     @PostMapping("/edit")
     @ResponseBody
     public AjaxResult editSave() throws Exception
@@ -112,4 +112,7 @@ public class ColdDistributionController extends BaseController {
         }
         return toAjax(dtpService.editColdOrder(pd));
     }
+
+
+
 }

+ 129 - 0
health-admin/src/main/java/com/bzd/web/controller/DTP/PrintController.java

@@ -0,0 +1,129 @@
+package com.bzd.web.controller.DTP;
+
+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.common.utils.poi.ExcelUtil;
+import com.bzd.system.service.DTPService;
+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 java.util.List;
+
+/**
+ * 配送单据打印
+ * creator wsp
+ */
+@Controller
+@RequestMapping("/dtp/print")
+public class PrintController extends BaseController {
+    private String prefix = "dtp/print";
+
+    @Autowired
+    private DTPService dtpService;
+    @RequiresPermissions("dtp:print:view")
+    @GetMapping()
+    public String print()
+    {
+        return prefix + "/print";
+    }
+
+    /**
+     * 配送单据打印
+     */
+    /**
+     *
+     * 配送单据打印查询
+     */
+    @RequiresPermissions("dtp:print:list")
+    @PostMapping("/list")
+    @ResponseBody
+    public TableDataInfo list() throws Exception {
+        PageData pd = this.getPageData();
+        startPage();
+        List<PageData> pageData = dtpService.listPrint(pd);
+        return  getDataTable(pageData);
+    }
+
+    /**
+     * 配送单据打印新增页面
+     */
+    @GetMapping("/add")
+    public String add(ModelMap mmap)
+    {
+        mmap.put("posts", 1);
+        return prefix + "/add";
+    }
+    /**
+     * 配送单据打印单新增保存
+     */
+    //@RequiresPermissions("server:serv:add")
+    @Log(title = "配送单据打印新增", businessType = BusinessType.INSERT)
+    @PostMapping("/add")
+    @ResponseBody
+    public AjaxResult add() throws Exception {
+        PageData pd = new PageData();
+        pd = this.getPageData();
+
+        Integer integer = dtpService.savePrint(pd);
+        return toAjax(integer);
+    }
+
+    @Log(title = "配送单据打印删除", businessType = BusinessType.DELETE)
+    @PostMapping("/remove")
+    @ResponseBody
+    public AjaxResult remove() throws Exception
+    {
+        PageData pd = new PageData();
+        pd = this.getPageData();
+        Integer integer = dtpService.DelPrint(pd);
+        return toAjax(integer);
+    }
+
+    @RequiresPermissions("dtp:print:edit")
+    @GetMapping("/edit/{id}")
+    public String view(@PathVariable("id") Long id, ModelMap mmap)throws Exception
+    {
+        PageData pd = this.getPageData();
+        pd.put("id",id);
+        PageData pageData = dtpService.listPrint(pd).get(0);;
+        mmap.putAll(pageData);
+        return prefix + "/edit";
+    }
+
+    /**
+     * 配送单据打印修改信息
+     */
+    @RequiresPermissions("dtp:print:edit")
+    @Log(title = "配送单据打印", businessType = BusinessType.UPDATE)
+    @PostMapping("/edit")
+    @ResponseBody
+    public AjaxResult editSave() throws Exception
+    {
+        PageData pd = this.getPageData();
+        Integer update = dtpService.editPrint(pd);
+        if(update!=1){
+            return error("修改失败");
+        }
+        return toAjax(dtpService.editPrint(pd));
+    }
+
+    @Log(title = "配送单据信息", businessType = BusinessType.EXPORT)
+    @RequiresPermissions("dtp:print:export")
+    @PostMapping("/export")
+    @ResponseBody
+    public AjaxResult export()throws Exception
+    {
+        PageData pd = this.getPageData();
+        List<PageData> pageData= dtpService.listPrint(pd);
+        ExcelUtil<PageData> util = new ExcelUtil<>(PageData.class);
+        return util.exportExcel(pageData, "配送单据数据");
+    }
+
+}

+ 1 - 0
health-admin/src/main/java/com/bzd/web/controller/DTP/RecipeRegisterController.java

@@ -49,6 +49,7 @@ public class RecipeRegisterController extends BaseController {
     {
         return prefix + "/recipe";
     }
+
 /**
  *
  * 处方登记查询

+ 292 - 0
health-admin/src/main/java/com/bzd/web/controller/DTP/RecipeReportController.java

@@ -0,0 +1,292 @@
+package com.bzd.web.controller.DTP;
+
+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.system.service.DTPService;
+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 java.util.ArrayList;
+import java.util.List;
+
+/**
+ * DTP处方登记概
+ * creator wsp
+ */
+@Controller
+@RequestMapping("/dtp/report")
+public class RecipeReportController extends BaseController {
+    private String prefix = "dtp/recipe";
+
+    @Autowired
+    private DTPService dtpService;
+    @RequiresPermissions("dtp:report:view")
+    @GetMapping()
+    public String view()
+    {
+        return prefix + "/view";
+    }
+
+    /**
+     * DTP处方登记概览详情
+     * @return
+     */
+    @RequiresPermissions("dtp:report:list")
+    @GetMapping("/viewDetail/{id}")
+    @ResponseBody
+    public AjaxResult viewDetail(@PathVariable("id") Long id)
+    {
+        PageData pd1 = new PageData();
+        List<PageData> pageData = new ArrayList<>();
+
+            // 第一条数据
+            pd1.put("id", id);
+            pd1.put("chain", "hh");
+            pd1.put("orderCount", "85");
+            pd1.put("pendingCount", "13");
+            pd1.put("completedCount", "5");
+            pd1.put("completionRate", "77%");
+            pageData.add(pd1);
+         return  AjaxResult.success("cg",pageData);
+    }
+    /**
+     *
+     * DTP处方登记概 查询报表柱状图
+     */
+    @RequiresPermissions("dtp:report:list")
+    @PostMapping("/listReport")
+    @ResponseBody
+    public AjaxResult listReport() throws Exception {
+        PageData pd1 = new PageData();
+        PageData pd2 = new PageData();
+        PageData pd3 = new PageData();
+        PageData pd4 = new PageData();
+        PageData pd5 = new PageData();
+        PageData pd6 = new PageData();
+        PageData pd7 = new PageData();
+        PageData pd8 = new PageData();
+        PageData pd9 = new PageData();
+        PageData pd10 = new PageData();
+        startPage();
+
+        List<PageData> pageData = new ArrayList<>();
+        // 第一条数据
+        pd1.put("id", "01");
+        pd1.put("chain", "花果园店");
+        pd1.put("orderCount", "88");
+        pd1.put("pendingCount", "10");
+        pd1.put("completedCount", "8");
+        pd1.put("completionRate", "65%");
+        pageData.add(pd1);
+        // 第二条数据
+        pd2.put("id", "02");
+        pd2.put("chain", "龙阳路店");
+        pd2.put("orderCount", "120");
+        pd2.put("pendingCount", "15");
+        pd2.put("completedCount", "105");
+        pd2.put("completionRate", "87.5%");
+        pageData.add(pd2);
+        // 第三条数据
+        pd3.put("id","103");
+        pd3.put("chain","观山湖店");
+        pd3.put("orderCount","89");
+        pd3.put("pendingCount","15");
+        pd3.put("completedCount","11");
+        pd3.put("completionRate","58%");
+        pageData.add(pd3);
+        // 第4条数据
+        pd4.put("id", "04");
+        pd4.put("chain", "青云路店");
+        pd4.put("orderCount", "110");
+        pd4.put("pendingCount", "16");
+        pd4.put("completedCount", "95");
+        pd4.put("completionRate", "80.5%");
+        pageData.add(pd4);
+        // 第5条数据
+        pd5.put("id","05");
+        pd5.put("chain","白云区店");
+        pd5.put("orderCount","59");
+        pd5.put("pendingCount","5");
+        pd5.put("completedCount","5");
+        pd5.put("completionRate","70%");
+        pageData.add(pd5);
+        // 第1条数据
+        pd7.put("id", "07");
+        pd7.put("chain", "天河区店");
+        pd7.put("orderCount", "120");
+        pd7.put("pendingCount", "10");
+        pd7.put("completedCount", "110");
+        pd7.put("completionRate", "91.67%");
+        pageData.add(pd7);
+
+        // 第2条数据
+        pd8.put("id", "08");
+        pd8.put("chain", "海珠区店");
+        pd8.put("orderCount", "95");
+        pd8.put("pendingCount", "7");
+        pd8.put("completedCount", "88");
+        pd8.put("completionRate", "92.63%");
+        pageData.add(pd8);
+
+        // 第3条数据
+        pd9.put("id", "09");
+        pd9.put("chain", "荔湾区店");
+        pd9.put("orderCount", "75");
+        pd9.put("pendingCount", "5");
+        pd9.put("completedCount", "70");
+        pd9.put("completionRate", "93.33%");
+        pageData.add(pd9);
+
+        // 第4条数据
+        pd10.put("id", "10");
+        pd10.put("chain", "黄埔区店");
+        pd10.put("orderCount", "65");
+        pd10.put("pendingCount", "4");
+        pd10.put("completedCount", "61");
+        pd10.put("completionRate", "93.85%");
+        pageData.add(pd10);
+        // 第6条数据
+        pd6.put("id", "06");
+        pd6.put("chain", "白云区店");
+        pd6.put("orderCount", "59");
+        pd6.put("pendingCount", "5");
+        pd6.put("completedCount", "5");
+        pd6.put("completionRate", "70%");
+        pageData.add(pd6);
+        return   AjaxResult.success("cg",pageData);
+    }
+
+    /**
+     *
+     * DTP处方登记概 查询报表
+     */
+    @RequiresPermissions("dtp:report:list")
+    @PostMapping("/list")
+    @ResponseBody
+    public TableDataInfo list() throws Exception {
+        PageData pd = this.getPageData();
+        startPage();
+
+        System.out.println(pd.get("beginTime"));
+        System.out.println(pd.get("endTime"));
+        PageData pd1 = new PageData();
+        PageData pd2 = new PageData();
+        PageData pd3 = new PageData();
+        PageData pd4 = new PageData();
+        PageData pd5 = new PageData();
+        PageData pd6 = new PageData();
+        PageData pd7 = new PageData();
+        PageData pd8 = new PageData();
+        PageData pd9 = new PageData();
+        PageData pd10 = new PageData();
+        startPage();
+        List<PageData> pageData = new ArrayList<>();
+        if(!pd.get("id").equals("")){
+            pd1.put("id", "01");
+            pd1.put("chain", "花果园店");
+            pd1.put("orderCount", "88");
+            pd1.put("pendingCount", "10");
+            pd1.put("completedCount", "8");
+            pd1.put("completionRate", "65%");
+            return   getDataTable( pageData);
+        }else {
+
+
+
+        // 第一条数据
+        pd1.put("id", "01");
+        pd1.put("chain", "花果园店");
+        pd1.put("orderCount", "88");
+        pd1.put("pendingCount", "10");
+        pd1.put("completedCount", "8");
+        pd1.put("completionRate", "65%");
+        pageData.add(pd1);
+
+        // 第二条数据
+        pd2.put("id", "02");
+        pd2.put("chain", "龙阳路店");
+        pd2.put("orderCount", "120");
+        pd2.put("pendingCount", "15");
+        pd2.put("completedCount", "105");
+        pd2.put("completionRate", "87.5%");
+        pageData.add(pd2);
+        // 第三条数据
+        pd3.put("id","103");
+        pd3.put("chain","观山湖店");
+        pd3.put("orderCount","89");
+        pd3.put("pendingCount","15");
+        pd3.put("completedCount","11");
+        pd3.put("completionRate","58%");
+        pageData.add(pd3);
+        // 第4条数据
+        pd4.put("id", "04");
+        pd4.put("chain", "青云路店");
+        pd4.put("orderCount", "110");
+        pd4.put("pendingCount", "16");
+        pd4.put("completedCount", "95");
+        pd4.put("completionRate", "80.5%");
+        pageData.add(pd4);
+        // 第5条数据
+        pd5.put("id","05");
+        pd5.put("chain","白云区店");
+        pd5.put("orderCount","59");
+        pd5.put("pendingCount","5");
+        pd5.put("completedCount","5");
+        pd5.put("completionRate","70%");
+        pageData.add(pd5);
+
+        // 第1条数据
+        pd7.put("id", "07");
+        pd7.put("chain", "天河区店");
+        pd7.put("orderCount", "120");
+        pd7.put("pendingCount", "10");
+        pd7.put("completedCount", "110");
+        pd7.put("completionRate", "91.67%");
+        pageData.add(pd7);
+
+        // 第2条数据
+        pd8.put("id", "08");
+        pd8.put("chain", "海珠区店");
+        pd8.put("orderCount", "95");
+        pd8.put("pendingCount", "7");
+        pd8.put("completedCount", "88");
+        pd8.put("completionRate", "92.63%");
+        pageData.add(pd8);
+
+        // 第3条数据
+        pd9.put("id", "09");
+        pd9.put("chain", "荔湾区店");
+        pd9.put("orderCount", "75");
+        pd9.put("pendingCount", "5");
+        pd9.put("completedCount", "70");
+        pd9.put("completionRate", "93.33%");
+        pageData.add(pd9);
+
+        // 第4条数据
+        pd10.put("id", "10");
+        pd10.put("chain", "黄埔区店");
+        pd10.put("orderCount", "65");
+        pd10.put("pendingCount", "4");
+        pd10.put("completedCount", "61");
+        pd10.put("completionRate", "93.85%");
+        pageData.add(pd10);
+        // 第6条数据
+        pd6.put("id", "06");
+        pd6.put("chain", "白云区店");
+        pd6.put("orderCount", "59");
+        pd6.put("pendingCount", "5");
+        pd6.put("completedCount", "5");
+        pd6.put("completionRate", "70%");
+        pageData.add(pd6);
+        return   getDataTable(pageData);
+        }
+    }
+
+
+
+}

File diff suppressed because it is too large
+ 34 - 0
health-admin/src/main/resources/static/health/js/echarts.min.js


+ 194 - 0
health-admin/src/main/resources/templates/DTP/print/print.html

@@ -0,0 +1,194 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+	<th:block th:include="include :: header('配送单据打印列表')" />
+	<th:block th:include="include :: layout-latest-css" />
+	<th:block th:include="include :: ztree-css" />
+</head>
+<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="user-form">
+						<div class="select-list">
+							<ul>
+
+								<li>
+									<label>配送时间 </label>
+									<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="deliveryTimeStart"/>
+									<span>-</span>
+									<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="deliveryTimeEnd"/>
+								</li>
+								<li>
+									<label style="width: 90px; float: left;">打印申请时间 </label>
+									<input type="text" class="time-input" id="startTimes" placeholder="开始时间" name="printRequestTimeStart"/>
+									<span>-</span>
+									<input type="text" class="time-input" id="endTimes" placeholder="结束时间" name="printRequestTimeEnd"/>
+								</li>
+								<li>
+									<label>配送人: </label>
+									<input type="text"  placeholder="请输入配送人姓名" name="deliverer"/>
+								</li>
+								<li>
+									<label>打印状态:</label>
+									<select name="prescriptionType"  th:with="type=${@dict.getType('sys_select_print_status')}">
+										<option value="">全部</option>
+										<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictLabel}"
+												></option>
+									</select>
+								</li>
+
+								<li>
+									<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.addTab()" shiro:hasPermission="dtp:recipe:add">-->
+<!--		                <i class="fa fa-plus"></i> 新增-->
+<!--		            </a>-->
+<!--		             <a class="btn btn-primary single disabled" onclick="$.operate.editTab()" shiro:hasPermission="dtp:recipe:edit">-->
+<!--			            <i class="fa fa-edit"></i> 修改-->
+<!--			        </a>-->
+<!--		            <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="sdtp:recipe:remove">-->
+<!--		                <i class="fa fa-remove"></i> 删除-->
+<!--		            </a>-->
+<!--		            <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="dtp:recipe:import">-->
+<!--			            <i class="fa fa-upload"></i> 导入-->
+<!--			        </a>-->
+				<div class="btn-group-sm" id="toolbar" role="group">
+		            <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="dtp:print: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('system:user:edit')}]];
+		var removeFlag = [[${@permission.hasPermi('system:user:remove')}]];
+		var prefix = ctx + "dtp/print";
+
+		$(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);
+	    	}
+		    queryUserList();
+		});
+
+		function queryUserList() {
+		    var options = {
+		        url: prefix + "/list",
+		        viewUrl: prefix + "/view/{id}",
+		        createUrl: prefix + "/add",
+		        updateUrl: prefix + "/edit/{id}",
+		        removeUrl: prefix + "/remove",
+		        exportUrl: prefix + "/export",
+		        sortName: "createTime",
+		        sortOrder: "desc",
+		        modalName: "配送单据打印信息",
+		        columns: [{
+		            checkbox: true
+		        },
+					{
+						field: "id",
+						title: "id",
+						//hidden:false
+						visible: false,
+					},
+					{
+						field: "orderId",
+						title: "订单编号"
+					},
+					{
+						field: "deliverer",
+						title: "配送人"
+					},
+					{
+						field: "deliveryTime",
+						title: "配送时间"
+					},
+					{
+						field: "printRequestTime",
+						title: "打印申请时间"
+					},
+					{
+						field: "status",
+						title: "打印状态"
+					},
+					{
+						field: "createTime",
+						title: "创建时间"
+					},
+		        {
+		            title: '操作',
+		            align: 'center',
+		            formatter: function(value, row, index) {
+		                if (row.id) {
+		                	var actions = [];
+			                actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.editTab(\'' + 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> ');
+			                return actions.join('');
+		            	} else {
+		                    return "";
+		                }
+		            }
+		        }]
+		    };
+		    $.table.init(options);
+		}
+
+
+
+		$('#btnExpand').click(function() {
+			$._tree.expandAll(true);
+		    $(this).hide();
+		    $('#btnCollapse').show();
+		});
+
+		$('#btnCollapse').click(function() {
+			$._tree.expandAll(false);
+		    $(this).hide();
+		    $('#btnExpand').show();
+		});
+
+		$('#btnRefresh').click(function() {
+		});
+		/* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+		function resetPre() {
+			resetDate();
+			$("#user-form")[0].reset();
+			$("#deptId").val("");
+			$("#parentId").val("");
+			$(".curSelectedNode").removeClass("curSelectedNode");
+			$.table.search();
+		}
+
+	</script>
+</body>
+
+</html>

+ 452 - 0
health-admin/src/main/resources/templates/DTP/recipe/view.html

@@ -0,0 +1,452 @@
+<!DOCTYPE html>
+<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
+<head>
+    <th:block th:include="include :: header('DTP处方登记概览')" />
+    <th:block th:include="include :: layout-latest-css" />
+    <th:block th:include="include :: ztree-css" />
+    <script th:src="@{/health/js/echarts.min.js}"></script>
+    <style>
+        #chart-container {
+            width: 100%;
+            height: 500px;
+        }
+    </style>
+</head>
+<body class="gray-bg">
+
+    <div class="ui-layout-center">
+        <div class="ant-card-head">
+            <div class="ant-card-head-wrapper">
+                <div class="ant-card-head-title">
+                    <div class="index_title-2CoZR">
+                        <h1>DTP处方登记概览</h1>
+                        <button onclick="" class="ant-btn-primary">导出订单</button>
+                    </div>
+                </div>
+            </div>
+
+        </div>
+        <div class="container-div">
+        <form id="report-form">
+            <input type="text" class="" hidden="true" value="" name="id">
+        <div class="ChartAndTable_chart-and-table-3ib6R">
+            <div class="ant-radio-group ant-radio-group-outline">
+                <label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked">
+                    <span class="ant-radio-button ant-radio-button-checked">
+                        <input type="radio" class="ant-radio-button-input" value="1" checked="">
+                        <span class="ant-radio-button-inner">
+
+                        </span>
+                    </span>
+                    <span>订单量模式</span>
+                </label>
+                <label class="ant-radio-button-wrapper">
+                    <span class="ant-radio-button">
+                        <input type="radio" class="ant-radio-button-input" value="2">
+                        <span class="ant-radio-button-inner">
+
+                        </span>
+                    </span>
+                    <span>百分比模式</span>
+                </label>
+            </div>
+                <div class="ant-radio-group ant-radio-group-outline">
+                <label class="ant-radio-button-wrapper2">
+                        <span class="ant-radio-button ant-radio-button-checked">
+                            <input type="radio" class="ant-radio-button-input" value="7" checked="">
+                            <span class="ant-radio-button-inner"></span>
+                        </span><span>本周</span></label>
+                <label class="ant-radio-button-wrapper2">
+                        <span class="ant-radio-button">
+                            <input type="radio" class="ant-radio-button-input" value="30">
+                            <span class="ant-radio-button-inner">
+
+                            </span></span><span>本月</span></label>
+                <label class="ant-radio-button-wrapper2">
+                        <span class="ant-radio-button">
+                            <input type="radio" class="ant-radio-button-input" value="60">
+                            <span class="ant-radio-button-inner">
+
+                            </span></span><span>上月</span></label>
+                <label class="ant-radio-button-wrapper2">
+                        <span class="ant-radio-button">
+                            <input type="radio" class="ant-radio-button-input" value="365">
+                            <span class="ant-radio-button-inner">
+
+                            </span></span>
+                    <span>本年</span>
+                </label>
+
+                  <label>订单日期 </label>
+									<input type="text" class="styled-input time-input" id="startTime" placeholder="开始时间" name="beginTime"/>
+									<span>-</span>
+									<input type="text" class="styled-input time-input" id="endTime" placeholder="结束时间" name="endTime"/>
+                    <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>
+            </div>
+
+        </div>
+        </form>
+
+        <div id="chart-container"></div>
+        <div class="col-sm-12 select-table table-striped">
+            <table id="bootstrap-table"></table>
+        </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 prefix = ctx + "dtp/report";
+    var names=[];
+    var Xnames=[];
+    var submitted=[];
+    var unsubmitted=[];
+    var retData=[];
+
+        // 初始化 ECharts 图表
+        var myChart = echarts.init(document.getElementById('chart-container'));
+        // 指定图表的配置项和数据
+                var option = {
+                title: {
+                text: 'DTP 处方登记概览',
+                left: 'center'
+                },
+                tooltip: {
+                trigger: 'axis',
+                axisPointer: {
+                type: 'shadow'
+               },
+                formatter: function(params) {
+                var submitted = retData[params[0].dataIndex].completedCount;
+                var unsubmitted = retData[params[0].dataIndex].pendingCount;
+                return '<p>' + params[0].name + '</p><p>已提交:' + submitted + ' 单 | 未提交:' + unsubmitted + ' 单</p>';
+               }
+               },
+                legend: {
+                data: ['已提交', '未提交']
+               },
+                xAxis: {
+                 type: 'category',
+                 data: names,
+
+                    name: '店铺名称', // X 轴的显示说明
+                    nameLocation: 'end', // 名称的位置,可选值有 'start', 'middle', 'end'
+                    nameGap: 30, // 名称与轴线之间的距离
+                    nameTextStyle: {
+                        fontSize: 14,
+                        color: 'black'
+                    },
+                axisLabel: {
+                    formatter: function (value, index) {
+                        // 获取对应的数据点
+                        var data = option.series[0].data[index];
+                        // 判断 y 轴数值是否超过 250
+                        if (data > 100) {
+                            return `{red|${value}}`;
+                        } else {
+                            return value;
+                        }
+                    },
+                    rich: {
+                        red: {
+                            color: 'red'
+                        }
+                    }
+                }
+            },
+                yAxis: {
+                   type: 'value',
+                    name: '订单量', // Y 轴的显示说明
+                    nameLocation: 'end', // 名称的位置,可选值有 'start', 'middle', 'end'
+                    nameGap: 30, // 名称与轴线之间的距离
+                    nameTextStyle: {
+                        fontSize: 14,
+                        color: 'black'
+                    },
+                },
+                series:  [
+                    {
+                        data:Xnames,
+                        type: 'bar',
+                        showBackground: true,
+                        backgroundStyle: {
+                            color: 'rgba(180, 180, 180, 0.2)'
+                        },
+                        itemStyle: {
+                            color: function(params) {
+                                // 根据 y 轴数值设置颜色
+                                if (params.value > 100) {
+                                    return 'red';
+                                } else {
+                                    return 'blue'; // 默认颜色
+                                }
+                            }
+                        }
+                    }
+                ]
+            };
+
+        // 使用刚指定的配置项和数据显示图表。
+        myChart.setOption(option);
+
+    $(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);
+        }
+        queryUserList();
+    });
+
+    function queryUserList() {
+        var options = {
+            url: prefix + "/list",
+            viewUrl: prefix + "/view/{id}",
+            exportUrl: prefix + "/export",
+            importUrl: prefix + "/importData",
+            importTemplateUrl: prefix + "/importTemplate",
+            sortName: "createTime",
+            sortOrder: "desc",
+            modalName: "DTP处方登记概览",
+            columns: [
+                {
+                    field: "id",
+                    title: "id",
+                    //hidden:false
+                    visible: false,
+                },
+                {
+                    field: "chain",
+                    title: "连锁店",
+                    align: "center",
+                    sortable: true,
+                    formatter: function(value, row, index) {
+                        if (row.id) {
+                            // 假设 row.id 是你要传递的 ID 参数
+                            return '<a href="javascript:void(0)"   onclick="detail(\'' + row.id + '\')">' + value + '</a>';
+                        }
+                    }
+
+                },
+                {
+                    field: "orderCount",
+                    title: "订单量",
+                    align: "center"
+                },
+                {
+                    field: "pendingCount",
+                    title: "待完成订单数量",
+                    align: "center"
+                },
+                {
+                    field: "completedCount",
+                    title: "已完成订单数量",
+                    align: "center"
+                },
+                {
+                    field: "completionRate",
+                    title: "订单完成率(%)",
+                    align: "center"
+                }]
+        };
+        $.table.init(options);
+    }
+
+        /*门店列表-详细*/
+        function detail(id) {
+            debugger
+            $.ajax({
+                type : "GET",
+                async : true,            //异步请求(同步请求将会锁住浏览器,用户其他操作必须等待请求完成才可以执行)
+                url : prefix + "/viewDetail/"+id,    //请求发送到TestServlet处
+                data : {},
+                dataType : "json",        //返回数据形式为json
+                success : function(result) {
+                    debugger
+
+                    //请求成功时执行该函数内容,result即为服务器返回的json对象
+                    names=[];
+                    Xnames=[];
+                    unsubmitted=[];
+                    submitted=[];
+                    retData=[];
+                    myChart = echarts.init(document.getElementById('chart-container'))
+                    if (result.data.length>0) {
+                        retData=result.data;
+                        for(var i=0;i<retData.length;i++){
+                            names.push(retData[i].chain);    //挨个取出类别并填入类别数组
+                            Xnames.push(retData[i].orderCount);
+                            unsubmitted.push(retData[i].pendingCount);
+                            submitted.push(retData[i].completedCount);
+                        }
+                    }
+                    var updatedOption = {
+                        xAxis: {
+                            data: names
+                        },
+                        series: [{
+                            data: Xnames
+                        }]
+                    };
+
+                    // 使用新的数据更新图表
+                    myChart.setOption(updatedOption);
+                    $("#id").val(id);
+                    queryUserList();
+                },
+                error : function(errorMsg) {
+                    //请求失败时执行该函数
+                    alert("图表请求数据失败!");
+                    myChart.hideLoading();
+                }
+            })
+        }
+
+    /* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+    function resetPre() {
+        resetDate();
+        $("#report-form")[0].reset();
+        $("#deptId").val("");
+        $("#parentId").val("");
+        $(".curSelectedNode").removeClass("curSelectedNode");
+        $.table.search();
+    }
+        $.ajax({
+            type : "POST",
+            async : true,            //异步请求(同步请求将会锁住浏览器,用户其他操作必须等待请求完成才可以执行)
+            url : prefix + "/listReport",    //请求发送到TestServlet处
+            data : {},
+            dataType : "json",        //返回数据形式为json
+            success : function(result) {
+                debugger
+                //请求成功时执行该函数内容,result即为服务器返回的json对象
+
+                if (result.data.length>0) {
+                    retData=result.data;
+                    for(var i=0;i<retData.length;i++){
+                        names.push(retData[i].chain);    //挨个取出类别并填入类别数组
+                        Xnames.push(retData[i].orderCount);
+                        unsubmitted.push(retData[i].pendingCount);
+                        submitted.push(retData[i].completedCount);
+                    }
+                    myChart.setOption(option);
+                }
+
+            },
+            error : function(errorMsg) {
+                //请求失败时执行该函数
+                alert("图表请求数据失败!");
+                myChart.hideLoading();
+            }
+        })
+</script>
+<style>
+    .ant-btn-primary {
+        color: #fff;
+        background-color: #1890ff;
+        border-color: #1890ff;
+        text-shadow: 0 -1px 0 rgb(0 0 0 / 12%);
+        box-shadow: 0 2px 0 rgb(0 0 0 / 5%);
+    }
+
+    .ant-radio-button-wrapper {
+        position: relative;
+        display: inline-block;
+        height: 32px;
+        margin: 0;
+        padding: 0 15px;
+        color: rgba(0,0,0,.65);
+        line-height: 30px;
+        background: #fff;
+        border: 1px solid #d9d9d9;
+        border-top-width: 1.02px;
+        border-left: 0;
+        cursor: pointer;
+        transition: color .3s,background .3s,border-color .3s;
+    }
+    .ant-radio-button-wrapper2 {
+        text-align: right;
+        position: relative;
+        display: inline-block;
+        height: 32px;
+        margin: 0;
+        padding: 0 15px;
+        color: rgba(0,0,0,.65);
+        line-height: 30px;
+        background: #fff;
+        border: 1px solid #d9d9d9;
+        border-top-width: 1.02px;
+        border-left: 0;
+        cursor: pointer;
+        transition: color .3s,background .3s,border-color .3s;
+    }
+    .ant-card-head {
+        min-height: 48px;
+        margin-bottom: -1px;
+        padding: 0 24px;
+        color: rgba(0,0,0,.85);
+        font-weight: 500;
+        font-size: 16px;
+        background: transparent;
+        border-bottom: 1px solid #e8e8e8;
+        border-radius: 2px 2px 0 0;
+        zoom: 1;
+    }
+    .ant-card-head-wrapper {
+        display: flex;
+        align-items: center;
+    }
+    .ant-card-head-title {
+        display: inline-block;
+        flex: 1;
+        padding: 16px 0;
+        overflow: hidden;
+        white-space: nowrap;
+        text-overflow: ellipsis;
+    }
+    .index_title-2CoZR {
+        width: 100%;
+        justify-content: space-between;
+        padding-left: 14px;
+        border-left: 4px solid #e8514b;
+    }
+    .ChartAndTable_chart-and-table-3ib6R{
+        display: flex;
+        align-items: center;
+        justify-content: space-between;
+    }
+    .ant-radio-group {
+        box-sizing: border-box;
+        margin: 0;
+        padding: 0;
+        color: rgba(0,0,0,.65);
+        font-size: 14px;
+        font-variant: tabular-nums;
+        line-height: 1.5;
+        list-style: none;
+        font-feature-settings: "tnum";
+        display: inline-block;
+    }
+    .ant-radio-button-wrapper>.ant-radio-button {
+        width: 0;
+        height: 0;
+        margin-left: 0;
+    }
+
+
+
+</style>
+</body>
+
+</html>

+ 2 - 2
health-admin/src/main/resources/templates/dtp/cold/add.html

@@ -13,14 +13,14 @@
             <div class="col-sm-3">
                 <div class="form-group">
                     <label>预计配送时间</label>
-                    <input type="text" class="time-input" id="expectedDeliveryTime"  name="expectedDeliveryTime" placeholder="预计配送时间" />
+                    <input type="text" class="styled-input time-input" id="expectedDeliveryTime"  name="expectedDeliveryTime" placeholder="预计配送时间" />
                 </div>
             </div>
             <div class="col-sm-3">
                 <div class="form-group">
                     <div class="form-group">
                         <label>实际配送时间</label>
-                        <input type="text" class="time-input" id="actualDeliveryTime" placeholder="实际配送时间" name="actualDeliveryTime"/>
+                        <input type="text" class="styled-input time-input" id="actualDeliveryTime" placeholder="实际配送时间" name="actualDeliveryTime"/>
                     </div>
                 </div>
             </div>

+ 15 - 60
health-admin/src/main/resources/templates/dtp/cold/cold.html

@@ -18,15 +18,15 @@
 							<ul>
 								<li  class="select-time">
 									<label>创建日期</label>
-									<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="params[beginTime]"/>
+									<input type="text" class="time-input" id="creationTimeStart" placeholder="开始时间" name="creationTimeStart"/>
 									<span>-</span>
-									<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="params[endTime]"/>
+									<input type="text" class="time-input" id="creationTimeEnd" placeholder="结束时间" name="creationTimeEnd"/>
 								</li>
 								<li  class="select-time">
 									<label>实际送达</label>
-									<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="params[beginTime]"/>
+									<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="actualDeliveryTimeStart"/>
 									<span>-</span>
-									<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="params[endTime]"/>
+									<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="actualDeliveryTimeEnd"/>
 								</li>
 								<li>
 									<label>订单号:</label>
@@ -237,6 +237,7 @@
 					{
 						"field": "icePackNumber",
 						"title": "冰排编号"
+
 					},
 					// {
 					// 	"field": "paymentSequence",
@@ -254,6 +255,7 @@
 		        {
 		            title: '操作',
 		            align: 'center',
+					fixed: true, // 固定列
 		            formatter: function(value, row, index) {
 		                if (row.id) {
 		                	var actions = [];
@@ -269,62 +271,6 @@
 		    $.table.init(options);
 		}
 
-
-
-		$('#btnExpand').click(function() {
-			$._tree.expandAll(true);
-		    $(this).hide();
-		    $('#btnCollapse').show();
-		});
-
-		$('#btnCollapse').click(function() {
-			$._tree.expandAll(false);
-		    $(this).hide();
-		    $('#btnExpand').show();
-		});
-
-		$('#btnRefresh').click(function() {
-			//queryDeptTree();
-		});
-		/* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
-		function resetPre() {
-			resetDate();
-			$("#user-form")[0].reset();
-			$("#deptId").val("");
-			$("#parentId").val("");
-			$(".curSelectedNode").removeClass("curSelectedNode");
-			$.table.search();
-		}
-
-		/* 用户管理-部门 */
-		function dept() {
-			var url = ctx + "system/dept";
-			$.modal.openTab("部门管理", url);
-		}
-
-		/* 用户状态显示 */
-		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> ';
-    		}
-		}
-
-		/* 用户管理-停用 */
-		function disable(userId) {
-			$.modal.confirm("确认要停用用户吗?", function() {
-				$.operate.post(prefix + "/changeStatus", { "userId": userId, "status": 1 });
-		    })
-		}
-
-		/* 用户管理启用 */
-		function enable(userId) {
-			$.modal.confirm("确认要启用用户吗?", function() {
-				$.operate.post(prefix + "/changeStatus", { "userId": userId, "status": 0 });
-		    })
-		}
-
 		/* 用户管理-新增-选择部门树 */
 		function selectDeptTree() {
 			var treeId = $("#treeId").val();
@@ -345,6 +291,15 @@
 			$("#treeName").val(body.find('#treeName').val());
 			$.modal.close(index);
 		}
+		/* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
+		function resetPre() {
+			resetDate();
+			$("#user-form")[0].reset();
+			$("#deptId").val("");
+			$("#parentId").val("");
+			$(".curSelectedNode").removeClass("curSelectedNode");
+			$.table.search();
+		}
 	</script>
 
 </body>

+ 91 - 77
health-admin/src/main/resources/templates/dtp/cold/edit.html

@@ -1,188 +1,202 @@
 <!DOCTYPE html>
 <html lang="zh" xmlns:th="http://www.thymeleaf.org" >
 <head>
-    <th:block th:include="include :: header('修改处方')" />
+    <th:block th:include="include :: header('修改配送单')" />
 </head>
 <body>
 <div class="main-content">
-    <form class="form-horizontal" id="form-server-edit" th:object="${recipe}">
+    <form class="form-horizontal" id="form-server-edit" th:object="${cold}">
         <h4 class="form-header h4">处方信息</h4>
         <input type="hidden" id="id" name="id" th:value="${id}">
         <div class="row">
-            <div class="col-sm-4">
+            <div class="col-sm-3">
+                <label class="col-sm-4 control-label">预计配送时间</label>
                 <div class="form-group">
-                    <label class="col-sm-4 control-label is-required">患者姓名:</label>
-                    <div class="col-sm-8">
-                        <input name="patientName" placeholder="请输入患者姓名" class="form-control" type="text" maxlength="30" th:value="${patientName}" >
+                    <input type="text" class="styled-input time-input-new" id="expectedDeliveryTime"  name="expectedDeliveryTime" placeholder="预计配送时间" th:value="${expectedDeliveryTime}"/>
+                </div>
+            </div>
+            <div class="col-sm-3">
+                <div class="form-group">
+                    <div class="form-group">
+                        <label class="col-sm-4 control-label">实际配送时间</label>
+                        <input type="text" class="styled-input time-input-new" id="actualDeliveryTime" placeholder="实际配送时间" name="actualDeliveryTime" th:value="${expectedDeliveryTime}"/>
                     </div>
                 </div>
             </div>
-            <div class="col-sm-4">
+
+            <div class="col-sm-3">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label is-required">手机号码:</label>
+                    <label class="col-sm-4 control-label is-required">所属连锁:</label>
                     <div class="col-sm-8">
                         <div class="input-group">
-                            <input id="patientPhone" name="patientPhone" placeholder="请输入手机号码" class="form-control" type="number" maxlength="11" th:value="${patientPhone}">
-                            <span class="input-group-addon"><i class="fa fa-mobile"></i></span>
+                            <input name="chainName" onclick="selectDeptTree()" id="treeName" type="text" placeholder="请选择门店" class="form-control" th:value="${chainName}">
+                            <span class="input-group-addon">
+                        <i class="fa fa-search"></i>
+                    </span>
                         </div>
                     </div>
                 </div>
             </div>
-
-            <div class="col-sm-4">
+            <div class="col-sm-3">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label is-required">药品通用名:</label>
+                    <label class="col-sm-4 control-label is-required">所属门店:</label>
                     <div class="col-sm-8">
-                        <input name="genericName" placeholder="请输入药品通用名" class="form-control" type="text" maxlength="30" th:value="${genericName}">
+                        <select name="storeName" class="form-control" th:with="type=${@dict.getType('sys_select_store')}">
+                            <option value="">请选择</option>
+                            <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${storeName}"
+                            ></option>
+                        </select>
                     </div>
                 </div>
             </div>
         </div>
         <div class="row">
-            <div class="col-sm-4">
+            <div class="col-sm-3">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label is-required">门店:</label>
-                    <div class="col-sm-8">
-                        <div class="input-group">
-                            <input name="storeName" onclick="selectDeptTree()" id="treeName" type="text" placeholder="请选择门店" class="form-control"  th:value="${storeName}">
-                            <span class="input-group-addon"><i class="fa fa-search"></i></span>
-                        </div>
+                    <label class="col-sm-6 control-label">是否线上签收:</label>
+                    <div class="col-sm-4">
+                        <select name="prescriptionType" class="form-control" th:with="type=${@dict.getType('sys_yes_no')}">
+                            <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:selected="${dict.dictLabel}==${prescriptionType}"
+                            ></option>
+                        </select>
                     </div>
                 </div>
             </div>
 
-            <div class="col-sm-4">
+            <div class="col-sm-3">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label">厂家:</label>
-                    <div class="col-sm-8">
-                        <input id="manufacturer" name="manufacturer" placeholder="请输入厂家" class="form-control" type="text" maxlength="30" th:value="${manufacturer}">
+                    <label class="col-sm-4 control-label">配送状态:</label>
+                    <div class="col-sm-4">
+                        <select name="deliveryStatus"  class="form-control"  th:with="type=${@dict.getType('sys_select_pszt')}">
+                            <option value="">全部</option>
+                            <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictLabel}" th:selected="${dict.dictLabel}==${deliveryStatus}"></option>
+                        </select>
                     </div>
                 </div>
             </div>
-            <div class="col-sm-4">
+            <div class="col-sm-3">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label">登记人:</label>
-                    <div class="col-sm-8">
-
-                        <input id="registrar" name="registrar" placeholder="请输入登记人" class="form-control" type="text" maxlength="30" th:value="${registrar}">
+                    <label class="col-sm-4 control-label">冷链类型:</label>
+                    <div class="col-sm-4">
+                        <select name="coldChainType"  class="form-control"  th:with="type=${@dict.getType('sys_select_cold_type')}">
+                            <option value="">全部</option>
+                            <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictLabel}" th:selected="${dict.dictLabel}==${coldChainType}"
+                            ></option>
+                        </select>
                     </div>
-
                 </div>
             </div>
+            <div class="col-sm-3">
+                <div class="form-group">
+                    <label class="col-sm-4 control-label">订单来源:</label>
+                    <div class="col-sm-4">
+                        <select name="orderSource"  class="form-control"  th:with="type=${@dict.getType('sys_select_order_sources')}">
+                            <option value="">全部</option>
+                            <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictLabel}" th:selected="${dict.dictLabel}==${orderSource}"
+                            ></option>
+                        </select>
+                    </div>
+                </div>
+            </div>
+
         </div>
         <div class="row">
             <div class="col-sm-4">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label">规格:</label>
+                    <label class="col-sm-4 control-label">收货人:</label>
                     <div class="col-sm-8">
-                        <select name="specification" class="form-control" th:with="type=${@dict.getType('sys_select_specification')}">
-                            <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"
-                                    th:selected="${dict.dictValue}==${specification}"></option>
-                        </select>
+                        <input id="recipientName" name="recipientName"  type="text" maxlength="100"  class="form-control" placeholder="请输入收货人" th:value="${recipientName}">
                     </div>
                 </div>
             </div>
             <div class="col-sm-4">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label">数量:</label>
+                    <label class="col-sm-4 control-label">收货电话:</label>
                     <div class="col-sm-8">
-                        <input id="quantity" name="quantity" placeholder="请输入数量" class="form-control" type="number" maxlength="30" th:value="${quantity}">
+                        <input id="recipientPhone" name="recipientPhone"  type="number" maxlength="11"  class="form-control" placeholder="请输入收货电话" th:value="${recipientPhone}">
                     </div>
                 </div>
             </div>
+
             <div class="col-sm-4">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label">商品名:</label>
+                    <label class="col-sm-4 control-label">冰排编号:</label>
+
                     <div class="col-sm-8">
-                        <input id="productName" name="productName"  type="text" maxlength="100"  class="form-control" placeholder="请输入商品名" th:value="${productName}">
+                        <input id="icePackNumber" name="icePackNumber" placeholder="请输入冰排编号" class="form-control" type="text" maxlength="50" th:value="${icePackNumber}">
                     </div>
                 </div>
             </div>
-        </div>
 
+
+        </div>
         <div class="row">
             <div class="col-sm-4">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label">处方类型:</label>
+                    <label class="col-sm-4 control-label">收货地址:</label>
                     <div class="col-sm-8">
-                        <select name="prescriptionType" class="form-control" th:with="type=${@dict.getType('sys_select_prescription_ype')}">
-                            <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"
-                                    th:selected="${dict.dictValue}==${prescriptionType}"></option>
-                        </select>
+                        <input id="recipientAddress" name="recipientAddress"  type="text" maxlength="1000"  class="form-control" placeholder="请输入收货地址" th:value="${recipientAddress}">
                     </div>
                 </div>
             </div>
-
             <div class="col-sm-4">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label">配送方式:</label>
+                    <label class="col-sm-4 control-label">出发温度:</label>
                     <div class="col-sm-8">
-                        <select name="deliveryMethod" class="form-control" th:with="type=${@dict.getType('sys_select_delivery_method')}">
-                            <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"
-                                    th:selected="${dict.dictValue}==${deliveryMethod}"></option>
-                        </select>
+                        <input id="departureTemperature" name="departureTemperature"  type="text" maxlength="10"  class="form-control" placeholder="请输入出发温度" th:value="${departureTemperature}">
                     </div>
                 </div>
             </div>
             <div class="col-sm-4">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label">MDM编码:</label>
-
+                    <label class="col-sm-4 control-label">送达温度:</label>
                     <div class="col-sm-8">
-                        <input id="mdmCode" name="mdmCode" placeholder="请输入MDM编码" class="form-control" type="text" maxlength="50" th:value="${mdmCode}" >
+                        <input id="arrivalTemperature" name="arrivalTemperature"  type="text" maxlength="10"  class="form-control" placeholder="请输入送达温度" th:value="${arrivalTemperature}">
                     </div>
                 </div>
             </div>
-
-
         </div>
         <div class="row">
             <div class="col-sm-4">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label is-required">医生:</label>
+                    <label class="col-sm-4 control-label">签收照片:</label>
                     <div class="col-sm-8">
-                        <input id="doctor" name="doctor" placeholder="请输入医生" class="form-control" type="text" maxlength="30" th:value="${doctor}">
+                        <input id="signaturePhoto" name="signaturePhoto"  type="text" maxlength="1000"  class="form-control" placeholder="签收照片" th:value="${signaturePhoto}">
                     </div>
                 </div>
             </div>
             <div class="col-sm-4">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label is-required">医院:</label>
+                    <label class="col-sm-4 control-label">配送员:</label>
                     <div class="col-sm-8">
-                        <input name="hospital" placeholder="请输入医院" class="form-control" type="text" maxlength="30" th:value="${hospital}">
+                        <input id="deliveryPerson" name="deliveryPerson" placeholder="请输入配送员" class="form-control" type="text" maxlength="50"  th:value="${deliveryPerson}">
                     </div>
                 </div>
             </div>
+
+
             <div class="col-sm-4">
                 <div class="form-group">
-                    <label class="col-sm-4 control-label ">科室:</label>
+                    <label class="col-sm-4 control-label">配送箱编号:</label>
                     <div class="col-sm-8">
-                        <input id="department" name="department" placeholder="请输入科室" class="form-control" type="text" maxlength="50" th:value="${department}">
+                        <input id="deliveryBoxNumber" name="deliveryBoxNumber"  type="text" maxlength="25"  class="form-control" placeholder="配送箱编号" th:value="${deliveryBoxNumber}">
                     </div>
                 </div>
             </div>
         </div>
-
-
         <h4 class="form-header h4">其他信息</h4>
         <div class="row">
             <div class="col-sm-6">
                 <div class="form-group">
-                    <label class="col-sm-6 control-label">pos会员姓名:</label>
+                    <label class="col-sm-4 control-label">付款顺序:</label>
                     <div class="col-sm-8">
-                        <input id="posMemberName" name="posMemberName" placeholder="请输入pos会员姓名" class="form-control" type="text" maxlength="30" th:value="${posMemberName}">
-                    </div>
-                </div>
-            </div>
-            <div class="col-sm-6">
-                <div class="form-group">
-                    <label class="col-sm-6 control-label">pos会员手机号:</label>
-                    <div class="col-sm-8">
-                        <input id="posMemberPhone" name="posMemberPhone" placeholder="请输入pos会员手机号" class="form-control" type="number" maxlength="11" th:value="${posMemberPhone}">
+                        <select name="paymentSequence" class="form-control" th:with="type=${@dict.getType('sys_select_payment_sequence')}">
+                            <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${paymentSequence}"
+                            ></option>
+                        </select>
                     </div>
                 </div>
             </div>
-
         </div>
     </form>
 </div>
@@ -221,7 +235,7 @@
 
 
     function submitHandler() {
-        var prefix = ctx + "dtp/recipe";
+        var prefix = ctx + "dtp/cold";
         if ($.validate.form()) {
             var data = $("#form-server-edit").serializeArray();
             /*var status = $("input[id='status']").is(':checked') == true ? 0 : 1;

+ 11 - 58
health-admin/src/main/resources/templates/dtp/recipe/add.html

@@ -170,22 +170,27 @@
 
         <h4 class="form-header h4">其他信息</h4>
         <div class="row">
-            <div class="col-sm-6">
+            <div class="col-sm-4">
                 <div class="form-group">
                     <label class="col-sm-6 control-label">pos会员姓名:</label>
-                        <div class="col-sm-8">
+                        <div class="col-sm-6">
                             <input id="posMemberName" name="posMemberName" placeholder="请输入pos会员姓名" class="form-control" type="text" maxlength="30" >
                     </div>
                 </div>
             </div>
-                <div class="col-sm-6">
+                <div class="col-sm-4">
                     <div class="form-group">
                         <label class="col-sm-6 control-label">pos会员手机号:</label>
-                            <div class="col-sm-8">
+                            <div class="col-sm-6">
                                 <input id="posMemberPhone" name="posMemberPhone" placeholder="请输入pos会员手机号" class="form-control" type="number" maxlength="11" >
                             </div>
                         </div>
                 </div>
+            <div class="col-sm-4">
+                <div class="form-group">
+
+                </div>
+            </div>
 
         </div>
 
@@ -204,54 +209,6 @@
 <th:block th:include="include :: select2-js" />
 <script>
     var prefix = ctx + "dtp/recipe";
-    var prescriptionTypes = [
-        { label: '电子处方', value: 'electronic' },
-        { label: '纸质处方', value: 'paper' }
-    ];
-    // $("#form-user-add").validate({
-    //     onkeyup: false,
-    //     rules:{
-    //         patientName:{
-    //             minlength: 3,
-    //             maxlength: 20,
-    //             remote: {
-    //                 url: prefix + "/checkPatientNameAndPhoneUnique",
-    //                 type: "post",
-    //                 dataType: "json",
-    //                 data: {
-    //                     "patientName": function() {
-    //                         return $.common.trim($("#patientName").val());
-    //                     },
-    //                     "patientPhone": function() {
-    //                         return $.common.trim($("#patientPhone").val());
-    //                     }
-    //                 }
-    //             }
-    //         },
-    //         patientPhone:{
-    //             isPhone:true,
-    //             remote: {
-    //                 url: prefix + "/checkPhoneUnique",
-    //                 type: "post",
-    //                 dataType: "json",
-    //                 data: {
-    //                     "patientPhone": function () {
-    //                         return $.common.trim($("#patientPhone").val());
-    //                     }
-    //                 }
-    //             }
-    //         },
-    //     },
-    //     messages: {
-    //         "patientName": {
-    //             remote: "患者已经存在"
-    //         },
-    //         "patientPhone":{
-    //             remote: "患者手机号码已经存在"
-    //         }
-    //     },
-    //     focusCleanup: true
-    // });
 
     function submitHandler() {
         if ($.validate.form()) {
@@ -282,14 +239,10 @@
         $.modal.close(index);
     }
 
-    $(function() {
-        $('#post').select2({
-            placeholder: "请选择岗位",
-            allowClear: true
-        });
-    })
 </script>
 </body>
 </html>
 
 
+
+

+ 8 - 4
health-admin/src/main/resources/templates/dtp/recipe/edit.html

@@ -166,23 +166,27 @@
 
             <h4 class="form-header h4">其他信息</h4>
             <div class="row">
-                <div class="col-sm-6">
+                <div class="col-sm-4">
                     <div class="form-group">
                         <label class="col-sm-6 control-label">pos会员姓名:</label>
-                        <div class="col-sm-8">
+                        <div class="col-sm-6">
                             <input id="posMemberName" name="posMemberName" placeholder="请输入pos会员姓名" class="form-control" type="text" maxlength="30" th:value="${posMemberName}">
                         </div>
                     </div>
                 </div>
-                <div class="col-sm-6">
+                <div class="col-sm-4">
                     <div class="form-group">
                         <label class="col-sm-6 control-label">pos会员手机号:</label>
-                        <div class="col-sm-8">
+                        <div class="col-sm-6">
                             <input id="posMemberPhone" name="posMemberPhone" placeholder="请输入pos会员手机号" class="form-control" type="number" maxlength="11" th:value="${posMemberPhone}">
                         </div>
                     </div>
                 </div>
+                <div class="col-sm-4">
+                    <div class="form-group">
 
+                    </div>
+                </div>
             </div>
         </form>
     </div>

+ 3 - 49
health-admin/src/main/resources/templates/dtp/recipe/recipe.html

@@ -52,9 +52,9 @@
 
 								<li>
 									<label>订单日期 </label>
-									<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="params[beginTime]"/>
+									<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="beginTime"/>
 									<span>-</span>
-									<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="params[endTime]"/>
+									<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="endTime"/>
 								</li>
 
 
@@ -126,7 +126,6 @@
 	    		$('#scroll-up').toTop(opt);
 	    	}
 		    queryUserList();
-		    //queryDeptTree();
 		});
 
 		function queryUserList() {
@@ -272,7 +271,7 @@
 		            title: '操作',
 		            align: 'center',
 		            formatter: function(value, row, index) {
-		                if (row.id != 1) {
+		                if (row.id) {
 		                	var actions = [];
 			                actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.editTab(\'' + 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> ');
@@ -302,22 +301,6 @@
 				$.table.search();
 			}
 		}
-
-		$('#btnExpand').click(function() {
-			$._tree.expandAll(true);
-		    $(this).hide();
-		    $('#btnCollapse').show();
-		});
-
-		$('#btnCollapse').click(function() {
-			$._tree.expandAll(false);
-		    $(this).hide();
-		    $('#btnExpand').show();
-		});
-
-		$('#btnRefresh').click(function() {
-			//queryDeptTree();
-		});
 		/* 自定义重置-表单重置/隐藏框/树节点选择色/搜索 */
 		function resetPre() {
 			resetDate();
@@ -327,35 +310,6 @@
 			$(".curSelectedNode").removeClass("curSelectedNode");
 			$.table.search();
 		}
-
-		/* 用户管理-部门 */
-		function dept() {
-			var url = ctx + "system/dept";
-			$.modal.openTab("部门管理", url);
-		}
-
-		/* 用户状态显示 */
-		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> ';
-    		}
-		}
-
-		/* 用户管理-停用 */
-		function disable(userId) {
-			$.modal.confirm("确认要停用用户吗?", function() {
-				$.operate.post(prefix + "/changeStatus", { "userId": userId, "status": 1 });
-		    })
-		}
-
-		/* 用户管理启用 */
-		function enable(userId) {
-			$.modal.confirm("确认要启用用户吗?", function() {
-				$.operate.post(prefix + "/changeStatus", { "userId": userId, "status": 0 });
-		    })
-		}
 	</script>
 </body>
 

+ 53 - 3
health-system/src/main/java/com/bzd/system/service/DTPService.java

@@ -115,7 +115,7 @@ public class DTPService {
         return daoSupport.save("DTPMapper.insertDistributionOrder", pd);
     }
     /**
-     * 配送订单删除
+     * 配送订单修改
      * @param pd
      * @return
      * @throws Exception
@@ -125,7 +125,7 @@ public class DTPService {
         DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");//2024-01-01 10:00:00
         String formattedOrderTime = now.format(formatter);
         pd.put("updatedTime",formattedOrderTime);//订单时间
-        return daoSupport.delete("DTPMapper.softDeleteColdOrder", pd);
+        return daoSupport.update("DTPMapper.updateDistributionOrder", pd);
     }
     /**
      * 配送订单软删除
@@ -134,6 +134,56 @@ public class DTPService {
      * @throws Exception
      */
     public Integer softDeleteColdOrder(PageData pd) throws Exception {
-        return daoSupport.delete("DTPMapper.updateDistributionOrder", pd);
+        return daoSupport.delete("DTPMapper.softDeleteColdOrder", pd);
+    }
+
+    /**
+     * 配送单据打印列表
+     * @param pd
+     * @return
+     * @throws Exception
+     */
+    public List<PageData> listPrint(final PageData pd) throws Exception {
+        return (List<PageData>) daoSupport.findForList("DTPMapper.listPrint", pd);
+    }
+
+    /**
+     * 配送单据打印 添加
+     * @param pd
+     * @return
+     * @throws Exception
+     */
+    public Integer savePrint(final PageData pd) throws Exception {
+
+        pd.put("orderNumber","1113333");//订单编号
+        LocalDateTime now = LocalDateTime.now();
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");//2024-01-01 10:00:00
+        String formattedOrderTime = now.format(formatter);
+        pd.put("create_time",formattedOrderTime);//订单时间
+        pd.put("creationTime",formattedOrderTime);//订单创建时间
+        pd.put("createdBy","admin");//订单创建时间
+        return daoSupport.save("DTPMapper.savePrint", pd);
+    }
+    /**
+     * 配送单据打印修改
+     * @param pd
+     * @return
+     * @throws Exception
+     */
+    public Integer editPrint(PageData pd) throws Exception {
+        LocalDateTime now = LocalDateTime.now();
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");//2024-01-01 10:00:00
+        String formattedOrderTime = now.format(formatter);
+        pd.put("updatedTime",formattedOrderTime);//订单时间
+        return daoSupport.update("DTPMapper.editPrint", pd);
+    }
+    /**
+     * 配送单据打印软删除
+     * @param pd
+     * @return
+     * @throws Exception
+     */
+    public Integer DelPrint(PageData pd) throws Exception {
+        return daoSupport.delete("DTPMapper.DelPrint", pd);
     }
 }

+ 125 - 6
health-system/src/main/resources/mapper/system/DTPMapper.xml

@@ -22,14 +22,17 @@
             <if test="posMemberName != null and posMemberName!=''">AND posMemberName = #{posMemberName}</if>
             <if test="posMemberPhone != null and posMemberPhone!=''">AND posMemberPhone = #{posMemberPhone}</if>
             <if test="prescriptionType != null and prescriptionType!=''">AND prescriptionType=#{prescriptionType}</if>
-            <if test="orderTime != null and orderTime!=''">AND orderTime = #{orderTime}</if>
+            <if test="beginTime != null and beginTime!='' and endTime != null and endTime!=''">
+                and orderTime between #{beginTime} and #{endTime}
+            </if>
             <if test="prescriptionNumber != null and prescriptionNumber!=''">AND prescriptionNumber = #{prescriptionNumber}</if>
             <if test="hospital != null and hospital!=''">AND hospital = #{hospital}</if>
             <if test="department != null and department!=''">AND department = #{department}</if>
             <if test="doctor != null and doctor!=''">AND doctor = #{doctor}</if>
-            <if test="query != null and query!=''">
-                    AND patientName LIKE CONCAT('%', #{query}, '%') or patientPhone = #{query}
-             </if>
+            <if test="query != null and query != ''">
+                AND (patientName LIKE CONCAT('%', #{query}, '%')
+                OR patientPhone = #{query})
+            </if>
             <if test="storeName != null and storeName!=''">AND storeName = #{storeName}</if>
             <if test="registrar != null and registrar!=''">AND registrar = #{registrar}</if>
             <if test="completionTime != null and completionTime!=''">AND completionTime = #{completionTime}</if>
@@ -172,8 +175,12 @@
             <if test="recipientAddress != null and recipientAddress!=''">AND recipientAddress = #{recipientAddress}</if>
             <if test="deliveryPerson != null and deliveryPerson!=''">AND deliveryPerson = #{deliveryPerson}</if>
             <if test="expectedDeliveryTime != null and expectedDeliveryTime!=''">AND expectedDeliveryTime = #{expectedDeliveryTime}</if>
-            <if test="actualDeliveryTime != null and actualDeliveryTime!=''">AND actualDeliveryTime = #{actualDeliveryTime}</if>
-            <if test="creationTime != null and creationTime!=''">AND creationTime = #{creationTime}</if>
+            <if test="actualDeliveryTimeStart != null and actualDeliveryTimeStart!='' and actualDeliveryTimeEnd != null and actualDeliveryTimeEnd!=''">
+                and actualDeliveryTime between #{actualDeliveryTimeStart} and #{actualDeliveryTimeEnd}
+            </if>
+            <if test="creationTimeStart != null and creationTimeStart!='' and  creationTimeEnd != null and creationTimeEnd!=''">
+                and creationTime between #{creationTimeStart} and #{creationTimeEnd}
+            </if>
             <if test="updatedTime != null and updatedTime!=''">AND updatedTime = #{updatedTime}</if>
             <if test="createdBy != null and createdBy!=''">AND createdBy = #{createdBy}</if>
             <if test="createdDate != null and createdDate!=''">AND createdDate = #{createdDate}</if>
@@ -284,5 +291,117 @@
             </foreach>
         </if>
     </update>
+<!--配送单据打印模块-->
+    <select id="listPrint" resultType="pd">
+        select id,
+        businessId,
+        orderId,
+        storeId,
+        status,
+        deliverer,
+        deliveryTime,
+        printRequestTime,
+        createdBy,
+        orderData,
+        gmtCreate,
+        updateBy updatedTime,
+        create_time as createTime
+        from s_dtp_llps_distribution_print
+        <where>
+            <if test="id != null">and id = #{id}</if>
+            <if test="businessId != null">and businessId = #{businessId}</if>
+            <if test="orderId != null">and orderId = #{orderId}</if>
+            <if test="storeId != null">and storeId = #{storeId}</if>
+            <if test="status != null">and status = #{status}</if>
+            <if test="deliverer != null and deliverer != ''">and deliverer = #{deliverer}</if>
+            <if test="deliveryTimeStart != null and deliveryTimeStart!='' and deliveryTimeEnd != null and deliveryTimeEnd!=''">
+                and deliveryTime between #{deliveryTimeStart} and #{deliveryTimeEnd}
+            </if>
+            <if test="printRequestTimeStart != null and printRequestTimeStart!='' and  printRequestTimeEnd != null and printRequestTimeEnd!=''">
+                and printRequestTime between #{printRequestTimeStart} and #{printRequestTimeEnd}
+            </if>
+            <if test="createdBy != null and createdBy != ''">and createdBy = #{createdBy}</if>
+            <if test="createBy != null and createBy != ''">and createBy = #{createBy}</if>
+            <if test="updateBy != null and updateBy != ''">and updateBy = #{updateBy}</if>
+            and del_flag = '0'
+        </where>
+        order by create_time desc
+    </select>
+
+
+    <insert id="savePrint" parameterType="pd">
+        insert into s_dtp_llps_distribution_print
+        <trim prefix="(" suffix=")" prefixOverrides="," suffixOverrides=",">
+            <if test="createdBy != null and createdBy != ''">createdBy,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="businessId != null">businessId,</if>
+            <if test="deliveryTime != null">deliveryTime,</if>
+            <if test="printRequestTime != null">printRequestTime,</if>
+            <if test="deliverer != null and deliverer != ''">deliverer,</if>
+            <if test="createBy != null and createBy != ''">createBy,</if>
+            <if test="extend != null">extend,</if>
+            <if test="gmtCreate != null">gmtCreate,</if>
+            <if test="gmtUpdate != null">gmtUpdate,</if>
+            <if test="orderId != null">orderId,</if>
+            <if test="orderData != null">orderData,</if>
+            <if test="status != null">status,</if>
+            <if test="storeId != null">storeId,</if>
+            <if test="updateBy != null and updateBy != ''">updateBy,</if>
+            <if test="version != null">version,</if>
+        </trim>
+        <trim prefix="VALUES (" suffix=")" prefixOverrides="," suffixOverrides=",">
+            <if test="createdBy != null and createdBy != ''">#{createdBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="businessId != null">#{businessId},</if>
+            <if test="deliveryTime != null">#{deliveryTime},</if>
+            <if test="printRequestTime != null">#{printRequestTime},</if>
+            <if test="deliverer != null and deliverer != ''">#{deliverer},</if>
+            <if test="createBy != null and createBy != ''">#{createBy},</if>
+            <if test="extend != null">#{extend},</if>
+            <if test="gmtCreate != null">#{gmtCreate},</if>
+            <if test="gmtUpdate != null">#{gmtUpdate},</if>
+            <if test="orderId != null">#{orderId},</if>
+            <if test="orderData != null">#{orderData},</if>
+            <if test="status != null">#{status},</if>
+            <if test="storeId != null">#{storeId},</if>
+            <if test="updateBy != null and updateBy != ''">#{updateBy},</if>
+            <if test="version != null">#{version},</if>
+        </trim>
+    </insert>
+
+    <update id="editPrint" parameterType="pd">
+        update s_dtp_llps_distribution_print
+        <set>
+            <if test="createdBy != null and createdBy != ''">createdBy = #{createdBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="businessId != null">businessId = #{businessId},</if>
+            <if test="deliveryTime != null">deliveryTime = #{deliveryTime},</if>
+            <if test="printRequestTime != null">printRequestTime = #{printRequestTime},</if>
+            <if test="deliverer != null and deliverer != ''">deliverer = #{deliverer},</if>
+            <if test="createBy != null and createBy != ''">createBy = #{createBy},</if>
+            <if test="extend != null">extend = #{extend},</if>
+            <if test="gmtCreate != null">gmtCreate = #{gmtCreate},</if>
+            <if test="gmtUpdate != null">gmtUpdate = #{gmtUpdate},</if>
+            <if test="orderId != null">orderId = #{orderId},</if>
+            <if test="orderData != null">orderData = #{orderData},</if>
+            <if test="status != null">status = #{status},</if>
+            <if test="storeId != null">storeId = #{storeId},</if>
+            <if test="updateBy != null and updateBy != ''">updateBy = #{updateBy},</if>
+            <if test="version != null">version = #{version},</if>
+        </set>
+        where id = #{id}
+    </update>
+
+    <!--配送单据打印模块 软删除-->
+    <update id="DelPrint" parameterType="pd">
+        <if test="ids != null and ids.size() > 0">
+            update s_dtp_llps_distribution_print
+            set del_flag = 1
+            where id in
+            <foreach item="id" index="index" collection="ids" open="(" separator="," close=")">
+                #{id}
+            </foreach>
+        </if>
+    </update>
 
 </mapper>

Some files were not shown because too many files changed in this diff