分支自 SuZhouGuanHong/TaiYuanTaiZhong

dengjunjie
2024-05-23 32317e8f03592e7633fdad7852d1148d3ad37cbb
优化工单信息界面
已修改1个文件
已添加26个文件
1328 ■■■■■ 文件已修改
代码管理/PCS/WCS_Client/src/extension/widesea_wcs/tomes/VV_Workinfo.js 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Client/src/extension/widesea_wcs/tomes/VV_Workinfo_hty.js 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Client/src/router/viewGird.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Client/src/views/widesea_wcs/tomes/VV_Workinfo.vue 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Client/src/views/widesea_wcs/tomes/VV_Workinfo_hty.vue 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_Entity/DomainModels/ToMES/VV_Workinfo.cs 237 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_Entity/DomainModels/ToMES/VV_Workinfo_hty.cs 281 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_Entity/DomainModels/ToMES/partial/VV_Workinfo.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_Entity/DomainModels/ToMES/partial/VV_Workinfo_hty.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_Entity/MappingConfiguration/ToMES/VV_WorkinfoMapConfig.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_Entity/MappingConfiguration/ToMES/VV_Workinfo_htyMapConfig.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/IRepositories/ToMES/IVV_WorkinfoRepository.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/IRepositories/ToMES/IVV_Workinfo_htyRepository.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/IServices/ToMES/IVV_WorkinfoService.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/IServices/ToMES/IVV_Workinfo_htyService.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/IServices/ToMES/Partial/IVV_WorkinfoService.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/IServices/ToMES/Partial/IVV_Workinfo_htyService.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/Repositories/ToMES/VV_WorkinfoRepository.cs 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/Repositories/ToMES/VV_Workinfo_htyRepository.cs 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/Services/ToMES/Partial/VV_WorkinfoService.cs 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/Services/ToMES/Partial/VV_Workinfo_htyService.cs 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/Services/ToMES/VV_WorkinfoService.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WCS/Services/ToMES/VV_Workinfo_htyService.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WCS/Partial/VV_WorkinfoController.cs 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WCS/Partial/VV_Workinfo_htyController.cs 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WCS/VV_WorkinfoController.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/PCS/WCS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WCS/VV_Workinfo_htyController.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
´úÂë¹ÜÀí/PCS/WCS_Client/src/extension/widesea_wcs/tomes/VV_Workinfo.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,106 @@
/*****************************************************************************************
**  Author:jxx 2022
**  QQ:283591387
**完整文档见:http://v2.volcore.xyz/document/api ã€ä»£ç ç”Ÿæˆé¡µé¢ViewGrid】
**常用示例见:http://v2.volcore.xyz/document/vueDev
**后台操作见:http://v2.volcore.xyz/document/netCoreDev
*****************************************************************************************/
//此js文件是用来自定义扩展业务代码,可以扩展一些自定义页面或者重新配置生成的代码
let extension = {
  components: {
    //查询界面扩展组件
    gridHeader: '',
    gridBody: '',
    gridFooter: '',
    //新建、编辑弹出框扩展组件
    modelHeader: '',
    modelBody: '',
    modelFooter: ''
  },
  tableAction: '', //指定某张表的权限(这里填写表名,默认不用填写)
  buttons: { view: [], box: [], detail: [] }, //扩展的按钮
  methods: {
     //下面这些方法可以保留也可以删除
    onInit() {  //框架初始化配置前,
        //示例:在按钮的最前面添加一个按钮
        //   this.buttons.unshift({  //也可以用push或者splice方法来修改buttons数组
        //     name: '按钮', //按钮名称
        //     icon: 'el-icon-document', //按钮图标vue2版本见iview文档icon,vue3版本见element ui文档icon(注意不是element puls文档)
        //     type: 'primary', //按钮样式vue2版本见iview文档button,vue3版本见element ui文档button
        //     onClick: function () {
        //       this.$Message.success('点击了按钮');
        //     }
        //   });
        let OutsorcingBtn = this.buttons.find(r => r.name == "出库外协");
        if(null!=OutsorcingBtn){
          OutsorcingBtn.onClick = function (){
            let rows = this.$refs.table.getSelected();
            if (rows.length == 0) return this.$error("请选择工单!");
            let addkeys = rows.map(x => {
                return x[this.table.key];
            });
            if (!addkeys || addkeys.Length == 0) return this.$error("未获取到工单!");
            this.$confirm("是否确认要出库外协?","提示",{
                        // iconClass:"el-icon-success",//el-icon-remove自定义图标样式
                        confirmButtonText:"确认",//确认按钮文字更换
                        cancelButtonText:"取消",//取消按钮文字更换
                        // cancelBtn:"取消",//取消按钮文字更换
                        showClose: true,//是否显示右上角关闭按钮
                        type: "warning",//提示类型 success:成功/info:信息/warning:警告/error:报错
            }).then(()=>{
              let params = {
                MainData: null,
                DetailData: null,
                DelKeys: addkeys
            }
            this.http.post("/api/dt_mes_head/OutsorcingWorkOrder", params, "正在处理工单....").then(x => {
                if (!x.status) return this.$error(x.message);
                this.$success("处理工单成功!");
                this.refresh();
            });
            })
          }
        }
        //示例:设置修改新建、编辑弹出框字段标签的长度
        // this.boxOptions.labelWidth = 150;
    },
    onInited() {
      //框架初始化配置后
      //如果要配置明细表,在此方法操作
      //this.detailOptions.columns.forEach(column=>{ });
    },
    searchBefore(param) {
      //界面查询前,可以给param.wheres添加查询参数
      //返回false,则不会执行查询
      return true;
    },
    searchAfter(result) {
      //查询后,result返回的查询数据,可以在显示到表格前处理表格的值
      return true;
    },
    addBefore(formData) {
      //新建保存前formData为对象,包括明细表,可以给给表单设置值,自己输出看formData的值
      return true;
    },
    updateBefore(formData) {
      //编辑保存前formData为对象,包括明细表、删除行的Id
      return true;
    },
    rowClick({ row, column, event }) {
      //查询界面点击行事件
      // this.$refs.table.$refs.table.toggleRowSelection(row); //单击行时选中当前行;
    },
    modelOpenAfter(row) {
      //点击编辑、新建按钮弹出框后,可以在此处写逻辑,如,从后台获取数据
      //(1)判断是编辑还是新建操作: this.currentAction=='Add';
      //(2)给弹出框设置默认值
      //(3)this.editFormFields.字段='xxx';
      //如果需要给下拉框设置默认值,请遍历this.editFormOptions找到字段配置对应data属性的key值
      //看不懂就把输出看:console.log(this.editFormOptions)
    }
  }
};
export default extension;
´úÂë¹ÜÀí/PCS/WCS_Client/src/extension/widesea_wcs/tomes/VV_Workinfo_hty.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,75 @@
/*****************************************************************************************
**  Author:jxx 2022
**  QQ:283591387
**完整文档见:http://v2.volcore.xyz/document/api ã€ä»£ç ç”Ÿæˆé¡µé¢ViewGrid】
**常用示例见:http://v2.volcore.xyz/document/vueDev
**后台操作见:http://v2.volcore.xyz/document/netCoreDev
*****************************************************************************************/
//此js文件是用来自定义扩展业务代码,可以扩展一些自定义页面或者重新配置生成的代码
let extension = {
  components: {
    //查询界面扩展组件
    gridHeader: '',
    gridBody: '',
    gridFooter: '',
    //新建、编辑弹出框扩展组件
    modelHeader: '',
    modelBody: '',
    modelFooter: ''
  },
  tableAction: '', //指定某张表的权限(这里填写表名,默认不用填写)
  buttons: { view: [], box: [], detail: [] }, //扩展的按钮
  methods: {
     //下面这些方法可以保留也可以删除
    onInit() {  //框架初始化配置前,
        //示例:在按钮的最前面添加一个按钮
        //   this.buttons.unshift({  //也可以用push或者splice方法来修改buttons数组
        //     name: '按钮', //按钮名称
        //     icon: 'el-icon-document', //按钮图标vue2版本见iview文档icon,vue3版本见element ui文档icon(注意不是element puls文档)
        //     type: 'primary', //按钮样式vue2版本见iview文档button,vue3版本见element ui文档button
        //     onClick: function () {
        //       this.$Message.success('点击了按钮');
        //     }
        //   });
        //示例:设置修改新建、编辑弹出框字段标签的长度
        // this.boxOptions.labelWidth = 150;
    },
    onInited() {
      //框架初始化配置后
      //如果要配置明细表,在此方法操作
      //this.detailOptions.columns.forEach(column=>{ });
    },
    searchBefore(param) {
      //界面查询前,可以给param.wheres添加查询参数
      //返回false,则不会执行查询
      return true;
    },
    searchAfter(result) {
      //查询后,result返回的查询数据,可以在显示到表格前处理表格的值
      return true;
    },
    addBefore(formData) {
      //新建保存前formData为对象,包括明细表,可以给给表单设置值,自己输出看formData的值
      return true;
    },
    updateBefore(formData) {
      //编辑保存前formData为对象,包括明细表、删除行的Id
      return true;
    },
    rowClick({ row, column, event }) {
      //查询界面点击行事件
      // this.$refs.table.$refs.table.toggleRowSelection(row); //单击行时选中当前行;
    },
    modelOpenAfter(row) {
      //点击编辑、新建按钮弹出框后,可以在此处写逻辑,如,从后台获取数据
      //(1)判断是编辑还是新建操作: this.currentAction=='Add';
      //(2)给弹出框设置默认值
      //(3)this.editFormFields.字段='xxx';
      //如果需要给下拉框设置默认值,请遍历this.editFormOptions找到字段配置对应data属性的key值
      //看不懂就把输出看:console.log(this.editFormOptions)
    }
  }
};
export default extension;
´úÂë¹ÜÀí/PCS/WCS_Client/src/router/viewGird.js
@@ -217,6 +217,14 @@
        path: '/dt_management_time',
        name: 'dt_management_time',
        component: () => import('@/views/widesea_wcs/wcs/dt_management_time.vue')
    }    ,{
        path: '/VV_Workinfo',
        name: 'VV_Workinfo',
        component: () => import('@/views/widesea_wcs/tomes/VV_Workinfo.vue')
    }    ,{
        path: '/VV_Workinfo_hty',
        name: 'VV_Workinfo_hty',
        component: () => import('@/views/widesea_wcs/tomes/VV_Workinfo_hty.vue')
    }]
