Jelajahi Sumber

功能物资上报

Enford 5 tahun lalu
induk
melakukan
8aa053c010

+ 11 - 0
src/main/java/com/jeeplus/modules/sg/picking/activiti/entity/ShowList.java

@@ -57,6 +57,17 @@ public class ShowList extends ActEntity<ShowList> implements Comparable<ShowList
     //在当前节点的数量
     private Double nowNumber;
 
+
+    private String reserveName;
+
+    public String getReserveName() {
+        return reserveName;
+    }
+
+    public void setReserveName(String reserveName) {
+        this.reserveName = reserveName;
+    }
+
     public String getMaterialCode() {
         return materialCode;
     }

+ 14 - 0
src/main/java/com/jeeplus/modules/sg/picking/activiti/mapper/PickIngMapper.java

@@ -60,6 +60,20 @@ public interface PickIngMapper extends BaseMapper<PickIng> {
      * */
     void processTemList(@Param("showList")List<ShowList> showList);
 
+    /**
+     * 插入临时领料清单 :物资上报
+     * */
+    void processTemReportList(@Param("showList")List<ShowList> showList);
+
     //根据流程实例id查询所有符合的临时表数据
     List<ShowList> findAllTem(String procInsId);
+
+    //根据流程定义号查询当前操作的流程进行回显
+    List<ShowList> findProcInsIdMaterialReport(String procInsId);
+
+    //根据流程定义号删除当前临时表数据
+    Integer deleteProcInsIdMaterialReport(String procInsId);
+
+    //根据项目定义号删除当前流程表
+    Integer deleteProcInsIdPickingApplication(String procInsId);
 }

+ 4 - 0
src/main/java/com/jeeplus/modules/sg/picking/activiti/mapper/ShowListMapper.java

