Browse Source

提交药品总库

bzd_wsp 3 months ago
parent
commit
145ed2dd8c

+ 52 - 0
health-admin/src/main/resources/templates/gxhpz/allDrugsInfo.html

@@ -140,6 +140,47 @@
 					"title": "企业流向管理方式",
 					align: 'center', visible: false
 				},
+
+				{
+					"field": "dosage_max",
+					"title": "最大剂量数量",
+					align: 'center', visible: true
+				},
+				{
+					"field": "dosage_min",
+					"title": "最小剂量数量",
+					align: 'center', visible: true
+				},
+				{
+					"field": "unit_max",
+					"title": "最大剂量单位",
+					align: 'center', visible: true
+				},
+				{
+					"field": "unit_min",
+					"title": "最小剂量单位",
+					align: 'center', visible: true
+				},
+				{
+					"field": "unit_normal",
+					"title": "常见计量单位",
+					align: 'center', visible: true
+				},
+				{
+					"field": "dosage_normal",
+					"title": "常见计量数量",
+					align: 'center', visible: true
+				},
+				{
+					"field": "packing_value",
+					"title": "包装单位值",
+					align: 'center', visible: true
+				},
+				{
+					"field": "packing_unit",
+					"title": "包装单位",
+					align: 'center', visible: true
+				},
 				{
 					"field": "indicationDescription",
 					"title": "说明书适应症",
@@ -340,6 +381,14 @@
 		var administrationMethod = $.table.selectColumns('administrationMethod');
 		var dosageAndAdministration = $.table.selectColumns('dosageAndAdministration');
 		var indicationDescription = $.table.selectColumns('indicationDescription');
+		var	dosage_max= $.table.selectColumns('dosage_max');
+		var	dosage_min= $.table.selectColumns('dosage_min');
+		var	dosage_normal= $.table.selectColumns('dosage_normal');
+		var	unit_normal= $.table.selectColumns('unit_normal');
+		var	unit_max= $.table.selectColumns('unit_max');
+		var	unit_min= $.table.selectColumns('unit_min');
+		var	packing_unit= $.table.selectColumns('packing_unit');
+		var	packing_value= $.table.selectColumns('packing_value');
 		var productId = $.table.selectColumns('id');
 		var column = [{productName:productName,genericName:genericName,
 			mdmCode:mdmCode,specification:specification,
@@ -348,6 +397,9 @@
 			isRegisteredManaged:isRegisteredManaged,isCharityAidManaged:isCharityAidManaged,
 			administrationMethod:administrationMethod,indicationDescription:indicationDescription,
 			dosageAndAdministration:dosageAndAdministration,
+			dosage_max:dosage_max,dosage_min:dosage_min,dosage_normal:dosage_normal,
+			unit_normal:unit_normal,unit_max:unit_max,unit_min:unit_min,
+			packing_unit:packing_unit,packing_value:packing_value,
 			productId:productId}];
 		return column;
 	}

+ 169 - 117
health-admin/src/main/resources/templates/gxhpz/drugconfigAdd.html

@@ -92,19 +92,69 @@
                     <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
                 </select>
             </div>
-            <div class="customize-form-group">
-                <label>企业流向管理方式:</label>
-                <select name="enterpriseFlowManagement" id="enterpriseFlowManagement" class="styled-input" th:with="type=${@dict.getType('sys_gxhpz_yppz_qylxglfs')}">
-                    <option value="">请选择</option>
-                    <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
-                </select>
-            </div>
-            <div class="customize-form-group">
-                <label>状态:</label>
-                <select name="status" id="status" class="styled-input" th:with="type=${@dict.getType('sys_hzgl_qyty_status')}">
-                    <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
-                </select>
+                <div class="customize-form-group">
+                    <label>企业流向管理方式:</label>
+                    <select name="enterpriseFlowManagement" id="enterpriseFlowManagement" class="styled-input" th:with="type=${@dict.getType('sys_gxhpz_yppz_qylxglfs')}">
+                        <option value="">请选择</option>
+                        <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
+                    </select>
+                </div>
+            <div class="rule-info-section">
+                <hr /> 用药规则配置信息<hr />
+                <span>这里是规则用药规则配置信息:最大剂量数量=每天用药数量,最大剂量单位=例如: mg,g,ml。购药包装单位数值=关键信息-是指更据药品规格选取的值,提供给系统自动计算D值的必要参数</span>
             </div>
+                    <div class="customize-form-group">
+                            <label class="is-required">最大剂量数量:</label>
+                            <input type="number" name="dosage_max" id="dosage_max" placeholder="最大剂量数量" class="styled-input" required />
+                    </div>
+                    <div class="customize-form-group">
+                            <label class="is-required">最大剂量单位:</label>
+                            <select name="unit_max" class="styled-input"  id="unit_max" placeholder="最大剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}" required>
+                                <option value="">请选择</option>
+                                <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:text="${dict.dictLabel}"></option>
+                            </select>
+                    </div>
+
+                    <div class="customize-form-group">
+                            <label>常用剂量数量:</label>
+                            <input type="number" name="dosage_normal" id="dosage_normal"  placeholder="常用剂量数量" class="styled-input" />
+                    </div>
+                   <div class="customize-form-group">
+                        <label>常用剂量单位:</label>
+                        <select name="unit_normal" id="unit_normal" class="styled-input" style="height: auto" placeholder="常用剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}">
+                            <option value="">请选择</option>
+                            <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:text="${dict.dictLabel}"></option>
+                        </select>
+                    </div>
+                    <div class="customize-form-group">
+                                <label class="is-required">最小剂量数量:</label>
+                                <input type="number" name="dosage_min"  id="dosage_min" placeholder="最小剂量数量" class="styled-input" required />
+                     </div>
+                    <div class="customize-form-group">
+                                <label class="is-required">最小剂量单位:</label>
+                                <select name="unit_min" class="styled-input"   style="height: auto" id="unit_min" placeholder="最小剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}" required>
+                                    <option value="">请选择</option>
+                                    <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:text="${dict.dictLabel}"></option>
+                                </select>
+                    </div>
+                    <div class="customize-form-group">
+                                <label class="is-required">购药包装单位数值:</label>
+                                <input type="number" name="packing_value" id="packing_value" placeholder="购药包装单位数值" class="styled-input" required />
+                    </div>
+                    <div class="customize-form-group">
+                                <label>包装单位:</label>
+                                <select name="packing_unit" id="packing_unit" style="height: auto" class="styled-input" placeholder="包装单位"  th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}">
+                                    <option value="">请选择</option>
+                                    <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:text="${dict.dictLabel}"></option>
+                                </select>
+                    </div>
+
+                    <div class="customize-form-group">
+                        <label>状态:</label>
+                        <select name="status" id="status" class="styled-input" th:with="type=${@dict.getType('sys_hzgl_qyty_status')}">
+                            <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
+                        </select>
+                    </div>
         </div>
     </form>
 </div>