export default viewgird
´úÂë¹ÜÀí/PCS/WCS_Client/src/views/widesea_wcs/tomes/VV_Workinfo.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,84 @@
<!--
*Author:jxx
 *Contact:283591387@qq.com
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *业务请在@/extension/widesea_wcs/tomes/VV_Workinfo.js此处编写
 -->
<template>
    <view-grid ref="grid"
               :columns="columns"
               :detail="detail"
               :editFormFields="editFormFields"
               :editFormOptions="editFormOptions"
               :searchFormFields="searchFormFields"
               :searchFormOptions="searchFormOptions"
               :table="table"
               :extend="extend">
    </view-grid>
</template>
<script>
    import extend from "@/extension/widesea_wcs/tomes/VV_Workinfo.js";
    import { ref, defineComponent } from "vue";
    export default defineComponent({
        setup() {
            const table = ref({
                key: 'mes_id',
                footer: "Foots",
                cnName: '工单信息',
                name: 'tomes/VV_Workinfo',
                url: "/VV_Workinfo/",
                sortName: "workOrder"
            });
            const editFormFields = ref({"stackNoRange":""});
            const editFormOptions = ref([[{"title":"打包数量","field":"stackNoRange","type":"number"}]]);
            const searchFormFields = ref({"workOrder":"","jobID":"","drawingNo":"","productName":"","productDesc":"","processCode":"","heatID":"","billetID":"","SN":""});
            const searchFormOptions = ref([[{"title":"图号","field":"drawingNo","type":"like"},{"title":"工作令号","field":"workOrder","type":"like"},{"title":"工单编号","field":"jobID","type":"like"}],[{"title":"产品名称","field":"productName","type":"like"},{"title":"炉代号","field":"heatID","type":"like"},{"title":"钢坯号","field":"billetID","type":"like"}],[{"title":"车轮SN号","field":"SN","type":"like"},{"dataKey":"WorkTypes","data":[],"title":"工单类型","field":"processCode","type":"select"},{"title":"创建时间","field":"CreateTime","type":"date"}]]);
            const columns = ref([{field:'workOrder',title:'工作令号',type:'string',sort:true,width:120,align:'left',sort:true},
                       {field:'jobID',title:'工单编号',type:'string',sort:true,width:120,align:'left'},
                       {field:'materialCode',title:'物料编码',hidden:true,type:'string',width:110,align:'left'},
                       {field:'drawingNo',title:'图号',type:'string',sort:true,width:110,align:'left'},
                       {field:'productName',title:'产品名称',type:'string',width:120,align:'left'},
                       {field:'heatID',title:'炉代号',type:'string',sort:true,width:110,align:'left'},
                       {field:'billetID',title:'钢坯号',type:'int',sort:true,width:90,align:'left'},
                       {field:'SN',title:'车轮SN号',type:'string',sort:true,width:120,align:'left'},
                       {field:'processCode',title:'工单类型',type:'string',bind:{ key:'WorkTypes',data:[]},width:110,align:'left'},
                       {field:'area',title:'指定库区',type:'string',width:110,align:'left'},
                       {field:'drawingNoVer',title:'技术状态',type:'string',sort:true,width:110,align:'left'},
                       {field:'quantity',title:'计划数量',type:'int',width:80,hidden:true,require:true,align:'left'},
                       {field:'typeID',title:'轮型代码',type:'string',width:110,hidden:true,align:'left'},
                       {field:'stackNoRange',title:'打包数量',type:'int',sort:true,width:110,align:'left'},
                       {field:'skip_op_1',title:'视觉检测1',bind:{ key:'skip_op_Status',data:[]},type:'bool',width:110,align:'left'},
                       {field:'skip_op_2',title:'视觉检测2',bind:{ key:'skip_op_Status',data:[]},type:'bool',width:110,align:'left'},
                       {field:'skip_op_3',title:'喷防锈液',bind:{ key:'skip_op_Status',data:[]},type:'bool',width:110,align:'left'},
                       {field:'maxDiameterDiff',title:'轮径偏差',type:'decimal',width:110,hidden:true,align:'left'},
                       {field:'expectedStartTime',title:'计划开始时间',type:'datetime',sort:true,width:150,align:'left',sort:true},
                       {field:'expectedFinishTime',title:'计划完成时间',type:'datetime',sort:true,width:150,align:'left',sort:true},
                       {field:'CreateTime',title:'创建时间',type:'datetime',sort:true,width:150,align:'left',sort:true},
                       {field:'creator',title:'创建者',type:'string',width:120,align:'left'},
                       {field:'finishNum',title:'完成数量',type:'int',sort:true,width:80,hidden:true,align:'left'},
                       {field:'heatBatchID',title:'热处理批次',hidden:true,type:'string',width:110,align:'left'},
                       {field:'Status',title:'工单状态',type:'string',width:110,align:'left'},
                       {field:'FinishTime',title:'完成时间',type:'datetime',sort:true,width:150,align:'left',sort:true},
                       {field:'mes_id',title:'工单头表ID',type:'guid',width:110,hidden:true,require:true,align:'left'},
                       {field:'productDesc',title:'产品描述',type:'string',width:220,align:'left'}
                    ]);
            const detail = ref({
                cnName: "#detailCnName",
                table: "#detailTable",
                columns: [],
                sortName: "",
                key: ""
            });
            return {
                table,
                extend,
                editFormFields,
                editFormOptions,
                searchFormFields,
                searchFormOptions,
                columns,
                detail,
            };
        },
    });
