kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrder.java
@@ -11,7 +11,6 @@ import lombok.NoArgsConstructor; import org.hibernate.validator.constraints.NotEmpty; import javax.validation.constraints.Min; import javax.validation.constraints.NotNull; import java.util.Date; @@ -66,7 +65,6 @@ private String contractTitle; @NotNull(message = "合同名数量不能为空") @Min(1) private Integer contractNum; /** * 合同开始时间 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java
@@ -452,13 +452,15 @@ map.put("enabled",true); map.put("is_del",false); List<ProductOrder> productOrders = productOrderService.listByMap(map); map = new HashMap<>(); if(productOrders!=null&&productOrders.size()>0){ IntSummaryStatistics intSummaryStatistics = productOrders.stream().filter(a-> a.getContractNum()!=null&&a.getEnabled()).mapToInt((x) -> x.getContractNum()).summaryStatistics(); Date minDate = productOrders.stream().filter(a->a.getEnabled()).map(e -> e.getContractBeginTime()).min((e1, e2) -> e1.compareTo(e2)).get(); Date manDate = productOrders.stream().filter(a->a.getEnabled()).map(e -> e.getContractEndTime()).max((e1, e2) -> e1.compareTo(e2)).get(); map = new HashMap<>(); map.put("count", intSummaryStatistics.getSum()); map.put("beginTime",DateUtils.formatDate(minDate,"yyyy-MM-dd HH:mm:ss")); map.put("endTime",DateUtils.formatDate(manDate,"yyyy-MM-dd HH:mm:ss")); } return ResultBody.ok().data(map); } } kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/apiUrl.js
kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html
@@ -128,7 +128,7 @@ updateModel(obj.data); } else if (obj.event === 'detail') { //充值记录列表 showModel(obj.data.id); showModel(obj.data); } }); @@ -146,7 +146,8 @@ }); }); var showModel = function (orderId) { var showModel = function (data) { console.log(data) layer.open({ type: 1, title: '查看产品', @@ -156,9 +157,9 @@ success: function () { table.render({ elem: '#contract-table-detail', url: config.base_server + 'api-opration/productorderrecord', url: config.base_server + 'api-opration/productorderdetail/alldetail', method: 'GET', where: { 'orderId': orderId }, where: { hospitalId: data.hospitalId,departmentId:data.departmentId}, headers: { 'Authorization': 'Bearer ' + config.getToken().access_token }, page: true, limit: 10, kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html
@@ -85,6 +85,7 @@ id="contractBeginTime_not" type="text" placeholder="请输开始时间" class="layui-input" maxlength="50" readonly style="border: none; display: inline-block;width: 40%;" /> <span id="contractBeginTime_not_heng"> 至 </span> <input autocomplete="off" name="contractEndTime_not" disabled id="contractEndTime_not" type="text" placeholder="请输入结束时间" class="layui-input" maxlength="50" readonly @@ -120,6 +121,7 @@ <input autocomplete="off" name="contractBeginTime" id="contractBeginTime" type="text" placeholder="请输开始时间" class="layui-input" maxlength="50" lay-verify="required" required style="display: inline-block;width: 40%;" /> -- <input autocomplete="off" name="contractEndTime" id="contractEndTime" type="text" placeholder="请输入结束时间" class="layui-input" maxlength="50" lay-verify="required" required style="display: inline-block;width: 40%;" /> @@ -129,7 +131,7 @@ <label class="layui-form-label">合同读片充值量:</label> <div class="layui-input-inline"> <input autocomplete="off" name="contractNum" id="contractNum" onkeyup="this.value=this.value.replace(/[^\d]/g,'') " type="text" onkeyup="this.value=this.value.replace(/[^\d]/g,'0') " type="text" value="0" class="layui-input" maxlength="50" lay-verify="required" required /> </div> </div> @@ -446,8 +448,19 @@ admin.req('api-opration/productorderdetail/getContractBeginEndTimeAndNum', { departmentId: departmentId }, function (data) { if (data.code == 0) { if(data.data.beginTime==undefined){ $("#contractBeginTime_not").hide(); $("#contractEndTime_not").hide(); $("#contractBeginTime_not_heng").hide(); $("#contractNum_not").hide(); form.render(); }else{ $("#contractBeginTime_not").val(layui.util.toDateString(data.data.beginTime, "yyyy-MM-dd")); $("#contractEndTime_not").val(layui.util.toDateString(data.data.endTime, "yyyy-MM-dd")); $("#contractBeginTime").val(layui.util.toDateString(data.data.beginTime, "yyyy-MM-dd")); $("#contractEndTime").val(layui.util.toDateString(data.data.endTime, "yyyy-MM-dd")); $("#custom_beginTime").val(layui.util.toDateString(data.data.beginTime, "yyyy-MM-dd")); $("#custom_endTime").val(layui.util.toDateString(data.data.endTime, "yyyy-MM-dd")); contractBeginTime.config.max = { year: layui.util.toDateString(data.data.beginTime, "yyyy"), month: layui.util.toDateString(data.data.beginTime, "MM") - 1,//关键 @@ -465,6 +478,7 @@ seconds: layui.util.toDateString(data.data.endTime, "ss") } $("#contractNum_not").val(data.data.count); } } }, "get") @@ -607,9 +621,9 @@ }, 'get'); //报告数量事件 $("#contractNum").blur(function () { if ($("#contractNum").val() <= 0) { if ($("#contractNum").val() < 0) { layer.msg("输入的读片量大于0"); $("#contractNum").val("") $("#contractNum").val(0) return false; } var listData = admin.getTempData("t_tempProduct"); @@ -671,7 +685,8 @@ proName: custom_proName, proTime: "", proType: 1, termType: termType termType: termType, type: 1 } tempDataList(data); waitRecharge(); @@ -733,6 +748,24 @@ return false; } } //将所选的时间不得大于 合同的时间 var contractBeginTime = $("#contractBeginTime").val(); var contractEndTime = $("#contractEndTime").val(); if (!strUtil.isEmpty(data.beginTime)){ if (dateUtil.compareDate( contractBeginTime,data.beginTime)) { layer.msg("开始时间必须大于合同的开始时间!"); return false; } } if (!strUtil.isEmpty(data.endTime)){ console.log(contractEndTime,"contractEndTime") console.log(data.endTime,"data.endTimedata.endTime") if (dateUtil.compareDate(data.endTime,contractEndTime)) { layer.msg("结束时间必须小于合同的结束时间!"); return false; } } if (!strUtil.isEmpty(data.beginTime) && !strUtil.isEmpty(data.endTime)) { if (dateUtil.compareDate(data.endTime, data.beginTime)) { data.id = data.id + ''; @@ -847,10 +880,25 @@ form.on('submit(recharge-form-submit)', function (data) { if (!isRun) { layer.load(2); debugger var listData = admin.getTempData("t_tempProduct"); // if (listData != null) { var count= 0; if (listData != null) { listData.forEach(element => { if(element.proType==1){ count+=element.ailightCount; } }); } if(count!=data.field.contractNum){ layer.closeAll('loading'); layer.msg("合同读片充值量与套餐数量不一致") return false; } if (data.field != null) { layer.confirm("确定要将待充值列表中的" + listData.length + "个产品充值给当前医院的科室吗?", { var len=listData!=null&&listData.length>0 ? listData.length : 0 layer.confirm("确定要将待充值列表中的" + len + "个产品充值给当前医院的科室吗?", { btn: ["确定", "返回"] }, function () { isRun = true; @@ -938,12 +986,12 @@ time: 1000 }); } } else { layer.msg("请先将要充值的产品加入待充值!", { icon: 2, time: 2000 }); } // } else { // layer.msg("请先将要充值的产品加入待充值!", { // icon: 2, // time: 2000 // }); // } layer.closeAll('loading'); return false; } kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/rechargeupdate.html
@@ -93,8 +93,9 @@ <input autocomplete="off" name="contractBeginTime" id="contractBeginTime" type="text" placeholder="请输开始时间" disabled class="layui-input" readonly style="border: none; margin-top:-10px;display: inline-block;width: 46%;" /> <input autocomplete="off" name="contractEndTime" disabled id="contractEndTime" type="text" placeholder="请输入结束时间" class="layui-input" readonly -- <input autocomplete="off" name="contractEndTime" disabled id="contractEndTime" type="text" placeholder="请输入结束时间" class="layui-input" readonly style="border: none; margin-top:-10px;display: inline-block;width: 46%;" /> </div> </div> @@ -167,7 +168,8 @@ </div> <div class="layui-col-sm6"> <div class="layui-input-inline"> <input type="checkbox" lay-skin="primary" id="custom_isShare" name="gongxiang" value="1" title="是否共享" /> <input type="checkbox" lay-skin="primary" id="custom_isShare" name="gongxiang" value="1" title="是否共享" /> </div> </div> </div> @@ -176,7 +178,8 @@ <div class="layui-row"> <div class="layui-col-sm12"> <div class="layui-input-inline" style="width: 120px;text-align: right;"> <input type="checkbox" lay-skin="primary" id="termType" name="termType" value="true" checked title="期限限制" /> <input type="checkbox" lay-skin="primary" id="termType" name="termType" value="true" checked title="期限限制" /> </div> <div class="layui-col-sm4" style="margin-right: 30px;"> <input autocomplete="off" id="custom_beginTime" type="text" placeholder="请输开始时间" @@ -190,7 +193,8 @@ </div> </div> <div class="layui-form-item"> <div class="layui-input-block" style="text-align: right;padding-right: 100px;padding-top: 50px;"> <div class="layui-input-block" style="text-align: right;padding-right: 100px;padding-top: 50px;"> <input class="layui-btn" type="button" id="custom_submit" value="确定" /> </div> </div> @@ -214,7 +218,7 @@ </div> <div class="layui-form-item model-form-footer" style="margin-right: 20px;"> <button class="layui-btn layui-btn-primary" ew-event="closeDialog" type="button">取消</button> <button class="layui-btn permissions" permissions="product-rechage" lay-submit id="submit">确定充值</button> <button class="layui-btn permissions" permissions="product-rechage" type="button" id="submit">确定充值</button> </div> <input type="hidden" value="" id="departmentId" name="departmentId" /> <input type="hidden" value="" id="hospitalId" name="hospitalId" /> @@ -847,10 +851,28 @@ data.isShare = (data.isShare.indexOf("不") == 0) ? 0 : 1; //判断待加入产品的总数是否大于合同的总数 //试用产品不计算总数 if(data.proType==1){ var msg = isthenNum(data.ailightCount); var msg = isthenNum(parseInt(data.ailightCount)); if (msg != null) { layer.msg(msg); return false; } } //将所选的时间不得大于 合同的时间 var contractBeginTime = $("#contractBeginTime").val(); var contractEndTime = $("#contractEndTime").val(); if (!strUtil.isEmpty(data.beginTime)){ if (dateUtil.compareDate( contractBeginTime,data.beginTime)) { layer.msg("开始时间必须大于合同的开始时间!"); return false; } } if (!strUtil.isEmpty(data.endTime)){ console.log(contractEndTime,"contractEndTime") console.log(data.endTime,"data.endTimedata.endTime") if (dateUtil.compareDate(data.endTime,contractEndTime)) { layer.msg("结束时间必须小于合同的结束时间!"); return false; } } @@ -887,7 +909,7 @@ if ($("#contractNum_not").val() == undefined || $("#contractNum_not").val() == "") { return "请输入合同读片充值量!"; } else { if ($("#contractNum_not").val() < listNum) { if (parseInt($("#contractNum_not").val()) < listNum) { return "当前产品总数不得大于合同读片充值量"; } else { return null; @@ -951,8 +973,11 @@ if (!isRun) { layer.load(2); var listData = admin.getTempData("t_tempProduct"); // debugger var len = listData != null && listData.length > 0 ? listData.length : 0; // debugger if (listData != null) { layer.confirm("确定要将待充值列表中的" + listData.length + "个产品充值给当前医院的科室吗?", { layer.confirm("确定要将待充值列表中的" + len + "个产品充值给当前医院的科室吗?", { btn: ["确定", "返回"] }, function () { isRun = true; @@ -1003,6 +1028,9 @@ icon: 2, time: 1000 }); layer.closeAll(); layer.closeAll('loading'); return false; } }, 'POST'); } else { @@ -1018,6 +1046,8 @@ icon: 2, time: 2000 }); layer.closeAll('loading'); return false; } layer.closeAll('loading'); return false;