@@ -117,6 +167,46 @@
     var isRegisteredManaged;
     var dtp_flag;
     function submitHandler() {
+        var dosage_max = $("#form-SSpglJfspProductinfo-add").serializeArray().find(item => item.name === 'dosage_max');
+        if (dosage_max.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】最大剂量数量!");
+            return null;
+        }
+        var dosage_min = $("#form-SSpglJfspProductinfo-add").serializeArray().find(item => item.name === 'dosage_min');
+        if (dosage_min.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】最小剂量数量!");
+            return null;
+        }
+        var unit_max = $("#form-SSpglJfspProductinfo-add").serializeArray().find(item => item.name === 'unit_max');
+        if (unit_max.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】最大剂量单位!");
+            return null;
+        }
+        var unit_min = $("#form-SSpglJfspProductinfo-add").serializeArray().find(item => item.name === 'unit_min');
+        if (unit_min.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】最小剂量单位!");
+            return null;
+        }
+        var unit_normal = $("#form-SSpglJfspProductinfo-add").serializeArray().find(item => item.name === 'unit_normal');
+        if (unit_normal.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】常见计量单位!");
+            return null;
+        }
+        var dosage_normal = $("#form-SSpglJfspProductinfo-add").serializeArray().find(item => item.name === 'dosage_normal');
+        if (dosage_normal.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】常见计量数量!");
+            return null;
+        }
+        var packing_value = $("#form-SSpglJfspProductinfo-add").serializeArray().find(item => item.name === 'packing_value');
+        if (packing_value.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】包装单位值!");
+            return null;
+        }
+        var packing_unit = $("#form-SSpglJfspProductinfo-add").serializeArray().find(item => item.name === 'packing_unit');
+        if (packing_unit.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】包装单位!");
+            return null;
+        }
         if ($.validate.form()) {
             add();
         }
@@ -139,111 +229,7 @@
         });
     }
 
