Exemplo n.º 1
0
    public double GetSalaryOfCC(string ProcessName, string DeviceType, string peity, double price = 28.0, double difficulty = 1.0)
    {
        var ptime = new ProductTime(this.Engine);

        ProcessTime      = ptime.GetTime(OrderNum, SpecNum, PID, DeviceType, ProcessName, peity);
        _OutsideDiameter = ptime.OutsideDiameter;
        return(ProcessTime * difficulty * price);
    }
Exemplo n.º 2
0
    public object Insert(Schema main, string processName, string taskName, string workerId, string deviceName, string deviceNum, string deviceType, double workLoad, DateTime startTime, DateTime endTime, string adjust)
    {
        string ID  = main.Cell("ID");
        var    row = me.And("ID", "=", ID)
                     .And("工序名称", "=", processName)
                     .And("任务名称", "=", taskName)
                     .GetFirst(true);

        if (row == null)
        {
            me.GetNew();
        }

        string 订单规格号   = main.Cell("订单规格号");
        string 工件号     = main.Cell("工件号");
        var    scmPara = new Schema(Engine, "产品参数表");

        scmPara.And("订单规格号", "=", 订单规格号).GetFirst(true);
        me.Copy(main);
        me.Copy(scmPara);
        me["ID"]   = ID;
        me["工序名称"] = processName;
        me["任务名称"] = taskName;

        ProductTime pt     = new ProductTime(Engine);
        var         单件拟定工时 = 0.0;

        单件拟定工时 = pt.GetTime(订单规格号, 工件号, deviceType, processName);

        me["单件拟定工时"] = 单件拟定工时;
        me["工艺下屑重量"] = pt.Dust;
        me["上机时间"]   = startTime;
        me["下机时间"]   = endTime;
        me["设备名称"]   = deviceName;
        me["设备编号"]   = deviceNum;
        me["设备类型"]   = deviceType;
        me["加工人员"]   = workerId;
        me["加工数量"]   = workLoad;
        me["部门名称"]   = Role.GetDepartmentName(main.Engine, workerId);
        me["申请难度调整"] = adjust;

        if (row == null)
        {
            me.Create();
        }
        else
        {
            me.Update();
        }
        return(me["ObjectId"]);
    }
Exemplo n.º 3
0
    protected void UpdateSalary(Schema me, H3.SmartForm.SubmitSmartFormResponse response, string 任务名称)
    {
        var 工序名称 = me.PostValue("当前工序");
        //var 任务名称 = me.PostValue("任务名称");
        var 订单号  = me.PostValue("订单号");
        var 产品编号 = me.PostValue("订单规格号");
        var 规格号  = 产品编号.Split('-')[1];
        var 工件号  = me.PostValue("工件号");
        var 轧制方式 = me.PostValue("轧制方式");

        var 加工者  = me.PostValue("第一加工者");
        var 加工设备 = me.PostValue("第一设备");
        var 设备类型 = me.PostValue("设备类型1");
        var 加工数量 = Convert.ToDouble(me.PostValue("加工量1"));


        var pro  = new ProductTime(me.Engine);
        var 拟定工时 = pro.GetTime(订单号, 规格号, 工件号, 设备类型, "粗车", 轧制方式);
        var 工价   = 28.0;
        var 粗车工资 = 拟定工时 * 加工数量 * 工价 * 1.0;

        var slyScm = new Schema(me.Engine, "任务绩效表");
        var smRow  = slyScm.ClearFilter()
                     .And("产品编号", "=", 产品编号)
                     .And("工件号", "=", 工件号)
                     .And("工序名称", "=", 工序名称)
                     .And("任务名称", "=", "四面见光")
                     .GetFirst();
        var 分配比例 = 1.0;

        if (smRow != null)
        {
            分配比例 = 0.8;
        }

        var 工艺下屑重量 = pro.Dust;
        var 实际下屑重量 = 工艺下屑重量 * 加工数量 * 分配比例;
        var 实际用时   = 拟定工时 * 加工数量;

        var 外径   = pro.OutsideDiameter;
        var 补助标准 = 外径 >= 0 && 外径 < 4000 ? 18 : (外径 >= 4000 && 外径 < 5000 ? 23 : (外径 >= 5000 && 外径 < 6000 ? 30 : 30));
        var 补刀金额 = 补助标准 * 实际下屑重量 / 1000; //粗车补刀金额

        var existRow = slyScm.ClearFilter()
                       .And("产品编号", "=", 产品编号)
                       .And("工件号", "=", 工件号)
                       .And("工序名称", "=", 工序名称)
                       .And("任务名称", "=", 任务名称)
                       .GetFirst();

        if (existRow == null)
        {
            slyScm.GetNew();
        }

        slyScm.Cell("工序名称", 工序名称);
        slyScm.Cell("任务名称", 任务名称);
        slyScm.Cell("产品编号", 产品编号);
        slyScm.Cell("工件号", 工件号);

        slyScm.Cell("加工者", 加工者);
        slyScm.Cell("加工设备", 加工设备);
        slyScm.CellAny("拟定工时", 拟定工时);
        slyScm.CellAny("实际用时", 实际用时);

        slyScm.CellAny("加工数量", 加工数量);
        slyScm.CellAny("工价", 工价);
        slyScm.CellAny("工资", 粗车工资);
        slyScm.CellAny("工艺下屑重量", 工艺下屑重量);
        slyScm.CellAny("实际下屑重量", 实际下屑重量);
        slyScm.CellAny("补刀金额", 补刀金额);
        if (existRow == null)
        {
            slyScm.Create(true);
        }
        else
        {
            slyScm.Update(true);
        }

        //switch (工价)
        //{
        //    case 分配比例:
        //        break;
        //    default:
        //        break;
        //}
    }