Browse Source

仓储列表功能

liujiankang 7 years ago
parent
commit
f1dfeead86

+ 9 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/ComplaintMaintenanceInfoService.java

@@ -1,6 +1,9 @@
 package com.iamberry.rst.faces.cm;
 
 import com.iamberry.rst.core.cm.ComplaintMaintenanceInfo;
+import com.iamberry.rst.core.cm.ComplaintSignclosedInfo;
+import com.iamberry.rst.core.page.PageRequest;
+import com.iamberry.rst.core.page.PagedResult;
 
 /**
  * 客诉-生产维修Service
@@ -21,4 +24,10 @@ public interface ComplaintMaintenanceInfoService {
      * @return
      */
     int updateMaintenanceById(ComplaintMaintenanceInfo record);
+
+    /**
+     * 查询多个品质检测产品
+     * @return
+     */
+    PagedResult<ComplaintMaintenanceInfo> listMaintenance(PageRequest<ComplaintMaintenanceInfo> pageRequest);
 }

+ 3 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/pts/MachineService.java

@@ -56,6 +56,9 @@ public interface MachineService {
     //查询单个机器信息
     PtsMachine getMachine(Integer machineId);
 
+    //根据barcode查询单个机器信息
+    PtsMachine getMachineByBarCode(String machineBarcode);
+
     //查询每月机器台数 ,参数格式:2017-09
     Integer selectMonthCount(String yearMonth);
 

+ 14 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/ComplaintMaintenanceInfoServiceImpl.java

@@ -1,15 +1,22 @@
 package com.iamberry.rst.service.cm;
 
 
+import com.github.pagehelper.PageHelper;
 import com.iamberry.rst.core.cm.ComplaintDetectInfo;
 import com.iamberry.rst.core.cm.ComplaintMaintenanceInfo;
+import com.iamberry.rst.core.cm.ComplaintSignclosedInfo;
+import com.iamberry.rst.core.page.PageRequest;
+import com.iamberry.rst.core.page.PagedResult;
 import com.iamberry.rst.faces.cm.ComplaintDetectInfoService;
 import com.iamberry.rst.faces.cm.ComplaintMaintenanceInfoService;
 import com.iamberry.rst.service.cm.mapper.ComplaintDetectInfoMapper;
 import com.iamberry.rst.service.cm.mapper.ComplaintMaintenanceInfoMapper;
+import com.iamberry.rst.util.PageUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 @Service
 public class ComplaintMaintenanceInfoServiceImpl implements ComplaintMaintenanceInfoService {
     @Autowired
@@ -29,4 +36,11 @@ public class ComplaintMaintenanceInfoServiceImpl implements ComplaintMaintenance
     public int updateMaintenanceById(ComplaintMaintenanceInfo record) {
         return complaintMaintenanceInfoMapper.updateMaintenanceById(record);
     }
+
+    @Override
+    public PagedResult<ComplaintMaintenanceInfo> listMaintenance(PageRequest<ComplaintMaintenanceInfo> pageRequest) {
+        PageHelper.startPage(pageRequest.getPageNO(), pageRequest.getPageSize(), pageRequest.isPageTotal());
+        List<ComplaintMaintenanceInfo> signclosedList = complaintMaintenanceInfoMapper.listMaintenance(pageRequest.getData());
+        return PageUtil.getPage(signclosedList);
+    }
 }

+ 10 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/ComplaintMaintenanceInfoMapper.java

@@ -1,6 +1,10 @@
 package com.iamberry.rst.service.cm.mapper;
 
 import com.iamberry.rst.core.cm.ComplaintMaintenanceInfo;
+import com.iamberry.rst.core.cm.ComplaintSignclosedInfo;
+
+import java.util.List;
+
 /**
  * 客诉-生产维修mapper
  */
@@ -20,4 +24,10 @@ public interface ComplaintMaintenanceInfoMapper {
      * @return
      */
     int updateMaintenanceById(ComplaintMaintenanceInfo record);
+
+    /**
+     * 查询多个品质检测产品
+     * @return
+     */
+    List<ComplaintMaintenanceInfo> listMaintenance(ComplaintMaintenanceInfo record);
 }

+ 48 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/complaintMaintenanceInfoMapper.xml

@@ -27,6 +27,54 @@
     from tb_rst_complaint_maintenance
     where maintenance_id = #{maintenanceId,jdbcType=INTEGER}
   </select>
+  <select id="listMaintenance" resultMap="BaseResultMap" parameterType="ComplaintMaintenanceInfo" >
+    select
+    maintenance_id maintenanceId,
+    detect_id detectId,
+    maintenance_equipment_number maintenanceEquipmentNumber,
+    product_id productId,
+    maintenance_product_number maintenanceProductNumber,
+    maintenance_state maintenanceState,
+    maintenance_analysis maintenanceAnalysis,
+    maintenance_customer_id maintenanceCustomerId,
+    maintenance_id_repair maintenanceIdRepair,
+    maintenance_content_date maintenanceContentDate,
+    maintenance_create_time maintenanceCreateTime,
+    maintenance_update_time maintenanceUpdateTime
+    from tb_rst_complaint_maintenance
+    <where>
+      <if test="maintenanceId != null and maintenanceId != ''" >
+        AND maintenance_id = #{maintenanceId}
+      </if>
+      <if test="detectId != null and detectId != ''" >
+        AND detect_id = #{detectId}
+      </if>
+      <if test="maintenanceEquipmentNumber != null maintenanceEquipmentNumber != ''" >
+        AND maintenance_equipment_number = #{maintenanceEquipmentNumber}
+      </if>
+      <if test="maintenanceState != null maintenanceState != ''" >
+        AND maintenance_state = #{maintenanceEquipmentNumber}
+      </if>
+      <if test="maintenanceAnalysis != null maintenanceAnalysis != ''" >
+        AND maintenance_analysis = #{maintenanceAnalysis}
+      </if>
+      <if test="maintenanceCustomerId != null maintenanceCustomerId != ''" >
+        AND maintenance_customer_id = #{maintenanceCustomerId}
+      </if>
+      <if test="maintenanceIdRepair != null maintenanceIdRepair != ''" >
+        AND maintenance_id_repair = #{maintenanceIdRepair}
+      </if>
+      <if test="maintenanceContentDate != null maintenanceContentDate != ''" >
+        AND maintenance_content_date = #{maintenanceContentDate}
+      </if>
+      <if test="maintenanceCreateTime != null maintenanceCreateTime != ''" >
+        AND maintenance_create_time = #{maintenanceCreateTime}
+      </if>
+      <if test="maintenanceUpdateTime != null maintenanceUpdateTime != ''" >
+        AND maintenanceUpdateTime = #{maintenanceUpdateTime}
+      </if>
+    </where>
+  </select>
   <insert id="insert" parameterType="ComplaintMaintenanceInfo" >
     insert into tb_rst_complaint_maintenance (maintenance_id, detect_id, maintenance_equipment_number, 
       product_id, maintenance_product_number,

+ 13 - 4
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/complaintQuestionInfoMapper.xml

@@ -9,13 +9,15 @@
     <result column="question_is_qc_detect" property="questionIsQcDetect" jdbcType="BIT" />
     <result column="question_create_time" property="questionCreateTime" jdbcType="TIMESTAMP" />
     <result column="question_update_time" property="questionUpdateTime" jdbcType="TIMESTAMP" />
+    <result column="question_resolved_num" property="questionResolvedNum" jdbcType="INTEGER" />
+    <result column="question_not_solved_num" property="questionNotSolvedNum" jdbcType="INTEGER" />
   </resultMap>
   <resultMap id="ResultMapWithBLOBs" type="ComplaintQuestionInfo" extends="BaseResultMap" >
     <result column="question_profile" property="questionProfile" jdbcType="LONGVARCHAR" />
   </resultMap>
   <sql id="Base_Column_List" >
     question_id, small_class_id, question_name, question_state, question_is_qc_detect, 
-    question_create_time, question_update_time
+    question_create_time, question_update_time,question_resolved_num,question_not_solved_num
   </sql>
   <sql id="Blob_Column_List" >
     question_profile
@@ -32,7 +34,7 @@
   <select id="listComplaintQuestionInfo" resultMap="BaseResultMap" parameterType="ComplaintQuestionInfo" >
     select
     question_id, small_class_id, question_name, question_state, question_is_qc_detect,question_profile,
-    question_create_time, question_update_time
+    question_create_time, question_update_time,question_resolved_num,question_not_solved_num
     from tb_rst_complaint_question
     <where>
       <if test="smallClassId !=null">
@@ -50,11 +52,12 @@
   <insert id="insert" parameterType="ComplaintQuestionInfo" >
     insert into tb_rst_complaint_question (question_id, small_class_id, question_name, 
       question_state, question_is_qc_detect, question_create_time, 
-      question_update_time, question_profile
+      question_update_time, question_profile,question_resolved_num,question_not_solved_num
       )
     values (#{questionId,jdbcType=INTEGER}, #{smallClassId,jdbcType=INTEGER}, #{questionName,jdbcType=VARCHAR}, 
       #{questionState,jdbcType=BIT}, #{questionIsQcDetect,jdbcType=BIT}, #{questionCreateTime,jdbcType=TIMESTAMP}, 
-      #{questionUpdateTime,jdbcType=TIMESTAMP}, #{questionProfile,jdbcType=LONGVARCHAR}
+      #{questionUpdateTime,jdbcType=TIMESTAMP}, #{questionProfile,jdbcType=LONGVARCHAR}, #{questionResolvedNum,jdbcType=INTEGER}
+      , #{questionNotSolvedNum,jdbcType=INTEGER}
       )
   </insert>
   <update id="updateQuestionById" parameterType="ComplaintQuestionInfo" >
@@ -81,6 +84,12 @@
       <if test="questionProfile != null" >
         question_profile = #{questionProfile,jdbcType=LONGVARCHAR},
       </if>
+      <if test="questionResolvedNum != null" >
+        question_resolved_num = question_resolved_num+1,
+      </if>
+      <if test="questionNotSolvedNum != null" >
+        question_not_solved_num = question_not_solved_num+1,
+      </if>
     </set>
     where question_id = #{questionId,jdbcType=INTEGER}
   </update>

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/pts/MachineServiceImpl.java

@@ -95,6 +95,11 @@ public class MachineServiceImpl implements MachineService {
     }
 
     @Override
+    public PtsMachine getMachineByBarCode(String machineBarcode) {
+        return machineMapper.getMachineByBarCode(machineBarcode);
+    }
+
+    @Override
     public Integer selectMonthCount(String yearMonth) {
         return machineMapper.selectMonthCount(yearMonth);
     }

+ 2 - 1
watero-rst-service/src/main/java/com/iamberry/rst/service/pts/mapper/MachineMapper.java

@@ -42,7 +42,8 @@ public interface MachineMapper {
 
     //查询单个机器信息
     PtsMachine getMachine(Integer machineId);
-
+    //根据barcode查询单个机器信息
+    PtsMachine getMachineByBarCode(String machineBarcode);
     //查询每月机器台数 ,参数格式:2017-09
    Integer selectMonthCount(String yearMonth);
 

+ 26 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/pts/mapper/machineMapper.xml

@@ -410,4 +410,30 @@
             #{item.machineBatchId},#{item.machineBomId},#{item.machineIsRetreading},#{item.machineSoftwareVersion},#{item.machineLine})
         </foreach>
     </insert>
+
+    <select id="getMachineByBarCode" parameterType="String" resultType="PtsMachine">
+        select machine_id machineId,
+        machine_qrcode machineQrcode,
+        machine_barcode machineBarcode,
+        machine_sales_date machineSalesDate,
+        machine_sales_state machineSalesState,
+        machine_status machineStatus,
+        machine_produced_time machineProducedTime,
+        machine_sub_time machineSubTime,
+        machine_is_print machineIsPrint,
+        machine_compound_img machineCompoundImg,
+        machine_process_state machineProcessState,
+        machine_software_version machineSoftwareVersion,
+        machine_hardware_version machineHardwareVersion,
+        machine_create_time machineCreateTime,
+        machine_update_time machineUpdateTime,
+        machine_produce_type machineProduceType,
+        machine_produce_id machineProduceId,
+        machine_batch_id machineBatchId,
+        machine_bom_id  machineBomId,
+        machine_is_retreading  machineIsRetreading,
+        machine_line  machineLine,
+        machine_sales_company_id machineSalesCompanyId
+        from tb_rst_pts_machine WHERE  machine_barcode = #{machineBarcode} AND machine_sales_state = 1
+    </select>
 </mapper>

+ 146 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/ComplaintMaintenanceController.java

@@ -0,0 +1,146 @@
+package com.iamberry.rst.controllers.cm;
+
+import com.iamberry.rst.core.cm.*;
+import com.iamberry.rst.core.page.PageRequest;
+import com.iamberry.rst.core.page.PagedResult;
+import com.iamberry.rst.core.pts.PtsMachine;
+import com.iamberry.rst.faces.cm.ComplaintMaintenanceInfoService;
+import com.iamberry.rst.faces.cm.ComplaintQuestionInfoService;
+import com.iamberry.rst.faces.cm.ComplaintSmallClassInfoService;
+import com.iamberry.rst.faces.cm.ComplaintTypeInfoService;
+import com.iamberry.rst.faces.pts.MachineService;
+import com.iamberry.rst.service.pts.mapper.MachineMapper;
+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.util.List;
+
+/**
+ * Created by wxm
+ * 问题
+ */
+@Controller
+@RequestMapping("/admin/maintenance")
+public class ComplaintMaintenanceController {
+
+    @Autowired
+    private ComplaintMaintenanceInfoService complaintMaintenanceInfoService;
+    @Autowired
+    private MachineService machineService;
+
+
+    /**
+     * 客诉 - 查询签收/仓储列表
+     * @param request
+     * @return
+     */
+    @RequiresPermissions("maintenance:select:maintenance")
+    @RequestMapping("/select_maintenance_list")
+    public ModelAndView selectmaintenanceList(HttpServletRequest request,
+                                         @RequestParam(value = "pageNO", defaultValue = "1", required = false) int pageNO,
+                                         @RequestParam(value = "pageTotal", required = false) Integer pageTotal,
+                                         @RequestParam(value = "pageSize", defaultValue = "5", required = false) int pageSize,
+                                         ComplaintMaintenanceInfo complaintMaintenanceInfo) {
+
+        ModelAndView mv = new ModelAndView("cm/signclosed/signclosed_list");
+        StringBuilder url = new StringBuilder("/admin/signclosed/select_signclosed_list?pageSize=" + pageSize);
+        // 封装请求数据
+        PageRequest<ComplaintMaintenanceInfo> pageRequest = new PageRequest<>(complaintMaintenanceInfo, pageNO, pageSize, pageTotal == null);
+        PagedResult<ComplaintMaintenanceInfo> result = complaintMaintenanceInfoService.listMaintenance(pageRequest);
+        long total = 0;
+        if (pageTotal == null) {
+            total = result.getPages();
+        } else {
+            total = pageTotal;
+            result.setPages(total);
+        }
+        StitchAttrUtil.setModelAndView(complaintMaintenanceInfo, mv, "/admin/maintenance/select_maintenance_list", result);
+        return mv;
+    }
+
+    /**
+     * 修改维修记录
+     *
+     * @return
+     */
+    @ResponseBody
+    @RequiresPermissions("maintenance:update:maintenance")
+    @RequestMapping(value = "/update_maintenance")
+    public ResponseJson updateMaintenance(HttpServletRequest request,ComplaintMaintenanceInfo maintenanceInfo){
+        ResponseJson msg = new ResponseJson();
+        if(maintenanceInfo == null){
+            msg.setResultCode(500);
+            msg.setReturnCode(500);
+            return msg;
+        }
+        Integer num = complaintMaintenanceInfoService.updateMaintenanceById(maintenanceInfo);
+        if (num < 1) {
+            msg.setResultCode(500);
+            msg.setReturnCode(500);
+        } else {
+            msg.setResultCode(200);
+            msg.setReturnCode(200);
+        }
+        return msg;
+    }
+    /**
+     * 增加维修记录
+     *
+     * @return
+     */
+    @ResponseBody
+    @RequiresPermissions("maintenance:add:maintenance")
+    @RequestMapping(value = "/add_maintenance")
+    public ResponseJson addMaintenance(HttpServletRequest request,ComplaintMaintenanceInfo maintenanceInfo){
+        ResponseJson msg = new ResponseJson();
+        if(maintenanceInfo == null){
+            msg.setResultCode(500);
+            msg.setReturnCode(500);
+            return msg;
+        }
+        Integer num = complaintMaintenanceInfoService.insert(maintenanceInfo);
+        if (num < 1) {
+            msg.setResultCode(500);
+            msg.setReturnCode(500);
+        } else {
+            msg.setResultCode(200);
+            msg.setReturnCode(200);
+        }
+        return msg;
+    }
+
+    /**
+     *
+     *根据机器编号搜索机器出库记录
+     * @return
+     */
+    @ResponseBody
+    @RequiresPermissions("maintenance:update:maintenance")
+    @RequestMapping(value = "/select_outbound")
+    public ResponseJson selectOutbound(HttpServletRequest request,String machineNum){
+        ResponseJson msg = new ResponseJson();
+        if(machineNum == null){
+            msg.setResultCode(500);
+            msg.setReturnCode(500);
+            return msg;
+        }
+        PtsMachine ptsMachine = machineService.getMachineByBarCode(machineNum);
+        if (ptsMachine == null) {
+            msg.setResultCode(500);
+            msg.setReturnCode(500);
+        } else {
+            msg.setResultCode(200);
+            msg.setReturnCode(200);
+            msg.addResponseKeyValue("ptsMachine",ptsMachine);
+        }
+        return msg;
+    }
+}

+ 49 - 1
watero-rst-web/src/main/java/com/iamberry/rst/controllers/cm/ComplaintQuestionInfoController.java

@@ -7,6 +7,7 @@ import com.iamberry.rst.faces.cm.ComplaintQuestionInfoService;
 import com.iamberry.rst.faces.cm.ComplaintSmallClassInfoService;
 import com.iamberry.rst.faces.cm.ComplaintTypeInfoService;
 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;
@@ -97,6 +98,53 @@ public class ComplaintQuestionInfoController {
     }
 
 
-
+    /**
+     * 修改是否已解决总数
+     *
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping(value = "/update_question_num")
+    public ResponseJson updateQuestionNum(HttpServletRequest request, ComplaintQuestionInfo complaintQuestionInfo){
+        ResponseJson msg = new ResponseJson();
+        if(complaintQuestionInfo == null){
+            msg.setResultCode(500);
+            msg.setReturnCode(500);
+            return msg;
+        }
+        Integer num = complaintQuestionInfoService.updateQuestionById(complaintQuestionInfo);
+        if (num < 1) {
+            msg.setResultCode(500);
+            msg.setReturnCode(500);
+        } else {
+            msg.setResultCode(200);
+            msg.setReturnCode(200);
+        }
+        return msg;
+    }
+    /**
+     * 查询客诉问题
+     *
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping(value = "/get_question")
+    public ResponseJson getQuestion(HttpServletRequest request, Integer questionId){
+        ResponseJson msg = new ResponseJson();
+        if(questionId == null){
+            msg.setResultCode(500);
+            msg.setReturnCode(500);
+            return msg;
+        }
+        ComplaintQuestionInfo complaintQuestionInfo = complaintQuestionInfoService.getQuestionById(questionId);
+        if (complaintQuestionInfo  == null) {
+            msg.setResultCode(500);
+            msg.setReturnCode(500);
+        } else {
+            msg.setResultCode(200);
+            msg.setReturnCode(200);
+        }
+        return msg;
+    }
 
 }