-    // $(document).ready(function() {
-    //     let timeout;
-    //
-    //     // 监听 dValueKey 输入框的 input 事件
-    //     $('#mdmCode').on('input', function() {
-    //
-    //         clearTimeout(timeout);
-    //         var query = $('#mdmCode').val().trim();
-    //         console.log("query===="+query);
-    //         // 如果输入为空,清空 dValueId 输入框并停止进一步操作
-    //         if (!query) {
-    //             $('#mdmCode').val('');
-    //             $('#genericName').val('');
-    //             $('#productName').val('');
-    //             $('#manufacturerShortName').val('');
-    //             $('#packaging').val('');
-    //             $('#specification').val('');
-    //
-    //             $('#isFollowUpManaged').val('');
-    //             $('#isColdChainManaged').val('');
-    //             $('#isRegisteredManaged').val('');
-    //             $('#isCharityAidManaged').val('');
-    //
-    //             updateButtonVisibility1(); // 更新按钮可见性
-    //             return;
-    //         }
-    //
-    //         // 使用防抖机制延迟发送请求
-    //         timeout = setTimeout(() => {
-    //             // 发送 AJAX 请求到服务器查询数据
-    //             hzparam={query:query};//模拟微信扫码获取微信openId
-    //             console.log("hzparam===="+hzparam);
-    //             // 清空表格中的所有数据行
-    //             // $('#drugInfoTable tbody').empty();
-    //             $.ajax({
-    //                 cache: true,
-    //                 type: "POST",
-    //                 url: prefix+'/searchDrugs', // 替换为实际的搜索 URL
-    //                 data: hzparam,
-    //                 async: false,
-    //                 success: function (data) {
-    //                     console.log("data===="+data);
-    //                     if(data.code==0){
-    //                         $('#mdmCode').val(data.data.product_code);
-    //                         $('#genericName').val(data.data.generic_name);
-    //                         $('#productName').val(data.data.product_name);
-    //                         $('#manufacturerShortName').val(data.data.manufacturer_abbreviation);
-    //                         $('#packaging').val(data.data.packaging);
-    //                         $('#specification').val(data.data.specification);
-    //
-    //                         $('#isFollowUpManaged').val(data.data.follow_up_item);
-    //                         $('#isColdChainManaged').val(data.data.cold_chain_item);
-    //                         $('#isRegisteredManaged').val(data.data.registered_item);
-    //                         $('#isCharityAidManaged').val(data.data.charity_aid_item);
-    //
-    //
-    //                         //$('#dtp_flag').val(data.data.dtp_flag);
-    //                         dtp_flag=data.data.dtp_flag;
-    //                         updateButtonVisibility1(); // 更新按钮可见性
-    //                         if(dtp_flag==="D"){
-    //                             isRegisteredManaged =1;
-    //                             $('#isRegisteredManaged').val(isRegisteredManaged);
-    //                         }
-    //
-    //                     }else{
-    //                         // 清空表格中的所有数据行
-    //                         // $('#drugInfoTable tbody').empty();
-    //                         // 如果没有找到匹配的数据,清空 dValueId 输入框
-    //                         $('#mdmCode').val('');
-    //                         $('#genericName').val('');
-    //                         $('#productName').val('');
-    //                         $('#manufacturerShortName').val('');
-    //                         $('#packaging').val('');
-    //                         $('#specification').val('');
-    //
-    //                         $('#isFollowUpManaged').val('');
-    //                         $('#isColdChainManaged').val('');
-    //                         $('#isRegisteredManaged').val('');
-    //                         $('#isCharityAidManaged').val('');
-    //
-    //                         updateButtonVisibility1(); // 更新按钮可见性
-    //                     }
-    //                 },
-    //                 error: function(error) {
-    //                     // 清空 dValueId 输入框
-    //                     $('#mdmCode').val('');
-    //                     $('#genericName').val('');
-    //                     $('#productName').val('');
-    //                     $('#manufacturerShortName').val('');
-    //                     $('#packaging').val('');
-    //                     $('#specification').val('');
-    //
-    //                     $('#isFollowUpManaged').val('');
-    //                     $('#isColdChainManaged').val('');
-    //                     $('#isRegisteredManaged').val('');
-    //                     $('#isCharityAidManaged').val('');
-    //
-    //                 }
-    //             });
-    //
-    //         }, 1300); // 300ms 的延迟
-    //     });
-    //     // 页面加载时检查 dValueIdInput 的初始状态
-    //     updateButtonVisibility1();
-    // });
+
         $(document).ready(function() {
             // 初始化 Select2
             $('#mdmCode').select2({
@@ -317,6 +303,15 @@
                 $('#isCharityAidManaged').val('');
                 $('#administrationMethod').val('');
 
+                $('#packing_value').val('');
+                $('#packing_unit').val('');
+                $('#dosage_max').val('');
+                $('#dosage_min').val('');
+                $('#dosage_normal').val('');
+                $('#unit_normal').val('');
+                $('#unit_max').val('');
+                $('#unit_min').val('');
+
             }
 
             // 填充表单字段
@@ -333,6 +328,14 @@
                 $('#isRegisteredManaged').val(data.registered_item);
                 $('#administrationMethod').val(data.drug_delivery_way);
                 $('#isCharityAidManaged').val(data.charity_aid_item);
+                $('#dosage_max').val(data.dosage_max);
+                $('#dosage_min').val(data.dosage_min);
+                $('#dosage_normal').val(data.dosage_normal);
+                $('#unit_normal').val(data.unit_normal);
+                $('#unit_max').val(data.unit_max);
+                $('#unit_min').val(data.unit_min);
+                $('#packing_unit').val(data.packing_unit);
+                $('#packing_value').val(data.packing_value);
 
                 dtp_flag = data.dtp_flag;
                // updateButtonVisibility1(); // 更新按钮可见性
@@ -377,6 +380,55 @@
     .dropdown-item:hover {
         background-color: #f0f0f0;
     }
+    .form-grid1 {
+        display: grid;
+        grid-template-columns: 1fr 1fr; /* 创建两列 */
+        gap: 20px; /* 设置列之间的间距 */
+    }
+
+    .form-field-left, .form-field-right {
+        display: flex;
+        flex-direction: column;
+    }
+
+    .form-field-left , .form-field-right {
+        margin-bottom: 5px; /* 给标签与输入框之间留出一些空间 */
+    }
+
+    .styled-input1 {
+        padding: 8px;
+        border: 1px solid #ccc;
+        border-radius: 4px;
+        width: 100%; /* 确保输入框占满整个宽度 */
+    }
+
+    .span_line1 {
+        display: block;
+        height: 1px;
+        background-color: #e0e0e0;
+        margin-top: 10px;
+    }
+    .rule-info-section {
+        /*display: flex;*/
+        align-items: center;
+        justify-content: center;
+        margin-bottom: 20px; /* 调整与下面表单元素的距离 */
+    }
+
+    .rule-info-section hr {
+        flex-grow: 1;
+        margin: 0 10px; /* 线条与文案之间的间距 */
+        border: 0;
+        height: 1px;
+        background-color: #ccc; /* 线条颜色 */
+    }
+
+    .rule-info-section span {
+        background: #efe9c4;
+        padding: 0 10px; /* 文案与线条之间的内边距 */
+        font-size: 14px;
+        color: #dd1b20; /* 文案颜色 */
+    }
 </style>
 </body>
 </html>

+ 140 - 6
health-admin/src/main/resources/templates/gxhpz/drugconfigEdit.html

@@ -84,13 +84,56 @@
                     <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${enterpriseFlowManagement}"></option>
                 </select>
             </div>
-            <div class="customize-form-group">
-                <label class="is-required">状态:</label>
-                <select name="status" id="status" class="styled-input" th:with="type=${@dict.getType('sys_hzgl_qyty_status')}" th:value="${status}" required>
-                    <option value="">请选择</option>
-                    <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${status}"></option>
-                </select>
+
+            <div class="rule-info-section">
+                <hr /> 用药规则配置信息<hr />
+                <span>这里是规则用药规则配置信息:最大剂量数量=每天用药数量,最大剂量单位=例如: mg,g,ml。购药包装单位数值=关键信息-是指更据药品规格选取的值,提供给系统自动计算D值的必要参数</span>
             </div>
+                <div class="customize-form-group">
+                    <label class="is-required">最大剂量数量:</label>
+                    <input type="number" name="dosage_max"  placeholder="最大剂量数量" th:value="${dosage_max}" class="styled-input" required />
+                </div>
+                <div class="customize-form-group">
+                    <label class="is-required">最大剂量单位:</label>
+                    <select name="unit_max" class="styled-input" style="height: auto"  placeholder="最大剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}" required>
+                        <option value="">请选择</option>
+                        <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${unit_max}" th:text="${dict.dictLabel}"></option>
+                    </select>
+                </div>
+
+                <div class="customize-form-group">
+                    <label>常用剂量数量:</label>
+                    <input type="number" name="dosage_normal"  placeholder="常用剂量数量" th:value="${dosage_normal}"   class="styled-input" />
+                </div>
+                <div class="customize-form-group">
+                    <label>常用剂量单位:</label>
+                    <select name="unit_normal" class="styled-input" style="height: auto"  placeholder="常用剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}">
+                        <option value="">请选择</option>
+                        <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${unit_normal}" th:text="${dict.dictLabel}"></option>
+                    </select>
+                </div>
+                <div class="customize-form-group">
+                    <label class="is-required">最小剂量数量:</label>
+                    <input type="number" name="dosage_min"  placeholder="最小剂量数量" th:value="${dosage_min}"  class="styled-input" required />
+                </div>
+                <div class="customize-form-group">
+                    <label class="is-required">最小剂量单位:</label>
+                    <select name="unit_min" class="styled-input" style="height: auto" placeholder="最小剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}" required>
+                        <option value="">请选择</option>
+                        <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${unit_min}" th:text="${dict.dictLabel}"></option>
+                    </select>
+                </div>
+                <div class="customize-form-group">
+                    <label class="is-required">购药包装单位数值:</label>
+                    <input type="number" name="packing_value"  placeholder="购药包装单位数值" th:value="${packing_value}"  class="styled-input" required />
+                </div>
+                <div class="customize-form-group">
+                    <label>包装单位:</label>
+                    <select name="packing_unit" class="styled-input" style="height: auto" placeholder="包装单位"  th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}">
+                        <option value="">请选择</option>
+                        <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${packing_unit}" th:text="${dict.dictLabel}"></option>
+                    </select>
+                </div>
         </div>
     </form>
 </div>
@@ -122,8 +165,99 @@
     }
 
     function submitHandler() {
+        var dosage_max = $("#form-SSpglJfspProductinfo-edit").serializeArray().find(item => item.name === 'dosage_max');
+        if (dosage_max.value === '') {
+            $.modal.alertWarning("请选择最大剂量数量!");
+            return null;
+        }
+        var dosage_min = $("#form-SSpglJfspProductinfo-edit").serializeArray().find(item => item.name === 'dosage_min');
+        if (dosage_min.value === '') {
+            $.modal.alertWarning("请选择最小剂量数量!");
+            return null;
+        }
+        var unit_max = $("#form-SSpglJfspProductinfo-edit").serializeArray().find(item => item.name === 'unit_max');
+        if (unit_max.value === '') {
+            $.modal.alertWarning("请选择最大剂量单位!");
+            return null;
+        }
+        var unit_min = $("#form-SSpglJfspProductinfo-edit").serializeArray().find(item => item.name === 'unit_min');
+        if (unit_min.value === '') {
+            $.modal.alertWarning("请选择最小剂量单位!");
+            return null;
+        }
+        var unit_normal = $("#form-SSpglJfspProductinfo-edit").serializeArray().find(item => item.name === 'unit_normal');
+        if (unit_normal.value === '') {
+            $.modal.alertWarning("请选择常见计量单位!");
+            return null;
+        }
+        var dosage_normal = $("#form-SSpglJfspProductinfo-edit").serializeArray().find(item => item.name === 'dosage_normal');
+        if (dosage_normal.value === '') {
+            $.modal.alertWarning("请选择常见计量数量!");
+            return null;
+        }
+        var packing_value = $("#form-SSpglJfspProductinfo-edit").serializeArray().find(item => item.name === 'packing_value');
+        if (packing_value.value === '') {
+            $.modal.alertWarning("请选择包装单位值!");
+            return null;
+        }
+        var packing_unit = $("#form-SSpglJfspProductinfo-edit").serializeArray().find(item => item.name === 'packing_unit');
+        if (packing_unit.value === '') {
+            $.modal.alertWarning("请选择包装单位!");
+            return null;
+        }
         if ($.validate.form()) {
             edit();
         }
     }
 </script>
+<style>
+    .form-grid1 {
+        display: grid;
+        grid-template-columns: 1fr 1fr; /* 创建两列 */
+        gap: 20px; /* 设置列之间的间距 */
+    }
+
+    .form-field-left, .form-field-right {
+        display: flex;
+        flex-direction: column;
+    }
+
+    .form-field-left , .form-field-right {
+        margin-bottom: 5px; /* 给标签与输入框之间留出一些空间 */
+    }
+
+    .styled-input1 {
+        padding: 8px;
+        border: 1px solid #ccc;
+        border-radius: 4px;
+        width: 100%; /* 确保输入框占满整个宽度 */
+    }
+
+    .span_line1 {
+        display: block;
+        height: 1px;
+        background-color: #e0e0e0;
+        margin-top: 10px;
+    }
+    .rule-info-section {
+        /*display: flex;*/
+        align-items: center;
+        justify-content: center;
+        margin-bottom: 20px; /* 调整与下面表单元素的距离 */
+    }
+
+    .rule-info-section hr {
+        flex-grow: 1;
+        margin: 0 10px; /* 线条与文案之间的间距 */
+        border: 0;
+        height: 1px;
+        background-color: #ccc; /* 线条颜色 */
+    }
+
+    .rule-info-section span {
+        background: #efe9c4;
+        padding: 0 10px; /* 文案与线条之间的内边距 */
+        font-size: 14px;
+        color: #dd1b20; /* 文案颜色 */
+    }
+</style>

+ 133 - 8
health-admin/src/main/resources/templates/spgl/SPProductAdd.html

@@ -17,7 +17,7 @@
             <ul class="nav nav-tabs" id="myTabs3">
                 <li class="active"><a data-toggle="tab" href="#tab-1" aria-expanded="true"> 基本信息</a>
                 </li>
-                <li class=""><a data-toggle="tab" href="#tab-12" aria-expanded="false">DTP属性</a>
+                <li class=""><a data-toggle="tab" href="#tab-12" aria-expanded="false">D值配置属性</a>
                 </li>
                 <li class=""><a data-toggle="tab" href="#tab-2" aria-expanded="false">采购属性</a>
                 </li>
@@ -34,8 +34,8 @@
                 <!-- 下面再看 先把上面的弄完-->
                 <li class=""><a data-toggle="tab" href="#tab-8" aria-expanded="false">处方属性</a>
                 </li>
-                <li class=""><a data-toggle="tab" href="#tab-9" aria-expanded="false">D值配置属性</a>
-                </li>
+<!--                <li class=""><a data-toggle="tab" href="#tab-9" aria-expanded="false">D值配置属性</a>-->
+<!--                </li>-->
                 <li class=""><a data-toggle="tab" href="#tab-10" aria-expanded="false">说明书属性</a>
                 </li>
                 <li class=""><a data-toggle="tab" href="#tab-11" aria-expanded="false">知识库属性</a>
@@ -513,6 +513,58 @@
                             </select>
                             <span class="span_line" readonly></span>
                         </div>
+
+                        <div class="form-grid1">
+                            <div class="form-field-left">
+                                <label class="is-required">最大剂量数量:</label>
+                                <input type="number" name="dosage_max"  placeholder="最大剂量数量" class="styled-input1" />
+                            </div>
+                            <div class="form-field-right">
+                                <label class="is-required">最大剂量单位:</label>
+                                <select name="unit_max" class="styled-input1"  placeholder="最大剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}">
+                                    <option value="">请选择</option>
+                                    <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:text="${dict.dictLabel}"></option>
+                                </select>
+                            </div>
+
+                            <div class="form-field-left">
+                                <label class="is-required">常用剂量数量:</label>
+                                <input type="number" name="dosage_normal"  placeholder="常用剂量数量" class="styled-input1" />
+                            </div>
+                            <div class="form-field-right">
+                                <label>常用剂量单位:</label>
+                                <select name="unit_normal" class="styled-input1"  placeholder="常用剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}">
+                                    <option value="">请选择</option>
+                                    <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:text="${dict.dictLabel}"></option>
+                                </select>
+                            </div>
+                        </div>
+                        <div class="form-grid1">
+                            <div class="form-field-left">
+                                <label class="is-required">最小剂量数量:</label>
+                                <input type="number" name="dosage_min"  placeholder="最小剂量数量" class="styled-input1" />
+                            </div>
+                            <div class="form-field-right">
+                                <label class="is-required">最小剂量单位:</label>
+                                <select name="unit_min" class="styled-input1"  placeholder="最小剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}">
+                                    <option value="">请选择</option>
+                                    <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:text="${dict.dictLabel}"></option>
+                                </select>
+                            </div>
+                            <div class="form-field-left">
+                                <label class="is-required">购药包装单位数值:</label>
+                                <input type="number" name="packing_value"  placeholder="购药包装单位数值" class="styled-input1" />
+                            </div>
+                            <div class="form-field-right">
+                                <label>包装单位:</label>
+                                <select name="packing_unit" class="styled-input1" placeholder="包装单位"  th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}">
+                                    <option value="">请选择</option>
+                                    <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:text="${dict.dictLabel}"></option>
+                                </select>
+                            </div>
+                        </div>
+
+
                     </form>
                 </div>
                 <!-- 采购属性 -->
