|
|
@@ -7,6 +7,7 @@ import static org.mockito.ArgumentMatchers.argThat;
|
|
7
|
7
|
import static org.mockito.ArgumentMatchers.eq;
|
|
8
|
8
|
import static org.mockito.Mockito.doNothing;
|
|
9
|
9
|
import static org.mockito.Mockito.never;
|
|
|
10
|
+import static org.mockito.Mockito.times;
|
|
10
|
11
|
import static org.mockito.Mockito.verify;
|
|
11
|
12
|
import static org.mockito.Mockito.when;
|
|
12
|
13
|
|
|
|
@@ -132,6 +133,40 @@ class BizMedicalResourceServiceImplTest
|
|
132
|
133
|
verify(mapper).logicDeleteBizMedicalResourceByIds(new Long[] { 6L }, "tester");
|
|
133
|
134
|
}
|
|
134
|
135
|
|
|
|
136
|
+ @Test
|
|
|
137
|
+ @DisplayName("批量发布")
|
|
|
138
|
+ void publishByIds()
|
|
|
139
|
+ {
|
|
|
140
|
+ BizMedicalResource db1 = MedicalResourceTestSamples.sampleVetDraft();
|
|
|
141
|
+ db1.setId(1L);
|
|
|
142
|
+ db1.setConsultModes("1,2");
|
|
|
143
|
+ db1.setServiceWeekdays("1,2,3,4,5");
|
|
|
144
|
+ BizMedicalResource db2 = MedicalResourceTestSamples.sampleVetDraft();
|
|
|
145
|
+ db2.setId(2L);
|
|
|
146
|
+ db2.setConsultModes("1,2");
|
|
|
147
|
+ db2.setServiceWeekdays("1,2,3,4,5");
|
|
|
148
|
+ when(mapper.selectBizMedicalResourceById(1L)).thenReturn(db1);
|
|
|
149
|
+ when(mapper.selectBizMedicalResourceById(2L)).thenReturn(db2);
|
|
|
150
|
+ when(mapper.updateBizMedicalResource(any())).thenReturn(1);
|
|
|
151
|
+ assertEquals(2, service.publishByIds(new Long[] { 1L, 2L }));
|
|
|
152
|
+ verify(mapper, times(2)).updateBizMedicalResource(any());
|
|
|
153
|
+ }
|
|
|
154
|
+
|
|
|
155
|
+ @Test
|
|
|
156
|
+ @DisplayName("批量下架")
|
|
|
157
|
+ void offlineByIds()
|
|
|
158
|
+ {
|
|
|
159
|
+ BizMedicalResource db1 = MedicalResourceTestSamples.samplePublishedVet();
|
|
|
160
|
+ db1.setId(1L);
|
|
|
161
|
+ BizMedicalResource db2 = MedicalResourceTestSamples.samplePublishedVet();
|
|
|
162
|
+ db2.setId(2L);
|
|
|
163
|
+ when(mapper.selectBizMedicalResourceById(1L)).thenReturn(db1);
|
|
|
164
|
+ when(mapper.selectBizMedicalResourceById(2L)).thenReturn(db2);
|
|
|
165
|
+ when(mapper.updateBizMedicalResource(any())).thenReturn(1);
|
|
|
166
|
+ assertEquals(2, service.offlineByIds(new Long[] { 1L, 2L }));
|
|
|
167
|
+ verify(mapper, times(2)).updateBizMedicalResource(any());
|
|
|
168
|
+ }
|
|
|
169
|
+
|
|
135
|
170
|
@Test
|
|
136
|
171
|
@DisplayName("分配账号")
|
|
137
|
172
|
void assignAccount()
|
|
|
@@ -149,4 +184,39 @@ class BizMedicalResourceServiceImplTest
|
|
149
|
184
|
MedicalResourceRules.ACCOUNT_ASSIGNED_YES == r.getAccountAssigned()
|
|
150
|
185
|
&& Long.valueOf(100L).equals(r.getSysUserId())));
|
|
151
|
186
|
}
|
|
|
187
|
+
|
|
|
188
|
+ @Test
|
|
|
189
|
+ @DisplayName("批量分配账号跳过已分配")
|
|
|
190
|
+ void assignAccountByIdsSkipsAssigned()
|
|
|
191
|
+ {
|
|
|
192
|
+ BizMedicalResource assigned = MedicalResourceTestSamples.sampleVetDraft();
|
|
|
193
|
+ assigned.setId(1L);
|
|
|
194
|
+ assigned.setAccountAssigned(MedicalResourceRules.ACCOUNT_ASSIGNED_YES);
|
|
|
195
|
+ assigned.setSysUserId(99L);
|
|
|
196
|
+ BizMedicalResource unassigned = MedicalResourceTestSamples.sampleVetDraft();
|
|
|
197
|
+ unassigned.setId(2L);
|
|
|
198
|
+ when(mapper.selectBizMedicalResourceById(1L)).thenReturn(assigned);
|
|
|
199
|
+ when(mapper.selectBizMedicalResourceById(2L)).thenReturn(unassigned);
|
|
|
200
|
+ SysUser user = new SysUser();
|
|
|
201
|
+ user.setUserId(100L);
|
|
|
202
|
+ user.setUserName("zhangshouyi2");
|
|
|
203
|
+ when(accountAssigner.createAccount(any(), any())).thenReturn(user);
|
|
|
204
|
+ when(mapper.updateBizMedicalResource(any())).thenReturn(1);
|
|
|
205
|
+ assertEquals(1, service.assignAccountByIds(new Long[] { 1L, 2L }, "admin"));
|
|
|
206
|
+ verify(accountAssigner, times(1)).createAccount(any(), any());
|
|
|
207
|
+ verify(mapper, times(1)).updateBizMedicalResource(any());
|
|
|
208
|
+ }
|
|
|
209
|
+
|
|
|
210
|
+ @Test
|
|
|
211
|
+ @DisplayName("批量分配账号全部已分配返回0")
|
|
|
212
|
+ void assignAccountByIdsAllSkipped()
|
|
|
213
|
+ {
|
|
|
214
|
+ BizMedicalResource assigned = MedicalResourceTestSamples.sampleVetDraft();
|
|
|
215
|
+ assigned.setId(1L);
|
|
|
216
|
+ assigned.setAccountAssigned(MedicalResourceRules.ACCOUNT_ASSIGNED_YES);
|
|
|
217
|
+ when(mapper.selectBizMedicalResourceById(1L)).thenReturn(assigned);
|
|
|
218
|
+ assertEquals(0, service.assignAccountByIds(new Long[] { 1L }, "admin"));
|
|
|
219
|
+ verify(accountAssigner, never()).createAccount(any(), any());
|
|
|
220
|
+ verify(mapper, never()).updateBizMedicalResource(any());
|
|
|
221
|
+ }
|
|
152
|
222
|
}
|