johnswang
2022-01-15 22907b8763fc073011872b637dc23023ef7fb4f4
提交 | 用户 | age
a6a76f 1 package com.yc.sdk.shopping.action.api;
F 2
3 import java.text.SimpleDateFormat;
4 import java.util.List;
5
6 import javax.servlet.http.HttpServletRequest;
7 import javax.servlet.http.HttpServletResponse;
8 import javax.servlet.http.HttpSession;
9
10 import org.springframework.beans.factory.annotation.Autowired;
11 import org.springframework.dao.DataAccessException;
12 import org.springframework.stereotype.Controller;
13 import org.springframework.web.bind.annotation.RequestMapping;
14
15 import com.google.gson.JsonArray;
16 import com.google.gson.JsonObject;
17 import com.yc.action.BaseAction;
18 import com.yc.entity.DataSourceEntity;
19 import com.yc.multiData.MultiDataSource;
20 import com.yc.multiData.SpObserver;
21 import com.yc.sdk.shopping.entity.SampleEntity;
22 import com.yc.sdk.shopping.entity.SampleItemEntity;
23 import com.yc.sdk.shopping.entity.SampleRelProductEntity;
24 import com.yc.sdk.shopping.entity.SampleTypeEntity;
25 import com.yc.sdk.shopping.entity.SettingEntity;
26 import com.yc.sdk.shopping.entity.ShopCcCodeEntity;
27 import com.yc.sdk.shopping.service.SettingIfc;
28 import com.yc.sdk.shopping.service.imagedata.ShoppingImageDataIfc;
29 import com.yc.sdk.shopping.service.sample.SampleIfc;
30 import com.yc.sdk.shopping.util.SettingKey;
31
32 @Controller
33 public class Sample extends BaseAction{
34     @Autowired 
35     ShoppingImageDataIfc imgData ;
36     @Autowired
37     SampleIfc sampleIfc ;
38     @Autowired
39     SettingIfc settingIfc;
40     
41     @RequestMapping("/shopping/getSampleTypeList.do")
42     public void getSampleTypeList(HttpServletRequest request, HttpServletResponse response) {
43         //HttpSession session = request.getSession();
44         
45         JsonObject json = new JsonObject();
46         JsonObject errJson = new JsonObject();
47         try {
48             
49             DataSourceEntity dataSourceEntity = MultiDataSource.getDataSourceMap( request) ;
50             SpObserver.setDBtoInstance("_" + dataSourceEntity.getDbId());// 切换数据源
22907b 51             //SettingEntity settingEntity = settingIfc.getSettingEntity(request) ;
a6a76f 52             //String hostUrl = SettingKey.getHostUrl(request) ;
F 53             //将微信corpid组装成url
54             //String wxQueryString = SettingKey.getQueryStringByWx(request);
55             //boolean isMoblieBrowser = SettingKey.isMoblieBrowser(request);
56             
57             Integer sampleTypeId = null ;
58             JsonArray sampleTypeJsonArray = new JsonArray();
59             List<SampleTypeEntity> sampleTypeList =  sampleIfc.getSampleTypeList();
60             for (int i = 0; sampleTypeList!=null && i < sampleTypeList.size();i++) {
61                 if (sampleTypeId == null || !sampleTypeId.equals(sampleTypeList.get(i).getSampleTypeId())) {
62                     sampleTypeId = sampleTypeList.get(i).getSampleTypeId() ;
63                     JsonObject sampleTypeJsonObject= new JsonObject();
64                     JsonArray jsonArray = new JsonArray();
65                     for (int j = 0 ; sampleTypeList!=null && j <sampleTypeList.size();j++ ) {
66                         if (!sampleTypeList.get(j).getSampleTypeId().equals(sampleTypeId)) {
67                             continue ;
68                         }
69                         JsonObject jsonObject= new JsonObject();
70                         jsonObject.addProperty("SampleId", sampleTypeList.get(j).getSampleId());
71                         jsonObject.addProperty("SampleName", sampleTypeList.get(j).getSampleName());
72                         jsonArray.add(jsonObject);
73                     }
74                     sampleTypeJsonObject.addProperty("SampleTypeId", sampleTypeId);
75                     sampleTypeJsonObject.addProperty("SampleTypeName", sampleTypeList.get(i).getSampleTypeName());
76                     sampleTypeJsonObject.add("SampleList", jsonArray);
77                     sampleTypeJsonArray.add(sampleTypeJsonObject);
78                 }
79             }
80             json.add("list", sampleTypeJsonArray);
81             this.printJson(response, json.toString());
82             return;
83             
84         } catch (DataAccessException e) {
85             e.printStackTrace();
86             errJson.addProperty("warning", (e.getCause()!=null?e.getCause().getMessage():e.getMessage()));
87             json.add("error", errJson);
88             this.printJson(response, json.toString());
89             return;
90         }catch (Exception e ){
91             e.printStackTrace();
92             errJson.addProperty("warning",(e.getCause()!=null?e.getCause().getMessage():e.getMessage()));
93             json.add("error", errJson);
94             this.printJson(response, json.toString());
95             return;
96         } finally {
97             SpObserver.setDBtoInstance();
98         }
99     }
100     
101     
102     @RequestMapping("/shopping/getSampleList.do")
103     public void getSampleList(HttpServletRequest request, HttpServletResponse response) {
104         //HttpSession session = request.getSession();
105         
106         JsonObject json = new JsonObject();
107         JsonObject errJson = new JsonObject();
108         try {
109             
110             DataSourceEntity dataSourceEntity = MultiDataSource.getDataSourceMap( request) ;
111             SpObserver.setDBtoInstance("_" + dataSourceEntity.getDbId());// 切换数据源
22907b 112             SettingEntity settingEntity = settingIfc.getSettingEntity(request) ;
a6a76f 113             //String hostUrl = SettingKey.getHostUrl(request) ;
F 114             //将微信corpid组装成url
115             //String wxQueryString = SettingKey.getQueryStringByWx(request);
116             //boolean isMoblieBrowser = SettingKey.isMoblieBrowser(request);
117             
118             String searchKey = request.getParameter("SearchKey") ;
119             String sampleId01 = request.getParameter("Sample01") ;
120             String sampleId02 = request.getParameter("Sample02") ;
121             String sampleId03 = request.getParameter("Sample03") ;
122             String sampleId04 = request.getParameter("Sample04") ;
123             String sampleId05 = request.getParameter("Sample05") ;
124             String sampleId06 = request.getParameter("Sample06") ;
125             String sampleId07 = request.getParameter("Sample07") ;
126             
127             // 取网店 shopcccode
128             ShopCcCodeEntity shopCcCodeEntity = ShopCcCode.getShopCcCode(settingEntity,request);
129
130             
131             
132             SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
133             JsonArray sampleJsonArray = new JsonArray();
134             List<SampleEntity> sampleList =  sampleIfc.getSampleList(searchKey,sampleId01,sampleId02,sampleId03,sampleId04,sampleId05,sampleId06,sampleId07,shopCcCodeEntity.getShopCcCode());
135             for (int i = 0; sampleList!=null && i < sampleList.size();i++) {
136                 JsonObject jsonObject= new JsonObject();
137                 SampleEntity sampleEntity = sampleList.get(i) ;
138                 String imgUrl = imgData.getImageUrl(sampleEntity.getBannerImage(),settingEntity.getImageBannerWidth(),settingEntity.getImageBannerHeight(),settingEntity.isShowBannerOrgImage(),settingEntity.isFromCached(),request) ;
139                 
140                 jsonObject.addProperty("DocCode", sampleEntity.getDocCode());
141                 jsonObject.addProperty("DocDate", sdf.format( sampleEntity.getDocDate()));
142                 jsonObject.addProperty("Topic", sampleEntity.getTopic());
143                 jsonObject.addProperty("CityName", sampleEntity.getCityName());
144                 jsonObject.addProperty("BannerImage", imgUrl);
145                 jsonObject.addProperty("SampleId01", sampleEntity.getSampleId01());
146                 jsonObject.addProperty("SampleId02", sampleEntity.getSampleId02());
147                 jsonObject.addProperty("SampleId03", sampleEntity.getSampleId03());
148                 jsonObject.addProperty("SampleId04", sampleEntity.getSampleId04());
149                 jsonObject.addProperty("SampleId05", sampleEntity.getSampleId05());
150                 jsonObject.addProperty("SampleId06", sampleEntity.getSampleId06());
151                 jsonObject.addProperty("SampleId07", sampleEntity.getSampleId07());
152                 
153                 jsonObject.addProperty("SampleId01Name", sampleEntity.getSampleId01Name());
154                 jsonObject.addProperty("SampleId02Name", sampleEntity.getSampleId02Name());
155                 jsonObject.addProperty("SampleId03Name", sampleEntity.getSampleId03Name());
156                 jsonObject.addProperty("SampleId04Name", sampleEntity.getSampleId04Name());
157                 jsonObject.addProperty("SampleId05Name", sampleEntity.getSampleId05Name());
158                 jsonObject.addProperty("SampleId06Name", sampleEntity.getSampleId06Name());
159                 jsonObject.addProperty("SampleId07Name", sampleEntity.getSampleId07Name());
160                 jsonObject.addProperty("HDMemo",sampleEntity.getHdMemo());
161                 jsonObject.addProperty("ShopCcCode",sampleEntity.getShopCcCode());
162                 jsonObject.addProperty("RewardTimes",sampleEntity.getRewardTimes());
163                 jsonObject.addProperty("IsVisit",sampleEntity.isVisit());
164                 
165                 sampleJsonArray.add(jsonObject);
166             }
167             json.add("list", sampleJsonArray);
168             this.printJson(response, json.toString());
169             return;
170             
171         } catch (DataAccessException e) {
172             e.printStackTrace();
173             errJson.addProperty("warning", (e.getCause()!=null?e.getCause().getMessage():e.getMessage()));
174             json.add("error", errJson);
175             this.printJson(response, json.toString());
176             return;
177         }catch (Exception e ){
178             e.printStackTrace();
179             errJson.addProperty("warning",(e.getCause()!=null?e.getCause().getMessage():e.getMessage()));
180             json.add("error", errJson);
181             this.printJson(response, json.toString());
182             return;
183         } finally {
184             SpObserver.setDBtoInstance();
185         }
186     }
187     
188     
189     
190     @RequestMapping("/shopping/getSampleDocCode.do")
191     public void getSampleDocCode(HttpServletRequest request, HttpServletResponse response) {
192         HttpSession session = request.getSession();
193         
194         JsonObject json = new JsonObject();
195         JsonObject errJson = new JsonObject();
196         try {
197             
198             DataSourceEntity dataSourceEntity = MultiDataSource.getDataSourceMap( request) ;
199             SpObserver.setDBtoInstance("_" + dataSourceEntity.getDbId());// 切换数据源
22907b 200             SettingEntity settingEntity = settingIfc.getSettingEntity(request) ;
a6a76f 201             //String hostUrl = SettingKey.getHostUrl(request) ;
F 202             //将微信corpid组装成url
203             //String wxQueryString = SettingKey.getQueryStringByWx(request);
204             //boolean isMoblieBrowser = SettingKey.isMoblieBrowser(request);
205             
206             // 取网店 shopcccode
207             ShopCcCodeEntity shopCcCodeEntity = ShopCcCode.getShopCcCode(settingEntity,request);
208
209
210             
211             String docCode = request.getParameter(SettingKey.DOCCODE) ;
212             
213             SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
214             SampleEntity sampleEntity =  sampleIfc.getSampleEntity(docCode,shopCcCodeEntity.getShopCcCode());
215             if (sampleEntity != null) {
216                 String imgUrl = imgData.getImageUrl(sampleEntity.getBannerImage(),settingEntity.getImageBannerWidth(),settingEntity.getImageBannerHeight(),settingEntity.isShowBannerOrgImage(),settingEntity.isFromCached(),request) ;
217                 
218                 json.addProperty("DocCode", sampleEntity.getDocCode());
219                 json.addProperty("DocDate", sdf.format( sampleEntity.getDocDate()));
220                 json.addProperty("Topic", sampleEntity.getTopic());
221                 json.addProperty("CityName", sampleEntity.getCityName());
222                 json.addProperty("BannerImage", imgUrl);
223                 JsonArray sampleIdJsonArray = new JsonArray();
224                 JsonObject sampleId01Json = new JsonObject();
225                 sampleId01Json.addProperty("SampleId", sampleEntity.getSampleId01());
226                 sampleId01Json.addProperty("SampleName", sampleEntity.getSampleId01Name());
227                 sampleIdJsonArray.add(sampleId01Json);
228                 
229                 JsonObject sampleId02Json = new JsonObject();
230                 sampleId02Json.addProperty("SampleId", sampleEntity.getSampleId02());
231                 sampleId02Json.addProperty("SampleName", sampleEntity.getSampleId02Name());
232                 sampleIdJsonArray.add(sampleId02Json);
233                 
234                 JsonObject sampleId03Json = new JsonObject();
235                 sampleId03Json.addProperty("SampleId", sampleEntity.getSampleId03());
236                 sampleId03Json.addProperty("SampleName", sampleEntity.getSampleId03Name());
237                 sampleIdJsonArray.add(sampleId03Json);
238
239                 JsonObject sampleId04Json = new JsonObject();
240                 sampleId04Json.addProperty("SampleId", sampleEntity.getSampleId04());
241                 sampleId04Json.addProperty("SampleName", sampleEntity.getSampleId04Name());
242                 sampleIdJsonArray.add(sampleId04Json);
243                 
244                 JsonObject sampleId05Json = new JsonObject();
245                 sampleId05Json.addProperty("SampleId", sampleEntity.getSampleId05());
246                 sampleId05Json.addProperty("SampleName", sampleEntity.getSampleId05Name());
247                 sampleIdJsonArray.add(sampleId05Json);
248
249                 JsonObject sampleId06Json = new JsonObject();
250                 sampleId06Json.addProperty("SampleId", sampleEntity.getSampleId06());
251                 sampleId06Json.addProperty("SampleName", sampleEntity.getSampleId06Name());
252                 sampleIdJsonArray.add(sampleId06Json);
253                 
254                 JsonObject sampleId07Json = new JsonObject();
255                 sampleId07Json.addProperty("SampleId", sampleEntity.getSampleId07());
256                 sampleId07Json.addProperty("SampleName", sampleEntity.getSampleId07Name());
257                 sampleIdJsonArray.add(sampleId07Json);
258                 
259                 json.add("SampleIds", sampleIdJsonArray);
260                 
261                 json.addProperty("HDMemo",sampleEntity.getHdMemo());
262                 json.addProperty("ShopCcCode",sampleEntity.getShopCcCode());
263                 json.addProperty("RewardTimes",sampleEntity.getRewardTimes());
264                 json.addProperty("IsVisit",sampleEntity.isVisit());
265                 
266                 JsonArray sampleItemJsonArray = new JsonArray();
267                 List<SampleItemEntity> sampleItemList =  sampleIfc.getSampleItemEntity( docCode) ;
268                 for (int j = 0 ;sampleItemList != null && j < sampleItemList.size();j++) {
269                     SampleItemEntity sampleItemEntity = sampleItemList.get(j) ;
270                     JsonObject sampleItemJson = new JsonObject();
271                     
272                     String itemImgUrl = imgData.getImageUrl(sampleItemEntity.getSampleImage(),settingEntity.getImageBannerWidth(),settingEntity.getImageBannerHeight(),settingEntity.isShowBannerOrgImage(),settingEntity.isFromCached(),request) ;
273     
274                     sampleItemJson.addProperty("DocCode", sampleItemEntity.getDocCode());
275                     sampleItemJson.addProperty("DocItem", sampleItemEntity.getDocItem());
276                     sampleItemJson.addProperty("RowId", sampleItemEntity.getRowId());
277                     sampleItemJson.addProperty("Location", sampleItemEntity.getLocation());
278                     sampleItemJson.addProperty("SampleImage", itemImgUrl);
279                     sampleItemJson.addProperty("ItemMemo", sampleItemEntity.getItemMemo());
280                     
281                     sampleItemJsonArray.add(sampleItemJson);
282                 }
283                 json.add("SampleItem", sampleItemJsonArray);
284                 
285                 JsonArray sampleRelProductJsonArray = new JsonArray();
286                 List<SampleRelProductEntity> sampleRelProductList =  sampleIfc.getSampleRelProductEntity(docCode,shopCcCodeEntity.getShopCcCode());
287                 for (int j = 0 ;sampleRelProductList != null && j < sampleRelProductList.size();j++) {
288                     SampleRelProductEntity sampleRelProductEntity = sampleRelProductList.get(j) ;
289                     JsonObject sampleItemJson = new JsonObject();
290                     
291                     String itemImgUrl = imgData.getImageUrl(sampleRelProductEntity.getRelPhotoPath(),settingEntity.getImageBannerWidth(),settingEntity.getImageBannerHeight(),settingEntity.isShowBannerOrgImage(),settingEntity.isFromCached(),request) ;
292     
293                     sampleItemJson.addProperty("DocCode", sampleRelProductEntity.getDocCode());
294                     sampleItemJson.addProperty("DocItem", sampleRelProductEntity.getDocItem());
295                     sampleItemJson.addProperty("RowId", sampleRelProductEntity.getRowId());
296                     sampleItemJson.addProperty("RefShopCcCode", sampleRelProductEntity.getRefShopCcCode());
297                     sampleItemJson.addProperty("RefShopMatCode", sampleRelProductEntity.getRefShopMatCode());
298                     sampleItemJson.addProperty("RelMatCode", sampleRelProductEntity.getRelMatCode());
299                     sampleItemJson.addProperty("RelMatName", sampleRelProductEntity.getRelMatName());
300                     sampleItemJson.addProperty("RelSpecial", sampleRelProductEntity.getRelSpecial());
301                     sampleItemJson.addProperty("RelPhotoPath",itemImgUrl);
302                     
303                     sampleRelProductJsonArray.add(sampleItemJson);
304                 }
305                 json.add("SampleRelProduct", sampleRelProductJsonArray);
306             }
307
308             this.printJson(response, json.toString());
309             return;
310             
311         } catch (DataAccessException e) {
312             e.printStackTrace();
313             errJson.addProperty("warning", (e.getCause()!=null?e.getCause().getMessage():e.getMessage()));
314             json.add("error", errJson);
315             this.printJson(response, json.toString());
316             return;
317         }catch (Exception e ){
318             e.printStackTrace();
319             errJson.addProperty("warning",(e.getCause()!=null?e.getCause().getMessage():e.getMessage()));
320             json.add("error", errJson);
321             this.printJson(response, json.toString());
322             return;
323         } finally {
324             SpObserver.setDBtoInstance();
325         }
326     }
327 }