From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master

---
 jnpf-dms/jnpf-dms-controller/src/test/java/jnpf/dmsController/DmsDanganCundangJieshouControllerTest.java |   69 ++++++++++++++++++++++++++++++++++
 1 files changed, 69 insertions(+), 0 deletions(-)

diff --git a/jnpf-dms/jnpf-dms-controller/src/test/java/jnpf/dmsController/DmsDanganCundangJieshouControllerTest.java b/jnpf-dms/jnpf-dms-controller/src/test/java/jnpf/dmsController/DmsDanganCundangJieshouControllerTest.java
new file mode 100644
index 0000000..9c200e6
--- /dev/null
+++ b/jnpf-dms/jnpf-dms-controller/src/test/java/jnpf/dmsController/DmsDanganCundangJieshouControllerTest.java
@@ -0,0 +1,69 @@
+package jnpf.dmsController;
+
+import jnpf.dmsService.DmsDanganCundangJieshouService;
+import jnpf.dmsEntity.DmsDanganCundangShenqingDanganheEntity;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.ArgumentCaptor;
+import org.springframework.http.MediaType;
+import org.springframework.test.web.servlet.MockMvc;
+import org.springframework.test.web.servlet.setup.MockMvcBuilders;
+
+import static org.junit.Assert.assertEquals;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
+
+public class DmsDanganCundangJieshouControllerTest {
+
+    private MockMvc mockMvc;
+    private DmsDanganCundangJieshouService jieshouService;
+
+    @Before
+    public void setUp() {
+        jieshouService = mock(DmsDanganCundangJieshouService.class);
+        DmsDanganCundangJieshouController controller = new DmsDanganCundangJieshouController(jieshouService);
+        mockMvc = MockMvcBuilders.standaloneSetup(controller).build();
+    }
+
+    @Test
+    public void jieshouPassesSnakeCaseRequestFieldsToService() throws Exception {
+        mockMvc.perform(post("/biz/dangan/cundang/jieshou")
+                        .contentType(MediaType.APPLICATION_JSON)
+                        .content("{\"danganhe_xinxi\":[{\"id\":\"box-1\",\"f_id\":\"box-1\"}],"
+                                + "\"biz_review_user\":\"reviewer-1\",\"biz_user_id\":\"receiver-1\","
+                                + "\"biz_sign\":\"sign-1\",\"biz_review_sign\":\"review-sign-1\"}"))
+                .andExpect(status().isOk())
+                .andExpect(jsonPath("$.code").value(200))
+                .andExpect(jsonPath("$.msg").value("妗f瀛樻。鎺ユ敹鎴愬姛"));
+
+        ArgumentCaptor<jnpf.dmsEntity.form.DmsDanganCundangJieshouForm> captor = ArgumentCaptor.forClass(
+                jnpf.dmsEntity.form.DmsDanganCundangJieshouForm.class);
+        verify(jieshouService).jieshou(captor.capture());
+        assertEquals("receiver-1", captor.getValue().getBizUserId());
+        assertEquals("reviewer-1", captor.getValue().getBizReviewUser());
+        assertEquals("box-1", captor.getValue().getDanganheXinxi().get(0).getFId());
+    }
+
+    @Test
+    public void checkPassesDanganheBianhaoToService() throws Exception {
+        DmsDanganCundangShenqingDanganheEntity danganhe = new DmsDanganCundangShenqingDanganheEntity();
+        danganhe.setId("box-1");
+        danganhe.setDanganheBianhao("DAH-001");
+        when(jieshouService.check("box-1")).thenReturn(danganhe);
+
+        mockMvc.perform(post("/biz/dangan/cundang/jieshou/check")
+                        .contentType(MediaType.APPLICATION_JSON)
+                        .content("{\"danganhe_bianhao\":\"box-1\"}"))
+                .andExpect(status().isOk())
+                .andExpect(jsonPath("$.code").value(200))
+                .andExpect(jsonPath("$.msg").value("妗f鐩掑彲鎺ユ敹"))
+                .andExpect(jsonPath("$.data.f_id").value("box-1"))
+                .andExpect(jsonPath("$.data.danganhe_bianhao").value("DAH-001"));
+
+        verify(jieshouService).check("box-1");
+    }
+}

--
Gitblit v1.8.0