Aslee 3 年之前
父節點
當前提交
f9801125cf

+ 32 - 26
src/main/java/com/caimei/modules/archive/service/CmOrderArchiveService.java

@@ -58,8 +58,7 @@ public class CmOrderArchiveService extends CrudService<CmOrderArchiveDao, CmOrde
 
 
 	@Transactional(readOnly = false)
-	public Map<String,Object> saveArchive(CmOrderArchive cmOrderArchive) {
-        HashMap<String, Object> result = new HashMap<>(2);
+	public void saveArchive(CmOrderArchive cmOrderArchive) {
         if (cmOrderArchive.getIsNewRecord()) {
             SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
             StringBuilder orderArchiveNo = new StringBuilder(format.format(new Date()));
@@ -69,27 +68,6 @@ public class CmOrderArchiveService extends CrudService<CmOrderArchiveDao, CmOrde
             }
             cmOrderArchive.setArchiveNo(orderArchiveNo.toString());
             cmOrderArchive.setAddTime(new Date());
-        } else {
-            // 当新的子订单id和数据库中的子订单id不同时,校验新的子订单id是否可用
-            CmOrderArchive dbArchive = cmOrderArchiveDao.get(cmOrderArchive.getId());
-            if (!cmOrderArchive.getShopOrderId().equals(dbArchive.getShopOrderId())) {
-                // 检查子订单id是否存在
-                Integer existId = cmOrderArchiveDao.checkShopOrderIdExist(cmOrderArchive.getShopOrderId());
-                if (null == existId) {
-                    result.put("code", -1);
-                    result.put("msg", "子订单id不存在");
-                    return result;
-                } else {
-                    // 检查子订单是否已被使用
-                    Integer ableId = cmOrderArchiveDao.checkShopOrderIdAble(cmOrderArchive.getShopOrderId());
-                    if (null == ableId) {
-                        result.put("code", -2);
-                        result.put("msg", "该子订单id已使用");
-                        return result;
-                    }
-                }
-            }
-
         }
 		super.save(cmOrderArchive);
         String fileIds = cmOrderArchive.getFileIds();
@@ -100,9 +78,6 @@ public class CmOrderArchiveService extends CrudService<CmOrderArchiveDao, CmOrde
                 }
             }
         }
-        result.put("code", 0);
-        result.put("msg", "保存成功");
-        return result;
 	}
 	
 	@Transactional(readOnly = false)
@@ -236,4 +211,35 @@ public class CmOrderArchiveService extends CrudService<CmOrderArchiveDao, CmOrde
     public String getAllFileIds(Integer orderArchiveId) {
         return cmOrderArchiveDao.getAllFileIds(orderArchiveId);
     }
+
+    public Map<String, Object> checkShopOrderId(CmOrderArchive cmOrderArchive) {
+        HashMap<String, Object> result = new HashMap<>(2);
+        if (StringUtil.isEmpty(cmOrderArchive.getId())) {
+            result.put("code", -1);
+            result.put("msg", "请输入资料id");
+            return result;
+        }
+        // 当新的子订单id和数据库中的子订单id不同时,校验新的子订单id是否可用
+        CmOrderArchive dbArchive = cmOrderArchiveDao.get(cmOrderArchive.getId());
+        if (!cmOrderArchive.getShopOrderId().equals(dbArchive.getShopOrderId())) {
+            // 检查子订单id是否存在
+            Integer existId = cmOrderArchiveDao.checkShopOrderIdExist(cmOrderArchive.getShopOrderId());
+            if (null == existId) {
+                result.put("code", -2);
+                result.put("msg", "子订单id不存在");
+                return result;
+            } else {
+                // 检查子订单是否已被使用
+                Integer ableId = cmOrderArchiveDao.checkShopOrderIdAble(cmOrderArchive.getShopOrderId());
+                if (null == ableId) {
+                    result.put("code", -3);
+                    result.put("msg", "该子订单id已使用");
+                    return result;
+                }
+            }
+        }
+        result.put("code", 0);
+        result.put("msg", "该子订单id可以使用");
+        return result;
+    }
 }

+ 8 - 6
src/main/java/com/caimei/modules/archive/web/CmOrderArchiveController.java

@@ -74,15 +74,17 @@ public class CmOrderArchiveController extends BaseController {
 		if (!beanValidator(model, cmOrderArchive)){
 			return form(cmOrderArchive, model);
 		}
-		Map<String,Object> result = cmOrderArchiveService.saveArchive(cmOrderArchive);
-		if (0 != Integer.parseInt(result.get("code").toString())) {
-			model.addAttribute("errorMsg", result.get("msg").toString());
-			return form(cmOrderArchive, model);
-		}
+		cmOrderArchiveService.saveArchive(cmOrderArchive);
 		addMessage(redirectAttributes, "保存订单资料成功");
 		return "redirect:"+Global.getAdminPath()+"/archive/cmOrderArchive/?repage";
 	}
