| fzzy-igdss-core/src/main/java/com/fzzy/igds/data/NoticeDto.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| fzzy-igdss-core/src/main/java/com/fzzy/igds/data/NoticeParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/InoutNoticeOut.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| fzzy-igdss-core/src/main/java/com/fzzy/igds/mapper/InoutNoticeMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| fzzy-igdss-core/src/main/java/com/fzzy/igds/repository/InoutNoticeInRepository.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| fzzy-igdss-core/src/main/java/com/fzzy/igds/repository/InoutNoticeOutRepository.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeIn.view.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeOut.view.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticePR.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
fzzy-igdss-core/src/main/java/com/fzzy/igds/data/NoticeDto.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,91 @@ package com.fzzy.igds.data; import lombok.Data; import java.util.Date; /** * @Description åºå ¥åºéç¥åæ´ä½ä½¿ç¨å°è£ * @Author CZT * @Date 2025/11/29 16:33 */ @Data public class NoticeDto { /** * éç¥åid */ private String id; private String name; /** * ç»ç»ç¼ç */ private String companyId; /** * åºåºç¼ç */ private String deptId; /** * ä»åºç¼ç */ private String depotId; /** * 客æ·ç¼ç */ private String customerId; /** * 客æ·åç§° */ private String customerName; /** * åä½åç§° */ private String unitName; /** * ç²®é£åç§ */ private String foodVariety; /** * ç²®é£æ§è´¨ */ private String foodType; /** * 年份 */ private String year; /** * ç®æ æ°é */ private Double targetNumber = 0.0; /** * 宿æ°é */ private Double completeNumber = 0.0; /** * 宿æ¶é´ */ private Date completeTime; /** * æå±åå */ private String contractName; } fzzy-igdss-core/src/main/java/com/fzzy/igds/data/NoticeParam.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,74 @@ package com.fzzy.igds.data; import lombok.Data; import lombok.EqualsAndHashCode; import java.util.Date; /** * @Description åºå ¥åºéç¥ååæ° * @Author CZT * @Date 2025/11/29 16:33 */ @Data @EqualsAndHashCode(callSuper=false) public class NoticeParam { private String id; private String companyId; private String depotId; private String deptId;// æå±ååº private String customerName;// 客æ·åç§° private String foodVariety;// åç§ private String contractId;//ååå· private String planId;//计å private String foodType; // ç²®é£æ§è´¨ private String year;// 年份 private String type; private Double weight;// ééä¿¡æ¯ private Double taskNum = 0.0; private String completeStatus; // å®æç¶æ private Double storageReal;// åºåéé private Date start; private Date end; private String createUser; public NoticeParam() { } public NoticeParam(String companyId, String deptId, String customerName, String foodVariety, String id) { this.companyId = companyId; this.deptId = deptId; this.customerName = customerName; this.foodVariety = foodVariety; this.id = id; } public NoticeParam(String companyId, String deptId, String depotId, String customerName, String foodVariety, String id) { this.companyId = companyId; this.deptId = deptId; this.depotId = depotId; this.customerName = customerName; this.foodVariety = foodVariety; this.id = id; } } fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/InoutNoticeOut.java
@@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.bstek.dorado.annotation.PropertyDef; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import lombok.EqualsAndHashCode; @@ -107,4 +108,7 @@ @TableField("remark") private String remark; @Transient @PropertyDef(label = "æ è®°", description = "ç¨äºå¤æéç¥åæ¯å¦ä¸ºæ°å¢") private String tag; } fzzy-igdss-core/src/main/java/com/fzzy/igds/mapper/InoutNoticeMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,29 @@ package com.fzzy.igds.mapper; import com.fzzy.igds.data.NoticeParam; import org.apache.ibatis.annotations.Param; /** * @Description * @Author CZT * @Date 2025/11/29 16:39 */ public interface InoutNoticeMapper { /** * å ¥åºéç¥å - æ ¹æ®åæ°éæ°è®¡ç®å®æé * * @param param * @return */ int reSumNoticeInComplete(@Param("param") NoticeParam param); /** * åºåºéç¥å - æ ¹æ®åæ°éæ°è®¡ç®å®æé * * @param param * @return */ int reSumNoticeOutComplete(@Param("param") NoticeParam param); } fzzy-igdss-core/src/main/java/com/fzzy/igds/repository/InoutNoticeInRepository.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,54 @@ package com.fzzy.igds.repository; import com.fzzy.igds.domain.InoutNoticeIn; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Service; import java.util.List; /** * @Description * @Author CZT * @Date 2025/11/29 16:33 */ @Service public interface InoutNoticeInRepository extends JpaRepository<InoutNoticeIn, String> , JpaSpecificationExecutor<InoutNoticeIn> { /** * æ ¹æ®ç»ç»ç¼ç ååºåºç¼ç è·åä¿¡æ¯ * * @param companyId * @param deptId * @param id * @return */ @Query("from InoutNoticeIn where companyId =:companyId and deptId =:deptId and id =:id") InoutNoticeIn getDataById(@Param("companyId") String companyId, @Param("deptId") String deptId, @Param("id") String id); /** * æ ¹æ®ç»ç»ç¼ç ååºåºç¼ç è·åä¿¡æ¯ * * @param companyId * @param deptId * @param completeStatus * @return */ @Query("from InoutNoticeIn where companyId =:companyId and deptId =:deptId and completeStatus =:completeStatus") List<InoutNoticeIn> listNoticeIn(@Param("companyId") String companyId, @Param("deptId") String deptId, @Param("completeStatus") String completeStatus); /** * æ ¹æ®ç»ç»ç¼ç ååºåºç¼ç è·åä¿¡æ¯ * * @param companyId * @param completeStatus * @return */ @Query("from InoutNoticeIn where companyId =:companyId and completeStatus =:completeStatus") List<InoutNoticeIn> listNoticeIn(@Param("companyId") String companyId, @Param("completeStatus") String completeStatus); } fzzy-igdss-core/src/main/java/com/fzzy/igds/repository/InoutNoticeOutRepository.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,53 @@ package com.fzzy.igds.repository; import com.fzzy.igds.domain.InoutNoticeOut; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Service; import java.util.List; /** * @Description * @Author CZT * @Date 2025/11/29 16:34 */ @Service public interface InoutNoticeOutRepository extends JpaRepository<InoutNoticeOut, String> , JpaSpecificationExecutor<InoutNoticeOut> { /** * æ ¹æ®ç»ç»ç¼ç ååºåºç¼ç è·åä¿¡æ¯ * * @param companyId * @param deptId * @param id * @return */ @Query("from InoutNoticeOut where companyId =:companyId and deptId =:deptId and id =:id") InoutNoticeOut getDataById(@Param("companyId") String companyId, @Param("deptId") String deptId, @Param("id") String id); /** * æ ¹æ®ç»ç»ç¼ç ååºåºç¼ç è·åä¿¡æ¯ * * @param companyId * @param deptId * @param completeStatus * @return */ @Query("from InoutNoticeOut where companyId =:companyId and deptId =:deptId and completeStatus =:completeStatus") List<InoutNoticeOut> listNoticeOut(@Param("companyId") String companyId, @Param("deptId") String deptId, @Param("completeStatus") String completeStatus); /** * æ ¹æ®ç»ç»ç¼ç ååºåºç¼ç è·åä¿¡æ¯ * * @param companyId * @param completeStatus * @return */ @Query("from InoutNoticeOut where companyId =:companyId and completeStatus =:completeStatus") List<InoutNoticeOut> listNoticeOut(@Param("companyId") String companyId, @Param("completeStatus") String completeStatus); } fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeIn.view.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,636 @@ <?xml version="1.0" encoding="UTF-8"?> <ViewConfig> <Arguments/> <Context/> <Model> <DataType name="dtMain"> <Property name="creationType">com.fzzy.igds.domain.InoutNoticeIn</Property> <PropertyDef name="id"> <Property></Property> <Property name="label">éç¥åå·</Property> </PropertyDef> <PropertyDef name="companyId"> <Property></Property> <Property name="label">ç»ç»ç¼ç </Property> </PropertyDef> <PropertyDef name="deptId"> <Property></Property> <Property name="label">æå±ååº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deptPR#getAllData").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">kqmc</Property> </Property> </PropertyDef> <PropertyDef name="name"> <Property></Property> <Property name="label">éç¥ååç§°</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="type"> <Property></Property> <Property name="label">ç±»å</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="name">åºåºèªå»º</Property> <Property name="code">10</Property> </Entity> <Entity> <Property name="name">é¶è¡ç管</Property> <Property name="code">20</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="contractId"> <Property></Property> <Property name="label">è´¨æ¼åå</Property> <Property name="required">false</Property> </PropertyDef> <PropertyDef name="depotId"> <Property></Property> <Property name="label">å ¥åºä»åº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="customerName"> <Property></Property> <Property name="label">å货客æ·</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="unitName"> <Property></Property> <Property name="label">æ¶è´§åä½</Property> <Property name="required">false</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deptPR#getAllData").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">kqmc</Property> </Property> </PropertyDef> <PropertyDef name="foodVariety"> <Property></Property> <Property name="label">ç²®é£åç§</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("FOOD_VARIETY_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="year"> <Property></Property> <Property name="label">年份</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="targetNumber"> <Property name="dataType">Double</Property> <Property name="displayFormat">#0.0 KG</Property> <Property name="required">true</Property> <Property name="label">ç®æ æ°é</Property> </PropertyDef> <PropertyDef name="completeNumber"> <Property name="dataType">Double</Property> <Property name="label">宿æ°é</Property> <Property name="displayFormat">#0.0 KG</Property> </PropertyDef> <PropertyDef name="auditStatus"> <Property></Property> <Property name="label">å®¡æ ¸ç¶æ</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="name">çç®¡å®¡æ ¸</Property> <Property name="code">10</Property> </Entity> <Entity> <Property name="name">é¶è¡å®¡æ ¸</Property> <Property name="code">20</Property> </Entity> <Entity> <Property name="name">å·²å®¡æ ¸</Property> <Property name="code">30</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="auditUser"> <Property></Property> <Property name="label">å®¡æ ¸äºº</Property> </PropertyDef> <PropertyDef name="auditDate"> <Property name="dataType">DateTime</Property> <Property name="label">å®¡æ¹æ¶é´</Property> </PropertyDef> <PropertyDef name="completeStatus"> <Property></Property> <Property name="label">å®æç¶æ</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="name">æªå®æ</Property> <Property name="code">NONE</Property> </Entity> <Entity> <Property name="name">已宿</Property> <Property name="code">COMPLETE</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="completeTime"> <Property name="dataType">DateTime</Property> <Property name="label">宿æ¶é´</Property> </PropertyDef> <PropertyDef name="remark"> <Property></Property> <Property name="label">夿³¨ä¿¡æ¯</Property> </PropertyDef> <PropertyDef name="tag"> <Property></Property> <Property name="label">æ è®°</Property> </PropertyDef> <PropertyDef name="createTime"> <Property name="dataType">DateTime</Property> <Property name="label">å建æ¶é´</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="createBy"> <Property></Property> <Property name="label">å建人</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="updateTime"> <Property name="dataType">DateTime</Property> <Property name="label">æ´æ°æ¶é´</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="updateBy"> <Property></Property> <Property name="label">æ´æ°äºº</Property> <Property name="readOnly">true</Property> </PropertyDef> </DataType> <DataType name="dtQuery"> <PropertyDef name="depotId"> <Property></Property> <Property name="label">è£ å¸ä»åº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="customerName"> <Property></Property> <Property name="label">å货客æ·</Property> </PropertyDef> <PropertyDef name="foodVariety"> <Property></Property> <Property name="label">ç²®é£åç§</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("FOOD_VARIETY_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="completeStatus"> <Property></Property> <Property name="label">å®æç¶æ</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="name">æªå®æ</Property> <Property name="code">NONE</Property> </Entity> <Entity> <Property name="name">已宿</Property> <Property name="code">COMPLETE</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> </DataType> <DataType name="dtQueryTitle"> <PropertyDef name="title"> <Property name="label">title</Property> </PropertyDef> </DataType> </Model> <View layout="padding:10"> <ClientEvent name="onReady">var deptId = window.parent.deptId;//ç¶é¡µé¢ä¸çååºç¼ç 
 var TYPE = "NOTICE_IN";
 query = function(){
 view.get("#dsQuery").set("parameter",{deptId:deptId}).flushAsync();
 };
 query();
 
 queryTitle = function(){
 view.get("#dsQueryTitle").set("parameter",{type:TYPE,deptId:deptId}).flushAsync();
 };
 queryTitle();
 
 //æ°å¢
 add = function(){
 view.get("#ajaxInitAdd").set("parameter", TYPE).execute(function(data){
 view.get("#dsMain").insert(data);
 view.get("#dialogMain").show();
 });
 };</ClientEvent> <Property name="packages">font-awesome,css-common</Property> <DataSet id="dsMain"> <Property name="dataType">[dtMain]</Property> <Property name="dataProvider">inoutNoticePR#pageQueryIn</Property> <Property name="pageSize">15</Property> <Property name="loadMode">lazy</Property> </DataSet> <DataSet id="dsQuery"> <Property name="dataType">dtQuery</Property> <Property name="dataProvider">inoutNoticePR#getYearQuery</Property> <Property name="loadMode">manual</Property> </DataSet> <DataSet id="dsQueryTitle"> <Property name="dataType">dtQueryTitle</Property> <Property name="dataProvider">inoutNoticePR#getTitle</Property> <Property name="loadMode">manual</Property> </DataSet> <Container> <Property name="className">c-param</Property> <AutoForm> <Property name="cols">*,*,*,*,90,90</Property> <Property name="dataSet">dsQuery</Property> <Property name="labelAlign">right</Property> <Property name="labelWidth">100</Property> <AutoFormElement> <Property name="name">depotId</Property> <Property name="property">depotId</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">customerName</Property> <Property name="property">customerName</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodVariety</Property> <Property name="property">foodVariety</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">completeStatus</Property> <Property name="property">completeStatus</Property> <Editor/> </AutoFormElement> <Button> <ClientEvent name="onClick">var data = view.get("#dsQuery.data");
 if(data){
 view.get("#dsMain").set("parameter",data.toJSON()).flushAsync();
 }else{
 view.get("#dsMain").flushAsync();
 }</ClientEvent> <Property name="caption">æç´¢</Property> <Property name="iconClass">fa fa-search</Property> <Property name="exClassName">btn-q1</Property>> </Button> <Button> <ClientEvent name="onClick">view.get("#dsQuery").flushAsync();</ClientEvent> <Property name="caption">éç½®</Property> <Property name="exClassName">btn-q2</Property> <Property name="iconClass">fa fa-refresh</Property> </Button> </AutoForm> </Container> <Container> <Property name="className">c-data</Property> <ToolBar> <ToolBarButton layoutConstraint="left"> <ClientEvent name="onClick">add();</ClientEvent> <Property name="caption">æ°å¢</Property> <Property name="exClassName">btn1</Property> <Property name="width">100</Property> <Property name="iconClass">fa fa-plus</Property> </ToolBarButton> <ToolBarButton layoutConstraint="left"> <ClientEvent name="onClick">
 var select = view.get("#dataGridMain").get("selection");
 if(select){
 view.get("#dialogMain").show();
 }else{
 $notify("è¯·éæ©éè¦ä¿®æ¹çæ°æ®â¦â¦");
 }</ClientEvent> <Property name="caption">ä¿®æ¹</Property> <Property name="exClassName">btn2</Property> <Property name="width">100</Property> <Property name="iconClass">fa fa-pencil-square-o</Property> </ToolBarButton> <ToolBarButton layoutConstraint="left"> <ClientEvent name="onClick">
 var select = view.get("#dataGridMain").get("selection");
 if(select){
 view.get("#ajaxDel").set("parameter",select).execute(function(result){
 select.remove();
 });
 }else{
 $notify("è¯·éæ©éè¦å é¤çä»åºâ¦â¦");
 }</ClientEvent> <Property name="caption">å é¤</Property> <Property name="exClassName">btn3</Property> <Property name="width">100</Property> <Property name="iconClass">fa fa-times</Property> </ToolBarButton> <ToolBarButton layoutConstraint="left"> <ClientEvent name="onClick">view.get("#recalculate").execute(function(result){
 if(result == 'success'){
 $notify("æ°æ®æ´æ°å®æï¼ï¼");
 
 var data = view.get("#dsQuery.data");
 view.get("#dsMain").set("parameter",data.toJSON()).flushAsync();
 }else{
 $notify("æ°æ®æ´æ°å¤±è´¥ï¼ï¼");
 }
 });</ClientEvent> <Property name="caption">宿¶æ ¸ç®</Property> <Property name="exClassName">btn4</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="width">100</Property> <Property name="tip">宿éé»è®¤ç»è®¡å°æ¨å¤©ï¼æ¥ç宿¶å®æé请ç¹å»â宿¶æ ¸ç®âæé®</Property> </ToolBarButton> </ToolBar> <DataGrid id="dataGridMain" layoutConstraint="padding:8"> <ClientEvent name="onDataRowClick">view.get("#dataGridCamera").set("selection",arg.data);</ClientEvent> <Property name="dataSet">dsMain</Property> <Property name="readOnly">true</Property> <Property name="selectionMode">singleRow</Property> <Property name="readOnly">true</Property> <RowSelectorColumn/> <RowNumColumn> <Property name="width">50</Property> <Property name="caption">åºå·</Property> </RowNumColumn> <DataColumn name="id"> <Property name="property">id</Property> <Property name="width">200</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="name"> <Property name="property">name</Property> <Property name="align">center</Property> <Property name="width">120</Property> </DataColumn> <DataColumn> <Property name="property">customerName</Property> <Property name="name">customerName</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="depotId"> <Property name="property">depotId</Property> <Property name="align">center</Property> <Property name="width">150</Property> </DataColumn> <DataColumn name="foodVariety"> <Property name="property">foodVariety</Property> <Property name="align">center</Property> <Property name="width">150</Property> </DataColumn> <DataColumn> <Property name="property">targetNumber</Property> <Property name="name">targetNumber</Property> <Property name="align">center</Property> <Property name="width">200</Property> </DataColumn> <DataColumn> <Property name="property">completeStatus</Property> <Property name="name">completeStatus</Property> <Property name="align">center</Property> <Property name="width">100</Property> </DataColumn> <DataColumn> <Property name="property">createTime</Property> <Property name="align">center</Property> <Property name="name">createTime</Property> <Property name="width">160</Property> </DataColumn> <DataColumn> <Property name="property">updateBy</Property> <Property name="align">center</Property> <Property name="name">updateBy</Property> <Property name="width">120</Property> </DataColumn> <DataColumn> <Property name="property">updateTime</Property> <Property name="align">center</Property> <Property name="name">updateTime</Property> <Property name="width">160</Property> </DataColumn> </DataGrid> </Container> <Container layoutConstraint="bottom"> <Property name="className">c-bottom</Property> <DataPilot layoutConstraint="right"> <Property name="itemCodes">pageSize,pages</Property> <Property name="dataSet">dsMain</Property> </DataPilot> </Container> <Dialog id="dialogMain" layout="regionPadding:8"> <Property name="closeable">false</Property> <Property name="caption">å ¥åºéç¥å</Property> <Property name="width">60%</Property> <Property name="iconClass">fa fa-tasks</Property> <Buttons> <Button id="btnOk"> <ClientEvent name="onClick">var data = view.get("#dsMain.data:#");
 if(data.validate() != 'ok'){
 $notify("æ°æ®æ ¡éªå¤±è´¥ï¼ï¼");
 return;
 }
 view.get("#ajaxSave").set("parameter",data).execute(function(result){
 if(result){
 $alert(result);
 return;
 }
 $notify("æ°æ®æ§è¡å®æï¼ï¼");
 self.get("parent").hide();
 });</ClientEvent> <Property name="caption">ä¿å</Property> <Property name="iconClass">fa fa-check-circle</Property> <Property name="exClassName">btn1</Property> <Property name="width">120</Property> </Button> <Button> <ClientEvent name="onClick">view.get("#dsMain.data:#").cancel();
 self.get("parent").hide();</ClientEvent> <Property name="caption">åæ¶</Property> <Property name="exClassName">btn3</Property> <Property name="iconClass">fa fa-times-circle</Property> <Property name="width">120</Property> </Button> </Buttons> <Children> <Container> <AutoForm id="autoForm1" layoutConstraint="top padding:10"> <Property name="cols">*,*,*,*,*,*,*</Property> <Property name="dataSet">dsQueryTitle</Property> <Property name="labelAlign">right</Property> <Property name="showHint">false</Property> <AutoFormElement layoutConstraint="colSpan:7"> <Property name="name">title</Property> <Property name="property">title</Property> <Property name="showLabel">false</Property> <Property name="editorType">Label</Property> <Property name="style"> <Property name="font">bold 30px Georgia, serif;</Property> <Property name="text-align">center</Property> </Property> <Editor/> </AutoFormElement> </AutoForm> <Container layout="padding:15"> <AutoForm> <Property name="dataSet">dsMain</Property> <Property name="cols">*,*,*</Property> <Property name="labelAlign">right</Property> <Property name="labelSeparator">ï¼</Property> <Property name="labelWidth">120</Property> <AutoFormElement> <Property name="name">name</Property> <Property name="property">name</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">depotId</Property> <Property name="property">depotId</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">id</Property> <Property name="property">id</Property> <Property name="readOnly">true</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodVariety</Property> <Property name="property">foodVariety</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">customerName</Property> <Property name="property">customerName</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">unitName</Property> <Property name="property">unitName</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">year</Property> <Property name="property">year</Property> <Property name="trigger">defaultYearDropDown</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">targetNumber</Property> <Property name="property">targetNumber</Property> <Property name="readOnly">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">completeNumber</Property> <Property name="property">completeNumber</Property> <Property name="readOnly">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">type</Property> <Property name="property">type</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">completeStatus</Property> <Property name="property">completeStatus</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">completeTime</Property> <Property name="property">completeTime</Property> <Property name="readOnly">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">contractId</Property> <Property name="property">contractId</Property> <Editor/> </AutoFormElement> <Label layoutConstraint="colSpan:2"> <Property name="style"> <Property name="color">blue</Property> </Property> <Property name="text">注ï¼ç±»å为é¶è¡ç管æ¶ï¼éå ³èè´¨æ¼åå</Property> </Label> <AutoFormElement layoutConstraint="colSpan:2"> <Property name="name">remark</Property> <Property name="property">remark</Property> <Property name="editorType">TextArea</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">createBy</Property> <Property name="property">createBy</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">createTime</Property> <Property name="property">createTime</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">updateBy</Property> <Property name="property">updateBy</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">updateTime</Property> <Property name="property">updateTime</Property> <Editor/> </AutoFormElement> </AutoForm> </Container> </Container> </Children> <Tools/> </Dialog> <AjaxAction id="ajaxSave"> <Property name="service">inoutNoticePR#saveIn</Property> </AjaxAction> <AjaxAction id="ajaxDel"> <Property name="service">inoutNoticePR#delDataIn</Property> <Property name="confirmMessage">ç¡®å®è¦æ§è¡å é¤ä¹ï¼</Property> </AjaxAction> <AjaxAction id="ajaxInitAdd"> <Property name="service">inoutNoticePR#initAddIn</Property> </AjaxAction> <AjaxAction id="recalculate"> <Property name="service">inoutNoticePR#updateSumNoticeIn</Property> </AjaxAction> </View> </ViewConfig> fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeOut.view.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,1122 @@ <?xml version="1.0" encoding="UTF-8"?> <ViewConfig> <Arguments/> <Context/> <Model> <DataType name="dtMain"> <ClientEvent name="onDataChange">if(arg.property =="depotId"){
 autoByDepot(arg.newValue);
 }</ClientEvent> <Property name="creationType">com.fzzy.igds.models.InoutNoticeOut</Property> <PropertyDef name="id"> <Property></Property> <Property name="label">éç¥åå·</Property> </PropertyDef> <PropertyDef name="companyId"> <Property></Property> <Property name="label">ç»ç»ç¼ç </Property> </PropertyDef> <PropertyDef name="deptId"> <Property></Property> <Property name="label">æå±ååº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deptPR#loadParents").getResult()}</Property> <Property name="keyProperty">deptId</Property> <Property name="valueProperty">deptName</Property> </Property> <Property name="required">false</Property> </PropertyDef> <PropertyDef name="planId"> <Property></Property> <Property name="label">æå±è®¡å</Property> <Property name="required">false</Property> </PropertyDef> <PropertyDef name="planName"> <Property></Property> <Property name="label">æå±è®¡å</Property> <Property name="required">false</Property> </PropertyDef> <PropertyDef name="contractId"> <Property></Property> <Property name="label">æå±åå</Property> <Property name="required">false</Property> </PropertyDef> <PropertyDef name="contractName"> <Property></Property> <Property name="label">æå±åå</Property> <Property name="required">false</Property> </PropertyDef> <PropertyDef name="name"> <Property></Property> <Property name="label">éç¥ååç§°</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="depotId"> <Property></Property> <Property name="label">åºåºä»åº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="customerId"> <Property></Property> <Property name="label">æ¶è´§å®¢æ·</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="customerName"> <Property></Property> <Property name="label">æ¶è´§å®¢æ·</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="unitName"> <Property></Property> <Property name="label">åè´§åä½</Property> <Property name="required">false</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deptPR#loadParents").getResult()}</Property> <Property name="keyProperty">deptId</Property> <Property name="valueProperty">deptName</Property> </Property> </PropertyDef> <PropertyDef name="foodVariety"> <Property></Property> <Property name="label">ç²®é£åç§</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("FOOD_VARIETY_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="year"> <Property></Property> <Property name="label">ç²®é£å¹´ä»½</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="targetNumber"> <Property name="dataType">double</Property> <Property name="displayFormat">#,## kG</Property> <Property name="required">true</Property> <Property name="label">è®¡åæ°é</Property> </PropertyDef> <PropertyDef name="completeNumber"> <Property name="dataType">double</Property> <Property name="label">宿æ°é</Property> <Property name="displayFormat">#,## kG</Property> </PropertyDef> <PropertyDef name="auditStatus"> <Property></Property> <Property name="label">å®¡æ ¸ç¶æ</Property> </PropertyDef> <PropertyDef name="auditUser"> <Property></Property> <Property name="label">å®¡æ ¸äºº</Property> </PropertyDef> <PropertyDef name="completeStatus"> <Property></Property> <Property name="label">å®æç¶æ</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="name">æªå®æ</Property> <Property name="code">NONE</Property> </Entity> <Entity> <Property name="name">已宿</Property> <Property name="code">COMPLETE</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="createTime"> <Property name="dataType">DateTime</Property> <Property name="label">å建æ¶é´</Property> </PropertyDef> <PropertyDef name="createUser"> <Property></Property> <Property name="label">å建人</Property> </PropertyDef> <PropertyDef name="completeTime"> <Property name="dataType">DateTime</Property> <Property name="label">宿æ¶é´</Property> </PropertyDef> <PropertyDef name="remark"> <Property></Property> <Property name="label">夿³¨ä¿¡æ¯</Property> </PropertyDef> <PropertyDef name="tag"> <Property></Property> <Property name="label">æ è®°</Property> </PropertyDef> </DataType> <DataType name="dtQuery"> <PropertyDef name="id"> <Property></Property> <Property name="label">éç¥åå·</Property> </PropertyDef> <PropertyDef name="deptId"> <Property></Property> <Property name="label">åè´§åä½</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deptPR#loadParents").getResult()}</Property> <Property name="keyProperty">deptId</Property> <Property name="valueProperty">deptName</Property> </Property> </PropertyDef> <PropertyDef name="foodVariety"> <Property></Property> <Property name="label">ç²®é£åç§</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("FOOD_VARIETY_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="year"> <Property></Property> <Property name="label">年份</Property> </PropertyDef> <PropertyDef name="completeStatus"> <Property></Property> <Property name="label">å®æç¶æ</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="name">æªå®æ</Property> <Property name="code">NONE</Property> </Entity> <Entity> <Property name="name">已宿</Property> <Property name="code">COMPLETE</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="depotId"> <Property></Property> <Property name="label">åºåºä»åº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> <Property name="required">true</Property> </PropertyDef> </DataType> <DataType name="dtQueryTitle"> <PropertyDef name="title"> <Property name="label">title</Property> </PropertyDef> </DataType> <DataType name="dtPlan"> <Property name="creationType">com.fzzy.igds.models.InoutPlanDetail</Property> <PropertyDef name="id"> <Property></Property> <Property name="label">计åæç»å·</Property> </PropertyDef> <PropertyDef name="planId"> <Property name="label">计åç¼ç </Property> </PropertyDef> <PropertyDef name="foodVariety"> <Property></Property> <Property name="label">ç²®é£åç§</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("FOOD_VARIETY_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="foodType"> <Property></Property> <Property name="label">ç²®é£æ§è´¨</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("FOOD_TYPE_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="foodLevel"> <Property></Property> <Property name="label">ç²®é£ç级</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerFoodLevel").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="year"> <Property></Property> <Property name="label">æ¶è·å¹´åº¦</Property> </PropertyDef> <PropertyDef name="depotId"> <Property></Property> <Property name="label">ä»åº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="planNum"> <Property name="dataType">Double</Property> <Property name="label">è®¡åæ°é</Property> </PropertyDef> <PropertyDef name="type"> <Property name="label">计åç±»å</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerPlanType").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="updateTime"> <Property></Property> <Property name="label">æ´æ°æ¶é´</Property> </PropertyDef> </DataType> <DataType name="dtContract"> <Property name="creationType">com.fzzy.igds.models.InoutContract</Property> <PropertyDef name="id"> <Property></Property> <Property name="label">ID_</Property> </PropertyDef> <PropertyDef name="companyId"> <Property></Property> <Property name="label">ç»ç»ç¼ç </Property> </PropertyDef> <PropertyDef name="deptId"> <Property></Property> <Property name="label">æå±åºåº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deptPR#loadParents").getResult()}</Property> <Property name="keyProperty">deptId</Property> <Property name="valueProperty">deptName</Property> </Property> </PropertyDef> <PropertyDef name="planId"> <Property></Property> <Property name="label">æå±è®¡å</Property> </PropertyDef> <PropertyDef name="planName"> <Property></Property> <Property name="label">æå±è®¡å</Property> </PropertyDef> <PropertyDef name="type"> <Property></Property> <Property name="label">ååç±»å</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerContractType").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="name"> <Property></Property> <Property name="label">åååç§°</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="year"> <Property></Property> <Property name="label">年份</Property> </PropertyDef> <PropertyDef name="customerId"> <Property></Property> <Property name="label">客æ·ç¼ç </Property> </PropertyDef> <PropertyDef name="customerName"> <Property></Property> <Property name="label">客æ·åç§°</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="customerType"> <Property></Property> <Property name="label">客æ·ç±»å</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="code">1</Property> <Property name="name">1-ä¼ä¸</Property> </Entity> <Entity> <Property name="code">2</Property> <Property name="name">2-个人</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="customerBank"> <Property></Property> <Property name="label">客æ·å¼æ·è¡</Property> </PropertyDef> <PropertyDef name="customerBankAccount"> <Property></Property> <Property name="label">客æ·å¼æ·è¡è´¦å·</Property> </PropertyDef> <PropertyDef name="customerSignUser"> <Property></Property> <Property name="label">客æ·ç¾çº¦äºº</Property> </PropertyDef> <PropertyDef name="bank"> <Property></Property> <Property name="label">æ¬æ¹å¼æ·è¡</Property> </PropertyDef> <PropertyDef name="bankAccount"> <Property></Property> <Property name="label">æ¬æ¹å¼æ·è¡è´¦å·</Property> </PropertyDef> <PropertyDef name="signUser"> <Property></Property> <Property name="label">æ¬æ¹ç¾çº¦äºº</Property> </PropertyDef> <PropertyDef name="signAddress"> <Property></Property> <Property name="label">ç¾çº¦å°å</Property> </PropertyDef> <PropertyDef name="price"> <Property name="dataType">Double</Property> <Property name="label">åä»·</Property> <Property name="displayFormat">#,###0.000 å /å ¬æ¤</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="money"> <Property name="dataType">Double</Property> <Property name="label">æ»éé¢</Property> <Property name="displayFormat">#,###0.000 å </Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="contactAmount"> <Property name="dataType">Double</Property> <Property name="label">ååæ°é</Property> <Property name="displayFormat">#,##0.00 KG</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="completeNum"> <Property name="dataType">Double</Property> <Property name="label">åå宿æ°é</Property> <Property name="displayFormat">#,##0.00 KG</Property> </PropertyDef> <PropertyDef name="foodVariety"> <Property></Property> <Property name="label">ç²®é£åç§</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("FOOD_VARIETY_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="foodType"> <Property></Property> <Property name="label">ç²®é£æ§è´¨</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("FOOD_TYPE_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="payType"> <Property></Property> <Property name="label">æ¯ä»æ¹å¼</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("PAY_TYPE")}</Property> <Property name="valueProperty">dictLabel</Property> <Property name="keyProperty">dictValue</Property> </Property> </PropertyDef> <PropertyDef name="createUser"> <Property></Property> <Property name="label">å建人</Property> </PropertyDef> <PropertyDef name="createTime"> <Property name="dataType">Date</Property> <Property name="label">å建æ¶é´</Property> </PropertyDef> <PropertyDef name="signingTime"> <Property name="dataType">Date</Property> <Property name="label">ç¾è®¢æ¶é´</Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="beginTime"> <Property name="dataType">Date</Property> <Property name="label">ææå¼å§æ¶é´</Property> </PropertyDef> <PropertyDef name="endTime"> <Property name="dataType">Date</Property> <Property name="label">æææªæ¢æ¶é´</Property> </PropertyDef> <PropertyDef name="remark"> <Property></Property> <Property name="label">夿³¨è¯´æ</Property> </PropertyDef> </DataType> </Model> <View layout="padding:5;regionPadding:5"> <ClientEvent name="onReady">var deptId = window.parent.deptId;//ç¶é¡µé¢ä¸çååºç¼ç 
 var TYPE = "NOTICE_OUT";
 query = function(){
 view.get("#dsQuery").set("parameter",{deptId:deptId}).flushAsync();
 };
 query();
 
 queryTitle = function(){
 view.get("#dsQueryTitle").set("parameter",{type:TYPE,deptId:deptId}).flushAsync();
 };
 queryTitle();
 
 //æ°å¢
 add = function(){
 view.get("#ajaxInitAdd").set("parameter", TYPE).execute(function(data){
 view.get("#dsMain").insert(data);
 view.get("#dialogMain").show();
 });
 };
 
 //æ ¹æ®ä»åºèªå¨åå¡«ç²®é£åç§ï¼ç级ï¼äº§å°æ°
 autoByDepot = function(depotId){
 view.get("#ajaxGetDepot").set("parameter",depotId).execute(function(result){
 if(result){
 var data = view.get("#dataGridMain.currentEntity");
 data.set("foodVariety",result.foodVariety);
 
 }
 });
 };</ClientEvent> <Property name="packages">font-awesome,css-common</Property> <DataSet id="dsMain"> <Property name="dataType">[dtMain]</Property> <Property name="dataProvider">inoutNoticePR#pageQueryOut</Property> <Property name="pageSize">15</Property> <Property name="loadMode">lazy</Property> </DataSet> <DataSet id="dsQueryTitle"> <Property name="dataType">dtQueryTitle</Property> <Property name="dataProvider">inoutNoticePR#getTitle</Property> <Property name="loadMode">manual</Property> </DataSet> <DataSet id="dsQuery"> <Property name="dataType">dtQuery</Property> <Property name="dataProvider">inoutNoticePR#getYearQuery</Property> <Property name="loadMode">manual</Property> </DataSet> <AutoForm layoutConstraint="top"> <Property name="cols">*,*,*,*</Property> <Property name="dataSet">dsQuery</Property> <Property name="exClassName">bg-color</Property> <AutoFormElement> <Property name="name">foodVariety</Property> <Property name="property">foodVariety</Property> <Property name="editable">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">year</Property> <Property name="property">year</Property> <Property name="trigger">defaultYearDropDown</Property> <Property name="editable">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">completeStatus</Property> <Property name="property">completeStatus</Property> <Property name="editable">false</Property> <Editor/> </AutoFormElement> <Container layout="hbox regionPadding:15"> <Button> <ClientEvent name="onClick">var data = view.get("#dsQuery.data");
 if(data){
 view.get("#dsMain").set("parameter",data.toJSON()).flushAsync();
 }else{
 view.get("#dsMain").flushAsync();
 }</ClientEvent> <Property name="caption">æ¥è¯¢</Property> <Property name="exClassName">btn1</Property> <Property name="iconClass">fa fa-search</Property> </Button> <Button> <ClientEvent name="onClick">view.get("#dsQuery").flushAsync();</ClientEvent> <Property name="exClassName">btn2</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="caption">éç½®</Property> </Button> </Container> <Container layout="regionPadding:10" layoutConstraint="type:top;colSpan:2"> <Property name="exClassName">bg-color</Property> <Property name="contentOverflow">hidden</Property> <Property name="height">55</Property> <Label layoutConstraint="left"> <Property name="text">èåæ ï¼</Property> </Label> <Button layoutConstraint="left"> <ClientEvent name="onClick">add();
 //view.get("#dsMain").insert({
 // name:"åºåºéç¥å"
 // });
 // view.get("#dialogMain").show();</ClientEvent> <Property name="caption">æ°å¢</Property> <Property name="exClassName">btn1</Property> <Property name="iconClass">fa fa-plus</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">
 var select = view.get("#dataGridMain").get("selection");
 if(select){
 view.get("#dialogMain").show();
 }else{
 $notify("è¯·éæ©éè¦ä¿®æ¹çæ°æ®â¦â¦");
 }</ClientEvent> <Property name="caption">ç¼è¾</Property> <Property name="exClassName">btn2</Property> <Property name="iconClass">fa fa-pencil</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">
 var select = view.get("#dataGridMain").get("selection");
 if(select){
 view.get("#ajaxDel").set("parameter",select).execute(function(result){
 select.remove();
 });
 }else{
 $notify("è¯·éæ©éè¦å é¤çä»åºâ¦â¦");
 }
 </ClientEvent> <Property name="caption">å é¤</Property> <Property name="exClassName">btn3</Property> <Property name="iconClass">fa fa-minus</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">var data = view.get("#dsQuery.data");
 var page = view.get("#dsMain");
 var param = {
 "pageSize":page.get("pageSize"),
 "pageNo":page.get("pageNo"),
 "foodVariety":data.get("foodVariety"),
 "year":data.get("year"),
 "completeStatus":data.get("completeStatus")
 }
 console.log(param);
 window.parent.$.table.exportExcelDorado("./export/noticeOut-excel", "åºåºéç¥åæ°æ®", param);</ClientEvent> <Property name="caption">导åºEXCEL</Property> <Property name="exClassName">btn4</Property> <Property name="iconClass">fa fa-file-excel-o</Property> <Property name="action">exportExcel</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">view.get("#recalculate").execute(function(result){
 if(result == 'success'){
 $notify("æ°æ®æ´æ°å®æï¼ï¼");
 
 var data = view.get("#dsQuery.data");
 view.get("#dsMain").set("parameter",data.toJSON()).flushAsync();
 }else{
 $notify("æ°æ®æ´æ°å¤±è´¥ï¼ï¼");
 }
 });</ClientEvent> <Property name="caption">宿¶æ ¸ç®</Property> <Property name="exClassName">btn2</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="tip">宿éé»è®¤ç»è®¡å°æ¨å¤©ï¼æ¥ç宿¶å®æé请ç¹å»â宿¶æ ¸ç®âæé®</Property> </Button> </Container> </AutoForm> <Container layoutConstraint="center"> <Property name="exClassName">bg-color</Property> <DataGrid id="dataGridMain" layoutConstraint="center"> <ClientEvent name="onDataRowDoubleClick">var data = view.get("#dsMain.data:#");
 if(data){
 view.get("#dialogMain").show();
 }</ClientEvent> <Property name="dataSet">dsMain</Property> <Property name="readOnly">true</Property> <Property name="selectionMode">singleRow</Property> <RowSelectorColumn/> <RowNumColumn> <Property name="width">50</Property> <Property name="caption">åºå·</Property> </RowNumColumn> <DataColumn name="id"> <Property name="property">id</Property> <Property name="width">200</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="name"> <Property name="property">name</Property> <Property name="align">center</Property> <Property name="width">120</Property> </DataColumn> <DataColumn> <Property name="property">customerName</Property> <Property name="name">customerName</Property> <Property name="align">center</Property> </DataColumn> <DataColumn> <Property name="property">depotId</Property> <Property name="name">depotId</Property> <Property name="align">center</Property> <Property name="width">100</Property> </DataColumn> <DataColumn name="foodVariety"> <Property name="property">foodVariety</Property> <Property name="align">center</Property> <Property name="width">150</Property> </DataColumn> <DataColumn> <Property name="property">targetNumber</Property> <Property name="name">targetNumber</Property> <Property name="align">center</Property> <Property name="width">200</Property> </DataColumn> <DataColumn> <Property name="property">completeNumber</Property> <Property name="align">center</Property> <Property name="name">completeNumber</Property> <Property name="width">200</Property> </DataColumn> <DataColumn> <Property name="property">completeStatus</Property> <Property name="name">completeStatus</Property> <Property name="align">center</Property> <Property name="width">100</Property> </DataColumn> <DataColumn> <Property name="property">createTime</Property> <Property name="align">center</Property> <Property name="name">createTime</Property> <Property name="width">200</Property> </DataColumn> </DataGrid> </Container> <Container layoutConstraint="bottom"> <Property name="exClassName">bg-color</Property> <DataPilot layoutConstraint="right"> <Property name="itemCodes">pageSize,pages</Property> <Property name="dataSet">dsMain</Property> </DataPilot> </Container> <Dialog id="dialogMain"> <Property name="closeable">false</Property> <Property name="caption">åºåºå</Property> <Property name="width">60%</Property> <Property name="iconClass">fa fa-tasks</Property> <Buttons> <Button id="btnOk"> <ClientEvent name="onClick">var data = view.get("#dsMain.data:#");
 if(data.validate() != 'ok'){
 $notify("æ°æ®æ ¡éªå¤±è´¥ï¼ï¼");
 return;
 }
 view.get("#ajaxSave").set("parameter",data).execute(function(result){
 if(result){
 $alert(result);
 return;
 }
 $notify("æ°æ®æ§è¡å®æï¼ï¼");
 self.get("parent").hide();
 });</ClientEvent> <Property name="caption">ç¡®å®</Property> <Property name="iconClass">fa fa-check</Property> <Property name="exClassName">btn1</Property> </Button> <Button> <ClientEvent name="onClick">view.get("#dsMain.data:#").cancel();
 self.get("parent").hide();</ClientEvent> <Property name="caption">åæ¶</Property> <Property name="iconClass">fa fa-times</Property> <Property name="exClassName">btn3</Property> </Button> </Buttons> <Children> <Container> <AutoForm id="autoForm1" layoutConstraint="top padding:10"> <Property name="cols">*,*,*,*,*,*,*</Property> <Property name="dataSet">dsQueryTitle</Property> <Property name="labelAlign">right</Property> <Property name="showHint">false</Property> <AutoFormElement layoutConstraint="colSpan:7"> <Property name="name">title</Property> <Property name="property">title</Property> <Property name="showLabel">false</Property> <Property name="editorType">Label</Property> <Property name="style"> <Property name="font">bold 30px Georgia, serif;</Property> <Property name="text-align">center</Property> </Property> <Editor/> </AutoFormElement> </AutoForm> <Container layout="padding:15"> <AutoForm> <Property name="dataSet">dsMain</Property> <Property name="cols">*,*</Property> <Property name="labelAlign">right</Property> <Property name="labelSeparator">ï¼</Property> <Property name="labelWidth">120</Property> <AutoFormElement> <Property name="name">name</Property> <Property name="property">name</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">id</Property> <Property name="property">id</Property> <Property name="readOnly">true</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">customerName</Property> <Property name="property">customerName</Property> <Property name="trigger">ddCustomer</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">unitName</Property> <Property name="property">unitName</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">depotId</Property> <Property name="property">depotId</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodVariety</Property> <Property name="property">foodVariety</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">year</Property> <Property name="property">year</Property> <Property name="trigger">defaultYearDropDown</Property> <Editor/> </AutoFormElement> <Label layoutConstraint="colSpan:1"/> <AutoFormElement> <Property name="name">targetNumber</Property> <Property name="property">targetNumber</Property> <Property name="readOnly">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">completeNumber</Property> <Property name="property">completeNumber</Property> <Property name="readOnly">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">planName</Property> <Property name="property">planName</Property> <Property name="trigger">ddPlan</Property> <Editor/> </AutoFormElement> <Label layoutConstraint="colSpan:1"> <Property name="style"> <Property name="color">blue</Property> </Property> <Property name="text">注ï¼å½åéç¥åå ³èçåºåºè®¡å</Property> </Label> <AutoFormElement> <Property name="name">contractName</Property> <Property name="property">contractName</Property> <Property name="trigger">ddContract</Property> <Editor/> </AutoFormElement> <Label layoutConstraint="colSpan:1"> <Property name="style"> <Property name="color">blue</Property> </Property> <Property name="text">注ï¼å½åéç¥åå ³èçéå®åå</Property> </Label> <AutoFormElement> <Property name="name">createTime</Property> <Property name="property">createTime</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">completeTime</Property> <Property name="property">completeTime</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">completeStatus</Property> <Property name="property">completeStatus</Property> <Editor/> </AutoFormElement> <AutoFormElement layoutConstraint="colSpan:2"> <Property name="name">remark</Property> <Property name="property">remark</Property> <Property name="editorType">TextArea</Property> <Editor/> </AutoFormElement> </AutoForm> </Container> </Container> </Children> <Tools/> </Dialog> <AjaxAction id="ajaxGetDepot"> <Property name="service">depotPR#getDepot</Property> </AjaxAction> <AjaxAction id="ajaxSave"> <Property name="service">inoutNoticePR#saveOut</Property> </AjaxAction> <AjaxAction id="ajaxDel"> <Property name="service">inoutNoticePR#delDataOut</Property> <Property name="confirmMessage">ç¡®å®è¦æ§è¡å é¤ä¹ï¼</Property> </AjaxAction> <AjaxAction id="ajaxInitAdd"> <Property name="service">inoutNoticePR#initAddOut</Property> </AjaxAction> <CustomDropDown id="ddCustomer"> <Property name="minHeight">400</Property> <Property name="assignmentMap">customerId=id,customerName=name</Property> <Property name="minWidth">500</Property> <Property name="autoOpen">true</Property> <Container layout="regionPadding:5"> <DataSet id="dsCustomer"> <Property name="dataProvider">inoutCustomerPR#queryListByKey</Property> <Property name="dataType">[dtInoutCustomer]</Property> <Property name="parameter"> <Entity> <Property name="type">OUT</Property> </Entity> </Property> </DataSet> <Container layout="hbox regionPadding:5"> <TextEditor id="key"> <Property name="blankText"> -- ç¼ç æè åç§° --</Property> <Property name="width">200</Property> </TextEditor> <Button> <ClientEvent name="onClick">var key = view.get("#key.value");
 var type = "${request.getParameter('type')}";
 view.get("#dsCustomer").set("parameter",{key:key,type:type}).flushAsync();</ClientEvent> <Property name="caption">æ¥è¯¢</Property> <Property name="iconClass">fa fa-search</Property> </Button> <Button> <ClientEvent name="onClick">var data = view.get("#dsCustomer.data:#");
 if(data){
 view.get("#ddCustomer").close(data.toJSON());
 }</ClientEvent> <Property name="iconClass">fa fa-check</Property> <Property name="caption">ç¡®å®</Property> </Button> </Container> <DataGrid> <ClientEvent name="onDataRowDoubleClick">var data = view.get("#dsCustomer.data:#");
 if(data){
 view.get("#ddCustomer").close(data.toJSON());
 }</ClientEvent> <Property name="dataSet">dsCustomer</Property> <Property name="readOnly">true</Property> <DataColumn name="id"> <Property name="property">id</Property> <Property name="width">100</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="name"> <ClientEvent name="onRenderCell">arg.dom.style.fontWeight = "bold";
 arg.processDefault = true;</ClientEvent> <Property name="property">name</Property> <Property name="align">center</Property> </DataColumn> </DataGrid> </Container> </CustomDropDown> <AjaxAction id="recalculate"> <Property name="service">inoutNoticePR#updateSumNoticeOut</Property> </AjaxAction> <CustomDropDown id="ddPlan"> <Property name="minHeight">325</Property> <Property name="assignmentMap">planId=id,planName=planId</Property> <Property name="minWidth">900</Property> <Property name="autoOpen">false</Property> <Container layout="regionPadding:5"> <DataSet id="dsPlan"> <Property name="dataProvider">planManagePR#pagePlanDetail</Property> <Property name="dataType">[dtPlan]</Property> <Property name="parameter"></Property> <Property name="pageSize">5</Property> </DataSet> <AutoForm layoutConstraint="top"> <Property name="cols">*,*,*</Property> <Property name="dataSet">dsQuery</Property> <Property name="exClassName">bg-color</Property> <Property name="labelAlign">right</Property> <Property name="labelSeparator">:</Property> <Property name="labelWidth">100</Property> <AutoFormElement> <Property name="name">depotId</Property> <Property name="property">depotId</Property> <Property name="editable">false</Property> <Property name="label">计åä»åº</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">year</Property> <Property name="property">year</Property> <Property name="trigger">defaultYearDropDown</Property> <Property name="editable">false</Property> <Property name="label">æ¶è·å¹´ä»½</Property> <Editor/> </AutoFormElement> <Container layout="hbox regionPadding:15"> <Button> <ClientEvent name="onClick">var data = view.get("#dsQuery.data");
 if(data){
 view.get("#dsPlan").set("parameter",data.toJSON()).flushAsync();
 }else{
 view.get("#dsPlan").flushAsync();
 }
 </ClientEvent> <Property name="caption">æ¥è¯¢</Property> <Property name="exClassName">btn-normal</Property> <Property name="iconClass">fa fa-search</Property> </Button> <Button> <ClientEvent name="onClick">var data = view.get("#dsPlan.data:#");
 if(data){
 view.get("#ddPlan").close(data.toJSON());
 }</ClientEvent> <Property name="iconClass">fa fa-check</Property> <Property name="caption">ç¡®å®</Property> </Button> </Container> </AutoForm> <DataGrid> <ClientEvent name="onDataRowDoubleClick">var data = view.get("#dsPlan.data:#");
 if(data){
 view.get("#ddPlan").close(data.toJSON());
 }</ClientEvent> <Property name="dataSet">dsPlan</Property> <Property name="readOnly">true</Property> <DataColumn> <Property name="property">planId</Property> <Property name="width">100</Property> <Property name="align">center</Property> <Property name="name">planId</Property> <Property name="visible">false</Property> </DataColumn> <DataColumn name="depotId"> <ClientEvent name="onRenderCell">arg.dom.style.fontWeight = "bold";
 arg.processDefault = true;</ClientEvent> <Property name="property">depotId</Property> <Property name="align">center</Property> </DataColumn> <DataColumn> <Property name="property">year</Property> <Property name="width">200</Property> <Property name="align">center</Property> <Property name="name">year</Property> </DataColumn> <DataColumn> <Property name="property">planNum</Property> <Property name="width">80</Property> <Property name="align">center</Property> <Property name="name">planNum</Property> </DataColumn> <DataColumn> <Property name="property">foodVariety</Property> <Property name="width">80</Property> <Property name="align">center</Property> <Property name="name">foodVariety</Property> </DataColumn> <DataColumn> <Property name="property">type</Property> <Property name="align">center</Property> <Property name="name">type</Property> </DataColumn> </DataGrid> <DataPilot layoutConstraint="bottom"> <Property name="dataSet">dsPlan</Property> </DataPilot> </Container> </CustomDropDown> <CustomDropDown id="ddContract"> <Property name="minHeight">317</Property> <Property name="assignmentMap">contractId=id,contractName=name</Property> <Property name="minWidth">550</Property> <Property name="autoOpen">false</Property> <Container layout="regionPadding:5"> <DataSet id="dsContract"> <Property name="dataProvider">contractManagePR#pageContract</Property> <Property name="dataType">[dtContract]</Property> <Property name="parameter"></Property> <Property name="pageSize">5</Property> </DataSet> <Container layout="hbox regionPadding:5"> <TextEditor id="key3"> <Property name="blankText"> -- åååç§°æè æå±è®¡å --</Property> <Property name="width">200</Property> </TextEditor> <Button> <ClientEvent name="onClick">var key = view.get("#key3.value");
 view.get("#dsContract").set("parameter",{key:key}).flushAsync();</ClientEvent> <Property name="caption">æ¥è¯¢</Property> <Property name="iconClass">fa fa-search</Property> </Button> <Button> <ClientEvent name="onClick">var data = view.get("#dsContract.data:#");
 if(data){
 view.get("#ddContract").close(data.toJSON());
 }</ClientEvent> <Property name="iconClass">fa fa-check</Property> <Property name="caption">ç¡®å®</Property> </Button> </Container> <DataGrid> <ClientEvent name="onDataRowDoubleClick">var data = view.get("#dsContract.data:#");
 if(data){
 view.get("#ddContract").close(data.toJSON());
 }</ClientEvent> <Property name="dataSet">dsContract</Property> <Property name="readOnly">true</Property> <DataColumn> <Property name="property">id</Property> <Property name="width">100</Property> <Property name="align">center</Property> <Property name="name">id</Property> <Property name="visible">false</Property> </DataColumn> <DataColumn name="name"> <ClientEvent name="onRenderCell">arg.dom.style.fontWeight = "bold";
 arg.processDefault = true;</ClientEvent> <Property name="property">name</Property> <Property name="align">center</Property> </DataColumn> <DataColumn> <Property name="property">planName</Property> <Property name="align">center</Property> <Property name="name">planName</Property> </DataColumn> <DataColumn> <Property name="property">year</Property> <Property name="width">80</Property> <Property name="align">center</Property> <Property name="name">year</Property> </DataColumn> </DataGrid> <DataPilot layoutConstraint="bottom"> <Property name="dataSet">dsContract</Property> </DataPilot> </Container> </CustomDropDown> </View> </ViewConfig> fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticePR.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,489 @@ package com.fzzy.igds; import com.bstek.dorado.annotation.DataProvider; import com.bstek.dorado.annotation.Expose; import com.bstek.dorado.data.provider.Page; import com.fzzy.igds.constant.Constant; import com.fzzy.igds.data.NoticeDto; import com.fzzy.igds.service.InoutNoticeService; import com.fzzy.igds.domain.InoutNoticeIn; import com.fzzy.igds.domain.InoutNoticeOut; import com.fzzy.igds.service.SysDeptService; import com.fzzy.igds.utils.ContextUtil; import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.StringUtils; import org.apache.commons.lang3.time.DateFormatUtils; import org.springframework.beans.BeanUtils; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; import org.springframework.data.jpa.domain.Specification; import org.springframework.stereotype.Component; import javax.annotation.Resource; import javax.persistence.criteria.CriteriaBuilder; import javax.persistence.criteria.CriteriaQuery; import javax.persistence.criteria.Predicate; import javax.persistence.criteria.Root; import java.util.*; /** * @Description éç¥å管ç * @Author CZT * @Date 2024/12/16 10:10 */ @Component public class InoutNoticePR { @Resource private InoutNoticeService inoutNoticeService; @Resource private SysDeptService sysDeptService; /** * inoutNoticePR#getTitle æ ¹æ®æ¥è¡¨ç±»åï¼è·åé»è®¤æ¥è¯¢ä¿¡æ¯ï¼æ¯å¦è¡¨å¤´ä¿¡æ¯ç * * @param * @return */ @DataProvider public Map<String, Object> getTitle(Map<String, Object> param) { Map<String, Object> result = new HashMap<String, Object>(); //è·å忰䏿¥è¡¨ç±»å String type = (String)param.get("type"); //è·åååºç¼ç 对åºçååºåç§° String deptName = ""; SysDept subDept = sysDeptService.getCacheDept(null, ContextUtil.subDeptId(null)); if (null != subDept) { deptName = subDept.getDeptName(); } if ("NOTICE_IN".equals(type)) { result.put("title", "å ¥åºéç¥å"); if (StringUtils.isNotEmpty(deptName)) { result.put("title", deptName + "å ¥åºéç¥å"); } } if ("NOTICE_OUT".equals(type)) { result.put("title", "åºåºéç¥å"); if (StringUtils.isNotEmpty(deptName)) { result.put("title", deptName + "åºåºéç¥å"); } } return result; } /** * inoutNoticePR#getYearQuery é»è®¤å¹´ä»½ * * @param * @return */ @DataProvider public Map<String, Object> getYearQuery(Map<String, Object> param) { Map<String, Object> result = new HashMap<String, Object>(); //è·ååæ°ä¸ååºç¼ç String deptId = (String)param.get("deptId"); result.put("year", DateFormatUtils.format(new Date(), "yyyy")); result.put("deptId", deptId); return result; } /** * inoutNoticePR#queryNoticeByKey æ ¹æ®åæ°æ¥è¯¢åºå ¥åºéç¥åï¼ç¨äºæå¨è¡¥åæ¶ï¼éæ©éç¥å * * @param * @return */ @DataProvider public List<NoticeDto> queryNoticeByKey(Map<String, Object> param) { if (param == null) { return null; } String type = (String) param.get("type"); if (StringUtils.isEmpty(type)) { return null; } List<NoticeDto> list = new ArrayList<>(); NoticeDto dto; if (Constant.TYPE_IN.equals(type)) { List<InoutNoticeIn> listIn = this.queryNoticeIn(param); if (null != listIn && listIn.size() > 0) { for (InoutNoticeIn inoutNoticeIn : listIn) { dto = new NoticeDto(); BeanUtils.copyProperties(inoutNoticeIn, dto); list.add(dto); } } } if (Constant.TYPE_OUT.equals(type)) { List<InoutNoticeOut> listOut = this.queryNoticeOut(param); if (null != listOut && listOut.size() > 0) { for (InoutNoticeOut inoutNoticeOut : listOut) { dto = new NoticeDto(); BeanUtils.copyProperties(inoutNoticeOut, dto); list.add(dto); } } } return list; } /*==================== å ¥åºéç¥åç¸å ³ä¸å¡ ====================*/ /** * inoutNoticePR#initAddIn å ¥åºéç¥åæ°å¢åå§å * * @return */ @Expose public InoutNoticeIn initAddIn() { SysUser user = ContextUtil.getLoginUser(); InoutNoticeIn data = new InoutNoticeIn(); data.setId("RKTZD_" + ContextUtil.generateId()); data.setName("å ¥åºéç¥å"); data.setCompanyId(user.getCompanyId()); data.setDeptId(ContextUtil.subDeptId(user)); data.setTag(Constant.YN_Y); return data; } /** * inoutNoticePR#pageQueryIn è·åå ¥åºéç¥å * * @param param * @return */ @DataProvider public void pageQueryIn(Page<InoutNoticeIn> page, Map<String, Object> param) { if (null == param) { param = new HashMap<>(); } Map<String, Object> finalParam = param; //å¤åæ°å页æ¥è¯¢ Pageable pageable = PageRequest.of(0, 10000, Sort.Direction.ASC, InoutNoticeIn.SORT_PROP); Specification<InoutNoticeIn> specification = new Specification<InoutNoticeIn>() { private static final long serialVersionUID = 1L; public Predicate toPredicate(Root<InoutNoticeIn> root, CriteriaQuery<?> query, CriteriaBuilder cb) { List<Predicate> predicates = new ArrayList<Predicate>(); //ææçæè¨ Predicate predicate1 = cb.equal(root.get("companyId"), ContextUtil.getCompanyId()); predicates.add(predicate1); Predicate predicate2 = cb.equal(root.get("deptId"), ContextUtil.subDeptId(null)); predicates.add(predicate2); String key = String.valueOf(finalParam.get("year")); if (StringUtils.isBlank(key)) { Predicate predicate3 = cb.equal(root.get("year"), key); predicates.add(predicate3); } key = (String) finalParam.get("id"); if (StringUtils.isBlank(key)) { Predicate predicate4 = cb.equal(root.get("id"), key); predicates.add(predicate4); } key = (String) finalParam.get("customerName"); if (StringUtils.isBlank(key)) { Predicate predicate5 = cb.like(root.get("customerName"), "%" + key + "%"); predicates.add(predicate5); } key = (String) finalParam.get("completeStatus"); if (StringUtils.isBlank(key)) { Predicate predicate6 = cb.equal(root.get("completeStatus"), key); predicates.add(predicate6); } key = (String) finalParam.get("foodVariety"); if (StringUtils.isBlank(key)) { Predicate predicate7 = cb.equal(root.get("foodVariety"), key); predicates.add(predicate7); } return cb.and(predicates.toArray(new Predicate[0])); } }; org.springframework.data.domain.Page<InoutNoticeIn> japPage = inoutNoticeService.queryAllNoticeIn(specification, pageable); page.setEntityCount((int) japPage.getTotalElements()); page.setEntities(japPage.getContent()); } /** * inoutNoticePR#saveIn æ´æ°å ¥åºéç¥å */ @Expose public String saveIn(InoutNoticeIn data) { InoutNoticeIn inoutNoticeIn = new InoutNoticeIn(); BeanUtils.copyProperties(data, inoutNoticeIn); return inoutNoticeService.saveOrUpdateIn(inoutNoticeIn); } /** * inoutNoticePR#delDataIn */ @Expose public String delDataIn(InoutNoticeIn data) { InoutNoticeIn inoutNoticeIn = new InoutNoticeIn(); BeanUtils.copyProperties(data, inoutNoticeIn); return inoutNoticeService.delDataIn(inoutNoticeIn); } /** * æ ¹æ®ä¸åæ¡ä»¶æ¥è¯¢ * @param param * @return */ public List<InoutNoticeIn> queryNoticeIn(Map<String, Object> param) { if (null == param) { param = new HashMap<>(); } Map<String, Object> finalParam = param; //å¤åæ°å页æ¥è¯¢ Pageable pageable = PageRequest.of(0, 10000, Sort.Direction.ASC, InoutNoticeIn.SORT_PROP); Specification<InoutNoticeIn> specification = new Specification<InoutNoticeIn>() { private static final long serialVersionUID = 1L; public Predicate toPredicate(Root<InoutNoticeIn> root, CriteriaQuery<?> query, CriteriaBuilder cb) { List<Predicate> predicates = new ArrayList<Predicate>(); //ææçæè¨ Predicate predicate1 = cb.equal(root.get("companyId"), ContextUtil.getCompanyId()); predicates.add(predicate1); Predicate predicate2 = cb.equal(root.get("deptId"), ContextUtil.subDeptId(null)); predicates.add(predicate2); Predicate predicate3 = cb.equal(root.get("completeStatus"), "NONE"); predicates.add(predicate3); String key = (String) finalParam.get("customerId"); if (StringUtils.isNotEmpty(key)) { Predicate predicate4 = cb.equal(root.get("customerId"), key); predicates.add(predicate4); } key = (String) finalParam.get("foodVariety"); if (StringUtils.isNotEmpty(key)) { Predicate predicate5 = cb.equal(root.get("foodVariety"), key); predicates.add(predicate5); } key = (String) finalParam.get("depotId"); if (StringUtils.isNotEmpty(key)) { Predicate predicate6 = cb.equal(root.get("depotId"), key); predicates.add(predicate6); } key = (String) finalParam.get("key"); if (StringUtils.isNotEmpty(key)) { Predicate predicate7 = cb.like(root.get("name"), "%" + key + "%"); predicates.add(predicate7); } return cb.and(predicates.toArray(new Predicate[0])); } }; org.springframework.data.domain.Page<InoutNoticeIn> japPage = inoutNoticeService.queryAllNoticeIn(specification, pageable); return japPage.getContent(); } /** * éæ°æ ¸ç®å ¥åºéç¥å宿é * * inoutNoticePR#updateSumNoticeIn * * @return */ @Expose public String updateSumNoticeIn() { //è·åæææªå®æç¶æçå ¥åºéç¥å String companyId = ContextUtil.getCompanyId(); String deptId = ContextUtil.subDeptId(null); List<InoutNoticeIn> noticeInList = inoutNoticeService.getUnComNoticeIn(companyId); if (noticeInList != null && noticeInList.size() > 0) { inoutNoticeService.updateSumNoticeIn(noticeInList); return "success"; } return "fail"; } /*==================== åºåºéç¥åç¸å ³ä¸å¡ ====================*/ /** * inoutNoticePR#initAddOut åºåºéç¥åæ°å¢åå§å * * @return */ @Expose public InoutNoticeOut initAddOut() { SysUser user = ContextUtil.getLoginUser(); InoutNoticeOut data = new InoutNoticeOut(); data.setId("CKTZD_" + ContextUtil.generateId()); data.setName("åºåºéç¥å"); data.setCompanyId(user.getCompanyId()); data.setDeptId(ContextUtil.subDeptId(user)); data.setTag(Constant.YN_Y); return data; } /** * inoutNoticePR#pageQueryOut è·ååºåºéç¥å * @param page * @param param */ @DataProvider public void pageQueryOut(Page<InoutNoticeOut> page, Map<String, Object> param) { if (null == param) { param = new HashMap<>(); } Map<String, Object> finalParam = param; //å¤åæ°å页æ¥è¯¢ Pageable pageable = PageRequest.of(0, 10000, Sort.Direction.ASC, InoutNoticeOut.SORT_PROP); Specification<InoutNoticeOut> specification = new Specification<InoutNoticeOut>() { private static final long serialVersionUID = 1L; public Predicate toPredicate(Root<InoutNoticeOut> root, CriteriaQuery<?> query, CriteriaBuilder cb) { List<Predicate> predicates = new ArrayList<Predicate>(); //ææçæè¨ Predicate predicate1 = cb.equal(root.get("companyId"), ContextUtil.getCompanyId()); predicates.add(predicate1); Predicate predicate2 = cb.equal(root.get("deptId"), ContextUtil.subDeptId(null)); predicates.add(predicate2); String key = String.valueOf(finalParam.get("year")); if (StringUtils.isNotEmpty(key)) { Predicate predicate3 = cb.equal(root.get("year"), key); predicates.add(predicate3); } key = (String) finalParam.get("id"); if (StringUtils.isNotEmpty(key)) { Predicate predicate4 = cb.equal(root.get("id"), key); predicates.add(predicate4); } key = (String) finalParam.get("customerId"); if (StringUtils.isNotEmpty(key)) { Predicate predicate5 = cb.equal(root.get("customerId"), key); predicates.add(predicate5); } key = (String) finalParam.get("completeStatus"); if (StringUtils.isNotEmpty(key)) { Predicate predicate6 = cb.equal(root.get("completeStatus"), key); predicates.add(predicate6); } key = (String) finalParam.get("foodVariety"); if (StringUtils.isNotEmpty(key)) { Predicate predicate7 = cb.equal(root.get("foodVariety"), key); predicates.add(predicate7); } return cb.and(predicates.toArray(new Predicate[0])); } }; org.springframework.data.domain.Page<InoutNoticeOut> japPage = inoutNoticeService.queryAllNoticeOut(specification, pageable); page.setEntityCount((int) japPage.getTotalElements()); page.setEntities(japPage.getContent()); } /** * inoutNoticePR#saveOut æ´æ°åºåºéç¥å * @param data * @return */ @Expose public String saveOut(InoutNoticeOut data) { InoutNoticeOut inoutNoticeOut = new InoutNoticeOut(); BeanUtils.copyProperties(data, inoutNoticeOut); return inoutNoticeService.saveOrUpdateOut(inoutNoticeOut); } /** * inoutNoticePR#delDataOut */ @Expose public String delDataOut(InoutNoticeOut data) { InoutNoticeOut inoutNoticeOut = new InoutNoticeOut(); BeanUtils.copyProperties(data, inoutNoticeOut); return inoutNoticeService.delDataOut(inoutNoticeOut); } /** * æ ¹æ®ä¸åæ¡ä»¶æ¥è¯¢ * @param param * @return */ public List<InoutNoticeOut> queryNoticeOut(Map<String, Object> param) { if (null == param) { param = new HashMap<>(); } Map<String, Object> finalParam = param; //å¤åæ°å页æ¥è¯¢ Pageable pageable = PageRequest.of(0, 10000, Sort.Direction.ASC, InoutNoticeOut.SORT_PROP); Specification<InoutNoticeOut> specification = new Specification<InoutNoticeOut>() { private static final long serialVersionUID = 1L; public Predicate toPredicate(Root<InoutNoticeOut> root, CriteriaQuery<?> query, CriteriaBuilder cb) { List<Predicate> predicates = new ArrayList<Predicate>(); //ææçæè¨ Predicate predicate1 = cb.equal(root.get("companyId"), ContextUtil.getCompanyId()); predicates.add(predicate1); Predicate predicate2 = cb.equal(root.get("deptId"), ContextUtil.subDeptId(null)); predicates.add(predicate2); Predicate predicate3 = cb.equal(root.get("completeStatus"), "NONE"); predicates.add(predicate3); String key = (String) finalParam.get("customerId"); if (StringUtils.isNotEmpty(key)) { Predicate predicate4 = cb.equal(root.get("customerId"), key); predicates.add(predicate4); } key = (String) finalParam.get("foodVariety"); if (StringUtils.isNotEmpty(key)) { Predicate predicate5 = cb.equal(root.get("foodVariety"), key); predicates.add(predicate5); } key = (String) finalParam.get("depotId"); if (StringUtils.isNotEmpty(key)) { Predicate predicate6 = cb.equal(root.get("depotId"), key); predicates.add(predicate6); } key = (String) finalParam.get("key"); if (StringUtils.isNotEmpty(key)) { Predicate predicate7 = cb.like(root.get("name"), "%" + key + "%"); predicates.add(predicate7); } return cb.and(predicates.toArray(new Predicate[0])); } }; org.springframework.data.domain.Page<InoutNoticeOut> japPage = inoutNoticeService.queryAllNoticeOut(specification, pageable); return japPage.getContent(); } /** * éæ°æ ¸ç®åºåºéç¥å宿é * * inoutNoticePR#updateSumNoticeOut * * @return */ @Expose public String updateSumNoticeOut() { //è·åæææªå®æç¶æçå ¥åºéç¥å String companyId = ContextUtil.getCompanyId(); String deptId = ContextUtil.subDeptId(null); List<InoutNoticeOut> noticeOutList = inoutNoticeService.getUnComNoticeOut(companyId); if (noticeOutList != null && noticeOutList.size() > 0) { inoutNoticeService.updateSumNoticeOut(noticeOutList); return "success"; } return "fail"; } }