123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503 |
- package com.iamberry.rst.controllers.cm;
- import com.iamberry.rst.core.cm.CompanyInfo;
- import com.iamberry.rst.core.fm.*;
- import com.iamberry.rst.core.order.Product;
- import com.iamberry.rst.core.order.ProductColor;
- import com.iamberry.rst.core.order.ProductType;
- import com.iamberry.rst.core.page.PageRequest;
- import com.iamberry.rst.core.page.PagedResult;
- import com.iamberry.rst.core.sys.Admin;
- import com.iamberry.rst.core.tools.LogisticsInfo;
- import com.iamberry.rst.faces.cm.CompanyInfoService;
- import com.iamberry.rst.faces.cm.SalesOrderService;
- import com.iamberry.rst.faces.fm.AwaitingSignclosedProductInfoService;
- import com.iamberry.rst.faces.fm.ComplaintDetectInfoService;
- import com.iamberry.rst.faces.fm.ComplaintSignclosedInfoService;
- import com.iamberry.rst.faces.fm.ComplaintSignclosedProductInfoService;
- import com.iamberry.rst.faces.product.ProductService;
- import com.iamberry.rst.service.fm.mapper.ComplaintSignclosedInfoMapper;
- import com.iamberry.rst.utils.AdminUtils;
- import com.iamberry.rst.utils.StitchAttrUtil;
- import com.iamberry.wechat.tools.ResponseJson;
- import org.apache.shiro.authz.annotation.RequiresPermissions;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.bind.annotation.ResponseBody;
- import org.springframework.web.servlet.ModelAndView;
- import javax.servlet.http.HttpServletRequest;
- import java.text.SimpleDateFormat;
- import java.util.Calendar;
- import java.util.Date;
- import java.util.List;
- /**
- * Created by wxm on 2017/8/29.
- */
- @Controller
- @RequestMapping("/admin/detect")
- public class AdminDetectController {
- // private
- @Autowired
- private ComplaintDetectInfoService complaintDetectInfoService;
- @Autowired
- private ProductService productService;
- @Autowired
- private ComplaintSignclosedInfoService complaintSignclosedInfoService;
- @Autowired
- private ComplaintSignclosedProductInfoService signclosedProductInfoService;
- @Autowired
- private AwaitingSignclosedProductInfoService awaitingSignclosedProductService;
- @Autowired
- private CompanyInfoService companyInfoService;
- @Autowired
- private SalesOrderService salesOrderService;
- /**
- * 跳转到添加检测记录页面
- *
- * @return
- */
- @RequiresPermissions("detect:add:detect")
- @RequestMapping(value = "/to_add_detect")
- public ModelAndView toAddDetect(HttpServletRequest request) {
- ModelAndView mv = new ModelAndView("cm/inspection/add_detect");
- Product product = new Product();
- List<Product> productList = productService.listProductAndColorAndfittings(product);
- ProductColor color = new ProductColor();
- color.setColorProductId(product.getProductId());
- List<ProductColor> productColorList = productService.listProduceColor(color);
- mv.addObject("productColorList",productColorList);
- mv.addObject("productList",productList);
- //获取所有维修内容
- DetectionBasis detectionBasis = new DetectionBasis();
- List<DetectionBasis> detectionBasisList = complaintDetectInfoService.listDetectionBasis(detectionBasis);
- mv.addObject("detectionBasisList",detectionBasisList);
- List<CompanyInfo> companyInfoList = companyInfoService.listCompanyInfo(new CompanyInfo());
- mv.addObject("companyInfoList",companyInfoList);
- return mv;
- }
- /**
- * 客诉 - 查询品质检测列表
- * @param request
- * @return
- */
- @RequiresPermissions("detect:select:detect")
- @RequestMapping("/select_detect_list")
- public ModelAndView selectDetectList(HttpServletRequest request,
- @RequestParam(value = "pageSize", defaultValue = "5", required = false) Integer pageSize,
- @RequestParam(value = "pageNO", defaultValue = "1", required = false) Integer pageNO,
- @RequestParam(value = "totalNum", defaultValue = "0", required = false) Integer totalNum,
- ComplaintDetectInfo detect) {
- ModelAndView mv = new ModelAndView("cm/inspection/detect_list");
- // 封装请求数据
- PageRequest<ComplaintDetectInfo> pageRequest = new PageRequest<>(detect, pageNO, pageSize, totalNum == 0);
- // 查询订单列表
- PagedResult<ComplaintDetectInfo> result = complaintDetectInfoService.listComplaintDetect(pageRequest);
- if (totalNum != 0) {
- result.setTotal(totalNum);
- }
- Calendar date = Calendar.getInstance();
- for (ComplaintDetectInfo info : result.getDataList()){
- date.setTime(info.getDetectCreateTime());
- date.set(Calendar.DATE, date.get(Calendar.DATE) + 6);
- info.setMaintenanceCutTime(date.getTime());
- }
- //获取所有产品类型
- ProductType productType = new ProductType();
- List<ProductType> productTypeList = productService.listProductType(productType);
- mv.addObject("productTypeList",productTypeList);
- Product product = new Product();
- List<Product> productList = productService.listProductAndColorAndfittings(product);
- mv.addObject("productList",productList);
- StitchAttrUtil.getSa().setModelAndView(detect, mv, "/admin/detect/select_detect_list", result);
- return mv;
- }
- /**
- * 添加检测信息
- * @param request
- * @return
- * @throws Exception
- */
- @RequiresPermissions("detect:add:detect")
- @ResponseBody
- @RequestMapping("/add_detect")
- public ResponseJson addDetect(HttpServletRequest request, ComplaintDetectInfo detectInfo) throws Exception {
- ResponseJson msg = new ResponseJson();
- if(detectInfo == null){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }
- /*String itemDate = request.getParameter("itemDate");
- if(itemDate == null ){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }*/
- detectInfo.setDetectState(1);
- detectInfo.setIsMaintenance(0);
- detectInfo.setDetectRenovation(0);
- detectInfo.setDetectProcessingResults(0);
- if(complaintDetectInfoService.insert(detectInfo) > 0){
- msg.setResultCode(200);
- msg.setReturnCode(200);
- }else{
- msg.setResultCode(500);
- msg.setReturnCode(500);
- }
- return msg;
- }
- /**
- * 跳转到添加检测备注页面
- *
- * @return
- */
- /*@RequiresPermissions("info:update:info")
- @RequestMapping(value = "/to_add_remark")
- public ModelAndView toAddRemark(HttpServletRequest request) {
- ModelAndView mv = new ModelAndView("cm/inspection/add_remark");
- String detectItemId = request.getParameter("detectItemId");
- if(detectItemId == null || detectItemId.equals("")){
- return mv;
- }
- ComplaintDetectItem detectItem = complaintDetectInfoService.getDetectItemById(Integer.valueOf(detectItemId));
- mv.addObject("detectItemId",detectItemId);
- mv.addObject("detectItem",detectItem);
- return mv;
- }*/
- /**
- * 跳转到添加修改转入信息页面
- *
- * @return
- *//*
- @RequiresPermissions("remark:add:remark")
- @RequestMapping(value = "/to_produced_info")
- public ModelAndView toProducedInfo(HttpServletRequest request) {
- ModelAndView mv = new ModelAndView("cm/inspection/update_produced_info");
- String detectId = request.getParameter("detectId");
- String state = request.getParameter("state");
- if(detectId == null || detectId.equals("")){
- return mv;
- }
- ComplaintDetectInfo detectInfo = complaintDetectInfoService.getComplaintDetectById(Integer.valueOf(detectId));
- mv.addObject("detectId",detectId);
- mv.addObject("detectInfo",detectInfo);
- mv.addObject("state",state);
- return mv;
- }*/
- /**
- * 跳转到检测完成页面
- *
- * @return
- */
- /*@RequiresPermissions("complete:update:complete")
- @RequestMapping(value = "/to_detect_complete")
- public ModelAndView toDetectComplete(HttpServletRequest request) {
- ModelAndView mv = new ModelAndView("cm/inspection/detect_complete");
- String detectId = request.getParameter("detectId");
- if(detectId == null || detectId.equals("")){
- return mv;
- }
- ComplaintDetectInfo detectInfo = complaintDetectInfoService.getComplaintDetectById(Integer.valueOf(detectId));
- mv.addObject("detectId",detectId);
- mv.addObject("detectInfo",detectInfo);
- return mv;
- }*/
- /**
- * 修改检测信息备注
- * @param request
- * @return
- * @throws Exception
- */
- @RequiresPermissions("remark:add:remark")
- @ResponseBody
- @RequestMapping("/update")
- public ResponseJson addRemark(HttpServletRequest request, ComplaintDetectInfo detectInfo) throws Exception {
- ResponseJson msg = new ResponseJson();
- if(detectInfo == null){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }
- if(detectInfo.getDetectId() == null){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }
- Integer num = complaintDetectInfoService.updateDetectById(detectInfo);
- if (num < 1) {
- msg.setResultCode(500);
- msg.setReturnCode(500);
- } else {
- msg.setResultCode(200);
- msg.setReturnCode(200);
- }
- return msg;
- }
- /**
- * 跳转到查看仓储进度页面
- *
- * @return
- */
- @RequiresPermissions("complete:update:complete")
- @RequestMapping(value = "/to_view_progress")
- public ModelAndView toViewProgress(HttpServletRequest request) {
- ModelAndView mv = new ModelAndView("cm/inspection/view_progress");
- String signclosedId = request.getParameter("signclosedId");
- if(signclosedId == null || signclosedId.equals("")){
- return mv;
- }
- if(Integer.valueOf(signclosedId) == 0){
- return mv;
- }
- List<SignclosedProductInfo> signclosedProductInfo = null;
- List<AwaitingSignclosedProductInfo> awaitingSignclosedProductInfo = null;
- ComplaintSignclosedInfo complaintSignclosedInfo = complaintSignclosedInfoService.getSignclosedById(Integer.valueOf(signclosedId));
- signclosedProductInfo = signclosedProductInfoService.listSignclosedById(complaintSignclosedInfo.getSignclosedId());
- mv.addObject("signclosedProductInfo",signclosedProductInfo);
- mv.addObject("signclosedInfo",complaintSignclosedInfo);
- mv.addObject("signclosedId",signclosedId);
- return mv;
- }
- /**
- * 跳转到查看物流信息页面
- *
- * @return
- */
- @RequestMapping(value = "/to_view_logistics")
- public ModelAndView toViewLogistics(HttpServletRequest request) {
- ModelAndView mv = new ModelAndView("cm/logistics/view_logistics");
- String billCode = request.getParameter("billCode");
- String billName = request.getParameter("billName");
- if(billCode == null || billCode.equals("") ||billName == null || billName.equals("")){
- return mv;
- }
- mv.addObject("billCode",billCode);
- mv.addObject("billName",billName);
- return mv;
- }
- /**
- * 跳转到修改检测完成信息页面
- *
- * @return
- */
- @RequiresPermissions("complete:update:complete")
- @RequestMapping(value = "/to_update_complete")
- public ModelAndView toUpdateComplete(HttpServletRequest request) {
- ModelAndView mv = new ModelAndView("cm/inspection/update_complete");
- String detectId = request.getParameter("detectId");
- if(detectId == null || detectId.equals("")){
- return mv;
- }
- ComplaintDetectInfo detectInfo = complaintDetectInfoService.getDetectById(Integer.valueOf(detectId));
- detectInfo.setDetectDate(new Date());
- mv.addObject("detectId",detectId);
- mv.addObject("detectInfo",detectInfo);
- return mv;
- }
- /**
- * 查询单个检测信息
- *
- * @return
- */
- @RequiresPermissions("complete:update:complete")
- @ResponseBody
- @RequestMapping(value = "/get_detect")
- public ResponseJson getDetect(HttpServletRequest request,Integer detectId) {
- ResponseJson msg = new ResponseJson();
- if(detectId == null){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }
- ComplaintDetectInfo detectInfo = complaintDetectInfoService.getDetectById(detectId);
- if(detectInfo == null){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }else {
- List<ComplaintDetectImg> detectImg = complaintDetectInfoService.listDetectImg(detectId);
- ComplaintSignclosedInfo signclosedInfo = complaintSignclosedInfoService.getSignclosedById(detectInfo.getSignclosedId());
- LogisticsInfo info = new LogisticsInfo();
- if(signclosedInfo != null){
- info.setLogisticsRstCode(signclosedInfo.getSignclosedLogistics());
- List<LogisticsInfo> logisticsInfos = salesOrderService.getLogisticsInfo(info);
- if(logisticsInfos != null && logisticsInfos.size() > 0){
- signclosedInfo.setSignclosedLogisticsName(logisticsInfos.get(0).getLogisticsName());
- }else{
- signclosedInfo.setSignclosedLogisticsName("其它快递");
- }
- }
- Admin admin = AdminUtils.getLoginAdmin();
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- msg.addResponseKeyValue("detectImg",detectImg);
- msg.addResponseKeyValue("detectInfo",detectInfo);
- msg.addResponseKeyValue("signclosedInfo",signclosedInfo);
- msg.addResponseKeyValue("date",sdf.format(new Date()));//当前时间
- msg.addResponseKeyValue("adminName",admin.getAdminName());//当前登录人
- msg.setResultCode(200);
- msg.setReturnCode(200);
- return msg;
- }
- }
- /**
- * 跳转到查看客服录入客诉信息页面
- *
- * @return
- */
- @RequiresPermissions("complete:select:complete")
- @RequestMapping(value = "/to_customer_detail")
- public ModelAndView toCustomerDetail(HttpServletRequest request) {
- ModelAndView mv = new ModelAndView("cm/inspection/customer_detail");
- return mv;
- }
- /**
- * 检测完成
- * @param request
- * @return
- * @throws Exception
- */
- @RequiresPermissions("complete:update:complete")
- @ResponseBody
- @RequestMapping("/update_complete")
- public ResponseJson update_complete(HttpServletRequest request, ComplaintDetectInfo detectInfo) throws Exception {
- ResponseJson msg = new ResponseJson();
- if(detectInfo == null){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }
- if(detectInfo.getDetectId() == null || detectInfo.getDetectId().equals("")){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }
- String detectDate = request.getParameter("detect_date");
- if(detectDate != null){
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
- detectInfo.setDetectDate(format.parse(detectDate));
- }
- String[] componentsImgs = request.getParameterValues("componentsImg");
- Integer num = complaintDetectInfoService.updateDetectById(detectInfo,componentsImgs);
- if (num < 1) {
- msg.setResultCode(500);
- msg.setReturnCode(500);
- } else {
- msg.setResultCode(200);
- msg.setReturnCode(200);
- }
- return msg;
- }
- /**
- * 删除检测信息
- * @param request
- * @return
- * @throws Exception
- */
- @RequiresPermissions("remark:add:remark")
- @ResponseBody
- @RequestMapping("/delete")
- public ResponseJson delete(HttpServletRequest request, Integer detectId) throws Exception {
- ResponseJson msg = new ResponseJson();
- if(detectId == null){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }
- Integer num = complaintDetectInfoService.deleteDetect(detectId);
- if (num < 1) {
- msg.setResultCode(500);
- msg.setReturnCode(500);
- } else {
- msg.setResultCode(200);
- msg.setReturnCode(200);
- }
- return msg;
- }
- /**
- * 查询单个检测信息
- * @param request
- * @return
- * @throws Exception
- */
- @RequiresPermissions("remark:add:remark")
- @ResponseBody
- @RequestMapping("/getDetectionBasis")
- public ResponseJson getDetectionBasis(HttpServletRequest request, Integer basisId) throws Exception {
- ResponseJson msg = new ResponseJson();
- if(basisId == null){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }
- DetectionBasis detectionBasis = new DetectionBasis();
- detectionBasis.setBasisId(basisId);
- List<DetectionBasis> listDetectionBasis = complaintDetectInfoService.listDetectionBasis(detectionBasis);
- if (listDetectionBasis.size() < 1) {
- msg.setResultCode(500);
- msg.setReturnCode(500);
- } else {
- msg.addResponseKeyValue("detectionBasis",listDetectionBasis.get(0));
- msg.setResultCode(200);
- msg.setReturnCode(200);
- }
- return msg;
- }
- /**
- * 客服确认处理结果
- * @param request
- * @return
- * @throws Exception
- */
- @RequiresPermissions("complete:update:complete")
- @ResponseBody
- @RequestMapping("/customer_confirm")
- public ResponseJson customerConfirm(HttpServletRequest request, ComplaintDetectInfo detectInfo) throws Exception {
- ResponseJson msg = new ResponseJson();
- if(detectInfo == null){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }
- if(detectInfo.getDetectId() == null || "".equals(detectInfo.getDetectId())){
- msg.setResultCode(500);
- msg.setReturnCode(500);
- return msg;
- }
- if (!complaintDetectInfoService.customerConfirm(detectInfo)) {
- msg.setResultCode(500);
- msg.setReturnCode(500);
- } else {
- ComplaintDetectInfo info = complaintDetectInfoService.getDetectById(detectInfo.getDetectId());
- msg.setResultCode(200);
- msg.setReturnCode(200);
- msg.addResponseKeyValue("detectInfo",info);
- }
- return msg;
- }
- }
|