-	
+
+	@RequestMapping(value = "checkShopOrderId")
+    @ResponseBody
+    public Map<String,Object> checkShopOrderId(CmOrderArchive cmOrderArchive) {
+        return cmOrderArchiveService.checkShopOrderId(cmOrderArchive);
+    }
+
 	@RequestMapping(value = "delete")
 	public String delete(CmOrderArchive cmOrderArchive, RedirectAttributes redirectAttributes) {
 		cmOrderArchiveService.delete(cmOrderArchive);

+ 21 - 12
src/main/webapp/WEB-INF/views/modules/archive/cmOrderArchiveForm.jsp

@@ -9,8 +9,18 @@
 			//$("#name").focus();
 			$("#inputForm").validate({
 				submitHandler: function(form){
-					loading('正在提交,请稍等...');
-					form.submit();
+					debugger
+					var orderArchiveId = $("#id").val();
+					var shopOrderId = $("#shopOrderId").val();
+					$.post("${ctx}/archive/cmOrderArchive/checkShopOrderId",{"id":orderArchiveId,"shopOrderId":shopOrderId},function (result) {
+						if (result.code != 0) {
+							var errorMsg = result.msg;
+							jBox.tip(errorMsg, "error");
+						} else {
+							loading('正在提交,请稍等...');
+							form.submit();
+						}
+					})
 				},
 				errorContainer: "#messageBox",
 				errorPlacement: function(error, element) {
@@ -167,6 +177,10 @@
 			cursor: pointer;
 			margin-left: 20px;
 		}
+
+		.Main-content{
+			height: 100px;
+		}
 	</style>
 </head>
 <body>
@@ -174,7 +188,6 @@
 		<li><a href="${ctx}/archive/cmOrderArchive/">订单资料列表</a></li>
 		<li class="active"><a href="${ctx}/archive/cmOrderArchive/form?id=${cmOrderArchive.id}">订单资料${not empty cmOrderArchive.id?'编辑':'添加'}</a></li>
 	</ul><br/>
-	<input type="hidden" id="errorMsg" value="${errorMsg}"/>
 	<form:form id="inputForm" modelAttribute="cmOrderArchive" action="${ctx}/archive/cmOrderArchive/save" method="post" class="form-horizontal">
 		<form:hidden path="id"/>
 		<form:hidden path="fileIds" id="fileIds"/>
@@ -204,7 +217,7 @@
 			</div>
 		</div>
 		<div class="control-group">
-			<label class="control-label">商品标签:</label>
+			<label class="control-label" style="margin-top: 14px">商品标签:</label>
 			<div class="controls Main-content">
 				<div class="tags-operate">
 					<input type="text" class="reg-input tag-input" id="tagInput" placeholder="输入商品标签,支持添加多个"
@@ -238,7 +251,7 @@
 				<input type="file" name="file" id="archiveFile" accept=".pdf,.doc,.docx,.png,.jpg">选择文件
             </div>
 			<div class="add-submit">
-				<input id="addSubmit" type="button" value="上传"/>上传&nbsp;+
+				<input id="addSubmit" type="button" value="上传"/>上传&nbsp;
 			</div>
 			<div class="upload-loading">
 				<img alt="gif" src="/static/images/upload.gif" width="32px" border="none">
@@ -265,10 +278,7 @@
 <script>
 	// 初始化主营内容数据
 	$(function () {
-		var errorMsg = $("#errorMsg").val();
-		if (errorMsg != '' && errorMsg != 'undefined') {
-			jBox.tip(errorMsg, "error");
-		}
+
 		var html = '';
 		$('#tagArea').html(html);
 		$('.Main-content').show();
@@ -312,13 +322,13 @@
 
 		//点击上传按钮后上传文件
 		$('#addSubmit').click(function () {
-			debugger
 			var files = $('#archiveFile').prop('files');
 			var fileName = $('#uploadFileName').val();
 			if (files === '' || files.length == 0 || fileName == '') {
 				alertx('请选择上传文件');
 				return;
 			}
+			$("#uploadFileName").val("");
 			var data = new FormData();
 			var orderArchiveId = $("#id").val();
 			var fileIds = $("#fileIds").val();
@@ -338,10 +348,10 @@
 					if (res.success) {
 						files.value = '';
 						renderFileList(res.archiveFile);
-						$("#uploadFileName").val("");
 						$('.upload-loading').hide();
 					} else {
 						$.jBox.tip(res.msg, 'error');
+						$("#uploadFileName").val(fileName);
 						$('.upload-loading').hide();
 					}
 
@@ -363,7 +373,6 @@
 		});
 		var fileListDisplay = document.getElementById('file-list-display');
 		renderFileList = function (data) {
-			debugger
 			fileIds += data.id + ',';
 			console.log(fileIds);
 			$('#fileIds').val(fileIds);