AdminCustomerController.java 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767
  1. package com.iamberry.rst.controllers.cm;
  2. import com.iamberry.rst.core.cm.*;
  3. import com.iamberry.rst.core.order.Product;
  4. import com.iamberry.rst.core.order.ProductColor;
  5. import com.iamberry.rst.core.order.ProductType;
  6. import com.iamberry.rst.core.page.PagedResult;
  7. import com.iamberry.rst.core.sys.Admin;
  8. import com.iamberry.rst.faces.cm.*;
  9. import com.iamberry.rst.faces.product.ProductService;
  10. import com.iamberry.rst.faces.sys.SysService;
  11. import com.iamberry.rst.utils.AdminUtils;
  12. import com.iamberry.rst.utils.StitchAttrUtil;
  13. import com.iamberry.wechat.tools.ResponseJson;
  14. import org.apache.commons.lang.StringUtils;
  15. import org.apache.shiro.authz.annotation.RequiresPermissions;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.stereotype.Controller;
  18. import org.springframework.web.bind.annotation.RequestMapping;
  19. import org.springframework.web.bind.annotation.RequestParam;
  20. import org.springframework.web.bind.annotation.ResponseBody;
  21. import org.springframework.web.servlet.ModelAndView;
  22. import javax.servlet.http.HttpServletRequest;
  23. import java.util.Date;
  24. import java.util.List;
  25. /**
  26. * Created by wxm
  27. */
  28. @Controller
  29. @RequestMapping("/admin/customer")
  30. public class AdminCustomerController {
  31. @Autowired
  32. private CompanyInfoService companyInfoService;
  33. @Autowired
  34. private StoreInfoService storeInfoService;
  35. @Autowired
  36. private SalesOrderService salesOrderService;
  37. @Autowired
  38. private CustomerService customerService;
  39. @Autowired
  40. private ProductService productService;
  41. @Autowired
  42. private SysService sysService;
  43. @Autowired
  44. private ComplaintTypeInfoService complaintTypeInfoService;
  45. @Autowired
  46. private VisitService visitService;
  47. @Autowired
  48. private QuestionDescribeService questionDescribeService;
  49. @Autowired
  50. private RenewedService renewedService;
  51. @Autowired
  52. private RepairService repairService;
  53. @Autowired
  54. private BackGoodsService backGoodsService;
  55. @Autowired
  56. private FittingsInfoService fittingsInfoService;
  57. @Autowired
  58. private ReissueService reissueService;
  59. /**
  60. * 获取客诉列表
  61. *
  62. * @param request
  63. * @return
  64. */
  65. @RequiresPermissions("customer:list:customer")
  66. @RequestMapping("/_customer_list")
  67. public ModelAndView getCustomer(HttpServletRequest request, CustomerInfo customer,
  68. @RequestParam(value = "pageSize", defaultValue = "10", required = false) Integer pageSize,
  69. @RequestParam(value = "pageNO", defaultValue = "1", required = false) Integer pageNO,
  70. @RequestParam(value = "totalNum", defaultValue = "0", required = false) Integer totalNum) {
  71. ModelAndView mv = new ModelAndView("cm/customer/custome_list");
  72. // PagedResult<Customer> pagedResult = ptsBomService.listCustomer(pageNO, pageSize, ptsBom, totalNum == 0);
  73. // if (totalNum != 0) {
  74. // pagedResult.setTotal(totalNum);
  75. // }
  76. // //获取产品集合,用于页面选择产品
  77. // List<Produce> list = produceService.getProduceList();
  78. // mv.addObject("produceList", list);
  79. // StitchAttrUtil.setModelAndView(customer, mv, "/admin/bom/_bom_list", pagedResult);
  80. return mv;
  81. }
  82. /**
  83. * 跳转到添加客诉页面
  84. *
  85. * @return
  86. */
  87. @RequiresPermissions("customer:add:customer")
  88. @RequestMapping(value = "/to_add_customer")
  89. public ModelAndView toAddCustomer(HttpServletRequest request) {
  90. ModelAndView mv = new ModelAndView("cm/customer/add_customer");
  91. //获取产品集合,用于页面选择产品
  92. // List<Produce> produceList = produceService.getProduceList();
  93. // mv.addObject("produceList", produceList);
  94. return mv;
  95. }
  96. /**
  97. * 搜索订单列表弹出框
  98. *
  99. * @return
  100. */
  101. @RequiresPermissions("customer:add:customer")
  102. @RequestMapping(value = "/select_order")
  103. public ModelAndView selectOrder(HttpServletRequest request) {
  104. ModelAndView mv = new ModelAndView("cm/customer/order_list");
  105. //获取销售公司
  106. List<CompanyInfo> companyInfoList = companyInfoService.listCompanyInfo(new CompanyInfo());
  107. mv.addObject("companyInfoList", companyInfoList);
  108. return mv;
  109. }
  110. /**
  111. * 获取店铺集合
  112. *
  113. * @param request
  114. * @param storeInfo
  115. * @return
  116. */
  117. @ResponseBody
  118. @RequiresPermissions("customer:add:customer")
  119. @RequestMapping(value = "/select_storeInfo")
  120. public ResponseJson listStoreInfo(HttpServletRequest request, StoreInfo storeInfo) {
  121. storeInfo.setStoreStatus(1);
  122. List<StoreInfo> storeInfoList = storeInfoService.listStore(storeInfo);
  123. if (storeInfoList == null || storeInfoList.size() < 1) {
  124. return new ResponseJson(500, "查询失败", 500);
  125. } else {
  126. ResponseJson rj = new ResponseJson(200, "查询成功", 200);
  127. rj.addResponseKeyValue("storeInfoList", storeInfoList);
  128. return rj;
  129. }
  130. }
  131. /**
  132. * 获取订单集合
  133. *
  134. * @param request
  135. * @param salesOrder
  136. * @return
  137. */
  138. @ResponseBody
  139. @RequiresPermissions("customer:add:customer")
  140. @RequestMapping(value = "/select_salesOrder")
  141. public ResponseJson listOrder(HttpServletRequest request, SalesOrder salesOrder) {
  142. List<SalesOrder> salesOrderList = salesOrderService.listSalesOrder(salesOrder);
  143. for (SalesOrder order : salesOrderList) {
  144. SalesOrderItem salesOrderItem = new SalesOrderItem();
  145. salesOrderItem.setItemOrderId(order.getSalesId());
  146. List<SalesOrderItem> salesOrderItemList = salesOrderService.listSalesOrderItem(salesOrderItem);
  147. order.setSalesOrderItemList(salesOrderItemList);
  148. }
  149. if (salesOrderList == null || salesOrderList.size() < 1) {
  150. return new ResponseJson(500, "查询失败", 500);
  151. } else {
  152. ResponseJson rj = new ResponseJson(200, "查询成功", 200);
  153. rj.addResponseKeyValue("salesOrderList", salesOrderList);
  154. return rj;
  155. }
  156. }
  157. /**
  158. * 分页查询客诉列表信息
  159. *
  160. * @param request
  161. * @param customerInfo
  162. * @param pageSize
  163. * @param pageNO
  164. * @param totalNum
  165. * @return
  166. * @throws Exception
  167. */
  168. @RequiresPermissions("customer:select:customer")
  169. @RequestMapping("/select_customer_list")
  170. public ModelAndView selectCustomerList(HttpServletRequest request, CustomerInfo customerInfo,
  171. @RequestParam(value = "pageSize", defaultValue = "10", required = false) Integer pageSize,
  172. @RequestParam(value = "pageNO", defaultValue = "1", required = false) Integer pageNO,
  173. @RequestParam(value = "totalNum", defaultValue = "0", required = false) Integer totalNum) throws Exception {
  174. ModelAndView mv = new ModelAndView("cm/customer/custome_list");
  175. PagedResult<CustomerInfo> pagedResult = customerService.listCustomer(pageNO, pageSize, customerInfo, totalNum == 0);
  176. if (totalNum != 0) {
  177. pagedResult.setTotal(totalNum);
  178. }
  179. ProductType productType = new ProductType();
  180. productType.setTypeStatus(1);
  181. //查询产品类型集合
  182. List<ProductType> typeList = productService.listProductType(productType);
  183. //查询客诉类型集合
  184. List<ComplaintTypeInfo> complaintTypeList = complaintTypeInfoService.listComplaintTypeInfo(new ComplaintTypeInfo());
  185. //查询跟进客服集合
  186. Admin admin = new Admin();
  187. admin.setAdminStatus(1);
  188. List<Admin> adminList = sysService.listSelectAdmin(admin);
  189. mv.addObject("typeList", typeList);
  190. mv.addObject("complaintTypeList", complaintTypeList);
  191. mv.addObject("adminList", adminList);
  192. StitchAttrUtil.setModelAndView(customerInfo, mv, "/admin/customer/select_customer_list", pagedResult);
  193. return mv;
  194. }
  195. /**
  196. * 进入客诉基本信息页面
  197. *
  198. * @param request
  199. * @return
  200. * @throws Exception
  201. */
  202. @ResponseBody
  203. @RequiresPermissions("customer:select:customer")
  204. @RequestMapping("/get_customer_info")
  205. public ModelAndView getCustomerInfo(HttpServletRequest request) throws Exception {
  206. ModelAndView mv = new ModelAndView("cm/customer/custome_detail");
  207. String customerId = request.getParameter("customerId");
  208. if (!StringUtils.isNotEmpty(customerId)) {
  209. return mv;
  210. }
  211. CustomerInfo customerInfo = new CustomerInfo();
  212. customerInfo.setCustomerId(Integer.parseInt(customerId));
  213. CustomerCommon customerCommon = customerService.getCustomerInfo(customerInfo);
  214. mv.addObject("customerCommon",customerCommon);
  215. return mv;
  216. }
  217. /**
  218. * 添加回访信息
  219. *
  220. * @param request
  221. * @param visit
  222. * @return
  223. */
  224. @ResponseBody
  225. @RequiresPermissions("customer:add:visit")
  226. @RequestMapping("/add_visit_info")
  227. public ResponseJson addVisitInfo(HttpServletRequest request, Visit visit) throws Exception {
  228. String visitAdminId = request.getParameter("visitAdminId");
  229. if (!StringUtils.isNotEmpty(visitAdminId)) {
  230. return new ResponseJson(500, "请选择回访人!", 500);
  231. }
  232. visit.setAdminId(Integer.parseInt(visitAdminId));
  233. visit.setVisitStatus(1);
  234. visit.setVisitCreateTime(new Date());
  235. int num = visitService.addVisitInfo(visit, visit.getCustomerId());
  236. if (num > 0) {
  237. return new ResponseJson(200, "修改成功!", 200);
  238. } else {
  239. return new ResponseJson(500, "修改失败!", 500);
  240. }
  241. }
  242. /**
  243. * 修改客诉状态为已解决
  244. *
  245. * @param request
  246. * @return
  247. */
  248. @ResponseBody
  249. @RequiresPermissions("customer:update:customerIsSolve")
  250. @RequestMapping("/update_customerIsSolve")
  251. public ResponseJson updateCustomerIsSolve(HttpServletRequest request) throws Exception {
  252. String customerId = request.getParameter("customerId");
  253. if (!StringUtils.isNotEmpty(customerId)) {
  254. return new ResponseJson(500, "该客诉信息不存在!", 500);
  255. }
  256. //根据id获取客诉信息
  257. CustomerInfo customer = customerService.getCustomerInfo(Integer.parseInt(customerId));
  258. if (customer == null) {
  259. return new ResponseJson(500, "该客诉信息不存在!", 500);
  260. }
  261. if (customer.getCustomerIsSolve().intValue() != 2) {
  262. return new ResponseJson(500, "该客诉信息不能修改为已解决状态!", 500);
  263. }
  264. CustomerInfo customerInfo = new CustomerInfo();
  265. customerInfo.setCustomerId(Integer.parseInt(customerId));
  266. customerInfo.setCustomerIsSolve(1);
  267. //修改客诉信息
  268. int num = customerService.updateCustomerInfo(customerInfo);
  269. if (num > 0) {
  270. return new ResponseJson(200, "修改成功!", 200);
  271. } else {
  272. return new ResponseJson(500, "修改失败!", 500);
  273. }
  274. }
  275. /**
  276. * 查询客服
  277. *
  278. * @param request
  279. * @return
  280. */
  281. @ResponseBody
  282. @RequiresPermissions("customer:add:customer")
  283. @RequestMapping("/select_sys_admin")
  284. public ResponseJson selectSysAdmin(HttpServletRequest request) throws Exception {
  285. ResponseJson rj = new ResponseJson(200, "修改成功!", 200);
  286. Integer adminId = AdminUtils.getLoginAdminId();
  287. Admin admin = new Admin();
  288. List<Admin> adminList = sysService.listSelectAdmin(admin);
  289. if (adminList.size() > 0) {
  290. rj.addResponseKeyValue("adminList", adminList);
  291. rj.addResponseKeyValue("adminId", adminId);
  292. return rj;
  293. } else {
  294. return new ResponseJson(500, "查询失败!", 500);
  295. }
  296. }
  297. /**
  298. * 查询产品类型
  299. *
  300. * @param request
  301. * @return
  302. */
  303. @ResponseBody
  304. @RequiresPermissions("customer:add:customer")
  305. @RequestMapping("/select_produce_type")
  306. public ResponseJson selectProduceType(HttpServletRequest request) throws Exception {
  307. ResponseJson rj = new ResponseJson(200, "修改成功!", 200);
  308. ProductType productType = new ProductType();
  309. List<ProductType> productTypeList = productService.listProductType(productType);
  310. if (productTypeList != null && productTypeList.size() > 0) {
  311. rj.addResponseKeyValue("productTypeList", productTypeList);
  312. return rj;
  313. } else {
  314. return new ResponseJson(500, "查询失败!", 500);
  315. }
  316. }
  317. /**
  318. * 查询产品
  319. *
  320. * @param request
  321. * @return
  322. */
  323. @ResponseBody
  324. @RequiresPermissions("customer:add:customer")
  325. @RequestMapping("/select_produce")
  326. public ResponseJson selectProduce(HttpServletRequest request) {
  327. ResponseJson rj = new ResponseJson(200, "查询成功!", 200);
  328. Product product = new Product();
  329. List<Product> productList = productService.listProduce(product);
  330. for (Product pro : productList) {
  331. ProductColor productColor = new ProductColor();
  332. productColor.setColorProductId(pro.getProductId());
  333. List<ProductColor> productColorList = productService.listProduceColor(productColor);
  334. pro.setColorList(productColorList);
  335. }
  336. if (productList != null && productList.size() > 0) {
  337. rj.addResponseKeyValue("productList", productList);
  338. return rj;
  339. } else {
  340. return new ResponseJson(500, "查询失败!", 500);
  341. }
  342. }
  343. /**
  344. * 查询产品
  345. *
  346. * @param request
  347. * @return
  348. */
  349. @ResponseBody
  350. @RequiresPermissions("customer:add:customer")
  351. @RequestMapping("/select_produce_fittings")
  352. public ResponseJson selectProduceFittings(HttpServletRequest request, FittingsInfo fittingsInfo) {
  353. ResponseJson rj = new ResponseJson(200, "查询成功!", 200);
  354. List<FittingsInfo> produceFittingsList = fittingsInfoService.listFittings(fittingsInfo);
  355. if (produceFittingsList != null && produceFittingsList.size() > 0) {
  356. rj.addResponseKeyValue("produceFittingsList", produceFittingsList);
  357. return rj;
  358. } else {
  359. return new ResponseJson(500, "查询失败!", 500);
  360. }
  361. }
  362. /**
  363. * 添加客诉
  364. *
  365. * @param request
  366. * @return
  367. */
  368. @ResponseBody
  369. @RequiresPermissions("customer:add:customer")
  370. @RequestMapping("/save_customer")
  371. public ResponseJson addCustomer(HttpServletRequest request, CustomerInfo customerInfo) {
  372. Integer flag = 0;
  373. flag = customerService.saveCustomerInfo(customerInfo);
  374. // if (produceFittingsList != null && produceFittingsList.size()> 0) {
  375. //
  376. // } else {
  377. // }
  378. return new ResponseJson(500, "查询失败!", 500);
  379. }
  380. /**
  381. * 验证方法
  382. *
  383. * @param customerInfo
  384. * @return
  385. */
  386. public boolean isValiData(CustomerInfo customerInfo) {
  387. boolean flag = true;
  388. // if (customerInfo.getBomName() == null || "".equals(customerInfo.getBomName())) {
  389. // return false;
  390. // }
  391. return flag;
  392. }
  393. /**
  394. * 添加回访完成内容
  395. *
  396. * @param request
  397. * @param visit
  398. * @return
  399. */
  400. @ResponseBody
  401. @RequiresPermissions("customer:update:visit")
  402. @RequestMapping("/update_visit_finish")
  403. public ResponseJson updateVisitFinish(HttpServletRequest request, Visit visit) throws Exception {
  404. String customerId = request.getParameter("finish_customerId");
  405. if (!StringUtils.isNotEmpty(customerId)) {
  406. return new ResponseJson(500, "该客诉信息不存在!", 500);
  407. }
  408. visit.setCustomerId(Integer.parseInt(customerId));
  409. visit.setVisitStatus(2);
  410. //修改回访信息内容
  411. int num = visitService.updateVisit(visit);
  412. if (num > 0) {
  413. return new ResponseJson(200, "添加成功!", 200);
  414. } else {
  415. return new ResponseJson(500, "添加失败!", 500);
  416. }
  417. }
  418. /**
  419. * 获取回访信息详情
  420. *
  421. * @param request
  422. * @return
  423. */
  424. @ResponseBody
  425. @RequiresPermissions("customer:get:visit")
  426. @RequestMapping("/get_visit_info")
  427. public ResponseJson getVisitInfo(HttpServletRequest request) throws Exception {
  428. String customerId = request.getParameter("customerId");
  429. if (!StringUtils.isNotEmpty(customerId)) {
  430. return new ResponseJson(500, "该客诉信息不存在!", 500);
  431. }
  432. Visit visit = new Visit();
  433. visit.setCustomerId(Integer.parseInt(customerId));
  434. //查询回访信息集合
  435. List<Visit> visitList = visitService.listVisit(visit);
  436. if (visitList == null || visitList.size() == 0) {
  437. return new ResponseJson(500, "该客诉没有回访信息!", 500);
  438. }
  439. visit = visitList.get(0);
  440. ResponseJson rj = new ResponseJson(200, "查询成功", 200);
  441. rj.addResponseKeyValue("visit", visit);
  442. return rj;
  443. }
  444. /**
  445. * 获取问题描述信息
  446. *
  447. * @param request
  448. * @return
  449. */
  450. @ResponseBody
  451. @RequiresPermissions("customer:get:describe")
  452. @RequestMapping("/get_describe_info")
  453. public ResponseJson getDescribeInfo(HttpServletRequest request) throws Exception {
  454. String customerId = request.getParameter("customerId");
  455. if (!StringUtils.isNotEmpty(customerId)) {
  456. return new ResponseJson(500, "该客诉信息不存在!", 500);
  457. }
  458. QuestionDescribe describe = new QuestionDescribe();
  459. describe.setCustomerId(Integer.parseInt(customerId));
  460. //查询问题集合
  461. List<QuestionDescribe> questionList = questionDescribeService.listQuestionDescribe(describe);
  462. if (questionList == null || questionList.size() == 0) {
  463. return new ResponseJson(500, "该客诉信息没有问题描述!", 500);
  464. }
  465. describe = questionList.get(0);
  466. ResponseJson rj = new ResponseJson(200, "查询成功", 200);
  467. rj.addResponseKeyValue("describe", describe);
  468. return rj;
  469. }
  470. /**
  471. * 获取换新详情
  472. *
  473. * @param request
  474. * @return
  475. */
  476. @ResponseBody
  477. @RequiresPermissions("customer:get:renewed")
  478. @RequestMapping("/get_renewed_info")
  479. public ResponseJson getRenewedInfo(HttpServletRequest request) throws Exception {
  480. String customerId = request.getParameter("customerId");
  481. if (!StringUtils.isNotEmpty(customerId)) {
  482. return new ResponseJson(500, "该客诉信息不存在!", 500);
  483. }
  484. Renewed renewed = new Renewed();
  485. renewed.setCustomerId(Integer.parseInt(customerId));
  486. renewed.setRenewedState(1);
  487. //获取换新详情和检测信息
  488. renewed = renewedService.getRenewedInfo(renewed);
  489. if (renewed == null) {
  490. return new ResponseJson(500, "该客诉没有换新信息!", 500);
  491. } else {
  492. ClosedFitting closedFitting = new ClosedFitting();
  493. closedFitting.setRelationId(renewed.getRenewedId());
  494. //获取寄回配件集合
  495. List<ClosedFitting> fittingList = renewedService.listClosedFitting(closedFitting);
  496. if (fittingList != null && fittingList.size() > 0) {
  497. renewed.setClosedFittings(fittingList);
  498. }
  499. ResponseJson rj = new ResponseJson(200, "查询成功", 200);
  500. rj.addResponseKeyValue("renewed", renewed);
  501. return rj;
  502. }
  503. }
  504. /**
  505. * 修改换新信息
  506. *
  507. * @param request
  508. * @param renewed
  509. * @return
  510. * @throws Exception
  511. */
  512. @ResponseBody
  513. @RequiresPermissions("customer:update:renewed")
  514. @RequestMapping("/update_renewed_info")
  515. public ResponseJson updateRenewedInfo(HttpServletRequest request, Renewed renewed) throws Exception {
  516. if (!StringUtils.isNotEmpty(renewed.getRenewedId().toString())) {
  517. return new ResponseJson(500, "该换新信息不能修改!", 500);
  518. }
  519. if (StringUtils.isNotEmpty(renewed.getRenewedBackPostage().toString())) {
  520. renewed.setRenewedBackPostage(renewed.getRenewedBackPostage().intValue() * 100);
  521. }
  522. //修改换新信息
  523. int num = renewedService.updateRenewedInfo(renewed);
  524. if (num > 0) {
  525. return new ResponseJson(200, "修改成功!", 200);
  526. } else {
  527. return new ResponseJson(500, "修改失败!", 500);
  528. }
  529. }
  530. /**
  531. * 进入修改维修页面
  532. *
  533. * @param request
  534. * @return
  535. * @throws Exception
  536. */
  537. @ResponseBody
  538. @RequiresPermissions("customer:update:repair")
  539. @RequestMapping("/_update_repair")
  540. public ResponseJson updateRepairUI(HttpServletRequest request) throws Exception {
  541. String customerId = request.getParameter("customerId");
  542. if (!StringUtils.isNotEmpty(customerId)) {
  543. return new ResponseJson(500, "该客诉信息不存在!", 500);
  544. }
  545. Repair repair = new Repair();
  546. repair.setCustomerId(Integer.parseInt(customerId));
  547. repair.setRepairState(1);
  548. //获取维修详情和品质检测信息
  549. repair = repairService.getRepairInfo(repair);
  550. if (repair == null) {
  551. return new ResponseJson(500, "该客诉没有维修信息!", 500);
  552. } else {
  553. ClosedFitting closedFitting = new ClosedFitting();
  554. closedFitting.setRelationId(repair.getRepairId());
  555. //获取寄回配件集合
  556. List<ClosedFitting> fittingList = renewedService.listClosedFitting(closedFitting);
  557. if (fittingList != null && fittingList.size() > 0) {
  558. repair.setClosedFittings(fittingList);
  559. }
  560. ResponseJson rj = new ResponseJson(200, "查询成功", 200);
  561. rj.addResponseKeyValue("repair", repair);
  562. return rj;
  563. }
  564. }
  565. /**
  566. * 修改维修处理信息
  567. *
  568. * @param request
  569. * @param repair
  570. * @return
  571. * @throws Exception
  572. */
  573. @ResponseBody
  574. @RequiresPermissions("customer:update:repair")
  575. @RequestMapping("/update_repair_info")
  576. public ResponseJson updateRepairInfo(HttpServletRequest request, Repair repair) throws Exception {
  577. if (!StringUtils.isNotEmpty(repair.getRepairId().toString())) {
  578. return new ResponseJson(500, "该换新信息不能修改!", 500);
  579. }
  580. String provinceNumber = request.getParameter("repairProvinceNumber");
  581. String cityNumber = request.getParameter("repairCityNumber");
  582. String areaNumber = request.getParameter("repairAreaNumber");
  583. if (StringUtils.isNotEmpty(provinceNumber)) {
  584. repair.setProvinceNumber(Integer.parseInt(provinceNumber));
  585. }
  586. if (StringUtils.isNotEmpty(cityNumber)) {
  587. repair.setCityNumber(Integer.parseInt(cityNumber));
  588. }
  589. if (StringUtils.isNotEmpty(areaNumber)) {
  590. repair.setAreaNumber(Integer.parseInt(areaNumber));
  591. }
  592. if (StringUtils.isNotEmpty(repair.getRepairBackPostage().toString())) {
  593. repair.setRepairBackPostage(repair.getRepairBackPostage().intValue() * 100);
  594. }
  595. //修改维修信息
  596. int num = repairService.updateRepairInfo(repair);
  597. if (num > 0) {
  598. return new ResponseJson(200, "修改成功!", 200);
  599. } else {
  600. return new ResponseJson(500, "修改失败!", 500);
  601. }
  602. }
  603. /**
  604. * 进入修改售后退货页面
  605. *
  606. * @param request
  607. * @return
  608. * @throws Exception
  609. */
  610. @ResponseBody
  611. @RequiresPermissions("customer:update:BackGoods")
  612. @RequestMapping("/_update_back_goods")
  613. public ResponseJson updateBackGoodsUI(HttpServletRequest request) throws Exception {
  614. String customerId = request.getParameter("customerId");
  615. if (!StringUtils.isNotEmpty(customerId)) {
  616. return new ResponseJson(500, "该客诉信息不存在!", 500);
  617. }
  618. BackGoods backGoods = new BackGoods();
  619. backGoods.setCustomerId(Integer.parseInt(customerId));
  620. //获取售后退货信息
  621. backGoods = customerService.getBackGoods(backGoods);
  622. if (backGoods == null) {
  623. return new ResponseJson(500, "该客诉没有售后退货信息!", 500);
  624. } else {
  625. ResponseJson rj = new ResponseJson(200, "查询成功", 200);
  626. rj.addResponseKeyValue("backGoods", backGoods);
  627. return rj;
  628. }
  629. }
  630. /**
  631. * 修改售后退货信息
  632. *
  633. * @param request
  634. * @param backGoods
  635. * @return
  636. * @throws Exception
  637. */
  638. @ResponseBody
  639. @RequiresPermissions("customer:update:backGoods")
  640. @RequestMapping("/update_back_goods")
  641. public ResponseJson updateBackGoods(HttpServletRequest request, BackGoods backGoods) throws Exception {
  642. if (!StringUtils.isNotEmpty(backGoods.getBackGoodsId().toString())) {
  643. return new ResponseJson(500, "该售后退货信息不能修改!", 500);
  644. }
  645. if (StringUtils.isNotEmpty(backGoods.getBackGoodsBackPostage().toString())) {
  646. backGoods.setBackGoodsBackPostage(backGoods.getBackGoodsBackPostage().intValue() * 100);
  647. }
  648. int num = backGoodsService.updateBackGoods(backGoods);
  649. if (num > 0) {
  650. return new ResponseJson(200, "修改成功!", 200);
  651. } else {
  652. return new ResponseJson(500, "修改失败!", 500);
  653. }
  654. }
  655. /**
  656. * 进入修改补寄信息页面
  657. *
  658. * @param request
  659. * @return
  660. */
  661. @ResponseBody
  662. @RequiresPermissions("customer:update:reissue")
  663. @RequestMapping("/_update_reissue")
  664. public ResponseJson updateReissueUI(HttpServletRequest request) {
  665. String customerId = request.getParameter("customerId");
  666. if (!StringUtils.isNotEmpty(customerId)) {
  667. return new ResponseJson(500, "该客诉信息不存在!", 500);
  668. }
  669. Reissue reissue = new Reissue();
  670. reissue.setCustomerId(Integer.parseInt(customerId));
  671. //获取售后补寄信息
  672. reissue = customerService.getReissue(reissue);
  673. if (reissue == null) {
  674. return new ResponseJson(500, "该客诉没有售后退货信息!", 500);
  675. } else {
  676. ResponseJson rj = new ResponseJson(200, "查询成功", 200);
  677. rj.addResponseKeyValue("reissue", reissue);
  678. return rj;
  679. }
  680. }
  681. /**
  682. * 修改售后补寄信息
  683. *
  684. * @param request
  685. * @param reissue
  686. * @return
  687. * @throws Exception
  688. */
  689. @ResponseBody
  690. @RequiresPermissions("customer:update:reissue")
  691. @RequestMapping("/update_reissue_info")
  692. public ResponseJson updateReissueInfo(HttpServletRequest request, Reissue reissue) throws Exception {
  693. String provinceNumber = request.getParameter("reissueProvinceNumber");
  694. String cityNumber = request.getParameter("reissueCityNumber");
  695. String areaNumber = request.getParameter("reissueAreaNumber");
  696. if (!StringUtils.isNotEmpty(reissue.getReissueId().toString())) {
  697. return new ResponseJson(500, "该售后补寄信息不能修改!", 500);
  698. }
  699. if (StringUtils.isNotEmpty(provinceNumber)) {
  700. reissue.setProvinceNumber(Integer.parseInt(provinceNumber));
  701. }
  702. if (StringUtils.isNotEmpty(cityNumber)) {
  703. reissue.setCityNumber(Integer.parseInt(cityNumber));
  704. }
  705. if (StringUtils.isNotEmpty(areaNumber)) {
  706. reissue.setAreaNumber(Integer.parseInt(areaNumber));
  707. }
  708. //修改售后补寄信息
  709. int num = reissueService.updateReissueInfo(reissue);
  710. if (num > 0) {
  711. return new ResponseJson(200, "修改成功!", 200);
  712. } else {
  713. return new ResponseJson(500, "修改失败!", 500);
  714. }
  715. }
  716. }