</script>
´úÂë¹ÜÀí/PCS/WCS_Client/src/views/widesea_wcs/tomes/VV_Workinfo_hty.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,85 @@
<!--
*Author:jxx
 *Contact:283591387@qq.com
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *业务请在@/extension/widesea_wcs/tomes/VV_Workinfo_hty.js此处编写
 -->
<template>
    <view-grid ref="grid"
               :columns="columns"
               :detail="detail"
               :editFormFields="editFormFields"
               :editFormOptions="editFormOptions"
               :searchFormFields="searchFormFields"
               :searchFormOptions="searchFormOptions"
               :table="table"
               :extend="extend">
    </view-grid>
</template>
<script>
    import extend from "@/extension/widesea_wcs/tomes/VV_Workinfo_hty.js";
    import { ref, defineComponent } from "vue";
    export default defineComponent({
        setup() {
            const table = ref({
                key: 'mes_id',
                footer: "Foots",
                cnName: '工单历史信息',
                name: 'tomes/VV_Workinfo_hty',
                url: "/VV_Workinfo_hty/",
                sortName: "FinishTime"
            });
            const editFormFields = ref({});
            const editFormOptions = ref([]);
            const searchFormFields = ref({"workOrder":"","jobID":"","drawingNo":"","productName":"","heatID":"","billetID":"","SN":"","processCode":"","CreateTime":"","FinishTime":"","operatetype":"","productDesc":""});
            const searchFormOptions = ref([[{"title":"图号","field":"drawingNo","type":"like"},{"title":"工作令号","field":"workOrder","type":"like"},{"title":"工单编号","field":"jobID","type":"like"}],[{"title":"产品名称","field":"productName","type":"like"},{"title":"炉代号","field":"heatID","type":"like"},{"title":"钢坯号","field":"billetID","type":"like"}],[{"title":"车轮SN号","field":"SN","type":"like"},{"dataKey":"WorkTypes","data":[],"title":"工单类型","field":"processCode","type":"select"},{"dataKey":"WorkOperateTypes","data":[],"title":"操作类型","field":"operatetype","type":"select"}],[{"title":"创建时间","field":"CreateTime","type":"date"},{"title":"完成时间","field":"FinishTime","type":"date"},{"title":"产品描述","field":"productDesc","type":"like"}]]);
            const columns = ref([{field:'mes_id',title:'工单头表ID',type:'guid',width:110,require:true,align:'left',sort:true},
                       {field:'workOrder',title:'工作令号',type:'string',width:110,align:'left'},
                       {field:'jobID',title:'工单编号',type:'string',width:110,align:'left'},
                       {field:'materialCode',title:'物料编码',type:'string',width:110,align:'left'},
                       {field:'drawingNo',title:'图号',type:'string',width:110,align:'left'},
                       {field:'productName',title:'产品名称',type:'string',width:110,align:'left'},
                       {field:'heatID',title:'炉代号',type:'string',width:110,align:'left'},
                       {field:'billetID',title:'钢坯号',type:'int',width:110,align:'left'},
                       {field:'SN',title:'车轮SN号',type:'string',width:110,align:'left'},
                       {field:'processCode',title:'工单类型',type:'string',bind:{ key:'WorkTypes',data:[]},width:110,align:'left'},
                       {field:'area',title:'指定库区',type:'string',width:110,align:'left'},
                       {field:'drawingNoVer',title:'技术状态',type:'string',width:110,align:'left'},
                       {field:'quantity',title:'计划数量',type:'int',width:110,require:true,align:'left'},
                       {field:'typeID',title:'轮型代码',type:'string',width:110,align:'left'},
                       {field:'stackNoRange',title:'打包数量',type:'int',width:110,align:'left'},
                       {field:'skip_op_1',title:'视觉检测1',type:'bool',bind:{ key:'skip_op_Status',data:[]},width:110,align:'left'},
                       {field:'skip_op_2',title:'视觉检测2',type:'bool',bind:{ key:'skip_op_Status',data:[]},width:110,align:'left'},
                       {field:'skip_op_3',title:'喷防锈液',type:'bool',bind:{ key:'skip_op_Status',data:[]},width:110,align:'left'},
                       {field:'maxDiameterDiff',title:'轮径偏差',type:'decimal',width:110,align:'left'},
                       {field:'expectedStartTime',title:'计划开始时间',type:'datetime',width:150,align:'left',sort:true},
                       {field:'expectedFinishTime',title:'计划完成时间',type:'datetime',width:150,align:'left',sort:true},
                       {field:'CreateTime',title:'创建时间',type:'datetime',sort:true,width:150,align:'left',sort:true},
                       {field:'creator',title:'创建者',type:'string',width:100,align:'left'},
                       {field:'finishNum',title:'完成数量',type:'int',width:110,align:'left'},
                       {field:'heatBatchID',title:'热处理批次',type:'string',width:110,align:'left'},
                       {field:'Status',title:'工单状态',type:'string',width:110,align:'left'},
                       {field:'FinishTime',title:'完成时间',type:'datetime',sort:true,width:150,align:'left',sort:true},
                       {field:'operatetype',title:'操作类型',type:'string',bind:{ key:'WorkOperateTypes',data:[]},width:110,align:'left'},
                       {field:'compeletor',title:'操作者',type:'string',width:110,align:'left'},
                       {field:'productDesc',title:'产品描述',type:'string',width:180,align:'left'}]);
            const detail = ref({
                cnName: "#detailCnName",
                table: "#detailTable",
                columns: [],
                sortName: "",
                key: ""
            });
            return {
                table,
                extend,
                editFormFields,
                editFormOptions,
                searchFormFields,
                searchFormOptions,
                columns,
                detail,
            };
        },
    });