@@ -49,6 +49,10 @@ public interface ShowListMapper extends BaseMapper<ShowList> {
     List<ShowList> findNewTemList(ShowList showList);
 
     /**
+     * 根据流程定义号获取临时领料清单(物资上报)
+     */
+    List<ShowList> findMaterialReport(ShowList showList);
+    /**
      * 根据流程定义号获得领料清单
      * */
     List<ShowList> inventoryComparisonData(List<String> searchList);

+ 77 - 0
src/main/java/com/jeeplus/modules/sg/picking/activiti/mapper/xml/PickIngMapper.xml

@@ -279,7 +279,84 @@
 		</foreach>
 	</insert>
 
+	<insert id="processTemReportList">
+		insert into md_temporary_report_list (
+		id,
+		create_by,
+		create_date,
+		update_by,
+		update_date,
+		del_flag,
+		remarks,
+		procInsId,
+		materialCode,
+		extensionDescription,
+		materialDescription,
+		mdUnits,
+		mdTotalAmount,
+		mdTotalAmountAfter,
+		mdSingleWeight,
+		mdTotalWeight,
+		mdTheParty,
+		mdText,
+		reserveName
+		)values
+		<foreach collection="showList" item="item" index="index" separator="," >
+			(
+			#{item.id},
+			#{item.createBy.id},
+			#{item.createDate},
+			#{item.updateBy.id},
+			#{item.updateDate},
+			#{item.delFlag},
+			#{item.remarks},
+			#{item.procInsId},
+			#{item.materialCode},
+			#{item.extensionDescription},
+			#{item.materialDescription},
+			#{item.mdUnits},
+			#{item.mdTotalAmount},
+			#{item.mdTotalAmountAfter},
+			#{item.mdSingleWeight},
+			#{item.mdTotalWeight},
+			#{item.mdTheParty},
+			#{item.mdText},
+			#{item.reserveName}
+			)
+		</foreach>
+	</insert>
+
 	<select id="findAllTem" resultType="com.jeeplus.modules.sg.picking.activiti.entity.ShowList">
 		select * from md_temporary_list where procInsId = #{procInsId};
 	</select>
+
+	<sql id="materialReportColumns">
+		a.id AS "id",
+		a.procInsId AS "procInsId",
+		a.reserveName AS "reserveName",
+		a.materialCode AS "materialCode",
+		a.extensionDescription AS "extensionDescription",
+		a.materialDescription AS "materialDescription",
+		a.mdUnits AS "mdUnits",
+		a.mdTotalAmount AS "mdTotalAmount",
+		a.mdTotalAmountAfter AS "mdTotalAmountAfter",
+		a.mdSingleWeight AS "mdSingleWeight",
+		a.mdTotalWeight AS "mdTotalWeight",
+		a.mdTheParty AS "mdTheParty",
+		a.mdText AS "mdText"
+	</sql>
+
+	<select id="findProcInsIdMaterialReport" resultType="com.jeeplus.modules.sg.picking.activiti.entity.ShowList">
+		select
+		<include refid="materialReportColumns"/>
+		from md_temporary_report_list a where a.procInsId = #{procInsId}
+	</select>
+
+	<delete id="deleteProcInsIdMaterialReport" parameterType="string">
+		delete from md_temporary_report_list where procInsId = #{procInsId}
+	</delete>
+
+	<delete id="deleteProcInsIdPickingApplication">
+		delete from md_picking_application  where procInsId = #{procInsId}
+	</delete>
 </mapper>

+ 18 - 0
src/main/java/com/jeeplus/modules/sg/picking/activiti/mapper/xml/ShowListMapper.xml

@@ -184,6 +184,24 @@
 	from md_temporary_list where procInsId = #{procInsId}
 	</select>
 
+	<select id="findMaterialReport" resultType="com.jeeplus.modules.sg.picking.activiti.entity.ShowList">
+	SELECT
+		id,
+		procInsId,
+		materialCode,
+		extensionDescription,
+		materialDescription,
+		mdUnits,
+		mdTotalAmount,
+		mdTotalAmountAfter,
+		mdSingleWeight,
+		mdTotalWeight,
+		mdTheParty,
+		mdText,
+		reserveName
+	from md_temporary_report_list where procInsId = #{procInsId}
+	</select>
+
     <select id="inventoryComparisonData" resultType="com.jeeplus.modules.sg.picking.activiti.entity.ShowList">
         SELECT
         id,

+ 25 - 0
src/main/java/com/jeeplus/modules/sg/picking/activiti/service/PickIngService.java

@@ -185,6 +185,14 @@ public class PickIngService extends CrudService<PickIngMapper, PickIng> {
 		pickIngMapper.processTemList(showList);
 	}
 
+	/**
+	 * 插入临时领料清单:物资上报
+	 * */
+	@Transactional(readOnly = false)
+	public void processTemReportList(@Param("showList")List<ShowList> showList){
+		pickIngMapper.processTemReportList(showList);
+	}
+
 	public List<Acquisition> findErpType(List<String> list) {
 		return pickIngMapper.findErpType(list);
 	}
@@ -284,4 +292,21 @@ public class PickIngService extends CrudService<PickIngMapper, PickIng> {
 	public List<ShowList> findAllTem(String procInsId){
 		return pickIngMapper.findAllTem(procInsId);
 	}
+
+	//根据流程定义号查询当前 模块清单进行回显
+	public List<ShowList> findProcInsIdMaterialReport(String procInsId){
+		return  pickIngMapper.findProcInsIdMaterialReport(procInsId);
+	}
+
+	//根据流程定义号删除当前临时表数据
+	@Transactional(readOnly = false)
+	public Integer deleteProcInsIdMaterialReport(String procInsId){
+		return pickIngMapper.deleteProcInsIdMaterialReport(procInsId);
+	}
+
+	//根据项目定义号删除当前流程表
+	@Transactional(readOnly = false)
+	public Integer deleteProcInsIdPickingApplication(String procInsId){
+		return pickIngMapper.deleteProcInsIdPickingApplication(procInsId);
+	}
 }

+ 8 - 0
src/main/java/com/jeeplus/modules/sg/picking/activiti/service/ShowListService.java

@@ -48,6 +48,14 @@ public class ShowListService extends CrudService<ShowListMapper, ShowList> {
 		return page;
 	}
 
+	//物资上报
+	public Page<ShowList> findMaterialReport(Page<ShowList> page, ShowList showList) {
+		dataRuleFilter(showList);
+		showList.setPage(page);
+		page.setList(mapper.findMaterialReport(showList));
+		return page;
+	}
+
 	public List<ShowList> findNewTemList(ShowList showList) {
 		return mapper.findNewTemList(showList);
 	}

+ 87 - 0
src/main/java/com/jeeplus/modules/sg/picking/activiti/web/MaterialReportController.java

@@ -0,0 +1,87 @@
+package com.jeeplus.modules.sg.picking.activiti.web;
+
+import com.jeeplus.core.persistence.Page;
+import com.jeeplus.core.web.BaseController;
+import com.jeeplus.modules.act.entity.Act;
+import com.jeeplus.modules.act.service.ActProcessService;
+import com.jeeplus.modules.act.service.ActTaskService;
+import com.jeeplus.modules.sg.managementcenter.activiti.service.ConstructionService;
+import com.jeeplus.modules.sg.managementcenter.materialProvided.service.MaterialProvidedService;
+import com.jeeplus.modules.sg.managementcenter.project.service.ProjectService;
+import com.jeeplus.modules.sg.picking.activiti.entity.PickIng;
+import com.jeeplus.modules.sg.picking.activiti.entity.PickList;
+import com.jeeplus.modules.sg.picking.activiti.entity.ProjectNumber;
+import com.jeeplus.modules.sg.picking.activiti.entity.ShowList;
+import com.jeeplus.modules.sg.picking.activiti.service.PickIngService;
+import com.jeeplus.modules.sg.picking.activiti.service.ShowListService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+
+@Controller
+@RequestMapping(value = "${adminPath}/picking/materialReport")
+public class MaterialReportController extends BaseController {
+
+    @Autowired
+    private PickIngService pickIngService;
+    @Autowired
+    private ShowListService showListService;
+    @Autowired
+    private ActProcessService actProcessService;
+    @Autowired
+    private ActTaskService actTaskService;
+    @Autowired
+    private ConstructionService constructionService;
+    @Autowired
+    private ProjectService projectService;
+    @Autowired
+    private MaterialProvidedService materialProvidedService;
+
+    /**
+     * 填写项目表
+     */
+    @RequestMapping(value = "list")
+    public String form(ShowList showList, Model model) {
+        String procInsId = showList.getAct().getProcInsId();
+        String s = pickIngService.selectVersion(procInsId);
+        ProjectNumber projectNumber = pickIngService.projectNumber(procInsId);
+        PickIng pickIng = new PickIng();
+        List<PickList> pickListList = pickIngService.newAllList(pickIng, s);
+        model.addAttribute("showList", showList);
+        model.addAttribute("projectNumber", projectNumber);
+        model.addAttribute("pickListList", pickListList);
+        return "modules/sg/picking/activiti/materialReport";
+    }
+
+    /**
+     * 配网物资专职
+     */
+    @RequestMapping(value = "listMaterial")
+    public String formMaterial(ShowList showList, Model model, Act act) {
+        model.addAttribute("showList", showList);
+        ProjectNumber projectNumber = pickIngService.projectNumber(showList.getProcInsId());
+        model.addAttribute("projectNumber", projectNumber);
+        model.addAttribute("act", act);
+        return "modules/sg/picking/activiti/materialReportForm";
+    }
+
+    /**
+     * 模块清单显示页面
+     * */
+    @ResponseBody
+    @RequestMapping(value = "constructionTemData")
+    public Map<String, Object> constructionTemData(ShowList showList, String procInsId, HttpServletRequest request, HttpServletResponse response, Model model) {
+        Page<ShowList> page = showListService.findMaterialReport(new Page<ShowList>(request, response), showList);
+        return getBootstrapData(page);
+    }
+}