From df1f2bf348bdac341684db961a5f7ddb2195531a Mon Sep 17 00:00:00 2001 From: 懒羊羊 <15939171744@163.com> Date: 星期一, 15 一月 2024 14:05:35 +0800 Subject: [PATCH] 接收工单 --- jcdm-main/src/main/java/com/jcdm/main/webservice/domain/Item.java | 27 +++ jcdm-main/pom.xml | 16 ++ jcdm-ui/src/views/main/om/productionOrde/index.vue | 158 ++++++++++-------- jcdm-main/src/main/java/com/jcdm/main/webservice/domain/ItemList.java | 22 ++ jcdm-ui/src/api/main/om/productionOrde/productionOrde.js | 8 + jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/domain/OmProductionOrdeInfo.java | 12 + jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java | 11 + jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java | 197 ++++++++++++++++++++++++ jcdm-main/src/main/resources/mapper/om/productionOrde/OmProductionOrdeInfoMapper.xml | 16 + 9 files changed, 393 insertions(+), 74 deletions(-) diff --git a/jcdm-main/pom.xml b/jcdm-main/pom.xml index 29139b2..e987e44 100644 --- a/jcdm-main/pom.xml +++ b/jcdm-main/pom.xml @@ -74,6 +74,22 @@ <artifactId>lombok</artifactId> <optional>true</optional> </dependency> + <dependency> + <groupId>commons-httpclient</groupId> + <artifactId>commons-httpclient</artifactId> + <version>3.1</version> + </dependency> + <dependency> + <groupId>cn.hutool</groupId> + <artifactId>hutool-all</artifactId> + <version>5.7.4</version> + </dependency> + + <dependency> + <groupId>com.google.code.gson</groupId> + <artifactId>gson</artifactId> + <version>2.10.1</version> + </dependency> </dependencies> </project> \ No newline at end of file diff --git a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java index 63a195d..44858ae 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java +++ b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java @@ -4,6 +4,7 @@ import javax.servlet.http.HttpServletResponse; import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo; import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService; +import com.jcdm.main.webservice.service.ReceivingServices; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -111,4 +112,14 @@ { return omProductionOrdeInfoService.upDownMove(omProductionOrdeInfo); } + + /** + * table鍒椾笂绉讳笅绉� + */ + @GetMapping("/getProductionNotice") + public AjaxResult getProductionNotice(OmProductionOrdeInfo omProductionOrdeInfo) + { + ReceivingServices.insertWebserviceData(omProductionOrdeInfo.getProductionNotice()); + return AjaxResult.success(); + } } diff --git a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/domain/OmProductionOrdeInfo.java b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/domain/OmProductionOrdeInfo.java index 7a01e12..88409e3 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/domain/OmProductionOrdeInfo.java +++ b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/domain/OmProductionOrdeInfo.java @@ -164,6 +164,18 @@ private String flag; + /** 鐢熶骇閫氱煡鍗曞彿 */ + @Excel(name = "鐢熶骇閫氱煡鍗曞彿") + private String productionNotice; + + public String getProductionNotice() { + return productionNotice; + } + + public void setProductionNotice(String productionNotice) { + this.productionNotice = productionNotice; + } + public String getFlag() { return flag; } diff --git a/jcdm-main/src/main/java/com/jcdm/main/webservice/domain/Item.java b/jcdm-main/src/main/java/com/jcdm/main/webservice/domain/Item.java new file mode 100644 index 0000000..a50837b --- /dev/null +++ b/jcdm-main/src/main/java/com/jcdm/main/webservice/domain/Item.java @@ -0,0 +1,27 @@ +package com.jcdm.main.webservice.domain; + +import lombok.Data; + +import java.util.Date; + +@Data +public class Item { + private String MAKTX; + private String FEVOR; + private String WERKS; + private String LGORT; + private String ZHTH; + private String GSTRP; + private String AUFNR; + private String PSMNG; + private String DISPO; + private String ZSCTZD; + private String PLNBEZ; + private String ZSTAT; + private String DAUAT; + private String ZWS; + private String KDAUF; + private String ZUSER; + private Date ZDATE; + private String FERTH; +} diff --git a/jcdm-main/src/main/java/com/jcdm/main/webservice/domain/ItemList.java b/jcdm-main/src/main/java/com/jcdm/main/webservice/domain/ItemList.java new file mode 100644 index 0000000..9703099 --- /dev/null +++ b/jcdm-main/src/main/java/com/jcdm/main/webservice/domain/ItemList.java @@ -0,0 +1,22 @@ +package com.jcdm.main.webservice.domain; + +import java.util.List; + +public class ItemList { + private List<Item> item; + + // 娣诲姞鏋勯�犲嚱鏁板拰getter/setter鏂规硶 + + // 鏋勯�犲嚱鏁� + public ItemList() { + } + + // Getter鍜孲etter鏂规硶 + public List<Item> getItem() { + return item; + } + + public void setItem(List<Item> item) { + this.item = item; + } +} diff --git a/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java b/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java new file mode 100644 index 0000000..d5c02be --- /dev/null +++ b/jcdm-main/src/main/java/com/jcdm/main/webservice/service/ReceivingServices.java @@ -0,0 +1,197 @@ +package com.jcdm.main.webservice.service; + + +import cn.hutool.json.JSONObject; +import com.google.gson.Gson; +import com.google.gson.JsonObject; +import com.jcdm.main.da.collectionParamConf.service.IDaCollectionParamConfService; +import com.jcdm.main.da.opcuaconfig.init.BeanUtils; +import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo; +import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService; +import com.jcdm.main.om.workReport.service.IOmWorkReportService; +import com.jcdm.main.webservice.domain.Item; +import com.jcdm.main.webservice.domain.ItemList; +import org.apache.commons.httpclient.HttpClient; +import org.apache.commons.httpclient.UsernamePasswordCredentials; +import org.apache.commons.httpclient.auth.AuthScope; +import org.apache.commons.httpclient.methods.PostMethod; +import org.apache.commons.httpclient.methods.RequestEntity; +import org.apache.commons.httpclient.methods.StringRequestEntity; +import org.apache.commons.io.IOUtils; +import com.jcdm.main.om.productionOrde.*; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RestController; + +import javax.swing.border.Border; +import java.io.IOException; +import java.io.InputStream; +import java.io.UnsupportedEncodingException; +import java.util.List; + +public class ReceivingServices { + @Autowired +// private static IOmProductionOrdeInfoService omProductionOrdeInfoService; + private static IOmProductionOrdeInfoService omProductionOrdeInfoService = BeanUtils.getBean(IOmProductionOrdeInfoService.class); + + public static final String ProductionPlanInformationUrl = "http://podqapp.cfmoto.com.cn:50200/XISOAPAdapter/MessageServlet?senderParty=&senderService=BC_MES&receiverParty=&receiverService=&interface=SI_ZPP_CF_MES_005_SYN_OUT&interfaceNamespace=http://cfmoto.com/xi/MES"; + + public static void main(String[] args) throws Exception { +// getInterfaceInformationXml(ProductionPlanInformationUrl,getProductionPlanInformationXml("A0055577")); +// test1(); + +// String serviceUrl = "http://podqapp.cfmoto.com.cn:50200/XISOAPAdapter/MessageServlet?senderParty=&senderService=BC_MES&receiverParty=&receiverService=&interface=SI_ZPP_CF_MES_005_SYN_OUT&interfaceNamespace=http://cfmoto.com/xi/MES"; +// +// String content = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:sap-com:document:sap:rfc:functions\">\n" + +// " <soapenv:Header/>\n" + +// " <soapenv:Body>\n" + +// " <urn:ZPP_CF_MES_005>\n" + +// " <!--Optional:-->\n" + +// " <IV_WERKS>1000</IV_WERKS>\n" + +// " <!--Optional:-->\n" + +// " <IV_ZSCTZD>A0055577</IV_ZSCTZD>\n" + +// " </urn:ZPP_CF_MES_005>\n" + +// " </soapenv:Body>\n" + +// "</soapenv:Envelope>"; +// // HttpClient鍙戦�丼OAP璇锋眰 +// int timeout = 10000; +// HttpClient client = new HttpClient(); +// //濡傛灉闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉锛涗笉闇�瑕侀獙璇佺櫥褰曞垯涓嶉渶瑕佷互涓�4琛� +// String username = "POMESUSER"; +// String password = "12345tgb"; +// UsernamePasswordCredentials creds = new UsernamePasswordCredentials(username, password); +// client.getState().setCredentials(AuthScope.ANY, creds); +// +// PostMethod postMethod = new PostMethod(serviceUrl); +// // 璁剧疆杩炴帴瓒呮椂 +// client.getHttpConnectionManager().getParams().setConnectionTimeout(timeout); +// // 璁剧疆璇诲彇鏃堕棿瓒呮椂 +// client.getHttpConnectionManager().getParams().setSoTimeout(timeout); +// // 鐒跺悗鎶奡oap璇锋眰鏁版嵁娣诲姞鍒癙ostMethod涓� +// RequestEntity requestEntity = new StringRequestEntity(content, "text/xml", "UTF-8"); +// +// // 璁剧疆璇锋眰澶撮儴锛屽惁鍒欏彲鑳戒細鎶� 鈥渘o SOAPAction header鈥� 鐨勯敊璇� +// postMethod.setRequestHeader("SOAPAction", ""); +// // 璁剧疆璇锋眰浣� +// postMethod.setRequestEntity(requestEntity); +// int status = client.executeMethod(postMethod); +// +// if (status == 200) {// 鎴愬姛 +// InputStream is = postMethod.getResponseBodyAsStream(); +// // 鑾峰彇璇锋眰缁撴灉瀛楃涓� +// String result = IOUtils.toString(is); +// String jsonStr = xmlToJSON2(result); +// Gson gson = new Gson(); +// // 灏唈son瀛楃涓茶浆鎹㈡垚瀵硅薄 +// ItemList itemList = gson.fromJson(jsonStr, ItemList.class); +// System.out.println("杩斿洖缁撴灉:" + result); +// } else { +// System.out.println("閿欒浠g爜锛�" + status + ":" + postMethod.getResponseBodyAsString()); +// } + } + + public static void insertWebserviceData(String str) { + String result = getInterfaceInformationXml(ProductionPlanInformationUrl, getProductionPlanInformationXml(str)); + String jsonStr = xmlToJSON2(result); + Gson gson = new Gson(); + // 灏唈son瀛楃涓茶浆鎹㈡垚瀵硅薄 + ItemList itemList = gson.fromJson(jsonStr, ItemList.class); + for (Item item : itemList.getItem()) { + OmProductionOrdeInfo ordeInfo = new OmProductionOrdeInfo(); + ordeInfo.setProductName(item.getMAKTX()); + ordeInfo.setLineCode(item.getFEVOR()); + ordeInfo.setWorkOrderNo(item.getAUFNR()); + ordeInfo.setPlanQty((long) Double.parseDouble(item.getPSMNG())); + ordeInfo.setProductionNotice(item.getZSTAT()); + ordeInfo.setTypeZ(item.getFERTH()); + ordeInfo.setCreateUser(item.getZUSER()); + ordeInfo.setCreateTime(item.getZDATE()); + omProductionOrdeInfoService.insertOmProductionOrdeInfo(ordeInfo); + } + } + + public static String getInterfaceInformationXml(String url,String xml){ + int timeout = 10000; + HttpClient client = new HttpClient(); + //濡傛灉闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉锛涗笉闇�瑕侀獙璇佺櫥褰曞垯涓嶉渶瑕佷互涓�4琛� + String username = "POMESUSER"; + String password = "12345tgb"; + UsernamePasswordCredentials creds = new UsernamePasswordCredentials(username, password); + client.getState().setCredentials(AuthScope.ANY, creds); + + PostMethod postMethod = new PostMethod(url); + // 璁剧疆杩炴帴瓒呮椂 + client.getHttpConnectionManager().getParams().setConnectionTimeout(timeout); + // 璁剧疆璇诲彇鏃堕棿瓒呮椂 + client.getHttpConnectionManager().getParams().setSoTimeout(timeout); + // 鐒跺悗鎶奡oap璇锋眰鏁版嵁娣诲姞鍒癙ostMethod涓� + RequestEntity requestEntity = null; + try { + requestEntity = new StringRequestEntity(xml, "text/xml", "UTF-8"); + } catch (UnsupportedEncodingException e) { + throw new RuntimeException(e); + } + + // 璁剧疆璇锋眰澶撮儴锛屽惁鍒欏彲鑳戒細鎶� 鈥渘o SOAPAction header鈥� 鐨勯敊璇� + postMethod.setRequestHeader("SOAPAction", ""); + // 璁剧疆璇锋眰浣� + postMethod.setRequestEntity(requestEntity); + int status = 0; + try { + status = client.executeMethod(postMethod); + } catch (IOException e) { + throw new RuntimeException(e); + } + if (status == 200) {// 鎴愬姛 + InputStream is = null; + try { + is = postMethod.getResponseBodyAsStream(); + } catch (IOException e) { + throw new RuntimeException(e); + } + // 鑾峰彇璇锋眰缁撴灉瀛楃涓� + String result = null; + try { + result = IOUtils.toString(is); + return result; + } catch (IOException e) { + throw new RuntimeException(e); + } + } + return "鎺ュ彛璋冪敤閿欒"; + } + + public static String getProductionPlanInformationXml(String str){ + String content = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:sap-com:document:sap:rfc:functions\">\n" + + " <soapenv:Header/>\n" + + " <soapenv:Body>\n" + + " <urn:ZPP_CF_MES_005>\n" + + " <!--Optional:-->\n" + + " <IV_WERKS>1000</IV_WERKS>\n" + + " <!--Optional:-->\n" + + " <IV_ZSCTZD>"+str+"</IV_ZSCTZD>\n" + + " </urn:ZPP_CF_MES_005>\n" + + " </soapenv:Body>\n" + + "</soapenv:Envelope>"; + return content; + } + + /** + * 鏂瑰紡--璐� + * 浣跨敤hutool宸ュ叿鍖呬腑鐨勫伐鍏疯浆鍖� + * @param xmlStr + * @return + */ + public static String xmlToJSON2(String xmlStr){ + JSONObject jsonObject1 = cn.hutool.json.XML.toJSONObject(xmlStr, true); + + Gson gson = new Gson(); + JsonObject jsonObject2 = gson.fromJson(jsonObject1.toString(), JsonObject.class); + JsonObject etData = jsonObject2 + .getAsJsonObject("SOAP:Envelope") + .getAsJsonObject("SOAP:Body") + .getAsJsonObject("n0:ZPP_CF_MES_005.Response") + .getAsJsonObject("ET_DATA"); + return etData.toString(); + } + +} diff --git a/jcdm-main/src/main/resources/mapper/om/productionOrde/OmProductionOrdeInfoMapper.xml b/jcdm-main/src/main/resources/mapper/om/productionOrde/OmProductionOrdeInfoMapper.xml index 2278b09..758eb05 100644 --- a/jcdm-main/src/main/resources/mapper/om/productionOrde/OmProductionOrdeInfoMapper.xml +++ b/jcdm-main/src/main/resources/mapper/om/productionOrde/OmProductionOrdeInfoMapper.xml @@ -44,10 +44,12 @@ <result property="spareField3" column="spare_field_3" /> <result property="spareField4" column="spare_field_4" /> <result property="typeZ" column="type_z" /> + <result property="productionNotice" column="production_notice" /> + </resultMap> <sql id="selectOmProductionOrdeInfoVo"> - select id, work_order_no, sales_order_code,type_z,product_code, product_name, workshop_code, line_code, route_code, bom_code, recipe_code, plan_qty, actual_qty, bad_qty, scrap_qty, repair_qty, actual_online_qty, online_completion_mark, demand_date, plan_start_time, plan_end_time, actual_start_time, actual_end_time, serial_number, order_status, create_time, update_time, create_user, update_user, remarks, stream_number, custom, market_area_code, software_version_code, product_company_code, spare_field_1, spare_field_2, spare_field_3, spare_field_4 from om_production_orde_info + select id, work_order_no, sales_order_code,type_z,product_code, product_name, workshop_code, line_code, route_code, bom_code, recipe_code, plan_qty, actual_qty, bad_qty, scrap_qty, repair_qty, actual_online_qty, online_completion_mark, demand_date, plan_start_time, plan_end_time, actual_start_time, actual_end_time, serial_number, order_status, create_time, update_time, create_user, update_user, remarks, stream_number, custom, market_area_code, software_version_code, product_company_code, spare_field_1, spare_field_2, spare_field_3, spare_field_4, production_notice from om_production_orde_info </sql> <select id="selectOmProductionOrdeInfoList" parameterType="OmProductionOrdeInfo" resultMap="OmProductionOrdeInfoResult"> @@ -69,6 +71,8 @@ <if test="typeZ != null and typeZ != ''"> and type_z like concat('%', #{typeZ}, '%')</if> <if test="softwareVersionCode != null and softwareVersionCode != ''"> and software_version_code like concat('%', #{softwareVersionCode}, '%')</if> <if test="productCompanyCode != null and productCompanyCode != ''"> and product_company_code like concat('%', #{productCompanyCode}, '%')</if> + <if test="productionNotice != null and productionNotice != ''"> and production_notice like concat('%', #{productionNotice}, '%')</if> + </where> ORDER BY stream_number DESC </select> @@ -120,7 +124,9 @@ <if test="spareField2 != null">spare_field_2,</if> <if test="spareField3 != null">spare_field_3,</if> <if test="spareField4 != null">spare_field_4,</if> - </trim> + <if test="productionNotice != null">production_notice,</if> + + </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null">#{id},</if> <if test="workOrderNo != null">#{workOrderNo},</if> @@ -161,7 +167,9 @@ <if test="spareField2 != null">#{spareField2},</if> <if test="spareField3 != null">#{spareField3},</if> <if test="spareField4 != null">#{spareField4},</if> - </trim> + <if test="productionNotice != null">#{productionNotice},</if> + + </trim> </insert> <update id="updateOmProductionOrdeInfo" parameterType="OmProductionOrdeInfo"> @@ -205,6 +213,8 @@ <if test="spareField2 != null">spare_field_2 = #{spareField2},</if> <if test="spareField3 != null">spare_field_3 = #{spareField3},</if> <if test="spareField4 != null">spare_field_4 = #{spareField4},</if> + <if test="productionNotice != null">production_notice = #{productionNotice},</if> + </trim> where id = #{id} </update> diff --git a/jcdm-ui/src/api/main/om/productionOrde/productionOrde.js b/jcdm-ui/src/api/main/om/productionOrde/productionOrde.js index acff9ce..76bdb18 100644 --- a/jcdm-ui/src/api/main/om/productionOrde/productionOrde.js +++ b/jcdm-ui/src/api/main/om/productionOrde/productionOrde.js @@ -9,6 +9,14 @@ }) } +export function getProductionNotice(query) { + return request({ + url: '/om/productionOrde/getProductionNotice', + method: 'get', + params: query + }) +} + export function upDownMove(query) { return request({ url: '/om/productionOrde/upDownMove', diff --git a/jcdm-ui/src/views/main/om/productionOrde/index.vue b/jcdm-ui/src/views/main/om/productionOrde/index.vue index 2910162..4f1359c 100644 --- a/jcdm-ui/src/views/main/om/productionOrde/index.vue +++ b/jcdm-ui/src/views/main/om/productionOrde/index.vue @@ -2,12 +2,15 @@ <div class="app-container"> <el-card class="box-card"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> - <el-form-item label-width="80" label="鐢熶骇宸ュ崟鍙�" prop="workOrderNo"> - <el-input v-model="queryParams.workOrderNo" placeholder="璇疯緭鍏ョ敓浜у伐鍗曞彿" clearable @keyup.enter.native="handleQuery"/> + <el-form-item label-width="100" label="鐢熶骇閫氱煡鍗�" prop="productName"> + <el-input v-model="queryParams.productionNotice" placeholder="璇疯緭鍏ョ敓浜ч�氱煡鍗�" clearable @keyup.enter.native="handleQuery"/> </el-form-item> - <el-form-item label="浜у搧鍚嶇О" prop="productName"> - <el-input v-model="queryParams.productName" placeholder="璇疯緭鍏ヤ骇鍝佸悕绉�" clearable @keyup.enter.native="handleQuery"/> + <el-form-item label-width="80" label="鐢熶骇璁㈠崟" prop="workOrderNo"> + <el-input v-model="queryParams.workOrderNo" placeholder="璇疯緭鍏ョ敓浜ц鍗�" clearable @keyup.enter.native="handleQuery"/> </el-form-item> +<!-- <el-form-item label="浜у搧鍚嶇О" prop="productName">--> +<!-- <el-input v-model="queryParams.productName" placeholder="璇疯緭鍏ヤ骇鍝佸悕绉�" clearable @keyup.enter.native="handleQuery"/>--> +<!-- </el-form-item>--> <el-form-item label="宸ュ崟鐘舵��" prop="orderStatus"> <el-select v-model="queryParams.orderStatus" placeholder="璇烽�夋嫨宸ュ崟鐘舵��" clearable> <el-option @@ -18,6 +21,7 @@ </el-select> </el-form-item> <el-form-item style="float: right"> + <el-button type="warning" icon="el-icon-download" size="mini" @click="getProductionNotice">鎺ユ敹</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button> <el-button type="warning" icon="el-icon-copy-document" size="mini" @click="advancedQuery">楂樼骇鏌ヨ</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> @@ -129,20 +133,20 @@ <el-table border v-loading="loading" :data="productionOrdeList" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55" align="center" /> - <el-table-column label="鐢熶骇宸ュ崟鍙�" width="160" align="center"> + <el-table-column label="鐢熶骇閫氱煡鍗曞彿" width="160" align="center" prop="productionNotice"> + </el-table-column> + <el-table-column label="鐢熶骇璁㈠崟" width="160" align="center"> <template slot-scope="scope"> <router-link :to="{path: '/main/workReport-data/index/', query: {workOrderNo: scope.row.workOrderNo} }" class="link-type"> <span>{{ scope.row.workOrderNo }}</span> </router-link> </template> </el-table-column> - <el-table-column label="璁㈠崟缂栧彿" width="140" align="center" prop="salesOrderCode"> + <el-table-column label="鏈哄瀷" width="160" align="center" prop="typeZ"> </el-table-column> - <el-table-column label="浜у搧缂栧彿" width="140" align="center" prop="productCode"> + <el-table-column label="闇�姹傛暟閲�" align="center" prop="planQty"> </el-table-column> - <el-table-column label="浜у搧鍚嶇О" width="160" align="center" prop="productName"> - </el-table-column> - <el-table-column label="绉嶇被" width="160" align="center" prop="typeZ"> + <el-table-column label="鐗╂枡绫诲瀷" width="140" align="center" prop="productCode"> </el-table-column> <el-table-column label="瀹為檯鏁伴噺" width="160" align="center" prop="actualQty"> </el-table-column> @@ -151,65 +155,74 @@ <dict-tag :options="dict.type.order_state" :value="scope.row.orderStatus"/> </template> </el-table-column> - <el-table-column label="杞﹂棿缂栧彿" align="center" prop="workshopCode"> + <el-table-column label="宸ュ巶" align="center" prop="workshopCode"> </el-table-column> - <el-table-column label="浜х嚎缂栧彿" align="center" prop="lineCode"> + <el-table-column label="浠撳簱" align="center"> </el-table-column> - <el-table-column label="宸ヨ壓娴佺▼" width="140" align="center" prop="routeCode"> + <el-table-column label="浜х嚎" align="center" prop="lineCode"> </el-table-column> - <el-table-column label="浜у搧BOM" width="140" align="center" prop="bomCode"> + <el-table-column label="璁㈠崟绫诲瀷" align="center"> </el-table-column> - <el-table-column label="宸ヨ壓閰嶆柟" width="140" align="center" prop="recipeCode"> + <el-table-column label="ZWS" align="center"> </el-table-column> - <el-table-column label="璁″垝鏁伴噺" align="center" prop="planQty"> + +<!-- <el-table-column label="宸ヨ壓娴佺▼" width="140" align="center" prop="routeCode">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="浜у搧BOM" width="140" align="center" prop="bomCode">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="宸ヨ壓閰嶆柟" width="140" align="center" prop="recipeCode">--> +<!-- </el-table-column>--> + +<!-- <el-table-column label="瀹為檯鏁伴噺" align="center" prop="actualQty">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="瀹為檯涓婄嚎鏁伴噺" width="100" align="center" prop="actualOnlineQty">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="闇�姹傛棩鏈�" align="center" prop="demandDate" width="180">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="璁″垝寮�濮嬫椂闂�" width="160" align="center" prop="planStartTime">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="璁″垝缁撴潫鏃堕棿" width="160" align="center" prop="planEndTime">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="瀹為檯寮�濮嬫椂闂�" width="160" align="center" prop="actualStartTime">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="瀹為檯缁撴潫鏃堕棿" width="160" align="center" prop="actualEndTime">--> +<!-- </el-table-column>--> + +<!-- <el-table-column width="160" label="鏇存柊鏃堕棿" align="center" prop="updateTime">--> +<!-- </el-table-column>--> + <el-table-column label="閫氱煡鍗曞埗鍗曚汉" width="80" align="center" prop="createUser"> </el-table-column> - <el-table-column label="瀹為檯鏁伴噺" align="center" prop="actualQty"> + <el-table-column width="160" label="閫氱煡鐢熸垚鏃ユ湡" align="center" prop="createTime"> </el-table-column> - <el-table-column label="瀹為檯涓婄嚎鏁伴噺" width="100" align="center" prop="actualOnlineQty"> + <el-table-column label="鎴愬搧鎻忚堪" width="160" align="center" prop="productName"> </el-table-column> - <el-table-column label="闇�姹傛棩鏈�" align="center" prop="demandDate" width="180"> - </el-table-column> - <el-table-column label="璁″垝寮�濮嬫椂闂�" width="160" align="center" prop="planStartTime"> - </el-table-column> - <el-table-column label="璁″垝缁撴潫鏃堕棿" width="160" align="center" prop="planEndTime"> - </el-table-column> - <el-table-column label="瀹為檯寮�濮嬫椂闂�" width="160" align="center" prop="actualStartTime"> - </el-table-column> - <el-table-column label="瀹為檯缁撴潫鏃堕棿" width="160" align="center" prop="actualEndTime"> - </el-table-column> - <el-table-column width="160" label="鍒涘缓鏃堕棿" align="center" prop="createTime"> - </el-table-column> - <el-table-column width="160" label="鏇存柊鏃堕棿" align="center" prop="updateTime"> - </el-table-column> - <el-table-column label="鍒涘缓浜�" width="80" align="center" prop="createUser"> - </el-table-column> - <el-table-column label="淇敼浜�" width="80" align="center" prop="updateUser"> - </el-table-column> - <el-table-column label="澶囨敞" width="100" align="center" prop="remarks"> - </el-table-column> - <el-table-column label="娴佹按鍙�" align="center" prop="streamNumber"> - </el-table-column> - <el-table-column label="瀹㈡埛" width="80" align="center" prop="custom"> - </el-table-column> - <el-table-column fixed="right" width="350" label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> - <template slot-scope="scope"> - <!-- 宸ュ崟鐘舵�侊紙1鍒涘缓銆�2宸插彂甯冦��3鐢熶骇涓��4宸插喕缁撱��5宸插畬宸ャ��6宸插叧闂級 --> - <el-button type="success" :disabled="scope.row.orderStatus !== '1'" style="width: 72px" plain @click="handleCommand('3',scope.row.id)" size="mini"> - 寮�濮�</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '2' && scope.row.orderStatus !== '3'" v-if="scope.row.orderStatus !== '2'&& scope.row.orderStatus !== '4'" plain @click="handleCommand('4',scope.row.id)" type="warning" size="mini"> - 鍐荤粨</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '4'" v-if="scope.row.orderStatus === '4'" plain @click="handleCommand('3',scope.row.id)" type="warning" size="mini"> - 瑙e喕</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '1'" plain @click="handleCommand('6',scope.row.id)" v-if="scope.row.orderStatus === '1'||scope.row.orderStatus === '3'||scope.row.orderStatus === '4'||scope.row.orderStatus === '5'" type="danger" size="mini"> - 鍏抽棴</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini"> - 鍚敤</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus === '4'||scope.row.orderStatus === '6'" v-if="scope.row.orderStatus !== '5'" @click="handleCommand('5',scope.row.id)" type="success" size="mini"> - 瀹屾垚</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus === '5'" v-if="scope.row.orderStatus === '5'" type="success" size="mini">宸插畬宸�</el-button> <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini"> - 鍚敤</el-button> - </template> - </el-table-column> +<!-- <el-table-column label="淇敼浜�" width="80" align="center" prop="updateUser">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="澶囨敞" width="100" align="center" prop="remarks">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="娴佹按鍙�" align="center" prop="streamNumber">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="瀹㈡埛" width="80" align="center" prop="custom">--> +<!-- </el-table-column>--> +<!-- <el-table-column fixed="right" width="350" label="鎿嶄綔" align="center" class-name="small-padding fixed-width">--> +<!-- <template slot-scope="scope">--> +<!-- <!– 宸ュ崟鐘舵�侊紙1鍒涘缓銆�2宸插彂甯冦��3鐢熶骇涓��4宸插喕缁撱��5宸插畬宸ャ��6宸插叧闂級 –>--> +<!-- <el-button type="success" :disabled="scope.row.orderStatus !== '1'" style="width: 72px" plain @click="handleCommand('3',scope.row.id)" size="mini">--> +<!-- 寮�濮�</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '2' && scope.row.orderStatus !== '3'" v-if="scope.row.orderStatus !== '2'&& scope.row.orderStatus !== '4'" plain @click="handleCommand('4',scope.row.id)" type="warning" size="mini">--> +<!-- 鍐荤粨</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '4'" v-if="scope.row.orderStatus === '4'" plain @click="handleCommand('3',scope.row.id)" type="warning" size="mini">--> +<!-- 瑙e喕</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '1'" plain @click="handleCommand('6',scope.row.id)" v-if="scope.row.orderStatus === '1'||scope.row.orderStatus === '3'||scope.row.orderStatus === '4'||scope.row.orderStatus === '5'" type="danger" size="mini">--> +<!-- 鍏抽棴</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini">--> +<!-- 鍚敤</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus === '4'||scope.row.orderStatus === '6'" v-if="scope.row.orderStatus !== '5'" @click="handleCommand('5',scope.row.id)" type="success" size="mini">--> +<!-- 瀹屾垚</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus === '5'" v-if="scope.row.orderStatus === '5'" type="success" size="mini">宸插畬宸�</el-button> <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini">--> +<!-- 鍚敤</el-button>--> +<!-- </template>--> +<!-- </el-table-column>--> </el-table> </el-card> @@ -230,7 +243,7 @@ </span> <el-form ref="form" inline :model="form" :rules="rules" label-width="80px"> <el-form-item label="宸ュ崟鍙�" prop="workOrderNo"> - <el-input v-model="form.workOrderNo" placeholder="璇疯緭鍏ョ敓浜у伐鍗曞彿" /> + <el-input v-model="form.workOrderNo" placeholder="璇疯緭鍏ョ敓浜ц鍗�" /> </el-form-item> <el-form-item label="璁㈠崟缂栧彿" prop="salesOrderCode"> <el-input v-model="form.salesOrderCode" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�" /> @@ -378,7 +391,7 @@ import { listProductBom } from "@/api/main/bs/ProductBom/ProductBom"; import { listTechnologyRoute} from "@/api/main/bs/technologyRoute/technologyRoute"; import ItemSelect from "@/components/itemSelect/single.vue"; -import { upDownMove, listProductionOrde, getProductionOrde, delProductionOrde, addProductionOrde, updateProductionOrde } from "@/api/main/om/productionOrde/productionOrde"; +import { getProductionNotice, upDownMove, listProductionOrde, getProductionOrde, delProductionOrde, addProductionOrde, updateProductionOrde } from "@/api/main/om/productionOrde/productionOrde"; import { listOrderScheduling, getOrderScheduling, delOrderScheduling, addOrderScheduling, updateOrderScheduling,generateNumbers } from "@/api/main/bs/orderScheduling/orderScheduling"; export default { @@ -442,6 +455,7 @@ typeZ: null, flag: null, adds:null, + productionNotice: null, }, // 琛ㄥ崟鍙傛暟 @@ -479,10 +493,14 @@ this.initWorkshop(); }, methods: { + getProductionNotice(){ + getProductionNotice(this.queryParams).then(response => { + this.$modal.msgSuccess("鎺ユ敹鎴愬姛"); + this.queryParams = {} + this.getList(); + }); + }, //鏁扮粍鐢熸垚 - - - changeDay(day){ this.change.day = day; let adds =this.form.typeZ+this.change.year+this.change.month+this.change.day+this.form.actualQty; @@ -498,8 +516,6 @@ let adds =this.form.typeZ+this.change.year+this.change.month+this.change.day+this.form.actualQty; this.form.adds = adds }, - - moveUp(row, val){ console.log(val) const ids = row.id || this.ids @@ -646,7 +662,7 @@ this.initWorkshop(); this.reset(); this.open = true; - this.titleName = "娣诲姞鐢熶骇宸ュ崟"; + this.titleName = "娣诲姞鐢熶骇璁㈠崟"; }, /** 鍚屾鎸夐挳鎿嶄綔 */ CreatehandleUpdate(Row) { @@ -673,7 +689,7 @@ console.log(response.data) this.form = response.data; this.open = true; - this.titleName = "淇敼鐢熶骇宸ュ崟"; + this.titleName = "淇敼鐢熶骇璁㈠崟"; }); }, /** 鎻愪氦鎸夐挳 */ @@ -699,7 +715,7 @@ /** 鍒犻櫎鎸夐挳鎿嶄綔 */ handleDelete(row) { const ids = row.id || this.ids; - this.$modal.confirm('鏄惁纭鍒犻櫎鐢熶骇宸ュ崟缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function() { + this.$modal.confirm('鏄惁纭鍒犻櫎鐢熶骇璁㈠崟缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function() { return delProductionOrde(ids); }).then(() => { this.getList(); -- Gitblit v1.9.3