@@ -1514,6 +1566,37 @@
     .clear-button {
         margin-top: 10px;
     }
+
+
+    .form-grid1 {
+        padding-left: 50px;
+        display: grid;
+        grid-template-columns: 1fr 1fr; /* 创建两列 */
+        gap: 20px; /* 设置列之间的间距 */
+    }
+
+    .form-field-left, .form-field-right {
+        display: flex;
+        flex-direction: column;
+    }
+
+    .form-field-left , .form-field-right {
+        margin-bottom: 5px; /* 给标签与输入框之间留出一些空间 */
+    }
+
+    .styled-input1 {
+        padding: 8px;
+        border: 1px solid #ccc;
+        border-radius: 4px;
+        width: 100%; /* 确保输入框占满整个宽度 */
+    }
+
+    .span_line1 {
+        display: block;
+        height: 1px;
+        background-color: #e0e0e0;
+        margin-top: 10px;
+    }
 </style>
 <script th:inline="javascript">
     var prefix = ctx + "sp/sp";
@@ -1605,33 +1688,75 @@
 
         var follow_up_item = $("#form-server-edit12").serializeArray().find(item => item.name === 'follow_up_item');
         if (follow_up_item.value === '') {
-            $.modal.alertWarning("请选择是【DTP属性】否随访品!");
+            $.modal.alertWarning("请选择是【D值配置属性】否随访品!");
             return null;
         }
 
         var cold_chain_item = $("#form-server-edit12").serializeArray().find(item => item.name === 'cold_chain_item');
         if (cold_chain_item.value === '') {
-            $.modal.alertWarning("请选择【DTP属性】是否冷链品!");
+            $.modal.alertWarning("请选择【D值配置属性】是否冷链品!");
             return null;
         }
 
         var registered_item = $("#form-server-edit12").serializeArray().find(item => item.name === 'registered_item');
         if (registered_item.value === '') {
-            $.modal.alertWarning("请选择【DTP属性】是否登记品!");
+            $.modal.alertWarning("请选择【D值配置属性】是否登记品!");
             return null;
         }
 
         var flow_item = $("#form-server-edit12").serializeArray().find(item => item.name === 'flow_item');
         if (flow_item.value === '') {
-            $.modal.alertWarning("请选择【DTP属性】是否流向品!");
+            $.modal.alertWarning("请选择【D值配置属性】是否流向品!");
             return null;
         }
 
         var prescription_required = $("#form-server-edit12").serializeArray().find(item => item.name === 'prescription_required');
         if (prescription_required.value === '') {
-            $.modal.alertWarning("请选择【DTP属性】是否是否凭处方销售!");
+            $.modal.alertWarning("请选择【D值配置属性】是否是否凭处方销售!");
+            return null;
+        }
+
+        var dosage_max = $("#form-server-edit12").serializeArray().find(item => item.name === 'dosage_max');
+        if (dosage_max.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】最大剂量数量!");
+            return null;
+        }
+        var dosage_min = $("#form-server-edit12").serializeArray().find(item => item.name === 'dosage_min');
+        if (dosage_min.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】最小剂量数量!");
+            return null;
+        }
+        var unit_max = $("#form-server-edit12").serializeArray().find(item => item.name === 'unit_max');
+        if (unit_max.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】最大剂量单位!");
             return null;
         }
