浏览代码

PTS列表添加导入导出功能

liujiankang 7 年之前
父节点
当前提交
a22df15370

+ 6 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/pts/PtsEmployeeService.java

@@ -43,6 +43,12 @@ public interface PtsEmployeeService {
     PagedResult<PtsEmployee> getEmployeeList(int pageNO, int pageSize, PtsEmployee employee, boolean isTotalNum);
 
     /**
+     * 获取员工信息列表
+     * @param employee
+     * @return
+     */
+    List<PtsEmployee> listEmployee(PtsEmployee employee);
+    /**
      * 添加员工
      * @param employee
      * @return

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

@@ -54,6 +54,11 @@ public class PtsEmployeeServiceImpl implements PtsEmployeeService {
         return PageUtil.getPage(list);
     }
 
+    @Override
+    public List<PtsEmployee> listEmployee(PtsEmployee employee) {
+        return ptsEmployeeMapper.getPtsEmployeeList(employee);
+    }
+
     /**
      * 添加
      * @param employee

+ 76 - 9
watero-rst-web/src/main/java/com/iamberry/rst/controllers/pts/AdminMachinePartsController.java

@@ -2,16 +2,15 @@ package com.iamberry.rst.controllers.pts;
 
 import com.alibaba.dubbo.common.json.JSONObject;
 import com.iamberry.rst.core.page.PagedResult;
-import com.iamberry.rst.core.pts.Produce;
-import com.iamberry.rst.core.pts.PtsBom;
-import com.iamberry.rst.core.pts.PtsComponents;
-import com.iamberry.rst.core.pts.PtsSupplier;
+import com.iamberry.rst.core.pts.*;
 import com.iamberry.rst.faces.pts.MachinePartsService;
 import com.iamberry.rst.faces.pts.MachineSupplierService;
 import com.iamberry.rst.faces.pts.ProduceService;
 import com.iamberry.rst.faces.pts.PtsBomService;
 import com.iamberry.rst.utils.ExcelUtil;
 import com.iamberry.rst.utils.StitchAttrUtil;
+import com.iamberry.wechat.tools.DateTimeUtil;
+import com.iamberry.wechat.tools.ObjectExcelView;
 import com.iamberry.wechat.tools.ResponseJson;
 import com.iamberry.wechat.tools.ResultInfo;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
@@ -37,10 +36,7 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.*;
 import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.Iterator;
-import java.util.List;
+import java.util.*;
 
 import static com.iamberry.rst.util.SmsConfig.SEND_NOTICE;
 
@@ -104,7 +100,9 @@ public class AdminMachinePartsController {
         return responseJson;
     }
 
-
+    /**
+     * 导入EXCEL生产零件(图片为默认图片)
+     * **/
     @RequestMapping("/excelAdd")
     @ResponseBody
     public boolean excelAdd(@RequestParam("sourceFile") MultipartFile sourceFile, HttpServletRequest request, HttpServletResponse response)throws IOException  {
@@ -154,6 +152,75 @@ public class AdminMachinePartsController {
     }
 
     /**
+     * 导出零件列表Excel
+     * 2017-11-13 14:46:37
+     * @return
+     */
+    @RequestMapping("/generation_excel")
+    public ModelAndView generationExcel(){
+        // 准备model
+        Map<String, Object> model = new HashMap<String, Object>();
+        model.put("fileName", "零件列表");	// 下载文件名称
+
+        // 标题
+        List<String> titles = new ArrayList<String>();
+        titles.add("零件编号");
+        titles.add("供应商");
+        titles.add("零件名称");
+        titles.add("图片(url)");
+        titles.add("状态");
+        titles.add("成本(元)");
+        titles.add("重量(g)");
+        titles.add("材料");
+        titles.add("材料类型");
+        titles.add("MBSC");
+        titles.add("规格");
+        model.put("titles", titles);
+        PtsComponents ptsComponents = new PtsComponents();
+        // 内容
+        List<List<Object>> countexts = new ArrayList<List<Object>>();
+        List<PtsComponents> list = machinePartsService.listPtsComponents(ptsComponents);
+        for (PtsComponents info : list) {
+            List<Object> row = new ArrayList<Object>();
+            row.add(info.getComponentsNo() == null ? null:info.getComponentsNo());
+            row.add(info.getSupplierName() == null ? null:info.getSupplierName());
+            row.add(info.getComponentsName() == null ? null:info.getComponentsName());
+            row.add(info.getComponentsImg() == null ? null:info.getComponentsImg());
+            row.add(info.getComponentsStatus() == 0 ? "停止使用":"正常使用");
+            row.add(info.getComponentsCost()/100);
+            row.add(info.getComponentsWeight());
+            row.add(info.getComponentsMaterial() == null ? null:info.getComponentsMaterial());
+            String type = "";
+            switch (info.getComponentsType()){
+                case 1:
+                    type = "塑胶件";
+                    break;
+                case 2:
+                    type = "五金件";
+                    break;
+                case 3:
+                    type = "电子类";
+                    break;
+                case 4:
+                    type = "线材";
+                    break;
+                case 5:
+                    type = "辅材";
+                    break;
+            }
+            row.add(info.getComponentsType() == null ? null:type);
+            row.add(info.getComponentsMbsc() == null ? null:info.getComponentsMbsc());
+            row.add(info.getComponentsSpecification() == null ? null:info.getComponentsSpecification());
+            countexts.add(row);
+        }
+        model.put("varList", countexts);
+
+        ObjectExcelView erv = new ObjectExcelView();
+        ModelAndView mv = new ModelAndView(erv,model);
+        return mv;
+    }
+
+    /**
      * 获取机器零件列表
      *
      * @param request

+ 56 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/pts/AdminPtsEmployeeController.java

@@ -2,8 +2,11 @@ package com.iamberry.rst.controllers.pts;
 
 import com.iamberry.rst.core.page.PagedResult;
 import com.iamberry.rst.core.pts.PtsEmployee;
+import com.iamberry.rst.core.pts.PtsSupplier;
 import com.iamberry.rst.faces.pts.PtsEmployeeService;
 import com.iamberry.rst.utils.StitchAttrUtil;
+import com.iamberry.wechat.tools.DateTimeUtil;
+import com.iamberry.wechat.tools.ObjectExcelView;
 import com.iamberry.wechat.tools.ResponseJson;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -14,6 +17,10 @@ import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.servlet.ModelAndView;
 
 import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * pts系统员工信息controller
@@ -72,6 +79,55 @@ public class AdminPtsEmployeeController {
     }
 
     /**
+     * 导出员工列表Excel
+     * 2017-11-13 14:46:37
+     * @return
+     */
+    @RequestMapping("/excel")
+    public ModelAndView downloadSupplierExcel(){
+        // 准备model
+        Map<String, Object> model = new HashMap<String, Object>();
+        model.put("fileName", "员工列表");	// 下载文件名称
+
+        // 标题
+        List<String> titles = new ArrayList<String>();
+        titles.add("员工编号");
+        titles.add("员工姓名");
+        titles.add("员工电话");
+        titles.add("员工状态");
+        titles.add("入职日期");
+        titles.add("员工岗位");
+        titles.add("是否具有清空卡权限");
+        titles.add("拉线");
+        titles.add("离职日期");
+        titles.add("添加时间");
+        model.put("titles", titles);
+        PtsEmployee ptsEmployee = new PtsEmployee();
+        // 内容
+        List<List<Object>> countexts = new ArrayList<List<Object>>();
+        List<PtsEmployee> list = ptsEmployeeService.listEmployee(ptsEmployee);
+        for (PtsEmployee info : list) {
+            List<Object> row = new ArrayList<Object>();
+            row.add(info.getEmployeeNo() == null ? null:info.getEmployeeNo());
+            row.add(info.getEmployeeName() == null ? null:info.getEmployeeName());
+            row.add(info.getEmployeeTel() == null ? null:info.getEmployeeTel());
+            row.add(info.getEmployeeState() == 1 ? "在职":"离职");
+            row.add(info.getEmployeeEntryDate() == null ? null:DateTimeUtil.format(info.getEmployeeEntryDate(), "yyyy-MM-dd"));
+            row.add(info.getEmployeePost() == null ? null:info.getEmployeePost());
+            row.add(info.getEmployeeClearPower() == 1 ? "否":"是");
+            row.add(info.getEmployeeLine() == null ? null:info.getEmployeeLine());
+            row.add(info.getEmployeeDepartureDate() == null ? null:DateTimeUtil.format(info.getEmployeeDepartureDate(), "yyyy-MM-dd"));
+            row.add(info.getEmployeeCreateTime() == null ? null:DateTimeUtil.format(info.getEmployeeCreateTime(), "yyyy-MM-dd HH:mm:ss"));
+            countexts.add(row);
+        }
+        model.put("varList", countexts);
+
+        ObjectExcelView erv = new ObjectExcelView();
+        ModelAndView mv = new ModelAndView(erv,model);
+        return mv;
+    }
+
+    /**
      * 判断编号占用
      * @param request
      * @return

+ 1 - 1
watero-rst-web/src/main/java/com/iamberry/rst/controllers/pts/AdminPtsSupplierController.java

@@ -99,7 +99,7 @@ public class AdminPtsSupplierController {
             row.add(info.getSupplierPhone() == null ? null:info.getSupplierPhone());
             row.add(info.getSupplierEmail() == null ? null:info.getSupplierEmail());
             row.add(info.getSupplierAddress() == null ? null:info.getSupplierAddress());
-            row.add(info.getSupplierUpdateTime() == null ? null: DateTimeUtil.format(info.getSupplierUpdateTime(), "yyyy-MM-dd HH:mm:ss,SSS"));
+            row.add(info.getSupplierUpdateTime() == null ? null: DateTimeUtil.format(info.getSupplierUpdateTime(), "yyyy-MM-dd HH:mm:ss"));
             row.add(info.getComponentsNumber() == null ? null:info.getComponentsNumber());
 
 

+ 7 - 0
watero-rst-web/src/main/webapp/WEB-INF/views/pts/employee/employee_list.ftl

@@ -32,6 +32,7 @@
     <div class="text-c">
         <form action="${path}/admin/employee/_employee_list" method="post">
             <button type="button" style="cursor:pointer; float: left;" class="my-btn-search" onclick="toAddEmployee();">增加员工</button>
+            <button type="button" style="cursor:pointer;" class="my-btn-search" onclick="toExcel();">导出员工到EXCEL</button>
             <input type="text" class="my-input"  style="width:150px" value="${employeeNo!}" placeholder="员工编号" id="employeeNo" name="employeeNo">
             <input type="text" class="my-input"  style="width:150px" value="${employeeName!}" placeholder="员工姓名" id="employeeName" name="employeeName">
             <input type="text" class="my-input"  style="width:150px" value="${employeeTel!}" placeholder="员工电话" id="employeeTel" name="employeeTel">
@@ -183,6 +184,12 @@
 </script>
 <script>
     /**
+     * 导出员工到EXCEL
+     */
+    function toExcel(){
+        window.location.href= "${path}/admin/employee/excel";
+    }
+    /**
      * 跳转到添加员工页面
      */
     function toAddEmployee(){

+ 13 - 5
watero-rst-web/src/main/webapp/WEB-INF/views/pts/machinePtras/parts_list.ftl

@@ -30,10 +30,10 @@
 </nav>
 <div class="page-container">
     <div class="text-c">
-        <form action="${path}/admin/machineParts/_parts_list" method="post" style="width: 60%;display: inline-block;">
+        <form action="${path}/admin/machineParts/_parts_list" method="post" style="width: 55%;display: inline-block;">
             <button type="button" style="cursor:pointer; float: left;" class="my-btn-search" onclick="toAddParts();">添加机器零件</button>
 
-            <select class="my-select" name="supplierId" id="supplierId" style="height: 36px;width: 150px">
+            <select class="my-select" name="supplierId" id="supplierId" style="height: 36px;width: 130px">
                 <option value ="">所有供应商</option>
                 <#if listSupplier?? && (listSupplier ?size > 0)>
                     <#list listSupplier as list>
@@ -52,13 +52,14 @@
                     </#list>
                 </#if>
             </select>-->
-            <input type="text" class="my-input"  style="width:120px" value="${componentsNo!}" placeholder="零件编号" id="componentsNo" name="componentsNo">
-            <input type="text" class="my-input"  style="width:120px" value="${componentsName!}" placeholder="零件名称" id="componentsName" name="componentsName">
+            <input type="text" class="my-input"  style="width:80px" value="${componentsNo!}" placeholder="零件编号" id="componentsNo" name="componentsNo">
+            <input type="text" class="my-input"  style="width:80px" value="${componentsName!}" placeholder="零件名称" id="componentsName" name="componentsName">
             <button type="submit" class="btn" style="background: #32a3d8;color: #fff;-webkit-transform:translateY(-5%);" id="" name=""><i class="Hui-iconfont">&#xe665;</i> 搜索</button>
         </form>
-        <form id="sourcefile" name="sourcefile" action=""  method="post" enctype="multipart/form-data" style="width: 35%;display: inline-block;">
+        <form id="sourcefile" name="sourcefile" action=""  method="post" enctype="multipart/form-data" style="width: 42%;display: inline-block;">
             <input class="my-btn-search" data-loading-text="请勿重复提交" type="button" value="上传EXCEL" onClick="upPolicy()">
             <input  id="source_file" name="sourceFile" type="file" value="" />
+            <button type="button" style="cursor:pointer;" class="my-btn-search" onclick="toExcel();">导出Excel</button>
         </form>
     </div>
 
@@ -195,6 +196,13 @@
     function admin_update_parts(componentsId) {
         window.location.href= "${path}/admin/machineParts/_to_update_machineParts?componentsId="+componentsId;
     }
+
+    /**
+     * 导出零件到excel
+     */
+    function toExcel(){
+        window.location.href= "${path}/admin/machineParts/generation_excel";
+    }
 </script>
 </body>
 </html>