123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298 |
- var Unibase;
- (function (Unibase) {
- let Platform;
- (function (Platform) {
- let Series;
- (function (Series) {
- let Components;
- (function (Components) {
- class CreateSeriesFormat extends Platform.Core.BaseComponent {
- constructor() {
- super();
- this.seriesmanager = Series.Managers.SeriesManager.Instance();
- this.datetimehelper = Unibase.Platform.Helpers.DateTimeHelper.Instance();
- }
- jsFiles() {
- return ['platform/series/managers/seriesmanager.js', "platform/forms/components/formviewer/formviewer.js", 'libs/parsley/parsley.min.js', 'platform/core/infos/status.js', 'platform/series/components/seriesformatlist.js'];
- }
- cssFiles() {
- return [];
- }
- html(id, containerid) {
- let html = `<form id="form_SeriesFormat" method="post" data-validate="parsley">
- <header class="b-b bg-white modal-header">
- <strong class="text-dark Title" id="serform_title">Create Series Format</strong>
- <input type="hidden" id="hfSeriesFormatId" value="0" />
- <input type="hidden" id="hfSeriesId" value="0" />
- </header>
- <div class="bg-light control-sorting modal-body">
- <div id="div_SeriesFormatMessage" class="clear">
- </div>
- <div class="section_Details card">
- <div class="card-body">
- <div class="row">
- <div class="col-sm-6">
- <div class="floating-label-form-group form-group floating-label focus" id="div_SeriesFormat">
- <label for="lblSeriesFormat" id="lbl_SeriesFormat">Series Format<span class="text-danger">*</span></label>
- <input type="text" id="txt_SeriesFormat" maxlength="50" class="form-control required floating-label-control" data-isdynamic="false" placeholder="Series Format*" data-placeholder="SE/{{SN}}" data-label="Series Format*" />
- </div>
- </div>
- <div class="col-sm-6">
- <div class="floating-label-form-group form-group floating-label focus" id="div_StartingNo">
- <label for="lblStartingNo" id="lbl_StartingNo">Starting Number<span class="text-danger">*</span></label>
- <input type="text" id="txt_StartingNo" class="form-control required floating-label-control" maxlength="50" data-isdynamic="false" placeholder="Starting Number*" data-placeholder="1" data-label="Starting Number*"/>
- </div>
- </div>
- </div>
- <div class="row">
- <div class="col-sm-6">
- <div class="floating-label-form-group form-group floating-label focus" id="div_NumberSize">
- <label for="lblNumberSize" id="lbl_NumberSize">Number Size<span class="text-danger">*</span></label>
- <input type="text" id="txt_NumberSize" class="form-control required floating-label-control" maxlength="1" data-isdynamic="false" placeholder="Number Size*" data-placeholder="4" data-label="Number Size*" />
- </div>
- </div>
- <div class="col-sm-6">
- <div class="floating-label-form-group form-group floating-label focus" id="div_NumberPrefix">
- <label for="lblNumberPrefix" id="lbl_NumberPrefix">Number Prefix<span class="text-danger">*</span></label>
- <input type="text" id="txt_NumberPrefix" class="form-control required floating-label-control" maxlength="1" data-isdynamic="false" placeholder="Number Prefix*" data-placeholder="0" data-label="Number Prefix*"/>
- </div>
- </div>
- </div>
- <div class="row">
- <div class="col-sm-6">
- <div class="floating-label-form-group floating-label-form-group-with-value" id="div_FromDate">
- <label for="lblFromDate" id="lbl_FromDate">From Date<span class="text-danger">*</span></label>
- <div class="input-group">
- <input type="text" id="txt_FromDate" class="form-control required floating-label-control datepicker-input" data-isdynamic="false" placeholder="From Date*" data-placeholder="dd/mm/yyyy" data-label="From Date*" />
- <a class="input-group-addon bg-white no-borders"><i class="fa fa-calendar"></i></a>
- </div>
- </div>
- </div>
- <div class="col-sm-6">
- <div class="floating-label-form-group floating-label-form-group-with-value" id="div_ToDate">
- <label for="lblToDate" id="lbl_ToDate">To Date<span class="text-danger">*</span></label>
- <div class="input-group">
- <input type="text" id="txt_ToDate" class="form-control required floating-label-control datepicker-input" data-isdynamic="false" placeholder="To Date*" data-placeholder="dd/mm/yyyy" data-label="To Date*" readonly="true"/>
- <a class="input-group-addon bg-white no-borders"><i class="fa fa-calendar"></i></a>
- </div>
- </div>
- </div>
- </div>
- <div class="row">
- <div class="col-sm-6 mt-40">
- <div class="form-group floating-label focus" id="div_istodate">
- <label for="frm_chk_istodate" id="lbl_istodate">Is To Date Undefined</label>
- <label class="switch pull-right">
- <input type="hidden" id="hf_istodate" value="" />
- <input type="checkbox" id="chk_istodate" data-isdynamic="false" />
- <span></span>
- </label>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- <div class="bg-white footer b-t pa-5 ">
- <a id="btn_CloseSeriesFormat" class="btn btn-light btn-sm mr-auto"> Close</a>
- <a id="btn_SaveSeriesFormat" class="btn btn-primary btn-sm">Save</a>
- </div>
- </form>`;
- return html;
- }
- load(id, containerid, callback) {
- var instance = this;
- $('#txt_StartingNo').addClass('numberonly');
- $('#txt_NumberSize').addClass('numberonly');
- $('#txt_NumberPrefix').addClass('numberonly');
- $('.numberonly').keypress(function (event) {
- if ((event.which > 47 && event.which < 58)) {
- }
- else {
- event.preventDefault();
- }
- }).on('paste', function (event) {
- event.preventDefault();
- });
- $("#txt_ToDate,#txt_FromDate").keypress(function (event) {
- if ((event.which > 44 && event.which < 58)) {
- }
- else {
- event.preventDefault();
- }
- });
- $("#chk_istodate").on('change', function () {
- if ($(this).is(':checked')) {
- $('#txt_ToDate').prop('disabled', true);
- $('#txt_ToDate').css("cursor", "not-allowed");
- var currentdate = new Date();
- $('#txt_ToDate').removeClass("required");
- }
- else {
- $('#txt_ToDate').prop('disabled', false);
- $('#txt_ToDate').addClass("required");
- $('#txt_ToDate').removeAttr("style");
- }
- });
- var currentdate = new Date();
- var datetime = currentdate.getDate() + "/"
- + (currentdate.getMonth() + 1) + "/"
- + currentdate.getFullYear() + " ";
- $("#txt_FromDate").val("" + datetime + "");
- currentdate.setDate(currentdate.getDate() + 364);
- var datetime1 = currentdate.getDate() + "/"
- + (currentdate.getMonth() + 1) + "/"
- + (currentdate.getFullYear()) + " ";
- $('#txt_FromDate').daterangepicker({
- locale: {
- format: 'DD/MM/YYYY',
- },
- singleDatePicker: true,
- showDropdowns: true,
- minYear: 1901,
- maxDate: new Date(2050, 11, 31)
- })
- .change(dateChanged)
- .on('changeDate', dateChanged);
- $("#txt_ToDate").val("" + datetime1 + "");
- $('#txt_ToDate').daterangepicker({
- locale: {
- format: 'DD/MM/YYYY',
- },
- singleDatePicker: true,
- showDropdowns: true,
- minYear: 1901,
- minDate: datetime,
- maxDate: new Date(2050, 11, 31)
- });
- function dateChanged(ev) {
- var instance = this;
- var DateSplit = ($("#txt_FromDate").val().toString().split('/'));
- var DateArray = DateSplit.filter(function (v) { return v !== ''; });
- var Only = DateArray[2].split(" ");
- var onlyYear = parseInt(Only[0]);
- var fromdate = new Date(moment($("#txt_FromDate").val(), "DD/MM/YYYY").format("YYYY/MM/DD"));
- var todate_min = new Date(moment($("#txt_FromDate").val(), "DD/MM/YYYY").format("YYYY/MM/DD"));
- fromdate.setDate(fromdate.getDate() + 364);
- var todate = (fromdate.getDate()) + "/"
- + (fromdate.getMonth() + 1) + "/"
- + (fromdate.getFullYear()) + " ";
- $("#txt_ToDate").val(todate);
- $('#txt_ToDate').daterangepicker({
- locale: {
- format: 'DD/MM/YYYY',
- },
- singleDatePicker: true,
- showDropdowns: true,
- minYear: 1901,
- minDate: new Date(todate_min),
- maxDate: new Date(2050, 11, 31)
- });
- }
- $("#btn_CloseSeriesFormat").click(function () {
- $('#' + containerid).modal('hide');
- $('#' + containerid).remove();
- });
- $("#btn_SaveSeriesFormat").click(function () {
- let appcontrolid = "form_SeriesFormat";
- let result = Unibase.Platform.Forms.Components.FormViewer.Instance().requiredFieldValidation(appcontrolid);
- if (result == false) {
- MessageHelper.Instance().showError("Mandatory fields are missing", "div_SeriesFormatMessage");
- return false;
- }
- else {
- instance.Saveseriesformat(id, containerid);
- }
- });
- instance.loaddata(id);
- }
- render(id) {
- this.navigationHelper.popup(id, "", Unibase.Platform.Series.Components.CreateSeriesFormat.Instance(), null, Platform.Helpers.Size.DockLeft);
- }
- loaddata(id) {
- var instance = this;
- if (id != 0) {
- instance.seriesmanager.getSeriesFormat(id).then(function (response) {
- $("#serform_title").text(" Edit Series Format");
- $("#hf_StartingNo").val(response.result.StartingNumber);
- $('#txt_SeriesFormat').val(response.result.seriesformat);
- $('#txt_NumberPrefix').val(response.result.NumberPrefix);
- $('#txt_NumberSize').val(response.result.NumberSize);
- $("#txt_FromDate").val(instance.datetimehelper.formatLocalDate1(response.result.FromDate, ''));
- var lastnumber = response.result.LastNumber;
- if (lastnumber >= response.result.StartingNumber) {
- $("#lbl_StartingNo").text("Last Number").append("<span class='text-danger'>*</span>");
- $("#txt_StartingNo").attr("placeholder", "Last Number*");
- $("#txt_StartingNo").attr("data-label", "Last Number*");
- $('#txt_StartingNo').val(lastnumber);
- }
- else {
- $('#txt_StartingNo').val(response.result.StartingNumber);
- }
- $("#hf_SeriesId").val(response.result.SeriesId);
- $("#hfSeriesFormatId").val(response.result.SeriesFormatId);
- $("#chk_istodate").prop("checked", response.result.IsToDateUndefined);
- if (response.result.IsToDateUndefined == true) {
- $('#txt_ToDate').prop('disabled', true);
- $('#txt_ToDate').css("cursor", "not-allowed");
- $('#txt_ToDate').removeClass("required");
- }
- $("#txt_ToDate").val(instance.datetimehelper.formatLocalDate1(response.result.ToDate, ''));
- $('#txt_ToDate').daterangepicker({
- locale: {
- format: 'DD/MM/YYYY',
- },
- singleDatePicker: true,
- showDropdowns: true,
- minDate: new Date(instance.datetimehelper.formatLocalDate1(response.result.FromDate, 'YYYY/MM/DD')),
- });
- $("#div_SeriesFormat").addClass("floating-label-form-group-with-value");
- $("#div_StartingNo").addClass("floating-label-form-group-with-value");
- $("#div_NumberSize").addClass("floating-label-form-group-with-value");
- $("#div_NumberPrefix").addClass("floating-label-form-group-with-value");
- });
- }
- }
- Saveseriesformat(id, containerid) {
- var instance = this;
- var fromdatestring = moment($("#txt_FromDate").val(), "DD/MM/YYYY").add(1, 'days').format("YYYY/MM/DD");
- let todatestring = moment($("#txt_ToDate").val(), "DD/MM/YYYY").add(1, 'days').format("YYYY/MM/DD");
- let todate = new Date(todatestring);
- let fromdate = new Date(fromdatestring);
- var SeriesId = Number($("#hf_seriesid").val());
- let postData = {
- SeriesId: SeriesId,
- SeriesFormatId: id,
- SeriesFormatName: $('#txt_SeriesFormat').val().toString(),
- NumberPrefix: $('#txt_NumberPrefix').val().toString(),
- NumberSize: Number($('#txt_NumberSize').val()),
- StartingNumber: Number($('#txt_StartingNo').val()),
- FromDate: fromdate,
- ToDate: todate,
- LastNumber: 0,
- IsToDateUndefined: $("#chk_istodate").prop("checked")
- };
- instance.seriesmanager.saveSeriesFormat(postData).then(function (response) {
- if (response.status == Unibase.Data.Status.Error) {
- MessageHelper.Instance().showError(response.message, 'div_SeriesFormatMessage');
- }
- else {
- MessageHelper.Instance().showSuccess(response.message, 'div_SeriesFormatMessage');
- $('#' + containerid).modal('hide');
- $('#' + containerid).remove();
- Components.SeriesFormatList.Instance().FormatList();
- }
- });
- }
- static Instance() {
- if (this.instance === undefined) {
- this.instance = new CreateSeriesFormat();
- }
- return this.instance;
- }
- }
- Components.CreateSeriesFormat = CreateSeriesFormat;
- })(Components = Series.Components || (Series.Components = {}));
- })(Series = Platform.Series || (Platform.Series = {}));
- })(Platform = Unibase.Platform || (Unibase.Platform = {}));
- })(Unibase || (Unibase = {}));
|