+        var unit_min = $("#form-server-edit12").serializeArray().find(item => item.name === 'unit_min');
+        if (unit_min.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】最小剂量单位!");
+            return null;
+        }
+        var unit_normal = $("#form-server-edit12").serializeArray().find(item => item.name === 'unit_normal');
+        if (unit_normal.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】常见计量单位!");
+            return null;
+        }
+        var dosage_normal = $("#form-server-edit12").serializeArray().find(item => item.name === 'dosage_normal');
+        if (dosage_normal.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】常见计量数量!");
+            return null;
+        }
+        var packing_value = $("#form-server-edit12").serializeArray().find(item => item.name === 'packing_value');
+        if (packing_value.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】包装单位值!");
+            return null;
+        }
+        var packing_unit = $("#form-server-edit12").serializeArray().find(item => item.name === 'packing_unit');
+        if (packing_unit.value === '') {
+            $.modal.alertWarning("请选择【D值配置属性】包装单位!");
+            return null;
+        }
+
         // 初始化合并后的数据数组
         var allData = [];
 

+ 118 - 0
health-admin/src/main/resources/templates/spgl/SPProductEdit.html

@@ -531,6 +531,55 @@
                             </select>
                             <span class="span_line" readonly></span>
                         </div>
+                        <div class="form-grid1">
+                            <div class="form-field-left">
+                                <label class="is-required">最大剂量数量:</label>
+                                <input type="number" name="dosage_max"  placeholder="最大剂量数量" th:value="${dosage_max}" class="styled-input1" required />
+                            </div>
+                            <div class="form-field-right">
+                                <label class="is-required">最大剂量单位:</label>
+                                <select name="unit_max" class="styled-input1"  placeholder="最大剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}" required>
+                                    <option value="">请选择</option>
+                                    <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${unit_max}" th:text="${dict.dictLabel}"></option>
+                                </select>
+                            </div>
+
+                            <div class="form-field-left">
+                                <label>常用剂量数量:</label>
+                                <input type="number" name="dosage_normal"  placeholder="常用剂量数量" th:value="${dosage_normal}"   class="styled-input1" />
+                            </div>
+                            <div class="form-field-right">
+                                <label>常用剂量单位:</label>
+                                <select name="unit_normal" class="styled-input1"  placeholder="常用剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}">
+                                    <option value="">请选择</option>
+                                    <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${unit_normal}" th:text="${dict.dictLabel}"></option>
+                                </select>
+                            </div>
+                        </div>
+                        <div class="form-grid1">
+                            <div class="form-field-left">
+                                <label class="is-required">最小剂量数量:</label>
+                                <input type="number" name="dosage_min"  placeholder="最小剂量数量" th:value="${dosage_min}"  class="styled-input1" required />
+                            </div>
+                            <div class="form-field-right">
+                                <label class="is-required">最小剂量单位:</label>
+                                <select name="unit_min" class="styled-input1"  placeholder="最小剂量单位" th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}" required>
+                                    <option value="">请选择</option>
+                                    <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${unit_min}" th:text="${dict.dictLabel}"></option>
+                                </select>
+                            </div>
+                            <div class="form-field-left">
+                                <label class="is-required">购药包装单位数值:</label>
+                                <input type="number" name="packing_value"  placeholder="购药包装单位数值" th:value="${packing_value}"  class="styled-input1" required />
+                            </div>
+                            <div class="form-field-right">
+                                <label>包装单位:</label>
+                                <select name="packing_unit" class="styled-input1" placeholder="包装单位"  th:with="type=${@dict.getType('sys_gxhpz_gg_unitall')}">
+                                    <option value="">请选择</option>
+                                    <option th:each="dict : ${type}" th:value="${dict.dictValue}" th:selected="${dict.dictValue}==${packing_unit}" th:text="${dict.dictLabel}"></option>
+                                </select>
+                            </div>
+                        </div>
                     </form>
                 </div>
                 <!-- 采购属性 -->