</script>
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_Entity/DomainModels/ToMES/VV_Workinfo.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,237 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *如果数据库字段发生变化,请在代码生器重新生成此Model
 */
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Entity.SystemModels;
namespace WIDESEA_Entity.DomainModels
{
    [Entity(TableCnName = "工单信息",TableName = "VV_Workinfo")]
    public partial class VV_Workinfo:BaseEntity
    {
        /// <summary>
       ///工作令号
       /// </summary>
       [Display(Name ="工作令号")]
       [MaxLength(50)]
       [Column(TypeName="nvarchar(50)")]
       public string workOrder { get; set; }
       /// <summary>
       ///工单编号
       /// </summary>
       [Display(Name ="工单编号")]
       [MaxLength(40)]
       [Column(TypeName="nvarchar(40)")]
       public string jobID { get; set; }
       /// <summary>
       ///物料编码
       /// </summary>
       [Display(Name ="物料编码")]
       [MaxLength(20)]
       [Column(TypeName="nvarchar(20)")]
       public string materialCode { get; set; }
       /// <summary>
       ///图号
       /// </summary>
       [Display(Name ="图号")]
       [MaxLength(20)]
       [Column(TypeName="nvarchar(20)")]
       public string drawingNo { get; set; }
       /// <summary>
       ///技术状态
       /// </summary>
       [Display(Name ="技术状态")]
       [MaxLength(10)]
       [Column(TypeName="nvarchar(10)")]
       public string drawingNoVer { get; set; }
       /// <summary>
       ///产品名称
       /// </summary>
       [Display(Name ="产品名称")]
       [MaxLength(40)]
       [Column(TypeName="nvarchar(40)")]
       public string productName { get; set; }
       /// <summary>
       ///产品描述
       /// </summary>
       [Display(Name ="产品描述")]
       [MaxLength(200)]
       [Column(TypeName="nvarchar(200)")]
       public string productDesc { get; set; }
       /// <summary>
       ///计划数量
       /// </summary>
       [Display(Name ="计划数量")]
       [Column(TypeName="int")]
       //[Required(AllowEmptyStrings=false)]
       public int quantity { get; set; }
       /// <summary>
       ///轮型代码
       /// </summary>
       [Display(Name ="轮型代码")]
       [MaxLength(20)]
       [Column(TypeName="nvarchar(20)")]
       public string typeID { get; set; }
       /// <summary>
       ///打包数量
       /// </summary>
       [Display(Name ="打包数量")]
       [Column(TypeName="int")]
       [Editable(true)]
       public int? stackNoRange { get; set; }
       /// <summary>
       ///轮径偏差
       /// </summary>
       [Display(Name ="轮径偏差")]
       [DisplayFormat(DataFormatString="18,2")]
       [Column(TypeName="decimal")]
       public decimal? maxDiameterDiff { get; set; }
       /// <summary>
       ///计划开始时间
       /// </summary>
       [Display(Name ="计划开始时间")]
       [Column(TypeName="datetime")]
       public DateTime? expectedStartTime { get; set; }
       /// <summary>
       ///计划完成时间
       /// </summary>
       [Display(Name ="计划完成时间")]
       [Column(TypeName="datetime")]
       public DateTime? expectedFinishTime { get; set; }
       /// <summary>
       ///创建时间
       /// </summary>
       [Display(Name ="创建时间")]
       [Column(TypeName="datetime")]
       public DateTime? CreateTime { get; set; }
       /// <summary>
       ///创建者
       /// </summary>
       [Display(Name ="创建者")]
       [MaxLength(40)]
       [Column(TypeName="nvarchar(40)")]
       public string creator { get; set; }
       /// <summary>
       ///工单类型
       /// </summary>
       [Display(Name ="工单类型")]
       [MaxLength(20)]
       [Column(TypeName="nvarchar(20)")]
       public string processCode { get; set; }
       /// <summary>
       ///指定库区
       /// </summary>
       [Display(Name ="指定库区")]
       [MaxLength(15)]
       [Column(TypeName="nvarchar(15)")]
       public string area { get; set; }
       /// <summary>
       ///完成数量
       /// </summary>
       [Display(Name ="完成数量")]
       [Column(TypeName="int")]
       public int? finishNum { get; set; }
       /// <summary>
       ///视觉检测1
       /// </summary>
       [Display(Name ="视觉检测1")]
       [Column(TypeName="bit")]
       public bool? skip_op_1 { get; set; }
       /// <summary>
       ///视觉检测2
       /// </summary>
       [Display(Name ="视觉检测2")]
       [Column(TypeName="bit")]
       public bool? skip_op_2 { get; set; }
       /// <summary>
       ///喷防锈液
       /// </summary>
       [Display(Name ="喷防锈液")]
       [Column(TypeName="bit")]
       public bool? skip_op_3 { get; set; }
       /// <summary>
       ///炉代号
       /// </summary>
       [Display(Name ="炉代号")]
       [MaxLength(20)]
       [Column(TypeName="nvarchar(20)")]
       public string heatID { get; set; }
       /// <summary>
       ///钢坯号
       /// </summary>
       [Display(Name ="钢坯号")]
       [Column(TypeName="int")]
       public int? billetID { get; set; }
       /// <summary>
       ///车轮SN号
       /// </summary>
       [Display(Name ="车轮SN号")]
       [MaxLength(50)]
       [Column(TypeName="nvarchar(50)")]
       public string SN { get; set; }
       /// <summary>
       ///热处理批次
       /// </summary>
       [Display(Name ="热处理批次")]
       [MaxLength(30)]
       [Column(TypeName="nvarchar(30)")]
       public string heatBatchID { get; set; }
       /// <summary>
       ///工单状态
       /// </summary>
       [Display(Name ="工单状态")]
       [MaxLength(20)]
       [Column(TypeName="nvarchar(20)")]
       public string Status { get; set; }
       /// <summary>
       ///完成时间
       /// </summary>
       [Display(Name ="完成时间")]
       [Column(TypeName="datetime")]
       public DateTime? FinishTime { get; set; }
        /// <summary>
        ///工单头表ID
        /// </summary>
        [Key]
        [Display(Name ="工单头表ID")]
       [Column(TypeName="uniqueidentifier")]
       [Required(AllowEmptyStrings=false)]
       public Guid mes_id { get; set; }
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_Entity/DomainModels/ToMES/VV_Workinfo_hty.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,281 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *如果数据库字段发生变化,请在代码生器重新生成此Model
 */
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Entity.SystemModels;
namespace WIDESEA_Entity.DomainModels
{
    [Entity(TableCnName = "工单历史信息", TableName = "VV_Workinfo_hty")]
    public partial class VV_Workinfo_hty : BaseEntity
    {
        /// <summary>
        ///工单头表ID
        /// </summary>
        [Key]
        [Display(Name = "工单头表ID")]
        [Column(TypeName = "uniqueidentifier")]
        [Editable(true)]
        [Required(AllowEmptyStrings = false)]
        public Guid mes_id { get; set; }
        /// <summary>
        ///工作令号
        /// </summary>
        [Display(Name = "工作令号")]
        [MaxLength(50)]
        [Column(TypeName = "nvarchar(50)")]
        [Editable(true)]
        public string workOrder { get; set; }
        /// <summary>
        ///工单编号
        /// </summary>
        [Display(Name = "工单编号")]
        [MaxLength(40)]
        [Column(TypeName = "nvarchar(40)")]
        [Editable(true)]
        public string jobID { get; set; }
        /// <summary>
        ///物料编码
        /// </summary>
        [Display(Name = "物料编码")]
        [MaxLength(20)]
        [Column(TypeName = "nvarchar(20)")]
        [Editable(true)]
        public string materialCode { get; set; }
        /// <summary>
        ///图号
        /// </summary>
        [Display(Name = "图号")]
        [MaxLength(20)]
        [Column(TypeName = "nvarchar(20)")]
        [Editable(true)]
        public string drawingNo { get; set; }
        /// <summary>
        ///产品名称
        /// </summary>
        [Display(Name = "产品名称")]
        [MaxLength(40)]
        [Column(TypeName = "nvarchar(40)")]
        [Editable(true)]
        public string productName { get; set; }
        /// <summary>
        ///炉代号
        /// </summary>
        [Display(Name = "炉代号")]
        [MaxLength(20)]
        [Column(TypeName = "nvarchar(20)")]
        [Editable(true)]
        public string heatID { get; set; }
        /// <summary>
        ///钢坯号
        /// </summary>
        [Display(Name = "钢坯号")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int? billetID { get; set; }
        /// <summary>
        ///车轮SN号
        /// </summary>
        [Display(Name = "车轮SN号")]
        [MaxLength(50)]
        [Column(TypeName = "nvarchar(50)")]
        [Editable(true)]
        public string SN { get; set; }
        /// <summary>
        ///工单类型
        /// </summary>
        [Display(Name = "工单类型")]
        [MaxLength(20)]
        [Column(TypeName = "nvarchar(20)")]
        [Editable(true)]
        public string processCode { get; set; }
        /// <summary>
        ///指定库区
        /// </summary>
        [Display(Name = "指定库区")]
        [MaxLength(15)]
        [Column(TypeName = "nvarchar(15)")]
        [Editable(true)]
        public string area { get; set; }
        /// <summary>
        ///技术状态
        /// </summary>
        [Display(Name = "技术状态")]
        [MaxLength(10)]
        [Column(TypeName = "nvarchar(10)")]
        [Editable(true)]
        public string drawingNoVer { get; set; }
        /// <summary>
        ///计划数量
        /// </summary>
        [Display(Name = "计划数量")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int quantity { get; set; }
        /// <summary>
        ///轮型代码
        /// </summary>
        [Display(Name = "轮型代码")]
        [MaxLength(20)]
        [Column(TypeName = "nvarchar(20)")]
        [Editable(true)]
        public string typeID { get; set; }
        /// <summary>
        ///打包数量
        /// </summary>
        [Display(Name = "打包数量")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int? stackNoRange { get; set; }
        /// <summary>
        ///视觉检测1
        /// </summary>
        [Display(Name = "视觉检测1")]
        [Column(TypeName = "bit")]
        [Editable(true)]
        public bool? skip_op_1 { get; set; }
        /// <summary>
        ///视觉检测2
        /// </summary>
        [Display(Name = "视觉检测2")]
        [Column(TypeName = "bit")]
        [Editable(true)]
        public bool? skip_op_2 { get; set; }
        /// <summary>
        ///喷防锈液
        /// </summary>
        [Display(Name = "喷防锈液")]
        [Column(TypeName = "bit")]
        [Editable(true)]
        public bool? skip_op_3 { get; set; }
        /// <summary>
        ///轮径偏差
        /// </summary>
        [Display(Name = "轮径偏差")]
        [DisplayFormat(DataFormatString = "18,2")]
        [Column(TypeName = "decimal")]
        [Editable(true)]
        public decimal? maxDiameterDiff { get; set; }
        /// <summary>
        ///计划开始时间
        /// </summary>
        [Display(Name = "计划开始时间")]
        [Column(TypeName = "datetime")]
        [Editable(true)]
        public DateTime? expectedStartTime { get; set; }
        /// <summary>
        ///计划完成时间
        /// </summary>
        [Display(Name = "计划完成时间")]
        [Column(TypeName = "datetime")]
        [Editable(true)]
        public DateTime? expectedFinishTime { get; set; }
        /// <summary>
        ///创建时间
        /// </summary>
        [Display(Name = "创建时间")]
        [Column(TypeName = "datetime")]
        [Editable(true)]
        public DateTime? CreateTime { get; set; }
        /// <summary>
        ///创建者
        /// </summary>
        [Display(Name = "创建者")]
        [MaxLength(40)]
        [Column(TypeName = "nvarchar(40)")]
        [Editable(true)]
        public string creator { get; set; }
        /// <summary>
        ///完成数量
        /// </summary>
        [Display(Name = "完成数量")]
        [Column(TypeName = "int")]
        [Editable(true)]
        public int? finishNum { get; set; }
        /// <summary>
        ///热处理批次
        /// </summary>
        [Display(Name = "热处理批次")]
        [MaxLength(30)]
        [Column(TypeName = "nvarchar(30)")]
        [Editable(true)]
        public string heatBatchID { get; set; }
        /// <summary>
        ///工单状态
        /// </summary>
        [Display(Name = "工单状态")]
        [MaxLength(20)]
        [Column(TypeName = "nvarchar(20)")]
        [Editable(true)]
        public string Status { get; set; }
        /// <summary>
        ///完成时间
        /// </summary>
        [Display(Name = "完成时间")]
        [Column(TypeName = "datetime")]
        [Editable(true)]
        public DateTime? FinishTime { get; set; }
        /// <summary>
        ///操作类型
        /// </summary>
        [Display(Name = "操作类型")]
        [MaxLength(10)]
        [Column(TypeName = "nvarchar(10)")]
        [Editable(true)]
        public string operatetype { get; set; }
        /// <summary>
        ///操作者
        /// </summary>
        [Display(Name = "操作者")]
        [MaxLength(20)]
        [Column(TypeName = "nvarchar(20)")]
        [Editable(true)]
        public string compeletor { get; set; }
        /// <summary>
        ///产品描述
        /// </summary>
        [Display(Name = "产品描述")]
        [MaxLength(200)]
        [Column(TypeName = "nvarchar(200)")]
        [Editable(true)]
        public string productDesc { get; set; }
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_Entity/DomainModels/ToMES/partial/VV_Workinfo.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *如果数据库字段发生变化,请在代码生器重新生成此Model
 */
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Entity.SystemModels;
namespace WIDESEA_Entity.DomainModels
{
    public partial class VV_Workinfo
    {
        //此处配置字段(字段配置见此model的另一个partial),如果表中没有此字段请加上 [NotMapped]属性,否则会异常
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_Entity/DomainModels/ToMES/partial/VV_Workinfo_hty.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *如果数据库字段发生变化,请在代码生器重新生成此Model
 */
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Entity.SystemModels;
namespace WIDESEA_Entity.DomainModels
{
    public partial class VV_Workinfo_hty
    {
        //此处配置字段(字段配置见此model的另一个partial),如果表中没有此字段请加上 [NotMapped]属性,否则会异常
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_Entity/MappingConfiguration/ToMES/VV_WorkinfoMapConfig.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
using WIDESEA_Entity.MappingConfiguration;
using WIDESEA_Entity.DomainModels;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
namespace WIDESEA_Entity.MappingConfiguration
{
    public class VV_WorkinfoMapConfig : EntityMappingConfiguration<VV_Workinfo>
    {
        public override void Map(EntityTypeBuilder<VV_Workinfo>
        builderTable)
        {
          //b.Property(x => x.StorageName).HasMaxLength(45);
        }
     }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_Entity/MappingConfiguration/ToMES/VV_Workinfo_htyMapConfig.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
using WIDESEA_Entity.MappingConfiguration;
using WIDESEA_Entity.DomainModels;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
namespace WIDESEA_Entity.MappingConfiguration
{
    public class VV_Workinfo_htyMapConfig : EntityMappingConfiguration<VV_Workinfo_hty>
    {
        public override void Map(EntityTypeBuilder<VV_Workinfo_hty>
        builderTable)
        {
          //b.Property(x => x.StorageName).HasMaxLength(45);
        }
     }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/IRepositories/ToMES/IVV_WorkinfoRepository.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *Repository提供数据库操作,如果要增加数据库操作请在当前目录下Partial文件夹IVV_WorkinfoRepository编写接口
 */
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Core.BaseProvider;
using WIDESEA_Entity.DomainModels;
using WIDESEA_Core.Extensions.AutofacManager;
namespace WIDESEA_WCS.IRepositories
{
    public partial interface IVV_WorkinfoRepository : IDependency,IRepository<VV_Workinfo>
    {
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/IRepositories/ToMES/IVV_Workinfo_htyRepository.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *Repository提供数据库操作,如果要增加数据库操作请在当前目录下Partial文件夹IVV_Workinfo_htyRepository编写接口
 */
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Core.BaseProvider;
using WIDESEA_Entity.DomainModels;
using WIDESEA_Core.Extensions.AutofacManager;
namespace WIDESEA_WCS.IRepositories
{
    public partial interface IVV_Workinfo_htyRepository : IDependency,IRepository<VV_Workinfo_hty>
    {
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/IServices/ToMES/IVV_WorkinfoService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 */
using WIDESEA_Core.BaseProvider;
using WIDESEA_Entity.DomainModels;
namespace WIDESEA_WCS.IServices
{
    public partial interface IVV_WorkinfoService : IService<VV_Workinfo>
    {
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/IServices/ToMES/IVV_Workinfo_htyService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 */
using WIDESEA_Core.BaseProvider;
using WIDESEA_Entity.DomainModels;
namespace WIDESEA_WCS.IServices
{
    public partial interface IVV_Workinfo_htyService : IService<VV_Workinfo_hty>
    {
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/IServices/ToMES/Partial/IVV_WorkinfoService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
/*
*所有关于VV_Workinfo类的业务代码接口应在此处编写
*/
using WIDESEA_Core.BaseProvider;
using WIDESEA_Entity.DomainModels;
using WIDESEA_Core.Utilities;
using System.Linq.Expressions;
namespace WIDESEA_WCS.IServices
{
    public partial interface IVV_WorkinfoService
    {
    }
 }
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/IServices/ToMES/Partial/IVV_Workinfo_htyService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
/*
*所有关于VV_Workinfo_hty类的业务代码接口应在此处编写
*/
using WIDESEA_Core.BaseProvider;
using WIDESEA_Entity.DomainModels;
using WIDESEA_Core.Utilities;
using System.Linq.Expressions;
namespace WIDESEA_WCS.IServices
{
    public partial interface IVV_Workinfo_htyService
    {
    }
 }
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/Repositories/ToMES/VV_WorkinfoRepository.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *Repository提供数据库操作,如果要增加数据库操作请在当前目录下Partial文件夹VV_WorkinfoRepository编写代码
 */
using WIDESEA_WCS.IRepositories;
using WIDESEA_Core.BaseProvider;
using WIDESEA_Core.EFDbContext;
using WIDESEA_Core.Extensions.AutofacManager;
using WIDESEA_Entity.DomainModels;
namespace WIDESEA_WCS.Repositories
{
    public partial class VV_WorkinfoRepository : RepositoryBase<VV_Workinfo> , IVV_WorkinfoRepository
    {
    public VV_WorkinfoRepository(VOLContext dbContext)
    : base(dbContext)
    {
    }
    public static IVV_WorkinfoRepository Instance
    {
      get {  return AutofacContainerModule.GetService<IVV_WorkinfoRepository>(); } }
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/Repositories/ToMES/VV_Workinfo_htyRepository.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *Repository提供数据库操作,如果要增加数据库操作请在当前目录下Partial文件夹VV_Workinfo_htyRepository编写代码
 */
using WIDESEA_WCS.IRepositories;
using WIDESEA_Core.BaseProvider;
using WIDESEA_Core.EFDbContext;
using WIDESEA_Core.Extensions.AutofacManager;
using WIDESEA_Entity.DomainModels;
namespace WIDESEA_WCS.Repositories
{
    public partial class VV_Workinfo_htyRepository : RepositoryBase<VV_Workinfo_hty> , IVV_Workinfo_htyRepository
    {
    public VV_Workinfo_htyRepository(VOLContext dbContext)
    : base(dbContext)
    {
    }
    public static IVV_Workinfo_htyRepository Instance
    {
      get {  return AutofacContainerModule.GetService<IVV_Workinfo_htyRepository>(); } }
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/Services/ToMES/Partial/VV_WorkinfoService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
/*
 *所有关于VV_Workinfo类的业务代码应在此处编写
*可使用repository.调用常用方法,获取EF/Dapper等信息
*如果需要事务请使用repository.DbContextBeginTransaction
*也可使用DBServerProvider.手动获取数据库相关信息
*用户信息、权限、角色等使用UserContext.Current操作
*VV_WorkinfoService对增、删、改查、导入、导出、审核业务代码扩展参照ServiceFunFilter
*/
using WIDESEA_Core.BaseProvider;
using WIDESEA_Core.Extensions.AutofacManager;
using WIDESEA_Entity.DomainModels;
using System.Linq;
using WIDESEA_Core.Utilities;
using System.Linq.Expressions;
using WIDESEA_Core.Extensions;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Http;
using WIDESEA_WCS.IRepositories;
namespace WIDESEA_WCS.Services
{
    public partial class VV_WorkinfoService
    {
        private readonly IHttpContextAccessor _httpContextAccessor;
        private readonly IVV_WorkinfoRepository _repository;//访问数据库
        [ActivatorUtilitiesConstructor]
        public VV_WorkinfoService(
            IVV_WorkinfoRepository dbRepository,
            IHttpContextAccessor httpContextAccessor
            )
        : base(dbRepository)
        {
            _httpContextAccessor = httpContextAccessor;
            _repository = dbRepository;
            //多租户会用到这init代码,其他情况可以不用
            //base.Init(dbRepository);
        }
  }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/Services/ToMES/Partial/VV_Workinfo_htyService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,41 @@
/*
 *所有关于VV_Workinfo_hty类的业务代码应在此处编写
*可使用repository.调用常用方法,获取EF/Dapper等信息
*如果需要事务请使用repository.DbContextBeginTransaction
*也可使用DBServerProvider.手动获取数据库相关信息
*用户信息、权限、角色等使用UserContext.Current操作
*VV_Workinfo_htyService对增、删、改查、导入、导出、审核业务代码扩展参照ServiceFunFilter
*/
using WIDESEA_Core.BaseProvider;
using WIDESEA_Core.Extensions.AutofacManager;
using WIDESEA_Entity.DomainModels;
using System.Linq;
using WIDESEA_Core.Utilities;
using System.Linq.Expressions;
using WIDESEA_Core.Extensions;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Http;
using WIDESEA_WCS.IRepositories;
namespace WIDESEA_WCS.Services
{
    public partial class VV_Workinfo_htyService
    {
        private readonly IHttpContextAccessor _httpContextAccessor;
        private readonly IVV_Workinfo_htyRepository _repository;//访问数据库
        [ActivatorUtilitiesConstructor]
        public VV_Workinfo_htyService(
            IVV_Workinfo_htyRepository dbRepository,
            IHttpContextAccessor httpContextAccessor
            )
        : base(dbRepository)
        {
            _httpContextAccessor = httpContextAccessor;
            _repository = dbRepository;
            //多租户会用到这init代码,其他情况可以不用
            //base.Init(dbRepository);
        }
  }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/Services/ToMES/VV_WorkinfoService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
/*
 *Author:jxx
 *Contact:283591387@qq.com
 *代码由框架生成,此处任何更改都可能导致被代码生成器覆盖
 *所有业务编写全部应在Partial文件夹下VV_WorkinfoService与IVV_WorkinfoService中编写
 */
using WIDESEA_WCS.IRepositories;
using WIDESEA_WCS.IServices;
using WIDESEA_Core.BaseProvider;
using WIDESEA_Core.Extensions.AutofacManager;
using WIDESEA_Entity.DomainModels;
namespace WIDESEA_WCS.Services
{
    public partial class VV_WorkinfoService : ServiceBase<VV_Workinfo, IVV_WorkinfoRepository>
    , IVV_WorkinfoService, IDependency
    {
    public VV_WorkinfoService(IVV_WorkinfoRepository repository)
    : base(repository)
    {
    Init(repository);
    }
    public static IVV_WorkinfoService Instance
    {
      get { return AutofacContainerModule.GetService<IVV_WorkinfoService>(); } }
    }
 }
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WCS/Services/ToMES/VV_Workinfo_htyService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
/*
 *Author:jxx
 *Contact:283591387@qq.com
 *代码由框架生成,此处任何更改都可能导致被代码生成器覆盖
 *所有业务编写全部应在Partial文件夹下VV_Workinfo_htyService与IVV_Workinfo_htyService中编写
 */
using WIDESEA_WCS.IRepositories;
using WIDESEA_WCS.IServices;
using WIDESEA_Core.BaseProvider;
using WIDESEA_Core.Extensions.AutofacManager;
using WIDESEA_Entity.DomainModels;
namespace WIDESEA_WCS.Services
{
    public partial class VV_Workinfo_htyService : ServiceBase<VV_Workinfo_hty, IVV_Workinfo_htyRepository>
    , IVV_Workinfo_htyService, IDependency
    {
    public VV_Workinfo_htyService(IVV_Workinfo_htyRepository repository)
    : base(repository)
    {
    Init(repository);
    }
    public static IVV_Workinfo_htyService Instance
    {
      get { return AutofacContainerModule.GetService<IVV_Workinfo_htyService>(); } }
    }
 }
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WCS/Partial/VV_WorkinfoController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,33 @@
/*
 *接口编写处...
*如果接口需要做Action的权限验证,请在Action上使用属性
*如: [ApiActionPermission("VV_Workinfo",Enums.ActionPermissionOptions.Search)]
 */
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Http;
using WIDESEA_Entity.DomainModels;
using WIDESEA_WCS.IServices;
namespace WIDESEA_WCS.Controllers
{
    public partial class VV_WorkinfoController
    {
        private readonly IVV_WorkinfoService _service;//访问业务代码
        private readonly IHttpContextAccessor _httpContextAccessor;
        [ActivatorUtilitiesConstructor]
        public VV_WorkinfoController(
            IVV_WorkinfoService service,
            IHttpContextAccessor httpContextAccessor
        )
        : base(service)
        {
            _service = service;
            _httpContextAccessor = httpContextAccessor;
        }
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WCS/Partial/VV_Workinfo_htyController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,33 @@
/*
 *接口编写处...
*如果接口需要做Action的权限验证,请在Action上使用属性
*如: [ApiActionPermission("VV_Workinfo_hty",Enums.ActionPermissionOptions.Search)]
 */
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Http;
using WIDESEA_Entity.DomainModels;
using WIDESEA_WCS.IServices;
namespace WIDESEA_WCS.Controllers
{
    public partial class VV_Workinfo_htyController
    {
        private readonly IVV_Workinfo_htyService _service;//访问业务代码
        private readonly IHttpContextAccessor _httpContextAccessor;
        [ActivatorUtilitiesConstructor]
        public VV_Workinfo_htyController(
            IVV_Workinfo_htyService service,
            IHttpContextAccessor httpContextAccessor
        )
        : base(service)
        {
            _service = service;
            _httpContextAccessor = httpContextAccessor;
        }
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WCS/VV_WorkinfoController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *如果要增加方法请在当前目录下Partial文件夹VV_WorkinfoController编写
 */
using Microsoft.AspNetCore.Mvc;
using WIDESEA_Core.Controllers.Basic;
using WIDESEA_Entity.AttributeManager;
using WIDESEA_WCS.IServices;
namespace WIDESEA_WCS.Controllers
{
    [Route("api/VV_Workinfo")]
    [PermissionTable(Name = "VV_Workinfo")]
    public partial class VV_WorkinfoController : ApiBaseController<IVV_WorkinfoService>
    {
        public VV_WorkinfoController(IVV_WorkinfoService service)
        : base(service)
        {
        }
    }
}
´úÂë¹ÜÀí/PCS/WCS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WCS/VV_Workinfo_htyController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
/*
 *代码由框架生成,任何更改都可能导致被代码生成器覆盖
 *如果要增加方法请在当前目录下Partial文件夹VV_Workinfo_htyController编写
 */
using Microsoft.AspNetCore.Mvc;
using WIDESEA_Core.Controllers.Basic;
using WIDESEA_Entity.AttributeManager;
using WIDESEA_WCS.IServices;
namespace WIDESEA_WCS.Controllers
{
    [Route("api/VV_Workinfo_hty")]
    [PermissionTable(Name = "VV_Workinfo_hty")]
    public partial class VV_Workinfo_htyController : ApiBaseController<IVV_Workinfo_htyService>
    {
        public VV_Workinfo_htyController(IVV_Workinfo_htyService service)
        : base(service)
        {
        }
    }
}