@@ -1532,6 +1581,35 @@
     .clear-button {
         margin-top: 10px;
     }
+    .form-grid1 {
+        padding-left: 50px;
+        display: grid;
+        grid-template-columns: 1fr 1fr; /* 创建两列 */
+        gap: 20px; /* 设置列之间的间距 */
+    }
+
+    .form-field-left, .form-field-right {
+        display: flex;
+        flex-direction: column;
+    }
+
+    .form-field-left , .form-field-right {
+        margin-bottom: 5px; /* 给标签与输入框之间留出一些空间 */
+    }
+
+    .styled-input1 {
+        padding: 8px;
+        border: 1px solid #ccc;
+        border-radius: 4px;
+        width: 100%; /* 确保输入框占满整个宽度 */
+    }
+
+    .span_line1 {
+        display: block;
+        height: 1px;
+        background-color: #e0e0e0;
+        margin-top: 10px;
+    }
 </style>
 <script th:inline="javascript">
     var prefix = ctx + "sp/sp";
@@ -1613,6 +1691,46 @@
     }
     function submitHandler() {
         if ($.validate.form()) {
+            var dosage_max = $("#form-server-edit12").serializeArray().find(item => item.name === 'dosage_max');
+            if (dosage_max.value === '') {
+                $.modal.alertWarning("请选择【D值配置属性】最大剂量数量!");
+                return null;
+            }
+            var dosage_min = $("#form-server-edit12").serializeArray().find(item => item.name === 'dosage_min');
+            if (dosage_min.value === '') {
+                $.modal.alertWarning("请选择【D值配置属性】最小剂量数量!");
+                return null;
+            }
+            var unit_max = $("#form-server-edit12").serializeArray().find(item => item.name === 'unit_max');
+            if (unit_max.value === '') {
+                $.modal.alertWarning("请选择【D值配置属性】最大剂量单位!");
+                return null;
+            }
+            var unit_min = $("#form-server-edit12").serializeArray().find(item => item.name === 'unit_min');
+            if (unit_min.value === '') {
+                $.modal.alertWarning("请选择【D值配置属性】最小剂量单位!");
+                return null;
+            }
+            var unit_normal = $("#form-server-edit12").serializeArray().find(item => item.name === 'unit_normal');
+            if (unit_normal.value === '') {
+                $.modal.alertWarning("请选择【D值配置属性】常见计量单位!");
+                return null;
+            }
+            var dosage_normal = $("#form-server-edit12").serializeArray().find(item => item.name === 'dosage_normal');
+            if (dosage_normal.value === '') {
+                $.modal.alertWarning("请选择【D值配置属性】常见计量数量!");
+                return null;
+            }
+            var packing_value = $("#form-server-edit12").serializeArray().find(item => item.name === 'packing_value');
+            if (packing_value.value === '') {
+                $.modal.alertWarning("请选择【D值配置属性】包装单位值!");
+                return null;
+            }
+            var packing_unit = $("#form-server-edit12").serializeArray().find(item => item.name === 'packing_unit');
+            if (packing_unit.value === '') {
+                $.modal.alertWarning("请选择【D值配置属性】包装单位!");
+                return null;
+            }
             var allData = collectFormData();
             if (allData.product_code === '') {
                 $.modal.alertWarning("请先填写产品编码!");

+ 16 - 0
health-system/src/main/java/com/bzd/system/service/gxhpz/DrugConfigService.java

@@ -69,6 +69,14 @@ public class DrugConfigService {
         //pd12.put("flow_item", pd.get("enterpriseFlowManagement"));//流向品  待确认是否修改
         pd12.put("charity_aid_item", pd.get("isCharityAidManaged"));//慈善援助品
         pd12.put("product_code", pd.get("mdmCode"));//药品编码
+        pd12.put("dosage_max",pd.get("dosage_max"));
+        pd12.put("dosage_min",pd.get("dosage_min"));
+        pd12.put("dosage_normal",pd.get("dosage_normal"));
+        pd12.put("unit_normal",pd.get("unit_normal"));
+        pd12.put("unit_max",pd.get("unit_max"));
+        pd12.put("unit_min",pd.get("unit_min"));
+        pd12.put("packing_unit",pd.get("packing_unit"));
+        pd12.put("packing_value",pd.get("packing_value"));
         int res12=daoSupport.update("SPProductinfoMapper.productUpdate12", pd12);
         System.out.println("res12:s_gxhpz_product_dtpinfo表更改条数"+res12);
         //添加管理品时候同步总药库库信息
@@ -155,6 +163,14 @@ public class DrugConfigService {
             //pd12.put("flow_item", pd.get("enterpriseFlowManagement"));//流向品 待确认是否修改
             pd12.put("charity_aid_item", pd.get("isCharityAidManaged"));//慈善援助品
             pd12.put("product_code", pd.get("mdmCode"));//药品编码
+            pd12.put("dosage_max",pd.get("dosage_max"));
+            pd12.put("dosage_min",pd.get("dosage_min"));
+            pd12.put("dosage_normal",pd.get("dosage_normal"));
+            pd12.put("unit_normal",pd.get("unit_normal"));
+            pd12.put("unit_max",pd.get("unit_max"));
+            pd12.put("unit_min",pd.get("unit_min"));
+            pd12.put("packing_unit",pd.get("packing_unit"));
+            pd12.put("packing_value",pd.get("packing_value"));
             int res12=daoSupport.update("SPProductinfoMapper.productUpdate12", pd12);
             System.out.println("res12:s_gxhpz_product_dtpinfo表更改条数"+res12);
             //更新管理品时候同步总药库库信息s_gxhpz_product_info表

+ 8 - 0
health-system/src/main/java/com/bzd/system/service/spgl/SPProductinfoService.java

@@ -91,6 +91,14 @@ public class SPProductinfoService {
         pdConfig.put("isColdChainManaged",pd.get("cold_chain_item"));
         //pdConfig.put("enterpriseFlowManagement",pd.get("flow_item"));//暂时不考虑这值 待确认
         pdConfig.put("isCharityAidManaged",pd.get("charity_aid_item"));
+        pdConfig.put("dosage_max",pd.get("dosage_max"));
+        pdConfig.put("dosage_min",pd.get("dosage_min"));
+        pdConfig.put("dosage_normal",pd.get("dosage_normal"));
+        pdConfig.put("unit_normal",pd.get("unit_normal"));
+        pdConfig.put("unit_max",pd.get("unit_max"));
+        pdConfig.put("unit_min",pd.get("unit_min"));
+        pdConfig.put("packing_unit",pd.get("packing_unit"));
+        pdConfig.put("packing_value",pd.get("packing_value"));
         pdConfig.put("productName",pd.get("product_name"));
         pdConfig.put("genericName",pd.get("generic_name"));
         pdConfig.put("manufacturerShortName",pd.get("manufacturer_abbreviation"));//厂家简称

+ 138 - 28
health-system/src/main/resources/mapper/gxhpz/drugConfigMapper.xml

@@ -16,7 +16,15 @@
             d.follow_up_item,
             d.cold_chain_item,
             d.charity_aid_item,
-            d.drug_delivery_way
+            d.drug_delivery_way,
+            d.dosage_max,
+            d.dosage_min,
+            d.dosage_normal,
+            d.unit_normal,
+            d.unit_max,
+            d.unit_min,
+            d.packing_unit,
+            d.packing_value
         FROM
             s_gxhpz_product_info p
                 LEFT JOIN
@@ -34,7 +42,15 @@
             d.follow_up_item,
             d.cold_chain_item,
             d.charity_aid_item,
-            d.drug_delivery_way
+            d.drug_delivery_way,
+            d.dosage_max,
+            d.dosage_min,
+            d.dosage_normal,
+            d.unit_normal,
+            d.unit_max,
+            d.unit_min,
+            d.packing_unit,
+            d.packing_value
         FROM
             s_gxhpz_product_info p
                 LEFT JOIN
@@ -220,6 +236,30 @@
             <if test="remarks != null and remarks != ''">
                 remarks = #{remarks},
             </if>
+            <if test="dosage_max != null and dosage_max != ''">
+                dosage_max=#{dosage_max},
+            </if>
+            <if test="dosage_min != null and dosage_min != ''">
+                dosage_min=#{dosage_min},
+            </if>
+            <if test="dosage_normal != null and dosage_normal != ''">
+                dosage_normal=#{dosage_normal},
+            </if>
+            <if test="unit_normal != null and unit_normal != ''">
+                unit_normal=#{unit_normal},
+            </if>
+            <if test="unit_max != null and unit_max != ''">
+                unit_max=#{unit_max},
+            </if>
+            <if test="unit_min != null and unit_min != ''">
+                unit_min=#{unit_min},
+            </if>
+            <if test="packing_unit != null and packing_unit != ''">
+                packing_unit=#{packing_unit},
+            </if>
+            <if test="packing_value != null and packing_value != ''">
+                packing_value=#{packing_value},
+            </if>
         </trim>
         <where>
             <if test="mdmCode != null and mdmCode != ''">
@@ -359,6 +399,30 @@
             <if test="dvcreatedTime != null">
                 dvcreatedTime = #{dvcreatedTime},
             </if>
+            <if test="dosage_max != null and dosage_max != ''">
+                dosage_max=#{dosage_max},
+            </if>
+            <if test="dosage_min != null and dosage_min != ''">
+                dosage_min=#{dosage_min},
+            </if>
+            <if test="dosage_normal != null and dosage_normal != ''">
+                dosage_normal=#{dosage_normal},
+            </if>
+            <if test="unit_normal != null and unit_normal != ''">
+                unit_normal=#{unit_normal},
+            </if>
+            <if test="unit_max != null and unit_max != ''">
+                unit_max=#{unit_max},
+            </if>
+            <if test="unit_min != null and unit_min != ''">
+                unit_min=#{unit_min},
+            </if>
+            <if test="packing_unit != null and packing_unit != ''">
+                packing_unit=#{packing_unit},
+            </if>
+            <if test="packing_value != null and packing_value != ''">
+                packing_value=#{packing_value},
+            </if>
         </trim>
         <where>
             <if test="mdmCode != null and mdmCode != ''">
@@ -455,6 +519,30 @@
             <if test="remarks != null and remarks != ''">
                 remarks,
             </if>
+            <if test="dosage_max != null and dosage_max != ''">
+                dosage_max,
+            </if>
+            <if test="dosage_min != null and dosage_min != ''">
+                dosage_min,
+            </if>
+            <if test="dosage_normal != null and dosage_normal != ''">
+                dosage_normal,
+            </if>
+            <if test="unit_normal != null and unit_normal != ''">
+                unit_normal,
+            </if>
+            <if test="unit_max != null and unit_max != ''">
+                unit_max,
+            </if>
+            <if test="unit_min != null and unit_min != ''">
+                unit_min,
+            </if>
+            <if test="packing_unit != null and packing_unit != ''">
+                packing_unit,
+            </if>
+            <if test="packing_value != null and packing_value != ''">
+                packing_value,
+            </if>
         </trim>
         <trim prefix="VALUES (" suffix=")" suffixOverrides=",">
             <if test="mdmCode != null and mdmCode != ''">
@@ -536,6 +624,30 @@
             <if test="remarks != null and remarks != ''">
                 #{remarks},
             </if>
+            <if test="dosage_max != null and dosage_max != ''">
+                #{dosage_max},
+            </if>
+            <if test="dosage_min != null and dosage_min != ''">
+                #{dosage_min},
+            </if>
+            <if test="dosage_normal != null and dosage_normal != ''">
+                #{dosage_normal},
+            </if>
+            <if test="unit_normal != null and unit_normal != ''">
+                #{unit_normal},
+            </if>
+            <if test="unit_max != null and unit_max != ''">
+                #{unit_max},
+            </if>
+            <if test="unit_min != null and unit_min != ''">
+                #{unit_min},
+            </if>
+            <if test="packing_unit != null and packing_unit != ''">
+                #{packing_unit},
+            </if>
+            <if test="packing_value != null and packing_value != ''">
+                #{packing_value},
+            </if>
         </trim>
     </insert>
     <delete id="deleteDrugConfigsByIds" parameterType="java.util.List">
@@ -598,32 +710,30 @@
     </select>
     <!--配置过的药品查询-->
     <select id="getAllProductInfo" parameterType="pd" resultType="pd">
-        SELECT
-            p.*,
-            d.is_insurance_drug,
-            d.insurance_category,
-            d.purchase_limit_quantity,
-            d.prescription_required,
-            d.prohibit_ordering,
-            d.mid_pack_order_logic,
-            d.max_order_limit,
-            d.drug_delivery_way,
-            d.registered_item,
-            d.follow_up_item,
-            d.cold_chain_item,
-            d.flow_item,
-            d.dosage_max,
-            d.dosage_min,
-            d.unit_max,
-            d.unit_min,
-            d.unit_normal,
-            d.dosage_normal,
-            d.packing_value,
-            d.packing_unit,
-            d.charity_aid_item
-        FROM
-            s_gxhpz_product_info p
-            LEFT JOIN s_gxhpz_product_dtpinfo d ON p.product_code = d.product_code
+
+        select
+        p.*,d.is_insurance_drug,
+        d.insurance_category,
+        d.purchase_limit_quantity,
+        d.prescription_required,
+        d.prohibit_ordering,
+        d.mid_pack_order_logic,
+        d.max_order_limit,
+        d.drug_delivery_way,
+        d.registered_item,
+        d.follow_up_item,
+        d.cold_chain_item,
+        d.flow_item,
+        d.charity_aid_item,
+        d.dosage_max,
+        d.dosage_min,
+        d.dosage_normal,
+        d.unit_normal,
+        d.unit_max,
+        d.unit_min,
+        d.packing_unit,
+        d.packing_value
+        from s_gxhpz_product_info p left join s_gxhpz_product_dtpinfo d on p.product_code = d.product_code
         <where>
             <if test="id != null">
                 AND p.id = #{id}

+ 72 - 0
health-system/src/main/resources/mapper/spgl/SPProductinfoMapper.xml

@@ -1195,6 +1195,30 @@
             <if test="charity_aid_item != null and charity_aid_item != ''">
                 charity_aid_item,
             </if>
+            <if test="dosage_max != null and dosage_max != ''">
+                dosage_max,
+            </if>
+            <if test="dosage_min != null and dosage_min != ''">
+                dosage_min,
+            </if>
+            <if test="dosage_normal != null and dosage_normal != ''">
+                dosage_normal,
+            </if>
+            <if test="unit_normal != null and unit_normal != ''">
+                unit_normal,
+            </if>
+            <if test="unit_max != null and unit_max != ''">
+                unit_max,
+            </if>
+            <if test="unit_min != null and unit_min != ''">
+                unit_min,
+            </if>
+            <if test="packing_unit != null and packing_unit != ''">
+                packing_unit,
+            </if>
+            <if test="packing_value != null and packing_value != ''">
+                packing_value,
+            </if>
         </trim>
         <trim prefix=" VALUES (" suffix=")" prefixOverrides="," suffixOverrides=",">
             <if test="product_code != null and product_code != ''">
@@ -1236,6 +1260,30 @@
             <if test="charity_aid_item != null and charity_aid_item != ''">
                 #{charity_aid_item},
             </if>
+            <if test="dosage_max != null and dosage_max != ''">
+                #{dosage_max},
+            </if>
+            <if test="dosage_min != null and dosage_min != ''">
+                #{dosage_min},
+            </if>
+            <if test="dosage_normal != null and dosage_normal != ''">
+                #{dosage_normal},
+            </if>
+            <if test="unit_normal != null and unit_normal != ''">
+                #{unit_normal},
+            </if>
+            <if test="unit_max != null and unit_max != ''">
+                #{unit_max},
+            </if>
+            <if test="unit_min != null and unit_min != ''">
+                #{unit_min},
+            </if>
+            <if test="packing_unit != null and packing_unit != ''">
+                #{packing_unit},
+            </if>
+            <if test="packing_value != null and packing_value != ''">
+                #{packing_value},
+            </if>
         </trim>
 
     </insert>
@@ -1913,6 +1961,30 @@
                 <if test="charity_aid_item != null and charity_aid_item != ''">
                     charity_aid_item=#{charity_aid_item},
                 </if>
+                <if test="dosage_max != null and dosage_max != ''">
+                    dosage_max=#{dosage_max},
+                </if>
+                <if test="dosage_min != null and dosage_min != ''">
+                    dosage_min=#{dosage_min},
+                </if>
+                <if test="dosage_normal != null and dosage_normal != ''">
+                    dosage_normal=#{dosage_normal},
+                </if>
+                <if test="unit_normal != null and unit_normal != ''">
+                    unit_normal=#{unit_normal},
+                </if>
+                <if test="unit_max != null and unit_max != ''">
+                    unit_max=#{unit_max},
+                </if>
+                <if test="unit_min != null and unit_min != ''">
+                    unit_min=#{unit_min},
+                </if>
+                <if test="packing_unit != null and packing_unit != ''">
+                    packing_unit=#{packing_unit},
+                </if>
+                <if test="packing_value != null and packing_value != ''">
+                    packing_value=#{packing_value},
+                </if>
             </trim>
         </set>
         where product_code = #{product_code}